SlideShare a Scribd company logo
1 of 36
Agile Anti-patterns
      Andrew Cox
      @coxandrew
What is an anti-pattern?
“A pattern that may be commonly
used but is ineffective and/or
counterproductive in practice.”

— Wikipedia
See Also

• Scrumbut
• Process Smells
• Cargo Cult Agile
Why learn anti-patterns?
2 key elements:
2 key elements:

• A repeated pattern of action that appears
  beneficial, but ultimately produces more
  bad consequences than beneficial results
2 key elements:

• A repeated pattern of action that appears
  beneficial, but ultimately produces more
  bad consequences than beneficial results
• A refactored solution exists that has been
  proven in actual practice and is repeatable
“Scrum is like your mother-in-law.
It's constantly pointing out your
shortcomings.”

— Ken Schwaber
The Anti-patterns
We Tried Baseball and
  It Didn’t Work
Agile Coding Sandwich
Kitchen Sink Product
Deadlines
The Absentee
Product Owner
Customer Driven
 Development
Double Duty
Watching the Runners
    (aka “Maximizing Capacity”)
Retrospective
Actionless Items
A “Bug Fixing” Sprint
Sword of Damocles
    Standups
Layer Cake Stories
Premature Allocation
Silo People
Multitasking
Agile as Project
 Management
 (aka “Not using XP practices”)
XP Practices
• Test Driven Development
• Pair Programming
• Continuous Integration
• Coding Standards
• Simple Design
• Refactoring
The Nots
(aka Not doing these things is bad)
Not
Not
•   ... designing
Not
•   ... designing

•   ... maintaining a prioritized backlog
Not
•   ... designing

•   ... maintaining a prioritized backlog

•   ... having retrospectives
Not
•   ... designing

•   ... maintaining a prioritized backlog

•   ... having retrospectives

•   ... having a definition of “done”
Not
•   ... designing

•   ... maintaining a prioritized backlog

•   ... having retrospectives

•   ... having a definition of “done”

•   ... spiking for risky stories
Not
•   ... designing

•   ... maintaining a prioritized backlog

•   ... having retrospectives

•   ... having a definition of “done”

•   ... spiking for risky stories

•   ... prioritizing technical debt
Further reading
• Out of the Crisis by W. Edwards Deming
• Scaling Lean & Agile Development by Craig
  Larman and Bas Vodde
• The Decline and Fall of Agile by James Shore
• The Scrum Guide
• We Tried Baseball and It Didn’t Work

More Related Content

What's hot

Release wednesdays and the agile release train upload
Release wednesdays and the agile release train   uploadRelease wednesdays and the agile release train   upload
Release wednesdays and the agile release train uploadChris Smith
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training ProcessClarion Marketing
 
Scrum and the agile development process
Scrum and the agile development processScrum and the agile development process
Scrum and the agile development processjhericks
 
Agile Development
Agile DevelopmentAgile Development
Agile Developmentabdpse
 
Product Backlog Refinement
Product Backlog RefinementProduct Backlog Refinement
Product Backlog RefinementKatarzyna Kot
 
Estimating with story points
Estimating with story pointsEstimating with story points
Estimating with story pointsWalid Farag
 
Overview: Agile Methodology and Scrum
Overview: Agile Methodology and ScrumOverview: Agile Methodology and Scrum
Overview: Agile Methodology and ScrumIgor Corrêa
 
SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?Silvio Wandfluh
 
Introduction To Agile
Introduction To AgileIntroduction To Agile
Introduction To Agilevineet
 
Agile & SCRUM basics
Agile & SCRUM basicsAgile & SCRUM basics
Agile & SCRUM basicsArun R
 
Practical Guide to Scrum
Practical Guide to ScrumPractical Guide to Scrum
Practical Guide to ScrumPavel Dabrytski
 
Scrum In Ten Slides
Scrum In Ten SlidesScrum In Ten Slides
Scrum In Ten Slidespmengal
 
Agile Patterns and Anti-Patterns
Agile Patterns and Anti-PatternsAgile Patterns and Anti-Patterns
Agile Patterns and Anti-PatternsRichard Cheng
 
Agile methodology
Agile methodologyAgile methodology
Agile methodologyPayod Soni
 
Scrum Introduction
Scrum IntroductionScrum Introduction
Scrum IntroductionJames Brett
 
Definition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinementDefinition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinementChristian Vos
 
Elephant Carpaccio workshop
Elephant Carpaccio workshopElephant Carpaccio workshop
Elephant Carpaccio workshopnikos batsios
 

What's hot (20)

