7 points to consider when developing an app | ComputerworldUK. (No longer available online. Original text included below.)
Smartphones and tablets are dominating technology, and one of the selling points of these mobile devices is the apps they can run. With both Apple’s and Google’s app stores each having over 500,000 apps and tens-of-billions of downloads, the urge to be a part of this growing market can be overwhelming. Apps can be useful for internal use by your company, or as a way to collaborate with clients and vendors. They’re also commonly used to reach out to your customers or the public. Before deciding to develop an app for your business, here are some considerations you should make.
When developing for internal use, can your existing systems interface with an app? Do they offer APIs or import/export functions that an app can use to get data in and out? Many systems, especially those developed in-house, may not offer a way to interface with an app, requiring a move to a different system to communicate with mobile devices.
Many off-the-shelf business software solutions, including customer relations and POS systems, include apps to interface with mobile devices. If yours doesn’t, you might be better served by a platform that is quicker to respond to business needs. Evaluate the benefits of a new system, the costs involved in migration, and the costs involved to remain on your current system, including app development.
When developing an app for internal use, which platform will it run on? Android is currently a strong choice for smartphones, while Apple is dominating tablets, and Windows 8 is just around the corner. Standardizing on one platform will simplify app development, but limit your hardware options as well as your selection of other apps that could serve your business. Developing for multiple platforms will cost more, but be more flexible.
Do you have people on staff capable of writing an app, or will you need to outsource development? Fewer developers will be capable of writing apps for multiple platforms, so you may need to hire more than one. Keep in mind you’ll need to retain a relationship with the developers as bug fixes and new features are an inevitable part of maintaining an app.
Developing your app in HTML5 will generally make it easier to implement on multiple platforms. Using native code for each platform generally improves performance, better integrates with built-in features, and uses standard interface elements for a more familiar appearance. Which is more important for your needs, ease of implementation, or performance and appearance?
Developing an app involves not only writing the code, but also testing it, which is critical for internal and B2B use. Consider if you have the time and people required to properly test and debug the app, especially if developing for multiple platforms. This factor alone may determine if you narrow your choice of platforms, or go with an off-the-shelf solution.
Your business may be setup to support internal tech support needs, but if you release an app for B2B or public use, your support needs may expand. Consider how you will support customers, clients and public users that seek help. Adding help desk software, such as VMWare’s recently released Desk.com which ties into Twitter and Facebook is one way to accomplish this.