Sunteți pe pagina 1din 11

Tools for Resource-Constrained Project Scheduling and Control: Forward and Backward Slack

Analysis
Author(s): P. Tormos and A. Lova
Source: The Journal of the Operational Research Society, Vol. 52, No. 7 (Jul., 2001), pp. 779-
788
Published by: Palgrave Macmillan Journals on behalf of the Operational Research Society
Stable URL: http://www.jstor.org/stable/254124 .
Accessed: 17/03/2011 08:48

Your use of the JSTOR archive indicates your acceptance of JSTOR's Terms and Conditions of Use, available at .
http://www.jstor.org/page/info/about/policies/terms.jsp. JSTOR's Terms and Conditions of Use provides, in part, that unless
you have obtained prior permission, you may not download an entire issue of a journal or multiple copies of articles, and you
may use content in the JSTOR archive only for your personal, non-commercial use.

Please contact the publisher regarding any further use of this work. Publisher contact information may be obtained at .
http://www.jstor.org/action/showPublisher?publisherCode=pal. .

Each copy of any part of a JSTOR transmission must contain the same copyright notice that appears on the screen or printed
page of such transmission.

JSTOR is a not-for-profit service that helps scholars, researchers, and students discover, use, and build upon a wide range of
content in a trusted digital archive. We use information technology and tools to increase productivity and facilitate new forms
of scholarship. For more information about JSTOR, please contact support@jstor.org.

Palgrave Macmillan Journals and Operational Research Society are collaborating with JSTOR to digitize,
preserve and extend access to The Journal of the Operational Research Society.

http://www.jstor.org
Journal of the Operational Research Society (2001) 52, 779-788 p,2001 Operational Research Society Ltd. All rights reserved. 0160-5682/01 $15.00
www.palgrave-journals.comtjors

Tools for resource-constrainedprojectschedulingand


control: forwardand backwardslack analysis
P Tornos* and A Lova
Universidad Polit&nica de Valencia, Valencia, Spain

Project managers generally consider slack as a measure of the scheduling flexibility associated with the activities in the
project network. Nevertheless, when resource constraints appear, this information must be calculated and analysed
carefully. In this context, to handle project feasible schedules is very hard work for project managers. In order to develop
useful tools for decision making, the authors extend the concepts of activity slack and define a new activity criticality
index based on them that permits us to classify the activities in the resource-constrained project scheduling and control
context. Additionally, these new concepts have been integrated into standard project management software as new
commands. Hence the capabilities of project management software are improved. Finally, an example that illustrates the
use and application of the new activity classification is also included.

Keywords: project management; resource-constrained; project scheduling; project control; activity criticality

Introduction concepts of slacks are simple and unambiguous. Thus,


there is a single total and free slack associated with each
The PrecedenceDiagrammingMethod (PDM) is a classical
activity.
technique for project scheduling where activities have four
Nevertheless, in practice the availabilityof the resources
types of precedence relations (start-start(SS), start-finish
assigned to a project is limited and often not sufficient to
(SF), finish-start (FS) and finish-finish (FF)) and assumes
concurrentlyexecute the activities scheduled according to
that an unlimited quantity of all necessary resources are
the PDM. In this situation, decisions must be made about
available for assignment to individual activities whenever
their scheduling that in many cases imply an increase in
they are required.The application of the PDM allows the
project completion time.
ProjectManager(PM) to know the early and late scheduled
In order to conceptually formulate the resource-
dates of each activity, the minimum project completion
constrained project scheduling problem with generalised
time and the slacks of the activities. These latterparameters
precedence relations we assume a project represented in
offer very importantinformationto the PM and indicate to
activity-on-the-node project format by a directed graph
him/her the degree of flexibility of the project schedule
G -{N, A} in which N is the set of nodes or activities
obtained. With these data, PMs know the critical and
which have to be processed. A is the set of precedence
noncritical activities and thus can make decisions about
relationshipsthat is divided in four disjoint sub-sets where
theirrescheduling,maintainingthe projectcompletiontime.
Among the several types of slacks (or floats) defined in Ass is the set of SS precedencerelationsand ASF,AFS,AFF
are similarly defined. The non-preemptableactivities are
the literaturetwo are the most widely used, TotalSlack and
numberedfrom 1 to n, where the dummyactivities 1 and n
Free Slack. Free Slack of an activity is equal to the amount
markthe beginning and the end of the project.The duration
of time that its completion time can be delayed without
of an activity is denoted by di, being di equal to zero for
affecting the earliest start time of any other activity in the
activities 1 and n and di > 0 otherwise.The scheduled start
project. Therefore, the activity is free to use this slack
time of each activity is denoted by SST1(1< i < n) and its
without affecting the dates of any other activity in the
scheduled finish time by SFTi(1 < i - n). There are K
project. Total Slack of an activity is equal to the amount
renewable resource types, with rik ( < i <, n, I < k < K)
of time by which the completion time of the activity can
being the resourcerequirementsof activity i with respect to
exceed its earliest completion time without delaying the
project completion time (obtained according to the PDM). resource type k. Rk(I < k z K) is the constant availability
In a context of unlimited resource availability, these of resource type k throughout the project duration. The
activities are subject to generalised precedence relations
with minimal time lags SSij, SFi, FSi1and FFii, specifying
*Correspondence. P Tormos, Department of Statistics and Operational
that an activity j can only start (finish) when the prede-
Research, Universidad Politecnica de Valencia, 46071 Valencia, Spain. cessor activity i has already started(finished) for a certain
E-mail: ptormosG)eio.upv.es time period.
oftheOperational
780 Journal Research Vol.52,No.7
Society

