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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

404 Conclusions and Future Work<br />

13.1 Conclusions<br />

This combined thesis establishes the base <strong>of</strong> the method S<strong>of</strong>tware/<strong>Hardware</strong> Engineering<br />

(SHE). This method incorporates a framework for design activities, and a formal<br />

description language called POOSL (Parallel Object-Oriented <strong>Specification</strong> Language).<br />

SHE is a system level method for co-specification and design <strong>of</strong> distributed reactive<br />

hardware/s<strong>of</strong>tware systems. This method guides analysis, specification and design<br />

activities. The application area is the specification and design <strong>of</strong> complex systems that<br />

must be partitioned into in hardware and/or s<strong>of</strong>tware implementations. Examples <strong>of</strong><br />

such systems are tele/data communication networks and switches, industrial control<br />

systems, embedded systems and electronic consumer products. There is a typical combination<br />

<strong>of</strong> carefully designed key features that distinguishes our method from other<br />

ones. These features are:<br />

From Informal Analysis to Formal <strong>Specification</strong>. Starting from informal object-oriented<br />

analysis and architecture design, SHE produces rigorous behaviour and architecture<br />

descriptions. The result <strong>of</strong> the use <strong>of</strong> the method is a formal executable<br />

model and accompanying documents. Requirements that cannot be formalised<br />

are described in a requirements catalogue. The executable model is described<br />

in the formal specification language POOSL. POOSL has a formal mathematical<br />

semantics. In contrast to informal methods, SHE therefore has the potential for<br />

simulation, formal verification, design structure transformation, and automatic<br />

translation for implementation.<br />

View-Oriented Development. SHE supports the simultaneous evolutionary development<br />

<strong>of</strong> several views, each focusing on particular system aspects. Important<br />

views are behavioural views, architectural views and conceptual views. Abstractions<br />

<strong>of</strong> these views are combined in an explicit unified formal model described<br />

in POOSL. Behaviour-preserving transformations are <strong>of</strong>fered to keep behavioural<br />

views and architectural views consistent.<br />

Instance-Oriented Approach. Most object-oriented methods use conceptual views.<br />

These are built from class diagrams. Behavioural views in SHE are described by the<br />

visualisation <strong>of</strong> collaborating instances, such as objects and clusters. A behavioural<br />

view consists <strong>of</strong> process objects that perform complex interactions using message<br />

passing. The instance-oriented approach visualises process objects that model<br />

autonomous concurrent entities. Data objects are contained in process objects and<br />

model dynamic data structures. Architectural views show a structure <strong>of</strong> modules<br />

and channels. Architecture and implementation structure <strong>of</strong> a system is formalised<br />

by representing modules as instances <strong>of</strong> clusters that group collaborating process<br />

objects.<br />

Scenarios. Behaviour views are build from scenarios. Separate scenarios are used<br />

to model different discipline-oriented and function-oriented views. Scenarios are<br />

developed using an event/response approach derived from Structured Analysis<br />

and Structured Design Methods, combined with our instance-oriented approach.<br />

Events represented by messages evoke responses. Methods model response behaviour.<br />

Methods in process objects handle sequences <strong>of</strong> messages, mutually call

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

Saved successfully!

Ooh no, something went wrong!