SlideShare a Scribd company logo
1 of 101
Ron Quartel
Complementing Scrum with Technical Excellence for
hyper-productivity
Who is Ron Quartel?
• XP Developer – Code Crafter
• XP Coach
• Agile Consultant / Trainer
• Lean Entrepreneur – Backlog Optimizer™
• Systems Engineer – Mobile Testing & CI
• Founder – FAST Agile™ Scaled Technology
http://www.fast-agile.com
The fastest software delivery method on the
planet today!
fast-agile.com
XP = Extreme Programming
When you see slides past this one, Extreme Programming will be referred to only as
XP.
fast-agile.com
How do you get to hyper
productivity?
With Scrum
fast-agile.com
Let’s ask the Doctor – Dr. Jeff Sutherland
“Few implementations of Scrum achieve the
hyper productive state for which Scrum was
designed (5-10 times normal performance).
Those that do all implement variations on XP”
http://jeffsutherland.com/2007/07/origins-of-scrum.html - July 2007
fast-agile.com
The End
Thank you for coming! (Please be sure to leave good feedback.)
fast-agile.com
So why don’t companies
implement XP?
Stats and Quotes
fast-agile.com
Agile the easy way (Scrum) has
trumped Agile the disciplined way
(XP).
More quotes from the Doctor and some stats
fast-agile.com
Scrum can be rolled out in two days
versus XP many months
The Scrum framework for software development was
designed to get a team started in two or three days, whereas
engineering practices often take many months to implement.
Therefore, it left the question of when (and whether) to implement specific practices up
to each team. Scrum co-creators Jeff Sutherland and Ken Schwaber recommend that
Scrum teams get started immediately and create a list of impediments and a process
improvement plan. As engineering practices are identified as impediments, teams should
look to XP practices as a way to improve. The best teams run Scrum supplemented with XP
practices.” – Dr Jeff Sutherland
https://msdn.microsoft.com/en-us/library/dd997578.aspx ~ 2013
fast-agile.com
Scrum is easier to adopt without XP
The Scrum Guide (scrumguides.org) doesn't say anything
about engineering practices. However, the first Scrum team
used everything in XP and more. Radical refactorization
occurred daily. I wanted engineering practices specified in
Scrum but Ken Schwaber convinced me that Scrum would be
easier to adopt and work anywhere if we didn't mandate
specific software practices. He was right. – Dr Jeff Sutherland
http://www.reddit.com/r/IAmA/comments/2hw05i/i_am_jeff_sutherland_the_cocreator_of_scrum_ask/ckwi02e - 30th Sep 2014
fast-agile.com
Scrum’s Lip Service (to XP)
Scrum says you should being doing XP – but in reality it just doesn’t happen.
https://www.scrumalliance.org/community/spotlight/mike-cohn/april-2014/scrum-xp-better-together
fast-agile.com
2015 State of Agile Report – Version One
fast-agile.com
fast-agile.com
2015StateofScrumReport
ScrumAlliance
How do we fix the problem?
And get undisciplined Scrum orgs/teams to want to take up XP?
fast-agile.com
Sad truth – companies don’t care about
improving quality.
If companies really cared about quality, then they would already have
implemented XP. The fact is – they don’t care about quality.
Don’t talk about quality. It’s falling on deaf ears.
fast-agile.com
Talk about speed and/or “Increasing Velocity”
Instead
And the same companies are now all ears. <sigh>
(I just vomited a little bit in my mouth)
This is why “DevOps” and “Continuous Delivery” are the industries darling terms right now…
fast-agile.com
The Phoenix Project, Hero developers and
DevOps
Why didn’t the Brent character ever pair?!?
Why didn’t they create an XP team?
• Collective code ownership
• Pair programming
• Coding standards
• Small releases
• TDD & testing culture
• Continuous Integration
fast-agile.com
Technical Excellence
Whatever you want to call it – do it!
• Agile Engineering Practices
• Extreme Programming
• Agile Technical Practices
• Code Craftsmanship
• Technical Excellence
• Modern Development Practices
fast-agile.com
Continuous
attention to
technical
excellence
and good design
enhances agility.
fast-agile.com
Recap of Problem
• Scrum chose to go easier to adopt route and leave XP Practices
• Scrum recommends XP practices are worked on the same way as
impediments and only when identified
• Dr Sutherland has seen very few hyper-performing Scrum teams
• The only hyper-performing teams Dr Sutherland saw, were doing XP!
• In most companies, speed is more important than quality
fast-agile.com
How to solve the problem
How do you convince a team and management to take up XP?
(When XP is so counter intuitive)
fast-agile.com
The Scrum
Gauntlet of Debt
An exercise/simulation that will illustrate to teams and managers why they need to
complement Scrum with XP and what happens if you don’t
fast-agile.com
Understand room make up
Show of hands :-
• Devs
• Testers
• Managers
• Scrum Masters
• Agile Consultants
• Other
fast-agile.com
Running the Gauntlet - Requirements
• Volunteers (7-12 volunteers)
• Two walls and two easels or 4 easels
• Chairs (observers can give up theirs while watching if need be)
• Sticky notes (small square size is better but any will work)
• Flipchart (Sticky is best)
• Blue tape
• Something with a countdown timer (smartphone apps work)
• Three surfaces for flipchart sheet. E.g. walls, whiteboard, easel
• Marker pens to write on flipcharts (and whiteboard)
fast-agile.com
fast-agile.com
Prep – Create the Sprinting dev room
Clear a gauntlet area in the room and layout like this:
fast-agile.com
This flipchart sheet is optional. You only need when even numbers and more than 7 volunteers
Done board
To Do
To Test
Board
To Do
To Test
Board
Done board
Create Backlog and Done Boards (Flipcharts)
fast-agile.com
Tip
If using a flipchart, use the blue tape to hold the bottom corners of the
flipchart down
fast-agile.com
Volunteers and Roles
Ask for volunteers with warning that it is a physical demonstration and
there will be running. Do not volunteer unless comfortable with this.
Divide the volunteers into testers and developers using one of these
formations depending on the number of volunteers
• 10 devs and 1or 2 testers
• 8 devs and 1 or 2 testers
• 6 devs and 1 or 2 testers
Divide devs into two even groups
fast-agile.com
Prep participants and Timer Role
• Identify another timer volunteer (who has a smart device with
countdown timer app)
• Explain to participants that this is a simulation. The goal is not to
“win” and game the system. The goal is to mimic what real life looks
like
• Instruct participants to act like a dysfunctional team and not
communicate with each other (otherwise they start gaming the
system)
fast-agile.com
Placing of volunteers in the gauntlet
Divide devs in two groups and place volunteers like so :
fast-agile.com
Optional Tester (if even numbers)
DevsDevs
Tester
Rules of the game/simulation
• An iteration lasts 30 seconds
• Developers run to opposite wall, pick a story token (sticky note) from TODO
and run back to their starting wall, placing the token in the TO TEST column
• A Dev can only work on one story at a time
• Testers wait by their Done board until they see stories ready to TEST and
then run to (either) board, grab up to 3 stories (but no more than 3) and
return them to their done board
• Everyone must run (That is why they call it Sprinting!)
• No collusion or working out a system. You are mimicking a dysfunctional
team (Be sure to have explained this or else they game the system)
• BE CAREFUL!!! (Re-iterate and ask volunteers again if comfortable)
fast-agile.com
BE CAREFUL!!!
• Health and safety
• Don’t have anyone pregnant, wearing high heels or with physical
disabilities that may cause risk to themselves or others in the
volunteers
• Make sure volunteers are comfortable with exercise otherwise switch
out
• Re-iterate to volunteers Safety First!
• Be careful!!!
fast-agile.com
Any Questions? Then Go!
fast-agile.com
Notes for facilitator – Sprint 0
• While the team are sprinting, you play the role of a manager and
shout at the team “FASTER”, “I Need more features” etc.
• Run the first sprint without keeping score (it’s a test run)
• (the reason to not keep score is that because the velocity of the first
one is usually lower because they are working it out and it gives you a
chance to find out if anyone misunderstood anything)
• At the end of the sprint tell the team to reset the boards
• Ask them if they are warmed up and a little puffed? “That is why they
call it a sprint!”
fast-agile.com
Management Abuses to shout at team
• Faster!
• I need more features!
• What is wrong with this team?
• Why are they so slow?
• Why are your estimates all wrong?
• More velocity!
• Development monkeys!
• Screw code practices – I need Features!
• Stop that pair programming nonsense!
• My last team was better than you guys
• Don’t make me fire you
• I should out source the lot of you
• Etc…
fast-agile.com
Sprint 1 & introduction of technical debt
• Keep shouting abuse
• This sprint, record the velocity
• Now, place chairs in the gauntlet/sprinting area with the explanation
“These chairs represent technical debt. Every story you completed in the
last iteration, you left behind technical debt. This is what your codebase
starts to look like. Can anyone relate? Do your teams have technical debt”
(I’ve yet to have a no answer)
• Be even more careful!!!! No leaping or moving chairs.
• Testers will move one task from TO TEST to TO DO on each run (to
represent an increase in bug count due to technical debt)
• Go! Start sprint 2 and be sure to keep the abuse
fast-agile.com
Sprint 2 Management Abuse
• I don’t want to hear about technical debt excuses – I want features
damn it!
• When can we release?
• No refactoring or cleaning up – Features!
• Run, run, run!
• Lazy coders!
• I’m paying you too much!
• There’s going to be overtime!
fast-agile.com
Sprint 3 & introduction of refactoring
• Put more chairs in the gauntlet to make it near impossible for the team
• Explain to the room that this is what a day looks like for a developer in a legacy system
• This is what their life is like – get confirmation from the room e.g. “can anyone relate?”
• Be sure to point out the team are looking haggard and tired at this point
• Ask them if they think they can keep this pace up indefinitely and what they think of the
upcoming sprint!
• Now introduce refactoring and sustainable pace
• Developers are now required to walk and not run (agile principle of sustainable pace)
• Developers are required to clean up after themselves and move one chair out of the way
on their return leg. One chair per story
• Keep shouting abuse
fast-agile.com
Sprint 3 Management Abuse
• What the hell is going on?
• Who said you guys could slow down?
• Stop this refactoring nonsense!
• Run damn it, run!
• I didn’t hire extreme programmers – I hired scrum developers
• I want speed, not quality
• Why are you pair programming?
• There goes our velocity!
fast-agile.com
Post Exercise discussions
The physical portion is now complete. Ask participants to be seated.
Your recording of velocity should look something like this..
Bring this sheet of flipchart to the front of the room. You now begin
some discussions…
Sprint #1 – 13
Sprint #2 – 10
Sprint #3 – 8
fast-agile.com
Management - Scrum or XP?
• Which sprint felt sustainable? (Scrum or XP)
• Which sprint does management most like? (Scrum or XP)
fast-agile.com
Working software is the primary measure of progress.
Agile processes promote sustainable development.
The sponsors, developers, and users should be able
to maintain a constant pace indefinitely.
Continuous attention to technical excellence
and good design enhances agility.
How does Scrum and XP differ on a long term
project?
fast-agile.com
ScrumXP
Cost of project & ownership – Scrum vs XP
• Which project finished first? (and was cheaper)
• Do you now need a re-write to replace a legacy system? (what is that
cost)
• What is the cost of adding new features? (the velocity myth)
• What does it cost to find/fix bugs in production? (clean code vs
hairball)
• Do you have domain specialized developers that can hold you
hostage? (What is their salary vs junior devs)
fast-agile.com
Instant Gratification
Versus Delayed Gratification
fast-agile.com
fast-agile.com
Stanford Marshmallow Experiment
Stanford marshmallow experiment
https://en.wikipedia.org/wiki/Stanford_marshmallow_experiment
Delayed gratification
https://en.wikipedia.org/wiki/Delayed_gratification
fast-agile.com
Scrum’s blind spot
Or Achilles Heel
fast-agile.com
On a long term project :-
Iterative development without
refactoring, will create technical
debt and ultimately a legacy system
http://blog.agileagitator.com/2015/01/iterating-toward-legacy-scrums-achilles.html
fast-agile.com
Code Entropy
Law of Entropy : A system will always move towards the most disordered state
fast-agile.com
Code Entropy
fast-agile.com
fast-agile.com
12, 000 Lines of code
Refactor or die
A slow painful death – crushed under technical debt until you are a legacy system
fast-agile.com
The debt analogy applied to code
• Debt accrues interest and compounds
• The longer you leave it – the more it costs to pay it back down
Disciplined financial and development
practices
• Pay your debt as you go
• Keep a line of credit that you can manage and use it when you need it
(sometimes debt makes sense)
fast-agile.com
Kitchen Analogy
Poorly factored kitchen with tech debt Refactored kitchen with no tech debt
fast-agile.com
Do you think there are bugs in there?
fast-agile.com
Another Analogy – Camp Ground
fast-agile.com
Scrum’s blind spot
On a long term project –
Scrum (without XP), will create
technical debt and ultimately a
legacy system
http://blog.agileagitator.com/2015/01/iterating-toward-legacy-scrums-achilles.html
fast-agile.com
Scrum without XP = Flaccid Scrum
http://martinfowler.com/bliki/FlaccidScrum.html
fast-agile.com
Refactoring is not an island
There are other supporting disciplines that you need
fast-agile.com
fast-agile.com
Refactoring
fast-agile.com
Refactoring
Merciless
fast-agile.com
Refactoring
Agile Testing
Merciless
fast-agile.com
Refactoring
Agile Testing
Merciless
fast-agile.com
Refactoring
Agile Testing
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Pair
Programming
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Pair
Programming
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Pair
Programming
Collective
Code
Ownership
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Pair
Programming
Coding StandardsCollective
Code
Ownership
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Pair
Programming
Coding StandardsCollective
Code
Ownership
Check in little
and often
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Pair
Programming
Coding StandardsCollective
Code
Ownership
Check in little
and often
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Continuous
Integration
Pair
Programming
Coding StandardsCollective
Code
Ownership
Check in little
and often
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Continuous
Integration
Pair
Programming
Coding StandardsCollective
Code
Ownership
Check in little
and often
Code Collisions
Merciless
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Continuous
Integration
Pair
Programming
Coding StandardsCollective
Code
Ownership
Check in little
and often
Code Collisions
Merciless
Simple Design
Unit Tests
fast-agile.com
Refactoring
Agile Testing
TDD
Continuous
Integration
Pair
Programming
Coding StandardsCollective
Code
Ownership
Check in little
and often
Code Collisions
Merciless
Simple Design Jenkins
Unit Tests
fast-agile.com
Give me an Etch A Sketch and 20 seconds and I’ll
show you why you need to compliment scrum
with XP
fast-agile.com
When and how do you refactor?
Refactor Mercilessly
fast-agile.com
Refactoring Guidelines
• Don’t create refactoring stories (5% exception). It should just happen
• Stories deliver business value – they shouldn’t be “technical” (mostly)
• If you see it – fix it
• Leave the campground cleaner than when you arrived
• Be sensible – don’t refactor everything. The goal isn’t perfection, it’s
sustainability
fast-agile.com
Agile processes
promote sustainable
development.
The sponsors,
developers, and users
should be able
to maintain a constant
pace indefinitely.fast-agile.com
Slow down to go fast
When am I going to have time to do all of that and get the code written?
fast-agile.com
Race/Rally Car Analogy
Race car driving is not about driving fast. It’s about driving disciplined.
Speed is an outcome of your discipline and practice.
fast-agile.com
Be a Code Crafter. Read, Study, Learn & Grow
fast-agile.com
Handle Q&A from Gauntlet
Exercise
This is the closing section to the Gauntlet simulation. It’s roughly 15 minutes to this
point
fast-agile.com
Some typical questions that come up
• How does refactoring get prioritized against feature work?
• Isn’t it up to the PO if we can spend time refactoring?
• Do we create refactoring stories?
• When do you do refactoring?
• How much refactoring should we do? When do you stop?
• We have way too much debt – where do we start?
• Is this only for green field projects?
fast-agile.com
Some examples of refactoring
• Four hour task with four hours of refactoring
• Two hour task with sixteen hours of refactoring
• The refactoring backlog and refactoring stories (less than 5%) of the
backlog
fast-agile.com
How to start
• Build slack into your sprint. Reduce velocity by 20% and start! (Find
out what your sustainable velocity is)
• Read a book (my favourite is The Art of Agile by James Shore)
• Get an XP coach. Your journey of 1000 steps has begun. With a coach,
your journey will take around 6 months (another reason why Scrum is
favoured over XP) and you will be a SHU XP team.
fast-agile.com
Too much debt – already legacy?
fast-agile.com
Where to download this exercise
Soon…
fast-agile.com
The End
Thank you for coming! (Please be sure to leave good feedback.)
fast-agile.com
But wait – there’s more
Bonus Material
fast-agile.com
Bonus material Agenda
• Quality is not negotiable
• How to build an XP Team
• What refactoring looks like and the why of refactoring
• Code Crafting (non gender biased version of Code Craftsmanship
term)
• Architecting for changing requirements
fast-agile.com
Quality is not negotiable
In Extreme Programming…
fast-agile.com
The XP Tradeoff Pyramid
Quality
ScopeDate
fast-agile.com
How to build an XP Team
An approach that I have taken
fast-agile.com
The why of refactoring
It’s not only for keeping technical debt down – it’s how you keep your codebase
agile
fast-agile.com
How do you architect a system when you
know it will change?
If you have a truly agile project (i.e. changing requirements and not just
an iterative waterfall project) – then you will need to have an agile
codebase i.e. refactoring and emergent design
fast-agile.com
Done?
Abstract:
“Few implementations of Scrum achieve the hyper productive state for which Scrum was designed (5-10 times normal performance).
Those that do all implement variations on XP (eXtreme Programming)” - Jeff Sutherland
Want to go fast? Really fast? Like 5x-10x times faster? Find out how Scrum + XP delivers on this.
The session will start with a lively and interactive exercise which will make it obvious why you need to complement Scrum with
eXtreme Programming (XP) and what happens if you don't. The exercise is easily reproducible and you will be able to facilitate it in
your own environment to help sell your engineering teams and management on the advantages of taking on these practices.
Learning Outcomes:
what XP is
• how XP integrates with Scrum
• the what, how and when of refactoring
• how technical debt is created and how to stop it in it's tracks and remove it
• how to build an XP team
• how and why Scrum plus XP achieves hyper-productivity
• why Scrum without XP can fail you
fast-agile.com
Where to find me
Twitter - @agileAgitator
Blog – http://agileagitator.com
Email – info@fast-agile.com
Web – http://fast-agile.com
LinkedIn - https://www.linkedin.com/in/rquartel
Facebook - https://www.facebook.com/fastagile

