Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 9: Scheduling (Chapter 27) Mehran Rezaei.

Similar presentations


Presentation on theme: "Lecture 9: Scheduling (Chapter 27) Mehran Rezaei."— Presentation transcript:

1 Lecture 9: Scheduling (Chapter 27) Mehran Rezaei

2 Reasons for Late Delivery of S/W An unrealistic deadline Changing customer requirements An honest underestimate of the amount of effort and/or the number of resources Predictable and/or unpredictable risks that skipped consideration Unforeseen technical difficulties Unforeseen human difficulties Miscommunication among project staff Lack of tracking and corrective activities 2

3 3 How to get rid of an unrealistic deadline? Perform a detailed estimate using historical data Use an incremental process model – Deliver critical functionality by the imposed deadline, delay other functionality until later Meet with the customer and explain why the imposed deadline is unrealistic – Indicate the percent improvement required Offer the incremental development strategy as an alternative

4 4 Project Scheduling S/W project scheduling is an activity that distributes estimated effort across the planned project duration by allocating the effort to specific s/w engineering tasks Can be viewed from two different perspectives – Pre-established end-date for release Encounters far more frequently – End-date set by the s/w engineering organization

5 Basic Concepts Compartmentalization Interdependency Time allocation Effort validation Defined responsibilities Defined outcomes Defined milestones 5

6 Effort and Delivery Time 6

7 7 The Relationship Between People and Effort (2) The s/w equation [PUT92] introduced in Chapter 23 is derived from the PNR curve – L = P  E 1/3 t 4/3 [E in person-months, t in months] – E = L 3 /(P 3 t 4 ) [E in person-years, t in years] Demonstrates the highly nonlinear relationship between time and effort

8 8 Effort Distribution rule – 40% of effort for front-end analysis and design – 20% of effort for coding – 40% of effort for back-end testing But the characteristics of each project must dictate the distribution of effort

9 Effort Allocation 9 “front end” activities – customer communication – analysis – design – review and modification construction activities – coding or code generation testing and installation – unit, integration – white-box, black box – regression 40-50% 30-40% 15-20%

10 10 Defining a Task Set for the Software Project (1) A task set is a collection of s/w engineering work tasks, milestones, and work products No single task set is appropriate for all projects A task set must be distributed on the project time line

11 11 Defining a Task Set for the Software Project (2) Most s/w organizations encounter the following projects – Concept development projects – New application development projects – Application enhancement projects – Application maintenance projects – Reengineering projects

12 12 Defining a Task Set for the Software Project (3) Even within a single project type, many factors influence the task set to be chosen These include – Size of the project – Number of potential users – Mission criticality – Stability of requirement – And many more

13 13 A Task Set Example Major tasks – Concept scoping – Preliminary concept planning – Technology risk assessment – Proof of concept – Concept implementation – Customer reaction Refinement of major tasks

14 14 Defining a Task Network (1) A task network, also called an activity network, is a graphic representation of the task flow for a project The task network depicts major s/w engineering tasks The project manager should be aware of those tasks that lie on the critical path

15 15 Defining a Task Network (2)

16 16 Scheduling (1) Project scheduling methods – Program Evaluation and Review Technique (PERT) – Critical Path Method (CPM) Driven by information already developed in earlier project planning activities – Estimates of effort – A decomposition of the product function – The selection of the appropriate process model and task set – Decomposition of tasks

17 Scheduling (2) Both PERT and CPM provide quantitative tools that allow the s/w planner to – Determine the critical path – the chain of tasks that determines the duration of the project – Establish “most likely” time estimates for individual tasks by applying statistical models – Calculate “boundary times” that define a time “window” for a particular task 17

18 History Developed in 1950’s CPM by DuPont for chemical plants PERT by U.S. Navy for Polaris missile PERT was developed by the US Navy for the planning and control of the Polaris missile program and the emphasis was on completing the program in the shortest possible time. In addition PERT had the ability to cope with uncertain activity completion times (e.g. for a particular activity the most likely completion time is 4 weeks but it could be anywhere between 3 weeks and 8 weeks). CPM was developed by Du Pont and the emphasis was on the trade-off between the cost of the project and its overall completion time (e.g. for certain activities it may be possible to decrease their completion times by spending more money - how does this affect the overall completion time of the project?) 18

