Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

SCIENTIFIC PAPERS

SCHEDULING OF JOB-SHOP PRODUCTION PROJECTS WITH


MICROSOFT OFFICE EXCEL

Mădălin CATANĂ1, Corneliu NEAGU1 and Sergiu TONOIU1


ABSTRACT: This paper presents a computer application developed within a Microsoft Office Excel workbook
for performing job-shop scheduling tasks concerning production projects. Scheduling workbook includes
three worksheets and several Visual Basic for Applications (VBA) code modules. The main worksheet of
scheduling workbook is organized with cell ranges for data input through user typing and cell ranges for
application output through provided cell formulas or through VBA procedures initiated by user. Several
command buttons for performing complex scheduling steps are available on the main worksheet and one
command button is provided for centralizing data inputs and outputs on a separate preformatted sheet. An empty
worksheet for preserving temporary data needed by the application during complex scheduling steps is also
included in the workbook. For a target production project, the developed computer-aided scheduling (CAS)
application can deliver a complete Critical Path Method (CPM) analysis and eight scheduling scenarios
amongst which user may choose the most suitable one in terms of his criteria. To prove the functionality of
scheduling workbook and the quality of its outputs, an example production project is treated within the paper.
KEY WORDS: Scheduling, CAS systems, CPM analysis, Time- and resource-constrained scheduling scenarios.

1 INTRODUCTION To cope with complex scheduling tasks in short


time and at low costs, many computer-aided scheduling
Scheduling is a decision-making process performed (CAS) systems were developed and used in practice.
regularly by manufacturing companies for allocating
There are reported different CAS systems adapted for
and timing production jobs to processing resources
traditional job-shop scheduling problems (Kazel, 2006),
so as to optimize one or more scheduling objectives
(Pinedo, 2008), and others fitted for project scheduling
(Pinedo, 2008), (Sipper & Bulfin, 1998). The result is
(Billows, 2007), (Demeulemeester & Herroelen, 2002),
a short-term production schedule that states the time (Uher, 2003). A common disadvantage of all generic
each operation of jobs starts and finishes on allotted CAS systems is their high acquisition costs. A more
resource of production facility.
important drawback is the specialization of each system
To help the schedulers to resolve easily practical for a limited set of scheduling environments and goals
scheduling tasks, scheduling situations are classified in that may not fit all the situations in industrial practice.
the literature into a number of standardized scheduling That is why application-specific CAS systems have to
problems according to the characteristics of processing be developed at times (Pinedo, 2008). Such a system
jobs and resources (Pinedo, 2008), (Sipper & Bulfin, is the application described within the paper, which is
1998). So, in a typical job-shop scheduling problem, intended to handle time- and resource- constrained job-
there are several jobs to be done by several processing shop scheduling problems for production projects.
resources and each job visits resources according to
Scheduling application is implemented within a
a specific route (Pinedo, 2008). On the other hand, a Microsoft Office Excel workbook for convenient use
project scheduling problem is viewed as an extended
and is founded on previous theoretical works of the
job-shop scheduling problem with complex relations
authors (Catană et al., 2007a & 2007b), (Neagu et al.,
between operations of jobs and with temporal limits set
2006). To demonstrate the utilization of scheduling
for the execution of operations and for the availability of
workbook and its results, a simple job-shop production
processing resources (Demeulemeester & Herroelen, project will be used for example.
2002). For this reason, project scheduling techniques
are extensively used in practice for the resolution of 2 DESIGN OF SCHEDULING WORKBOOK
complicated, time- and resource-constrained job-shop
scheduling problems (Demeulemeester & Herroelen, We will discuss the developed application with
2002), (Neagu et al., 2006), (Velaga, 2007). the help of production project in figure 1, which was
1
partly treated by authors within their previous works
University POLITEHNICA of Bucharest, Department of (Catană et al., 2007a & 2007b). The project refers to
Machine Manufacturing Technology, Splaiul Independentei
three machining jobs comprising several operations.
313, 060042, Sector 6, Bucharest, Romania.
Each operation of the three jobs is described in project
E-mail: mg_catana@yahoo.com. network by a horizontal line, with the following data

ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL. 7, ISSUE 4/2009 31


SCIENTIFIC PAPERS