Based on the above definitions of the variables, the The standardproject managementsoftware uses heuris-
resource-constrained project scheduling problem with tics based on priorityrules that prioritisethe activities that
generalised precedence relations can be formulated as are competing for the use of the constrained resources.
follows: Once the heuristicmethodhas been appliedand the feasible
schedule obtained,it is consideredlike a 'black box' where
doing changes in a controlled manner becomes very
Optimise (function) (1) complex. In fact, the PM needs tools that allow reschedul-
subject to: ing the activities when considering particular criteria.
SST - SSTi E0SSij (i,j) C Ass (2) Furthermore,parametersthat indicate the degree of criti-
cality of the activities are also needed as a helpful tool for
SFT1- SSTi ? SFij (i,j) c ASF (3) project scheduling and control in the resource-constrained
SSTj- SFTi >FSij (iJ) c AFS (4) environmentwith generalisedprecedence relations.Never-
-
SFT SFTi FFij (i,j) C AFF (5) theless, there are few published works that offer to the
practitioner,once the feasible project schedule has been
Erik? ARk t- 1, ,T, k=1,...,K (6) obtained, the possibility of easily rescheduling activities
P(t)
consideringparticularcriteriaand maintainingthe feasibil-
ity and the durationof the project schedule.
The objective is to obtain a feasible schedule (start/finish In orderto fill this gap, the main objective of this paperis
scheduled dates for each activity of the project) in orderto to extend the concepts of activity slack in the resource
optimise an objective function (1) as project duration,net constrained context and to define an activity criticality
present value of the project or resource levelling among index based on them. Additionally, these tools have been
others. Constraints (2)-(5) enforce the precedence integrated into standard project management software.
constraints between activities. Constraints(6) ensure, for Hence the capabilities of project management software
each resource type k and each time period t, that the are improved.
resource demand of the set of activities in process P(t) at The paper is organised as follows: in the next section a
time t does not exceed the capacity. Finally, T is an upper literature review is presented describing previous works
bound on the feasible completion time of the project. that treatthis problem.After that, the methodology used to
This problemcan be solved both with exact and heuristic build the new options for scheduling and control is
methods although the combinatorialnatureof the problem described through the definition of slack concepts. Based
make the heuristic methods the only technique to apply in on these concepts, an activity criticality index adapted to
order to solve it in practical size projects. The resource- the resource-constrainedcase is also introduced.The new
constrained project scheduling problem with generalised tools that permit the PM to make their work more flexible,
precedence relations has been widely studied and in recent easier and faster are described. In order to illustrate the
years great advances have been made in the proceduresto capabilities of these tools, new commands are integrated
solve it."' into the standardprojectmanagementsoftware and applied
In parallel, the practice of project management has to an example. The last section is devoted to conclusions
evolved closely related to that of software and hardware. and directions of futureresearch.
Since the launch of HarvardProject Managerin 1983 tens
of programshave appearedon the marketand today power-
Literature review
ful and inexpensive projectmanagementsoftwareis readily
available. These programshave evolved in recent years and Wiest13was the pioneer in the study of feasible schedules
they have improved their quality through successive in a resource-constrainedcontext. He pointed out that the
versions in which they have corrected flaws and deficien- ordinarymethods of calculating slack do not suffice in the
cies detected in previous ones.'2 In particular,relatedto the limited resources case. In this work Wiest proposed a
scope of this work, the professional project management definitionof slack applied to activities on a feasible project
software allows considering the generalised relations of schedule. The calculation of this parameterstarts from a
precedence diagrammingtype and calculates both total and left-justified project schedule, ie a feasible schedule in
free slack values in the unlimited context. which, due to precedence relationships and/or resource
When resource constraints arise some project manage- constraints, no activity can be started at an earlier date.
ment packages substitutescheduled dates for early dates in The early start time (EST) of the activities is known and
the originaldefinitionsof total and free slack. Nevertheless, activities are shifted right as far as possible by local shifts
the method for calculating total slack and free slack in descendingorderof their early finish times (EFT). In this
frequently produces misleading results when activities new schedule the Latest StartTime (LST) of each activity
require common resources that are available in limited is calculated and the slack of an activity in a resource-
quantities. constrainedcontext is calculated as LST-EST. Addition-
andALova-Resource-constrained
P Tormos project
scheduling
andcontrol781

