Upload
innovecs
View
125
Download
0
Embed Size (px)
DESCRIPTION
On Saturday, 12 of April, regular quarterly meeting of Tech Hangout Community took place in Creative Space 12, the cultural and educational center based in Kiev! The event was held under the motto «One day of inspiring talks on Web Back-End». This time Python, Ruby and PHP developers gathered to make peace and learn the Force. *TECH HANGOUT COMMUNITY was found in 2012 by the developers for the developers for knowledge and experience sharing. Such meetings are the part of Innovecs Educational Project that actively develops sphere of internal trainings and knowledge exchange program among professionals. This Initiative was born within the walls of Innovecs and has proved to be extremely popular and high-demand. In a short period of time it gained its own Facebook group with more than 90 members, blog with more than 40 posts and constant quarterly external meeting of Tech hangout community with more than 80 participants. The concept of the event proposes a 30-minute report on the topic previously defined, and the discussion in a roundtable session format. Join to discuss - https://www.facebook.com/groups/techhangout/
Citation preview
Estimates
Estimates#No
a good estimate is one that provides clear enough view on the project reality to allow the project
leadership to make good decisions about how to control the
project to hit it’s targets.
Making an Estimationwhile estimates solve a problem, what
problem do they solve, exactly?
TIME COST DATE
• “the business as a whole is trying to make a decision — about how to spend it’s money (your time)” Dan Milstein
• Businesses need certainty about what they will get and when
• Unfortunately for most businesses there is very rarely any certainty in software design and development
• You can break the work down into chunks and add it up
• you can look at a variety of similar projects to compare
• you can stick your finger in the air and guess
HOWTOESTIMATE
Vacations Holidays Sick days Training Weekends Company meetings Department meetings Setting up new workstations Installing new v e r s i o n s o f t o o l s o n w o r k s t a t i o n s Troubleshooting hardware and software problems Ramp-up time for new team members Mentoring of new team members Management coordination/manager meetings Cutover/deployment Data conversion Installation Customization Requirements clarifications Maintaining the revision control system Supporting the build Maintaining the scripts required to run the daily build Maintaining the automated smoke test used in conjunction with the daily build Installation of test builds at user location(s) Creation of test data [Steve McConnell]
MISS ME?
?UNKNOWNS
UNKNOWN UNKNOWNS
how do you calculate them?
5% 10% 25%
Problems with
wtf-agile visualized
Waterfall WTF
AgileWTF
Estimates
♻ save your time?
Cost &
DatesCost
& Dates
Cost &
Dates
Cost &
Dates
Cost &
Dates
What The Hell
We’ll define #NoEstimates as running a software project
without any human estimation process. If customers asks,
"How long will it take?" that's estimating. If they ask what’s
next, that's #NoEstimates.
"My boss would never go for that" may sound like an invitation for dialogue,
but it's actually a fiat.
A term used in policy debate, the
affirmative's power to pass the plan in order
to debate impacts. Allows the debate to progress instead of debating whether or not the plan will be
passed.
• Clearly, many software customers want estimates. In many cases, those are reasonable.
• next logical question: What problems do estimates solve, and can we solve them a different way?
” #NoEstimates is not about ditching estimates. It is about
improving the way we work such that estimates become redundant.“
Neil Killick
When you tell the customer this task will take 1-2 day
the customer hear 1 day
you hear 2 days
!
always the way
Some Sciences
Duncker’s candle problem
Some Sciences
Duncker’s candle problem
the wall
Some Sciences
Duncker’s candle problem
Overcome functional fixedness: remove pins out of the box
Some Sciences
Duncker’s candle problem
20th 21thcentury
Some Sciences
Overestimation
Parkinson’s law: work expands to fill
the time available for its completion
Some Sciences
Eff
ec
t c
ost
sc
he
du
le
overestimation ➡⬅underestimation
100%<100% >100%
Linear penalty due to Parkinson’s law
Nonlinear penalty due to planning
errors, upstream defects, high-risk
practices
target as % of Nominal Estimation
the Cone of Uncertainty
A project is behind schedule and over its budget the day it is started.
Don Norman
what to do
#NoEstimates
J.B. Rainsberger, the author of “jUnit Recipes”, points out that his first solo software project was just like this. Rainsberger made no promises up front, offering instead to show working software
every two weeks — and also allowing the client to fire him with as little as two weeks' notice.
1. Make Starting Amount of Money Small; Deliver Working Software Often
John Carmack, CEO of Id Software, is famous for the expression "it's done when it's done," so much so that the phrase appears under Carmack's name
on WikiQuote. !
It's worth noting that Apple, one of the largest publicly traded organizations in the world, is
secretive about upcoming products and refuses to make quarterly earnings estimates for shareholders
or Wall Street. It doesn't seem to be hurting them.
2. Drop Estimation From Your Development Process Entirely
#NoEstimates
• Most planning work is eliminated here in favor of developing high-level goals in collaboration with the customer. !
• At the same time, that's essentially the business model of Menlo Innovations.!
• By the end of a budget period, the customer could steer to a place very different that the original goal. The customer gets what it needs in the moment — not what it thought it needed six months ago.
3. Move From Contract Negotiation to Partnership
#NoEstimates
!•Troy Magennis, a former executive at Sabre Holdings and Travelocity, has done some of the most prominent work in this space. Magennis has also developed predictive models that include complex elements like deviation, cycle time, defects/time for repair and so on…!
•Even without a complex model, most agile teams are capable of producing a burn-down chart that can answer the question, "Is this date and this scope possible?"
22. Fund a Pilot That Delivers Working Software; Then Use Modeling to Forecast Schedule
#NoEstimates
• sounds crazy though
#NoEstimates Really About Solving Problems a
Different Way
With the #NoEstimates approach we don't commit to requirements that we are not going to immediately
work on
The reason is simple: requirements have a "best before" date and expire.
@gelosi
Follow: #NoEstimates, @mattt, @soffes, @edog1203, @johnmaeda, …