More Related Content

What's hot

Scaling Scrum using Lean/Kanban in Amdocs
Scaling Scrum using Lean/Kanban in AmdocsScaling Scrum using Lean/Kanban in Amdocs
Scaling Scrum using Lean/Kanban in AmdocsYuval Yeret
 
Agile Mindset For Executives
Agile Mindset For ExecutivesAgile Mindset For Executives
Agile Mindset For ExecutivesMichael Tarnowski
 
Scrum sprint structure workshop by Nermina Durmić
Scrum sprint structure workshop by Nermina DurmićScrum sprint structure workshop by Nermina Durmić
Scrum sprint structure workshop by Nermina DurmićBosnia Agile
 
SAFe® - scaled agile framework in practice
SAFe® - scaled agile framework in practiceSAFe® - scaled agile framework in practice
SAFe® - scaled agile framework in practiceIntland Software GmbH
 
Agile metrics - Measure and Improve
Agile metrics - Measure and ImproveAgile metrics - Measure and Improve
Agile metrics - Measure and ImproveWemanityUK
 
Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Andreano Lanusse
 
An Executive Insider's Guide to Enterprise Agile Transformation
An Executive Insider's Guide to Enterprise Agile TransformationAn Executive Insider's Guide to Enterprise Agile Transformation
An Executive Insider's Guide to Enterprise Agile TransformationScott Richardson
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process IntroductionNguyen Hai
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development OverviewStewart Rogers
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumArrielle Mali
 
