09.08.2013 Views

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Architecture</strong> <strong>Modeling</strong><br />

and so forth. Each of such design steps usually involves an assignment of requirements to<br />

the identified components. Some requirements are usually derived from formerly identified<br />

requirements, while other requirement occur due to the introduction of new components and<br />

interfaces.<br />

To stress the air conditioning example, we may have the requirement for an air-conditioning<br />

function (in the functional perspective) to provide air from the environment of an airplane with<br />

certain quantity and temperature. To show the simplest form of deriving a requirement for the<br />

logical perspective at the same abstraction level, there may be exactly one logical component<br />

performing the air conditioning function. In such a case, it seems to be obvious to assign the<br />

same requirement to the logical component as to the corresponding function.<br />

In more complex settings, logical components may perform several functions (sequentially,<br />

parallel, or in any other order), or several logical components may be involved performing a<br />

single functionality. Here, deriving requirements for one perspective from another may be more<br />

complex, particularly for the latter case. 3<br />

The same can be said for the relation between logical and technical components. A logical<br />

component may be performed by a single technical entity. It may be also performed by a<br />

composition of different entities, may be involving mechanical, computational and other components.<br />

Indeed there may be requirements that are unique to specific perspectives. For example,<br />

geometrical constraints such as packaging sizes, cable lengths, and so on become important<br />

only in the geometrical perspective. On the other hand, there are typically requirements that<br />

are important for multiple perspectives. Requirements identified for system functions for example<br />

are important in order to establish justification for proper system design. Satisfaction<br />

of those requirements can however often not be established in the functional perspective, e.g.<br />

due to missing specification of internal behavior. <strong>SPES</strong>MM provides concepts to reason about<br />

requirements across different perspectives, and to establish the corresponding relations.<br />

Abstraction Levels The same problems that occur with respect to reasoning about contracts<br />

across different perspectives hold for abstraction levels. When a system is designed incrementally,<br />

the same system is represented at different levels of granularity. Although various refinement<br />

steps can be established by decomposition of components, there are other cases where<br />

changing the abstraction level is more appropriate. This may be simply due to organizational<br />

boundaries, where different departments in a company are responsible for certain subsystems.<br />

A more formal reason is the fact, that refinement not always follows a decomposition approach,<br />

but demands for more complex m-to-n relations.<br />

Note that there is no explicit deployment defined for different aspects of components. The<br />

reason for this is, that the specification of different aspects has no direction. Instead, aspect<br />

specifications of a component are often closely and interdependently entangled, and relations<br />

between different aspects of specifications have to be made explicit. An example for multiaspect<br />

specification can be found for example in [18].<br />

4.4.1 Mapping<br />

Since the requirements for creating interfaces between perspectives and between abstraction<br />

levels are very similar, the <strong>SPES</strong>MM introduces the common concept of mapping. Technically,<br />

3 A convenient way to circumvent such problems is to start with a surrounding component that uses decomposition<br />

to achieve the intended result, and that keeps the simple one-to-one relation between functions and logical<br />

components<br />

62/ 156

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!