One of the ongoing questions in Agile development is whether and how much up-front design needs to be done. Many practitioners have cited the need for some high-level design, but the most extreme of Agile purists say none at all. These folks sometimes cite evolution to bolster their case that you don’t need design to develop complex systems. This short, somewhat tongue-in-cheek video captures my response: