Here’s a list of production efficiency adjustments we’ve made along the Agile learning curve. Although these may be specific to our circumstances, they may hold some value for you, even if only to spark some discussion:
-
1. Optimal team size may be no bigger than 5.
2. Build or buy decisions should be in the hands of Business, not Research.
3. The team should get one chance at estimating. If they are wrong then the extra time needed to meet sprint goals is for their own account. This will provide the sort of predictability in delivery times that are needed.
4. Production should continue to enhance the code library for all common product needs. Building new components should be the exception and possibly should only be handled by senior people who have that responsibility.
5. Apprentice coders should not outnumber journeymen and masters on any team. Apprentices must be mentored by journeymen and masters on real commercial projects, not on made-up training projects.
6. A skills profile of each team member must be built up and updated as they grow. Not just their place on the master, journeyman, apprentice ladder, but particular skills like ‘database design’, for example. This is so the right people are assigned to the right projects creating true cross-functional teams.
7. Work not accepted by the Product Owner at sprint review due to time must be allocated as ‘rework’. This enables us to track how much sprint output is not consumed commercially.
8. Divided responsibilities must be avoided so that people can focus on only one project.
9. Meetings not related to resolution of product issues or design must be minimised.
10. Teams must be co-located with the Product Owner and a culture of face to face communication rather than email must be encouraged.
Although your circumstances may be different, I hope these help to promote some thought and discussion.