19 CPM - Critical Path Method Definition: In CPM activities are shown as a network of precedence relationships using activity-on-node network construction – Single estimate of activity time – Deterministic activity times USED IN : Production management - for the jobs of repetitive in nature where the activity time estimates can be predicted with considerable certainty due to the existence of past experience. 19

20 PERT - Project Evaluation & Review Techniques Definition: In PERT activities are shown as a network of precedence relationships using activity-on-arrow network construction – Multiple time estimates – Probabilistic activity times USED IN : Project management - for non-repetitive jobs (research and development work), where the time and cost estimates tend to be quite uncertain. This technique uses probabilistic time estimates. 20

21 Originated by H.L.Gantt in 1918 Gantt chart Advantages - Gantt charts are quite commonly used. They provide an easy graphical representation of when activities (might) take place. Limitations - Do not clearly indicate details regarding the progress of activities - Do not give a clear indication of interrelationship between the separate activities 21

22 CPM/PERT These deficiencies can be eliminated to a large extent by showing the interdependence of various activities by means of connecting arrows called network technique. Overtime CPM and PERT became one technique ADVANTAGES: – Precedence relationships – large projects – more efficient 22

23 The Project Network Use of nodes and arrows Arrows  An arrow leads from tail to head directionally – Indicate ACTIVITY, a time consuming effort that is required to perform a part of the work. Nodes A node is represented by a circle - Indicate EVENT, a point in time where one or more activities start and/or finish. 23

24 Activity on Node & Activity on Arrow Activity on Node - A completion of an activity is represented by a node Activity on Arrow - An arrow represents a task, while a node is the completion of a task - Arrows represent order of events 24

25 Activity Slack Each event has two important times associated with it : -Earliest time, ET, a calendar time when an event can occur and all the predecessor events completed at the earliest possible times -Latest time, LT, latest time the event can occur without delaying the subsequent events and completion of project. Difference between the latest time and the earliest time of an event is the slack time for that event Positive slack : Slack is the amount of time an event can be delayed without delaying the project completion 25

26 Critical Path Is that the sequence of activities and events where there is no “slack” i.e.. Zero slack Longest path through a network minimum project completion time 26

27 Benefits of CPM/PERT Useful at many stages of project management Mathematically simple Give critical path and slack time Provide project documentation Useful in monitoring costs 27

28 Questions Answered by CPM & PERT Completion date? On Schedule? Within Budget? Critical Activities? How can the project be finished early at the least cost? 28

29 example Illustration of network analysis of a minor redesign of a product and its associated packaging. The key question is: How long will it take to complete this project ? 29

30 For clarity, this list is kept to a minimum by specifying only immediate relationships, that is relationships involving activities that "occur near to each other in time". 30

31 We shall see below how the network analysis diagram/picture we construct helps us to answer this question. 31

32 CRITICAL PATH TAKES 24 WEEKS FOR THE COMPLETION OF THE PROJECT 32

33 33 Timeline Charts (Gantt Chart)

34 34 Project Table (Resource Table)

35 Tracking the Schedule Ways of tracking - – Conducting periodic project status meetings – Evaluating the results of all reviews conducted – Check for completion of project milestones in due date – Comparing actual start-date to planned start-date – Meeting informally with practitioners to obtain their subjective assessment – Using earned value analysis to assess progress quantitatively Control is must (light or tight depending on situation) Can employ time-boxing when faced with severe deadline pressure 35

36 36 Earned Value Analysis (1) Is a measure of progress Permits quantitative analysis Basic terms – BCWS (Budgeted Cost of Work Scheduled) BCWS i = the effort planned for work task i – BAC (Budget At Completion) BAC =  (BCWS k ) for all tasks k – BCWP (Budgeted Cost of Work Performed) – ACWP (Actual Cost of Work Performed)

37 37 Earned Value Analysis (2) Schedule Performance index – SPI = BCWP / BCWS Schedule Variance – SV = | BCWP – BCWS | Percent Scheduled for Completion – PSC = BCWS / BAC Percent Complete – PC = BCWP / BAC Cost Performance index – CPI = BCWP / ACWP Cost Variance – CV = | BCWP – ACWP |


Download ppt "Lecture 9: Scheduling (Chapter 27) Mehran Rezaei."

Similar presentations


Ads by Google