Sequence
•
Software development is a production effort
based on a linear set of discrete tasks.
•
People work in specialized functions with
formalized interactions across functions.
•
The interactions are seen primarily as driven by
the work they do.
•
It is possible for one member to be replaced as
needed by another person.
•
People are valued for their specialized skills.
There is little need for strong social bonds.
•
Example: SDLC (waterfall), CMM.
•
Problems:
o It
is often difficult for participants to see the value of their individual
contribution to the whole.
o Limited
interaction with other members often reduces the likelihood that project team
cohesion will develop.
o Symptoms
of this lack of cohesion are analysts not speaking with developers and testers
remaining independent of the rest of the team.
•
Remedy:
o This
suggests that cross-training personnel (for multiple roles)
o More
interaction through formal channels (such as cross-functional meetings and
product walkthroughs)
Group
•
Software development is seen as a combination of
development and production where a set of discrete tasks may need to be
repeated until the product is complete.
•
Developers are organized into interdependent
groups and are valued for both their particular skills and for their ability to
work with each others.
•
Social structures in the group archetype are
based on collaboration.
•
The tasks are sequential but iterative.
•
The boundary between them team and the social
context is permeable. Examples: RAD, JAD.
•
Remedy:
o The
team issue is to improve a member’s team-working skills.
o Further,
regulating the iterative nature of the project is important.
Network
•
Software development is seen as a process of
constant development with a specific focus on the outcome/product.
•
Tasks are not seen as sequential, and tasks are
tied to individuals whose participation is based on interaction.
•
Group members are valued for what they can
produce.
•
This implies a complex network of ties between
people and a hub-and-spoke management approach.
•
Discussion:
o Evaluating
contributions is important.
o Such
an approach demands strong product management.
o Members
of a network can often choose to leave the effort if their contributions are
not being rewarded.
To
achieve a high-performance team:
•
Team members must have trust in one another.
•
The distribution of skills must be appropriate
to the problem.
•
Mavericks may have to be excluded from the team,
if team cohesiveness is to be maintained.
In
fact, many teams suffer from what Jackman (1998) calls “team toxicity”. She
defines five factors that “foster a potentially toxic team environment”:
•
A frenzied work atmosphere in which team members
waste energy and lose focus on the objectives of the work to be performed.
•
High frustration caused by personal, business,
or technological factors that causes friction among team members.
•
“Fragmented or poorly coordinated procedures” or
a poorly defined or improperly chosen process model that becomes a roadblock to
accomplishment.
•
Unclear definition of roles resulting in a lack
of accountability and resultant finger-pointing.
•
“Continuous and repeated exposure to failure”
that leads to a loss of confidence and a lowering of morale.
No comments:
Post a Comment