Project Scheduling

40
1 Chapter 7 Chapter 7 Project Scheduling and Project Scheduling and Tracking Tracking

Transcript of Project Scheduling

Page 1: Project Scheduling

1

Chapter 7Chapter 7Project Scheduling and Project Scheduling and

TrackingTracking

Page 2: Project Scheduling

2

Project Project SchedulingScheduling

IncludesTask Sets Concept Development Project Tracking

InvolvesDistributes effort across duration of projectAllocates effort to tasks – man hours/man months

Page 3: Project Scheduling

3

ScheduliSchedulingng

Project Manager's Task - schedule project

1. Define all project tasks

2. Build a network depicting dependencies

3. Identify the critical tasks

4. Track progress enduring delays recognized

5. React

Page 4: Project Scheduling

4

Effort Effort DistributionDistribution

Requirements Specification – 40%Coding - 20%Testing an Validation -40%

Page 5: Project Scheduling

5

Why Are Projects Why Are Projects Late?Late? an unrealistic deadline established by an unrealistic deadline established by

someone outside the software someone outside the software development groupdevelopment group

changing customer requirements that are changing customer requirements that are not reflected in schedule changes;not reflected in schedule changes;

an honest underestimate of the amount of an honest underestimate of the amount of effort and/or the number of resources that effort and/or the number of resources that will be required to do the job;will be required to do the job;

predictable and/or unpredictable risks that predictable and/or unpredictable risks that were not considered when the project were not considered when the project commenced;commenced;

Page 6: Project Scheduling

6

Why Are Projects Why Are Projects Late?Late? technical difficulties that could not technical difficulties that could not

have been foreseen in advance;have been foreseen in advance; human difficulties that could not have human difficulties that could not have

been foreseen in advance;been foreseen in advance; miscommunication among project miscommunication among project

staff that results in delays;staff that results in delays; a failure by project management to a failure by project management to

recognize that the project is falling recognize that the project is falling behind schedule and a lack of action behind schedule and a lack of action to correct the problemto correct the problem

Page 7: Project Scheduling

7

Scheduling Scheduling PrinciplesPrinciples

compartmentalization—define distinct compartmentalization—define distinct taskstasks

interdependency—indicate task interdependency—indicate task interrelationships, effort validation—be interrelationships, effort validation—be sure resources are availablesure resources are available

defined responsibilities—people must be defined responsibilities—people must be assignedassigned

defined outcomes—each task must have defined outcomes—each task must have an outputan output

defined milestones—review for qualitydefined milestones—review for quality

Page 8: Project Scheduling

8

Defining Task Defining Task SetsSets

determine type of projectdetermine type of project

1. Concept Development2. New Application3. Application Enhancement4. Application Maintenance5. Reengineering

Page 9: Project Scheduling

9

Defining Task Defining Task SetsSets

assess the degree of rigor requiredassess the degree of rigor requiredidentify adaptation criteriaidentify adaptation criteriacompute task set selector (TSS) valuecompute task set selector (TSS) valueinterpret TSS to determine degree of rigorinterpret TSS to determine degree of rigor

select appropriate software select appropriate software engineering tasksengineering tasks

Page 10: Project Scheduling

10

ExamplExamplee

Figure 7.2 Concept development tasks using an evolutionary model.

Project Definition

I.1 Concept scoping

Concept Development

New ApplicationDevelopmentApplication

EnhancementApplicationMaintenance

I.4 Proof of concept

I.5 Concept implementation

Planning

ReleaseCustomerEvaluation

Engineering/Construction

I.6 Customer reaction

I.2 Preliminary concept planningI.3 Technology risk assessment

Reengineering

Page 11: Project Scheduling

11

Define a Task Define a Task NetworkNetwork

I.1Conceptscoping

I.3aTech. Risk

Assessment

I.3bTech. Risk

Assessment

I.3cTech. Risk

Assessment

