A
The TSP Process

As described in Chapter 7, the Team Software Process (TSP) was developed to address the growing need for capable software teams that deliver quality products on schedule and for their committed costs. This appendix provides a brief overview of the TSP process. For more information about the TSP process, consult the other appendices and the available references [1, 2]. The topics covered in this appendix are

TSP overview

Team preparation

Inadequate preparation

Tsp Overview

The TSP process was designed to build and maintain motivated and committed engineering teams. There are five requirements for motivated teams:

1. The team members are all skilled and capable of doing the job.

2. The team has an aggressive and important goal that the members must cooperatively accomplish.

3. The team members believe that the goal is achievable, and they each have a defined role in achieving that goal.

4. The team members have a common process and plan that guides them in doing the work and in tracking their progress.

5. The team leader supports and protects the team and keeps the members informed of management issues and team progress.

These five requirements must all be present for teams to be consistently motivated and to be fully effective in doing their work.

To build and maintain such teams, the TSP has the elements shown in Figure A.1. First, team preparation is required so that all members have the requisite planning, measurement, and tracking skills. Training is also needed so that the engineers can use defined processes, know why and how to measure and manage quality, and understand how to consistently make and meet commitments.

During the team launch, the team sets its goals, assigns team-member roles, and develops a team plan. The team members also develop detailed personal plans for their own work. After completing the launch, the team does the work, and management periodically reviews its status. The team leader holds weekly status meetings to provide the members with precise and timely feedback on their performance. The periodic management reviews help to maintain the engineers’ motivation and commitment to the job.

After TSP teams have worked for several months, they will need a TSP relaunch. The relaunch process is much like the launch process and includes goals, roles, and detailed replanning. It is needed because detailed plans can cover only a few months of work. After that, the team members will need a re-launch to update their personal plans and to adjust for any other project changes in requirements, team membership, or the engineers’ knowledge of the job. A periodic relaunch will keep the team’s plan useful, current, and accurate.

Figure A.1 The TSP Process

Image

Managers often worry that the engineers will slip the project schedule when they make a new plan. This is a question of trust. The engineers are committed to the current plan and will not change it unless they must. You can properly ask them to defend the changes, and if they truly need more time, the earlier you know it the better.

Team Preparation

The principal launch preparation activities are selecting the team leader, assigning team members, training the team members, and training the team leader and other involved managers. Teams also find it helpful to do some advance work on the project development strategy and product conceptual design. While these items will be produced during the launch, their quality impacts the quality of the plan, so advance preparation is usually helpful. An SEI-authorized TSP coach should work with your people to ensure that all of the required launch preparation work is completed on time.

TSP Training

The TSP process produces motivated and committed engineering teams, but it will not work without proper training and management support. For example, Figure A.2 shows a family of six TSP courses that are required for the team members, their managers, and involved senior managers and executives. The six course topics are shown in the columns, and the participants for each course are shown by the horizontal arrows.

The bottom arrows in the left-most column show that senior managers and executives attend only a one-and-a-half-day seminar on TSP concepts. This is called the TSP Executive Strategy Seminar.

The second arrows from the bottom show the training for the other managers and team leaders. After covering the executive-level topics, these managers complete lectures and exercises on people and team management. All told, their training takes about three days.

The team members do not normally attend the executive or manager courses. They must be trained in defining and using processes, making process and product measurements, planning and tracking the work, and measuring and managing quality. This software engineer training is provided with the Personal Software Process (PSP) course, as described in Chapter 6 [2]. For software professionals, PSP training takes about 120 working hours and usually is done in two one-week training sessions that are spaced a few weeks apart. Several days of homework are also required.

Figure A.2 TSP Training

Image

Team members who are not developing software, such as requirements people, testers, and writers, must also be trained in measurement and planning. Then they can participate in the team launch, team management, and team operation. This training takes about two days. While it would be desirable to train all team members on quality measurement and management, that course material requires writing nine or ten module-sized programs, so only competent programmers can complete it.

The top two arrows in Figure A.2 show the training required for PSP instructors and TSP coaches. Since TSP teams require ongoing coaching and support, organizations should train and qualify some of their own people as TSP coaches and PSP instructors. These people would then be able to teach the four left-most courses in Figure A.2, and launch and coach the TSP teams.

Inadequate Team Preparation

Without strong executive direction and support, managers generally are reluctant to interrupt their projects for two weeks to get their software people PSP trained. In one example of the need for executive leadership, we conducted the one-and-a-half-day TSP Executive Strategy Seminar for 17 program managers. These managers each had several hundred people in their groups and were responsible for a number of large projects. While they all agreed that their projects were in trouble and that the TSP was what they needed, they also argued that management would not agree to their delaying the work long enough to train their people. Every project was critical, and they could not even foresee a time when training would be possible.

Early the next morning, I met with the vice president and general manager of the location and explained that these managers were acting like victims. Unless given clear direction, they would continue to wallow in their current problems indefinitely. The general manager agreed to meet with the program managers immediately and tell them they were to make plans to adopt the TSP and to tell him what it would cost and how it would affect their projects. When we next met with the program managers, everyone was able to make a training plan with relatively little project impact.

Proper training is essential. Without it, the engineers cannot follow the TSP process, they will not know how to plan and track their work, and they will not be able to measure and manage the quality of their products. Even worse, they will not believe that these actions are necessary or even desirable. When team members are not properly trained, the TSP process will not work.

In another example, management planned to train the engineers but encountered a last-minute crisis. When the coach arrived for the launch, he was told to proceed anyway; management said they would train the engineers later. Because they had not been PSP trained, however, the engineers did not know how to produce a plan or even understand why they needed one. After a few hours, the launch coach gave up trying to convince them to make a detailed plan. The team never did get trained or launched, and the company wasted all its management training and introduction effort. Most important, software engineering performance remained unsatisfactory. Inadequate training wastes time and money. Before participating in a TSP launch, everyone must be properly trained.

Summary

The following five principal points are made in this appendix:

1. The TSP process is designed to build and maintain motivated and committed teams that consistently do quality work.

2. For a TSP team to be successful, the team leader and all team members must be selected and trained in advance.

3. For the launch to be successful, it must be led by a qualified TSP launch coach.

4. This coach will work with management and the team to ensure that the proper preparation work is done.

5. Without proper training, the TSP process will not work.

References

1. Watts S. Humphrey, “The Team Software Process,” SEI Technical Report, CMU/SEI-2000-TR-023, November 2000.

2. W. S. Humphrey. A Discipline for Software Engineering. Reading, MA: Addison-Wesley, 1995.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.20.224.107