SlideShare a Scribd company logo
Planning XPPlanning XP
Mark Windholtz
ObjectWind Software Ltd
www.ObjectWind.com 2
Who Am I
♦ Mark Windholtz
♦ ObjectWind Software Ltd
♦ 14 years Building Professional Software
♦ Business, Medical, Engineering, Military
♦ First contact with XP in Oct 1996
♦ Started Six XP teams
♦ Consulted for Eight other XP teams
www.ObjectWind.com 3
Delivering to Deadline
XP is about delivering to deadline.
Every two weeks you release something
and every two weeks you check your plan.
You get really good at getting stuff done.
- James Grenning, ObjectMentor
www.ObjectWind.com 4
A Local XP Team
www.ObjectWind.com 5
What Management Gets
♦ Management gets …
– An Overall release plan (What, when, and how much)
– Most value out of each programming week
– Visible Progress: code running repeatable tests
– To Change direction as business changes
– Be informed early of schedule changes
www.ObjectWind.com 6
What Programmers Get
♦ Programmers are …
– told what is needed in priority order
– Allowed to produce quality work
– Allowed to ask for help
– Allowed to make and update estimates
– Allowed to accept responsibility
www.ObjectWind.com 7
Business to Code Process
Product is a bunch of …
Release is a bunch of …
Iteration is a bunch of …
Acceptance Test is a bunch of …
Task is a bunch of …
Episode is a bunch of …
Test is a bunch of …
Code
www.ObjectWind.com 8
Time Scale
♦ Product: Years
♦ Release: Month(s)
♦ Iteration: Week(s)
♦ Acceptance Test: Small piece of Biz value
♦ Task: Technical task
♦ Episode: 1-3 hours then integrate
♦ Test: 1 to 5 minutes
♦ Code: 0 to 20 minutes to satisfy test case
www.ObjectWind.com 9
Release Planning Game
(Exploration )
“Too Big”
Split
the Story
(Customer)
Write a Story
(Customer)
Spike
the Story
(Programmers)
Estimate
a Story
(Programmers)
“Don’t Know”
Go to Planning
♦ Goal
– Understand what the system is to do
♦ Result
– A working set of estimates
www.ObjectWind.com 10
Release Planning Game
(Planning )
Choose
Scope
(Customer)
Sort Stories
by Value
(Customer)
Declare
Velocity
(Programmers)
♦ Goal
– Plan the next Release so it gives the most bang
for the buck.
♦ Input
– Set of estimated stories
♦ Result
– A prioritized list of stories currently planned to
by included in next release
www.ObjectWind.com 11
Iteration Planning Game
( finding a fit )
♦ Biz
– Scope
– Priority
– Features per
Release
– Date of Release
♦ Tech
– Estimates
– Consequences
– Process
– Detailed Schedule
Feature Requests
Estimates & Budget
What’s in / What’s out
www.ObjectWind.com 12
Time Scale
♦ Product: Years
♦ Release: Month(s)
♦ Iteration: Week(s)
♦ Acceptance Test: Small piece of Biz value
♦ Task: Technical task
♦ Episode: 1-3 hours then integrate
♦ Test: 1 to 5 minutes
♦ Code: 0 to 20 minutes to satisfy test case
www.ObjectWind.com 13
XP Episode Cycle
analysis
test
code
design
( refactor )
discuss with user
integrate or toss
www.ObjectWind.com 14
Velocity
♦ Tasks are estimated
– 1 to 3 ideal days
– Measured in relative task points
♦ How many task points were done?
♦ Historical velocity data
– Rough (but real) predictor future progress
– Cost, scope, schedule
www.ObjectWind.com 15
What is Progress?
♦ A Task is either Done or Not Done
– 70% done is meaningless
♦ Done means done!
– Done but not tested is meaningless
– Done but not integrated is meaningless
♦ Code is written in small, running pieces
♦ No large leaps forward in a fog …
… and falling off a cliff
www.ObjectWind.com 16
Unit Tests
♦ All production code is tested
♦ Tests provide incremental certitude
♦ Test graph
– Rough measure of accomplishment
– Quick indicator of a stalling project
www.ObjectWind.com 17
Unit & Functional Tests: 7/30
0
100
200
300
400
500
600
700
800
900
1000
1100
0 23 46 69 92 115 138 161 184 207 230
0
14
28
42
56
70
84
98
112
126
140
154
Total Tests:
Unit & Functional
Functional
Test Count
Iteration 012 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
www.ObjectWind.com 18
Unit & Functional Tests w/ Notes
0
100
200
300
400
500
600
700
800
900
1000
1100
0 23 46 69 92 115 138 161 184 207 230
0
14
28
42
56
70
84
98
112
126
140
154
Added many new
team members
Moved from
PC to HP-Unix
Worked
longer
hours
Refactored
some tests
Optimized
How Tasks
were
Determined
Iteration 012 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
www.ObjectWind.com 19
Unit & Functional Tests: Feb 2002
0
100
200
300
400
500
600
700
800
900
1000
1100
1200
1300
1400
1500
1600
1700
1800
1900
2000
2100
2200
2300
2400
0 25 50 75 100 125 150 175 200 225 250 275 300 325 350 375
Total Elapsed Business Days in Project
0
20
40
60
80
100
120
140
160
180
200
220
240
260
280
300
320
340
360
380
400
420
440
460
480
Iteration 30
(2 weeks)
www.ObjectWind.com 20
JUnit TestRunner in Eclipse
www.ObjectWind.com 21
Core Practices
Small Releases
Planning Game *
On-site Customer
Open Workspace
Continuous Integration
Collective Ownership
Sustainable Pace
Test-First *
Pair Programming *
Continuous Design Improvement
Simple Design
Coding Standard
Customer Programmer Team .
How to
Define Features Iteratively
How to
Build Features Iteratively
How to
Communicate & Schedule
www.ObjectWind.com 22
ObjectWind Services
♦ Agile Software Engineering Practices
– Your team, or
– Outsourced XP Projects
♦ Project Services
– Before: Design Reviews
– During: Project Reviews & Expert Coding
– After: Retrospectives (Lessons Learned)
♦ Training with Object Mentor
www.ObjectWind.com