Release wednesdays and the agile release train upload
Release wednesdays and the agile release train   uploadRelease wednesdays and the agile release train   upload
Release wednesdays and the agile release train upload
 
Agile Scrum Training Process
Agile Scrum Training ProcessAgile Scrum Training Process
Agile Scrum Training Process
 
Scrum values
Scrum valuesScrum values
Scrum values
 
Scrum and the agile development process
Scrum and the agile development processScrum and the agile development process
Scrum and the agile development process
 
Agile Development
Agile DevelopmentAgile Development
Agile Development
 
Product Backlog Refinement
Product Backlog RefinementProduct Backlog Refinement
Product Backlog Refinement
 
Estimating with story points
Estimating with story pointsEstimating with story points
Estimating with story points
 
Overview: Agile Methodology and Scrum
Overview: Agile Methodology and ScrumOverview: Agile Methodology and Scrum
Overview: Agile Methodology and Scrum
 
SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?SAFe® PI Planning - 4 locations - but how?
SAFe® PI Planning - 4 locations - but how?
 
Introduction To Agile
Introduction To AgileIntroduction To Agile
Introduction To Agile
 
Agile & SCRUM basics
Agile & SCRUM basicsAgile & SCRUM basics
Agile & SCRUM basics
 
2017 Scrum by Picture
2017 Scrum by Picture2017 Scrum by Picture
2017 Scrum by Picture
 
Practical Guide to Scrum
Practical Guide to ScrumPractical Guide to Scrum
Practical Guide to Scrum
 
Scrum In Ten Slides
Scrum In Ten SlidesScrum In Ten Slides
Scrum In Ten Slides
 
Agile Patterns and Anti-Patterns
Agile Patterns and Anti-PatternsAgile Patterns and Anti-Patterns
Agile Patterns and Anti-Patterns
 
Agile methodology
Agile methodologyAgile methodology
Agile methodology
 
Scrum Introduction
Scrum IntroductionScrum Introduction
Scrum Introduction
 
Agile
AgileAgile
Agile
 
Definition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinementDefinition of Done and Product Backlog refinement
Definition of Done and Product Backlog refinement
 
Elephant Carpaccio workshop
Elephant Carpaccio workshopElephant Carpaccio workshop
Elephant Carpaccio workshop
 

Viewers also liked

SUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel Dabrytski
SUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel DabrytskiSUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel Dabrytski
SUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel DabrytskiIQ Business - agility@IQ
 
ScrumDay Vietnam 2012 - Agile adoption - Nhan
ScrumDay Vietnam 2012 - Agile adoption - NhanScrumDay Vietnam 2012 - Agile adoption - Nhan
ScrumDay Vietnam 2012 - Agile adoption - NhanDUONG Trong Tan
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patternsFadi Stephan
 
BDD - Keep love alive
BDD - Keep love aliveBDD - Keep love alive
BDD - Keep love aliveRory Preddy
 
Agile Anti-Patterns. Yes your agile projects can and will fail too.
Agile Anti-Patterns. Yes your agile projects can and will fail too.Agile Anti-Patterns. Yes your agile projects can and will fail too.
Agile Anti-Patterns. Yes your agile projects can and will fail too.Sander Hoogendoorn
 
Risks and strategies adopting agile in medium and large organizations
Risks and strategies adopting agile in medium and large organizationsRisks and strategies adopting agile in medium and large organizations
Risks and strategies adopting agile in medium and large organizationsAgile Software Community of India
 
Agile Adoption Patterns And Antipatterns
Agile Adoption Patterns And AntipatternsAgile Adoption Patterns And Antipatterns
Agile Adoption Patterns And AntipatternsNaresh Jain
 
Bab 09 kekuatan sambungan las
Bab 09 kekuatan sambungan lasBab 09 kekuatan sambungan las
Bab 09 kekuatan sambungan lasRumah Belajar
 

Viewers also liked (9)

SUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel Dabrytski
SUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel DabrytskiSUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel Dabrytski
SUGSA JHB 10 Agile anti-patterns in distributed teams 2014 - Pavel Dabrytski
 
Coaching Anti-Pattens and common smells
 Coaching Anti-Pattens and common smells Coaching Anti-Pattens and common smells
Coaching Anti-Pattens and common smells
 
ScrumDay Vietnam 2012 - Agile adoption - Nhan
ScrumDay Vietnam 2012 - Agile adoption - NhanScrumDay Vietnam 2012 - Agile adoption - Nhan
ScrumDay Vietnam 2012 - Agile adoption - Nhan
 
User Story Smells & Anti-patterns
User Story Smells & Anti-patternsUser Story Smells & Anti-patterns
User Story Smells & Anti-patterns
 
