One of my favorite developer sites, Worse Than Failure (used to be called The Daily WTF), just published an article about Agile methodologies and why they suck. While I don’t agree with Alex it’s always fun when an analogy is turned upside down… The problem here is that the Pyramid analogy is flawed in the first place since an extremely important part of agile methodologies, Refactoring, is missing. Instead, building a pyramid using agile methodologies would rather be done this way:
- Get some initial input from the Pharaoh. It will be something like “I’d like it to look like all the other pyramids, only bigger and better”.
- Start building something that may or may not look much like a pyramid.
- Find some flaws in your design. Show the Pharaoh and ask him what he thinks of it so far.
- Tear down everything you or the Pharaoh don’t like.
- Add some more components to the pyramid.
- Realize that the foundation of the pyramid isn’t solid enough.
- Rebuild the foundation
- Repeat steps 3, 4 and maybe 5 and 6 until you and the Pharaoh are happy with the result.
And this is why agile methodologies are better suited for software development than for construction work…