https://flic.kr/p/hcgHcm

Slides:



Advertisements
Similar presentations
Based on the XP Game by Vera Peeters and Pascal Van Cauwenberghe ( 1Software Engineering /Spring.
Advertisements

Software Life Cycle Requirements analysis System design Program design Program implementation (coding) Unit testing Integration testing System testing.
Agile Development Chapter Extension 16. ce16-2 Study Questions Q1: Why is the SDLC losing credibility? Q2: What are the principles of agile development.
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.
Customer Collaboration. Central Principles The customer is part of the team The customer plays key role in directing the team 1.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management Applied Software.
SE 555 Software Requirements & Specification Requirements Validation.
Customer collaboration.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 17 Slide 1 Extreme Programming.
Applied Software Project Management Andrew Stellman & Jennifer Greene Applied Software Project Management greene.com 1 Applied Software.
Chapter 4 Agile Development
Project Workflow. How do you do it? -Discussion-
By Touseef Tahir Software Testing Basics. Today's Agenda Software Quality assurance Software Testing Software Test cases Software Test Plans Software.
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.
Engineering 1020 Introduction to Programming Peter King Winter 2010.
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.
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Deadlocks II.
Chapter 7 The Practices: dX. 2 Outline Iterative Development Iterative Development Planning Planning Organizing the Iterations into Management Phases.
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.
Software Engineering 2004 Jyrki Nummenmaa 1 Why new software methodologies The classic waterfall-model based techniques are strongly based on the.
Planning Poker-Agile Estimation for Dummies S.INFANTA PRINCY, M.E II YEAR. ANNA UNIVERSITY, TRICHY.
Planning 2: Estimation Mechanics Emerson Murphy-Hill Creative Commons Attribution 4.0 License. Material Produced by NCSU Software Engineering Faculty.
Applied Software Project Management SOFTWARE TESTING Applied Software Project Management 1.
Project Workflow.
TM 720: Statistical Process Control DMAIC Problem Solving
Applied Software Testing
Scrum and TargetProcess
Organisation Control KPI’s & an industry Review
Iterative Planning
Monitoring Implementation and Sustainability
Project Workflow.
Software Requirements
September 20, 2017 Agile Techniques Workshop Susan Futey
Savannah to Jira Migration
Taking an Iteration Down to Code
OPS/571 Operations Management
Automated Code Coverage Analysis
Applied Software Implementation & Testing
EDU 618 Innovative Education- -snaptutorial.com
Teaching slides Chapter 1.
A test technique is a recipe these tasks that will reveal something
Selecting the perfect CRM system
Practical tools for conflict resolution
Coding Concepts (Basics)
Chapter 3 – Agile Software Development
Introduction If you have got a call for an Agile testing interview, then congratulations are in order. You may be feeling nervous, but it sure to be felt.
Algorithm and Ambiguity
EPA Lean Management System
EPA Lean Management System
Planning and Estimation.
Software Requirements
Project Planning and Estimation
Introduction to Repetition
Agile Development – a new way of software development?
Extreme Programming.
Iteration Planning.
Introduction to Repetition
Planning and Estimation
Iteration Planning.
Software Requirements
Project Iterations.
Software Development Techniques
Planning and Estimation.
Agile Development.
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.
Presentation transcript:

https://flic.kr/p/hcgHcm Planning and Estimation

Now 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

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 No past performance yet, so…

Estimation with Planning Poker Cards with units of work: 1, 3, 5, 8, 13, 20, 40 Assume team can do 20 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 Multiples of 10: 10 - Highest priority 20 30 40 50 … - Lowest priority Non-multiples of 10 may be used if helpful

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…

Next Steps Part 1: Estimate USs Part 2: Collect customer priorities Use Planning Poker Start designing Part 2: Collect customer priorities Assign number each US Also note any corrections/clarifications Part 3: Choose USs for Development Iteration 1 3 weeks worth of work Fill out iteration plan with what each team member will do Everyone codes Tasks must be verifiable and executable Due by 9am on Mon