#2 – Teams
“The best architectures, requirements, and designs emerge from self-organizing teams." - Principle #11
What This Means For Agile Teams
The makeup of an Agile team is absolutely crucial to successful collaboration. These teams need to be self-organized in order for them to produce the best work. When teams have autonomy, you create the best products, software, and employees.
What This Means For Agile Resource Management
Staffing an Agile team is no small feat. There are several factors to take into consideration when creating these teams. First, expertise and skills must be well distributed. Second, the chemistry between team members must be very good. Because Agile teams work very closely together, personalities that don’t work well can cause serious issues. These two factors blur the line between resource management and organizational team formation. To overcome this, the person responsible for Agile resource management will need to collaborate with department heads and team leads to properly staff the right people on the right teams.
Not only is successfully staffing one Agile team a serious challenge, but a company working Agile will constantly have teams formed and dissolved as projects are completed. Successful Agile resource management needs to include a process to staff new projects based on the project’s requirements and the skills of the team members. This type of dynamic team formation will need to become a regular resource management task. While Agile resource management will still need to consider factors such as qualifications, cost, and availability, using too rigid staffing procedures will only hold back the teams. A fine balance will be needed to successfully staff teams. Additional factors to be considered for dynamic team formation include:
- Frequency of collaboration – how often do team members work together on projects?
- Location – are all team members working in the same office? If not, are there proper technologies in place to make communication easy?
- Chemistry of team members – how well do team members work together?
- Frequency of topics/products – how often are team members being asked to work on certain topics or products?
- Capacity-oriented planning on the team level – how much can a team accomplish with the number of members it has?
While Agile has more team formation than traditional methods, there is a reason for it. Another Agile principle outlines its benefit: “Agile processes promote sustainable development. The client, developer, and user should be able to maintain a steady pace for an unlimited period of time.” If delivering projects at a steady pace indefinitely sounds pretty good (which it really does) then you can understand the benefits of learning to properly staff Agile teams.