Agile Zone is brought to you in partnership with:

Jurgen Appelo calls himself a creative networker. But sometimes he's a writer, speaker, trainer, entrepreneur, illustrator, manager, blogger, reader, dreamer, leader, freethinker, or… Dutch guy. Since 2008 Jurgen writes a popular blog at www.noop.nl, covering the creative economy, agile management, and personal development. He is the author of the book Management 3.0, which describes the role of the manager in agile organizations. And he wrote the little book How to Change the World, which describes a supermodel for change management. Jurgen is CEO of the business network Happy Melly, and co-founder of the Agile Lean Europe network and the Stoos Network. He is also a speaker who is regularly invited to talk at business seminars and conferences around the world. After studying Software Engineering at the Delft University of Technology, and earning his Master’s degree in 1994, Jurgen Appelo has busied himself starting up and leading a variety of Dutch businesses, always in the position of team leader, manager, or executive. Jurgen has experience in leading a horde of 100 software developers, development managers, project managers, business consultants, service managers, and kangaroos, some of which he hired accidentally. Nowadays he works full-time managing the Happy Melly ecosystem, developing innovative courseware, books, and other types of original content. But sometimes Jurgen puts it all aside to spend time on his ever-growing collection of science fiction and fantasy literature, which he stacks in a self-designed book case. It is 4 meters high. Jurgen lives in Rotterdam (The Netherlands) -- and in Brussels (Belgium) -- with his partner Raoul. He has two kids, and an imaginary hamster called George. Jurgen has posted 145 posts at DZone. You can read more from them at their website. View Full User Profile

The Big List of Agile Practices

03.06.2013
| 11741 views |
  • submit to reddit
Curator's Note: Jurgen Appelo recently listed some of his best blog posts over the long history of his outstanding Agile blog, which DZone is honored to syndicate. This "Big List of Agile Practices" from 2009 may be one of his best of all time.

Noose This post is probably going to be hated and loved at the same time. Because, when people talk about agile practices, they can sometimes become very religious. Which means I may be putting my head in a noose with this one.

But who cares. It's worth it. I like living dangerously.

You see, at different occasions I had wanted the availability of  a big list of agile practices. But I never found any. All common agile practices are spread out over different methods, and many different sites. That's why I decided to create my own list.

Disclaimer: the list below is definitely incomplete, and probably controversial!

I constructed the list below from practices found on eight different web sites. I ignored some well-known agile concepts like "keep it simple" and "remove waste" because I consider those to be principles, not practices. I also ignored some practices when I had the feeling that they were only listed on one site, and nobody else was using them. While on the other hand, I listed some practices here that some people do not consider to be truly agile. But I included them nonetheless, when I noticed that they are regularly being used in an agile context.

If you disagree with the list, or if you think some practices are missing, please let me know!

You see, I am considering to use this list for a poll on agile practices and how they are being applied. And I hope you're willing to help me in getting this list in order before conducting such a poll.

Thanks already!

Requirements
Product Vision / Vision Statement SA JS
Product Backlog SA MG
User Stories Wiki SA C2 AM XP
Use Cases Wiki C2 AM XP
Usage Scenarios AM
Personas Wiki AM
Planning Poker Wiki
Requirement Prioritization Wiki AM
Design
Architectural Spikes / Spike Solutions C2 XP
Domain Driven Design Wiki IXP
Emergent Design / Evolutionary Design Wiki C2 IXP
CRC Cards Wiki AM XP
Design by Contract Wiki
System Metaphor XP
Construction
Coding Style / Coding Guidelines / Coding Standard Wiki JS IXP
Test Driven Development Wiki C2 XP
Behavior Driven Development Wiki
Pair-Programming / Pairing Wiki C2 JS XP IXP
Refactoring Wiki C2 XP IXP
Collective Code Ownership C2 JS XP IXP
Daily Builds / Automated Builds / Ten-Minute Builds Wiki JS
Continuous Integration Wiki C2 JS XP IXP
Code Reviews / Peer Reviews Wiki
Software Metrics / Code Metrics & Analysis Wiki
Source Control / Version Control Wiki JS
Issue Tracking / Bug Tracking Wiki
Configuration Management Wiki
Frequent Delivery / Frequent Releases C2 XP IXP
Testing
Unit Testing Wiki XP
Smoke Testing / Build Verification Test Wiki
Integration Testing Wiki
System Testing Wiki
Exploratory Testing Wiki
Test Automation Wiki SA
Storytesting / Acceptance Criteria / Acceptance Testing Wiki C2 AM XP IXP
Process
Timeboxing / Fixed Sprints / Fixed Iteration Length Wiki XP
Release Planning C2 JS XP
Iteration Planning / Planning Game / Sprint Planning Wiki SA MG C2 JS XP IXP
Sprint Backlog SA MG
Task Board SA MG
Definition of Done / Done Done SA JS
Daily Stand-up Meeting / Daily Scrum Wiki SA MG C2 JS XP
Velocity XP
Sprint Review / Iteration Demo SA MG JS
Value Stream Mapping Wiki
Root Cause Analysis / 5 Whys Wiki JS
Burn Down Charts / Burn Up Charts Wiki SA MG
Big Visible Charts / Information Radiators JS
Retrospective / Reflection Workshop Wiki SA JS IXP
Organization
Small Team IXP
Cross-Functional Team Wiki
Self-Organizing Team / Scrum Team MG
Colocated Team / Sitting Together / Common Workspace Wiki SA C2 JS IXP
On-Site Customer / Product Owner SA MG C2 JS
Scrum Master SA MG
Sustainable Pace IXP
Move People Around XP
Scrum of Scrums SA

References
Wiki = Wikipedia
SA = Scrum Alliance
MG = Mountain Goat Software
C2 = Cunningham & Cunningham
AM = Agile Modeling
JS = James Shore
XP = Extreme Programming
IXP = Industrial XP

(picture by the toe stubber)

Published at DZone with permission of its author, Jurgen Appelo. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Will Mason replied on Sun, 2013/03/17 - 9:52am

Hi.

This list is definitely going to be controversial   Well done for putting your hand-up to begin the grand game of mapping Agile.  

May I suggest you look into "Function Points".  I will not make comparisons or similarities -- For one thing with Function Points you need to calibrate the methodology to your group, organisation or domain.  I'm not always convinced every 'practice' includes that idea of calibration and refinement.

Also your mini-bio talks about Lean/Kanban but you haven't put them on the list as 'big picture' items.  Are you considering RUP?  I mean one day it should do everything ;-)  

One last thing some of the links used need to be checked.  They don't link to relevant explanations or descriptions.  I deliberately won't say which ones; because clearly no one is checking them in the first place.  For me, something called the "Big List ..." ought to be reliable and appropriately referenced.

Thanks for taking the first step. :-)

Ray Campanelli replied on Wed, 2013/03/27 - 12:07pm

What about Design Standards upon which the Coding Standards should be based?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.