DevOps has quickly evolved as an integral part of modern application development and delivery. In doing so, the DevOps methodology has shed its status as a niche strategy and evolved into a mainstream opportunity- thought to be used by a quarter of organisations on the Forbes Global 2000 list.
Gartner estimates the market size for DevOps Ready toolsets to be over US$2 billion by 2020, showcasing the vast potential and strong market adoption.
But alongside its clear benefits, DevOps brings unique challenges when developing and
operating a mobile environment. These challenges are holding most organisations back from realising the full benefits of the approach. As the volume of work in enterprise app development increases exponentially, IT operations face tremendous stress if DevOps is not used or implemented properly.
The risk of those operations becoming a critical bottleneck is a real one.
An emerging solution to these challenges is the integration of DesignOps, allowing design work to be mapped against the mindset and goals of DevOps. The fast-paced mobile application development approach often fails to consider the critical role of design, which may provide some insight into the challenges faced. Design is an element that should be evaluated throughout the process, rather than just at the initial stage of development.
To enable this, IT operations and business owners need to integrate themselves in the design process and continually shape the work that will be delivered through the DevOps process. This role is critical to the coordination of the design and development processes; adopting a cross-functional business lens to drive productivity and innovation.
When it comes to managing mobile DevOps and Design Ops, IT operators and business owners must remain in the development beyond the design phase and should adhere to the following three rules of thumb to help achieve success:
1. Continuous integration and continuous delivery against a real environment
As app features develop and become more sophisticated, the need to conduct thorough tests across real devices in real-world environments on a regular basis becomes far more important. The most important metrics for mobile app development and testing include: the frequency of deployment and tests executed against each regression; and the number of new features, or other integrations deployed in each build. Teams need to automate and use agile technologies when developing new capabilities and use agile methodologies to approach design, ensuring continued collaboration with the initial design team.
2. Test applications, test infrastructure, and deploy frequently
Frequent deployment and testing enhances the ability to automate functional compatibility and performance testing of its application. While an app may appear to perform just fine when seen in isolation, there may be other entities such as back end systems and networks that don’t necessarily result in the same level of performance in the real world. Testing in the infrastructure context will draw out insights about the performance of the application within its intended environment, in turn allowing improvements to be made to usability, user-interface and user experience features. Accurate performance analysis with real data will significantly improve the overall design and development.
3. Continuous validation of quality
The characteristics of a quality mobile app are set from the very first line of code until it is in the hands of the end-users. Everything that happens in between should be measured, validated and fixed from both the design and development teams. Not only should the operation and usability of an app be continually reviewed and improved; the ongoing existence of the app as a whole and even the tools used by DevOps should be questioned. Agile development is at the heart of today’s mobile app development processes and culture, and adopting the right tools, methods and technologies will enable an organisation to develop and test mobile applications at pace.
The challenges for ongoing collaboration between DesignOps and DevOps for mobile development exist, but can be easily overcome. The principles of a DevOps approach emphasise people and culture above tools and processes, so bringing business owners intimately into the design process will increase the success of DevOps. Organisations need to embrace a mix of collaboration and integration tools from both teams. This seamless interaction will unlock the full benefits of the methodology, and ultimately contribute to the overall operational and business success.
Abe Sahely is managing director of Accenture Mobility for Australia and New Zealand.