SlideShare uma empresa Scribd logo
1 de 25
HOW TO MAKE GREAT
SOFTWARE ESTIMATESGreg Thomas
http://www.rambli.com
And it begins…How long does it take to build this widget?
When will you be done?
Do I know what am I doing?
Where do I start?
What did they ask for?
Did I think this through?
Have I missed something?
Am I as fast as Jeff?
estimating
These are all questions we ask ourselves when
we, as developers, are presented with a new
problem and asked to provide an estimate as to
how long it will take AND when it will be ready.
START?
Two questions with two
answers where one does
not necessarily answer the
other.
WHERE DO WE
EXPERIENCEKNOWLEDGE UNDERSTANDING
How long it will takeIt starts with looking at your experience, knowledge and gaining a keen
understanding of the problem.
It starts with 3 Core Tenants
Experience
• Have I ever worked on this
component?
• What language am I using?
• Do I know this language?
• Is this a hard problem?
• Do I know the platform?
• Do we have requirements?
• Is this a high-priority?
• When does it need to be done?
Experience starts
the process of
asking yourself
these questions
with each problem.
experienceThe person with the most practice in that
particular area of development will always
yield the most “near” accurate estimation as
to what needs to be done and how.
Experience grows over time and increases
with each success and failure.
You want to fail, to get better.
http://www.rambli.com/2015/10/factors-of-
software-estimation-experience/
Ruby on Rails
ERP
Manufacturing
CRM
Design Patterns
MySQL
.NET
SharePoint
Java
PLACEHOLDER
Communications
PHP
Knowledge• Do you know what language you
are using?
• Do you know the underlying
framework and architecture?
• Do you have Domain Knowledge
to your field?
• Do you have expertise on the
platform you are building on?
What do I know
that I can leverage
in this estimate?
KnowledgeThe culmination of everything we know applied to what we know about the
problem and our experience.
http://www.rambli.com/2015/10/factors-of-software-estimation-your-
knowledge/
UNDERSTAND
“I didn’t understand the
problem”
“I’m not 100% sure what
to do here”
“It should just work”
“It didn’t do this last
time”
All statements that are uttered
after you have started coding,
but failed to take the time to
understand the problem you
are trying to solve.
Never start coding
if you do not
understand what
you are trying to
code.
Understand the problem
1) Know the end user and identify what they expect
2) Learn the platform/architecture that you are building on
3) Write down your assumptions and vet them with your users, peers
and team.
There is no “should” when you Understand.
http://www.rambli.com/2015/10/factors-of-software-estimation-
understand-the-problem/
When will
We ship?
Not YETWe have only figured out how long it
will take to accomplish our task
By Understanding the Problem, leveraging
our Experience and applying our
Knowledge we have created an estimate
that we feel can stand by.
But it is not shipping time!
JANUARY 2015SO When
will it be
ready?
Your ConfidenceIs the most important component to any estimate. How confident are you in
your estimate? 75%? 80% ? 50%?
Whichever the percentage, that is your SLUSH, which is the amount
of extra time you think you might need to accomplish this task.
http://www.rambli.com/2015/11/factors-of-software-estimation-slush/
And what should younot
apply to an estimate?
80mph
SpeedDo not build “acceleration” or “in the zone”
time to your estimates. You are only as fast
as you are going now. Building in future
“I’m gonna know it by then” numbers will
only hurt you down the road.
No CopyingNEVER use someone else’s estimates
as yours. You don’t have their
experience, knowledge or
understanding of the problem.
They are not yours, you are already
behind if you take them as your own.
No
GuessingGuessing is for the lazy – “I don’t
know, say 200 hours” – this
means nothing, this helps with
nothing, it might as well have
been 2 hours as the result will
have been the same.
Good Estimates are composed of
• Knowledge
• Experience
• Understanding the Problem
• Condfident Slush
Bad Estimates
• Apply Speed Factors
• Copy other People
• Guess
SO REMEMBER…
Good estimates
Will tell you howlong andwhen
you will deliver
Bad estimates
Will give younothing
T h e e n d
Greg Thomas
http://www.rambli.com