Three I.3 tasks areapplied in parallel to3 different conceptfunctions

Three I.3 tasks areapplied in parallel to3 different conceptfunctions

I.4Proof ofConcept

I.5aConcept

Implement.

I.5bConcept

Implement.

I.5cConcept

Implement.

I.2Conceptplanning

I.6CustomerReaction

Integratea, b, c

Page 12: Project Scheduling

12

Effort Effort AllocationAllocation

40-50%40-50%

30-40%30-40%

““front end” activitiesfront end” activities customer communicationcustomer communication analysisanalysis designdesign review and modificationreview and modification

construction activitiesconstruction activities coding or code generationcoding or code generation

testing and testing and installationinstallation

unit, integrationunit, integration white-box, black boxwhite-box, black box regression regression

15-20%15-20%

Page 13: Project Scheduling

13

Use Automated Use Automated Tools toTools to

Derive a Timeline Derive a Timeline ChartChart

I.1.1 Identify need and benefits Meet with customers Identify needs and project constraints Establish product statement Milestone: product statement definedI.1.2 Define desired output/control/input (OCI) Scope keyboard functions Scope voice input functions Scope modes of interaction Scope document diagnostics Scope other WP functions Document OCI FTR: Review OCI with customer Revise OCI as required; Milestone; OCI definedI.1.3 Define the functionality/behavior Define keyboard functions Define voice input functions Decribe modes of interaction Decribe spell/grammar check Decribe other WP functions FTR: Review OCI definition with customer Revise as required Milestone: OCI defintition completeI.1.4 Isolate software elements Milestone: Software elements definedI.1.5 Research availability of existing software Reseach text editiong components Research voice input components Research file management components Research Spell/Grammar check components Milestone: Reusable components identifiedI.1.6 Define technical feasibility Evaluate voice input Evaluate grammar checking Milestone: Technical feasibility assessedI.1.7 Make quick estimate of sizeI.1.8 Create a Scope Definition Review scope document with customer Revise document as required Milestone: Scope document complete

week 1 week 2 week 3 week 4Work tasks week 5

Page 14: Project Scheduling

14

Pert, CPM, and Pert, CPM, and GanttGantt

Taken from "A Professional's Guide to Systems Analysis", Taken from "A Professional's Guide to Systems Analysis", Martin E. Modell, 2nd. Ed. McGraw Hill, 1996. Martin E. Modell, 2nd. Ed. McGraw Hill, 1996.

Previous StepsPrevious Steps

Before attempting to use these tools, the Before attempting to use these tools, the project's information must be assembled project's information must be assembled properly. The project planning process and properly. The project planning process and resulting Perts, CPM, and Gantts consists of the resulting Perts, CPM, and Gantts consists of the following: following:

Page 15: Project Scheduling

15

Pert, CPM, and Pert, CPM, and GanttGantt

1.1.Setting the project start date Setting the project start date 2.2.Setting the project completion date Setting the project completion date 3.3.Selecting the project methodology or Selecting the project methodology or

project life cycle to be used project life cycle to be used 4.4.Determining the scope of the project in Determining the scope of the project in

terms of the phases of the selected terms of the phases of the selected project methodology or project life project methodology or project life cycle cycle

5.5.Identifying or selecting the project Identifying or selecting the project review methods to be used review methods to be used

Page 16: Project Scheduling

16

Pert, CPM, and Pert, CPM, and GanttGantt

6. Identifying any predetermined interim milestone or 6. Identifying any predetermined interim milestone or other critical dates which must be met. other critical dates which must be met.

7.7. Listing tasks, by project phase, in the order in which Listing tasks, by project phase, in the order in which they might be accomplished. they might be accomplished.

8.8. Estimating the personnel necessary to accomplish Estimating the personnel necessary to accomplish each task each task

9.9. Estimating the personnel available to accomplish each Estimating the personnel available to accomplish each task task