written above and below: operation label and planned Considering these operational traits, the working area
duration in days (d); label of the resource assigned to of the sheet was divided into three data sections with
process operation. S and F are dummy activities showing different background colors:
respectively the start and finish of production project. - inputs section, colored in blue;
The precedence relations between project activities are - formula-based outputs section, colored in rose;
indicated by network arrows, with the lag times, if any, - VBA code-based outputs section, which is colored
expressed in days (d). Denoting to the start time of the in yellow.
scheduling horizon, we set two temporal constraints on Headings and labels of columns and rows within
the availability of resource R1 for project activities, the working area of the sheet are colored in gray, the
as follows: R1 is available from to + 1 day to to + 11 same as the provided command buttons. As a matter
day in the scheduling horizon. These Start No Earlier of fact, these buttons stand in for the columns labels of
Than (SNET) and Finish No Later Than (FNLT) time VBA code-based outputs section of the worksheet.
constraints placed on resource R1, induce equivalent
As shown in figure 2, the following information
constraints on all operations allotted to R1 (i.e., T11,
must be entered by user within the columns of inputs
T14, and T32). Project data in figure 1 and temporal
section of the main worksheet:
constraints set on resources and operations have to
be inputted by the user within the main worksheet of - index of scheduling task (column A), which has
scheduling workbook. to be unique for each task defined by the user and
stored within inputs section of the worksheet;
The main worksheet of scheduling workbook is
- index of each job in the production project that
the place where user enters required data for project
triggered the scheduling task (column C);
scheduling task and commands afterwards the delivery
- label of each job in the project (column D);
of scheduling solutions for that task. Based on their
- number of operations for each job (column F);
computation complexity, data comprising application
- index of each operation in each job (column G);
output for a project scheduling task are obtained by
- label of each operation in each job (column H);
two different means: through predefined cell formulas
- index of processing resource for each operation
or through the execution of VBA procedures initiated
(column J);
by user with the command buttons on the worksheet.
T11, 1d I13, 1d B15, 2d I17, 1d
R1 M12, 2d R3 T14, 2d R4 D16, 2d R3
R2 R1 R5
S M21, 3d -2d D23, 12d -4d I25, 3d F
R2 M22, 6d R5 B24, 6d R3
-4d -2d
R2 R4
M31, 2d -1d I33, 2d -1d D35, 6d -1d
R2 T32, 4d R3 B34, 4d R5 I36, 2d
-1d -2d
R1 R4 R3

Figure 1. Network model for an example production project

Figure 2. Inputs section of main worksheet completed for the example project

32 ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL. 7, ISSUE 4/2009


SCIENTIFIC PAPERS

- duration of each operation (column K); The formulas in this section as well as all formulas
- lag time of each succeeding operation (column L), that are used within the main worksheet of scheduling
that is measured from the finish of predecessor workbook are devised so as to permit scheduling task-
to possible start of successor and depends on the dependent calculations within data cells (i.e., whatever
transferring scheme adopted for the job; the number of different scheduling tasks stored within
- SNET constraints (column R) and FNLT constraints inputs section of the worksheet, the formula in a cell
(column T) set on project operations according to uses for calculation only necessary data provided for
material requirements plan, resources availability the scheduling task related to that cell). For this reason
limits, or other valid reasons; and depending on performed calculations, there were
- SNET constraints (column S) and FNLT constraints used simple or array formulas, with relative and/or
(column U) set on project resources according to absolute references to other data cells (see table 1).
their time-limited assignment to project activities. Due to relative cell references, a formula will have
SNET and FNLT time constraints for operations different expressions for different cells of the same
and resources have to be defined relative to the start of column. However, these expressions are automatically
scheduling horizon (to). filled in by Excel when copying the cell containing the
As it can be observed in the depiction of inputs formula to subsequent cells of the column. User can
section of the main worksheet, there are several data practice this method, if required, for the two columns
columns not mentioned above and hidden in figure 2. in analysis section of operations priorities on scheduling
These columns refer to some additional data regarding (see figure 4).
production project that are not necessary for scheduling
task (e.g., names and quantities of manufactured parts,
names of processing operations, names of resources).
Near inputs section of the main worksheet there
is a formula-based outputs section provided for critical
path method (CPM) analysis of production project, as
shown in figure 3. Details on the design of this section
are provided in table 1 and several comments are given
in the following.
Start and finish times for project operations are
computed relative to the start of scheduling horizon
(to). An important output of CPM analysis is the latest
finish time of production project that will be used for
developing backward scheduling scenarios. In the case
of example project, this time, denoted tf, is linked by to
as follows: tf = to + 20 days (see maximal values in
column Y of figure 3). This relationship will be used
later to express backward scheduling data relative to Figure 3. CPM analysis section of main worksheet
project completion time (tf). for the example project