More Related Content

Viewers also liked

Taller de maquinas termicas corte 2
Taller de maquinas termicas corte 2Taller de maquinas termicas corte 2
Taller de maquinas termicas corte 2genice guzman
 
Greater Boston Association of Realtors January 2017 Monthly Indicators Report
Greater Boston Association of Realtors January 2017 Monthly Indicators ReportGreater Boston Association of Realtors January 2017 Monthly Indicators Report
Greater Boston Association of Realtors January 2017 Monthly Indicators ReportJoe Schutt
 
Elaborac de encurtido robyn grupo 2009
Elaborac de encurtido robyn grupo 2009Elaborac de encurtido robyn grupo 2009
Elaborac de encurtido robyn grupo 2009Juan Ames Ordoñez
 
Constituição mexicana 1917
Constituição mexicana 1917Constituição mexicana 1917
Constituição mexicana 1917maria16431617
 
Negotiating in south korea
Negotiating in south koreaNegotiating in south korea
Negotiating in south koreaIvanka Shutiak
 
Asme viii upv 1943
Asme viii upv 1943Asme viii upv 1943
Asme viii upv 1943alanxene
 
Apresentação Executiva Paralelo CS - Qlik - Business Intelligence
Apresentação Executiva Paralelo CS - Qlik - Business IntelligenceApresentação Executiva Paralelo CS - Qlik - Business Intelligence
Apresentação Executiva Paralelo CS - Qlik - Business IntelligenceLucas Magalhães
 
2 8 polynomial inequalities
2 8 polynomial inequalities2 8 polynomial inequalities
2 8 polynomial inequalitiesLomasPreCalc
 
Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...
Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...
Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...Simone Fini
 

Viewers also liked (15)

taller 1-112
taller 1-112taller 1-112
taller 1-112
 
Taller de maquinas termicas corte 2
Taller de maquinas termicas corte 2Taller de maquinas termicas corte 2
Taller de maquinas termicas corte 2
 
Greater Boston Association of Realtors January 2017 Monthly Indicators Report
Greater Boston Association of Realtors January 2017 Monthly Indicators ReportGreater Boston Association of Realtors January 2017 Monthly Indicators Report
Greater Boston Association of Realtors January 2017 Monthly Indicators Report
 
Elaborac de encurtido robyn grupo 2009
Elaborac de encurtido robyn grupo 2009Elaborac de encurtido robyn grupo 2009
Elaborac de encurtido robyn grupo 2009
 
Internet sano
Internet sanoInternet sano
Internet sano
 
