Page 198 -
P. 198

CHAPTER 7  PROJECT SCHEDULING AND TRACKING                         169

                              It is important to note, however, that the schedule evolves over time. During early
                              stages of project planning, a macroscopic schedule is developed. This type of sched-
                              ule identifies all major software engineering activities and the product functions to
                              which they are applied. As the project gets under way, each entry on the macroscopic
                              schedule is refined into a detailed schedule. Here, specific software tasks (required to
                              accomplish an activity) are identified and scheduled.
                “Overly optimistic  Scheduling for software engineering projects can be viewed from two rather dif-
                scheduling doesn’t  ferent perspectives.  In the first, an end-date for release of a computer-based system
                result in shorter  has already (and irrevocably) been established.  The software organization is con-
                actual schedules, it
                results in longer  strained to distribute effort within the prescribed time frame. The second view of soft-
                ones.”        ware scheduling assumes that rough chronological bounds have been discussed but
                Steve McConnell  that the end-date is set by the software engineering organization. Effort is distributed
                              to make best use of resources and an end-date is defined after careful analysis of the
                              software. Unfortunately, the first situation is encountered far more frequently than
                              the second.
                                Like all other areas of software engineering, a number of basic principles guide
                              software project scheduling:
                                   Compartmentalization. The project must be compartmentalized into a
                                   number of manageable activities and tasks. To accomplish compartmental-
                                   ization, both the product and the process are decomposed (Chapter 3).
                                   Interdependency. The interdependency of each compartmentalized activity
                                   or task must be determined. Some tasks must occur in sequence while others
                                   can occur in parallel. Some activities cannot commence until the work prod-
                When you develop a
                schedule, compartmen-  uct produced by another is available. Other activities can occur independently.
                talize the work,   Time allocation. Each task to be scheduled must be allocated some num-
                represent task inter-  ber of work units (e.g., person-days of effort). In addition, each task must be
                dependencies, allocate  assigned a start date and a completion date that are a function of the interde-
                effort and time to each
                task, define respon-  pendencies and whether work will be conducted on a full-time or part-time
                sibilities for the work  basis.
                to be done, and define  Effort validation. Every project has a defined number of  staff members. As
                outcomes and       time allocation occurs, the project manager must ensure that no more than
                milestones.
                                   the allocated number of people have been scheduled at any given time. For
                                   example, consider a project that has three assigned staff members (e.g., 3
                                                                              5
                                   person-days are available per day of assigned effort ). On a given day, seven
                                   concurrent tasks must be accomplished. Each task requires 0.50 person days
                                   of effort. More effort has been allocated than there are people to do the work.
                                   Defined responsibilities.  Every task that is scheduled should be assigned
                                   to a specific team member.



                              5  In reality, less than three person-days are available because of unrelated meetings, sickness,
                                vacation, and a variety of other reasons. For our purposes, however, we assume 100 percent
                                availability.
   193   194   195   196   197   198   199   200   201   202   203