18
Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Embed Size (px)

Citation preview

Page 1: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Creating a Schedule Using Network Diagrams;Defining Task Durations

Lecture Packet 8

© John Brackett

Page 2: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Verzuh’s Overview of Project Planning

• Step 1: Develop WBS• Step 2: Sequence the tasks • Step 3: Estimate the tasks to

get a duration(work packages)

• Step 4: Calculate an initial schedule

• Step 5: Assign resources and iterate

• Step 6: Develop budget

Page 3: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Network Diagram for a Software Project

Start

Require-ments

Design

TestDrivers

TestPlan

Code

Document

ProductTest

Finish

A sequence constraint:the Requirements task must be complete

before the Test Plan task can start

Milestone Milestone

Test Plan and Design are potentially concurrent tasks

Page 4: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Sequence the Tasks Using a Network Diagram

• A network diagram shows the order in which tasks are to be performed Two network diagrams for the same tasks (from Verzuh p. 155)

Why is the second diagram inconsistent with the Predecessor Table?”

Page 5: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Guidelines for Creating a Network Diagram

• Seek maximum concurrency in the network diagram for scheduling flexibility

• Define task relationships only between tasks– Summary tasks are groups of tasks, and each task can have

different sequence constraints– If a task has no predecessor task, it can start at any point in

the project, as long as it is meets its finish date

• Task relationships should only reflect sequence constraints, not resource constraints– We may want to perform “what if” analysis on the network

diagram with different staffing options– Resource constraints can be imposed later before building an

initial schedule

Page 6: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Network Diagram with Calculated Durations

(6,8)

Start

Require-ments3 mo.

Design4 mo.

TestDrivers3 mo.

TestPlan2 mo.

Code4 mo.

Document2 mo.

ProductTest

4 mo.

Finish

(0,3)

(4,7)

(4,5)

(8,9)

(8,11)

(12,15)

(15,15)(0,0)

Key assumptions:task durations and sequence constraints are known

Duration

(Start, Finishmonth)

Task Duration = Time from task start until task completion

Page 7: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Network Diagram with Slack Time

(6,8)

Start

Require-ments3 mo.

Design4 mo.

TestDrivers3 mo.

TestPlan2 mo.

Code4 mo.

Document2 mo.

ProductTest

4 mo.

Finish

(0,3)

(4,7)

(4,5)

(8,9)

(8,11)

(12,15)

(15,15)(0,0)

Slack time = 6 months

Slack time =3 months

(Start, Finishmonth)

Some tasks have flexibility in when they can be performed

Test Drivers could be started as much as 3 months after Test Plan is completed (the slack time)

Page 8: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Using Slack Time

(6,8)

Start

Require-ments3 mo.

Design4 mo.

TestDrivers3 mo.

TestPlan2 mo.

Code4 mo.

Document2 mo.

ProductTest

4 mo.

Finish

(0,3)

(4,7)

(4,5)

(8,9)

(8,11)

(12,15)

(15,15)(0,0)

Slack time = 6 months

Slack time =3 months

(Start, Finishmonth)

If 2 persons could do the Test Drivers in 3 months, how many people are needed to complete them before Product Test starts?

If the 2 people were not availablewhen the Test Plan was completed,how late could they start without delaying the project?

Page 9: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

How Do We Get the Duration Values?

• Option 1: Pick “reasonable” duration values for each task and let Project calculate the completion date Issue: does the project finish at a date acceptable to the stakeholders?

• Option 2: Pick the promised project finish date and work backwards, picking task durations compatible with the finish dateIssue: can the development team meet the task durations?

• Option 3: calculate the labor estimate (the work) for the task Work = (number of people) * (length of time on the task)and then calculate the duration as a f(staff size)– Assumption: we have many options of who works on the task and for

how long, but the work content of the task is fixed.

Page 10: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Network Diagram Showing Critical Path

(6,8)

Start

Require-ments3 mo.

Design4 mo.

TestDrivers3 mo.

TestPlan2 mo.

Code4 mo.

Document2 mo.

ProductTest

4 mo.

Finish

(0,3)

(4,7)

(4,5)

(8 ,9)

(8,11)

(12,15)

(15,15)(0,0)

Critical Path is a path in the network diagram with no slack time

Duration

(Start, Finishmonth)

Slack time =3 months

Slack time =3 months

Slack time = 6 months

Page 11: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Critical Path Analysis Helps Answer These Scheduling Questions

• What is the latest time we can start a task without impacting the project finish date?

• What tasks, if delayed, will result in a delay to the project completion date?

• What tasks must be shortened if the project is to be shortened?

Page 12: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Characteristics of the Critical Path

• The critical path specifies the minimum length of the project, given– the durations of the tasks on the critical path– the constraints in the network diagram

• If any task on the critical path is delayed, the finish date of the project will be delayed

• The ways to shorten the project are:– to reduce the duration of some of the tasks on the critical

path (add more people?)– to find more parallelism among the tasks (reduce the

constraints in the network diagram)

Page 13: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Creating a Plan for an EDL Phase

• Start with list of a phase’s additional functions as prioritized by the stakeholders

• The key question is: what functionality can be delivered with high certainty in the phase length (90-120 days)?

DO UNTIL all tasks can be done within the phase length• Determine the dependencies among tasks for the phase• Seek maximum parallelism among the tasks• Estimate the resources required for each task• Recalculate task durations• If length of critical path > phase length• THEN remove tasks for implementing lower-priority functions

END DO

Page 14: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Summary of the Steps in Creating the WBS

1. Enumerate all the deliverables to stakeholders external to the project team– Specify the stakeholders who are expected to “accept” the

external deliverables

2. Develop a Level 1 “deliverable-oriented” WBS for the project based upon the external deliverables

3. Include at Level 1 the jobs that are essential to producing multiple deliverables , such as:

Requirements definitionArchitectural design

4. Include at Level 1 the functions that occur throughout the project

Project managementQuality assurance

Page 15: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Summary of the Steps in Creating the WBS, Part 2

5. Insert at Level 1 the external milestones by which the accepting stakeholders can track progress towards completing the deliverables– Write a one or two sentence completion criterion (in Notes field)

for each external milestones – External milestones (including deliverable completion milestones)

must be included with:• Average interval on a > 6 month project: one per month • Average interval on a 3 month project: one every two weeks

6. Detail each Level 1 summary task into Level 2 information

7. Insert the internal milestones into the WBS

8. Develop the lower-level decomposition as required toachieve the required detail (based upon task size)

Page 16: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Why Not Build an Activity-Oriented Work Breakdown Structure?

Develop and Install Fashionland System Nationwide 1.0 project management 2.0 quality assurance 3.0 requirements definition 4.0 software design

4.1 design of user system interface 4.2 design of POS system

5.0 code and unit test 6.0 software integration 7.0 document and install 8.0 conduct store and headquarters training

Page 17: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Comparing the Two Representations

Page 18: Creating a Schedule Using Network Diagrams; Defining Task Durations Lecture Packet 8 © John Brackett

Activity Versus Deliverable-oriented WBS?

• Either WBS approach can represent the project

• A deliverable-oriented WBS focuses attention on what must be produced, an activity-oriented WBS focuses attention on what is being done

• A deliverable-oriented WBS facilitates tracking the work completed on your project

• A deliverable-oriented WBS is more understandable to higher-level management

• A deliverable-oriented WBS enables cost estimating and cost reporting by deliverable

See article: “Making Software Development More Controllable” in the web site Readings area