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.

60 Abstraction <strong>of</strong> a Problem Domain<br />

4. Wegner [Weg87]: describes objects as ’autonomous entities that respond to messages<br />

or operations and share a state. An object is a modular computing agent. In contrast with<br />

functions, objects have memory.’<br />

5. Verschueren [Ver92] notes that objects do not always have a fixed location within<br />

a system. ’Passive travelling objects move and are operated upon by other objects, e.g. a<br />

’data packet’. Active travelling objects move and perform operations at the location where<br />

they are. They can move themselves.’<br />

4.2.4 Object-Oriented Analysis<br />

The main difference between object-oriented analysis and a functional approach is respectively<br />

the union and the separation <strong>of</strong> functions and data. SASD methods support a<br />

functional approach. They model data separate from functions. Data is modelled in<br />

stores and on flows. Functions are modelled as processes (transformations). In contrast,<br />

object-oriented analysis uses objects that encapsulate data in a shell together with the<br />

operations on that data. This data is private to the object, and can only be transformed<br />

or examined by services (operations) that the object <strong>of</strong>fers via its message interface.<br />

Messages activate well defined internal behaviour <strong>of</strong> the object. Possible results will<br />

be returned to the sender <strong>of</strong> a message. So an object hides and combines data with<br />

its accompanying operations. The behaviour <strong>of</strong> an object may differ at various times<br />

depending on the communication that happened before. Objects give a completely dif-<br />

Object D<br />

Object A<br />

Object<br />

to be<br />

defined<br />

Object C<br />

Object B<br />

Figure 4.1: Analyst Visualises to be in an Object<br />

ferent feeling and attitude towards the problem domain analysis, when compared to a<br />

functional approach. Various items, such as things, commodities, concepts, and targets<br />

can be modelled as objects. For human thinking and reasoning it is important that we<br />

can identify ourselves with an object. We can imagine ourselves to be in an object, look<br />

outside, and wonder what we want from other objects (see Figure 4.1). We can also

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

Saved successfully!

Ooh no, something went wrong!