Page 211 -
P. 211

182           PART TWO  MANAGING SOFTWARE PROJECTS


                       project; (2) establish “most likely” time estimates for individual tasks by applying sta-
                       tistical models; and (3) calculate “boundary times” that define a time "window" for a
                       particular task.
                          Boundary time calculations can be very useful in software project scheduling. Slip-
                       page in the design of one function, for example, can retard further development of
                       other functions. Riggs [RIG81] describes important boundary times that may be dis-
                       cerned from a PERT or CPM network: (1) the earliest time that a task can begin when
                       all preceding tasks are completed in the shortest possible time, (2) the latest time for
                       task initiation before the minimum project completion time is delayed, (3) the earli-
            CASE tools  est finish—the sum of the earliest start and the task duration, (4) the latest finish—
          project/scheduling and  the latest start time added to task duration, and (5) the total float—the amount of
             planning
                       surplus time or leeway allowed in scheduling tasks so that the network critical path
                       is maintained on schedule. Boundary time calculations lead to a determination of
                       critical path and provide the manager with a quantitative method for evaluating
                       progress as tasks are completed.
                          Both PERT and CPM have been implemented in a wide variety of automated tools
                       that are available for the personal computer [THE93]. Such tools are easy to use and
                       make the scheduling methods described previously available to every software proj-
                       ect manager.

                       7.7.1  Timeline Charts
                       When creating a software project schedule, the planner begins with a set of tasks (the
                       work breakdown structure). If automated tools are used, the work breakdown is input
                       as a task network or task outline. Effort, duration, and start date are then input for
                       each task. In addition, tasks may be assigned to specific individuals.
                          As a consequence of this input, a timeline chart, also called a Gantt chart, is gen-
         A timeline chart  erated.  A timeline chart can be developed for the entire project. Alternatively, sepa-
         enables you to  rate charts can be developed for each project function or for each individual working
         determine what tasks
         will be conducted at a  on the project.
         given point in time.  Figure 7.4 illustrates the format of a timeline chart. It depicts a part of a software
                       project schedule that emphasizes the concept scoping task (Section 7.5) for a new
                       word-processing (WP) software product. All project tasks (for concept scoping) are
                       listed in the left-hand column. The horizontal bars indicate the duration of each task.
                       When multiple bars occur at the same time on the calendar, task concurrency is
                       implied. The diamonds indicate milestones.
                          Once the information necessary for the generation of a timeline chart has been
                       input, the majority of software project scheduling tools produce project tables—a tab-
                       ular listing of all project tasks, their planned and actual start- and end-dates, and a
                       variety of related information (Figure 7.5). Used in conjunction with the timeline chart,
                       project tables enable the project manager to track progress.
   206   207   208   209   210   211   212   213   214   215   216