39
Scheduling Diagrams Syed Saqib Raza Rizvi Lecture Final 1 and 2

Software Project Scheduling Diagrams

Embed Size (px)

Citation preview

Page 1: Software Project Scheduling Diagrams

Scheduling Diagrams

Syed Saqib Raza RizviLecture Final 1 and 2

Page 2: Software Project Scheduling Diagrams

Project Network Diagram:• Pictorial representation of project schedule• A network diagram in project management is useful for planning and tracking

the project from beginning to finish.• A project network is a graph (flow chart) depicting the sequence in which a

project's terminal elements are to be completed by showing terminals elements and their dependencies. • It is always drawn from left to right to reflect project chronology.

Page 3: Software Project Scheduling Diagrams

Project Network Diagram:• The work breakdown structure or the product breakdown

structure show the "part-whole" relations. • In contrast, the project network shows the "before-after" relations.• The most popular form of project network diagram is Activity on

Node (“AON” as shown in previous slide).• The other one is Activity on Arrow (“AOA”)• Project dependencies can also be depicted by a predecessor table.• Although such a form is very inconvenient for human analysis

Page 4: Software Project Scheduling Diagrams
Page 5: Software Project Scheduling Diagrams

Activity on Node Example:• Activity-on-node is a project management term that refers to

a precedence diagramming method which uses boxes to denote schedule activities.• These various boxes or “nodes” are connected from beginning to end

with arrows to depict a logical progression of the dependencies between the schedule activities.• Typically, an activity-on-node diagram will be designed to show which

activities must be completed in order for other activities to commence.• This is referred to as “finish-to-start” precedence – meaning one

activity must be finished before the next one can start.

Page 6: Software Project Scheduling Diagrams

Predecessor Relationships for Software DevelopmentActivity Identifier Code Activity Description Immediate Predecessors

1 Requirement Engineering None

2 Feasibility Report None

3 Planning None

4 Architecture Design 1

5

6

ROI

Team Management

2 , 3

3

7 Low level Design 4

8

9

10

11

12

UI Design

Payment Plan

Code and Development

White Box Testing

Acceptance Testing

4

5

7 , 8

10

11

Page 7: Software Project Scheduling Diagrams

Activity on Node Example:• Predecessor activity and Successor activity • An activity-on-node diagram can be used to provide a visual

representation of the network logic of an entire project schedule.

Start

Requirement Engineering

Feasibility Report

Architecture Design

ROI

Team Management

Low-level Design

User Interface Design

Code & Development

Payment Plan

White Box Testing

END

Planning Acceptance TestingLeaf

Page 8: Software Project Scheduling Diagrams

Activity on Node Example:The condition for a valid project network is that it doesn't contain any circular references.

Activity 1

Activity 2

Activity 3

Activity 4

Page 9: Software Project Scheduling Diagrams

Activity on Arrow Example:• ADM is used for scheduling activities in a project plan.

Page 10: Software Project Scheduling Diagrams

Project Network Diagram:• It represents a project’s critical path as well as the scope for the

project.• Using the arrow and node method, you can depict project

dependencies.

Page 11: Software Project Scheduling Diagrams

Critical Path Method:• Critical path method is one of the frequently used techniques in project planning. • A typical project has many tasks involving lots of different people so project

managers have a hard time keeping track of things.• It is far too easy for certain activities to fall behind.• These forgotten tasks and errors in planning can severely affect the time scale of

the whole project.• A late project will cost money and lead to non-satisfied customers.• Critical path method helps managers figure out two very important things:1. How long it will take to complete the project2. what are the critical tasks that must be completed before starting other dependent tasks.

Page 12: Software Project Scheduling Diagrams

Critical Path Method:• The best way for project managers to avoid poor planning is to

incorporate the critical path method in their diagrams.• Having this as a diagram makes it easy to visualize the important tasks

of a project. • The main aim is to produce a visual of the entire project broken down

into smaller activities which are vital to the completion of the entire project.• All of the activities which are added onto the network diagram are

ones which have to be completed on time. • By adding them on to a diagram it is possible to see how long each

section will take.

Page 13: Software Project Scheduling Diagrams

Critical Path Method:The benefits of applying each of the set time critical and essential activities to a diagram include:

