Software Engineering Lecture 7: Scheduling & Tracking.

Slides:



Advertisements
Similar presentations
Project management.
Advertisements

Project Management Concepts
TK3333 Software Management Topic 7: Schedule Control.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Defining activities – Activity list containing activity name, identifier, attributes, and brief description Sequencing activities – determining the dependencies.
Lecture 9: Scheduling (Chapter 27) Mehran Rezaei.
Systems Analysis and Design 9th Edition
Systems Analysis and Design 8 th Edition Chapter 3 Managing Systems Projects.
1 Chapter 7 Project Scheduling and Tracking. 2 Write it Down! SoftwareProjectPlan Project Scope EstimatesRisksSchedule Control strategy.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Importance of Project Schedules
SWE Introduction to Software Engineering
Software Process Management Planning and Scheduling Objectives Develop the necessary understanding and skills to produce and manage a simple project schedule.
Systems Analysis and Design 8th Edition
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 Project management.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 4.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Chapter 24 Project Scheduling and Tracking
Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering.
1 SOFTWARE PRODUCTION. 2 DEVELOPMENT Product Creation Means: Methods & Heuristics Measure of Success: Quality f(Fitness of Use) MANAGEMENT Efficient &
Project Scheduling and Tracking
Project Tracking and Scheduling Infsy 570 Dr. R. Ocker.
1 Project Scheduling and Tracking CIS 375 Bruce R. Maxim UM-Dearborn.
Project planning. Software project management Informal definition of management – The art of getting work done through other people Software project management.
Software Engineering Principles Chapter 3 From Software Engineering by I. Sommerville, Slide 1 project managementorganizing planning scheduling Learning.
© 2006 ITT Educational Services Inc. System Analysis for Software Engineers: Unit 5 Slide 1 Chapter 3 Managing the Information Systems Project.
Toolkit 4.
Lesson №2. is the unique activity that has a beginning and an end time, aimed at achieving a predetermined result/goal, the creation of a specific, unique.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Software Project Management
Lecture 7 Project Scheduling and Tracking
COMP 208/214/215/216 Lecture 3 Planning. Planning is the key to a successful project It is doubly important when multiple people are involved Plans are.
Lecture 3 Scheduling CSCI – 3350 Software Engineering II Fall 2014 Bill Pine.
Software Project Management Lecture # 7. Outline Project Scheduling.
Chapter 3: Project Management Omar Meqdadi SE 2730 Lecture 3 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
IT Project Management, Third Edition Chapter 6 1 Chapter 3: Project Time Management.
Software Project Management Lecture # 7. What are we studying today? Chapter 24 - Project Scheduling  Effort distribution  Defining task set for the.
Quick Recap.
BIS 360 – Lecture Two Ch. 3: Managing the IS Project.
Software Project Management
Chapter 3 Project Management Concepts
Project management Lecture 10. Topics covered Management activities Project planning Project scheduling Risk management.
Chapter 24 Software Project Scheduling - Introduction - Project scheduling - Task network - Timeline chart - Earned value analysis (Source: Pressman, R.
Project Scheduling 1. Why Are Projects Late? An unrealistic deadline established by someone outside the software development group Changing customer requirements.
Project Scheduling & Tracking. Why Software Is Delivered Late? An unrealistic deadline Changing but unpredicted customer requirements Underestimation.
CSEM01 - wk8 - Software Planning1 Software Planning CSEM01 SE Evolution & Management Anne Comer Helen Edwards.
Managing Resources Program Evaluation and Review Technique (PERT) Production Process.
Chapter 3 Project Management Chapter 3 Project Management Organising, planning and scheduling software projects.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Modeling Tough Scheduling Problems with Software Alex S. Brown Mitsui Sumitomo Marine Management (USA), Inc.
1 Project management. 2 Topics covered Management activities Project planning Project scheduling Risk management.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Project Management Lecture # 6. Outline Recap Remaining Topics of Chapter 23 Project Scheduling (Chapter 24)
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Monitoring Risk Factors General attitude of team members based on project pressures The degree to which the team is jelled Interpersonal relationships.
Project Management Why do projects fail? Technical Reasons
PROJECT SCHEDULING AND TRACKING
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Engineering (CSI 321) Project Scheduling 1.
Project Scheduling. Why Are Projects Late? an unrealistic deadline established by someone outside the software development group changing customer requirements.
Project Management Chapter 3.
Software Project Management
Software Engineering Fall 2005
Software Project Management
Software Engineering (CSI 321)
What is project scheduling&tracking?
Software Project Management
SE Tasks for a Concept Development Project
I love the sound they make as they fly by.
Information system analysis and design
Presentation transcript:

Software Engineering Lecture 7: Scheduling & Tracking

Today’s Topics l Why is Scheduling Hard? l Scheduling Principles l Time vs. Effort l Scheduling Methods l Tracking & Control

Why is Software Late? l Unrealistic deadline (external) l Changing requirements not reflected in the schedule l Honest underestimation l Risks not considered... Unforeseen technical difficulties Human difficulties Miscommunication Management failure

Quotes “Any commander-in-chief who undertakes to carry out a plan which he considers defective is at fault; he must put forth his reasons, insist on the plan being changed, and finally tender his resignation rather than be the instrument of his army’s downfall.” [Napoleon Bonaparte]

Quotes [2] If best estimates indicate that the deadline is unrealistic, the manager should “protect his or her team from undue (schedule) pressure and reflect the pressure back to its originators” [Page-Jones, 1985]

Coping with Unrealistic Deadlines l Perform detailed estimate based on past data l Develop an incremental model that delivers critical functionality by original deadline l Explain estimate to the customer l Offer incremental alternative

Why Do Plans Fail? l “None love the bearer of bad news” (Sophocles) Don’t postpone making adjustments to a project in trouble! l Q: “How does a project get to be a year late?” A: “One day at a time.” Any delay on the critical path can have a big impact! [from Brooks, 1995]

Scheduling Levels l Macroscopic schedule early; identify major activities, milestones l Detailed schedule project underway; specific tasks identified and scheduled l Schedule drivers: fixed delivery date (resources flexible) fixed resources (dates flexible)

Scheduling Principles l Compartmentalization product and process decomposition improves manageability l Interdependency identify hard constraints on task scheduling l Time allocation effort level, start/end dates

Scheduling Principles [2] l Effort validation resource loading varies day to day; are there any unrealistic “peaks”? l Defined responsibilities tasks assigned to individuals l Defined outcomes tasks have specific work products l Defined milestones review for quality, “approval”

Time vs. Effort l A non-linear relationship l Communication overhead increases with more people l E = LOC^3/(P^3*t^4) 12 person-years, 33K LOC 8 people = 1.3 years to completion 4 people = 1.75 years to completion 6-month extension halves resources P must be tracked historically... [Putnam, 1992]

Effort Distribution l 40% Analysis and Design l 20% Implementation l 40% Testing and Evaluation l Disparity between design and implementation grows with complexity

Types of Software Projects l Concept development l New application development l Application enhancement l Application maintenance l Reengineering Each type might use a different life-cycle model, task sets, teaming arrangements, etc.

Degree of Rigor l Casual, Structured, Strict Increasing level of attention to formal task sets, umbrella activities, etc. l Quick Reaction Only tasks related to maintaining quality are applied; additional detail (documentation, etc.) added later

[From SEPA 5/e] Concept Development, Linear Sequential Model

[From SEPA 5/e] Concept Development, Linear Sequential Model

[From SEPA 5/e] Task Network, Macroscopic Level Q: Is there a critical path? A: Can’t tell until we add scheduling detail! (microscopic level)

Scheduling Methods l Task Dependencies, Critical Path Task Network (macro level) PERT chart (micro level) l Task Concurrency, Resources Gannt chart (timeline chart)

PERT Chart l Program Evaluation and Review Technique l Identify task dependencies l Order tasks chronologically l Link tasks in a network diagram

PERT [2] l Consider: Earliest start, latest start, earliest finish, latest finish l Derive critical path, insert milestones l Assign resources

Gantt Chart l “Timeline” view of project l Different perspective Shows parallel activities more clearly Shows resource overload more clearly Doesn’t show dependencies as clearly

[From SEPA 5/e]

Milestones l Make them concrete and crisp l Best plan is one where “developers can’t deceive themselves”

Resource Graphs l Percent allocation per employee per day l Expose overflow/underflow l Global view of resources over project lifetime Ramp-up Ramp-down

Calendar View l Include tasks and employees l Best for weekly tracking l Easiest view for individuals focusing on their own tasks

Tracking and Control l Periodic status meetings Evaluate results of reviews Determine if milestones are met Compare actual start to planned start for each task l Informal meetings with developers Discuss individual challenges, time management techniques Another channel for “early warning”

[From SEPA 5/e] An Example Project Table

Scheduled vs. Estimated l Carry two sets of dates in the schedule l Constant variance in “estimated” times l “Scheduled” times change only when necessary l “Under-promise, over-deliver”

Planning Lessons l A plan is only useful if it is tracked regularly and updated when necessary l Bad news is better in small, early increments

Scheduling: Summary l Estimation + Risk Analysis + Scheduling = Project Plan l Begins with decomposition l Task network created l Time line, Critical path, Resource allocation l Basis for Tracking and Control

Questions?