THE MAGIC SQUARE

Three useful levels of refinement are the following:

The product objectives specify a problem to be solved; a specification of product objectives is always a specification of user needs.

The specifications of the product idea, product functions and product transactions describe a solution of the problem at increasing levels of refinement.

...During refinement, we move from the why to the what. Refinement reduces the uncertainty about a problem situation because we select a solution to a set of design objectives. The movement from right to left decreases the level of refinement and increases the level of abstraction. During abstraction, we move from the what to the why at the same level of aggregation, i.e. from behavior to function. Because refinement is a decomposition of functions into more detailed functions, it is also called function decomposition...

The movements in the vertical dimension are system decomposition moving down and system integration moving up. System decomposition moves from the what at one aggregation level to the how of that level (which is the what of the next lower level). Just as refinement resolves uncertainty about the behavior that would satisfy system objectives, system decomposition resolves uncertainty about which decomposition would satisfy system objectives.

In functional system decomposition, the levels of decomposition correspond to levels of refinement. There are however other ways to decompose a system and in general, system decomposition is orthogonal to function refinement.

Requirements Engineering, Frameworks for Understanding
By R.J. Wieringa
Copyright 1996 by John Wiley & Sons, Ltd.
Reproduced with permission.

Page updated 4/5/2004
Ludwig Consulting Services, LLC