Page 89 -
P. 89
60 PART TWO MANAGING SOFTWARE PROJECTS
flexible enough to change direction if initial attempts at problem solution are
fruitless.
Managerial identity. A good project manager must take charge of the proj-
ect. She must have the confidence to assume control when necessary and the
assurance to allow good technical people to follow their instincts.
A software wizard may Achievement. To optimize the productivity of a project team, a manager must
not have the
temperament or desire reward initiative and accomplishment and demonstrate through his own actions
to be a team leader. that controlled risk taking will not be punished.
Don’t force the wizard Influence and team building. An effective project manager must be able to
to become one.
“read” people; she must be able to understand verbal and nonverbal signals
and react to the needs of the people sending these signals. The manager must
remain under control in high-stress situations.
3.2.3 The Software Team
There are almost as many human organizational structures for software develop-
ment as there are organizations that develop software. For better or worse, organi-
“Not every group is a zational structure cannot be easily modified. Concern with the practical and political
team, and not every consequences of organizational change are not within the software project man-
team is effective.” ager's scope of responsibility. However, the organization of the people directly involved
Glenn Parker in a new software project is within the project manager's purview.
The following options are available for applying human resources to a project that
will require n people working for k years:
1. n individuals are assigned to m different functional tasks, relatively little
combined work occurs; coordination is the responsibility of a software man-
ager who may have six other projects to be concerned with.
2. n individuals are assigned to m different functional tasks ( m < n ) so that
informal "teams" are established; an ad hoc team leader may be appointed;
coordination among teams is the responsibility of a software manager.
3. n individuals are organized into t teams; each team is assigned one or more
functional tasks; each team has a specific structure that is defined for all
teams working on a project; coordination is controlled by both the team and
a software project manager.
? How should a Although it is possible to voice arguments for and against each of these approaches,
software
team be organized? a growing body of evidence indicates that a formal team organization (option 3) is
most productive.
The “best” team structure depends on the management style of your organi-
zation, the number of people who will populate the team and their skill levels,
and the overall problem difficulty. Mantei [MAN81] suggests three generic team
organizations: