Introduction
Whole Team refers to the organization that delivers software for a project, and it includes any and all
contributors (both direct and indirect participants) to the delivery. It creates a collaborative environment in which
the "whole" team participates in setting direction, managing work efforts, and delivering the solution. Successful
software delivery ultimately depends on people. This dependence means that the way people work together is a critical
success factor.
Background
In some approaches to software development, customers and development managers tell developers what they want, when
they want it, and how much it can cost. Assignments are handed out and deadlines set without discussion. This
environment creates resentment among developers, managers, and customers. Developers also are asked or even expected to
work whatever hours it takes to get the job done. In addition, barriers exist or are created between teams, causing
team members to blame each other or pass the problem onto someone else.
Definition
Whole Team embraces the concept that to be successful in terms of quality, schedule, and scope, people must feel
empowered to accomplish the project goals. This empowerment also means that the ultimate customer of the software must
be an active and equal participant in the process. The Whole Team process focuses on the collaboration among all team
members and the joint decision-making process. This approach creates an environment that ensures transparency and
promotes collaboration on related work items. Additionally, the active involvement of end users, customers, and
sponsors in the development process enhances the quality of the delivered product.
Misconceptions
Whole team does not mean that the entire team works on everything at once, as the name suggests. The real goal with the
Whole Team approach is to ensure that the team works collectively to identify risks and to assign, deliver, test, and
review work products.
Key aspects
The Whole Team approach encompasses the following key ideas:
-
Collaboration across team members through:
-
Daily meetings
-
Extended-team members
-
Cross-functional teams organized around components
-
Enabling technologies
-
Sustainable pace
-
Work assignments are pulled instead of pushed
-
Decision-making is made by people close to the decision
-
Managers do not direct, but coach and lead
-
Everyone participates and generates value
-
Transparency of information and activities
-
Open and honest communication
Business benefits
Whole Team practice enriches the software development environment, raising overall resource productivity and improving
software quality. The Whole Team approach creates transparency, enabling all team members to be aware of all other work
activities in the software development process. This transparency is of direct benefit to the end user for the software
product being developed.
|