Who should work with whom? building effective software project teams
Managing a team is always a challenge, but often great fun.
Peopleware is the best book I know of that talks about managing IT team and individual productivity. This article provides a fairly detailed analysis of the importance of personality types on team composition. If you are building a team for a really important task, I suggest you take a look.
The report is in 3 sections: |
---|
1: Poor Performance |
2: Effective Personality Attributes |
3: The Optimal Team |
Here is the conclusion:
- Software managers should be aware that the optimal personality allocations in small project teams are somewhat different than those in large teams.
- IS managers should consider selecting personnel so there is personality heterogeneity between the team leader and other team members in the social-interaction and information-gathering dimensions. Thus, the project leader and members should be selected such that all the four of these personality categories are represented: extrovert-intuitive, extrovert-sensing, introvert-intuitive, and introvert-sensing.
- It is unnecessary to have diversity of personalities among team members (excluding team leader) due to the fact that members need to perform multiple tasks of the SDLC and heterogeneity is not good for all phases [11]. This should give IS managers the flexibility needed to select members of appropriate personality, although it may be difficult for small businesses with limited resources to find desired personnel.
- The team leader may be selected such that he or she is of intuitive (N) type on the information-gathering dimension, since such a team leader will be able to visualize future information requirements better. Furthermore, the optimal personality for a team leader in the decision-making dimension is a feeling (F) type. The preferred personality type in the dimension involving dealing with external world is judging (J) [1], since it is important for the team leader to establish project milestones and make sure other members follow them.
- As with the team leader, the optimal team member personality for dealing with the external-world dimension is judging (J), since this attribute will help them meet project deadlines.
- The optimal personality for a systems analyst in the decision-making dimension is thinking (T), because a thinking person will use a scientific approach and base decisions on logical reasoning. Regarding the information-gathering dimension, a sensing (S) type system analyst is optimal, since heterogeneity between the personalities of the team leader and team members on the information-gathering dimension is desired and an intuitive team leader is preferred. Also, the practical orientation of a sensing type will be helpful in providing detailed design and programming specifications and participating in programming tasks.
- In terms of the social-interaction dimension, the preferred personality for programmers on small teams is extroverted (E). An extrovert can communicate easily with other participants in system development. As with other team members, the desired personality types for a programmer are sensing (S) on the information-gathering dimension and judging (J) on the dimension involving dealing with the external world.
- In addition to selecting team members of appropriate personality types, IS managers should ensure that team members possess diverse expertise in IT and business applications [8] and that the mechanisms are in place to share expertise among the members [2]. Furthermore, administrative control procedures for project milestones and delivery schedules should be implemented [7].