• Predicating the time each activity will take and offering a timescale to the client• Seeing how each section is important to the progress of the rest of

the plan• Assigning the right team and department to their corresponding tasks

Page 14: Software Project Scheduling Diagrams

Critical Path Method: MOST LIKELY TIME

Page 15: Software Project Scheduling Diagrams

Critical Path Method: MOST LIKELY TIME

Page 16: Software Project Scheduling Diagrams

Critical Path Method: MOST LIKELY TIME• The team’s job is to take note of which of the nodes D, E, and F, will

be taking the most amount of time, and which of those nodes is expected to take the least amount of time. • This is essential when creating the Critical Path.• Nodes A, B, and C run in series, so the critical path is straightforward.

Page 17: Software Project Scheduling Diagrams

Critical Path Method: MOST LIKELY TIME• Notice that between the three nodes that run in parallel, (nodes D, E,

and F) node D is expected to take the longest to complete as compared to the other two nodes.

• The line above shows the critical path. By looking at the Activity Network Diagram the team can easily see that the expected completion time as defined by the critical path is 50 days. (5+2+12+9+10+7+5 = 50 days) That’s the MOST LIKELY time.

Page 18: Software Project Scheduling Diagrams

Critical Path Method: Optimistic Time• The team might want to know what the best case (Optimistic Time),

in terms of time, would be. To come up with that number, the team would decide upon the shortest possible time for each of the nodes, and then add those up. The numbers in parenthesis are the most optimistic times. (4+2+10+8+8+7+4 = 43)

Page 19: Software Project Scheduling Diagrams

Critical Path Method: Pessimistic Time• The team also might want to know what the worst case (Pessimistic

Time), in terms of time, would be. To come up with that number, the team would decide upon the longest possible time for each of the nodes, and then add those up. Note: To determine the best case or the worst case, the critical path line must be followed. The numbers in parentheses are the most pessimistic times.(7+3+14+10+11+8+6 = 59) .

Page 20: Software Project Scheduling Diagrams

Critical Path Method: Expected Time• Expected Time:

Page 21: Software Project Scheduling Diagrams

Critical Path Method: Control Bands• Control Bands:

50.3 + 2.7 = 53 on the high side50.3 – 2.7 = 47.6 on the low side.For the critical path, we can expect the project to take from 47.6 days to 53.0 days.

Page 22: Software Project Scheduling Diagrams

PERT Chart:• PERT stands for Program Evaluation Review Technique, a

methodology developed by the U.S. Navy in the 1950s to manage the Polaris submarine missile program• A PERT chart is a project management tool used to schedule,

organize, and coordinate tasks within a project. • Most popular in the fields of business management and quality

control

Page 23: Software Project Scheduling Diagrams
Page 24: Software Project Scheduling Diagrams

Gantt-Chart:• A Gantt chart is a type of bar chart, devised by Henry Gantt in the

1910s, that illustrates a project schedule. • Gantt charts illustrate the start and finish dates of the terminal

elements and summary elements of a project. Terminal elements and summary elements comprise the work breakdown structure of the project.• Modern Gantt charts also show the dependency (i.e., precedence

network) relationships between activities.

Page 25: Software Project Scheduling Diagrams

Gantt-Chart:

Page 26: Software Project Scheduling Diagrams

Gantt-Chart:

Page 27: Software Project Scheduling Diagrams
Page 28: Software Project Scheduling Diagrams

Critical Chain Method:• CCM was used to develop the project schedule. • However, in today’s fast moving era, a project manager has to build an

aggressive and realistic schedule because time is important, resources are costly, and the organization may be managing many projects at the same time, requiring cross utilizing of resources.• In such scenarios in the past, project managers were having

difficulties with managing schedules because of some inherent drawbacks of the critical path method.• These projects were having poor responses, such as not being able to

complete on time, over budgeted, and in some cases terminated.

Page 29: Software Project Scheduling Diagrams
Page 30: Software Project Scheduling Diagrams

Issues with the Critical Path Method:• The following are a few issues faced by project managers while

dealing with the schedule based on the critical path method.

