I’ve long been a big fan of agile development and DevOps, but after lots of recent projects and non-trivial pain points, I’m skeptical of anyone who recommends “less documentation” as leading to improvements in processes and quality.
These techniques have been identified as they provide a ‘low hanging fruit’ sort of benefit in that they do not require huge expenditures or investments, but produce noticeable and most importantly, trackable, improvements in processes, speed and quality.
6 Practical Agile Techniques You Can Start Using Today – Developer.com
If you haven’t read the article, SPOILER WARNING. =)
My random, tryptophan-induced thoughts on the six suggestions are:
- Deliver More Frequently. Fabulous idea! Get on a cloud cadence. Ship early and often.
- Bring Testers and Developers into Requirements Discussions. Absolutely!! Over the years I’ve been most successful with cross-functional teams.
- Testable Requirements Documentation. This is the most significant change you can make in your process. Note: It requires “more documentation” than a typical agile implementation or even a waterfall project.
- Communicate More, Document Less. This is the one that concerns me. Most “agile” teams that I’ve worked with in the past two decades have taken “document less” to mean “skip documentation entirely and jump straight to code”. That’s a bad plan. Staff turnover, time passing, communication with other teams/companies, etc, all demand documentation. Without it, you’re going to suffer integration pains, communication tax, and regression errors. Ask me how I know.
- Use Prototypes. I like prototypes. Unless you don’t plan to throw them away. Almost nobody ever throws away prototypes in my experience. Don’t kid yourself if you’re just “prototyping” Version 0001. Don’t call it a prototype unless you actually plan to throw it away.
- Think about Testing Early. Most certainly. It seems to me that good testers are the limiting factor in almost every project. Great testers are hard to find and they’re frequently forgotten at the end of the process without any input or control.
Yes, you can use them immediately. Even in a scrummerfall project. Heh.