Mais conteúdo relacionado

Mais procurados

How to Drive an Effective Decision-Making Process by Microsoft PM
How to Drive an Effective Decision-Making Process by Microsoft PMHow to Drive an Effective Decision-Making Process by Microsoft PM
How to Drive an Effective Decision-Making Process by Microsoft PMProduct School
 
How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...
How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...
How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...TheFamily
 
Tools for better storytelling
Tools for better storytellingTools for better storytelling
Tools for better storytellingAtlassian
 
Introduction to Lean Startup & Lean User Experience Design
Introduction to Lean Startup & Lean User Experience Design Introduction to Lean Startup & Lean User Experience Design
Introduction to Lean Startup & Lean User Experience Design William Evans
 
How to Effectively Lead a Focus Group by nexTier Product Manager
How to Effectively Lead a Focus Group by nexTier Product ManagerHow to Effectively Lead a Focus Group by nexTier Product Manager
How to Effectively Lead a Focus Group by nexTier Product ManagerProduct School
 
PMI france lean startup for project management
PMI france   lean startup for project managementPMI france   lean startup for project management
PMI france lean startup for project managementFranck Debane
 
UX Fundamentals for Beginners
UX Fundamentals for BeginnersUX Fundamentals for Beginners
UX Fundamentals for BeginnersLesley Robinson
 
The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!
The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!
The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!Aggregage
 
Shannon Kelly: #MOC with VWO
Shannon Kelly: #MOC with VWOShannon Kelly: #MOC with VWO
Shannon Kelly: #MOC with VWOVWO
 
Human-centered data: using data science and human-centered design to grow you...
Human-centered data: using data science and human-centered design to grow you...Human-centered data: using data science and human-centered design to grow you...
Human-centered data: using data science and human-centered design to grow you...Cprime
 
Create a Sustainable Career Into PM by Meta Product Leader
Create a Sustainable Career Into PM by Meta Product LeaderCreate a Sustainable Career Into PM by Meta Product Leader
Create a Sustainable Career Into PM by Meta Product LeaderProduct School
 
Facilitate a Timeline Futurespective
Facilitate a Timeline FuturespectiveFacilitate a Timeline Futurespective
Facilitate a Timeline FuturespectiveJolly Rajan
 
The Evolution of The PM Career by Airbnb Product Manager Helen Sims
The Evolution of The PM Career by Airbnb Product Manager Helen SimsThe Evolution of The PM Career by Airbnb Product Manager Helen Sims
The Evolution of The PM Career by Airbnb Product Manager Helen SimsProduct School
 
How Atlassian's User Research Went Agile (and So Can Yours)
How Atlassian's User Research Went Agile (and So Can Yours)How Atlassian's User Research Went Agile (and So Can Yours)
How Atlassian's User Research Went Agile (and So Can Yours)Atlassian
 
How to Work in Cross-Functional Teams by Microsoft Sr PM
How to Work in Cross-Functional Teams by Microsoft Sr PMHow to Work in Cross-Functional Teams by Microsoft Sr PM
How to Work in Cross-Functional Teams by Microsoft Sr PMProduct School
 
How to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMHow to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMProduct School
 
Building High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-DoneBuilding High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-DoneProduct School
 
Agile Camp 2018 - Question Storming
Agile Camp 2018 - Question StormingAgile Camp 2018 - Question Storming
Agile Camp 2018 - Question StormingTheAgileDen
 

Mais procurados (20)

How to Drive an Effective Decision-Making Process by Microsoft PM
How to Drive an Effective Decision-Making Process by Microsoft PMHow to Drive an Effective Decision-Making Process by Microsoft PM
How to Drive an Effective Decision-Making Process by Microsoft PM
 
How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...
How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...
How To Scale Your Product Through Experimentation w/ Milena Court, Product Ma...
 
Tools for better storytelling
Tools for better storytellingTools for better storytelling
Tools for better storytelling
 
Introduction to Lean Startup & Lean User Experience Design
Introduction to Lean Startup & Lean User Experience Design Introduction to Lean Startup & Lean User Experience Design
Introduction to Lean Startup & Lean User Experience Design
 
