Approaching Agile
Be pragmatic. Context counts. Optimize flow (across the system). Create psychological safety. Improve continuously.
Disciplined Agile encourages us to approach any framework with a disciplined and informed mindset, using it where it makes sense and equipped to improve it to fit our situation. Continuously. And for the good of the whole organization.
Disciplined Agile describes agile as a way of working, agile is an iterative approach to work that helps teams deliver value faster and with fewer headaches. Instead of betting everything on a big launch, agile teams deliver work in small, consumable increments. Agile is also a mindset that influences how we choose to think and act.
Scrum is one of the most widely used (and misused) methodologies to do agile at the team level.
Approaching Scrum
Scrum is attractive because it is very lightweight with simple rituals and mechanics and rules. It is easy to learn. Disciplined Agile offers a learn free 45-minute training video to teach people the basics of Scrum.
Many organizations have tried scrum because it was popular and simple and have failed because they approached it simplistically. Build on a better foundation.
- Make sure it is right for you. Consider if you need to extend it. For example, review the Agile (scrum-based) life cycle article.
- Ensure that development teams are including in their scrum approach the necessary agile engineering practices such as Acceptance Test-Driven Development, Advanced Software Design, Design Patterns Thinking, and Sustainable Test-Driven Development.
- Prepare the team to improve continuously, using guided continuous improvement.
And keep the whole system in view. Improving one team at a time does not ensure overall improvement in the flow of value. That comes by incorporating lean thinking in the value stream.
A Common Mistake
A core feature of Scrum is that it will help to expose challenges by the end of an iteration when the team does its retrospection. The team is supposed to self-organize to address these challenges.
A common scenario is that a team gets their training and starts using scrum. After a few iterations, they discover they have many stories still open at the end of the iteration. Most of the work may be done but only few of the stories are fully completed. They are not yet accepted as “done.” The team realizes that they need smaller stories and that they need to focus more on finishing work rather than starting new work. The problem is, how can they find the time to improve their way of working?
In normal scrum, the only time they have available to make smaller stories is the day of retrospection and planning, which is not a good time to learn new things.
In addition, since they are already behind, they are now under pressure to catch up. They have to pile on two more weeks’ worth of work on top of the work they hadn’t completed in previous iterations. This is not a sustainable situation and can be the start of a downward spiral.
How It Could Be Done
The right thing to do in this situation is to give the team the opportunity to learn from each iteration and, in this example, spend a couple of days writing better stories, to improve their analysis skills, and improve other engineering practices.
To avoid pressuring the team, the team could be allowed to commit only to work they believe they can complete within each iteration, whether it is new work or unfinished work from previous iteration. This gives the team a sense of ownership of their workload and velocity.
This is bringing in lean and flow principles into the scrum practice. And that is the Disciplined Agile way.
29.03.23
Agile Coach
Essential Concepts
Starting Agile
- Approaching agile, approaching scrum
- Common challenges for new teams
- Successful pilots can hurt going agile
- Where to begin