• Unlimited ResourcesThe first issue with the critical path model is that it is an optimistic model which assumes that all resources will be available at all times and can be utilized whenever they are needed. However, practically this was not always possible. Many times this assumption led to delay in projects and more spending.

Page 31: Software Project Scheduling Diagrams

Issues with the Critical Path Method:• Misuse of Float or SlackAnother issue with critical path method is misuse of float or slack.According to Parkinson’s Law which states that “work expands so as to fill the time available for its completion,” team members misuse the slack, causing the project to be delayed.

• Activity Completion Gain/LossIn the critical path method, even if an activity is completed before its planned completion date, the time gain cannot be utilized by the next activity, because the next activity has to wait until its early start date. Usually this happens because the resource allocated to the next activity may not be available at the moment.

Page 32: Software Project Scheduling Diagrams

Critical Chain Method:• Student SyndromeThe critical path method is also infected with Student Syndrome, where team members do not start the task until the last moment.(Path “Start->C->D->E->F->End” is the critical chain)

Page 33: Software Project Scheduling Diagrams

Critical Chain Method:• In other words, you can say that the critical chain method is a modified

form of the critical path method. Here, availability of resources is considered while creating the project schedule.• In critical chain project management, instead of float, buffers are used.

These buffers are designed in such a way that they completely eliminate the concept of float or slack.• Project Buffer: This buffer is placed between the last task and the project

completion date as a non-activity buffer, and this buffer acts as a contingency for the critical chain activities.• Feeding Buffers: These buffers are added to the non-critical chain so that

any delay on the non-critical chain does not affect the critical chain.• Resource Buffer: These buffers are kept alongside the critical chain to

make sure that they are available when they are required.

Page 34: Software Project Scheduling Diagrams

How to Create the Critical Chain Network Diagram:Three steps are required to create a critical chain from the critical path. These steps are as follows:• Remove all contingencies from activities, regardless of whether you have

added the calculated contingencies or any percentage of it. If you’ve used the PERT (Program Evaluation and Review Technique) estimate to build the schedule, replace your estimate with optimistic estimate.• Align the activities with late finish dates and remove resource constraints.

Give priority to critical chain activities while assigning resources.• Add feeding buffers to non-critical chains so that their durations become

equal to the critical chain. Add project buffer to end of the critical chain, but before the project end date. The project buffer should be approximately half the contingency you removed from the activities. This helps improve the efficiency, and reduces the schedule duration.

Page 35: Software Project Scheduling Diagrams

Now, let’s see a real world example:

• Suppose you get a project to construct a building. You build the schedule based on the critical path method, and start working on it.• However, during the execution of this project, you happen to know that:There is a shortage of cement, or Some of the equipment needed by you is assigned to some other projects, orOne of your key team members is pulled out for some other important tasks by management.What will happen now?Of course this will cause a delay in your project.Did the critical path not identify the resources required by your project?

Page 36: Software Project Scheduling Diagrams

Now, let’s see a Real World Example:

The problem was with the resource allocation. Although the critical path had identified the resources, it did not account for the limited availability of resources into the schedule. The project schedule was developed optimistically, assuming that all resources would be available whenever they were needed. Unfortunately this could not happen in this case, putting the project in trouble.

Therefore, to solve these issues, you made some modifications to the critical path, considering limited resource availability. Now this critical path has been converted to the critical chain, and it is more realistic.

Page 37: Software Project Scheduling Diagrams

Key Features of Critical Chain Management:• It is a deterministic model• It avoids mismanagement of slack or float• It optimizes the utilization of resources• The project based on the critical chain method completes 10% to 30%

faster than that based on the critical path method• It is a more practical approach• It encourages team members to perform efficiently, and• It improves the productivity

Page 38: Software Project Scheduling Diagrams

Summary• Critical chain method is an upgraded version of the critical path method,

which is a more practical approach to developing the project schedule. • In critical chain method, the availability of resources is taken into

consideration while drawing the network diagram. • In this method, you use buffers instead of float, which reduce the

mismanagement of float, which is seen in the critical path method.

There is no doubt that the critical chain method is one of the most important developments in project management recently. This method answers many shortcomings of the critical path method, provides a realistic schedule, encourages team members to perform efficiently, and improves productivity.

Page 39: Software Project Scheduling Diagrams

The End