DEVELOPING a softwareintensive system is like raising a child. As Will PleasantRyan observed, both babies and code have smells, you get used to changing requirements, you have to take the long view, you can’t do it alone, and eventually you have to let go.1 I would add to Will’s most excellent simile that, although you might think you know everything up front, you certainly don’t, and therefore...