BDD - Keep love alive
BDD - Keep love aliveBDD - Keep love alive
BDD - Keep love alive
 
Agile Anti-Patterns. Yes your agile projects can and will fail too.
Agile Anti-Patterns. Yes your agile projects can and will fail too.Agile Anti-Patterns. Yes your agile projects can and will fail too.
Agile Anti-Patterns. Yes your agile projects can and will fail too.
 
Risks and strategies adopting agile in medium and large organizations
Risks and strategies adopting agile in medium and large organizationsRisks and strategies adopting agile in medium and large organizations
Risks and strategies adopting agile in medium and large organizations
 
Agile Adoption Patterns And Antipatterns
Agile Adoption Patterns And AntipatternsAgile Adoption Patterns And Antipatterns
Agile Adoption Patterns And Antipatterns
 
Bab 09 kekuatan sambungan las
Bab 09 kekuatan sambungan lasBab 09 kekuatan sambungan las
Bab 09 kekuatan sambungan las
 

Similar to Agile Anti-patterns

Scrum is good - but kanban is better
Scrum is good - but kanban is betterScrum is good - but kanban is better
Scrum is good - but kanban is betterNeal Champion
 
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship CultureTechnical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship CultureAllison Pollard
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesIgor Moochnick
 
Software development is hard
Software development is hardSoftware development is hard
Software development is hardEd Wong
 
Scrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachScrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachMichael Sahota
 
Getting rid of agile in a few simple steps
Getting rid of agile in a few simple stepsGetting rid of agile in a few simple steps
Getting rid of agile in a few simple stepsHanno Jarvet
 
The Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the teamThe Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the teamCprime
 
Kanban Explained Clearly
Kanban Explained ClearlyKanban Explained Clearly
Kanban Explained ClearlyAndrew Lloyd
 
Kanban Explained Clearly
Kanban Explained ClearlyKanban Explained Clearly
Kanban Explained ClearlyAndrew Lloyd
 
Agile Scrum at Double V3
Agile Scrum at Double V3Agile Scrum at Double V3
Agile Scrum at Double V3bmasse @ Nexio
 
Keep Calm and Use Kanban
Keep Calm and Use KanbanKeep Calm and Use Kanban
Keep Calm and Use KanbanAcquate
 
Montreal alm-20150509-benday-good-to-great-scrum-master
Montreal alm-20150509-benday-good-to-great-scrum-masterMontreal alm-20150509-benday-good-to-great-scrum-master
Montreal alm-20150509-benday-good-to-great-scrum-masterMSDEVMTL
 
Handling Waterfall Nostalgia when Moving to Agile
Handling Waterfall Nostalgia when Moving to AgileHandling Waterfall Nostalgia when Moving to Agile
Handling Waterfall Nostalgia when Moving to AgileYaki Koren
 
The Fundamentals of Continuous Software Design
The Fundamentals of Continuous Software DesignThe Fundamentals of Continuous Software Design
The Fundamentals of Continuous Software DesignJeremy Miller
 
Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012MrAlexRosales
 

Similar to Agile Anti-patterns (20)

Scrum is good - but kanban is better
Scrum is good - but kanban is betterScrum is good - but kanban is better
Scrum is good - but kanban is better
 
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship CultureTechnical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
Technical Excellence Doesn't Just Happen--Igniting a Craftsmanship Culture
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best Practices
 
Scrum wall images by tobias mayer
Scrum wall images by tobias mayerScrum wall images by tobias mayer
Scrum wall images by tobias mayer
 
Agile intro module 1
Agile intro   module 1Agile intro   module 1
Agile intro module 1
 
Software development is hard
Software development is hardSoftware development is hard
Software development is hard
 
Scrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from EachScrum and Kanban - Getting the Most from Each
Scrum and Kanban - Getting the Most from Each
 
Introduction to scrum & agile
Introduction to scrum & agileIntroduction to scrum & agile
Introduction to scrum & agile
 
Getting rid of agile in a few simple steps
Getting rid of agile in a few simple stepsGetting rid of agile in a few simple steps
Getting rid of agile in a few simple steps
 
The Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the teamThe Essential Product Owner - Partnering with the team
The Essential Product Owner - Partnering with the team
 
Kanban Explained Clearly
Kanban Explained ClearlyKanban Explained Clearly
Kanban Explained Clearly
 
Kanban Explained Clearly
Kanban Explained ClearlyKanban Explained Clearly
Kanban Explained Clearly
 
Scrum shuhari
Scrum shuhariScrum shuhari
Scrum shuhari
 
