Title: TeamOrganization EEE493 2001 References:HvV 5.2
1Team OrganizationEEE493 2001ReferencesHvV
5.2
Royal Military College of Canada Electrical and
Computer Engineering
- Major Greg Phillips
- greg.phillips_at_rmc.ca
- 1-613-541-6000 ext. 6190
Major Ron Smith smith-r_at_rmc.ca 1-613-541-6000
ext. 6030
2Teaching Points
- Line of Business Organizations
- Software Team Organizational Structures
- Selecting the Right Organizational Structure
3Line-of-Business versus Project Organizations
- most studies of software engineering focus solely
on the project organizational structures - recognizing software functions within traditional
line-of business hierarchies, emphasizes the
important role that corporate policy and strategy
has with respect to the success of software
projects - there is a requirement for staff / corporate
bodies outside the selfish project office - a project offices timeframe is too short
4Line-of-Business Organizational Structure
(typical)
5Hierarchical Organization
- distinct layers of workers versus managers
- suitable for production of software
- often designed according to the structure of the
system - often includes functional sub-teams responsible
for project wide areas of responsibility - examples CM, testing, QA
- coordination at the project level, generally
based upon standardization of process or
standardization of work products - particular subsystems may dictate other styles
6Hierarchical Disadvantages
- specific knowledge and real work is at the bottom
of the pyramid while power and decision making is
at the top - translation of information from top to bottom is
often a lossy communications channel - separating project evaluation form personal
evaluation is difficult / challenging - the Peter Principal - a person is promoted to
their level of incompetence - different skills are required at each level
- promotion may not be a suitable reward
7Matrix Organization
- employees act as corporate consultants, working
on multiple teams at the same time - a project team consists of a team core
supplemented with matrix specialists - matrix groups are usually formed based upon some
common specialization - examples GUI, databases, reliability, estimation
- coordination coordination of the matrix tasks is
most closely aligned with the standardization of
worker skills paradigm
8Matrix Disadvantages
- requires a high degree of trust and cooperation
between matrix managers and project managers - project manager goals are selfish short term
project goals - matrix manager goals are longer term corporate
positioning goals - workers may feel like they have multiple bosses
and are constantly being pulled in different
directions - loyalty isnt always obvious - who do they really
work for?
9Chief Programmer Team
- the equivalent of surgeon teams, but in software
- very small team sizes
- has a kernel of three people
- chief programmer - team leader, designer key
programmer (competent technically and
managerially) - assistant - 2 I/C
- librarian - project administration and
documentation, may be a junior programmer
(trainee) - coordination given the small team size and the
predominance of the chief programmer, direct
supervision is likely to be the means of
coordinating tasks
10Chief Programmer Disadvantages
- elitist
- may lead to friction between Chief Programmer run
teams and other styles of projects within a
company - where are you going to find enough good chief
programmers? - it is frequently the case that the best
programmers make poor managers - what happens if other team members challenge the
decisions / competence of the chief?
11Skilled With Advanced Tools - SWAT Team
- usually only employed in an evolutionary or
iterative development setting - relatively small team (4-5 members- co-located)
- build increments of software systems
- employ whiteboarding / brainstorming techniques,
component construction, high-level languages
software generators - supported often by GroupWare / workflow tools
- SWAT team leader more like a foreman
- team members generally multi-skilled
- coordination a mix of standardization of process
(tied to tools) and mutual adjustment
12SWAT Disadvantages
- relies heavily upon the motivation and
cooperation of the team - implies keeping everyone motivated
- implies everyone gets along well
- both are difficult to maintain over an extended
period of time - may not scale well
- how do you coordinate multiple SWAT teams towards
a larger common goal - requires consistency of tools
13Open Structured Team
- combination of an open management style (to
encourage innovation) with control structures (to
ensure a timely execution) - open management
- internal decisions are arrived by consensus
- technical team leader responsible for external
controls and unresolved decisions - all other team roles rotate among the team
- structure
- technical team leader ensures forward motion
- all proceedings recorded (products, process,
decisions) - coordination is by definition one of mutual
adjustment
14Open Structured Disadvantages
- decision making is by majority voting
- this can split the team into factions
- minority groups may reject ownership of decisions
- selection of technical leader is a sensitive
issue - the style is applied in situations where the
requirement for innovation is high selection of
a technical leader not supported by the group
members will likely stifle innovation
15The Importance of the Team
- numerous studies have shown that team capability
has a disproportionate impact upon project
productivity - therefore getting the team composition and
management right is critical - factors such as morale, group norms and
management style are more influential
productivity drivers than say the use of higher
level languages and product complexity
The human elements outweigh the technology
elements.
16Selecting the right Organizational Structure
- use fewer, better people
- small teams are more productive
- large groups require greater degrees of
communication, leading to lower individual
productivity and higher error rates - strive for balance and harmony
- select a well rounded team
- do not attempt to assemble a team of stars
- look for good fits
17Selecting the right Organizational Structure
- accommodate personal growth
- reverse Peter Principle - a person rises to a
level where they are indispensable - the Paul Principle - a person rises to a level
where their skills quickly become obsolete - remove those who dont fit
- if someone clearly does not work well within the
group, quickly remove them before they sour the
remaining team
18Supplemental References
-
- Royce, Walker, Software Project Management - A
Unified Framework, Addison-Wesley, 1998. ISBN
0-201-30958-0
19Next ClassConfiguration Management