23.08.2013 Views

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

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

5.6 Architecture and Implementation Decisions Statement 127<br />

network topology;<br />

fault tolerant architectures;<br />

hardware/s<strong>of</strong>tware partitioning;<br />

analogue/digital hardware partitioning;<br />

floor-planning;<br />

board/back-plane partitioning;<br />

hardware to ASIC partitioning;<br />

co-operating processors and peripherals.<br />

Our previous research describes various sorts <strong>of</strong> architectures for mixed hardware/s<strong>of</strong>tware<br />

systems more extensively, with various illustrations <strong>of</strong> structures<br />

[vdP93a].<br />

The above list <strong>of</strong> schemes contains elements that concern system, hardware, and s<strong>of</strong>tware<br />

structure. For example, s<strong>of</strong>tware is <strong>of</strong>ten denoted as concentric layers or shells<br />

around a hardware platform. Some <strong>of</strong> those layers may be purchased products, for<br />

example a real-time operating system for an embedded processor. The rest <strong>of</strong> the system<br />

must be really developed. The interfaces with such a layer must be determined<br />

precisely. It is needlessly to model all details <strong>of</strong> internal behaviour <strong>of</strong> a purchased product.<br />

Prescribed implementation, possibly based on purchased system modules, is found<br />

<strong>of</strong>ten in industry. Use <strong>of</strong> experience with existing products and keeping stable relations<br />

with industrial suppliers <strong>of</strong>ten play a role. Of course old solutions must be questioned.<br />

However investments in development and production facilities are not thrown away<br />

without good reasons. These aspects can lead to knowledge about implementations that<br />

must play a role in the structuring <strong>of</strong> a model to prevent costly iterations.<br />

5.6 Architecture and Implementation Decisions Statement<br />

Although graphical notations are powerful communication tools they reveal only a part<br />

<strong>of</strong> the essential information. The essence <strong>of</strong> architecture and implementations structure<br />

design is taking design decisions. Such a decision may be the result <strong>of</strong> considering<br />

a wide variety <strong>of</strong> alternatives. In general, design decisions are not well documented.<br />

Alternative solutions and the properties that have been considered for making an ’optimal’<br />

design decision should be documented. Bare observation <strong>of</strong> a structure diagram,<br />

designed by someone, shows nothing about the decision process itself. It may be presumed<br />

that the designer did his best to take as much aspects in account as possible, and<br />

that the structure is well thought-out. However this is not always the industrial practice.<br />

Time pressure <strong>of</strong>ten necessitates to take a quick decision, without studying <strong>of</strong> further<br />

alternatives. We are not in the position to condemn this approach. However, when<br />

design changes appear to be necessary, it is crucial to be able to know what has been<br />

studied, and what not, and on what criteria. Therefore we integrate so-called Decisions

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

Saved successfully!

Ooh no, something went wrong!