Software development is a team effort. High quality and productivity result when the team members contribute effectively and remain motivated, and the overall team functions smoothly and efficiently. Team management goes beyond engineering and project management issues into the domain of people issues. It is an important aspect of the project, and ignoring it can spell trouble for the project and the project manager.
At Infosys, a hierarchical team structure is usually employed; a team is headed by a project manager, who reports to the business manager or the account manager (or both). In addition, a typical team consists of developers (DVs), the configuration controller (CC), and the database administrator; all these members report to the project manager. A large project may also have module leaders, each of whom reports to the project manager and has some developers under him. Also, a defect prevention team is formed from the existing team members; this team is responsible for performing the tasks related to defect prevention.
As discussed earlier, an SEPG member known as the software quality adviser (SQA) is also associated with each project. The SQA interacts extensively with the project manager (and with the configuration controller) but does not report to the project manager. Instead, the SQA has an independent reporting channel.
The assignment of roles is a complex task. The project manager's objective is to get a balanced, self-reliant team that helps to further the careers and skill development of the team members. Hence, in determining the team structure, the project manager must factor in the personal and growth needs of the team members as well as the project needs. Following are some of the people factors that a project manager takes into account:
Skills, background, and experience of the team members
Personal aspirations and career paths of the members
Mentoring and people development needs
The initial team structure is documented in the PMP along with the roles and responsibilities of each team member. A team member may have multiple responsibilities. During the course of the project, particularly a long project, the team organization may be changed based on the performance of people in the different roles, personal aspirations, motivation levels, and so on.
A team that will work together for a few months toward a common goal must jell well and must have good intrateam communication. The team communication can be broadly divided into two categories: communication relating to the project and de-stressing communication. A good people-oriented project manager plans for both.
One way to keep the team members informed about the progress and problems in the project is to give them access to the project status reports and associated customer and business manager comments. In addition to these formal reports, depending on the size of the team and the project duration, Infosys project managers use any of the following methods to enhance team communication:
Project-specific bulletin boards for announcements, notices, status reports, and so on
Project mailing list
Project Web site for publishing documents, home pages of team members, relevant technical articles and notes, and training material for self-learning
Project meetings for briefings and issue resolution
Best practice sessions and presentations by team members on their work
Moreover, because deadlines are usually short and everyone is under time pressure, stress tends to build up. Communication aimed at de-stressing is extremely important to ensure continued motivation. Many project managers plan events that enable this "fun" communication. Here are examples of the methods used:
Project parties (supported by a budget from the organization for all teams)
Events such as quizzes and games with prizes
Informal, free-wheeling "crib" sessions
Project teams often include many junior people. It is the responsibility of the team and the project manager to enhance the personal development of these team members. Helping the growth of individual team members also benefits the project and the organization. As the skills and abilities of the team members improve, they become more productive later in the project and can take on more responsibility. And, of course, they become better equipped to handle their tasks in future projects. Toward this end, project managers use methods such as these:
Mentoring of junior members by more experienced team members
Reviews, appraisals, and feedback
Regular recognition of contribution at the project level
Coaching, training, and the like to help people having trouble