Mobile apps teams can benefit from DevOps, particularly as they seek to create applications that fit into an enterprise architecture. Adopting DevOps toolsets and practices helps mobile app development teams implement continuous delivery, which is vitally important to creating and maintaining mobile apps. Some mobile app teams take it still further, implementing continuous deployment: the automated deployment of , every change that makes it through automated testing. John Moore writes about the importance of DevOps and continuous delivery for supporting mobile application development
in CIO magazine.
One of the objectives of continuous delivery is to shrink cycle time for getting new code through a full test cycle and out to the customer. This is critical for mobile apps, because once theyre out in the wild, customer ratings can drive rapid uptake. Furthermore, companies often want to test and add new features, to keep the mobile app fresh and stay ahead of the competition.
The tools of continuous delivery make it possible to put every new code commit through a full cycle of automated tests so regressions are captured and addressed quickly, and customers have a good experience. Automated provisioning and configuration management also part of the continuous delivery toolset help mobile app developers build systems that are robust in the face of change.
, which promote active, ongoing collaboration between developers and IT operations people, are key to implementing continuous delivery successfully. If anything, DevOps is even more critical for mobile app development, as IT operations people should be involved in the development process from its earliest stages. After all, they will need to manage the infrastructure for deploying and scaling the mobile app. Conversely, developers need to understand the characteristics and constraints of the mobile apps deployment environment in order to design and build a successful product.
Theres a lot of overlap between what people call DevOps tools and those used to achieve continuous delivery, including tools for version control, continuous integration, monitoring and automated configuration management. Together they provide the automated testing, consistent environments and monitoring required to deliver mobile apps quickly and reliably to customers and to scale if theyre successful.