Constituição mexicana 1917
Constituição mexicana 1917Constituição mexicana 1917
Constituição mexicana 1917
 
Bhartiya industries
Bhartiya industriesBhartiya industries
Bhartiya industries
 
Evaluación Económica
Evaluación EconómicaEvaluación Económica
Evaluación Económica
 
Negotiating in south korea
Negotiating in south koreaNegotiating in south korea
Negotiating in south korea
 
Asme viii upv 1943
Asme viii upv 1943Asme viii upv 1943
Asme viii upv 1943
 
Apresentação Executiva Paralelo CS - Qlik - Business Intelligence
Apresentação Executiva Paralelo CS - Qlik - Business IntelligenceApresentação Executiva Paralelo CS - Qlik - Business Intelligence
Apresentação Executiva Paralelo CS - Qlik - Business Intelligence
 
2 8 polynomial inequalities
2 8 polynomial inequalities2 8 polynomial inequalities
2 8 polynomial inequalities
 
Web 2.0
Web 2.0Web 2.0
Web 2.0
 
Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...
Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...
Costruzione e Sviluppo in ambiente STNucleo di un Quadricottero con Stabilizz...
 
DIG5569 Final Project
DIG5569 Final Project DIG5569 Final Project
DIG5569 Final Project
 

Similar to Planning XP

Ivan Dryzhyruk “Ducks Don’t Like Bugs”
Ivan Dryzhyruk “Ducks Don’t Like Bugs”Ivan Dryzhyruk “Ducks Don’t Like Bugs”
Ivan Dryzhyruk “Ducks Don’t Like Bugs”LogeekNightUkraine
 
Van heeringen estimate faster, cheaper, better
Van heeringen   estimate faster, cheaper, betterVan heeringen   estimate faster, cheaper, better
Van heeringen estimate faster, cheaper, betterHarold van Heeringen
 
DevopsBusinessCaseTemplate
DevopsBusinessCaseTemplateDevopsBusinessCaseTemplate
DevopsBusinessCaseTemplatePeter Lamar
 
How to build a hardware in one day v0.9
How to build a hardware in one day v0.9How to build a hardware in one day v0.9
How to build a hardware in one day v0.9seeedstudio
 
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?TechWell
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware Cprime
 
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ..."Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...Fwdays
 
Extreme Programming Talk Wise Consulting Www.Talkwiseconsulting
Extreme  Programming    Talk Wise  Consulting   Www.TalkwiseconsultingExtreme  Programming    Talk Wise  Consulting   Www.Talkwiseconsulting
Extreme Programming Talk Wise Consulting Www.Talkwiseconsultingtalkwiseone
 
Extreme programming talk wise consulting - www.talkwiseconsulting
Extreme programming   talk wise consulting - www.talkwiseconsultingExtreme programming   talk wise consulting - www.talkwiseconsulting
Extreme programming talk wise consulting - www.talkwiseconsultingtalkwiseone
 
How to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOpsHow to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOpsDynatrace
 
Data Science: Good, Bad and Ugly by Irina Kukuyeva
Data Science: Good, Bad and Ugly by Irina KukuyevaData Science: Good, Bad and Ugly by Irina Kukuyeva
Data Science: Good, Bad and Ugly by Irina KukuyevaData Con LA
 
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Codemotion
 
Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...Demi Ben-Ari
 
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileEngineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileKenAtIndeed
 
improving the performance of Rails web Applications
improving the performance of Rails web Applicationsimproving the performance of Rails web Applications
improving the performance of Rails web ApplicationsJohn McCaffrey
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardTechWell
 
Elasticsearch Performance Testing and Scaling @ Signal
Elasticsearch Performance Testing and Scaling @ SignalElasticsearch Performance Testing and Scaling @ Signal
Elasticsearch Performance Testing and Scaling @ SignalJoachim Draeger
 
Solve Everyday IT Problems with DevOps
Solve Everyday IT Problems with DevOpsSolve Everyday IT Problems with DevOps
Solve Everyday IT Problems with DevOpsJosiah Renaudin
 
AppDynamics User Group
AppDynamics User GroupAppDynamics User Group
AppDynamics User GroupMike Ruangutai
 

Similar to Planning XP (20)