ally, in this work a critical sequence is defined as a set of this sense, advances are needed both in parameters to
activities that have zero slack. This critical sequence is the identify the criticality of the activities in the context of
analogous concept of critical path used in the unlimited resource-constrainedas well as in the improvementof the
resource case. After that, Woodworth and Shanahan' 4 project managementsoftware capabilities.
developed a procedureto identify those activities that are
critical regardingthe completion time of a project in the
environmentof limited resources. Methodology
In 1995, Bowers1 proposed a revised method of calcu- Recently, in order to analyse the extension of the project
lating resource-constrained(RC) float. The algorithmstarts scheduling techniques usage, a survey has been designed.
with the applicationof the classical Forwardand Backward The survey has been carriedout in the Valencian Region,
pass computationssuch as Moder et at' described.The next Spain,'7 consideringcompanies from the areas of construc-
step consists of a forwardpass consideringthe limitationof tion, textile, computersand informationsystems as well as
the resources and applying a parallel algorithm with the public administration.1000 surveys were sent out, of which
MINLST rule (minimum latest start time) to establish the authorsreceived 202, a response rate of approximately
priorities.In this process a resource usage history is noted 20%. One of the main results of the survey highlights the
adding resource links between activities of the project; a use of software scheduling tools in the allocation of
backwardpass is applied considering these resource links. resources to project activities, improving project control
Finally, in order to calculate the slack of the activities the and aiding decision making. Nevertheless, companies indi-
earliest and latest scheduled dates are compared. The cate that project-schedulingtechniques need to have more
definition of this resource-constrainedslack is similar to flexibility for the practitioner. Specifically, what the PM
that of total slack when resource availabilityis unlimited, would need is a scheduling device that correctly scheduled
that is, the time by which a single activity can be extended the activities and identified which of those activities are
or delayed without affecting the project completion time. critical with respect to precedencerelationsand/orresource
Finally, Raz and Marshall'6 proposed new slack defini- constraints.
tions (Scheduled Total and Free Slack) that retain the In order to satisfy these requirements, new tools for
original meaning while accounting for the effect of scheduling and control project activities are needed.
resource availability on the schedule. Scheduled Total
Slack is calculated as the difference between early and
late scheduleddates-the latterare obtainedby a procedure Previous definitionsand new concepts
that includes the application of a resource levelling tech- In Lova et al18,19 the concepts of Backward Free Slack
nique to 'eliminate' any instances in which resource (BFSi) and ForewardFree Slack (FFSi) are defined. In the
requirements exceed total availability. Scheduled Free presentpaper,these concepts (useful in orderto reduce the
Slack is defined as the number of time periods that the completion time of the multiproject when activities are
activity can be delayed beyond its early scheduled date finish-start related with zero time lag and the resource
without affecting any of its immediate successors either availabilityis limited) are adaptedto the generalisedprece-
directly through time dependencies, or indirectly through dence relationcase. Then, the ForwardFree Slack (FFS,) of
resource dependencies. On the other hand, in practice it is an activityi into a feasible schedule is definedas the amount
importantto make reference to the way in which a project of time that the activity can be shifted right, allowing the
managementtool such as Microsoft Projectcalculates total remaining activities to start on their scheduled dates. The
and free slack, outlining that the results obtained are FFSi is calculatedas follows:
misleading when activities compete for using common
resources that are available in limited quantities. f SSTj-
SSTI- SSj V(i,j) E Ass
All the above-mentionedworks coincide in pointing out FFS _ min SFT - SFTi - FF~i
FFS V(ij) EAFF I
~SF1) SSTJ> SF71 V(i,j) E As~f
the need for informationwhich can advise the PM where to
concentrateefforts in projectmanagement.Nevertheless, in SSTj - SFT - FSi1 V(i,j) E AFS )
these works neither the problem of identifying the criti- On the other hand, the BackwardFree Slack (BFS,) of an
cality of the activities in a resource-constrainedproject activity i is the amount of time that the activity can be
schedule with generalised precedence relations with mini- executed earlierallowing the remainingactivitiesto starton
mal time lags nor the analysis of possible earlierexecution their scheduled dates. The Backward Free Slack of an
of the activities are taken into account. On the other hand, activity i is calculatedas:
the analysis of extra hours and the use of idle resources in
order to solve the rescheduling of an activity are not (SSTi- SSTj- SSji V(j, i) EA55s
considered either. Finally, none of these works-except S min SFTi-SFTj-FFji V(j, i) E AFF
that of Raz and Marshall'6 analyse the response of BiS I SFT7- SST - SFji V(j, i) E AsE
standardproject management software to this question. In SST7-SFTj-FS1l V(j, i) e AFS
782 Journal Research
oftheOperational Vol.52,No,7
Society

In both definitions resource constraints are not considered. activityconsideredis thatwith the smallestSST,the
These concepts would be complemented with the corre- currentBackwardFreeSlack(BFS,)is calculatedand
sponding Forward and Backward Total Slack. These new the EarlyFeasibleStartTime (ESTj)and the Early
parameters will indicate the amount of time that an activity FeasibleFinishTime(EFT) areobtainedas follows:
can be executed later or earlier without changing either the
start or the completion time of the project.
ES =min {t/SST- BFSj < SSTjIrjk R
The Forward Total Slack (FTSi) of activity i in a feasible vnc [t,..ItH+d - i1] VkE [ ...K]}
schedule is the amount of time that the activity can be EFT = EST)+ dj
executed later, maintaining both the feasibility and the
project completion time. The FTS, is calculated as follows. Step I is repeated for each activityj (satisfying
SFT1< SST1)following the established ordering.
Step 1. From the project feasible schedule, activities are
In the BFSj calculation,the EST and the EFTof its
selected in decreasing order of their SF77, ie the
predecessor activities are considered. Activities
first activity considered is that with the greatest
whose SSTI are equal to SST, (feasible project
SFT, the current Forward Free Slack (FFSj) is
starttime) cannot be executed earlier.
evaluated and the Latest Feasible Start Time
Step 2. Calculatethe BackwardTotalSlack of activityi as:
(LST7) and Latest Feasible Finish Time (LF77)
are obtained as follows: - SSjj V(j, i) E Ass
fSSI>ES?
LS1; -
max{t/SSTj < t< SS Tj+FFS> Irjk < Rk BTS-= min4 SFTJ - EFTj - FFji V(j i) E AFF
SFTi - ESI - SF~ V(j,i) CAsFE
VV X [tI... Xtd+ - ]} Vk E [I ... K}}
1
SST;-EFT -FSji V(J]i) E AFs)