10.10.Determining skill level necessary to perform each task Determining skill level necessary to perform each task 11.11. Which tasks can be done in parallelWhich tasks can be done in parallel12.12. Which tasks require the completion of other tasks Which tasks require the completion of other tasks

before they can startbefore they can start

Page 17: Project Scheduling

17

Pert, CPM, and Pert, CPM, and GanttGantt

Project control or review points Project control or review points Performing project cost estimation Performing project cost estimation

and cost-benefit analysis and cost-benefit analysis Construct a WBS Work Breakdown Construct a WBS Work Breakdown

StructureStructure

Page 18: Project Scheduling

18

Pert, CPM, and Pert, CPM, and GanttGantt

Work breakdown StructuresWork breakdown Structures The development of a project plan is The development of a project plan is

predicated on having a clear and detailed predicated on having a clear and detailed understanding of :understanding of :

the tasks involved,the tasks involved, the estimated length of time each task will take, the estimated length of time each task will take, the dependencies between those tasks,the dependencies between those tasks, and the sequence tasks have to be performed. and the sequence tasks have to be performed.

Page 19: Project Scheduling

19

Pert, CPM, and Pert, CPM, and GanttGantt

A definitionA definition AAwork breakdown structurework breakdown structure(WBS) is a (WBS) is a

hierarchic decomposition or breakdown of a hierarchic decomposition or breakdown of a project or major activity into successive project or major activity into successive levels, with each level a finer breakdown of levels, with each level a finer breakdown of the preceding one. In final form a WBS is very the preceding one. In final form a WBS is very similar in structure and layout to a document similar in structure and layout to a document outline. Each item at a specific level of a WBS outline. Each item at a specific level of a WBS is numbered consecutively (e.g., 10, 10, 30, is numbered consecutively (e.g., 10, 10, 30, 40, 50 ). Each item at the next level is 40, 50 ). Each item at the next level is numbered within the number of its parent numbered within the number of its parent item (e.g., 10.1, 10.2, 10.3, 10.4). item (e.g., 10.1, 10.2, 10.3, 10.4).

Page 20: Project Scheduling

20

Pert, CPM, and Pert, CPM, and GanttGantt

The WBS may beThe WBS may be drawn in a diagrammatic form (if automated tools are drawn in a diagrammatic form (if automated tools are

available) oravailable) or in a chart resembling an outline. in a chart resembling an outline.

The WBS begins with a single overall task The WBS begins with a single overall task representing the totality of work to be performed representing the totality of work to be performed

This becomes the name of the project plan WBS. This becomes the name of the project plan WBS. Using a process model (methodology) or SDLC Using a process model (methodology) or SDLC

software development life cycle (analysis, design software development life cycle (analysis, design and implementation) steps as a guide, the project and implementation) steps as a guide, the project is divided into its major steps or phases. is divided into its major steps or phases.

Page 21: Project Scheduling

21

Pert, CPM, and Pert, CPM, and GanttGantt

The PhasesThe Phases first phase is project initiation; first phase is project initiation; the second major phase is analysis, the second major phase is analysis, followed by design, followed by design, construction,construction, testing, testing, implementation, and implementation, and post-implementation follow-up.post-implementation follow-up. Each of these phases must be broken in their next level of Each of these phases must be broken in their next level of

detail, and each of those, into still finer levels of detail, detail, and each of those, into still finer levels of detail, until a manageable task size is arrived at. until a manageable task size is arrived at.

Page 22: Project Scheduling

22

Pert, CPM, and Pert, CPM, and GanttGantt The first WBS level for the life cycle would be: The first WBS level for the life cycle would be:

WBS numberWBS number Task DescriptionTask Description 1.01.0 Project initiationProject initiation 1.11.1 Draft project planDraft project plan 2.02.0 Analysis phaseAnalysis phase 2.12.1 Plan user interviewsPlan user interviews 2.22.2 Schedule users interviewsSchedule users interviews 3.03.0 Examination and testExamination and test 4.04.0 DesignDesign 5.05.0 TestTest 6.06.0 ImplementationImplementation 7.07.0 Postimplementation reviewPostimplementation review