Agile methodology
Agile methodologyAgile methodology
Agile methodologyDhruv Kumar
 
Agile in a nutshell
Agile in a nutshellAgile in a nutshell
Agile in a nutshellDoc List
 
Alinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream KanbanAlinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream KanbanTaller Negócio Digitais
 

What's hot (20)

Scaling Scrum using Lean/Kanban in Amdocs
Scaling Scrum using Lean/Kanban in AmdocsScaling Scrum using Lean/Kanban in Amdocs
Scaling Scrum using Lean/Kanban in Amdocs
 
Agile Mindset For Executives
Agile Mindset For ExecutivesAgile Mindset For Executives
Agile Mindset For Executives
 
Scrum
ScrumScrum
Scrum
 
Agile 101
Agile 101Agile 101
Agile 101
 
Scrum sprint structure workshop by Nermina Durmić
Scrum sprint structure workshop by Nermina DurmićScrum sprint structure workshop by Nermina Durmić
Scrum sprint structure workshop by Nermina Durmić
 
SAFe® - scaled agile framework in practice
SAFe® - scaled agile framework in practiceSAFe® - scaled agile framework in practice
SAFe® - scaled agile framework in practice
 
Agile metrics - Measure and Improve
Agile metrics - Measure and ImproveAgile metrics - Measure and Improve
Agile metrics - Measure and Improve
 
Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)Scaling Agile With SAFe (Scaled Agile Framework)
Scaling Agile With SAFe (Scaled Agile Framework)
 
