In software development work, a design pattern is a description of a solution to a recurring problem. It outlines the elements that are necessary to solve the problem, including context and the consequences of certain actions, without prompting the reader to solve the problem a specific way, leaving them with the agency to write code as they see fit.
Patterns, when applied well and not overused, provide a guide to solving repetitive problems rapidly. A good pattern provides enough background information to help you solve the problem, without asserting that it is the best or only solution in all instances.
Scrum, Agile, Kanban, and other frameworks and mindsets like them, are sets of behavioural design patterns. In Scrum, we have Scrum PLOP (Pattern Language of Programs) that documents known patterns of effective behaviour.
Unfortunately, we also regularly see recurring design patterns that create ineffective behaviour. These are called Anti-Patterns.
Below, you can browse through our growing collection of articles about Anti-Patterns – what causes them, and what you can do to resolve or avoid them:
- Agile Bonuses – The Damage They Do
- Scrum Anti-Patterns: The Hardening Sprint
- Scrum Anti-Patterns: Large Product Backlog (published on ScrumAlliance.org)
(download link for PDF version in case the Scrum Alliance link is no longer functional)
- Scrum Anti-Patterns: Micromanagement
Watch for more articles to be added soon!Image attribution: Agile Pain Relief Consulting
Mark Levison has been helping Scrum teams and organizations with Agile, Scrum and Kanban style approaches since 2001. From certified scrum master training to custom Agile courses, he has helped well over 8,000 individuals, earning him respect and top rated reviews as one of the pioneers within the industry, as well as a raft of certifications from the ScrumAlliance. Mark has been a speaker at various Agile Conferences for more than 20 years, and is a published Scrum author with eBooks as well as articles on InfoQ.com, ScrumAlliance.org an AgileAlliance.org.