XP-agra for flaccid Scrum teams (Doctor’s Choice)
- You no longer have confidence in your estimates (time, effort, risks)
- You have ‘owners’ for certain software components
- Your regression test takes more than half a day
- A very high rate of bugs (defects) are discovered in production by your users
- In order to find the piece of code to change or the place to add a few new lines you need to spend hours digging the code base
- Sometimes you touch Component A and the change affects Components B to Z, and you discover that on late test cycles or live in production
- With every iteration you feel that the time to perform minor changes is growing exponentially
- Everybody fears the release date, and stay alert the next week or two expecting the next bomb coming from production
- Your team is doing Scrum (or so you believe)
But, fear no more, you can be cured with a simple solution: just take XP-agra the Doctor’s Choice for flaccid scrum implementations. You need to start with solid engineering practices as proposed by eXtreme Programming.
Solid Scrum (with XP) mindset
- The time one is the easiest, it is fixed by one of the core concepts of agile methodologies “Time Boxing”
- The scope vertex must be flexible in order have really time boxed iterations, and
- The quality vertex must be fixed in order to maintain a sustainable velocity (performance) by the team.
Flaccid Scrum mindset
- The time one remains fixed (time boxed)
- The scope vertex is fixed giving a false sense of commitment and “performance” to the Product Owner and the customer, and
- The quality vertex, by necessity, becomes flexible in order to allocate all committed scope inside the time boxed iteration.
The Jenga Tower
“Each block removed is then balanced on top of the tower, creating a progressively taller but less stable structure.” (https://en.wikipedia.org/wiki/Jenga)
Practical steps towards solving the problem
Just to be crystal clear, XP is not a pill, we really can just “take it” and the problem will be gone. In order to solve the underlying quality problem we need to take small, but solid actions. Here I’m only listing the suggested steps but details on each one will be left for upcoming posts:
- First, we need to build awareness around the issue for all stakeholders:
- Your team (complete): developers, testers, leaders, …
- Your product owner
- Your customers: both inside and outside the organization
- Capital investors / business owners
- Second, improve the knowledge level of the people actually doing the work, because they need to change their bad habits and may require some sort of education / coaching / etc.
- Finally, devise a plan covering short, mid, and large term actions for team to undertake.
- One of the first steps of this plan is to measure the current situation
- Then, you need to define the KPIs that will be observed as process and quality improvement indicators
- Pick the smallest steps possible, because you don’t want to completely stop the team and you need each new practice to be assimilated by the team shifting the mindset a little bit each time.
(FlaccidScrum) The first time I saw the term was in a Martin Fowler’s posts