Release early. Release often. RERO. That’s a pretty popular acronym as far as mobile app development is concerned. Coined by Eric Raymond, this catchy acronym captures the core idea of Agile development, helping developers create business apps that make it to the market very quickly. This approach urges developers to take note as to where they lose time during the entire app development lifecycle. Considering how a recent Gartner report suggested that by end of 2017, enterprise demand for business apps would be growing five times as fast as enterprise IT’s capability to deliver them, the context is pretty clear.
Looking beyond Agile and Lean for your business apps
Rapid deployment methodologies like Agile and Lean help in reducing development time, which is conventionally the most time-consuming phase. This significantly brings down the time to market. However, in this guide, we will not talk about Agile or Lean — that’s because chances are you already know and use them. We’ll cover other means and methods used by IT pros to reduce time to market for business apps.
The biggest showstopper that transforms week-long development plans into month-long plans is — failure of user acceptance testing. This massive gap between the development team and the targeted end users is a huge contributor to lengthy time to market durations for business apps. Collaboration emerges as a massive enabler here. Whether it’s the adoption of a proven effective methodology such as scrums, or an innovative approach of helping business users participate with continuous feedback on incremental developments in the application — the results are quick, inexpensive, and contribute to app quality as well. Active end-user participation in the development process makes sure the application doesn’t drift away from its purpose, helps with post-implementation buy-in, and helps get things right the first time.
Virtualization of development and testing environments
Many times, development teams end up spending a lot of time configuring physical hardware as well as software for app testing. It saves a lot of time to use cloud-based solutions that help developers work using virtualized environments that are super quick to switch between. Virtualization is a great enabler of speed here, reducing the stress on database administration and system development programmers alike. Docker has emerged as a great solution for configuration management, helping development teams deliver apps quicker, and without errors.
Dissociation of the app requesters and target users from the development process contributes to delays, developer frustration, and reduction in app quality. That’s because app requesters tend to believe that once they share all requirement details, they just need to wait for the day when the developer will return with a request for testing. Instead, end users have a great role to play in ensuring that the development stays on track.
If your company has not yet taken the outsourcing route for faster app development, this might be the time to do so. Because app development vendors in emerging markets already have experience of having developed customized apps for hundreds of business purposes, you have an affordable and quick alternative for app development in the shape of outsourcing. It’s best to start with basic business apps, and float requests for quotations and let at least three vendors compete for your dollars.
Creating reusable prototypes is the single biggest long-term speed boost your business app developers can bless the enterprise with. Prototyping helps the developers, as well as the end users, envisage the working of the application much before it’s actually delivered. This helps speed up user acceptance, minimizes risks of last-minute roadblocks, and ensures enhancing user experience. By creating as many reusable prototypes as possible, and organizing them in an easy-to-search manner, even large and distributed IT teams can reap a lot of benefits. For starters, any incremental upgrades requested in an application becomes easy to plan and piece together using its prototypes. Secondly, existing prototypes help speed up the development of new applications by helping developers directly use proven effective and time-tested bases for development.
Similar to creating reusable prototypes, enterprise IT can speed business app development to a great extent by implementing strong practices of creating reusable routines (pieces of code). Here’s a two-way approach to do so:
- Write routines with wider applications in mind. This means the core code can be reused when needed, along with new data elements.
- Implement means of organizing these routines in a searchable library, along with basic documentation. Developers need not be weighted down with advanced documentation requirements. Instead, enterprises would do well to lay down strict coding standards, nomenclature rule, and compatibility practices.
User education and training
In so many cases, a perfectly healthy mobile application takes several more weeks to be deployed than initially planned. That’s because users take a lot of time getting comfortable with the app, and raise a lot of issues to the IT team over concerns and queries around its working. To mitigate this, the development team can create user manuals and descriptive notes on the app usage, and share with users to help them quickly come to terms with the app, and sign it off for production deployment.
Klaasjan Tukker, director of technical partner management at Adobe Experience Manager Mobile division, talks about a multi-stakeholder oriented approach to mobile app development. The key tenets of this approach are:
- Making designers and marketers collaborate to reduce time to market for enterprise apps.
- Leverage integrated mobile app services and reusable content to speed up development.
- Make mobile apps for mission-critical business functions and connect them to enterprise systems.
Follow these leaders
The best in business have learned how to reduce time to market for their apps. It’s time you did the same.