• No results found

ELEMENTS OF PROJECT SCHEDULING

PROJECT PLANNING AND MANAGEMENT AND CPM

ELEMENTS OF PROJECT SCHEDULING

In this section basic elements of project scheduling are introduced and described briefly. Essentially, there are four major steps in the preparation of a schedule:

8. Creating the work breakdown structure where the total work needed for the project is divided into recognizable and logical chunks of work called tasks.

9. Assigning resources to the tasks and estimating their durations.

10. Specifying scheduling constraints, which can be resource constraints or logic constraints between the tasks.

11. Generating the optimal schedule by using an algorithm to appropriately sequence and time each task in the project.

4.4.1 Tasks

A task is a well-defined job or activity that consumes resources and requires time for its completion. A task is distinguished from other tasks by its resource requirements (labor and equipment, collectively known as crew), material requirements, and goal. Each task in a project is given a unique identification and a title that briefly describes its goal or work. In many construction industries, common recurring tasks that have well- defined goals and resource and material requirements are predefined and documented in manuals of construction practice. For example, compaction where self-propelled pneumatic rollers are used will be considered a different task than the one where manual compactors are used. In this example, a different set of labor and equipment mandates that a different task be defined so that each can be scheduled independently, even though the two tasks have the same goal. Work that can be scheduled independently must be defined as separate tasks to ensure that the resulting schedules are the most efficient.

A task may be non-repetitive or repetitive. A task is repetitive if the same job or activity is performed at different times and/or at different locations. Each part of the repetitive task, called a segment of work, utilizes the same resources and has the same qualitative goal. Modeling a task as repetitive rather than a set of non-repetitive tasks has several advantages such as control over continuity of work, use of multiple-crew strategies, distance and time modeling of work, and reduction in schedule complexity. Examples of repetitive tasks include construction of floors in a highrise building project and resurfacing operation in a highway rehabilitation project.

A task i, or a segment of work in a repetitive task identified by i, is completely defined for scheduling purposes by the start time of the task denoted by Ti and the duration of task denoted by Di. The finish time

is then given by Ti+Di. The durations are input values estimated from a consideration of the resources

allocated to the task and the job conditions, whereas the start times are determined by the scheduling algorithm.

4.4.2

Work Breakdown Structure

The first task in the preparation of a schedule is the breakdown of the project’s work into smaller chunks. Each of these chunks of work represents a fraction of the entire project’s work. Collectively the chunks of work must capture all the project’s work without any omissions. This completeness of work is the first basic

requirement for an accurate work breakdown. The second basic requirement is that the divisions of work be well defined or, in other words, be classified as tasks. Thus, the division of work cannot be arbitrary but has to follow the definition of tasks so that practically meaningful divisions are produced.

The division of a project’s work into tasks is not well defined and different schedulers may come up with different sets of tasks. If a manual of construction practice is available for that particular type of project then the scheduler can use the predefined tasks in the manual if they match with any of the project’s work. Effective work breakdown into tasks requires good experience of construction methodology and practice. The general procedure for doing this is to start with the project’s goal and successively sub-divide it into sub-goals until a set of goals are obtained that can be defined as tasks. When represented graphically this procedure produces a hierarchical structure called a work breakdown structure (Figure 4.7) (Naylor, 1995). Each node represents a goal whereas its child nodes represent sub-goals that are collectively equivalent to the parent’s goal. The top node in the hierarchy represents the overall project goal and the leaf nodes represent the goals or tasks into which the project has been divided for scheduling purposes.

When should a scheduler stop further subdivisions of work? There are two general rules for this, both requiring an understanding of the construction process. First, the leaf nodes must represent a task; that is, they constitute a chunk of work that is commonly considered in construction practice as a unit with a specific goal. Second, the subdivision should be carried to such an extent that no important scheduling constraint is lost. That is, a task should be subdivided if an important constraint applies to only a portion of the task’s work. If no such constraint exists then there is no need to further subdivide, as this will only increase the complexity of the schedule without increasing accuracy. Figure 4.8a shows a simple work breakdown structure for the construction of a building. Only two tasks are identified: construction of the substructure and construction of the superstructure. This, however, is not an accurate work breakdown as several important constraints that influence work within each task are lost. Figure 4.8b shows a more detailed work breakdown structure where the substructure construction task has been subdivided further. This breakdown is more effective because, for example, the constraint that excavation should occur before laying the foundation can be modeled.

For repetitive tasks the work is further subdivided into work crews and segments of work assigned to each crew. The breakdown of repetitive tasks will be described further in Chapter 5.

4.4.3

Scheduling Constraints

The tasks constituting a project cannot be executed in any arbitrary order but are constrained by “natural” work ordering, construction methodology, practical feasibility, and resource availability. These constraints are either specified between two tasks or between one or more tasks and an absolute value. Scheduling constraints should be specified with great care. Specifying an unnecessary constraint that does not exist in reality or omitting an important constraint in the model can completely invalidate the scheduling results. An understanding of the construction procedures in practice is therefore essential.

Scheduling constraints can be grouped under three headings, described in the following paragraphs. Logic Constraints

Logic constraints are specified between two tasks so that one task precedes or follows another task in time. These constraints, also known as precedence relationships, are based on either the start or the finish time of

Figure 4.8 Work breakdown for building construction project: (a) An inadequate breakdown, and (b) An adequate subdivision of substructure construction

the two tasks. As such, four types of relationships are possible: finish-to-start (FS), start-to-start (SS), finish- to-finish (FF), and start-to-finish (SF). Mathematically, these constraints are expressed by inequality constraints as follows:

Finish-to-start (FS) Start-to-start (SS) Finish-to-finish (FF) Start-to-finish (SF)

In these equations, the indices i and j refer to the preceding and following tasks, respectively, and L is the time lags/leads or slack times allowed in the constraint. In words, the finish-to-start relationship, for example, means that task j can only start after L time units before (if L is negative, i.e., it is a lag) or after (if L is positive, i.e., it is a lead) the completion of task i. As an example, a finish-to-start relationship exists between the task “site clearing” and the task “site office construction.” Even when no explicit logic constraint is specified between two tasks one may exist by virtue of constraints specified between other tasks. For example, if an FS relationship exists between tasks A and B and between tasks B and C, then an FS constraint is implied between tasks A and C. The scheduler has to be careful while specifying logic constraints so that no non-existent constraints are introduced.

Absolute Constraints

An absolute constraint specifies a time constraint on the finish and/or start time of a task. An absolute constraint is commonly specified on all the tasks to ensure that they end before the project completion date/ time. Mathematically, this can be written as

where Dmax is the maximum project duration. Absolute constraints can also be specified at intermediate

stages of the project when completion of some tasks is desired at certain times. These times represent milestone or time points in the project’s progress.

Buffer Constraints

Buffer constraints are specified between two tasks to ensure that a minimum buffer is maintained between them throughout their execution. The buffer may be a time buffer or a distance buffer. For example, a time buffer is needed between the laying of a pipeline and back filling the trench to allow time for concrete anchors to cure. Buffer constraints are most useful in modeling repetitive tasks. They will be described further in Chapter 5 where the new scheduling model is presented.