• Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint
Share this Page URL
Help

Chapter 20. Mirror, Mirror > Getting the Picture

Getting the Picture

Software engineering models serve much the same purposes as the wicked queen's mirror. Notations should make clear the difference between the fairest of solutions and those that are only fair. Developers need to be able to tell by looking at a model whether the design is sound or stupid. A software design model is not merely a holding place for as-yet-unbuilt software ideas. It allows developers to spot problems and shortcomings in the design and to compare approaches to see which is superior. Ultimately this is why good developers draw pictures before they code—it's cheaper to build paper models than to build software, and good models make it easier to see how to do things well.

Good notation allows for simple, direct, and unambiguous translation between model and code: to develop code from a model and to model existing code. Sloppy, obscure, or imprecise notation makes for sloppy, obscure, and imprecise translation. Every visual element in the notation should correspond with some specific and relevant aspect of the software being modeled; every important feature in the code should be expressible in the notation.


PREVIEW

                                                                          

Not a subscriber?

Start A Free Trial


  
  • Creative Edge
  • Create BookmarkCreate Bookmark
  • Create Note or TagCreate Note or Tag
  • PrintPrint