Software Development & Management
- By Sriram Narayan
- Jul 2, 2015
This chapter is from the book
5.12 Summary of Actions
- Shift from activity-oriented organization to outcome-oriented cross-functional teams. They tend to be self-sufficient (autonomy) and business goal–directed (purpose).
- Communities of practice complement outcome-oriented organization. In the absence of a functional organization, they provide the necessary umbrella to nurture specialist competencies.
- If needed, divide work among multiple teams by splitting the outcome into suboutcomes (e.g., modules of an application or different applications) rather than activities (development, testing, etc.). The same applies for geographic distribution and outsourcing.
- Don’t encourage creation of shared services that service critical value streams. They tend to lose the sense of business purpose and this hurts responsiveness.
- Don’t commission separate teams for maintenance. It is an example of unnecessary handoff created by team design. Besides, rarely is anything in a pure maintenance mode. It always coexists with forward-looking development. A separate maintenance team is adinosaur in an age of continuous delivery and DevOps.
- Move away from an IT-B matrix to outcome-oriented teams aligned with business verticals.