LFT7 = LSTj + dX Step 3. Activities shiftedin Step I are shiftedin the reverse
order of the one used in Step 1. Each activityj
where the leftover capacity of the renewable (satisfying EFT,< SST1)is scheduled in the latest
resource k in period t is denoted by Rkt and feasible position into the time window [ESTj ...
calculated as:
SFTj]. Its scheduled dates are then updated.
Rk - - Z
E k As in the definition of the FFS and BFS, the time
P(t)
windows defined by FTS and BTS can include both feasible
Step 1 is repeated for each activity , whose and not feasible positions.
Scheduled Start Time (SSTJ)is greater than the
SFTi, following the established ordering. This
implies a dynamic calculation of the FFSj, where
the LSTand the LFTof its successor activities are Cricalit index in the RCPSP
considered. Activities whose Scheduled Finish Once the concepts of total slack have been adaptedto the
Time (SFT7) is equal to SFTn (feasible project context of constrained resources with generalised prece-
completion time) cannot be executed later. dence relations, it is necessary to establish a classification
Step 2. Calculate the Forward Total Slack of activity i as: of the activities as critical or noncritical, depending on
V(ij) E Ass these values. The classification additionally considers
LSTj - SSTI - SS,j
whether the activities are critical only with respect to
FTS _ min LFTj - SET; - FF, V(i,) E AFF resources (Resource Critical)or also with respect to prece-
LFTj - SSTI - S77i V(i,) EAsFf
FS1 dence relationships(Absolutely Critical).
LST -SFTi- V(i,j) E AF
It is well known that the value of total slack indicates-
Step 3. Activities are shifted in the reverse order of the one in the unconstrainedcase-the degree of criticality of the
used in Step 1. Each activity j (satisfying LS5T> activities related to the project completion time. In fact,
SFTi) is scheduled in the earliest feasible position regarding the value of the total slack, an activity can be
into the time window [SSTj... LFTI]. Their sched- classified as critical when total slack is equal to zero and
uled dates are then updated. noncritical when total slack is greater than zero. Never-
theless in the resource-constrainedcase the degree of
The Backward Total Slack (BTSi) of activit i is the
amount of time that the activity can be executed earlier
criticality is more difficult to establish. In this work the
criticalityof an activity is considered as depending on the
maintaining both the feasibility and the project start time.
The BTSi is calculated as follows:
value of the ForwardTotal Slack or BackwardTotal Slack.
Hence, an activity can be classified as Forward_Absolutely
Stp 1. From thieproject feasible schedule, ac vities ge Critical Activity (F_ACA), Forward_Resource Critical
selected in increasingorderof the SS? ie the first Activity (F_RCA) or Forward_Non Critical Activity
PTormos
andALova-Resource-constrained
project
scheduling
andcontrol 783