Ivan Dryzhyruk “Ducks Don’t Like Bugs”
Ivan Dryzhyruk “Ducks Don’t Like Bugs”Ivan Dryzhyruk “Ducks Don’t Like Bugs”
Ivan Dryzhyruk “Ducks Don’t Like Bugs”
 
Van heeringen estimate faster, cheaper, better
Van heeringen   estimate faster, cheaper, betterVan heeringen   estimate faster, cheaper, better
Van heeringen estimate faster, cheaper, better
 
DevopsBusinessCaseTemplate
DevopsBusinessCaseTemplateDevopsBusinessCaseTemplate
DevopsBusinessCaseTemplate
 
How to build a hardware in one day v0.9
How to build a hardware in one day v0.9How to build a hardware in one day v0.9
How to build a hardware in one day v0.9
 
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
What to Do—Develop Your Own Automation or Use Crowdsourced Testing?
 
Introduction to Agile Hardware
Introduction to Agile Hardware Introduction to Agile Hardware
Introduction to Agile Hardware
 
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ..."Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
"Quality Assurance: Achieving Excellence in startup without a Dedicated QA", ...
 
Extreme Programming Talk Wise Consulting Www.Talkwiseconsulting
Extreme  Programming    Talk Wise  Consulting   Www.TalkwiseconsultingExtreme  Programming    Talk Wise  Consulting   Www.Talkwiseconsulting
Extreme Programming Talk Wise Consulting Www.Talkwiseconsulting
 
Extreme programming talk wise consulting - www.talkwiseconsulting
Extreme programming   talk wise consulting - www.talkwiseconsultingExtreme programming   talk wise consulting - www.talkwiseconsulting
Extreme programming talk wise consulting - www.talkwiseconsulting
 
How to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOpsHow to Better Manage Technical Debt While Innovating on DevOps
How to Better Manage Technical Debt While Innovating on DevOps
 
Data Science: Good, Bad and Ugly by Irina Kukuyeva
Data Science: Good, Bad and Ugly by Irina KukuyevaData Science: Good, Bad and Ugly by Irina Kukuyeva
Data Science: Good, Bad and Ugly by Irina Kukuyeva
 
Sanjay Sharma
Sanjay SharmaSanjay Sharma
Sanjay Sharma
 
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems Done "The Simple Way" - Demi Ben-Ari - Codemotion...
 
Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...
Monitoring Big Data Systems "Done the simple way" - Demi Ben-Ari - Codemotion...
 
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond AgileEngineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
Engineering Velocity @indeed eng presented on Sept 24 2014 at Beyond Agile
 
improving the performance of Rails web Applications
improving the performance of Rails web Applicationsimproving the performance of Rails web Applications
improving the performance of Rails web Applications
 
Continuous Performance Testing: The New Standard
Continuous Performance Testing: The New StandardContinuous Performance Testing: The New Standard
Continuous Performance Testing: The New Standard
 
Elasticsearch Performance Testing and Scaling @ Signal
Elasticsearch Performance Testing and Scaling @ SignalElasticsearch Performance Testing and Scaling @ Signal
Elasticsearch Performance Testing and Scaling @ Signal
 
Solve Everyday IT Problems with DevOps
Solve Everyday IT Problems with DevOpsSolve Everyday IT Problems with DevOps
Solve Everyday IT Problems with DevOps
 
AppDynamics User Group
AppDynamics User GroupAppDynamics User Group
AppDynamics User Group
 

More from Mark Windholtz

XP-Retro from Codemash.org Jan 2018
XP-Retro from Codemash.org Jan 2018XP-Retro from Codemash.org Jan 2018
XP-Retro from Codemash.org Jan 2018Mark Windholtz
 
Domain Driven Design Communication Techniques
Domain Driven Design Communication TechniquesDomain Driven Design Communication Techniques
Domain Driven Design Communication TechniquesMark Windholtz
 
Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15Mark Windholtz
 
Domain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic PatternsDomain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic PatternsMark Windholtz
 
Domain Driven Design - Building Blocks
Domain Driven Design - Building BlocksDomain Driven Design - Building Blocks
Domain Driven Design - Building BlocksMark Windholtz
 
War between Tools and Design 2016
War between Tools and Design 2016War between Tools and Design 2016
War between Tools and Design 2016Mark Windholtz
 
2020-Feb: Testing: Cables and Chains
2020-Feb: Testing: Cables and Chains2020-Feb: Testing: Cables and Chains
2020-Feb: Testing: Cables and ChainsMark Windholtz
 
