In the current practice of designing software for user organizations, as experienced by the authors, designers often produce design knowledge again and again for every decision: They re-invent the wheel. We want to improve the quality, predictability and efficiency of the software design process by reusing design knowledge. Our proposed solution consists of Reusable Rationale Blocks (RRBs). An RRB is a schema and a notation to write down decision rationale. To manage RRBs, we introduce a generalized design space, that consists of a collection of RRBs. And to use RRBs, we define a process that can be added to any design process, as well as a set of heuristics to be used in applying this process. We illustrate our solution by a few examples taken from our own experience.
|Title of host publication||Rationale Management in Software Engineering|
|Editors||A.H. Dutoit, R. McCall, I Mistrik, B. Paech|
|Place of Publication||London|
|Number of pages||19|
|Publication status||Published - Apr 2006|