Planning and Estimation

Slides:



Advertisements
Similar presentations
Basic Time Management Principles
Advertisements

Project Management Information Systems and Management.
Chapter: 3 Agile Development
Agile Planning Dealing with Reality. Reality Basic agile principle – don’t expect static plans to hold, be flexible and expect changes.
Software Life Cycle Requirements analysis System design Program design Program implementation (coding) Unit testing Integration testing System testing.
Agile Planning. The problem with documentation Argument: “Heavy” documentation too much for most business-style projects.
Computer Engineering 203 R Smith Project Tracking 12/ Project Tracking Why do we want to track a project? What is the projects MOV? – Why is tracking.
Customer Collaboration. Central Principles The customer is part of the team The customer plays key role in directing the team 1.
Chapter 15 Design, Coding, and Testing. Copyright © 2005 Pearson Addison-Wesley. All rights reserved Design Document The next step in the Software.
Individuals and interactions
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
The Center for IDEA Early Childhood Data Systems 2014 Improving Data, Improving Outcomes Conference September 9, 2014 Developing or Enhancing Business.
Object-Oriented Analysis and Design Iterative Development and the Unified Process.
Project Workflow. How do you do it? -Discussion-
T Project Review Magnificent Seven Project planning iteration
By Touseef Tahir Software Testing Basics. Today's Agenda Software Quality assurance Software Testing Software Test cases Software Test Plans Software.
Task Management: Is it for ME? How some people manage to be so organized!!! Fed up managing stuffs with repetitive work schedules??? Your team lost tracks.
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.
25 PROJECT MANAGEMENT TIPS American Management Association.
5. Planning.
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
INFO 637Lecture #101 Software Engineering Process II Review INFO 637 Glenn Booker.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
WATERFALL DEVELOPMENT MODEL. Waterfall model is LINEAR development lifecycle. This means each phase must be completed before moving onto the next!!! WHAT.
Requirements Engineering Requirements Engineering in Agile Methods Lecture-28.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Applied Software Project Management SOFTWARE TESTING Applied Software Project Management 1.
Project Workflow.
TM 720: Statistical Process Control DMAIC Problem Solving
Applied Software Testing
Organisation Control KPI’s & an industry Review
Trello: A Project Management/ Workflow System
Iterative Planning

Sample Wiki Comments?.
Monitoring Implementation and Sustainability
Project Workflow.
Engineering and Debugging an App Chapter 15
Planning User stories are written.
Extreme Programming.
Management & Leadership
Client Management Managing Client Expectations
Taking an Iteration Down to Code
What do you need to know about XP?
Teaching slides Chapter 1.
Informatics 43 Discussion 13 May, 2016
A test technique is a recipe these tasks that will reveal something
COMP 208/214/215/216 Lecture 3 Planning.
Chapter 3 – Agile Software Development
Using Your Agenda.
Coming up: What is Agile?
Planning and Estimation.
Taking it to the next level
Project Planning and Estimation
Agile Development – a new way of software development?
Extreme Programming.
Iteration Planning.
Principles of Customer Service
Agile software development
Iteration Planning.
Project Iterations.
WEB TIMESHEETS Mindy Neissl Accounting Coordinator
Planning and Estimation.
WEB TIMESHEETS Mindy Neissl Accounting Coordinator
This is a template for a presentation that you can use to introduce your team to Harvest. You can customize the content of the slides. You’ll want to pay.
Climbing to New Heights
Presentation transcript:

Planning and Estimation

You have a bunch of user stories, so what’s next?

Iterative Development Process Requirements Planning Implementation Analysis Design Deployment Testing Evaluation Initial Planning We are here

Developer Customer Create USs Requirements USs Check USs Corrections/Clarifications Fix USs Add Estimates USs + Estimates Add Priorities USs + Estimates + Priorities Choose USs for Iteration Divide Chosen USs into Tasks Estimate Tasks Assign Tasks to Workers Get to Work!

Developer Customer Requirements Create USs USs Check USs Corrections/Clarifications Fix USs Add Estimates USs + Estimates Add Priorities USs + Estimates + Priorities Choose USs for Iteration Divide Chosen USs into Tasks Estimate Tasks Assign Tasks to Workers Get to Work!

Estimating Time http://xkcd.com/1658/

Hofstadter's Law It always takes longer than you expect, even when you take into account Hofstadter's Law. —  Douglas Hofstadter, Gödel, Escher, Bach

Mythical Man Month “Adding manpower to a late project makes it later.” Group communication grows very fast n(n – 1) / 2 “How does a large project get to be one year late?” “One day at a time.” Lot of small milestones miss deadlines by a bit

Principles for Estimation Principle: Past performance is the best indicator of future performance Approach: Track your outcomes; refine your estimates Principle: Wisdom of the crowd Goal: Predict how events will unfold Think event planning Problem: Easy to miss something Solution: More brains = more opportunities to catch eventualities

Principles for Estimation Principle: Past performance is the best indicator of future performance Approach: Track your outcomes; refine your estimates Principle: Wisdom of the crowd Goal: Predict how events will unfold Think event planning Problem: Easy to miss something Solution: More brains = more opportunities to catch eventualities How did the first Iteration go??

Planning Poker!

Estimation with Planning Poker Cards with units of work: 0,1/2,1, 3, 5, 8, 13, 21, 34… Assume team can do 14 units in an iteration For each US: Discuss work involved Flip cards Repeat until consensus Efficiency in estimating is important Don’t expect your estimates to be super accurate

Let’s watch this video to find out what planning poker is all about: http://youtu.be/0FbnCWWg_NY

More Estimation Principles Engineers refine estimates; customers refine expectations Estimates are basis for customer’s cost assessment Give honest estimates that customers can trust Don’t do this: https://youtu.be/t9SVhg6ZENw Work at a sustainable pace No heroes, no all-nighters, no super-human feats Either you get the code done like a human being, or you don’t

Developer Customer Requirements Create USs USs Check USs Corrections/Clarifications Fix USs Add Estimates USs + Estimates Add Priorities USs + Estimates + Priorities Choose USs for Iteration Divide Chosen USs into Tasks Estimate Tasks Assign Tasks to Workers Get to Work!

Principle: Customer sets priorities Ensures alignment with customer goals Helps customer feel in control Project isn’t going “off the rails” Estimates help customer maximize cost-benefit

Priority Numbering Scheme P0 – drop everything, critical task, often fatal bugs P1 – high priority, others depend on this P2 – should be completed during iteration P3 – only complete if time permits P4 – low value or superficial, don’t spend time on it

So now you have… Collection of user stories With estimates And customer priorities What’s next?

Developer Customer Requirements Create USs USs Check USs Corrections/Clarifications Fix USs Add Estimates USs + Estimates Add Priorities USs + Estimates + Priorities Choose USs for Iteration Divide Chosen USs into Tasks Estimate Tasks Assign Tasks to Workers Get to Work!

From USs to Tasks User Story Estimate

Incremental Development Principle Each task produces running code Unit tests count

Task design strategy Make tasks build upon one another First task makes subset of US work (e.g., partial form) Second task makes bit more work (e.g., add persistence) Etc…

Planning Process Part 1: Estimate USs Use Planning Poker Start designing Part 2: Collect customer priorities Assign number each US Also note any corrections/clarifications Part 3: Choose tasks for the iteration 2 weeks worth of work Fill out iteration plan with what each team member will do Everyone codes Tasks must be verifiable and executable