(F_NCA). Analogously,regardingBackwardTotalSlack the resources are constrainedthe slack value and the R-C ACI
activitiescan be classified as: Backward_AbsolutelyCritical depends on the feasible project schedule considered.
Activity (B_ACA), Backward_ResourceCritical Activity Despite this situation, the concepts described in this work
(B_RCA) or Backward_NonCriticalActivity (B_NCA). are very useful when the PM has obtaineda feasible project
An activity is a Forward Absolutely Critical Activity schedule with a satisfactorycompletion time.
(FFACA) when its FTS is equal to zero. This activity Finally, it is important to note that the new activity
cannot be delayed maintaining both the feasibility of the criticality classification and the R-C activity criticality
schedule and the project completion time. An activity is a index are a generalisationof the ones used in the uncon-
Forward_ResourceCriticalActivity (F_RCA)when its FTS strainedcase. In fact, if the new activity criticality classi-
is greater than zero and cannot be delayed into its FTS fication is appliedto a project schedule where activities are
maintainingthe feasibility of the schedule. In this case the scheduled in their earliest dates and resources are not
PM can delay the scheduleddates of the activity solving the constrained,activities will be F ACA (critical) or F NCA
unfeasible positions considering idle resources or extra (non critical) and all of them will be B_ACA. For each
resources. Finally, an activity is a Forward_Non Critical activitythe amountof R-C ACI will be the value of its total
Activity(FJ_NCA) when its FTS is greaterthan zero and has slack. Nevertheless,if the PM workswith a schedule (in the
new feasible positions into its FTS. constrained or unconstrained case) where activities are
Regardingthe Backward Total Slack an activity can be scheduled in their latest dates or with a schedule where
classified as a Backward_Absolutely Critical Activity activities have consumed part of their available slacks, the
(B&ACA)when its BTS is equal to zero. This activity new definitionsand concepts describedin this work give to
cannot be scheduled in earlier dates maintainingthe feasi- the PM more complete information,indicating that some
bility of the schedule as well as the project start time. An activities are B_RCA or B_NCA with a R-C ACI different
activity is a Backward_ResourceCritical Activity (B_RCA) from zero.
when its BTS is greater than zero and cannot change its
scheduleddates to earlierdates into its BTS maintainingthe
feasibility of the schedule. This situationimplies again that
the PM can reschedule the activity to earlierdates solving
the unfeasible positions considering idle resources or extra
Integration of the new parameters into standard
resources. Finally, an activity is a Backward_NonCritical
project management software
Activity (B_NCA)when its BTS is greaterthan zero and has
new feasible positions into its BTS. Probablythe most popularproject managementpackage is
The total slack-when the resource availability is not Microsoft Project,which though far from being the perfect
limited-is the index of its criticality indicatingto the PM projectmanagementsoftware,has leapt to the top of project
the different positions where the activity can be delayed managementsoftware sales. This is due, at least in part, to
without increasing the project completion time. In the the leveraging effect of being part of the vast array of
resource-constrained context this criticality index is Microsoft offerings but also to their persistent marketing
misleading and an adapted activity criticality index is researchand their response to the marketin such a way that
needed. Therefore, in this work the activity criticality in the elapsed time of eight years, 4 versions were brought
index is defined as the sum of the numberof earlierfeasible out. One of the most importantcharacteristicscommon to
positions (into its BTS) where the activity can change its all versions is the continuous improvementin ease of use,
scheduled dates plus the numberof later feasible positions communication and workgroup working, although flaws
(into its FTS) that the activity can delay its scheduleddates. still remain in other aspects such as resource capacities
Thus, with this activity criticality index, the PM can easily and scheduling and control capabilities.20
and quickly know the possibilities of changing the sched- Despite these deficiencies, the customising possibilities
uled dates of the activities (not necessarily neighbour of Microsoft Project offered through a programming
dates). The criticality index has been named Resource- language like Visual Basic for Applications (VBA) make
ConstrainedActivity CriticalityIndex (R-C ACI), and can it possible to integrate new tools into the system. Thus,
be expressed as follows: Microsoft Projectwith new commandsbecomes a powerful
management tool that is able to manage resources and
R-C Activity CriticalityIndex (R-C ACI) schedules efficiently considering particularcriteria of the
= Number of new feasible positions into its BTS activities and helping the project to be completed on time.
+ Number of new feasible positions into its FTS The new system enhances and improves the capabilities of
the project management software. Therefore, the para-
In the case where resources are unlimited, the notion of meters described in the previous section have been devel-
slack is unique and unambiguousdue to the fact that there oped and coded using VBA and integrated as new
is a single slack value associated with each activity. When commands into Microsoft Project'98.
784 Journal Research
oftheOperational Vol.52,No.7
Society

