Presentation is loading. Please wait.

Presentation is loading. Please wait.

INFO 638Lecture #41 Software Project Management Resource availability and critical chain INFO 638 Glenn Booker.

Similar presentations


Presentation on theme: "INFO 638Lecture #41 Software Project Management Resource availability and critical chain INFO 638 Glenn Booker."— Presentation transcript:

1 INFO 638Lecture #41 Software Project Management Resource availability and critical chain INFO 638 Glenn Booker

2 INFO 638Lecture #42 Resource Availability  To make a project schedule complete, resources need to be assigned to each task  Need to identify the number of resources, and their roles 3 senior programmers 0.1 program manager 1 database analyst, etc.

3 INFO 638Lecture #43 Resource Availability  Now we need to determine if the project can be completed with the resources available  The key is to balance the resources with the tasks they need to accomplish – some refinement of the tasks and activities in the project is often needed

4 INFO 638Lecture #44 Leveling Resources  Resource assignments are generally done task-by-task at first  Then need to add up the planned resources and look for potential problems Over committing people Resources inconsistent with project priorities

5 INFO 638Lecture #45 Leveling Resources Lack of management to monitor the project resources Lack of accounting for employee turnover  Leveling should result in no resource being planned to work more than 100% of the time And we want a logical flow of resources needed – no wild fluctuations

6 INFO 638Lecture #46 Leveling Resources  No schedule is typically perfect – we want to get reasonably close however  Strategies to level resources include Use available schedule slack Shift the project finish date Smoothing

7 INFO 638Lecture #47 Use available schedule slack  Slack is the amount of time a task’s start or completion could be changed without affecting project completion  Hence we can slide tasks left & right on the schedule within the limits of their slack time to smooth out resource needs

8 INFO 638Lecture #48 Shift the project finish date  If the completion date isn’t critical, consider moving it to the right (later) in order to avoid resource conflicts (multiple tasks needing the same resource at once)  Otherwise might need to reduce the project scope to eliminate conflicting tasks, or defer feature completion to later releases

9 INFO 638Lecture #49 Smoothing  Here, smoothing refers to deliberately planning people to work overtime to accomplish certain tasks  Done by scheduling >8 hours of work per day, or using weekends and/or holidays as work days

10 INFO 638Lecture #410 More Approaches  Other ways to help smooth the resource needs include Decompose activities into smaller tasks, and spread out when those tasks are done Stretch the duration of tasks, thereby reducing the number of resources needed Use less skilled resources, and extend the schedule for the task accordingly

11 INFO 638Lecture #411 Cost of Resource Leveling  Often leveling or smoothing resources can lead to a longer project schedule This may increase the cost of the project, particularly if fixed project costs are affected (e.g. facility rent) More direct costs could include failure to earn early completion incentives, or penalties for late project completion

12 INFO 638Lecture #412 Micro-level Planning  It’s possible to plan subtasks to a very fine amount of detail (day or two subtask task durations)  This can be a good strategy for understanding serious estimation problems  In general, however, the added cost of planning and tracking isn’t worth it

13 INFO 638Lecture #413 Work Packages  Earlier we defined a project as having activities, which are broken into tasks  A way to describe and manage the tasks within an activity are work packages  The work package describes the tasks to be accomplished, relevant dates, and who will do the work

14 INFO 638Lecture #414 Work Packages  Sometimes a work package is also a contractual mechanism to describe a chunk of work to be accomplished The manager of a work package is responsible for managing the tasks needed to get the work done, and report the time and effort needed, and the work package’s status

15 INFO 638Lecture #415 Work Packages = Insurance  The work package can also be seen as insurance to describe the work in enough detail to help recover if turnover is a problem During the peak of the dot-com boom, this would have been a very wise strategy to follow

16 INFO 638Lecture #416 Work package assignment (p. 155) WP # WP Name Early Start Late Finish WP Manager Contact info ADesign3/4/0 5 4/1/0 5 F Smith345- 5678 BProduct eval Etc. CPlace locate DProduct forecast

17 INFO 638Lecture #417 Work Packages  The list of all work packages are summarized, like shown on the previous slide Then each work package (A, B, etc.) is described in task-level detail using the form on page 156 of the text  Notice that several fields in the top of the form come from the main schedule – predecessors, successors, critical path, etc.

18 INFO 638Lecture #418 WP Implications on schedule  Whether you use work packages has strong implications on the level of detail that appears in your master schedule If using work packages, you could plan to the activity level, and leave the details of each activity to the work package managers to define If not using work packages, the main schedule needs to plan to the task level

19 INFO 638Lecture #419 Complete Project Plan  With the project defined to the task level you have enough detail to estimate the labor costs, and are able to provide a complete project proposal to upper management for approval to proceed

