# THE MAGIC SQUARE

Three useful levels of refinement are the following:

- The
**product idea**is the most abstract concept of what the product should do. It is comparable in abstraction to a mission statement of an organization. - A
**function specification**is a description of the function that the product should offer its users. - A
**transaction specification**is a list of transactions of the product with its users...each...is an interaction with the environment considered to be atomic.

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.