How to Effectively Lead a Focus Group by nexTier Product Manager
How to Effectively Lead a Focus Group by nexTier Product ManagerHow to Effectively Lead a Focus Group by nexTier Product Manager
How to Effectively Lead a Focus Group by nexTier Product Manager
 
PMI france lean startup for project management
PMI france   lean startup for project managementPMI france   lean startup for project management
PMI france lean startup for project management
 
UX Fundamentals for Beginners
UX Fundamentals for BeginnersUX Fundamentals for Beginners
UX Fundamentals for Beginners
 
The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!
The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!
The Product Journey: Roadmaps Are Dead! Long Live Roadmaps!
 
Shannon Kelly: #MOC with VWO
Shannon Kelly: #MOC with VWOShannon Kelly: #MOC with VWO
Shannon Kelly: #MOC with VWO
 
Human-centered data: using data science and human-centered design to grow you...
Human-centered data: using data science and human-centered design to grow you...Human-centered data: using data science and human-centered design to grow you...
Human-centered data: using data science and human-centered design to grow you...
 
Create a Sustainable Career Into PM by Meta Product Leader
Create a Sustainable Career Into PM by Meta Product LeaderCreate a Sustainable Career Into PM by Meta Product Leader
Create a Sustainable Career Into PM by Meta Product Leader
 
Facilitate a Timeline Futurespective
Facilitate a Timeline FuturespectiveFacilitate a Timeline Futurespective
Facilitate a Timeline Futurespective
 
The Evolution of The PM Career by Airbnb Product Manager Helen Sims
The Evolution of The PM Career by Airbnb Product Manager Helen SimsThe Evolution of The PM Career by Airbnb Product Manager Helen Sims
The Evolution of The PM Career by Airbnb Product Manager Helen Sims
 
Coach Me if You Can
Coach Me if You CanCoach Me if You Can
Coach Me if You Can
 
How Atlassian's User Research Went Agile (and So Can Yours)
How Atlassian's User Research Went Agile (and So Can Yours)How Atlassian's User Research Went Agile (and So Can Yours)
How Atlassian's User Research Went Agile (and So Can Yours)
 
Nightmare on PMO Street
Nightmare on PMO StreetNightmare on PMO Street
Nightmare on PMO Street
 
How to Work in Cross-Functional Teams by Microsoft Sr PM
How to Work in Cross-Functional Teams by Microsoft Sr PMHow to Work in Cross-Functional Teams by Microsoft Sr PM
How to Work in Cross-Functional Teams by Microsoft Sr PM
 
How to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PMHow to Work with Teams as a Product Manager by fmr NY Magazine PM
How to Work with Teams as a Product Manager by fmr NY Magazine PM
 
Building High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-DoneBuilding High-Growth Products with Jobs-to-be-Done
Building High-Growth Products with Jobs-to-be-Done
 
Agile Camp 2018 - Question Storming
Agile Camp 2018 - Question StormingAgile Camp 2018 - Question Storming
Agile Camp 2018 - Question Storming
 

Destaque

Startup Technology: Cheatsheet for Non-Techies
Startup Technology: Cheatsheet for Non-TechiesStartup Technology: Cheatsheet for Non-Techies
Startup Technology: Cheatsheet for Non-TechiesFreedactics
 
17 Ways to Design a Presentation People Want to View
17 Ways to Design a Presentation People Want to View17 Ways to Design a Presentation People Want to View
17 Ways to Design a Presentation People Want to ViewJim MacLeod
 
Mobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigitalMobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigitalAleyda Solís
 
“Writing code that lasts” … or writing code you won’t hate tomorrow.
“Writing code that lasts” … or writing code you won’t hate tomorrow.“Writing code that lasts” … or writing code you won’t hate tomorrow.
“Writing code that lasts” … or writing code you won’t hate tomorrow.Rafael Dohms
 
Bangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - PosterBangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - PosterGanesh Samarthyam
 
What is software engineering
What is software engineeringWhat is software engineering
What is software engineeringJennifer Polack
 
