Blogs about Jazz

Blogs > Jazz Team Blog >

DevOps Culture – Enabling continuous improvement with IBM’s DevOps Maturity Model and Rational Team Concert

In my last post about retrospectives I discussed the way we have been tracking pain points and associated improvement actions to address those pain points. In this post I want to discuss how we’ve taken this even further by using Rational Team Concert to help track our continuous improvement and how we’re using IBM’s DevOps Maturity Model.

Pain Points and Improvement Actions

A pain point is an impediment or source of friction that blocks or hinders our development process in some way. To address a pain point we breakdown the required work into one or more improvement actions.

We created customized work item types in Rational Team Concert for pain points and improvement actions. Some of the important fields we added for pain points are:

Origin – Another work item which may have caused the pain point to be created. This might be a retrospective work item or perhaps a defect in one of our systems or processes that never seems to get fixed properly.

Affected Teams – One or more teams that are impacted by the pain point.

Confidence – Our confidence in addressing the pain point. This status may change over time as we work to address the pain point.

In improvement actions, one interesting field tracks the type of improvement as one of culture, process or tools. These are the three imperatives that we’re addressing to transform the way we develop software by applying DevOps principles and practices to deliver value to our customers earlier and more frequently.

Since improvement actions must be addressed to reduce or eliminate a pain point, the improvement actions are naturally linked to a corresponding pain point as children.

The idea is that anyone in the development team can create a pain point and these are triaged and assigned by senior leaders. It’s important to have a good triage process to ensure pain points evolve smoothly through an appropriate workflow and it’s equally important to summarize the status of the total set of pain points in the system. Our triage process is defined in our wiki and we use dashboard tabs such as this one for pain points and this one for improvement actions for summary reporting.

Maturity Goals

We’ve been developing our plans for continuous delivery transformation in the context of a DevOps Maturity Model that IBM’s DevOps Center of Competency has been using with IBM teams and IBM Software Services Rational has been using with customers. You can read about the maturity model in this article on the new developerWorks DevOps site. Figure 3 in that article shows the capabilities required to reach a certain level of maturity within a given discipline. We’re tracking each of those capabilities in a customized work item type known as a ‘maturity goal.’ Each maturity goal tracks the discipline as one of Plan/Measure, Develop/Test, Release/Deploy, Monitor/Optimize, and the maturity level as one of Practiced, Repeatable, Reliable, Scaled.

We ask ourselves what prevents us of the capabilities in the maturity model and each of those impediments is… a pain point! Thus, pain points are children of maturity goals.

Just as with pain points and improvement actions, we want to report the overall picture with maturity goals and we do so on this dashboard tab.

Planning Continuous Improvement

Maturity goals, pain points, and improvement actions constitute three levels of work items that naturally lend themselves to tracking in Rational Team Concert plans with maturity goals and pain points as plan items and improvement actions as execution items. Like any agile project, we maintain a ranked backlog and release plans and we use these to help direct the work efforts.

We’ve only started using this approach in recent months and we’re still optimizing the process but we’re quite excited about how it’s working for us. In implementing the maturity model in Rational Team Concert we’ve been able to make use of a tool that we’re familiar with. We know it scales and it can be used across the team and by our stakeholders on a variety of systems. We’re working closely with DevOps Center of Competency and as the maturity model evolves, we can easily make appropriate changes in our Jazz process customization.

In tracking your own efforts to improve your development and business processes you may find similar benefits from using Rational Team Concert and/or IBM’s DevOps maturity model.

Adrian Cho
Program Director, Continuous Delivery Evangelist,
Author of The Jazz Process: Collaboration, Innovation, and Agility