Definitions of “Design” Simon - designer devises courses of action aimed at changing existing situations into preferred ones Petroski - “to obviate failure” [in engineering products] Hamlet - two paramount purposes basic algorithm decomposition so that programmers may work on small, separable tasks
Schach - determine the internal structure of the product Pressman - (“where creativity rules…”) `create a representation or model of the software providing detail about data structures, architecture, interfaces and other necessary components … ‘
Winograd on software “design” inward-looking perspective (do not ignore) “implement a spec efficiently” software that works (designer’s eye view vs. constructor’s eye view) “to produce quality results and a satisfying experience…”