Off late, Lean, Agile & DevOps is a buzz word in the IT industry. Lot is being discussed on how Agile is way for continuous development and operation for enterprises to adopt. A growing number of companies worldwide are adopting Lean, Agile & DevOps, believing it’s an efficient way to design and build robust scalable applications. The next wave of adoption is Continuous Operations to support and maintain the applications.
Planning how a system will be operated and supported after it is deployed needs a different approach and team different to engineering team. In addition, supporting the systems need multi-level team/skills to provide L1 – user support, L2 – application support, L3 – development and enhancement support.
One can look at operations of system/applications into two distinct categories:
One focus is to ensure continuous operations – software is running properly, the network and system is available and monitored for performance, required data is backed up and restored as needed, handle and execute disaster plans when required.
Another focus is support covering – assist end users by answering their questions, analyzing the problems that they are encountering with production systems, recording requests for new functionality, and making and applying fixes.
Against the background of different set of operations and support requirement, organizations are looking at continuous operations the Agile & DevOps way.
Currently most organizations follow ITIL framework to deliver operations support covering – incident, problem, and release management. One place where agile operations and ITIL blend well together is in the Problem management and Release management process.
Whereas Incident Management is about restoring normal operations, Problem Management seeks to correct the root cause of the incidents thereby going through the cycle of reproducing the bug in QA, debugging, code/configuration changes, testing, and so on. Similarly, is the case with Release management following Agile & DevOps deployment cycle.
Blending both the framework, organizations can benefit to move their product support the continuous way. Some of the key premise for organization to look for continuous DevOps operations are:
Automation – Leveraging new age DevOps tools and incorporating Machine Learning & Chat bots to reduce the manual effort
Economy of scale – Support based on shared services model. Support team as small as 1 member to team sizes of 10-12 based on customer requirements
Customer focus – Company prime focus is on Products engineering to release, while we take care of operations and support
Integrated with Agile Development teams – Manage, collate and report User requirements, bugs, enhancements request and align with next releases
Geo. Coverage – Ability to provide 24 x 7 truly global follow the sun support using our Nearshore and Remote delivery centers
Process and new age tools – We bring the required infrastructure to deliver support. No need for customer to invest on support infra.
Multiple support channel – email, combination of online chat and chat box
SLAs adapted to individual customer needs/requirements
While, there had been lot of progress about startups adapting Agile operation model for their product support, even outsourcing them. The move to DevOps continuous operations has provided the startups to focus on continuous innovation and time to market their products/solutions.
Next question is – Can DevOps continuous operation model work for established enterprise – both medium and large enterprise? Similarly, can DevOps continuous operation model deliver AMS for COTS product and solution as well?
While, there had been delivery models and process maturity around Agile operations, especially for start-ups. However, things are moving towards for established enterprise to adopt Agile operations.
Based on my decade years of providing application support and maintenance, and with our existing customer base, – Yes, DevOps continuous operation can be adopted across established enterprise. However, this would need to be incremental, blending with traditional ITIL model and backed by automation tools and solutions. Some of the key recommendations towards this are:
Machine learning incident support – intelligent analysis of solution to incident/problems based on historical data – faster time to resolution
Incorporate DevOps principles into application support and maintenance – Evolving support process based on the continuous feedback and changing requirements of our customers.
Flexible support process – Support team flexible to define their own process based on what is best for both the customers and support process
Continuous education and knowledge – Enabled amongst support team related to best practices and solutions
DevOps support team – No dedicated team – Ability to handle support across customers
Share customer ideas and feedback – both positive and improvement areas – to influence stable support outcomes.
Make it easy for customer to reach us for support – multiple support channel of communication — email, live chat/messages, etc., whatever customer feels most comfortable using.
We see increasingly, global companies of every size are adopting Agile. And in time, those companies will see a growing number of successful projects. It is time to adopt Agile operations to ensure the support and maintenance is continuous and in sync with organization business processes and solution needs.