2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use it2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use itMark Windholtz
 
Planning XP - Extreme Programming
Planning XP - Extreme ProgrammingPlanning XP - Extreme Programming
Planning XP - Extreme ProgrammingMark Windholtz
 
2017 June AgileCincy Event Storming
2017 June AgileCincy Event Storming2017 June AgileCincy Event Storming
2017 June AgileCincy Event StormingMark Windholtz
 

More from Mark Windholtz (10)

XP-Retro from Codemash.org Jan 2018
XP-Retro from Codemash.org Jan 2018XP-Retro from Codemash.org Jan 2018
XP-Retro from Codemash.org Jan 2018
 
Domain Driven Design Communication Techniques
Domain Driven Design Communication TechniquesDomain Driven Design Communication Techniques
Domain Driven Design Communication Techniques
 
Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15Domain Driven Design - Distillation - Chapter 15
Domain Driven Design - Distillation - Chapter 15
 
Domain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic PatternsDomain Driven Design Big Picture Strategic Patterns
Domain Driven Design Big Picture Strategic Patterns
 
Domain Driven Design - Building Blocks
Domain Driven Design - Building BlocksDomain Driven Design - Building Blocks
Domain Driven Design - Building Blocks
 
War between Tools and Design 2016
War between Tools and Design 2016War between Tools and Design 2016
War between Tools and Design 2016
 
2020-Feb: Testing: Cables and Chains
2020-Feb: Testing: Cables and Chains2020-Feb: Testing: Cables and Chains
2020-Feb: Testing: Cables and Chains
 
2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use it2019-Nov: Domain Driven Design (DDD) and when not to use it
2019-Nov: Domain Driven Design (DDD) and when not to use it
 
Planning XP - Extreme Programming
Planning XP - Extreme ProgrammingPlanning XP - Extreme Programming
Planning XP - Extreme Programming
 
2017 June AgileCincy Event Storming
2017 June AgileCincy Event Storming2017 June AgileCincy Event Storming
2017 June AgileCincy Event Storming
 

Recently uploaded

UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1DianaGray10
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoTAnalytics
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»QADay
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutesconfluent
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsVlad Stirbu
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsExpeed Software
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform EngineeringJemma Hussein Allen
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesThousandEyes
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Product School
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupCatarinaPereira64715
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Product School
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀DianaGray10
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyJohn Staveley
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
 

Recently uploaded (20)

UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1UiPath Test Automation using UiPath Test Suite series, part 1
UiPath Test Automation using UiPath Test Suite series, part 1
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 
Speed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in MinutesSpeed Wins: From Kafka to APIs in Minutes
Speed Wins: From Kafka to APIs in Minutes
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 