Page 23: Project Scheduling

23

Pert, CPM, and Pert, CPM, and GanttGantt

Tasks at each successively finer level of detail Tasks at each successively finer level of detail are numbered to reflect the task from which are numbered to reflect the task from which they were derived. they were derived.

Thus, the first level of tasks would be numbered Thus, the first level of tasks would be numbered 1.0, 2.0, 3.0, and so forth. Each of their subtasks 1.0, 2.0, 3.0, and so forth. Each of their subtasks would have a two part number: the first part would have a two part number: the first part reflecting the parent task and the second part, reflecting the parent task and the second part, the subtask number itslef, such as 1.1, 1.2, or the subtask number itslef, such as 1.1, 1.2, or 1.3. 1.3.

As each of these, in turn, decomposed or broken As each of these, in turn, decomposed or broken down into its component tasks, each component down into its component tasks, each component receives a number comprised of it's parent receives a number comprised of it's parent number plus a unique number of its own. number plus a unique number of its own.

Page 24: Project Scheduling

24

Pert, CPM, and Pert, CPM, and GanttGantt

A definitionA definition AA manageable task manageable task is one in which the: is one in which the:

expected results can be easily identified; expected results can be easily identified; success, failure, or completion of the task success, failure, or completion of the task

can be easily ascertained; can be easily ascertained; the time to complete the task can be the time to complete the task can be

easily estimated; andeasily estimated; and resource requirements of the task can be resource requirements of the task can be

easily determined. easily determined.

Page 25: Project Scheduling

25

Pert, CPM, and Pert, CPM, and GanttGantt

Program Evaluation and Review Technique (PERT)Program Evaluation and Review Technique (PERT)

PERT charts depict task, duration, and dependency. PERT charts depict task, duration, and dependency.

Each chart starts with an Each chart starts with an initiation nodeinitiation node from which the from which the first task, or tasks, originates. first task, or tasks, originates.

If If multiple tasksmultiple tasks begin at the same time, they are all begin at the same time, they are all started from the node or branch, or fork out from the started from the node or branch, or fork out from the starting point. starting point.

Page 26: Project Scheduling

26

Pert, CPM, and Pert, CPM, and GanttGantt

Each Each task is represented by a linetask is represented by a line which which states its name or other identifier, its states its name or other identifier, its duration, the number of people assigned to duration, the number of people assigned to it, and in some cases the initials of the it, and in some cases the initials of the personnel assigned. Tpersonnel assigned. T

The other end of the task line is terminated The other end of the task line is terminated by another by another node which identifies the start of node which identifies the start of another taskanother task, or the beginning of any slack , or the beginning of any slack time, that is, waiting time between tasks. time, that is, waiting time between tasks.

Page 27: Project Scheduling

27

Pert, CPM, and Pert, CPM, and GanttGantt

Each Each task is connected to its successortask is connected to its successor tasks in this manner forming a network tasks in this manner forming a network of nodes and connecting lines. The of nodes and connecting lines. The chart is complete when all final tasks chart is complete when all final tasks come together at the completion node. come together at the completion node.

When When slack timeslack time exists between the exists between the end of one task and the start of end of one task and the start of another, the usual method is to draw a another, the usual method is to draw a broken or dotted linebroken or dotted line between the end between the end of the first task and the start of the of the first task and the start of the next dependent task. next dependent task.

Page 28: Project Scheduling

28

Pert, CPM, and Pert, CPM, and GanttGantt

A PERT chart A PERT chart may have multiple may have multiple parallel or interconnecting networksparallel or interconnecting networks of tasks. of tasks.