feature vs component teams
feature vs component teamsfeature vs component teams
feature vs component teams
 
Advanced agile scrum- Demo PPT
Advanced agile scrum- Demo PPTAdvanced agile scrum- Demo PPT
Advanced agile scrum- Demo PPT
 
An Executive Insider's Guide to Enterprise Agile Transformation
An Executive Insider's Guide to Enterprise Agile TransformationAn Executive Insider's Guide to Enterprise Agile Transformation
An Executive Insider's Guide to Enterprise Agile Transformation
 
Agile Process Introduction
Agile Process IntroductionAgile Process Introduction
Agile Process Introduction
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
2017 Scrum by Picture
2017 Scrum by Picture2017 Scrum by Picture
2017 Scrum by Picture
 
Scrum 101: Introduction to Scrum
Scrum 101: Introduction to ScrumScrum 101: Introduction to Scrum
Scrum 101: Introduction to Scrum
 
Agile Development Process
Agile Development ProcessAgile Development Process
Agile Development Process
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Agile 101
Agile 101Agile 101
Agile 101
 
Agile in a nutshell
Agile in a nutshellAgile in a nutshell
Agile in a nutshell
 
Alinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream KanbanAlinhando Discovery com Delivery usando Upstream Kanban
Alinhando Discovery com Delivery usando Upstream Kanban
 

Viewers also liked

Building Integrity In Seminar
Building Integrity In   SeminarBuilding Integrity In   Seminar
Building Integrity In SeminarChris Sterling
 
Facebook and Scrum
Facebook and ScrumFacebook and Scrum
Facebook and ScrumJens Meydam
 
Scrum take quality to the next level
Scrum   take quality to the next levelScrum   take quality to the next level
Scrum take quality to the next levelIndium Software
 
Rsgsa15 scrum dev- an approach towards developer friendly scrum practices
Rsgsa15   scrum dev- an approach towards developer friendly scrum practicesRsgsa15   scrum dev- an approach towards developer friendly scrum practices
Rsgsa15 scrum dev- an approach towards developer friendly scrum practicesJaya Shrivastava
 
XP, Scrum, Lean and the Lean Startup
XP, Scrum, Lean and the Lean StartupXP, Scrum, Lean and the Lean Startup
XP, Scrum, Lean and the Lean StartupJulian Higman
 
Introduction Professional Scrum Developer for Java
Introduction Professional Scrum Developer for JavaIntroduction Professional Scrum Developer for Java
Introduction Professional Scrum Developer for JavaJoris De Winne
 
Advantages & disadvantages of system life cycles
Advantages & disadvantages of system life cyclesAdvantages & disadvantages of system life cycles
Advantages & disadvantages of system life cycleshout300
 
Scrum and Test-driven development
Scrum and Test-driven developmentScrum and Test-driven development
Scrum and Test-driven developmenttoteb5
 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven DevelopmentViraf Karai
 
Agile software development and extreme Programming
Agile software development and extreme Programming  Agile software development and extreme Programming
Agile software development and extreme Programming Fatemeh Karimi
 
The Art of the Retrospective: How to run an awesome retrospective meeting
The Art of the Retrospective: How to run an awesome retrospective meetingThe Art of the Retrospective: How to run an awesome retrospective meeting
The Art of the Retrospective: How to run an awesome retrospective meetingChris Smith
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingUtkarsh Khare
 
Full stack developer with Scrum - Thanh Le & Khanh Vo
Full stack developer with Scrum - Thanh Le & Khanh VoFull stack developer with Scrum - Thanh Le & Khanh Vo
Full stack developer with Scrum - Thanh Le & Khanh VoScrum Breakfast Vietnam
 
Ch6-Software Engineering 9
Ch6-Software Engineering 9Ch6-Software Engineering 9
Ch6-Software Engineering 9Ian Sommerville
 
Sociedad virreinal
Sociedad virreinalSociedad virreinal
Sociedad virreinalNashelyy
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)Terry Cho
 

Viewers also liked (20)

Building Integrity In Seminar
Building Integrity In   SeminarBuilding Integrity In   Seminar
Building Integrity In Seminar
 
Facebook and Scrum
Facebook and ScrumFacebook and Scrum
Facebook and Scrum
 
