Share this:

1. Who will use the app? Organizations typically build mobile apps for either their customers, partners or employees. Image and branding requirements are typically more demanding for customer-facing apps. Although the usability requirements are equally as strong for both user groups, you can usually keep the presentation simple for business-to-employee apps. 2. Will the app consist of a single screen with a lot of animations or sounds? The classic example of such an application is a game. Other examples include augmented reality applications or applications with heavily customized UIs and hardware-intensive animations. 3. Do you need access to the device’s sensors? Some applications rely on data collected via device sensors. Capabilities like the camera or GPS are available to mobile web apps based on HTML5. Anything more elaborate however, like reading a barcode, requires native functionality. 4. Does the app require a few screens with a lot of animations or sounds? Some apps consist of a combination of screens with standard functionality and screens with very complex user interactions such as heavy animations or sound. Standard screens, like a catalog of cars featuring technical specs, are a good candidate for a mobile web application. The one screen with the interactive 3D model of the car is a good candidate for native development. 5. Do you need access to custom native functionality? If the functionality you need has been implemented by a third party, then you can cut development costs by using a proprietary native shell. However, if what you need is not available out of the box, you’ll have to invest in developing a shell that supports your requirements.

6. Do you need to distribute your app via the app stores? Users typically find apps via their device app store, but there are other ways to distribute an app. For example, users can access an app from a link sent via email or shared through social networks.

7. Do you need to support devices with poor performance? You can’t count on every user having the latest and greatest mobile device, so you need to consider which models you will support. Older devices may not support animation or complex user interfaces running in the web browser. If these are important, you’ll need to implement them natively. Alternatively, you can deliver different experiences for people with high-end versus low-end devices.

8. Do you need to brand your app? Customer-facing apps generally need to represent your brand, but it’s generally not a requirement for employee or partner apps. If branding is not an issue, you can choose a third-party hybrid shell. It will not feature your icon or logo, but it will save you the time and effort required to build and maintain your own shell.

9. Do you need to support multiple operating systems? The cost of native development quickly grows with each operating system you support. And it’s not only about iOS, Android and Windows Phone. There are also differences between the various versions of each vendor’s operating system. In other words, developing for iOS 7 is different from developing for iOS 8.