Agile Scrum at Double V3
Agile Scrum at Double V3Agile Scrum at Double V3
Agile Scrum at Double V3
 
Anti-patterns
Anti-patternsAnti-patterns
Anti-patterns
 
Keep Calm and Use Kanban
Keep Calm and Use KanbanKeep Calm and Use Kanban
Keep Calm and Use Kanban
 
Montreal alm-20150509-benday-good-to-great-scrum-master
Montreal alm-20150509-benday-good-to-great-scrum-masterMontreal alm-20150509-benday-good-to-great-scrum-master
Montreal alm-20150509-benday-good-to-great-scrum-master
 
Handling Waterfall Nostalgia when Moving to Agile
Handling Waterfall Nostalgia when Moving to AgileHandling Waterfall Nostalgia when Moving to Agile
Handling Waterfall Nostalgia when Moving to Agile
 
The Fundamentals of Continuous Software Design
The Fundamentals of Continuous Software DesignThe Fundamentals of Continuous Software Design
The Fundamentals of Continuous Software Design
 
Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012Scrum workshop - September 7, 2012
Scrum workshop - September 7, 2012
 

Recently uploaded

"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 

Recently uploaded (20)

"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 

Agile Anti-patterns

Editor's Notes

  1. \n
  2. \n
  3. The term was coined in 1995 by Andrew Koenig,[3] inspired by Gang of Four's book Design Patterns, which developed the concept of design patterns in the software field. \n\nIn the old days, they just called these 'bad ideas'. The new name is much more diplomatic.\n
  4. \n
  5. Identifying bad practices can be as valuable as identifying good practices.\n
  6. There must be at least two key elements present to formally distinguish an actual anti-pattern from a simple bad habit, bad practice, or bad idea:\n
  7. There must be at least two key elements present to formally distinguish an actual anti-pattern from a simple bad habit, bad practice, or bad idea:\n
  8. Ken Schwaber at an Agile Vancouver conference in 2008. \n\nKen Schwaber is the cofounder of Scrum (w/ Jeff Sutherland) and a founder of the Agile Alliance.\n\nThe trick is that you're supposed to learn from that feedback and fix your problems.\n\n\n
  9. \n
  10. Or, “Premature rejection of process”. See: http://xprogramming.com/xpmag/jatBaseball\n\nSmells: \n* “It won’t work here”\n* “We tried it and it didn’t work”\n\nThis is often the case of not understanding the underlying philosophy behind a process or not implementing it correctly. If you find yourself in this situation for a practice that other development teams seem to get a lot of value out of, you should examine how you’re doing the practice more closely.\n\nOf course, it might *not* work for you and you should never just do a practice because it’s prescribed by a book, blog article, or your local agile user group :)\n\nAntidote: \n\n* Learn as much as you can about the practice\n* Give it a try for at least 2 sprints\n* Retrospect on whether the practice is worth continuing\n* Try it again several weeks or months down the road\n\n\n
  11. Smells: \n\n* Design > Coding > Testing > Documentation > Release\n* Requirements don’t change\n* A “bug fixing” sprint\n\nAntidote: \n\n* JIT design\n* Integrate QA and Docs into your Definition of “Done”\n* Cross-functional teams\n
  12. Smells: Everything is a must-have.\n\nThis usually arrises out of a fear that if features don’t make it in the initial release, they’ll never get in. This fear is natural since that’s the way waterfall development taught us that software development works.\n\nWhy bad:\n\nYou don’t learn about your product from real world use. See: Lean Startup\n\nAntidote: \n\nThe MVP - release before you’re ready to small group and listen to their feedback to inform your next moves.\n
  13. Specifically, deadlines with fixed scope (sometimes deadlines are unavoidable).\n\nSmells:\n\n* “Bug fixing” sprints\n* Lots of bugs\n* Scrimping on tests\n\nWhy bad:\n\n* Deadlines force you to compromise on quality\n\nAntidote:\n\n* If you must have deadlines, flex on scope rather than quality\n* Don’t use hard deadlines (challenge assumptions)\n
  14. Smell: \n\n* Developers establish priority of stories\n\nAntidote:\n\n* Get a product owner that can be accessible - even if it means making one of your developers be the official Product Owner.\n\nSomeone needs to be responsible for the priority of the stories and talking with customers. Your project needs that “single wringable neck” that has the appropriate information and authority to make decisions on priority.\n
  15. Smell:\n\n* Prioritizing customer requests above all other work.\n* Checklist product\n\nWhy Bad:\n\nYou’re always reactive. The customer doesn’t always know what they want. Feature checklists lead to complex, cluttered design that doesn’t please anyone.\n\nAntidote:\n\n* Say “thank you for your feedback”!\n* Don’t be afraid of your customer becoming too advanced for your product (37Signals philosophy)\n
  16. Smells:\n\n* Developer as Product Owner\n* Manager as Scrum Master\n* Scrum Master + Product Owner\n\nWhy bad:\n\nConflict of interest\n\nAntidote:\n\nDon’t :)\n
  17. Smell: Management concern over idle developers\n\nWhy bad: \n\nIn an agile project, you want to watch the baton, not the runners.\n\nMaximizing capacity will skew the stories toward your available skills rather than toward the most important stories for your product.\n\nAntidote: \n\n* Allow slack time\n* Encourage pair programming\n* WIP limits\n* Establish “shave the yak” time where people can add items to their list of things to do when they’re idle\n\nSee also:\n\n* Silo People\n* Layer Cake Stories\n
  18. Smells: \n\n* Not following through with action items\n* More than 2 action items from a retrospective\n\nAntidote:\n\nDecide on only 1 or 2 things you want to improve with your process and make sure to evaluate the effectiveness of the change(s) at the next retrospective.\n
  19. Smell: You need time for your product to stabilize before a release\n\nAntidote:\n\n* Continuous Integration\n* Demo your product at the end of each sprint\n
  20. Background for “Sword of Damocles”:\n\nThe Damocles of the anecdote was an obsequious courtier in the court of Dionysius II of Syracuse, a fourth century BC tyrant of Syracuse, Italy. Pandering to his king, Damocles exclaimed that, as a great man of power and authority surrounded by magnificence, Dionysius was truly extremely fortunate. Dionysius then offered to switch places with Damocles, so that Damocles could taste that very fortune first hand. Damocles quickly and eagerly accepted the King's proposal. Damocles sat down in the king's throne surrounded by every luxury, but Dionysius arranged that a huge sword should hang above the throne, held at the pommel only by a single hair of a horse's tail. Damocles finally begged the tyrant that he be allowed to depart, because he no longer wanted to be so fortunate.[2][5]\n\nDionysius had successfully conveyed a sense of the constant fear in which the great man lives. Cicero uses this story as the last in a series of contrasting examples for reaching the conclusion he had been moving towards in this fifth Disputation, in which the theme is that virtue is sufficient for living a happy life.[6] Cicero asks:\n\n Does not Dionysius seem to have made it sufficiently clear that there can be nothing happy for the person over whom some fear always looms?\n\nSmells:\n* Management tracks hours worked\n* Standups are for accountability rather than communication\n* Scrum Master is your manager\n\nAntidote:\n* Watch the baton\n* Have a team member lead the standups\n
  21. Smells: Integration stories\n\nWhy bad: \n\n* Front-end and back-end get out of sync\n* You often aren’t in a releasable state\n\nAntidote: Slice stories vertically\n
  22. Smells: Assigning users to individual stories at the start of an iteration.\n\nWhy bad: \n\n* Bottlenecks\n* Bus factor\n* Silo People\n\nSee also: \n\n* Silo People\n
  23. Smells:\n\n* Premature Allocation\n* Prioritizing stories based on team skills\n\nWhy bad:\n\nAlso known as “stove pipe”. What are the dangers of having developers that are overly specialized?\n\n* Stories will be prioritized based on the skills of the developers - not customer need\n* Low “bus factor”, which means bottlenecks when specialized developers are unavailable\n\nAntidote:\n\n* Prioritize stories based on product / market needs\n* Pair program to share knowledge\n
  24. Smells:\n\nOne developer is working on many stories at once\n\nWhy bad:\n\n* Bottlenecks\n* Not finishing stories in a sprint\n\nAntidote: \n\n* WIP limits\n
  25. Agile is a holistic process. It is tempting to take the rituals of Agile like sprints, standups, story points and retrospectives, but not implement the engineering practices described in eXtreme Programming.\n\n> the solid agile engineering practices included in Extreme Programming pay for themselves within the first few months. Without XP's agile engineering practices, code quality and productivity asymptotically decreases over time. With them, productivity starts lower, but then it asymptotically increases. I can't prove it, but my sense is that the two curves cross at about the eight-week mark. Maybe sooner. Agile engineering practices aren't only important--they pay for themselves! Doing anything else is pure negligence... if you understand your options. Scrum is silent on the matter.\n
  26. \n
  27. These don’t fit the formal definition of an anti-pattern, but are worth an honorable mention.\n\nThese are things that are often easy to neglect in an agile project, but I think are fundamental to a well-functioning agile team.\n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n