Scrum take quality to the next level
Scrum   take quality to the next levelScrum   take quality to the next level
Scrum take quality to the next level
 
Scrumdev an approach to developer friendly scrum practices
Scrumdev an approach to developer friendly scrum practicesScrumdev an approach to developer friendly scrum practices
Scrumdev an approach to developer friendly scrum practices
 
Rsgsa15 scrum dev- an approach towards developer friendly scrum practices
Rsgsa15   scrum dev- an approach towards developer friendly scrum practicesRsgsa15   scrum dev- an approach towards developer friendly scrum practices
Rsgsa15 scrum dev- an approach towards developer friendly scrum practices
 
XP, Scrum, Lean and the Lean Startup
XP, Scrum, Lean and the Lean StartupXP, Scrum, Lean and the Lean Startup
XP, Scrum, Lean and the Lean Startup
 
Scrum For Developers
Scrum For DevelopersScrum For Developers
Scrum For Developers
 
Introduction Professional Scrum Developer for Java
Introduction Professional Scrum Developer for JavaIntroduction Professional Scrum Developer for Java
Introduction Professional Scrum Developer for Java
 
Introduction to Lean, Agile, Scrum, & XP
Introduction to Lean, Agile, Scrum, & XPIntroduction to Lean, Agile, Scrum, & XP
Introduction to Lean, Agile, Scrum, & XP
 
Advantages & disadvantages of system life cycles
Advantages & disadvantages of system life cyclesAdvantages & disadvantages of system life cycles
Advantages & disadvantages of system life cycles
 
Scrum and Test-driven development
Scrum and Test-driven developmentScrum and Test-driven development
Scrum and Test-driven development
 
Agile Test Driven Development
Agile Test Driven DevelopmentAgile Test Driven Development
Agile Test Driven Development
 
Agile software development and extreme Programming
Agile software development and extreme Programming  Agile software development and extreme Programming
Agile software development and extreme Programming
 
The Art of the Retrospective: How to run an awesome retrospective meeting
The Art of the Retrospective: How to run an awesome retrospective meetingThe Art of the Retrospective: How to run an awesome retrospective meeting
The Art of the Retrospective: How to run an awesome retrospective meeting
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 
Extreme programming (xp)
Extreme programming (xp)Extreme programming (xp)
Extreme programming (xp)
 
Full stack developer with Scrum - Thanh Le & Khanh Vo
Full stack developer with Scrum - Thanh Le & Khanh VoFull stack developer with Scrum - Thanh Le & Khanh Vo
Full stack developer with Scrum - Thanh Le & Khanh Vo
 
Ch6-Software Engineering 9
Ch6-Software Engineering 9Ch6-Software Engineering 9
Ch6-Software Engineering 9
 
Sociedad virreinal
Sociedad virreinalSociedad virreinal
Sociedad virreinal
 
ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)ALM (Application Lifecycle Management)
ALM (Application Lifecycle Management)
 

Similar to Scrum Plus Extreme Programming (XP) for Hyper Productivity

Crash Course Scrum - handout
Crash Course Scrum - handoutCrash Course Scrum - handout
Crash Course Scrum - handoutArjan Franzen
 
Sprint Zero in Scrum
Sprint Zero in ScrumSprint Zero in Scrum
Sprint Zero in ScrumAgile Vietnam
 
Mujeebur rahmansaher introduction-to-scrum_v2
Mujeebur rahmansaher introduction-to-scrum_v2Mujeebur rahmansaher introduction-to-scrum_v2
Mujeebur rahmansaher introduction-to-scrum_v2Mujeebur Rahmansaher
 
Scrum levels danny_kovatch_agile_sparks
Scrum levels danny_kovatch_agile_sparksScrum levels danny_kovatch_agile_sparks
Scrum levels danny_kovatch_agile_sparksAgileSparks
 
STOP! You're Testing Too Much - Shawn Wallace
STOP!  You're Testing Too Much - Shawn WallaceSTOP!  You're Testing Too Much - Shawn Wallace
STOP! You're Testing Too Much - Shawn WallaceQA or the Highway
 
Stop! you're testing too much
Stop!  you're testing too muchStop!  you're testing too much
Stop! you're testing too muchShawn Wallace
 
Scrum and-xp-from-the-trenches 03 sprint backlog & daily scrum
Scrum and-xp-from-the-trenches 03 sprint backlog & daily scrumScrum and-xp-from-the-trenches 03 sprint backlog & daily scrum
Scrum and-xp-from-the-trenches 03 sprint backlog & daily scrumHossam Hassan
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized ScrumAbdul Karim
 
Scrum and-xp-from-the-trenches 04 sprint demo & retrospective
Scrum and-xp-from-the-trenches 04 sprint demo & retrospectiveScrum and-xp-from-the-trenches 04 sprint demo & retrospective
Scrum and-xp-from-the-trenches 04 sprint demo & retrospectiveHossam Hassan
 
Teamwork and agile methodologies
Teamwork and agile methodologiesTeamwork and agile methodologies
Teamwork and agile methodologiesStefano Paluello
 
English redistributable-intro-scrum
English redistributable-intro-scrumEnglish redistributable-intro-scrum
English redistributable-intro-scrumSean Mike
 
Engineering practices in Scrum for Hardware - Sisma Spa Case Study
Engineering practices in Scrum for Hardware - Sisma Spa Case StudyEngineering practices in Scrum for Hardware - Sisma Spa Case Study
Engineering practices in Scrum for Hardware - Sisma Spa Case StudyPaolo Sammicheli
 

Similar to Scrum Plus Extreme Programming (XP) for Hyper Productivity (20)

Crash Course Scrum - handout
Crash Course Scrum - handoutCrash Course Scrum - handout
Crash Course Scrum - handout
 
Sprint Zero in Scrum
Sprint Zero in ScrumSprint Zero in Scrum
Sprint Zero in Scrum
 
Mujeebur rahmansaher introduction-to-scrum_v2
Mujeebur rahmansaher introduction-to-scrum_v2Mujeebur rahmansaher introduction-to-scrum_v2
Mujeebur rahmansaher introduction-to-scrum_v2
 
Scrum levels danny_kovatch_agile_sparks
Scrum levels danny_kovatch_agile_sparksScrum levels danny_kovatch_agile_sparks
Scrum levels danny_kovatch_agile_sparks
 
Scrum
ScrumScrum
Scrum
 
Retrospective & review
Retrospective & reviewRetrospective & review
Retrospective & review
 
Agile Retrospective & review
Agile Retrospective & review Agile Retrospective & review
Agile Retrospective & review
 
