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.

2.3 <strong>Specification</strong>s, Models and Views 13<br />

given examples is <strong>of</strong>ten far from the real world. On the other hand there are a lot <strong>of</strong><br />

available books about methods. These methods are in some way mature and therefore<br />

more or less old. The process from new method to published book is time consuming.<br />

Especially because good books contain cases and experience, that took time to be gathered.<br />

Methods have the problem <strong>of</strong> being very complex entanglements <strong>of</strong> entities. One<br />

cannot simply implant a ’good part’ <strong>of</strong> a method into a new method. Together, frameworks,<br />

notations, concepts, heuristics, languages and tools form a strongly connected<br />

very complex artefact. Getting to know a method is extremely complicated and takes<br />

a considerable amount <strong>of</strong> time. This makes it very hard to assess the weaknesses and<br />

strengths <strong>of</strong> various methods. Therefore, designing a new method is not just a matter <strong>of</strong><br />

reading a few books and joining the nice parts. The gap has to be bridged between two<br />

sorts <strong>of</strong> material. This leads to the objective <strong>of</strong> establishing a solid base by analysing<br />

methods at the level <strong>of</strong> concepts. The proper and useful concepts have to be combined<br />

into a new method. In order to get a consistent unity we will use formal approaches in<br />

an either direct or indirect way.<br />

Method design requires a fundamental and conceptual approach.<br />

In this chapter we highlight the critical aspects we discovered to be relevant for the<br />

definition <strong>of</strong> requirements for a new method.<br />

2.3 <strong>Specification</strong>s, Models and Views<br />

Models <strong>of</strong> <strong>Systems</strong><br />

A specification is a document that prescribes, in a complete, precise, verifiable manner, the<br />

requirements, design, behaviour and other characteristics <strong>of</strong> a hardware/s<strong>of</strong>tware system<br />

or a hardware/s<strong>of</strong>tware system component [IEE84]. This definition is rather broad.<br />

We ’specify’ that a specification must contain a model <strong>of</strong> the physical system to be developed.<br />

A model <strong>of</strong> a system is an abstract representation <strong>of</strong> this system. It provides a<br />

means to reason about a system, i.e. to provide answers to certain questions about this<br />

system. From each model a collection <strong>of</strong> properties concerning the system involved can<br />

be deduced. A model <strong>of</strong> a system is then called adequate if this system satisfies (within<br />

a certain degree <strong>of</strong> acceptability) each <strong>of</strong> these properties. Vice versa, this system is said<br />

to satisfy the model. In general there exists more than one system satisfying the model.<br />

So in fact, each model implicitly defines a collection <strong>of</strong> systems. This collection will<br />

be called the realisation space <strong>of</strong> the model and each element <strong>of</strong> this space will be called<br />

a realisation. Notice that the more properties the model allows to be determined, the<br />

smaller the realisation space will be.<br />

Development <strong>of</strong> complex systems requires the creation <strong>of</strong> models.<br />

Expressing Properties<br />

Development <strong>of</strong> a specification should end up with a model that is implementable by

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

Saved successfully!

Ooh no, something went wrong!