The 12 Days of Agile Principles! Principle #9

 
 
 

Inspired by The 12 Days of Christmas we’re exploring the principles behind the Agile Manifesto. Originally defined in 2001, The Principles of the Agile Manifesto are still highly relevant to Agile approaches today. So like an advent calendar of Agility, we're unwrapping one principle each day for the 12 working days - Monday to Friday, leading up to Xmas. By the time we conclude we should all be in the festive spirit!

*****

Welcome to DAY 9 of ‘The 12 Days of Agile Principles’…

PRINCIPLE #9

Continuous attention to technical excellence & good design enhances agility

Strap in it’s going to get technical. In essence paying attention to technical design and refactoring  allows the code base to maintain some functional integrity and at the same time expand for the next set of technical functionality, or features, required to meet a customer need. 

Here is Martin Fowler explaining it eloquently in his coining of the design stamina hypothesis

 

If you choose to do none of these things, i.e. keep tactically plopping on new functionality to your code base without attention to good design and without employing good engineering practices consistently, such as maintaining unit tests and performing peer reviews of the code and pair programming, then you are likely building up a massive ‘technical debt’ that will need to be re-paid one day. This will be in the shape of a big re-factoring effort or even a system re-write, thus limiting your agility.

So re-factor early and often, create automated unit tests and ensure you employ some degree of peer review and pair programming to keep your code base nice. It really will enable you to build on it faster, enhancing your agility. 

 ***

Continue on to Agile Principle #10 or join the conversation at @TheRebootCo

#12daysofAgilePrinciples

Previous
Previous

The 12 Days of Agile Principles! Principle #10

Next
Next

The 12 Days of Agile Principles! Principle #8