Blog

Factors influencing the choice of technology framework for Mobile Apps

10 Nov, 2016
Xebia Background Header Wave

In an earlier blog published last week, we have presented the various implementation choices for Mobile App Development. In this article, we would like to discuss the key factors that will influence the choice of appropriate technology framework for developing mobile applications.

User analysis  User analysis

Identifying the core user group and charting their potential use case scenarios is the first factor that one must consider, prior to embarking on mobile application development. Once the core users are identified, it will be easier to form an informed opinion on the type of mobile devices they typically use, and the associated UX expectations. A solid understanding of the potential target users is perhaps the single biggest factor influencing the technology framework and implementation choice. For example, if the target users are from a specific industry segment where iPhones are popular, then it will make sense to initially target the native iOS platform. Similarly, if a WOW UX is a primary requirement, as would be the case for a consumer app, then native implementation will be an obvious choice, as the app will need to leverage all the features and functionality of the device OS to deliver the desired user experience.

Functional requirements  Functional requirements

Understanding the core functional requirements of the app, and categorizing them into various buckets such as informational, transactional, and local device processing is another important factor that will influence the implementation choice. For example, if the core app requirement is merely information display, then a mobile-web based solution will be the obvious choice. On the other hand, if the app calls for a higher level of local processing which will be device dependent, then a native solution will be the way to go.

Multi-Device support  Multi-Device support

Whether to develop an app for a single device or platform, or target multiple platforms is an extremely critical factor that will influence the choice of technology as well as development framework. If the target user group has a diversified device profile, then you will have to consider either a Hybrid app or a mobile-web based solution. The ease of porting, reuse, and maintenance makes Hybrid app a better choice in many cases, as the app can still leverage the device features, which will not be possible with a mobile-web app.

Bandwidth limitations  Bandwidth limitations

In scenarios, where there could be intermittent network access, or bandwidth limitations, the app will have to run offline. This may mean that the app will have to leverage the device capabilities, and resynchronize when the bandwidth is restored. This need for making the app available offline, will also influence the technology and implementation choice.

Dev Time constraints  Dev Time constraints & technology skills

Most mobile-web apps are based on standard frameworks such as Javascript and HTML, skills which are readily available in most technology companies. Developing a device specific native app or Hybrid app either calls for a higher level of technology expertise as well as retraining. If Dev time is a constraint, then a mobile-web based app is the fastest route to deployment.

Cost of ownership  Cost of ownership

The choice of technology architecture and implementation choice will have a significant impact on the total cost of developing and owning a mobile app. Mobile-web apps can be developed at a relatively affordable cost, and are for less expensive to maintain. Native apps are perhaps the most expensive to maintain, as you will have to develop and support a version separately for each platform. Hybrid apps offer the most optimal solution from a total cost of ownership perspective.

As you can see from the above cited factors, the choice of technology framework and implementation choice has multiple dimensions. A careful assessment of all relevant factors is mandatory for building an application that can meet your business goals and deliver the required functionality. The following table captures some commonly used technology choices for the various implementation scenarios:

NativeHybridMobile-Web
Tech StackiOS – Objective C,
Android: Java
Windows: .Net
JavaScript, CSS3, HTML5JavaScript, CSS3, HTML5
ToolsiPhone, Android, and Windows Mobile SDKsCordova, PhoneGap
DeploymentApp StoreApp StoreWeb based
Ganesh Akondi
Engineering Manager at coMakeIT
Questions?

Get in touch with us to learn more about the subject and related solutions

Explore related posts