DevOps Code – An Agile Change Management process


Introduction to An Agile Change Management process

DevOps Articles

Organizations that adopt DevOps are using Agile ways of working to develop and deploy products and services. In practice, the change management process is still used. The question however, is how to integrate the required control of change management and still work Agile!

An Agile Change Management process Definitions

Impact

One of the strong and common used based practices of ITIL® is the impact analyse of a change. The word “impact” however has two meanings. The first meaning is the scope of the change. So, which application and infrastructure components are in scope of a change (feature request). The scope indicates also the amount of money / time to realize the change. The second meaning of the word “impact” is the consequence of not managing the risks of the change. This impact is measured in losses of time, money, reputation, market share etc.

Risk

The ITIL Change management also determine the risks of change based on probability and impact. This results in a high, medium, or low risk.

Change authorities

The ITIL process change management uses a category to rank changes and to define the change authorities. The category normally includes urgent change, minor change, normal change and major change. The minor, normal and major change are determined based on the impact (scope) of the change. The change authorities have received a mandate to give a go for the start of the change and the release of the realized products. Examples of change authorities are the developer, operator, change manager, Change Control Board (CCB) and Management Team (MT).

Best Practices for DevOps Code

Who thinks that DevOps terminates the usage of Change Management best practices of ITIL, will be surprised by the results of the research on the level of control in ten organization in the Netherlands [Best 2016]. All ten organizations still are using Change Management to control the Agile development projects. However, the role of Change Management has been adjusted. This article describes how to make Change Management Agile.

Level of control

The first thing organizations do is changing the role of the change authorities. CCB consists of new CCB member. The product owners are now present in the CCB. Also, the mandate of the CCB is changed. Only Themes and Epics are decided upon. In case of features or even stories with high risk then the CCB may still be involved. The decision making of the CCB can take place quickly because the Agile projects are already provided with a vision and road map (see Article Planning).

Features that are vertical splitted (see Article Splitting features) are managed by the product owner. The features that are horizontal splitted have to be managed by more than one product owner. The coordination is performed by the change manager.

Waste

The delegating of the control to product owners does speed up the change management process extremely. Waste is reduced since only larger changes are to be agreed upon by the CCB.

In addition to the features that origin from the release planning, a customer can also submit a feature request. This should be determined in size. If it’s an epic, then the CCB is needed for approval. If not, the change manager is only required if the feature request is to be realized by more than one DevOps team. However, product owner is now the starting point so that the feature request can be quickly routed.

However, the question is whether there is no more waste to be eliminated. The answer is simple, yes that is certainly possible. The reason that there is still a lot of waste in the handling of features is in the analysis of a client’s feature request and the administration of the functions and stories (see Article Function Recording).

Waste is located in the administration of the features, the acceptance criteria, the test cases, the stories and the associated test cases. But also, the disintegration of the features in stories to distinguish size, impact and risks. To remove this waste it is necessary to get a better picture of the handling of these feature requests.

Feature admin

A best practice to speed up the administration is in the pareto ratio of the feature (requests). The question to be asked is if 80% of all features for a particular application are related to 20% of the possible changes. A practical analysis shows that this is the case. For a particular application, the following has to been done:

  1. Architecture picture: Create an architecture picture of the application in which interfaces with the environment are drawn. The application is described in the CMDB as CI. The features are described at this level.
  2. Components: Detail the architecture picture and draw the components inside it including the relationship. Strive for about ten components. Identify the components and describe them with one paragraph.
  3. Stories: Identify the possible technical changes per component. These are the stories that are possible. Also aim at the description of those stories that provide 80% of all feature requests.
  4. Scenarios: Define the possible types of questions from the customer for a change to the application. Give them a scenario number. Describe per scenario which components need to be adapted and what stories are needed.

Road map

This elementary road map creates a solid pattern in which all features (requests) can be translated to:

  • A scenario ID
  • A feature template
  • Application CI
  • Components ID’s
  • The story templates

The ease of this standardization of the administration makes it possible to work with templates. By selecting a scenario, the above objects are automatically created and, if possible, provided with information. Because the scenarios have already been developed, the template of the test cases can also be linked so that test cases can be generated.

Last but not least, the impact and risk per scenario can be determined in one shot in advance and applied once in advance. The CCB may, on the basis of a scenario, give prior approval to the product owner (s).

LinkedIn Group

Discuss with us about this article on LinkedIn.

More information

Related Books:

DevOps Best Practices, ISBN: 9789492618078
Agile Service Management with Scrum, ISBN: 9789071501807

Related training sessions:

Related Article:

Service Management

Samenvatting
DevOps Code - An Agile Change Management process
Artikel
DevOps Code - An Agile Change Management process
Beschrijving
Organizations that adopt DevOps are using Agile ways of working to develop and deploy products and services. In practice, the change management process is still used. The question however, is how to integrate the required control of change management and still work with an Agile Change Management Process!
Auteur
Publisher Naam
ITpedia
Publisher Logo
Sidebar