10 books that every developer must read
10 books that every developer must read10 books that every developer must read
10 books that every developer must readGanesh Samarthyam
 
10 Best Productivity Hacks for Customer Service
10 Best Productivity Hacks for Customer Service10 Best Productivity Hacks for Customer Service
10 Best Productivity Hacks for Customer ServiceAdam Toporek
 
What Millennials Want?
What Millennials Want?What Millennials Want?
What Millennials Want?SurveyCrest
 
Force & Motion
Force & MotionForce & Motion
Force & Motioncorrig13
 
Design for Startups - Build Better Products, Not More Features
Design for Startups - Build Better Products, Not More FeaturesDesign for Startups - Build Better Products, Not More Features
Design for Startups - Build Better Products, Not More FeaturesVitaly Golomb
 
Introduction to Go programming
Introduction to Go programmingIntroduction to Go programming
Introduction to Go programmingExotel
 
[Infographic] How will Internet of Things (IoT) change the world as we know it?
[Infographic] How will Internet of Things (IoT) change the world as we know it?[Infographic] How will Internet of Things (IoT) change the world as we know it?
[Infographic] How will Internet of Things (IoT) change the world as we know it?InterQuest Group
 
The Future of Everything
The Future of EverythingThe Future of Everything
The Future of EverythingCharbel Zeaiter
 
Ruby On Rails - Rochester K Linux User Group
Ruby On Rails - Rochester K Linux User GroupRuby On Rails - Rochester K Linux User Group
Ruby On Rails - Rochester K Linux User GroupJose de Leon
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017Drift
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
Making Great Performance Reviews
Making Great Performance ReviewsMaking Great Performance Reviews
Making Great Performance ReviewsGreg Thomas
 
8 Things That Make Continuous Delivery Go Nuts
8 Things That Make Continuous Delivery Go Nuts8 Things That Make Continuous Delivery Go Nuts
8 Things That Make Continuous Delivery Go NutsEduards Sizovs
 

Destaque (20)

Startup Technology: Cheatsheet for Non-Techies
Startup Technology: Cheatsheet for Non-TechiesStartup Technology: Cheatsheet for Non-Techies
Startup Technology: Cheatsheet for Non-Techies
 
17 Ways to Design a Presentation People Want to View
17 Ways to Design a Presentation People Want to View17 Ways to Design a Presentation People Want to View
17 Ways to Design a Presentation People Want to View
 
Mobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigitalMobile-First SEO - The Marketers Edition #3XEDigital
Mobile-First SEO - The Marketers Edition #3XEDigital
 
“Writing code that lasts” … or writing code you won’t hate tomorrow.
“Writing code that lasts” … or writing code you won’t hate tomorrow.“Writing code that lasts” … or writing code you won’t hate tomorrow.
“Writing code that lasts” … or writing code you won’t hate tomorrow.
 
Bangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - PosterBangalore Container Conference 2017 - Poster
Bangalore Container Conference 2017 - Poster
 
What is software engineering
What is software engineeringWhat is software engineering
What is software engineering
 
10 books that every developer must read
10 books that every developer must read10 books that every developer must read
10 books that every developer must read
 
10 Best Productivity Hacks for Customer Service
10 Best Productivity Hacks for Customer Service10 Best Productivity Hacks for Customer Service
10 Best Productivity Hacks for Customer Service
 
What Millennials Want?
What Millennials Want?What Millennials Want?
What Millennials Want?
 
Force & Motion
Force & MotionForce & Motion
Force & Motion
 
Design for Startups - Build Better Products, Not More Features
Design for Startups - Build Better Products, Not More FeaturesDesign for Startups - Build Better Products, Not More Features
Design for Startups - Build Better Products, Not More Features
 
Introduction to Go programming
Introduction to Go programmingIntroduction to Go programming
Introduction to Go programming
 
[Infographic] How will Internet of Things (IoT) change the world as we know it?
[Infographic] How will Internet of Things (IoT) change the world as we know it?[Infographic] How will Internet of Things (IoT) change the world as we know it?
[Infographic] How will Internet of Things (IoT) change the world as we know it?
 
