An Introduction To Software Development - Requirements, Part 2
-
Upload
blue-elephant-consulting -
Category
Education
-
view
83 -
download
1
Transcript of An Introduction To Software Development - Requirements, Part 2
Get-Away Vacations Wants To Promote Their Ocean Front Site
Image Credit: Dennis Jarvis
GAV believes that they need a web site that will show their current deals, they
want their visitors to be able to book hotel stays and special packages, as well as
pay for their bookings online. They also want to offer a luxury service that includes
travel to and from the hotel and a boat tour.
All About Estimates
• User stories define what your software will do. Estimates define when it will be done.
• “How long will all of this take?”
• Two steps to estimate the answer:
– Create an estimate for each user story: how long will it take to design, code, test, and deliver that story functionality.
– Add up all of the user story estimates to create a single total estimate for your software project.
Image Credit: imgarcade.com
Time For You To Do Some Estimating
Title: Pay with Visa/MC/Paypal
Description: User swill be able to pay
for their booking with either credit card
or Paypal
Title: Order Trip DVD
Description: A GAV user will
be able to order a DVD that captures
the highlights of their trip.
Title: Review Stay
Description: A GAV user will
be able to leave a review of their
time at the hotel.
Title: Order Room Service
Description: A GV user will be able
to specify the meals they want during
their stay.
Title: Choose View
Description: A GAV user will
be able to choose what type of view
they want from their room.
Title: Support 3,000 concurrent users
Description: Allow 3,000 users to
access the website at the same time.Image Credit: www.clipartbest.com
Estimating In The Real World
Feature Your Estimate Ted Robin
Pay with Visa /MC/Paypal
15 10
Order trip DVD 20 2
Choose Hotel View 12 2
Order room service meals
2 7
Post review of hotel stay 3 3
Looks like we’ve got a problem here: multiple estimates with different
values. Who’s right?
Keep in mind that getting rid of bad estimates is necessary in order to
create estimates that you can truly believe in…
The 13 Cards That You’ll Have To Play With
0
Days
1/2
Days
1
Days
2
Days
3
Days
5
Days
8
Days
13
Days
20
Days
40
Days
100
Days?
Image Credit: www.clker.com, Clipart Panda
Take a break from estimating!
Not enough information to estimate
Already done # of developer days
Round 1
Title: Pay with Visa/MC/Paypal
Description: User swill be able to pay
for their booking with either credit card
or Paypal
Image Credit: www.gograph.com
Round 2
Title: Order Trip DVD
Description: A GAV user will
be able to order a DVD that captures
the highlights of their trip.
Image Credit: www.gograph.com
Round 3
Title: Review Stay
Description: A GAV user will
be able to leave a review of their
time at the hotel.
Image Credit: www.gograph.com
Round 4
Title: Order Room Service
Description: A GV user will be able
to specify the meals they want during
their stay.
Image Credit: www.gograph.com
Round 5
Title: Choose View
Description: A GAV user will
be able to choose what type of view
they want from their room.
Image Credit: www.gograph.com
Round 6
Title: Support 3,000 concurrent users
Description: Allow 3,000 users to
access the website at the same time.
Image Credit: www.gograph.com
How We’ll Pick An Estimate That’s Accurate
0 100
This gap worries us:
What’s missing?
What user story was misunderstood?
What is someone unsure of?
Rules About Assumptions
• A complete development cycle should take roughly one month – 20 development days.
• Rule of thumb: estimates that are longer than 15 days are less likely to be accurate then estimates that are shorter than 15 days.
– Break your stories in to smaller stories
– Go back and talk with your customer again
Image Credit: www.canstockphoto.com
When Estimating, Assumptions Are Bad!
• When creating estimates, no assumption is a good assumption.
• Assume that assumptions are wrong until clarified by the customer.
• Sometimes you end up having to live with an assumption because your customer doesn’t know:– Write it down as a risk for a given user story.
– You may delay implementing a given user story that has a number of risks associated with it.
You cannot always get rid of all of your assumptions. Your goal during
estimation needs to be to eliminate as many assumptions as possible by
clarifying those assumptions with your customer. Any assumptions that survive
this process then become risks.Image Credit: www.fotosearch.com
How Valuable Is Your Customer’s Time?
• Getting clarification from your customer can require a great deal of work.
• You need to be careful to use your customer’s time very carefully.
• When meeting with your customer you need to make sure that you are organized, efficient, and the time is well-spent.
• Collect a group of assumptions and move through these in one meeting with the customer.
Image Credit: thegraphicsfairy.com
When Estimating, Your Goal Is Convergence
0 1004 Ways To Reach Convergence:
1. Talk to the customer
2. Play planning poker
3. Clarify your assumptions
4. Come to a consensus
When you are confident in your estimate and you are comfortable with the
assumptions, then it’s time to accept that estimate and move on…
But…
What should you do if your
total estimate for the project
is too long for your customer?
Image Creditdeadlyclear.wordpress.com
What We Covered Today
1. Estimating in the real world.
2. Planning Poker
3. Assumptions.
4. Convergence.
Image Credit: http://www.tswdj.com/blog/2011/05/17/the-grooms-checklist/