Example 4.11: Comparing Progress against a Baseline Schedule
Suppose that the widget manufacturing project is currently in progress
and you want to measure
its performance by comparing it with a baseline schedule.
For example, the baseline schedule may be the originally planned schedule, a target
schedule that you would like to achieve, or an existing schedule that you
intend to improve on. The data for this example
come from Example 2.13 which was used to illustrate the options available
in PROC CPM. Prior to the beginning of the project, the
predicted early schedule is saved by PROC CPM as the baseline schedule.
Progress information for the project as of December 20, 1991 is saved in the
ACTUAL data set. The variables SDATE and FDATE represent the actual start and actual
finish times, respectively. The variables PCTC and RDUR represent the percent of work
completed and the remaining days of work for each activity, respectively.
PROC CPM is then invoked using the baseline and project progress information
with TIMENOW set to December 20, 1991. The scheduling is carried out with
the AUTOPUPDT option in order to automatically update progress information.
The Schedule data set WIDGUPDT produced by PROC CPM is
shown in
Output 4.11.1.
Notice that the building of the prototype
(activity 5: 'Protoype') and development of a marketing strategy
(activity 6: 'Mkt. Strategy') have a specified value for A_START and a missing
value for A_FINISH, indicating that they are currently in progress at TIMENOW.
PROC GANTT is next invoked with the data set WIDGUPDT.
This data set contains the actual schedule variables A_START and A_FINISH and
the baseline schedule variables B_START and B_FINISH. The Gantt chart is drawn
with three schedule bars per activity. The first bar represents the predicted
early/late
schedule based on the actual data specified, the second bar represents the
actual schedule, and the third bar represents the baseline schedule.
The TIMENOW= option is specified in the CHART statement to draw a timenow line
on December 20, 1991. Actual schedule bars for 'Prototype' and 'Mkt. Strategy'
are drawn up to TIMENOW to indicate that they are currently in progress.
You can use the CTNOW=, LTNOW=, and WTNOW= options to change the color, linestyle,
and width of the timenow line, respectively.
To suppress the timenow label displayed at the bottom of the axis,
specify the NOTNLABEL in the CHART statement.
* estimate schedule based on actual data;
proc cpm data=widgact holidata=holidays
out=widgupdt date='2dec91'd;
activity task;
succ succ1 succ2 succ3;
duration days;
holiday holiday / holifin=(holifin);
baseline / compare=early;
actual / as=sdate af=fdate timenow='20dec91'd
remdur=rdur pctcomp=pctc
autoupdt;
run;
* sort the data;
proc sort; by e_start;
title 'Gantt Example 11';
title2 'Progress Data';
* print the data;
proc print;
var task e_: l_: a_start a_finish b_: ;
run;
title f=swiss 'Gantt Example 11';
title2 f=swiss 'Comparing Project Progress against a Baseline Schedule';
* plot the actual and baseline schedules using proc gantt;
proc gantt data=widgupdt holidata=holidays;
chart / holiday=(holiday) holifin=(holifin)
timenow='20dec91'd dur=days
scale=2 height=1.25 font=swiss
pcompress;
id task;
run;
Output 4.11.1: Comparing Project Progress against a Baseline Schedule
Gantt Example 11 |
Progress Data |
Obs |
task |
E_START |
E_FINISH |
L_START |
L_FINISH |
A_START |
A_FINISH |
B_START |
B_FINISH |
1 |
Approve Plan |
02DEC91 |
06DEC91 |
02DEC91 |
06DEC91 |
02DEC91 |
06DEC91 |
02DEC91 |
06DEC91 |
2 |
Anal. Market |
06DEC91 |
10DEC91 |
06DEC91 |
10DEC91 |
06DEC91 |
10DEC91 |
07DEC91 |
11DEC91 |
3 |
Drawings |
07DEC91 |
17DEC91 |
07DEC91 |
17DEC91 |
07DEC91 |
17DEC91 |
07DEC91 |
16DEC91 |
4 |
Write Specs |
08DEC91 |
13DEC91 |
08DEC91 |
13DEC91 |
08DEC91 |
13DEC91 |
07DEC91 |
11DEC91 |
5 |
Mkt. Strat. |
11DEC91 |
22DEC91 |
11DEC91 |
22DEC91 |
11DEC91 |
. |
12DEC91 |
21DEC91 |
6 |
Prototype |
18DEC91 |
05JAN92 |
18DEC91 |
05JAN92 |
18DEC91 |
. |
17DEC91 |
04JAN92 |
7 |
Materials |
06JAN92 |
15JAN92 |
06JAN92 |
15JAN92 |
. |
. |
05JAN92 |
14JAN92 |
8 |
Facility |
06JAN92 |
15JAN92 |
06JAN92 |
15JAN92 |
. |
. |
05JAN92 |
14JAN92 |
9 |
Init. Prod. |
16JAN92 |
25JAN92 |
16JAN92 |
25JAN92 |
. |
. |
15JAN92 |
24JAN92 |
10 |
Evaluate |
26JAN92 |
04FEB92 |
31JAN92 |
09FEB92 |
. |
. |
25JAN92 |
03FEB92 |
11 |
Test Market |
26JAN92 |
09FEB92 |
26JAN92 |
09FEB92 |
. |
. |
25JAN92 |
08FEB92 |
12 |
Marketing |
26JAN92 |
26JAN92 |
15FEB92 |
15FEB92 |
. |
. |
25JAN92 |
25JAN92 |
13 |
Changes |
10FEB92 |
14FEB92 |
10FEB92 |
14FEB92 |
. |
. |
09FEB92 |
13FEB92 |
14 |
Production |
15FEB92 |
15FEB92 |
15FEB92 |
15FEB92 |
. |
. |
14FEB92 |
14FEB92 |
|
Output 4.11.2: Comparing Project Progress against a Baseline Schedule
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.