20 INFO 638Lecture #420 Critical Chain Project Management  Critical Chain Project Management (CCPM) is another approach to managing resource conflicts Key additional reference is “Critical Chain Project Management” by L. Leach, ISBN 1580539033

21 INFO 638Lecture #421 Critical chain vs. critical path  The critical path is the longest duration through the project Doesn’t consider the resources needed for tasks along the critical path  Critical chain is the longest path through the project, considering both task dependencies and resource constraints

22 INFO 638Lecture #422 How is CCPM different?  CCPM is based partly on some statistical concepts  The duration of any task will vary, depending on various reasons Those reasons could be due to common causes (normal random fluctuations) or special causes (specific causes which could be identified)

23 INFO 638Lecture #423 Common & Special Causes  Common causes are accounted for in the contingency planning for each task – the amount of time needed to ensure it’s completed on time  Special causes are dealt with as part of risk management

24 INFO 638Lecture #424 Plan for 50% Completion Time  Normally we plan each task so that 90% of the time we’d finish on time This includes a lot of time for each task compared to the 50% completion time (the task time we’d finish in 50% of the time)  CCPM plans for the 50% completion time, and adds the additional time as contingency time

25 INFO 638Lecture #425 Figure 12.1, page 254  This is what the cited figure means – the white part of each task is the time needed to finish it 50% of the time The grey part is the difference between 90% and 50% completion times  In CCPM we lump the 50% times together, and lump the grey parts into a contingency time period

26 INFO 638Lecture #426 Notice the assumption  The text assumes that the difference between 90% and 50% completion times is very large – typically half of the planned duration So tasks with a 90% duration of 6 days, have a 50% duration of 3 days  Is this realistic?

27 INFO 638Lecture #427 To create a critical chain path 1.Start with the early schedule from traditional project management (TPM); figure 12.2, the critical path is tasks C1-C2-C3 2.Replace the 90% completion times with 50% completion times for every task

28 INFO 638Lecture #428 To create a critical chain path 3.Convert the early schedule to the late schedule, and show resources; the late schedule is shown in Fig 12.3 4.Look for resource conflicts, and adjust the start time for each task (here it’s assumed each person can work one task at a time) 5.Add time buffers

29 INFO 638Lecture #429 Time Buffers  Buffers are time intervals added to the end of a series of tasks to allow for contingencies  Buffers can be used for many reasons Project buffers Feeding buffers Resource buffers

30 INFO 638Lecture #430 Project buffers  Project buffers are at the end of a critical chain, to protect the overall project schedule (allow for general contingencies) If T50 i is the 50% completion time for task i on the critical chain, T90 i is the 90% completion time for task i, then project buffer = sqrt{  (T90 i – T50 i ) 2 } i

31 INFO 638Lecture #431 Feeding buffers  A feeding buffer is a buffer at the end of a series of tasks which feed into the critical chain (like a stream which feeds a river)  It is calculated the same as a project buffer

32 INFO 638Lecture #432 Resource buffers  A resource buffer isn’t a time buffer at all; it’s a flag to warn that a particular resource will be needed soon So it’s an alarm clock!  A resource buffer is established some time interval before the resource is needed (1 week, a month, etc.)

33 INFO 638Lecture #433 Return to CCPM example  Resume the example from slide 28 Add feeding buffers onto the end of tasks A1-A2 and B1-B2 (since they feed the critical chain C) Add project buffer onto the end of tasks C1-C2-C3 (since it is the critical chain)  Notice that resource conflicts aren’t considered for buffer time periods

34 INFO 638Lecture #434 Return to CCPM example  The project which was 16 days originally (under TPM) is 13.7 days using CCPM A schedule reduction of 14%

35 INFO 638Lecture #435 Managing a project using CCPM  Since the nominal task duration is only met 50% of the time, there have to be careful rules for managing the buffers  Three levels of warning are established When the first, second, and final thirds of the buffer are entered None for when the buffer is exceeded?

36 INFO 638Lecture #436 Managing a project using CCPM  How seriously each of these warnings is treated depends on how far into the series of tasks you are when the buffer is used Again using a scale of first, second, and final third of the tasks accomplished  This produces the chart on page 261

37 INFO 638Lecture #437 Managing a project using CCPM  So if a series of tasks is 15 days long, and has a 10 day buffer If you are 8 days into the buffer after completing 7 days of the tasks’ work  The tasks are 7/15 into the work, which is the second third of the tasks  The buffer used is 8/10, which is the final third of the buffer  Hence the diagnosis is “Serious problem; implement the solution”

38 INFO 638Lecture #438 CCPM Summary  So CCPM uses a little statistics, and a little risk management theory to reduce the planned schedule for completing a project  Several examples of success using CCPM are cited


Download ppt "INFO 638Lecture #41 Software Project Management Resource availability and critical chain INFO 638 Glenn Booker."

Similar presentations


Ads by Google