If the scheduled project has If the scheduled project has milestones, checkpoints, or review milestones, checkpoints, or review pointspoints (all of which are highly (all of which are highly recommended in any project recommended in any project schedule), the PERT chart will note schedule), the PERT chart will note that all tasks up to that point that all tasks up to that point terminate at the review node. terminate at the review node.

Page 29: Project Scheduling

29

Pert, CPM, and Pert, CPM, and GanttGantt

It should be noted at this point It should be noted at this point that the that the project review, approvals, project review, approvals, user reviewsuser reviews, and so forth , and so forth all take all take timetime. . This time should never be underestimated This time should never be underestimated

when drawing up the project plan. It is not when drawing up the project plan. It is not unusual for a review to take 1 or 2 weeks. unusual for a review to take 1 or 2 weeks.

Obtaining management and user Obtaining management and user approvals may take even longer. approvals may take even longer.

Page 30: Project Scheduling

30

Pert, CPM, and Pert, CPM, and GanttGantt

When drawing up the plan, be sure When drawing up the plan, be sure to to include tasks for documentation include tasks for documentation writing, documentation editing, writing, documentation editing, project report writing and editing, project report writing and editing, and report reproductionand report reproduction. .

These These taskstasks are usually are usually time-time-consumingconsuming, so don't underestimate , so don't underestimate how long it will take to complete how long it will take to complete them. them.

Page 31: Project Scheduling

31

Pert, CPM, and Pert, CPM, and GanttGantt

PERT charts are usually drawn on PERT charts are usually drawn on ruled paperruled paper with the horizontal axis indicating time with the horizontal axis indicating time period divisions in days, weeks, months, …. period divisions in days, weeks, months, ….

While it is possible to draw a PERT chart for While it is possible to draw a PERT chart for an entire project, the usual practice is to an entire project, the usual practice is to break the plans into smallerbreak the plans into smaller, parts. , parts.

This is very helpful if the chart has to be redrawn for any This is very helpful if the chart has to be redrawn for any reason, such as skipped or incorrectly estimated tasks. reason, such as skipped or incorrectly estimated tasks.

Many PERT charts terminate at the major review points, such Many PERT charts terminate at the major review points, such as at the end of the analysis. as at the end of the analysis.

Page 32: Project Scheduling

32

Pert, CPM, and Pert, CPM, and GanttGantt

Many organizations include Many organizations include funding funding reviewsreviews in the projects life cycle. Where in the projects life cycle. Where this is the case, each chart terminates in this is the case, each chart terminates in the funding review node. the funding review node. Funding reviewsFunding reviews can affect a project in that they may can affect a project in that they may

either increase funding, in which case more people either increase funding, in which case more people have to made available, or they may decrease have to made available, or they may decrease funding, in which case fewer people may be available. funding, in which case fewer people may be available.

Obviously more or less people will affect the length of Obviously more or less people will affect the length of time it takes to complete the project. time it takes to complete the project.

Page 33: Project Scheduling

33

Pert, CPM, and Pert, CPM, and GanttGantt

Critical Path Method (CPM)Critical Path Method (CPM)

Critical Path Method (CPM) charts are Critical Path Method (CPM) charts are similar to PERTsimilar to PERT charts and are charts and are sometimes known as PERT/CPM. sometimes known as PERT/CPM.

In a CPM chart, the In a CPM chart, the critical pathcritical path is is indicated. indicated.

A critical path consists that set of A critical path consists that set of dependent tasks (each dependent on dependent tasks (each dependent on the preceding one) which together the preceding one) which together take thetake the longest time to completelongest time to complete. .

Page 34: Project Scheduling

34

Pert, CPM, and Pert, CPM, and GanttGantt

Although it is not normally done, a Although it is not normally done, a CPM CPM chart can define multiple, equally critical chart can define multiple, equally critical pathspaths. .

TasksTasks which fall which fall onon the the critical pathcritical path should be noted in some way, so that should be noted in some way, so that they may be given they may be given special attentionspecial attention. .