The Future of Everything
The Future of EverythingThe Future of Everything
The Future of Everything
 
Ruby On Rails - Rochester K Linux User Group
Ruby On Rails - Rochester K Linux User GroupRuby On Rails - Rochester K Linux User Group
Ruby On Rails - Rochester K Linux User Group
 
3 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 20173 Things Every Sales Team Needs to Be Thinking About in 2017
3 Things Every Sales Team Needs to Be Thinking About in 2017
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
Making Great Performance Reviews
Making Great Performance ReviewsMaking Great Performance Reviews
Making Great Performance Reviews
 
Build Features, Not Apps
Build Features, Not AppsBuild Features, Not Apps
Build Features, Not Apps
 
8 Things That Make Continuous Delivery Go Nuts
8 Things That Make Continuous Delivery Go Nuts8 Things That Make Continuous Delivery Go Nuts
8 Things That Make Continuous Delivery Go Nuts
 

Semelhante a How to Make Great Software Estimates

How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentSven Peters
 
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software DevelopmentJAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Developmentjazoon13
 
Data skills for Agile Teams- Killing story points
Data skills for Agile Teams- Killing story pointsData skills for Agile Teams- Killing story points
Data skills for Agile Teams- Killing story pointsyasinnathani
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersZeroTurnaround
 
Lessons Learned When Automating
Lessons Learned When AutomatingLessons Learned When Automating
Lessons Learned When AutomatingAlan Richardson
 
What every developer can learn from startups
What every developer can learn from startupsWhat every developer can learn from startups
What every developer can learn from startupsOleg Podsechin
 
Real world software launch
Real world software launchReal world software launch
Real world software launchKunal Johar
 
Webdev and programming
Webdev and programming  Webdev and programming
Webdev and programming George Ingram
 
It Takes Two - A Case Study in Pair Programming
It Takes Two - A Case Study in Pair ProgrammingIt Takes Two - A Case Study in Pair Programming
It Takes Two - A Case Study in Pair ProgrammingAndy Melichar
 
Pair Programming in Theory and Practice By Garrick West
Pair Programming in Theory and Practice By Garrick WestPair Programming in Theory and Practice By Garrick West
Pair Programming in Theory and Practice By Garrick WestXP Conference India
 
Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!helenalozano6
 
Mind the Gap - State of the Browser 2015
Mind the Gap - State of the Browser 2015Mind the Gap - State of the Browser 2015
Mind the Gap - State of the Browser 2015Christian Heilmann
 
Abstraction Layers Test Management Summit Faciliated Session 2014
Abstraction Layers Test Management Summit Faciliated Session 2014Abstraction Layers Test Management Summit Faciliated Session 2014
Abstraction Layers Test Management Summit Faciliated Session 2014Alan Richardson
 
Kickass Agile Development - Agile & Beyond Conference
Kickass Agile Development - Agile & Beyond ConferenceKickass Agile Development - Agile & Beyond Conference
Kickass Agile Development - Agile & Beyond ConferenceDan Chuparkoff
 
BHack 2012 - How to protect your web applications
BHack 2012 - How to protect your web applicationsBHack 2012 - How to protect your web applications
BHack 2012 - How to protect your web applicationsMagno Logan
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCupbryanbibat
 
Software Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docxSoftware Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docxrosemariebrayshaw
 
Lean responsive - Expanded
Lean responsive - ExpandedLean responsive - Expanded
Lean responsive - ExpandedJosh Jeffryes
 
Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013
Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013
Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013TEST Huddle
 

Semelhante a How to Make Great Software Estimates (20)

How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software Development
 
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software DevelopmentJAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
 
Data skills for Agile Teams- Killing story points
Data skills for Agile Teams- Killing story pointsData skills for Agile Teams- Killing story points
Data skills for Agile Teams- Killing story points
 
How To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven PetersHow To Do Kick-Ass Software Development, by Sven Peters
How To Do Kick-Ass Software Development, by Sven Peters
 
Lessons Learned When Automating
Lessons Learned When AutomatingLessons Learned When Automating
Lessons Learned When Automating
 
