BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
I tell organizations you need to design a development culture that can really deliver eight to 12 application releases a year per platform. If you start with that and say, "Well, how do we build an organization that does that?" you start to get into things like Agile development techniques, which require disciplined developers that have a certain degree of autonomy and the capability to act based on what they observe.
That will lead you to hire people that have cross-functional skills; people who can do test-driven development as well as write code; people who understand the importance of employing an application using consistent principles that can get you into things like continuous deployment and DevOps practices. With that mentality in place, you very quickly start to understand there is no way you can test an application across the 100 different versions of Android on different devices and different carriers. You have to instrument your application with analytics and then very quickly look at the technical crashes or problems that the application has in the deployment world. Maybe only test on a few hero devices, like a couple of Samsung devices and the current version of iOS devices. This moves the team toward quick recovery, high velocity and data-driven decision making. Those are some of the most important principles of evolving your development culture, and if you do that, then you'll find you get into the cycle of virtuous improvement.
Jeffrey Hammond is a vice president and principal analyst with Forrester Research's application development and delivery group. He is a software development veteran with more than 20 years of experience in development, product management and strategy roles, and is an expert in the areas of mobile development, modern application architecture and application lifecycle management. Contact him through his blogor on Twitter
Speed trumps quality in mobile app era?
What is DevSecOps and why should CIOs include security professionals in their DevOps teams?