One way is to draw critical path tasks One way is to draw critical path tasks with a with a double linedouble line instead of a single line. instead of a single line.

Page 35: Project Scheduling

35

Pert, CPM, and Pert, CPM, and GanttGantt

TasksTasks which fall on the which fall on the critical pathcritical path should receive special attention by both should receive special attention by both the the project manager and the personnelproject manager and the personnel assigned to them. assigned to them.

The critical path for any given method The critical path for any given method may shift as the project progresses; this may shift as the project progresses; this can happen when tasks are completed can happen when tasks are completed either behind or ahead of schedule, either behind or ahead of schedule, causing other tasks which may still be causing other tasks which may still be on schedule to fall on the new critical on schedule to fall on the new critical pathpath. .

Page 36: Project Scheduling

36

Pert, CPM, and Pert, CPM, and GanttGantt

GANTT ChartsGANTT Charts

A Gantt chart is a A Gantt chart is a matrix which lists on matrix which lists on the vertical axisthe vertical axis all the tasks to be all the tasks to be performed. performed.

headed by columns indicating headed by columns indicating estimated task durationestimated task duration, , skill levelskill level needed to perform the task, and the needed to perform the task, and the name of the name of the person assignedperson assigned to the to the task, followed by task, followed by one column for each one column for each periodperiod in the project's duration. in the project's duration.

Page 37: Project Scheduling

37

Pert, CPM, and Pert, CPM, and GanttGantt

GANTT ChartsGANTT Charts Each period may be expressed Each period may be expressed

in hours, days, weeks, months, in hours, days, weeks, months, and other time units. and other time units.

In some cases it may be In some cases it may be necessary to label the period necessary to label the period columns as period 1, period 2, columns as period 1, period 2, and so on. and so on.

Page 38: Project Scheduling

38

Pert, CPM, and Pert, CPM, and GanttGantt

The graphics portion of the Gantt chart The graphics portion of the Gantt chart consists of a consists of a horizontal bar for each taskhorizontal bar for each task connecting the period start and period connecting the period start and period ending columns. ending columns.

A A set of markers is usually used to indicate set of markers is usually used to indicate estimated and actual start and endestimated and actual start and end. .

Each bar on a separate line, and the name Each bar on a separate line, and the name of each person assigned to the task is on a of each person assigned to the task is on a separate lineseparate line..

Page 39: Project Scheduling

39

Pert, CPM, and Pert, CPM, and GanttGantt

In many cases when this In many cases when this type of project plantype of project plan is is used, a blank row is left between tasks. used, a blank row is left between tasks.

When the project is under way, this row is used When the project is under way, this row is used to indicate progress, indicated by a second bar to indicate progress, indicated by a second bar which starts in the period column when the task which starts in the period column when the task is actually started and continues until the task is is actually started and continues until the task is actually completed. actually completed.

Comparison between estimated start and end Comparison between estimated start and end and actual start and end should indicate project and actual start and end should indicate project status on a task-by-task basisstatus on a task-by-task basis. .

Page 40: Project Scheduling

40

Pert, CPM, and Pert, CPM, and GanttGantt

VariantsVariants of this method include a lower chart of this method include a lower chart which shows personnel allocations on a which shows personnel allocations on a person-by-person basis. For this section the person-by-person basis. For this section the vertical axis contains the number of people vertical axis contains the number of people assigned to the project, and the columns assigned to the project, and the columns indicating task duration are left blank, as is indicating task duration are left blank, as is the column indicating person assigned. The the column indicating person assigned. The graphics consists of the same bar notation as graphics consists of the same bar notation as in the upper chart indicates that the person in the upper chart indicates that the person is working on a task. The value of this lower is working on a task. The value of this lower chart is evident when it shows slack time for chart is evident when it shows slack time for the project personnel, that is, times when the project personnel, that is, times when they are not actually working on any project.they are not actually working on any project.