What every developer can learn from startups
What every developer can learn from startupsWhat every developer can learn from startups
What every developer can learn from startups
 
Real world software launch
Real world software launchReal world software launch
Real world software launch
 
Lean Responsive
Lean ResponsiveLean Responsive
Lean Responsive
 
Webdev and programming
Webdev and programming  Webdev and programming
Webdev and programming
 
It Takes Two - A Case Study in Pair Programming
It Takes Two - A Case Study in Pair ProgrammingIt Takes Two - A Case Study in Pair Programming
It Takes Two - A Case Study in Pair Programming
 
Pair Programming in Theory and Practice By Garrick West
Pair Programming in Theory and Practice By Garrick WestPair Programming in Theory and Practice By Garrick West
Pair Programming in Theory and Practice By Garrick West
 
Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!Front-End Fun: How to finally work with designers!
Front-End Fun: How to finally work with designers!
 
Mind the Gap - State of the Browser 2015
Mind the Gap - State of the Browser 2015Mind the Gap - State of the Browser 2015
Mind the Gap - State of the Browser 2015
 
Abstraction Layers Test Management Summit Faciliated Session 2014
Abstraction Layers Test Management Summit Faciliated Session 2014Abstraction Layers Test Management Summit Faciliated Session 2014
Abstraction Layers Test Management Summit Faciliated Session 2014
 
Kickass Agile Development - Agile & Beyond Conference
Kickass Agile Development - Agile & Beyond ConferenceKickass Agile Development - Agile & Beyond Conference
Kickass Agile Development - Agile & Beyond Conference
 
BHack 2012 - How to protect your web applications
BHack 2012 - How to protect your web applicationsBHack 2012 - How to protect your web applications
BHack 2012 - How to protect your web applications
 
Preparing for the WebGeek DevCup
Preparing for the WebGeek DevCupPreparing for the WebGeek DevCup
Preparing for the WebGeek DevCup
 
Software Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docxSoftware Development Life CyclesPresented byBrenda Reynold.docx
Software Development Life CyclesPresented byBrenda Reynold.docx
 
Lean responsive - Expanded
Lean responsive - ExpandedLean responsive - Expanded
Lean responsive - Expanded
 
Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013
Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013
Graham Thomas - Software Testing Secrets We Dare Not Tell - EuroSTAR 2013
 

Mais de Greg Thomas

Escape from Craptivity - How to Accomplish Your Goals
Escape from Craptivity - How to Accomplish Your GoalsEscape from Craptivity - How to Accomplish Your Goals
Escape from Craptivity - How to Accomplish Your GoalsGreg Thomas
 
Big Bad Meetings
Big Bad MeetingsBig Bad Meetings
Big Bad MeetingsGreg Thomas
 
Two Hours of Code - IoT and Cloud
Two Hours of Code - IoT and CloudTwo Hours of Code - IoT and Cloud
Two Hours of Code - IoT and CloudGreg Thomas
 
How to Be a Great StoryTeller
How to Be a Great StoryTellerHow to Be a Great StoryTeller
How to Be a Great StoryTellerGreg Thomas
 
How to Build a Great Team
How to Build a Great TeamHow to Build a Great Team
How to Build a Great TeamGreg Thomas
 

Mais de Greg Thomas (6)

Escape from Craptivity - How to Accomplish Your Goals
Escape from Craptivity - How to Accomplish Your GoalsEscape from Craptivity - How to Accomplish Your Goals
Escape from Craptivity - How to Accomplish Your Goals
 
Big Bad Meetings
Big Bad MeetingsBig Bad Meetings
Big Bad Meetings
 
Two Hours of Code - IoT and Cloud
Two Hours of Code - IoT and CloudTwo Hours of Code - IoT and Cloud
Two Hours of Code - IoT and Cloud
 
How to Be a Great StoryTeller
How to Be a Great StoryTellerHow to Be a Great StoryTeller
How to Be a Great StoryTeller
 
OneHourOfCode
OneHourOfCodeOneHourOfCode
OneHourOfCode
 
How to Build a Great Team
How to Build a Great TeamHow to Build a Great Team
How to Build a Great Team
 

