P&P Summit Day Three: Weed & Feed your Software

The next session was Alan Ridlehoover, a developer for P&P. He was going to talk about agile testing guidance, but that wasn’t the metaphor he ended up going with.    Instead he choose: Weed and Feed your software.

He states that agile software practices is like weed killer. If architects were gardeners planning a park they would have to ensure that bugs and weeds don’t take over their garden. The metaphor means that we need to ensure that we use good techniques to ensure that bugs and poor design doesn’t overtake our systems. The Weeds in his metaphor is doing more than you need to or over doing something beyond what is necessary.

Unit Tests provides a protection of your software to ensure that bugs don’t get in and ensure the goal (read functionality) stays consistent, even if you change something within it. Investing the time to do these tests will mean that protection is complete and can be automated so that your protection goes beyond the first time the code was written. He states that you should never add or modify functionality without a failing test.

When you refactor and perform incremental design it allows you to slowly change your software as new requirements arrive, new technology causes your environment to change, etc.    This also enables the ability to be ready to provide a constantly useable set of code. While refactoring never change anything while a test is failing.

Frequent integrations (continuous) keeps the weeds down. He advocates that once you get a successful test with a new change you should check it in. This helps keep the integrations smoother and keeps the repository of code deployable.

Finally he asks is all this discipline really worth the effort? He states that agile is not an easy methodology. It requires a lot of work; however, the benefits are so great that it makes it worth it.

There seems to be a lot of emphasis today on Agile development methodology. It’s good stuff, but things I’m already familiar with. This session felt like it was drilling in the same points as earlier talks today. It was certainly the most visually appealing presentation since he used large photos for his slides, all depicting his garden metaphor.