STOP! You're Testing Too Much - Shawn Wallace
STOP!  You're Testing Too Much - Shawn WallaceSTOP!  You're Testing Too Much - Shawn Wallace
STOP! You're Testing Too Much - Shawn Wallace
 
Stop! you're testing too much
Stop!  you're testing too muchStop!  you're testing too much
Stop! you're testing too much
 
Scrum intro
Scrum intro Scrum intro
Scrum intro
 
Scrum and-xp-from-the-trenches 03 sprint backlog & daily scrum
Scrum and-xp-from-the-trenches 03 sprint backlog & daily scrumScrum and-xp-from-the-trenches 03 sprint backlog & daily scrum
Scrum and-xp-from-the-trenches 03 sprint backlog & daily scrum
 
Agile 101
Agile 101Agile 101
Agile 101
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized Scrum
 
Scrum and-xp-from-the-trenches 04 sprint demo & retrospective
Scrum and-xp-from-the-trenches 04 sprint demo & retrospectiveScrum and-xp-from-the-trenches 04 sprint demo & retrospective
Scrum and-xp-from-the-trenches 04 sprint demo & retrospective
 
Scrum luqman
Scrum luqmanScrum luqman
Scrum luqman
 
Teamwork and agile methodologies
Teamwork and agile methodologiesTeamwork and agile methodologies
Teamwork and agile methodologies
 
English redistributable-intro-scrum
English redistributable-intro-scrumEnglish redistributable-intro-scrum
English redistributable-intro-scrum
 
Scrumban
ScrumbanScrumban
Scrumban
 
Engineering practices in Scrum for Hardware - Sisma Spa Case Study
Engineering practices in Scrum for Hardware - Sisma Spa Case StudyEngineering practices in Scrum for Hardware - Sisma Spa Case Study
Engineering practices in Scrum for Hardware - Sisma Spa Case Study
 
Introduction to Scrum
Introduction to ScrumIntroduction to Scrum
Introduction to Scrum
 

Recently uploaded

Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 

Recently uploaded (20)

Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 

