Page 36 -
P. 36

2 - PROJECT LIFE CYCLE AND ORGANIZATION






                   2.3 The Project Team



                   2.3.1 Composition of Project Teams

                      The composition of a software project team is often a balance between ideal considerations and practical
                   constraints. Ideal considerations for composing software development teams include:

                         •   Dedicated vs. non-dedicated team members. In the world of knowledge work, switching context
                           between multiple assignments incurs intellectual overhead. Therefore, software projects benefit from
                           dedicated resources. Assigning team members to one project at a time can limit switching of contexts
                           among multiple, part-time tasks and improve the productivity of software teams. However, some projects
                           do  not  have  enough work for the various  specialized  skill  sets  required nor  the  budget to support
                           dedicated resources for those specialized skills. As a result, many software project managers strike a
                           balance between dedicated and non-dedicated resources.

                         •   Collaborative team vs. functional division. In some organizations, collaborative dedicated team
                           members possess all of the skills required to deliver tested working software rather than allocating
                           software to be developed among separate functional units. The latter approach may involve assigning
                           development of user interface components to the user interface group and database components to the
                           database group, etc. In contrast, a collaborative team may include expertise in user interfaces, databases,
                           and other needed specialties. Aligning teams in a collaborative manner increases feedback among team
                           members and reduces feedback time. It also allows learning to occur throughout the course of the project,
                           which is reflected in the work products and interactions among the team members. Some software
                           organizations maintain functional groups in the interest of maximizing utilization of specialty resources.
                           As indicated previously, striking a balance between dedicated and non-dedicated resources, which may
                           be reflected as a collaborative team versus functional divisions, is a challenging economic dilemma in
                           software development. Managers of collaborative teams sometimes alleviate the collaborative versus
                           functional dilemma by assigning functional specialists for varying periods of time, as needed.

                         •   Virtual vs. colocated. The complex and abstract nature of software makes it difficult for software
                           engineers to communicate detailed technical issues in written form. In order to convey abstract ideas and
                           achieve the collaboration needed for innovation, many teams benefit from face-to-face discussions. An
                           additional benefit is the tacit knowledge that is gained and used when project team discussions are held
                           in common meeting areas. However, some organizations control costs and utilize specialized resources
                           by outsourcing to low-cost providers. As a result, a software project manager may choose to strike
                           a balance between face-to-face communication for activities such as project initiation and planning,
                           orientation, and training with day-to-day work performed in a virtual environment.
                         •   Specialists vs. generalists. Software projects often require specialized skills that incur high labor costs.
                           Many project managers staff their software projects with project members who have generalist skills and
                           rely on them to perform the majority of the work. Periodically, an expert will be called upon to mentor and
                           assist the generalists in specialized areas. Another benefit of this approach is that generalists may offer
                           broader perspectives than specialists and may develop more solution options.




          24       ©2013 Project Management Institute. Software Extension to the PMBOK  Guide Fifth Edition
                                                                   ®
   31   32   33   34   35   36   37   38   39   40   41