Último

Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 

Último (20)

Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 

How to Make Great Software Estimates

  • 1. HOW TO MAKE GREAT SOFTWARE ESTIMATESGreg Thomas http://www.rambli.com
  • 2. And it begins…How long does it take to build this widget? When will you be done? Do I know what am I doing? Where do I start? What did they ask for? Did I think this through? Have I missed something? Am I as fast as Jeff?
  • 3. estimating These are all questions we ask ourselves when we, as developers, are presented with a new problem and asked to provide an estimate as to how long it will take AND when it will be ready.
  • 4. START? Two questions with two answers where one does not necessarily answer the other. WHERE DO WE
  • 5. EXPERIENCEKNOWLEDGE UNDERSTANDING How long it will takeIt starts with looking at your experience, knowledge and gaining a keen understanding of the problem. It starts with 3 Core Tenants
  • 6. Experience • Have I ever worked on this component? • What language am I using? • Do I know this language? • Is this a hard problem? • Do I know the platform? • Do we have requirements? • Is this a high-priority? • When does it need to be done?
  • 7. Experience starts the process of asking yourself these questions with each problem.
  • 8. experienceThe person with the most practice in that particular area of development will always yield the most “near” accurate estimation as to what needs to be done and how. Experience grows over time and increases with each success and failure. You want to fail, to get better. http://www.rambli.com/2015/10/factors-of- software-estimation-experience/
  • 9. Ruby on Rails ERP Manufacturing CRM Design Patterns MySQL .NET SharePoint Java PLACEHOLDER Communications PHP Knowledge• Do you know what language you are using? • Do you know the underlying framework and architecture? • Do you have Domain Knowledge to your field? • Do you have expertise on the platform you are building on?
  • 10. What do I know that I can leverage in this estimate?
  • 11. KnowledgeThe culmination of everything we know applied to what we know about the problem and our experience. http://www.rambli.com/2015/10/factors-of-software-estimation-your- knowledge/
  • 12. UNDERSTAND “I didn’t understand the problem” “I’m not 100% sure what to do here” “It should just work” “It didn’t do this last time” All statements that are uttered after you have started coding, but failed to take the time to understand the problem you are trying to solve.
  • 13. Never start coding if you do not understand what you are trying to code.
  • 14. Understand the problem 1) Know the end user and identify what they expect 2) Learn the platform/architecture that you are building on 3) Write down your assumptions and vet them with your users, peers and team. There is no “should” when you Understand. http://www.rambli.com/2015/10/factors-of-software-estimation- understand-the-problem/
  • 16. Not YETWe have only figured out how long it will take to accomplish our task By Understanding the Problem, leveraging our Experience and applying our Knowledge we have created an estimate that we feel can stand by. But it is not shipping time!
  • 17. JANUARY 2015SO When will it be ready?
  • 18. Your ConfidenceIs the most important component to any estimate. How confident are you in your estimate? 75%? 80% ? 50%? Whichever the percentage, that is your SLUSH, which is the amount of extra time you think you might need to accomplish this task. http://www.rambli.com/2015/11/factors-of-software-estimation-slush/
  • 19. And what should younot apply to an estimate?
  • 20. 80mph SpeedDo not build “acceleration” or “in the zone” time to your estimates. You are only as fast as you are going now. Building in future “I’m gonna know it by then” numbers will only hurt you down the road.
  • 21. No CopyingNEVER use someone else’s estimates as yours. You don’t have their experience, knowledge or understanding of the problem. They are not yours, you are already behind if you take them as your own.
  • 22. No GuessingGuessing is for the lazy – “I don’t know, say 200 hours” – this means nothing, this helps with nothing, it might as well have been 2 hours as the result will have been the same.
  • 23. Good Estimates are composed of • Knowledge • Experience • Understanding the Problem • Condfident Slush Bad Estimates • Apply Speed Factors • Copy other People • Guess SO REMEMBER…
  • 24. Good estimates Will tell you howlong andwhen you will deliver Bad estimates Will give younothing
  • 25. T h e e n d Greg Thomas http://www.rambli.com