When Pieces of the Puzzle Fall in Place Nicely — DevOps and Enterprise Mobility
Enterprise mobility has always been a tricky maze to wade through. Enterprises are willing to spend top dollar on mobility strategies, employ the best tools, people and processes to build applications, and yet, failures riddle the efforts and lackluster returns on investment leads to slumps in quarterly results. Multiple competing standards and diverse device characteristics adds additional layers of complexity to deploying in mobile environments.
What goes wrong? The primary challenge with going mobile is trying to package too much change into one large deployment. Enterprises want to re-create their brand in a lot less real estate and want this to be perfect the first time around. In the process, they overlook what’s more pressing: user experience and intuitiveness when using the mobile app.
Sometimes, the simplest solutions will pop up from using the same old tired and tested tools in unique and different places. Enterprise mobility may stand to gain from a software development method that aims to boost efficiency and flexibility: DevOps.
Originally from combining development and operations when building mobile software, DevOps is based on agile development standards. It seeks to organize development in a clean and predictable way: the development team supports operational requirements such as deploy scripts, diagnostics, and load and performance testing from the beginning of the cycle and the operations team provides knowledgeable support and feedback before, during, and after deployment. So, in essence, this involves a cultural transformation.
Enterprises can often get overwhelmed with the fast pace of mobile with apps often targeting multiple platforms such as iOS Android or generalized HTML5. It is here that DevOps can lend support. DevOps processes such as continuous deployment and delivery make it easier to push code to production and opens up another priority avenue: continuous support which can be monumental to harnessing a team in more effective ways, thus adapting to new methodologies easily.
The vast majority of mobile apps feature a cloud component – a website with an API that the app leverages, for instance. These kinds of back-end applications, which are being developed from scratch, can be handled by DevOps methodologies. These mobile developers who are likely using HTML5 or node.js or relying on frameworks such as Appcelerator or Sencha would have to be cross-trained.
Some handle on service virtualization in order to tackle the substantial dependencies in mobile software is essential. Virtualization offers an abstraction layer between the physical infrastructure and the services provided, thus simplifying and accommodating the ever changing needs of mobile apps. Other things to keep tabs on would be granular API management and security, as well as monitoring and analytics.
It is obvious today that the growth in mobility is driving the traffic toward the DevOps camp, while DevOps is fueling better results with mobile apps. There’s research to prove this: CA technologies, a strong proponent of DevOps for enterprise mobility, conducted a comprehensive global survey of 1300 IT leaders around this space. Of those enterprises who have already established a mobility strategy in place, a massive 71% went the DevOps route.
Finally, it has always been about the customer; and it is customer demand that has paved the way for DevOps in mobility. Commonly cited reasons for this are the increased pressures to release apps quickly, the need to improve user experience, and the holy grail of them all, the increasing use of smart phones and mobile devices.