Table 1. Design of CPM analysis section of the main worksheet


Column Column Column formula
heading output (expression for the first data cell)
V Earliest start times for project operations =IF(G2=1;MAX(R2;0);MAX(R2;V1+K1+L2))
W Earliest finish times for project operations =V2+K2
Time lags between finish times of operations set
X =IF(MAX(T2;0)>0;T2-W2;IF(G2=1;0;X1))
by FNLT constraints and earliest finish times
{=IF(G2=F2;IF(MAX(T2;0)>0;MIN(T2;MAX(IF(
$A$2:$A$943=A2;IF($G$2:$G$943=$F$2:$F$943
;$W$2:$W$943+$X$2:$X$943;"");"")));MAX(IF(
Y Latest finish times for project operations
$A$2:$A$943=A2;IF($G$2:$G$943=$F$2:$F$943
;$W$2:$W$943+$X$2:$X$943;"");"")));IF(MAX(
T2;0)>0;MIN(T2;Y3-K3-L3);Y3-K3-L3))}
Z Latest start times for project operations =Y2-K2
AA Total slacks for project operations =Z2-V2

ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL. 7, ISSUE 4/2009 33


SCIENTIFIC PAPERS

Operations priorities analysis section is located After setting priority labels for project operations,
next to CPM analysis section and permits the delivery user can perform resource-constrained scheduling steps
of priority labels of operations that will be used by VBA that give alternative project schedules to choose from.
procedures performing resource-constrained scheduling This can be done by pushing the command buttons at
steps. These labels indicate only the priority caused by the top of VBA code-based outputs section of the main
temporal constraints set on project operations, and can worksheet. The execution of VBA procedures related
be D if operations have priority on scheduling, or N if to these buttons will fill scheduling data in the cells
not. Backward scheduling priorities are computed in of this section, as presented in figure 5.
column AB, while priorities for forward scheduling The functions of command buttons in figure 5 are
are shown in column AC (see figure 4). The default as follows:
formulas of the two columns can be changed by user,
- FSLRop gives forward sequencing list ranks for
on the suggestions provided within comments boxes
project operations (column AD);
of columns labels. The suggested expressions have to
- BSLRop gives backward sequencing list ranks of
be typed in the first data cells of the two columns and
project operations (column AE);
copied downward afterwards. The effects of alternative
- STop&FTop4FOS gives start times (column AF)
formulas on the performances of developed scheduling
and finish times (column AG) of project operations
scenarios were previously discussed by authors (Catană
for forward operations-sequencing scenarios;
et al., 2007a & 2007b).

Figure 4. Operations priorities analysis section of main worksheet for the example project

Figure 5. VBA code-based outputs section of main worksheet filled in for the example project

34 ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL. 7, ISSUE 4/2009


SCIENTIFIC PAPERS

- FTop&STop4BOS gives finish times (column AH) transform to-based operations start and finish times of
and start times (column AI) of project operations backward schedules to tf-based times. The calculations
for backward operations-sequencing scenarios; rely on the relation between tf and to found in column
- STop&FTop4FLP/Sop gives start times (column AJ) Y of CPM analysis section. The following backward
and finish times (column AK) of project operations scheduling data are computed within this section (see
for forward load-planning scenario based on slacks figure 7 for the case of example production project, for
of operations; which tf = to + 20 days):
- FTop&STop4BLP/Sop gives finish times (column AL) - latest finish times (column AU) and latest start
and start times (column AM) of project operations times (column AV) of project operations for CPM
for backward load-planning scenario based on slacks analysis;
of operations; - finish times (column AW) and start times (column
- STop&FTop4FLP/TOC gives start times (column AN) AX) of project operations for backward operations-
and finish times (column AO) of project operations sequencing scenario in VBA code-based outputs
for forward load-planning scenario based on theory section;
of constraints (TOC); - finish times (column AY) and start times (column
- FTop&STop4BLP/TOC gives finish times (column AP) AZ) of project operations for backward load-planning
and start times (column AQ) of project operations scenario based on slacks of operations;
for backward load-planning scenario based on theory - finish times (column BA) and start times (column
of constraints (TOC). BB) of project operations for backward load-planning
Two different sequencing scenarios can by issued scenario based on theory of constraints (TOC).
with FSLRop and STop&FTop4FOS, or BSLRop and After the delivery of desired scheduling scenarios
FTop&STop4BOS buttons: a slack-based sequencing within the main worksheet of scheduling workbook,
scenario or a queue-based sequencing scenario. User user may consolidate the inputs and outputs related to
can choose the scenario to be devised in the selection project scheduling task on another preformatted sheet
window displayed after pressing FSLRop or BSLRop by using Centralize Data command button (see figure
command buttons (see figure 6). 7). In figure 8 is displayed the tabular scheduling report
VBA code attached to the buttons of this section issued with Centralize Data command button for the
implements resource-constrained project scheduling example production project. An empty worksheet that
techniques that were previously devised by the authors stores temporary data during complex scheduling steps
and discussed in reference works (Catană et al., 2007a is also comprised in the scheduling workbook.
& 2007b), (Neagu et al., 2006). Start and finish times
of project operations for all scheduling scenarios are
expressed relative to time to, following that backward
scheduling data to be related to time tf within the next
formula-based outputs section of the worksheet (see
figure 7).
Backward scheduling data conversion section of
main worksheet contains predefined cell formulas that Figure 6. Selection window for sequencing scenario

