Você está na página 1de 19

Quality Software Project Management

Chapter 15
Scheduling the Work

Junling Gao
13-11-2002
Relationship with former chapters
 Schedule is derived from the WBS and adds flesh to the
WBS backbone
what is WBS--chapter8”Creating the Work Breakdown
Structure”
 Good scheduling:
starts with knowing the scope of the project—chapter
7,”Defining the Goal and Scope of the Software Project”
refined in chapter 14,”Considering Dependencies”
 This chapter:
shows some of the art of scheduling a SW project
Where we are in the Product
Development Life Cycle
 Still at the beginning of the PDLC,planning
how to do the project that defined in chapters
7-13
 Addendum to the software project
management plan (SPMP)
Why—What—How—Do it—Did it
Relation to the 34 competencies
 Product Development Techniques
4. Evaluating alternative processes
6. Managing subcontracors
 Project Management Skills
12. Building a work breakdown structure
13. Documenting plans
16. Manaing risks
18. Scheduling
20. Selecting project management tools-how
Relation to the 34 competencies
(continue)
 People Mangement Skills
25. Holding effective meetings
26. Interaction and communication
27. Leadership
29. Negotiating successfully
31. Presenting effectively
34. Teambuilding
Why schedule?
 Reflect all relationships of all the activities
Be mapped to a real-world calendar
Allow for the inevitable uncertainty of the future
 Try to avoid the game:
Magager&customer: ask for cheaper and sooner-
cutting
Project manager: pading estimates and plans
Game is played on both sides untill an agreement is
reached
Uncertainty of scheduling the future
 Add enough contingency buffers to comprehaend
reasonable uncertainty
 The psychology of estimating:
no good: rule of thumb—”double it and add some”
”Student syndrome”
 better way to manage the uncertainty:
1. extract the initial raw estimates and put those durations
into the project plan
2. move the euncertainty portions of the activities into
explicit phase buffers
Scheduling fundamentals

Three most common forms of presenting a


project schedule:
 Table: list of activities with start and finish date

 Gantt Chart (bar chart) —most commonly


used
 Network Diagram (logic chart)
Network Diagram
Different names for methods that use network diagrams:
 Analysis techniques:

GERT—graphical evaluation and review technique


PERT—program evaluation and review technique
CPM—critical path method
 Diagramming methods:

PDM—procedence diagramming method


ADM—arrow diagramming method
Two basic ways to represent
activities in a network—1.AON

 AON—activity-on-node

Earliest start,Earliest finish (0,10)


Node ID A
10
Time Remaining
(10,20)
Latest start,Latest finish
Two basic ways to represent
activities in a network—2.AOA

 AOA—activity-on-arrow
Node ID Earliest start,Earliest finish

A (0,10)

10 (0,10)

Time Remaining
Latest start,Latest finish
PERT and CPM Scheduling
(mostly used today)
 Difference between PERT and CPM
PERT—weighted average CPM—point estimate
 PERT(program evaluation and review technique)

Optimistic+4(Most Likely)+Pessimistic
PERT Weighted Average =
6
Higher Mean
Beta Distribution

Relative Probability
Triangular Distribution
of Occurence

Lower
Shorter Possible Durations Longer
PERT and CPM Scheduling (continued)
(mostly used today)

 CPM (critical path method)


1. Analyze precedence of activities to predict total project duration.
Focus on float available between activites.
2. Calculate which sequence of activities has the least amount of
schedule flexibility (two-path analysis)
3. The path with zero flexibility is called the critical path ( )
(0,10) (20,50) (50,60)

A C D
(0,0) 10 30 10 (60,80) (80,80)
(10,20) (20,50) (60,80) F
20 END
ST (0,20) (20,50)
(60,80) (80,80)
(0,0) B E
20 30
(0,20) (30,60)
PERT and CPM Scheduling (continued)
(mostly used today)

Weakness
 PERT: Scheduling a lot of activities with three
estimates is computationally messy
 CPM: Not consider the availability of any of
the resouses.
Leveling Resource Assignments

 It’s desirable to smooth out the demand for


resources over the course of a project to minimize
resource idle time between the peaks of demand.
 Load leveling--process of rescheduling tasks that
have available slack to achieve a more balanced
distribution of resource usage.
 When leveling is applied to an unleveled
schedule,the project end date and all deliverable
dates move farther out.
Map te schedule to a real calendar
--costruct a workable schedule
 Explore relationship of four major components of a scheduled activity.
1. Work -- staff time of estimated effort (48 staff-days);
2. Units -- number of resources available (who will do it);
3. Duration -- work time needed
(48 staff-days/4 people=12 workdays);
4. Dates -- calendar time needed (2 weeks and 2 workdays);

Parts 1-3 would remain constant. Part 4 is very calendar dependent and is
sensitive to the exact days that the work falls on.
Te relationship is similar to distance-time-speed relationship:
Distance
= Time
Speed
Critical Chain Scheduling
--recent thinking in scheduling field
 Theory of constaints (TOC) by Dr. Eliyahu Goldratt:
Aim: increase the throughput of the total system
Step: indentify constraints -- exploit constraints -- subordinate
everything else to the above -- reducing constraints and
improve the whole system
 “Herbies”: indentifying key constraining resources
 Critical Chain: the chain of activities where “Herbies” are
involved. It is OK for certain machines in a factory line to be
idle, as long as the pace of te constraining machine remains
optimized
Critical Chain Scheduling (continued)
--recent thinking in scheduling field
 Difference between critical path and ccritical chain:
Critical path Critical chain
only activities are considered considering both activities and resources
activity-constrained schedule resource-constrained schedule

 Buffer sizing and management:


Generally 50% of the total time for all the preceding activities .
Purpose: absorb the inevitable uncertainty of planning future
enents.
Complete Process for Building a Real Schedule

 1. Develop the work breakdown structure (WBS);


 2. Identify activity dependencies;
 3. Develop a network diagram(PDM) from the WBS and
dependency information;
 4. Do the CPM (critical path method) analysis computations;
 5. Find and analyze critical path activities (Can any be
shortened?);
 6. Perform resource allocation (Is total duration still
acceptable?);
 7. Convert the network to Gantt Chart;
 8. Develop the cost baseline and spending curves.

Você também pode gostar