Planning XP

  • 1. Planning XPPlanning XP Mark Windholtz ObjectWind Software Ltd
  • 2. www.ObjectWind.com 2 Who Am I ♦ Mark Windholtz ♦ ObjectWind Software Ltd ♦ 14 years Building Professional Software ♦ Business, Medical, Engineering, Military ♦ First contact with XP in Oct 1996 ♦ Started Six XP teams ♦ Consulted for Eight other XP teams
  • 3. www.ObjectWind.com 3 Delivering to Deadline XP is about delivering to deadline. Every two weeks you release something and every two weeks you check your plan. You get really good at getting stuff done. - James Grenning, ObjectMentor
  • 5. www.ObjectWind.com 5 What Management Gets ♦ Management gets … – An Overall release plan (What, when, and how much) – Most value out of each programming week – Visible Progress: code running repeatable tests – To Change direction as business changes – Be informed early of schedule changes
  • 6. www.ObjectWind.com 6 What Programmers Get ♦ Programmers are … – told what is needed in priority order – Allowed to produce quality work – Allowed to ask for help – Allowed to make and update estimates – Allowed to accept responsibility
  • 7. www.ObjectWind.com 7 Business to Code Process Product is a bunch of … Release is a bunch of … Iteration is a bunch of … Acceptance Test is a bunch of … Task is a bunch of … Episode is a bunch of … Test is a bunch of … Code
  • 8. www.ObjectWind.com 8 Time Scale ♦ Product: Years ♦ Release: Month(s) ♦ Iteration: Week(s) ♦ Acceptance Test: Small piece of Biz value ♦ Task: Technical task ♦ Episode: 1-3 hours then integrate ♦ Test: 1 to 5 minutes ♦ Code: 0 to 20 minutes to satisfy test case
  • 9. www.ObjectWind.com 9 Release Planning Game (Exploration ) “Too Big” Split the Story (Customer) Write a Story (Customer) Spike the Story (Programmers) Estimate a Story (Programmers) “Don’t Know” Go to Planning ♦ Goal – Understand what the system is to do ♦ Result – A working set of estimates
  • 10. www.ObjectWind.com 10 Release Planning Game (Planning ) Choose Scope (Customer) Sort Stories by Value (Customer) Declare Velocity (Programmers) ♦ Goal – Plan the next Release so it gives the most bang for the buck. ♦ Input – Set of estimated stories ♦ Result – A prioritized list of stories currently planned to by included in next release
  • 11. www.ObjectWind.com 11 Iteration Planning Game ( finding a fit ) ♦ Biz – Scope – Priority – Features per Release – Date of Release ♦ Tech – Estimates – Consequences – Process – Detailed Schedule Feature Requests Estimates & Budget What’s in / What’s out
  • 12. www.ObjectWind.com 12 Time Scale ♦ Product: Years ♦ Release: Month(s) ♦ Iteration: Week(s) ♦ Acceptance Test: Small piece of Biz value ♦ Task: Technical task ♦ Episode: 1-3 hours then integrate ♦ Test: 1 to 5 minutes ♦ Code: 0 to 20 minutes to satisfy test case
  • 13. www.ObjectWind.com 13 XP Episode Cycle analysis test code design ( refactor ) discuss with user integrate or toss
  • 14. www.ObjectWind.com 14 Velocity ♦ Tasks are estimated – 1 to 3 ideal days – Measured in relative task points ♦ How many task points were done? ♦ Historical velocity data – Rough (but real) predictor future progress – Cost, scope, schedule
  • 15. www.ObjectWind.com 15 What is Progress? ♦ A Task is either Done or Not Done – 70% done is meaningless ♦ Done means done! – Done but not tested is meaningless – Done but not integrated is meaningless ♦ Code is written in small, running pieces ♦ No large leaps forward in a fog … … and falling off a cliff
  • 16. www.ObjectWind.com 16 Unit Tests ♦ All production code is tested ♦ Tests provide incremental certitude ♦ Test graph – Rough measure of accomplishment – Quick indicator of a stalling project
  • 17. www.ObjectWind.com 17 Unit & Functional Tests: 7/30 0 100 200 300 400 500 600 700 800 900 1000 1100 0 23 46 69 92 115 138 161 184 207 230 0 14 28 42 56 70 84 98 112 126 140 154 Total Tests: Unit & Functional Functional Test Count Iteration 012 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
  • 18. www.ObjectWind.com 18 Unit & Functional Tests w/ Notes 0 100 200 300 400 500 600 700 800 900 1000 1100 0 23 46 69 92 115 138 161 184 207 230 0 14 28 42 56 70 84 98 112 126 140 154 Added many new team members Moved from PC to HP-Unix Worked longer hours Refactored some tests Optimized How Tasks were Determined Iteration 012 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
  • 19. www.ObjectWind.com 19 Unit & Functional Tests: Feb 2002 0 100 200 300 400 500 600 700 800 900 1000 1100 1200 1300 1400 1500 1600 1700 1800 1900 2000 2100 2200 2300 2400 0 25 50 75 100 125 150 175 200 225 250 275 300 325 350 375 Total Elapsed Business Days in Project 0 20 40 60 80 100 120 140 160 180 200 220 240 260 280 300 320 340 360 380 400 420 440 460 480 Iteration 30 (2 weeks)
  • 21. www.ObjectWind.com 21 Core Practices Small Releases Planning Game * On-site Customer Open Workspace Continuous Integration Collective Ownership Sustainable Pace Test-First * Pair Programming * Continuous Design Improvement Simple Design Coding Standard Customer Programmer Team . How to Define Features Iteratively How to Build Features Iteratively How to Communicate & Schedule
  • 22. www.ObjectWind.com 22 ObjectWind Services ♦ Agile Software Engineering Practices – Your team, or – Outsourced XP Projects ♦ Project Services – Before: Design Reviews – During: Project Reviews & Expert Coding – After: Retrospectives (Lessons Learned) ♦ Training with Object Mentor www.ObjectWind.com