The new tools for resource-constrainedproject schedul- tory or resource levelling.20 Nevertheless, this command
ing and control are based on the concepts described in the adds more flexibility to the schedule by considering a due
previous section and are classified depending on whether date greater than the feasible project completion time.
they are based on Forwardor Backward slacks: This fact can increase the Forward slack values and the
possibilities of rescheduling the project activities.
* FFS/BFS Feasible Positions Analysis: these options * The Fixed command fixes the scheduled dates of an
calculate and show the amount of Forward/Backward activity in the current dates. This activity cannot change
Free Slack of the selected activity.A feasibilityanalysisin its scheduled dates when the practitioner is rescheduling
each period included in the Free Slack is performedfor the activities of the project or is in the project control
the selected activity.The correspondingreportsinformon phase. This situation can also modify the slack values of
the feasibilityof each possible startdate and allow the PM the activities of the project because this activity cannot be
to change interactivelythe scheduled start time of the moved in the total slack calculation process.
activity in a controlledmannerto later/earlierdates. * The Clear command allows the PM to consider changing
* FTS/BTS Feasible Positions Analysis: through these the scheduled dates of an activity previously fixed allow-
commands the Forward/BackwardTotal Slack of the ing its scheduled dates to be modified.
selected activity is calculatedand a feasibility analysis in
each period included in the Forward/BackwardTotal The system developed includes other useful commands
Slack is performed. As in the case of the FFS/BFS such as Record Schedule that allows the user to record
Feasible Positions Analysis command, the PM can every schedule obtained and to add a brief description of
interactively change the scheduled start time of the the same. It is possible to save up to 10 different
activity. These commands are integrated in the proce- schedules related to a project that can be reloaded using
dure to calculate the FTSi/BTS1 described in the the option Recover Schedule. These functions are espe-
previous section. In Step 2, when FTS/BTS is calcu- cially interesting for making What-if analysis quickly and
lated, the user can change the start scheduled date and easily. Finally, an undo command is included (Last
automaticallythe finish scheduled date to a new posi- Schedule) in order to remove the last changes performed.
tion, SST' and SFTJ. In Step 3 the old scheduled These last tools have been introduced and applied in
finish/start date of the selected activity is considered. previous works.20
With the application of these commands, if the PM In conclusion, once the feasible project schedule has
changes the scheduled date of the selected activity, the been obtained, it becomes complex for the PM to make
slacks of some activities can change and their scheduled changes using the standard project management software
dates would be later/earlier. because the information offered is not very useful when re-
* FS/BS Analysis: these commandsinform the user about sources are limited. In this sense, the commands described
the activities of the project that have Forward/Backward
Free Slack and/or Forward/BackwardTotal Slack differ- Table 1 Projectinstanceto apply the new activity classification
ent from zero and their amounts.Additionally,the reports
indicate for each of these activities whether or not there Resource
Duration usage
are new feasible positions in the correspondingslacks. Activity (days) Successors (r],r2,r3,r4)
Finally, regardingFTS/BTS, a statistic of project activ-
ities consideringthe new activity criticalityclassification Task 1 1 Task 9, Task 10, Task 11 (4,4,1,4)
is included. Task 2 2 Task 6, Task 9 (3,3,1,6)
Task 3 7 Task 7, Task 8, Task 9 (2,5,1,2)
Task 4 6 Task 9 (1,3,6,5)
The low CPU time required by these commands thus Task 5 5 Task 11, Task 12 (1,3,5,2)
makes them powerful tools for decision making. Task 6 4 Task 15, Task 17 (2,6,6,1)
Other tools included in the system are the Due Date Task 7 1 Task 17 (5,2,2,3)
commands that are classified in Project Due Date, Fixed Task 8 2 Task 14, Task 15, Task 18 (4,4,3,6)
Task 9 9 Task 16, Task 18 (5,6,4,1)
and Clear. Task 10 1 Task 16 (2,3,2,6)
Task 11 10 Task 13 (1,1,4,4)
* The Project Due Date command allows the PM to Task 12 1 Task 18 (6,1,3,3)
consider a new due date different from the feasible Task 13 7 Task 20 (6,2,5,1)
Task 14 9 Task 19 (5,5,5,2)
project completion date obtained with the heuristic. In Task 15 1 (3,4,1,3)
general, obtaining a feasible project schedule as short as Task 16 1 (1,1,3,3)
possible is very interestingto the PM, due to the fact that Task 17 4 Task 20 (4,1,1,6)
resources are assigned to the project for a short time. Task 18 6 Task 20 (6,5,4,2)
Furthermore,reducing the project duration implies the Task 19 10 (4,6,3,4)
Task 20 10 (4,6,2,5)
improvementof other criteria such as in-process inven-
PTormos
andALova-Resource-constrained
project andcontrol 785
scheduling

in this work are powerful tools for the decision making basic informationon the project such as name and duration
process to schedule and control both resource-constrained of the project, numberof activities and number of resource
and unconstrainedprojects. types used by the project.This command furtherindicates if
the currentproject schedule is feasible or not.
From the initial schedule of the project instance a
Application of the new tools for project scheduling feasible schedule applying the resource allocation algo-
and control rithm that comes with Microsoft Project'98 has been
In orderto illustratethe use and performanceof these tools obtained. The resulting schedule has 39 days of duration
they are applied to a project instance with 20 activities with (Figure 1(b)).
finish-start precedence relationships and zero time lags, In Table 2 all the informationthat can be obtained with
each activity using 4 of 4 types of renewableresources.The the new parametersand tools is summarised. In particular
limited availability of the resources are 15, 16, 15 and the table includes the BFS, BTS, FFS, FTS and the
12units respectively. In Table 1 the duration, successor number of new feasible positions that each activity has
activities and the resource usage for each activity are in order to change its scheduled dates. The last two
included. columns summarise highly important information for the
Figure l(a) shows the initial schedule of the project PM, that is, the resource-constrainedactivity classification
obtained applying the Critical Path Method. The project and the resource-constrainedactivity criticality index. For
durationis 32 days and the schedule is not feasible. On the instance, Task 10 is B_NCA and F_NCA and has a R-C
right of Figure 1 the toolbars including the new commands ACI of 10. These values imply that this activity can be
are available. The command General Information gives executed at earlier and later dates than the current ones

!
|.|im |f
Al 1"

--i-- -_
U g, - .:.:,
-------------
- z . tJ
_--
! ~
:~~.
.. .. . .... . :. .. .... .... .. .... . ..:.. ';. '..:. .. ..!'. ; - ! : ...... . . .... ... . ............

; . ....;........
i,...............
i:i..-}...'i
--'.-:!}!
t

Tusk I
T
nsi 4 | |

Tusks
Tusk?
a|
Td* |3i | |

.. ...1 . .. .. . I-| ii 1 | i l z

maoll
Ta 12
lk l

Tusi Is

Task2

(b)

Figure 1 Initial project schedule (PDM) (a) and Feasible Schedule (b) Microsoft Project'98.
Research
oftheOperational
786 Journal Vol.52,No.7
Society

%
with: Task Task
Task Task
Task
Task
Task
Task
Task
Task
Task
Task
Task
Task
Task
Task Task
Task Task
Task
20 19 18 17 16 15 14 13 12 I1 0 9 8 7 6 S 4 3 2 1 Name Activity
Activities
activities