Scrum Plus Extreme Programming (XP) for Hyper Productivity

  • 1. Ron Quartel Complementing Scrum with Technical Excellence for hyper-productivity
  • 2. Who is Ron Quartel? • XP Developer – Code Crafter • XP Coach • Agile Consultant / Trainer • Lean Entrepreneur – Backlog Optimizer™ • Systems Engineer – Mobile Testing & CI • Founder – FAST Agile™ Scaled Technology http://www.fast-agile.com
  • 3. The fastest software delivery method on the planet today! fast-agile.com
  • 4. XP = Extreme Programming When you see slides past this one, Extreme Programming will be referred to only as XP. fast-agile.com
  • 5. How do you get to hyper productivity? With Scrum fast-agile.com
  • 6. Let’s ask the Doctor – Dr. Jeff Sutherland “Few implementations of Scrum achieve the hyper productive state for which Scrum was designed (5-10 times normal performance). Those that do all implement variations on XP” http://jeffsutherland.com/2007/07/origins-of-scrum.html - July 2007 fast-agile.com
  • 7. The End Thank you for coming! (Please be sure to leave good feedback.) fast-agile.com
  • 8. So why don’t companies implement XP? Stats and Quotes fast-agile.com
  • 9. Agile the easy way (Scrum) has trumped Agile the disciplined way (XP). More quotes from the Doctor and some stats fast-agile.com
  • 10. Scrum can be rolled out in two days versus XP many months The Scrum framework for software development was designed to get a team started in two or three days, whereas engineering practices often take many months to implement. Therefore, it left the question of when (and whether) to implement specific practices up to each team. Scrum co-creators Jeff Sutherland and Ken Schwaber recommend that Scrum teams get started immediately and create a list of impediments and a process improvement plan. As engineering practices are identified as impediments, teams should look to XP practices as a way to improve. The best teams run Scrum supplemented with XP practices.” – Dr Jeff Sutherland https://msdn.microsoft.com/en-us/library/dd997578.aspx ~ 2013 fast-agile.com
  • 11. Scrum is easier to adopt without XP The Scrum Guide (scrumguides.org) doesn't say anything about engineering practices. However, the first Scrum team used everything in XP and more. Radical refactorization occurred daily. I wanted engineering practices specified in Scrum but Ken Schwaber convinced me that Scrum would be easier to adopt and work anywhere if we didn't mandate specific software practices. He was right. – Dr Jeff Sutherland http://www.reddit.com/r/IAmA/comments/2hw05i/i_am_jeff_sutherland_the_cocreator_of_scrum_ask/ckwi02e - 30th Sep 2014 fast-agile.com
  • 12. Scrum’s Lip Service (to XP) Scrum says you should being doing XP – but in reality it just doesn’t happen. https://www.scrumalliance.org/community/spotlight/mike-cohn/april-2014/scrum-xp-better-together fast-agile.com
  • 13. 2015 State of Agile Report – Version One fast-agile.com
  • 15. How do we fix the problem? And get undisciplined Scrum orgs/teams to want to take up XP? fast-agile.com
  • 16. Sad truth – companies don’t care about improving quality. If companies really cared about quality, then they would already have implemented XP. The fact is – they don’t care about quality. Don’t talk about quality. It’s falling on deaf ears. fast-agile.com
  • 17. Talk about speed and/or “Increasing Velocity” Instead And the same companies are now all ears. <sigh> (I just vomited a little bit in my mouth) This is why “DevOps” and “Continuous Delivery” are the industries darling terms right now… fast-agile.com
  • 18. The Phoenix Project, Hero developers and DevOps Why didn’t the Brent character ever pair?!? Why didn’t they create an XP team? • Collective code ownership • Pair programming • Coding standards • Small releases • TDD & testing culture • Continuous Integration fast-agile.com
  • 19. Technical Excellence Whatever you want to call it – do it! • Agile Engineering Practices • Extreme Programming • Agile Technical Practices • Code Craftsmanship • Technical Excellence • Modern Development Practices fast-agile.com
  • 20. Continuous attention to technical excellence and good design enhances agility. fast-agile.com
  • 21. Recap of Problem • Scrum chose to go easier to adopt route and leave XP Practices • Scrum recommends XP practices are worked on the same way as impediments and only when identified • Dr Sutherland has seen very few hyper-performing Scrum teams • The only hyper-performing teams Dr Sutherland saw, were doing XP! • In most companies, speed is more important than quality fast-agile.com
  • 22. How to solve the problem How do you convince a team and management to take up XP? (When XP is so counter intuitive) fast-agile.com
  • 23. The Scrum Gauntlet of Debt An exercise/simulation that will illustrate to teams and managers why they need to complement Scrum with XP and what happens if you don’t fast-agile.com
  • 24. Understand room make up Show of hands :- • Devs • Testers • Managers • Scrum Masters • Agile Consultants • Other fast-agile.com
  • 25. Running the Gauntlet - Requirements • Volunteers (7-12 volunteers) • Two walls and two easels or 4 easels • Chairs (observers can give up theirs while watching if need be) • Sticky notes (small square size is better but any will work) • Flipchart (Sticky is best) • Blue tape • Something with a countdown timer (smartphone apps work) • Three surfaces for flipchart sheet. E.g. walls, whiteboard, easel • Marker pens to write on flipcharts (and whiteboard) fast-agile.com
  • 27. Prep – Create the Sprinting dev room Clear a gauntlet area in the room and layout like this: fast-agile.com This flipchart sheet is optional. You only need when even numbers and more than 7 volunteers Done board To Do To Test Board To Do To Test Board Done board
  • 28. Create Backlog and Done Boards (Flipcharts) fast-agile.com
  • 29. Tip If using a flipchart, use the blue tape to hold the bottom corners of the flipchart down fast-agile.com
  • 30. Volunteers and Roles Ask for volunteers with warning that it is a physical demonstration and there will be running. Do not volunteer unless comfortable with this. Divide the volunteers into testers and developers using one of these formations depending on the number of volunteers • 10 devs and 1or 2 testers • 8 devs and 1 or 2 testers • 6 devs and 1 or 2 testers Divide devs into two even groups fast-agile.com
  • 31. Prep participants and Timer Role • Identify another timer volunteer (who has a smart device with countdown timer app) • Explain to participants that this is a simulation. The goal is not to “win” and game the system. The goal is to mimic what real life looks like • Instruct participants to act like a dysfunctional team and not communicate with each other (otherwise they start gaming the system) fast-agile.com
  • 32. Placing of volunteers in the gauntlet Divide devs in two groups and place volunteers like so : fast-agile.com Optional Tester (if even numbers) DevsDevs Tester
  • 33. Rules of the game/simulation • An iteration lasts 30 seconds • Developers run to opposite wall, pick a story token (sticky note) from TODO and run back to their starting wall, placing the token in the TO TEST column • A Dev can only work on one story at a time • Testers wait by their Done board until they see stories ready to TEST and then run to (either) board, grab up to 3 stories (but no more than 3) and return them to their done board • Everyone must run (That is why they call it Sprinting!) • No collusion or working out a system. You are mimicking a dysfunctional team (Be sure to have explained this or else they game the system) • BE CAREFUL!!! (Re-iterate and ask volunteers again if comfortable) fast-agile.com
  • 34. BE CAREFUL!!! • Health and safety • Don’t have anyone pregnant, wearing high heels or with physical disabilities that may cause risk to themselves or others in the volunteers • Make sure volunteers are comfortable with exercise otherwise switch out • Re-iterate to volunteers Safety First! • Be careful!!! fast-agile.com
  • 35. Any Questions? Then Go! fast-agile.com
  • 36. Notes for facilitator – Sprint 0 • While the team are sprinting, you play the role of a manager and shout at the team “FASTER”, “I Need more features” etc. • Run the first sprint without keeping score (it’s a test run) • (the reason to not keep score is that because the velocity of the first one is usually lower because they are working it out and it gives you a chance to find out if anyone misunderstood anything) • At the end of the sprint tell the team to reset the boards • Ask them if they are warmed up and a little puffed? “That is why they call it a sprint!” fast-agile.com
  • 37. Management Abuses to shout at team • Faster! • I need more features! • What is wrong with this team? • Why are they so slow? • Why are your estimates all wrong? • More velocity! • Development monkeys! • Screw code practices – I need Features! • Stop that pair programming nonsense! • My last team was better than you guys • Don’t make me fire you • I should out source the lot of you • Etc… fast-agile.com
  • 38. Sprint 1 & introduction of technical debt • Keep shouting abuse • This sprint, record the velocity • Now, place chairs in the gauntlet/sprinting area with the explanation “These chairs represent technical debt. Every story you completed in the last iteration, you left behind technical debt. This is what your codebase starts to look like. Can anyone relate? Do your teams have technical debt” (I’ve yet to have a no answer) • Be even more careful!!!! No leaping or moving chairs. • Testers will move one task from TO TEST to TO DO on each run (to represent an increase in bug count due to technical debt) • Go! Start sprint 2 and be sure to keep the abuse fast-agile.com
  • 39. Sprint 2 Management Abuse • I don’t want to hear about technical debt excuses – I want features damn it! • When can we release? • No refactoring or cleaning up – Features! • Run, run, run! • Lazy coders! • I’m paying you too much! • There’s going to be overtime! fast-agile.com
  • 40. Sprint 3 & introduction of refactoring • Put more chairs in the gauntlet to make it near impossible for the team • Explain to the room that this is what a day looks like for a developer in a legacy system • This is what their life is like – get confirmation from the room e.g. “can anyone relate?” • Be sure to point out the team are looking haggard and tired at this point • Ask them if they think they can keep this pace up indefinitely and what they think of the upcoming sprint! • Now introduce refactoring and sustainable pace • Developers are now required to walk and not run (agile principle of sustainable pace) • Developers are required to clean up after themselves and move one chair out of the way on their return leg. One chair per story • Keep shouting abuse fast-agile.com
  • 41. Sprint 3 Management Abuse • What the hell is going on? • Who said you guys could slow down? • Stop this refactoring nonsense! • Run damn it, run! • I didn’t hire extreme programmers – I hired scrum developers • I want speed, not quality • Why are you pair programming? • There goes our velocity! fast-agile.com
  • 42. Post Exercise discussions The physical portion is now complete. Ask participants to be seated. Your recording of velocity should look something like this.. Bring this sheet of flipchart to the front of the room. You now begin some discussions… Sprint #1 – 13 Sprint #2 – 10 Sprint #3 – 8 fast-agile.com
  • 43. Management - Scrum or XP? • Which sprint felt sustainable? (Scrum or XP) • Which sprint does management most like? (Scrum or XP) fast-agile.com Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. Continuous attention to technical excellence and good design enhances agility.
  • 44. How does Scrum and XP differ on a long term project? fast-agile.com ScrumXP
  • 45. Cost of project & ownership – Scrum vs XP • Which project finished first? (and was cheaper) • Do you now need a re-write to replace a legacy system? (what is that cost) • What is the cost of adding new features? (the velocity myth) • What does it cost to find/fix bugs in production? (clean code vs hairball) • Do you have domain specialized developers that can hold you hostage? (What is their salary vs junior devs) fast-agile.com
  • 46. Instant Gratification Versus Delayed Gratification fast-agile.com
  • 48. Stanford Marshmallow Experiment Stanford marshmallow experiment https://en.wikipedia.org/wiki/Stanford_marshmallow_experiment Delayed gratification https://en.wikipedia.org/wiki/Delayed_gratification fast-agile.com
  • 49. Scrum’s blind spot Or Achilles Heel fast-agile.com
  • 50. On a long term project :- Iterative development without refactoring, will create technical debt and ultimately a legacy system http://blog.agileagitator.com/2015/01/iterating-toward-legacy-scrums-achilles.html fast-agile.com
  • 51. Code Entropy Law of Entropy : A system will always move towards the most disordered state fast-agile.com
  • 54. Refactor or die A slow painful death – crushed under technical debt until you are a legacy system fast-agile.com
  • 55. The debt analogy applied to code • Debt accrues interest and compounds • The longer you leave it – the more it costs to pay it back down Disciplined financial and development practices • Pay your debt as you go • Keep a line of credit that you can manage and use it when you need it (sometimes debt makes sense) fast-agile.com
  • 56. Kitchen Analogy Poorly factored kitchen with tech debt Refactored kitchen with no tech debt fast-agile.com
  • 57. Do you think there are bugs in there? fast-agile.com
  • 58. Another Analogy – Camp Ground fast-agile.com
  • 59. Scrum’s blind spot On a long term project – Scrum (without XP), will create technical debt and ultimately a legacy system http://blog.agileagitator.com/2015/01/iterating-toward-legacy-scrums-achilles.html fast-agile.com
  • 60. Scrum without XP = Flaccid Scrum http://martinfowler.com/bliki/FlaccidScrum.html fast-agile.com
  • 61. Refactoring is not an island There are other supporting disciplines that you need fast-agile.com
  • 79. Give me an Etch A Sketch and 20 seconds and I’ll show you why you need to compliment scrum with XP fast-agile.com
  • 80. When and how do you refactor? Refactor Mercilessly fast-agile.com
  • 81. Refactoring Guidelines • Don’t create refactoring stories (5% exception). It should just happen • Stories deliver business value – they shouldn’t be “technical” (mostly) • If you see it – fix it • Leave the campground cleaner than when you arrived • Be sensible – don’t refactor everything. The goal isn’t perfection, it’s sustainability fast-agile.com
  • 82. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.fast-agile.com
  • 83. Slow down to go fast When am I going to have time to do all of that and get the code written? fast-agile.com
  • 84. Race/Rally Car Analogy Race car driving is not about driving fast. It’s about driving disciplined. Speed is an outcome of your discipline and practice. fast-agile.com
  • 85. Be a Code Crafter. Read, Study, Learn & Grow fast-agile.com
  • 86. Handle Q&A from Gauntlet Exercise This is the closing section to the Gauntlet simulation. It’s roughly 15 minutes to this point fast-agile.com
  • 87. Some typical questions that come up • How does refactoring get prioritized against feature work? • Isn’t it up to the PO if we can spend time refactoring? • Do we create refactoring stories? • When do you do refactoring? • How much refactoring should we do? When do you stop? • We have way too much debt – where do we start? • Is this only for green field projects? fast-agile.com
  • 88. Some examples of refactoring • Four hour task with four hours of refactoring • Two hour task with sixteen hours of refactoring • The refactoring backlog and refactoring stories (less than 5%) of the backlog fast-agile.com
  • 89. How to start • Build slack into your sprint. Reduce velocity by 20% and start! (Find out what your sustainable velocity is) • Read a book (my favourite is The Art of Agile by James Shore) • Get an XP coach. Your journey of 1000 steps has begun. With a coach, your journey will take around 6 months (another reason why Scrum is favoured over XP) and you will be a SHU XP team. fast-agile.com
  • 90. Too much debt – already legacy? fast-agile.com
  • 91. Where to download this exercise Soon… fast-agile.com
  • 92. The End Thank you for coming! (Please be sure to leave good feedback.) fast-agile.com
  • 93. But wait – there’s more Bonus Material fast-agile.com
  • 94. Bonus material Agenda • Quality is not negotiable • How to build an XP Team • What refactoring looks like and the why of refactoring • Code Crafting (non gender biased version of Code Craftsmanship term) • Architecting for changing requirements fast-agile.com
  • 95. Quality is not negotiable In Extreme Programming… fast-agile.com
  • 96. The XP Tradeoff Pyramid Quality ScopeDate fast-agile.com
  • 97. How to build an XP Team An approach that I have taken fast-agile.com
  • 98. The why of refactoring It’s not only for keeping technical debt down – it’s how you keep your codebase agile fast-agile.com
  • 99. How do you architect a system when you know it will change? If you have a truly agile project (i.e. changing requirements and not just an iterative waterfall project) – then you will need to have an agile codebase i.e. refactoring and emergent design fast-agile.com
  • 100. Done? Abstract: “Few implementations of Scrum achieve the hyper productive state for which Scrum was designed (5-10 times normal performance). Those that do all implement variations on XP (eXtreme Programming)” - Jeff Sutherland Want to go fast? Really fast? Like 5x-10x times faster? Find out how Scrum + XP delivers on this. The session will start with a lively and interactive exercise which will make it obvious why you need to complement Scrum with eXtreme Programming (XP) and what happens if you don't. The exercise is easily reproducible and you will be able to facilitate it in your own environment to help sell your engineering teams and management on the advantages of taking on these practices. Learning Outcomes: what XP is • how XP integrates with Scrum • the what, how and when of refactoring • how technical debt is created and how to stop it in it's tracks and remove it • how to build an XP team • how and why Scrum plus XP achieves hyper-productivity • why Scrum without XP can fail you fast-agile.com
  • 101. Where to find me Twitter - @agileAgitator Blog – http://agileagitator.com Email – info@fast-agile.com Web – http://fast-agile.com LinkedIn - https://www.linkedin.com/in/rquartel Facebook - https://www.facebook.com/fastagile

Editor's Notes

  1. Merciless Refactoring
  2. Agile Testing
  3. Testing Pyramid
  4. Unit Testing
  5. TDD
  6. Pair Programming
  7. Code Collisions
  8. Collective Code Ownership
  9. Coding Standards
  10. Check in little and often
  11. Little and often to TDD
  12. Continuous Integration
  13. CI to unit tests
  14. Simple design
  15. Jenkins (last)