This blog was originally posted on the ViFX blog on 30 June 2016 - click here to view.
The hot topic around the Service Management water cooler at the moment is the concept of bimodal change and how the adoption of this is essential when embracing a DevOps framework. While the conversation threads are predominantly focused on determining what this approach means and how it benefits the organisation, the talk is relatively quiet on how to implement such a model and how this approach aligns to the standard ITIL change management process.
This blog is therefore an attempt to start a water cooler conversation on areas that need to be considered when looking to implement a bimodal change model. In lieu of anything else I am going to base this discussion around Gartner’s Bimodal definition, aligned with their Pace Layers Model; a methodology for systems of innovation, differentiation, and record.
Gartner's Bimodal Model
Gartner defines the two modes of change as per the below table. Mode 1 is for the traditional complex systems where the reduction of risk is critical and suits the normal change management approach perfectly. Mode 2, the agile approach to software delivery, is designed for continuous development models and the introduction of small changes quickly.
Gartner's Pace Layers Model
Gartner introduced the Pace Layer model in 2010 as a way of defining how application portfolios evolve at different rates. This is broken into three layers;
Systems of Record - Established packaged applications or legacy home grown systems that support core transaction processing and manage the organisation's critical master data. The rate of change is low, because the processes are well-established and common to most organisations, and often are subject to regulatory requirements.
Systems of Differentiation - Applications that enable unique company processes or industry specific capabilities. They have a medium life cycle (one to three years), but need to be reconfigured frequently to accommodate changing business practices or customer requirements.
Systems of Innovation - New applications that are built on an ad hoc basis to address new business requirements or opportunities. These are typically projects with a short life cycle (zero to 12 months) that use departmental or outside resources and consumer-grade technologies.
There appears to be a natural alignment between Gartner’s Bimodal Mode 2 approach and with their Systems of Innovation pace layer classification. It therefore seems appropriate for organisations that are wanting to adopt the Mode 2 approach to initially target Systems of Innovation. Working in this applications space will allow the organisation to establish the right process definitions and process maturity whilst limiting risk.
ITIL’s change management process already provides a number of change management processes defined, such as the standard emergency, standard and normal change processes. The Bimodal approach does not naturally fit within one of these established process and therefore needs a new process to be defined that will foster greater flexibility than a normal change but stems the flexibility of a standard change.
So, what is a streamlined change management process?
A streamlined change management process allows the ability for organisations to incrementally release changes quickly through the development lifecycle into production via a controlled framework. This introduces incremental releases quickly, where the changes can either be immediately live or left dormant ready to be activated at a later date.
The end to end delivery process still follows the same typical agile-phased approach with design, build and unit testing in the dev, and then relative testing in the QA environment before being released into production. This approach differs from a normal change approach with three key differences;
Change size - the size of each change, while up to each organisation, can range from small changes that can be published daily to larger changes put in weekly batches.
Delivery model - a streamlined change approach can only be delivered via an agile delivery model with the delivery team made up of a mix of business users, operations and project team members. It is essential that the delivery team are the voice of the business, the hands of the project team, and the ears of the support team.
Governance - the most challenging component of implementing the streamlined change management process is defining a new governance approach. Generally, most organisations have clearly defined processes implemented with emergency, standard, and normal changes. The adoption of the streamlined change management process means that organisations will need to determine what changes are to be directed through this process, and then they will need to determine an approval process for the change to move through the development life cycle.
Under a pure DevOps model, developers will be committing code into source code systems and configuration files. Environments will then be built using the latest code and automated testing will be executed, supplemented with manual testing where required. The test results will be published nightly on dashboards for full visibility where any issues identified will be directed back to the developer to resolve before going through the full processes again. Only once a change has achieved 100% testing success throughout the dev lifecycle environments will it be approved to be released into production. Under this model the governance process can be automatically applied as every change has been executed through a structured and reliable process where everyone witnesses the end results.
Unfortunately, very few organisations will be able to adopt such a comprehensive automated dev process so will need to create a governance/approval process as prescribed by defined guidelines. The key is therefore in creating a process that your organisation feels comfortable with. You will need to define what visibility is required that offers the approvers the level of trust needed so that a release can be pushed into production.
Considerations for streamlined change management
Creating a streamlined change management process will need careful planning and will be different for each organisation. Area’s worth considering when establishing a streamlined process are;
Business engagement - the critical component for implementing a streamlined change management process is for organisations to establish project delivery teams that integrate business members into the project teams. It is essential that business owners take ownership of the change pipeline and prioritisations. They will also need to understand the release schedule and have full trust in the end to end delivery process. There cannot be any wasted energy with a ‘them and us’ culture.
Applications – organisations will need to establish what applications can and cannot be introduced into the streamlined change management process. Start small and grow this list over time as your understanding and capability establishes itself. As a rule, the newer cloud-based, highly configurable applications are a great starting point to begin this process.
Pipeline governance - create an approach that allows the business owners to raise and prioritise change requests. They will also need to agree and own the cadence of change being introduced into production. Remember, this approach is all about small changes being released quickly so the business owners need to stipulate the rate that they are comfortable with.
Change approval governance - organisations will need to define an approval process that minimises the effort of manually approving each change and fosters organisational trust. Each organisation will need to identify criteria that if successfully met, automatically approves the change to be promoted to the next stage. Think about creating a dashboard that monitors and displays criteria so everyone can see how the change is progressing. Once the agreed criteria has been achieved then the change should automatically be approved.
Agile delivery - it goes without saying but your delivery team needs to adopt an agile style approach to application development delivery.
Configuration - start with applications that are easily configured rather than customised. Configuration allows the delivery team to create small changes quickly and the ability to quickly roll back easily if required.
Incremental change – what’s the best way to eat an elephant? By taking one mouthful at a time. One of the key benefits of a streamlined change process is that the business users can experience change quicker. This change may only be in small increments but change is seen and value is received.
This streamlined process is not new, with a number of mature organisations having already adopted such processes to meet their continuous delivery needs. If you have not started this journey yet then do think about how you would create an inclusive delivery team. Think about what governance structure you will require and ultimately what trusting culture you will need to foster.
Let me know your thoughts around this concept of the streamlined change approach in the comments below.