<
55 0 0 0 6 7 0 14 7 0 9 0 21 0 1 8 2 0 0 0 6 5
> BFS BFS

in new
New
15 its 0 0 0 7 0 9 0 0 0 0 7 0 0 0 0 0 0 0 0 0
positions
Number
positions
BFS feasible of
feasible
BFS

0 < B 0 0 6 7 7 14 7 0 9 0 21 0 1 8 2 0 0 0 6 5
60 > TS BTS

Table
in New new 2
20 its 0 0 0 7 7 9 0 0 0 0 7 0 0 0 0 0 0 0 0 0
positions
Number
positions
BYTSfeasible BTS of
feasible
Backward
<
65 0 0 3 0 2 10 10 0 6 8 0 0 6 7 7 9 1 2 1 0 0 and
> FFS FFS

forward
in new
New
20 its 0 3 0 0 10 10 0 0 0 0 0 0 0 0 0 0 0 1 0 0 slack
positions
Number
positions
FFS feasible of
feasible
FFS
analysis
<
of
80 0 0 3 0 2 10 10 3 6 8 0 10 6 10 8 10 1 5 4 3 0 the
> FTS FTS

project
in New new
70 its 0 3 0 2 10 10 3 0 3 0 3 3 6 3 6 0 3 4 3 0
positions
Number
positions feasible
FTS of
feasible
feasible FTS

schedule
10 10 6 4 1 1 9 7 1 10 1 9 2 1 4 5 6 7 2 1
(days)
Activity
duration

R-C

Classification
Criticality
Activity
B_RCA/F_ACA
B_ACA/F_ACA
B_ACA/F_NCA B_ACA/F_RCA
B_ACA/F_ACA
B_RCA/F_NCA B_RCA/F_NCA
B_RCA/F_NCA
B_NCA/F_NCA
B_NCA/F_NCA
B_NCA/F_NCA B_RCA/F_NCA
B_RCA/F_NCA
B_ACA/F_RCA
B_RCA/F_ACA
B_RCA/F_NCA
B_NCA/F_NCA B_ACA/F_NCA
B_ACA/F_NCA B_ACA/F_NCA
B/F

R-C
0 3 0 9 17 19 3 0 3 0 10 3 6 3 6 0 3 4 3 0 Criticality
Activity
Index
PTormos
andALova-Resource-constrained
project
scheduling
andcontrol 787

while maintaining the feasibility of the schedule. These dence relations and in order to consider particularcriteria
changes can be done in 10 new feasible positions. If the of activities.
PM needs a higher level of detail, Table 2 informs that The basic concepts used have been the Forward/Back-
Task 10 can be executed earlier in 7 new feasible BackwardFree/Total Slack as well as an activity criticality
positions or can be delayed to 3 new feasible positions. index based on them that has been established in order to
The least critical activities are those with a high value of classify the activities in the resourceconstrainedcase. These
R-C ACI such as Task 15 and Task 16 with 19 and 17 new tools have been integrated into the standardproject
new feasible positions respectively. On the other hand the management software Microsoft Project'98 thus allowing
most critical activities are Task 11 and Task 20, having a the ProjectManagerto reschedulethe resource constrained
criticality index (R-C ACI) equal to zero. These two project activities and to determine new activity start and
activities are B ACA and F_ACA. However, Task 1, finishtimes in a controlledmanner.Therefore,this work fills
Task 5, Task 13 and Task 18 have a R-C ACI equal to the existing gap in the lack of information and what-if
zero, but with respect to the Forward or Backward analysis tools in the practiceof projectmanagement.
analysis are RCA. That is to say, the PM can change Finally, it is importantto point out that these tools can be
their scheduled dates but must solve the unfeasibility with easily generalised and then applied to other environments
idle or extra resources. At the end of Table 2 a statistic of where resource availability varies over time and when
the project activities is presented, showing that 55 % of several projects are executed concurrently sharing a
the activities have BFS different from zero but only 15 % common pool of constrainedresources.
of the project activities have new feasible positions in
their BFS. 60 % of the activities have BTS and 20 % have Acknowledgements-We are grateful to the editor and the two anonymous
new feasible positions. On the other hand, 65 % of the referees for their helpful comments and valuable suggestions to improve the
activities have FFS and 20 % have new feasible positions. manuscript.

Finally, it is important to outline that 80 % of the


