Achieving Business Agility at Small to Mid-Scale (online book)
Teams should be organized in such a way that the value stream that the train is involved in stays mostly within the team. Work should be able to be brought to the teams, not having the teams be reformed for every new chunk of work. While stability is a desired trait of trains, complete stabilty is neither achievable nor desirable. Growing organizations need to embed new team members as well as adjust to changes in strategy.
Some reorganization of the talent can be done right up front if it is clear certain people should be on particular teams. How to reorganize usually becomes more obvious after the first planning event where dependencies are mapped. It is important to visualize before reorganizing. This means to understand what
Resources and case studies
Achieving Cross-Functional Teams to the Greatest Extent Possible. Cross functional teams are teams that have the capabilities of building the software they have committed to with no outside dependencies. This is fairly rare in development/IT organizations that have more than 30 people. The larger the technology group gets the more difficult this becomes. Having cross-functional teams makes teams both more creative as well as more efficient because of fewer hand-offs and common knowledge.
Aligning Multiple Teams with Lean-Agile Thinking. Three key principles of Lean Thinking for software development. This article describes how they apply to the value stream (the name Lean gives the workflow from “concept” to “consumption”). It also describes three disciplines Lean-Agile teams will need to follow to keep value flowing. Finally, it illustrates how Lean Thinking guides Agile enterprises in addressing challenges in their context. Lean-Agile lays out a different, more disciplined approach for scaling Agile. (Al Shalloway. 11/2016)