We often talk about “the most important thing for a delivery team to do is…” and “what a delivery team manager should focus on is…”. Let’s get clear on who is responsible for what.
If you imagine you’re trying to deliver high value, high quality software into production:
- The business team’s responsibility is to make sure that what is being delivered is high value
- The delivery/IT team’s responsibility is to make sure that it’s delivered as effectively and efficiently as possible to get into production, as soon as possible
Imagine your delivery engine is a sausage machine:
The delivery team’s responsibility is to make sure this machine is delivering the highest throughput that it can. It’s the Product Owner’s responsibility to make sure that the raw meat going into the top of the sausage machine is of the highest value to produce the next sausage.
Split those responsibilities and make sure that, as an IT team, you can direct your sausage machine at any problem and, as soon as possible, get high value working software out the end.
If you picture these roles, then it’s clear that:
- It’s not the delivery team’s responsibility to make sure that value is delivered, it’s their responsibility to make sure that the thing put in the sausage machine is delivered
- It’s the Product Owner’s responsibility to make sure that the highest value thing is put into the machine next
If you’re planning a year in advance, then it’s quite difficult to focus on what the highest value thing is because you’ve got a whole year to think about. Invariably you’re going to focus on delivering some stuff that:
- You’d like to have
- Someone else suggested would be nice to have
- Is likely to get someone important excited
Whereas none of these might be the most effective features to deliver next, which is why in Agile you don’t decide what you’re delivering second until you’ve delivered the first thing.