At last count, there were more than 500,000 mobile apps in the Apple App Store and more than 450,000 in the Google Play store. At the same time, the average U.S. smartphone user has an average of 41 apps installed on his or her smartphone. This means you’ll need every possible advantage when competing for a coveted space on consumers’ mobile devices, and high ratings will significantly help you.
It is simple math: Five-star apps fly off the shelves; single-star apps sit on the shelf.
For Forrester’s Mobile App Development Playbook, we asked 13 different mobile development shops to share their processes, tools and best practices. These shops all share a common trait: They all have at least one highly rated, successful mobile app in production. But that’s not all: There’s also a common recurring set of best practices these shops use to deliver a useful, usable, desirable mobile experience.
Real application success comes when you create a rapid, feedback-oriented development loop that does not scrimp on quality. Forrester’s playbook outlines the following best practices to minimize time to actionable feedback:
1. Assemble small, focused development teams: Mobile applications are called “apps” for a reason; they are generally smaller and less complex than traditional Java, .NET or Web applications. This means that you would need to plan for more numerous and smaller teams with two to six developers; employ specialized developers; hire design talent and invest in information architecture; cross-train developers for emergency maintenance; retire the QA center of excellence (for a quicker, specialized one); and refocus your sourcing strategies. Focus on skills rather than labor costs.
2. Favor simple development tools over complex application life-cycle management: Simplify and distribute software-configuration management, use visual designs, prototypes and collaboration instead of textual requirements; test apps with emulators and personal devices; and use mock tests and Back-End-as-a-Service frameworks to manage multi-layer complexity.
#!
3. Adopt agile principles to meet the demands of mobile app development: If you cannot implement agile practices as part of your mobile app development efforts, you will have difficulty maintaining a five-star mobile app. You cannot keep your customers from upgrading, so you’ll need to plan on a minimum of two to three releases a year per platform just to tread water, but you must be capable of releasing new updates on demand.
The more features you add before release, the more time it takes to develop those features. And unless you have a deeper understanding of your customers than most development teams, there’s a high probability that you’ll miss the mark on your first shot. Creating a minimum viable product allows you to stop guessing and start learning about how your customers are using their mobile devices.
Mobile app development efforts are often smaller than traditional application development efforts. Managing demand at the feature (or even defect) level lets teams further decompose larger work items while mixing in user requests or fixing defects.
It would also be useful to use wireframes to drive feedback and build backlogs; create prototypes for a broad-brush feedback; create personas to provide insight into user behavior; use journey maps to add a multichannel dimension to the user experience; and plan for organic release schedules to help teams meet user and market demands.
4. Balance release speed with an increased focus on quality: Initial quality is important because of app-store intermediation—you have no control over how long it takes a reviewer to approve your emergency patch, and you have no insight into how long the queue of apps waiting to be approved is. Expedited releases are possible, but do not substitute real testing. Don’t use an expedited release to cover for poor QA processes, but as a rare safety valve to escape a truly unforeseen problem.
To balance release speed with app quality, use mobile deployment and feedback-management tools, use platform betas (instead of waiting for new mobile operating system versions), and use different device platforms for “blue/green” releases that allow teams to observe actual performance, and to accelerate or slow deployment plans for new features and patches.
5. Prioritize gathering user feedback and forming a rapid response to it: If an app’s rating is the first thing a potential customer looks at, the detailed comments about what customers like and don’t like about it are next. To deal with user feedback, collect feedback early and often, assign someone to listen to app-store feedback, analyze posts for recurring patterns of failure and opportunity, and proactively reach out to unhappy users. It’s essential that you build feedback systems into the app and ask repeat users for reviews. But don’t annoy your users—ask for a review no more than once per release.
Jeffrey S. Hammond is a principal analyst at Forrester Research.