Presentation on theme: "Software Project Management Lecture 2. Laws of Project Management 4 No major project is ever installed on time, within budget and with the same staff."— Presentation transcript:
Software Project Management Lecture 2
Laws of Project Management 4 No major project is ever installed on time, within budget and with the same staff 4 Projects progress quickly until 90% complete; then they remain at 90% complete forever 4 One advantage of fuzzy project objectives is they let you avoid estimating costs 4 When things are going well, something will go wrong When things just can’t get worse, they will. When things seem to be improving - you’ve overlooked something 4 If project content is allowed to change freely, the rate of change will exceed the rate of progress
Laws of Project Management (2) 4 No system is ever completely debugged. Attempts to debug a system inevitably introduce new bugs that are even harder to find 4 A carelessly planned project will take three times longer to complete than expected: A carefully planned project will take only twice as long 4 Project teams detest progress reporting because it vividly manifests their lack of progress
A Project Schedule 4 Usually customers have the following questions: –do you understand my problem and my needs? –can you design a system that will solve my problem and satisfy my needs? –how long will it take to develop such a system? –how much will it cost to have you develop such a system?
Deliverables 4 documents 4 demonstration of function 4 demonstration of subsystems 4 demonstration of accuracy 4 demonstration of reliability, security or speed
Activities and Milestones 4 Analyse the development and designate clearly defined events - milestones 4 Milestones indicate measurable level of progress 4 Each milestone completed can be reported or demonstrated to the customer 4 An activity is part of a project that takes place. A milestone is a completed activity
Phases of the Schedule 4 We separate development into a number of phases, with subdivisions if necessary 4 Each phase has steps also with subdivisions if necessary 4 Each step has a number of activities 4 These activities are a measurable event
Work Breakdown Structure 4 Exhibits the project as a set of discrete pieces of work 4 Activities and milestones can be used by customer and developer to track progress 4 Milestones indicate what is done 4 The breakdown gives no indication of interdependencies
Activity Graph 4 Depicts dependencies of work units 4 Nodes of the graph are milestones 4 Edges (lines) represent activities 4 Dotted lines indicate a dependency 4 Activities can have parameters (precursor, duration, due date, endpoint) 4 Critical points are apparent as are potentials for concurrency
Start Invite Plan menu Shop Store ingredients Prepare scone mix Bake Cool Fill with jam & cream Prepare to bake scones Fill cucumber Warm oven Fill salmon Prepare sandwich filling Serve Eat
Activity Graph - Time Estimates Step 1 - invite VC to high tea –1.1 send out invitation: 7days –1.2 plan menu: 1hour Step 2 - shopping –2.1 shop for ingredients: 1/2hour –2.2 store ingredients: 10mins Step 3 - prepare scones –3.1 prepare to bake scones: 30mins –3.2 warm oven: 10mins –3.3 prepare scone mixture: 15mins –3.4 bake:15mins –3.5 cool: 30mins –3.6 fill with jam and cream: 7mins 4 Step 4 - prepare sandwiches –4.1 prepare sandwich filling: 10mins –4.2 fill salmon sandwiches: 8mins –4.3 fill cucumber sandwiches: 15mins 4 Step 5 - serve –5.1 serve: 4mins
Activity Graph Terminology 4 Precursor - an event or set of events that must occur before an activity can begin 4 Duration - length of time it will take to complete an activity 4 Due date - date when the activity must be completed 4 End point - milestone or deliverable 4 Real time - estimated amount of time for an activity to be completed 4 Available time - time available in the schedule for the activities completion 4 Slack time - the difference between the available time and the real time for that activity
Activity Graph Questions 4 Food should be fresh and completed not more than one hour in advance. The VC is to arrive at 3pm and will eat immediately –calculate earliest start time to prepare for baking, filling and serving the scones filling and serving each type of sandwiches –calculate the latest start time for each –what is the slack time for a cucumber sandwich?
Activity Graph Results Calculate earliest start time for –scones12:19pm (2h 41m back from 3pm) –salmon sandwiches 1:38pm(1h 22m back from 3pm) –cucumber sandwiches1:31pm (1h 29m back from 3pm)
Activity Graph Results Calculate the latest start time for –scones1:19pm(1h 41m back from 3pm) –sandwiches(salmon)2:38pm (22m back from 3pm) –sandwiches(cucumber)2:31pm(29m back from 3pm) 4 What is the slack time for –a cucumber sandwich3 1/2 hours? I say 1 hour
Estimating Completion 4 Estimate duration of each activity 4 graphical representation highlights timing problems and minimum periods to milestones 4 highlights potential for slippage and slack- time
Critical Path Method 4 Analysis of path among milestones 4 identify minimum amount of time to complete the project 4 Calculate available time, real time and slack time as well as latest and earliest start time slack time = latest start time - earliest start time
PERT 4 Sometime it is not possible to be precise instead it is only possible to estimate a window or interval in which an activity will fall 4 Program Evaluation and Review Technique (PERT) allows such an approach 4 Can be used to calculate critical path and to identify bottlenecks 4 This method is of greatest value when many activities are being performed concurrently
Gantt Charts 4 Shows all project activities and their –start, finish and slippage time –total duration –slack time –critical periods –dates associated within these times 4 in Bar Chart form
Option Analysis 4 When formulating a plan a project manager usually has a number of goals 4 These goals vary in importance 4 Different types of goals (organisation and project specific) 4 Options can be derived to achieve the goals 4 Options are scored, goals are weighted!
Key Points 4 Effective management depends on planning 4 Planning and estimating are iterative 4 Project milestones should be dispersed throughout the project 4 Managers must analyse options thoroughly 4 Project scheduling must account for interrelationships
I should now be able to be able to list 5 laws of project management5 laws of project management be able to express 4 justifications for the need for project scheduling4 justifications be able to describe the relationships between milestones and activities, phases and stepsmilestones and activities, phases and steps be able to draw an activity graph and use it for schedulingdraw an activity graph be able to estimate completion from an activity graphestimate completion from an activity graph be able to describe the critical path methoddescribe the critical path method be able to define stack timedefine stack time Recognize a PERT and GANTT chart and be able to interpret the times they relatePERTGANTT know what is the main benefit of option analysisoption analysis
Acknowledgements 4 Based on Dr. Liz Burd’s Software Engineering Lecture Notes - Copyright Department of Computer Science, University of Durham.