Figure 7. Backward scheduling data conversion section of main worksheet for the example project
ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL. 7, ISSUE 4/2009 35
SCIENTIFIC PAPERS

Figure 8. Tabular scheduling report issued for the example production project

►Catană, M., Neagu, C., Tonoiu, S. (2007a). Adjusting


3 CONCLUDING REMARKS Temporal-Constraints Rule of Sequencing Models for
Because generic CAS systems are costly and not Job-Shops with Hard Resource Limitations, Proc. of the
well fitted for many practical scheduling environments, 5th International Conference on Advanced Manufacturing
application-specific systems are developed at times. Technologies – ICAMaT, Sibiu, Romania, 2007, AGIR
Such a system is computer application described in the Publishing House, ISSN 1843-3162, pag. 277-280
paper, which is suited for scheduling time- and resource- ►Catană, M., Neagu, C., Tonoiu, S. (2007b). A TOC-
constrained job-shop production projects. Based Load-Planning Procedure for Scheduling Activities
Application consists in a scheduling workbook, in Job-Shops with Tight Resource Constraints, Proc. of
with three preformatted sheets and several VBA code the 5th International Conference on Advanced Manufacturing
modules for complex functions. The main worksheet Technologies – ICAMaT, Sibiu, Romania, 2007, AGIR
of scheduling workbook is organized in sections for Publishing House, ISSN 1843-3162, pag. 281-284
typed data inputs, formula-based calculated outputs, ►Demeulemeester, E., Herroelen, W. (2002). Project
and VBA code-based computed outputs respectively. Scheduling: A Research Handbook, Kluwer Academic
For a target production project and set of priority labels Publishers, ISBN 1-4020-7051-9, Dordrecht
for project operations, the application can deliver eight ►Kazel, C. (2006). Production Scheduling Software,
scheduling scenarios amongst which user may choose available at: http://www.productionscheduling.com/
the preferred one. Alternative scenarios may be shown production_scheduling_software.html - Accessed on:
in a tabular scheduling report on another worksheet 2009-05-03
of the workbook. ►Neagu, C., Niţu, E., Melnic, L., Catană, M. (2006).
Ingineria şi managementul producţiei: Bazele teoretice,
In its current version, the application is suitable
Editura Didactică şi Pedagogică R.A., ISBN 973-30-
enough for both practical and training purposes. Yet,
1623-3, Bucureşti
a further development of the application can be done
►Pinedo, M. (2008). Scheduling: Theory, Algorithms,
if necessary, in order to implement other scheduling
and Systems, 3rd Edition, Springer Science+Business
techniques, to include a friendlier user interface, and
Media, ISBN 978-0-387-78934-7, New York
to be connected with material requirements planning
►Sipper, D., Bulfin, R. (1998). Production: Planning,
and production control systems that may by used by
Control, and Integration, McGraw-Hill, ISBN 0-07-
industrial companies.
115843-X, Singapore
4 REFERENCES ►Uher, T. (2003). Programming and Scheduling
Techniques, UNSW Press, ISBN 0-86840-725-9, Sydney
►Billows, D. (2007). Selecting Project Management ►Velaga, P. (2007). Production Scheduling for Job
Software, available at: http://www.4pm.com/articles/ Shops, available at: http://www.optisol.biz/job_shop_
selpmsw.pdf - Accessed on: 2009-05-02 scheduling.html - Accessed on: 2009-05-01

36 ACADEMIC JOURNAL OF MANUFACTURING ENGINEERING, VOL. 7, ISSUE 4/2009

You might also like