engineering scheduling
TRANSCRIPT
Table of Contents
List of Figures ................................................................................................................................. 2
Introduction to engineering project scheduling .............................................................................. 3
Nature and definition of the engineering project scheduling ...................................................... 3
Existing classifications of this project scheduling problem. ....................................................... 4
Scope of this study ...................................................................................................................... 4
Methodology to be used in this study ......................................................................................... 5
Survey of project scheduling methods and techniques ................................................................... 6
Classification of existing procedures, techniques, methods for engineering project scheduling 6
Scheduling procedures and methods ........................................................................................... 9
The Critical Path Method ........................................................................................................ 9
Program Evaluation and Review Technique......................................................................... 11
Gantt Chart ............................................................................................................................ 12
Quantitative techniques ............................................................................................................. 13
Qualitative (heuristic) techniques ............................................................................................. 14
Summary ....................................................................................................................................... 17
Conclusion ................................................................................................................................ 17
List of Figures
Figure 1: Job-on-arc format
Figure 2: Job-on-node format
Figure 3: Job-on-node format example
Figure 4: Job-on-arc format example
Figure 5: Representing nodes as rectangles
Figure 6: The Critical Path Method
Figure 7: Program Evaluation and Review Technique
Figure 8: Gantt Chart
Figure 9: Gantt Chart with interdependencies
Introduction to engineering project scheduling
Nature and definition of the engineering project scheduling
A schedule can be described as a list of a project's tasks and deliverables, with indicated start and
finish dates. These are estimated in terms of resource allocation, budget and duration. The
various components are linked by dependencies where execution of a particular activity relies on
the completion of another precedent activity.
Engineering project scheduling is one of the major determinants of project success. However,
most engineers have no understanding of the basics of project scheduling. Following recent
economic downturns, businesses today face major challenges in their operation. This has led to
low market demand and investors now emphasize on reducing overhead costs through enhanced
efficiencies using existing and new infrastructure. The scope and complexity of engineering
projects present additional challenges to engineering firm investors. The pressure for quick
delivery of engineering project continue to increase in an effort to speed time-to-market while at
the same time, overall project costs need to be reduced.
These challenge can be addressed by adopting engineering scheduling techniques. Engineering
scheduling offers a planned approach to accomplishing projects tasks and efficient allocation of
resources throughout project lifecycle thus leading to much reduced timelines and efficient use
of resources.
Existing classifications of this project scheduling problem.
Engineering project scheduling relies on both heuristic and mathematical methods in allocatation
of limited resources to tasks at hand. There are three ways of classifying project scheduling
namely;
a) Critical path Method,
b) Project Evaluation and Review Technique and
c) Gantt Charts
All of these methods are based on information driven at the initial phase of a project. The
information may include estimation of resources required and a breakdown of all major tasks. In
both methods, it is possible to identify a critical path and estimate total duration of each task.
Interdependencies can also be established in both methods by identifying boundary times for the
various tasks.
Scope of this study
An engineering project schedule usually concerns a single project that consists of a number of
separate tasks which are related to one another through precedence constraints. In this study, we
will only consider a single project with multiple tasks that have precedence constraints. This
implies that a task can only start when all its predecessors have been completed.
Engineering project scheduling provides the necessary tools to save time and costs on a project.
In this study, we provide techniques for avoiding common problems that result from long-term
nature of engineering projects and unrealistic scheduling.
Methodology to be used in this study
We will assume that individual task durations are not entirely fixed initially. The scheduler has
some control on the processing duration of the different tasks through the allocation of additional
resources at their disposal. Important to note is that some engineering projects have deadlines
and delays may involve expensive penalties. Management has to therefore analyze the
consequences of late completion. For the purpose of clarity of expression, we will assume a
project scheduling problem without resources constraints.
Survey of project scheduling methods and techniques
Classification of existing procedures, techniques, methods for engineering project scheduling
Before creating a project schedule, the project manager should prepare a work breakdown
structure (WBS), an estimate duration for each task, and a resources list. If this information for
some of the tasks is not available, they can be created with an estimated. This is because a
schedule is itself is an estimate. The personnel involved in the project have to agree on the
estimated dates for the estimates to be accurate.
An effective engineering project schedule must meet the following standards:
The schedule must be regularly updated.
The remaining workload must be appropriately distributed among resources (taking into
account vacations and public holidays).
The Estimation at Completion value must be equal to the baseline value.
The dependency between the tasks is the basic constraint of the engineering project scheduling
problems. The precedence constraints may be represented in two formats, that is, job-on-arc
format or job-on-node format. In the job-on-arc format, the arcs in represent the tasks while the
nodes represent the milestones as shown in Figure 1. In the job-on-node format, the nodes
represent the tasks and the connecting arcs the dependency relationships between the tasks as
outlined in Figure 2. In practice, the job-on-arc format is more widely used than the job-on-node
format.
A major disadvantage of the job-on-arc format is the need to introduce dummy tasks to enforce
precedence constraints, tasks that otherwise would not have been enforceable. Below is a
demonstration of using dummy tasks;
Figure 1: Job-on-arc format
Figure 2: Job-on-node format
Example 1 (Setting up a manufacturing plant).
The tasks involved in the project are outlines as below:
Job Description Duration
1 Engineering design 2 Weeks
2 Prepare engineering drawings 1 Week
3 Prepare manufacturing plant 7 Weeks
4 Source machinery 5 Weeks
5 Source Materials 8 Weeks
6 Procure parts 3 Weeks
7 Installation of machinery 5Weeks
8 Testing and Handover 1 Week
The precedence constraints for the above project are as detailed below:
Task Immediate Predecessor Immediate successor
1 -- 4
2 -- 5
3 -- 6, 7
4 1 6, 7
5 2 6
6 3, 4, 5 8
7 3, 4 8
8 6, 7 --
Task s Task t
Task s Task t
1 4 7
3 8
2 5 6
Figure 3: Job-on-node format example
2 5
6
1 4 7 8
3
Figure 4: Job-on-arc format example
From figure 4, it can be denoted that there is a need for a dummy task in the job-on-arc format.
In a large engineering project, the number of dummy tasks maybe up to 10% of the total tasks
required.
The job-on-node format can also be shown using rectangles. The horizontal sides indicate the
time-axis corresponding to the processing duration of the task. If the task is allowed to start after
half the precedent task is completed, then the dependency is shown by an arc starting from the
midpoint of the horizontal side as seen in Figure 5 below.
Figure 5: Representing nodes as rectangles
Scheduling procedures and methods
The Critical Path Method
Consider (x) number of tasks which are subject to precedence constraints. The processing
duration of task t is fixed and equal to pt. Assuming that resources are unlimited, the Critical
Path Method main objective will be to minimize the duration it takes to complete a task. The
algorithm that yielding the minimum duration can be described in as follows;
Start all tasks without processors right at the beginning of the project.
Every time a task concludes its processing, start on those tasks of which all the
predecessors have been completed.
In order to outline the algorithm more elaborately, we will use some notations. Let C(t) denote
the earliest possible completion time of task t and S(t) the earliest possible starting time. We will
note clearly that, C(t) = S(t)+pt. Let’s also set (all s → t) as tasks that are predecessors of task t.
This implies that if task s is a predecessor of task t, task s has to be completed before task t can
be started. This algorithm is referred to as the forward procedure. This is because a task can start
its processing only after all its predecessors have been completed. The earliest starting time of a
task is thus equivalent to the maximum of the earliest completion times of all its predecessors.
Task t
Task s
There is another algorithm called the backward procedure. This technique determines the latest
possible starting time and completion times of all tasks. The backward procedure allows for the
possibility of delaying the start of some of the tasks without increasing the project duration.
Forward procedure and backward procedure vary in that the forward procedure determines the
earliest possible starting times and completion times while the backward procedure determines
the latest starting times and latest completion times. The minimum duration still can be achieved
in the backward procedure. A task of which the earliest starting time is earlier than the latest
starting time is referred to as a slack task. The difference between a task’s latest possible starting
time and earliest possible starting time is the amount of slack. A task with the earliest starting
time being equal to the latest starting time is called a critical task. Acritical path comprises of a
set of critical tasks. A critical path can also be described as a chain of non-slack tasks, beginning
with a task that starts at time zero and ending with a task that completes its processing at the
planned end of the project.
In any given engineering project, there exists one longest chain of tasks which form the critical
path. These tasks have an impact on the project duration and it is critical to consider them when
allocating resources for the project.
Figure 6: The Critical Path Method
Program Evaluation and Review Technique
In contrast to the Critical Path Method, the processing duration of the x tasks are random. The
mean µx and the variance σ2 x of each of these random variables may either be accurate or
estimated. The technique minimizing the expected duration is just like in the Critical Path
Method. To compute the processing duration, the following three variable are required.
pa t = the optimistic processing duration of task t,
pm t = the most likely processing duration of task t,
pb t = the pessimistic processing duration of task t.
The three variables can be used to estimate the expected processing duration as follows:
µt =(pa t + pm t + pb t)/6
Based on the estimates of the expected processing duration the engineering project lifetime can
be obtained by applying the Critical Path Method with fixed processing times that are equal to
the estimates. Only tasks on the critical path are used to estimates the duration of the entire
project.
This method is better for managing complex dependencies but does not provide the best snapshot
of the overall project progress like Gantt charts. Tasks are shown as a series of nodes and
arrows:
Figure 7 shows an example of a Program Evaluation Review Technique. Dependencies are can
be seen in that Task 1 needs to be complete before commencement of task 2. From this example,
we can see that the Program Evaluation Review Technique is suitable for managing complex
networks.
Figure 7: Program Evaluation and Review Technique
Gantt Chart
Gantt charts are useful in showing the time required for various tasks. They are best at giving an
instantaneous snapshot of the overall progress of the project in relation to all the varied tasks. A
gantt chart is represented as a bar chart with all the tasks listed. Tasks can be grouped together
and listed with all subtasks involved.
Figure 8: Gantt Chart
Gantt charts can also contain dependencies, such as:
Finish to Start: Task t starts after completion of Task s.
Start to Start: Task t starts as soon as Task s commences.
Start to Finish: Task t must complete before Task s starts.
Finish to Finish: Task t must complete before Task s ends.
Percent Complete: Task t can only proceed through a% complete before Task s
is b% complete
Figure 9: Gantt Chart with interdependencies
Quantitative techniques
Quantitative techniques are used in solving engineering scheduling problems that can be
formulated as mathematical algorithms. To understand this technique, knowledge of notations
used in elementary operations research is required.
The most used mathematical technique is the Linear Program. A linear program is an
mathematical solution in which the task and the constraints are linear in the variables to be
determined. This can be expressed as follows:
minimize c1x1+c2x2+···+cnxn
subject to:
a11x1 + a12x2 +···+ a1nxn ≤ b1
a21x1 + a22x2 +···+ a2nxn ≤ b2
.
.
.
am1x1 + am2x2 +···+ amnxn ≤ bm
xt ≥ 0 for t =1,...,n.
The objective of this mathematical method is to minimize costs. c1,...,cn referrs to as the cost
vector. Variables x1,...,xn have to be determined so that the cost function is minimized. The
column vector a1t,...,amt is referred to as activity vector t. The value of the variable xt refers to the
time at which this activity t is performed. The b1,...,bm is referred to as the resource vector. In
linear programming n refers to the number of activities while m refers to the number of
resources.
Qualitative (heuristic) techniques
Some engineering scheduling problems can be formulated as linear programs and are thus
inherently easy. They can be solved readily using existing algorithms. There are however other
engineering scheduling problems that are very difficult. It may not be possible to formulate such
problems as linear programs since there are no simple algorithms that can yield optimal solutions
in a timely manner. Heuristic methods are useful in engineering scheduling such scenarios.
Although heuristic methods do not guarantee optimal solutions, they provide a reasonably good
solution in a relatively short time. Discussed below is a set of simple and basic dispatching rules
that can be applied to different engineering scheduling problems with only minor modifications.
Basic Dispatching Rules
A dispatching rule is a rule that prioritizes all the tasks that are awaiting execution by a set of
resources. Prioritization takes into account the task’s attributes, resources capabilities and
availability. As soon as resource has been freed, the rule selects a task with the highest priority
rating. Dispatching rules can be based on either static or dynamic rules. Static rules are not time
dependent while dynamic rules are time dependent.
Other dispatching rules include:
Service in Random Order.
According to this priority rule, whenever a resource is freed, the next task is selected at random
from those waiting for execution.
Earliest Release Date first.
Just like the First-Come-First-Served rule, the waiting times of the tasks at hand are minimized.
Earliest Due Date first.
Whenever a resource is freed, the task with the earliest due date is selected to be executed next.
This rule minimizes lateness among the tasks waiting for execution.
Minimum Slack first.
This is similar to the Earliest Due Date first rule. If a resource is freed at time t the remaining
slack of each task at that time is computed. The task with the minimum slack is scheduled next.
Longest Processing Time first.
This rule orders tasks in decreasing order of processing duration. This rule evenly distributes the
tasks to the available resources. The reasoning behind this is that it is advantageous in that, the
tasks with shorter processing times are processed last and are easily distributed to balancing the
workload.
Shortest Setup Time first.
Whenever a resource is freed, this rule selects for processing the task with the shortest setup
time.
Least Flexible Job first.
This rule is used when there are resources with varying attributes in parallel and the tasks are
subject to resource capability constraints.
Critical Path.
The Critical Path rule is used with tasks subject to precedence constraints. It chooses the next
task as the one at the start of the longest chain of processing times.
Summary
Planning and scheduling problems in engineering projects have many different aspects. For
instance, scheduling problems are never static in practice since the input data is continually
varying. Some tasks are time dependent and it may turn out that a job that is not important today
suddenly becomes important and very critical the following day. Scheduling objectives vary
depending on the stage of the project execution. It is therefore crucial that these objectives are
balanced carefully so as not to undermine the overall project goal.
Given the varied nature of employee personalities, project planners may have differing opinions
regarding the order of tasks. It is therefore imperative that personnel and scheduling problems
are handled well at the initial stages of the projects or as promptly as they arise. Therefore,
scheduling in engineering projects may have to deal with reactive issues as well as both long
term issues and medium term engineering scheduling issues.
Conclusion
In this study, each staff is assumed to have the same capabilities of doing a tasks assigned to
them. A practical scenario would be that every staff has a subset of skills and two or more
personnel may have overlapping skill sets. In such instances, engineering project scheduling is
complex when there are human resources’ constraints. This is made worse when a random
processing approach is adopted. More studies need to be carried out on human resources’
constrained engineering projects to find out the best way arrive at optimized schedule.