Page 20 -
P. 20

1 - INTRODUCTION






                   processes makes software teamwork different in kind from teamwork in other engineering disciplines. As
                   a result, many of the procedures and techniques used in software project management are designed to
                   facilitate communication and coordination among team members engaged in closely coordinated, intellect-
                   intensive work.

                      Accurate planning and estimation of cost and schedule is difficult for all kinds of projects, but it is particularly
                   difficult for software projects because: (1) software is developed and modified by the cognitive work activities of
                   the developers, (2) productivity among individual software developers varies widely (in both quantity and quality
                   of work), (3) requirements upon which estimates are based are often poorly defined, and (4) continuing evolution of
                   technology may make historical data inaccurate for new projects. For these reasons, current software development
                   methods tend to focus on developing an expanding set of product increments so that tradeoffs among schedule,
                   budget, resources, functionality, and quality attributes can be continually adjusted.

                      Productivity in software projects includes both quantity and quality of work. The amount of software written
                   (i.e., number of lines of code) is not a good measure of programmer productivity; a programmer who writes a
                   small, efficient program is more productive in contributing to a successful outcome than a programmer who
                   writes a large, inefficient program. Similarly, a programmer who rushes through a task but makes many mistakes
                   that will require corrective rework is less productive than a programmer who proceeds more slowly but produces
                   a program that has fewer defects. Productivity of programmers with similar backgrounds and experience, as
                   measured by quantity and quality of the resulting software, has been repeatedly demonstrated to vary by factors
                   of 10 and more [8, 9].

                      With the advent of widespread interconnectivity, software security has become a major consideration when
                   building or modifying a software product. Like other quality attributes, security attributes need to be planned,
                   designed, constructed, verified, and validated. Like other quality attributes, software security cannot be “tested in.”
                      Software projects are also difficult because software is always part of a system. Software as a stand-
                   alone entity is useless; to be of use, software is executed on digital hardware. In some cases, a software
                   project is one element of a development program that involves the accompanying development of hardware
                   components or development of related software by other projects. In other cases, development of software
                   may be limited to developing application software for a population of known users. In these cases, the
                   system includes specified computer, operating system, and programming language or languages to provide
                   the needed capabilities.


                   1.4 Relationships with Program and Portfolio Management


                                                               ®
                      The information in Section 1.4 of the  PMBOK   Guide is equally applicable to software projects and their
                   relationships with program and portfolio management.

                      The relationships among projects, programs, and portfolios are illustrated in Figure 1-1.








          8        ©2013 Project Management Institute. Software Extension to the PMBOK  Guide Fifth Edition
                                                                   ®
   15   16   17   18   19   20   21   22   23   24   25