Mobile apps are like packaged software, a friend who is a head of product at a successful mobile first company told me over breakfast.
On the web, you can launch a product that’s 80% functional to hit a promised launch date. Around 1 am that night, when most users are asleep, you can surreptitiously push an update with bug fixes and new features, reboot the servers, and no one is the wiser.
iOS apps don’t work this way. A mobile app with a serious bug frustrates users for two weeks, inundates customer support for a fortnight and decreases app rankings for at least that long. Quite an expensive bug.
Apple’s two week app approval window creates this dynamic. The approval latency demands higher quality software which means better testing and higher quality standards. To cope with these greater demands, developers are tweaking web tools for mobile app development.
In a post on FastCo Labs, HowAboutWe’s engineering team described their quality assurance (QA) process. They combine Kiwi, KIF and CruiseControl to trigger automated tests before their iOS app releases. One of these tools is mobile specific. But Kiwi and CruiseControl are ports from Ruby web testing toolkits.
Longer release cycles decrease the number of experiments a team can run because each optimization more than 2 weeks to test, measure and update. Thankfully, a handful of startups have created frameworks to dynamically test, optimize and updating mobile applications in the wild. These frameworks effectively recreate the web delivery model. With a flip of a switch on a remote server, a mobile app can improve its UI instantly.
As mobile users become the majority of users, more and more of the advantages of web development will be brought to mobile applications and mobile users will be better served.
What additional QA processes or tools has your startup adopted for mobile app development and testing? Let me know via tweet.