activities have FTS and 70 % can delay their scheduled Appendix
dates to feasible positions. The user can obtain these dates
every time it is necessary to make decisions in project Notation
scheduling or control pointing out that in the context of
resource constraintsthere are many possibilities of making SST: Scheduled StartTime
changes in a controlled manner. Additionally, it is possi- SFT: Scheduled Finish Time
ble to include in the reports the amount of conflict hours EST: Early Scheduled StartTime
and idle hours for each nonfeasible position and for each EFT: Early Scheduled Finish Time
resource, during the execution of the activity. In this way, LST: Latest Scheduled StartTime
the PM has more complete informationabout the resche- LFT: Latest Scheduled Finish Time
duling of this activity. FFS: ForwardFree Slack
Finally, when projects are in execution and the project FTS: ForwardTotal Slack
control is performed,activities that have been finished can BFS: BackwardFree Slack
be considered in the schedule as fixed and activities BTS: BackwardTotal Slack
scheduled in the future can be shifted in order to consider F_ACA: ForwardAbsolutely CriticalActivity
particularcriteriaof the activities. F_RCA: ForwardResource CriticalActivity
F_NCA: ForwardNon CriticalActivity
B_ACA: BackwardAbsolutely CriticalActivity
B_RCA: BackwardResource CriticalActivity
B_NCA: BackwardNon CriticalActivity
Conclusions
Project Managers have been educated with the idea of References
critical paths and slacks but as soon as resources are
1 Moder J, Phillips C and Davis E (1983). Project Management
incorporated this information is no longer available. with CPM, PERTand PrecedenceDiagramming,3rd edn. Van
Despite this, they requireadvice as to where to concentrate NostrandReinhold:NewYork.
efforts and often look to the project analysis to provide a 2 ElmaghrabySE and KamburowskiJ (1992). The analysis of
list of priorities. For this purpose, in this work the authors activity networks under generalized precedence relations.
have defined and developed new project scheduling and MngmntSci 38: 1245-1263.
3 BrinkmannK andNeumannK (1996). Heuristicproceduresfor
control parameters. These parameters are very useful resource-constrainedproject scheduling with minimal and
regarding the process of rescheduling activities, in the maximal time lags: the minimum project-duration and
context of constrained resources with generalised prece- resource-levellingproblem.J Decision Syst 5: 129-156.
788 Journal
oftheOperational
Research Vol.52,No.7
Society

4 Zhan J (1994). Heuristics for scheduling resource- 12 Maroto C, Tormos P and Lova A (1998). The evolution of
constrained projects in MPM networks. Eur J Oper Res 76: software quality in project scheduling. In: Weglarz J (ed).
192-205. Project Scheduling. Recent Models, Algorithms and Applica-
5 Neumann K and Zhan J (1995). Heuristics for the minimum tions. Kluwer: Amsterdam, pp 239-259.
project-duration problem with minimal and maximal time 13 Wiest JD (1964). Some properties of schedules for
lags under fixed resource constraints. J Intell Manufac 6: large projects with limited resources. Oper Res 12: 395-
145-154. 418.
6 Schwindt C and Neumann K (1996). A new branch-and 14 Woodworth BM and Shanahan S (1988). Identifying the critical
bound-based heuristic for resource-constrained project sequence in a resource constrained project. Project Mngmnt
scheduling with minimal and maximal time lags. In: Weglarz 6: 89-96.
J (ed). Proceedings of the Fifth International Workshop on 15 Bowers JA (1995). Criticality in resource constrained networks.
Project Management and Scheduling, April 11-13, Poznan. J Opl Res Soc 46: 80-91.
Scientific Publishers: Poznan, Poland, pp 212-215. 16 Raz T and Marshall B (1996). Effect of resource constraints on
7 Franck B and Neumann K (1996). Priority-rule methods float calculations in project networks. Int JProject Mngmnt 14:
for the resource-constrained project scheduling problem 241-248.
with minimal and maximal time lags-an empirical analysis. 17 Lova A (1997). Programaci6n de multiproyectos con recursos
In: Weglarz J (ed). Proceedings of the Fifth International limitados: un enfoque multicriterio. PhD thesis, Universidad
Workshop on Project Management and Scheduling, April 11- Politecnica de Valencia.
13, Poznan. Scientific Publishers: Poznan, Poland, pp 88-91. 18 Lova A, Maroto C and Tormos P (1998). Resource constrained
8 De Reyck B, Demeulemeester E and Herroelen W (1998). multiproject scheduling: a multicriteria heuristic algorithm.
Algorithms for scheduling projects with generalized precedence In: Barbarosoglu G, Karabati S, Ozdamar L and Ulusoy G
relations. In: Weglarz J (ed). Project Scheduling. Recent (eds). Proceedings of the Sixth International Workshop on
Models, Algorithms and Applications. Kluwer: Amsterdam, Project Management and Scheduling, July 7-9, Istanbul. Boga-
pp 77-106. zici University Printing Office: Istanbul, pp 90-93.
9 Mohring S, Stork F and Uetz (1998). Resource-constrained 19 Lova A, Maroto C and Tormos P (2000). A multicriteria
project scheduling with time windows: a branching scheme heuristic method to improve resource allocation in multiproject
based on dynamic release dates. Proceedings of the Sixth scheduling. Eur J Oper Res 127: 408-424.
International Workshop on Project Management and Schedul- 20 Tormos P and Lova A (1999). An interactive decision support
ing, July 7-9, Istanbul. Bogazici University Printing Office: system integrated into standard project management software.
Istanbul, pp 98-101. Technical Report, Universidad Politecnica de Valencia.
10 Domdorf U and Pesch E (1998). Constraint-based project
scheduling. In: Matarazzo B (ed). Proceedings of the 16th
European Conference on Operational Research, 12-15 July,
Brussels. Belgium OR Society: Brussels, Belgium, p 59.
11 De Reyck B and Herroelen W (1998). A branch-and-bound
algorithm for the resource-constrained project scheduling
problem with generalized precedence relations. Eur J Opl Res
111: 152-174. Received November 1999;
accepted January 2001 after two revisions

S-ar putea să vă placă și