How to Initiate a DevOps Project
Source: 17th/21st Lancers c. 1922-1929 “THE FIGHTING SPIRIT!”
Agile consultants on a development project often start by helping the team construct a backlog. The task is sufficiently concrete to get all stakeholders (product management, project management, development, test, any others) on a collaborative track through the creation of a key artifact. The backlog establishes a base line for the tasks to be carried out in the project.
For a DevOps project, start by establishing the technical debt of the software to be released to operations. By so doing you build the foundations for collaboration between development and operations through shared data. In the DevOps context, the technical debt data form the basis for the creation and grooming of a unified backlog which includes various user stories from operations.
Apply the same approach when you are fortunate to be able to include folks from operations in the Agile team from the very beginning. You start with zero technical debt, but you track it on an ongoing basis and include the corresponding “fix-it” stories in the backlog as you accrue the debt. Running technical debt analytics on the source code every two weeks is a good practice to follow.
As the head of development, you might not be comfortable sharing technical debt data. This being the case, you are not ready for DevOps.
Thanks for the great post!
Making technical dept is really something people do way to seldom. Too often they just rush to get a “1.0” version out the door without thinking about what comes next. That’s exactly what creates an operations nightmare _and_ slows down the team over the long run.
I once lead such a project. Only as we started to look at our technical debt and introduced “fix-it” stories into our backlog (exactly as you describe) we started getting better.
Matthias Marschall
March 17, 2010 at 8:20 am
Great minds thing alike, Matthias (even if I have to say so…)
As you point out, the lack of concern about software’s long-term health is a double whammy: it has a great negative impact on productivity and it carries a significant service level price-tag.
My hope is that between the DevOps movement and the various folks who quantify technical debt we will generate enough momentum to overcome the de facto syndrome which always views the next release as if it were the final release of the software.
Best,
Israel
israelgat
March 17, 2010 at 11:36 am
[…] first step toward dev meeting the required speed is described in the post How to Initiate a Devops Project: For a devops project, start by establishing the technical debt of the software to be released to […]
Ops Driven Dev « The Agile Executive
June 24, 2010 at 7:55 am
[…] following recommendation was given in the post How to Initiate a Devops Project: For a DevOps project, start by establishing the technical debt of the software to be released to […]
Boundary Objects in DevOps « The Agile Executive
July 6, 2010 at 6:44 am