1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

29
1-1 ROPES Rapid Object-Oriented Process for Embedded Systems

Transcript of 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

Page 1: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-1

ROPES

Rapid Object-Oriented Process for Embedded Systems

Page 2: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-2

ROPES process artifacts

Page 3: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-3

The ROPES Macro Cycle

• Analysis– Requirements Analysis

– Systems Analysis/Engineering

– Object Analysis

• Design– Architectural Design

– Mechanistic Design

– Detailed Design

• Translation• Testing

Page 4: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-4

Analysis

• Identification of all aspects of the product that are required for correctness

Page 5: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-5

Analysis Model Artifacts

Page 6: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-6

Requirements Analysis

• Extracts requirements from customer as– use cases, scenarios– statecharts– constraints

• Activities– Create Use Case model– Identify and characterize External Events– Define behavioral scenarios (system dynamic behavior)– Identify constraints, required interfaces to other systems and

performance constraints

Page 7: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-7

Requirements Analysis (2)

• Determine large scale “clumps” and refine their behavior

• Identify actors in the external environment • Identify the semantics and characteristics of the

individual messages (including those that signal events) between the system and its actors

• Refine interaction protocols that use those messages• Refine the interaction protocols, e.g. required

sequences, pre- and postconditional invariants

Page 8: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-9

aPossibleUseCaseModel

Page 9: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-10

Messages & Events

• Analyst has to– find use cases and actors

– identify messages passing between the actors and the system

Page 10: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-11

Identify and characterize External Events

by• Associated actor (sender, receiver)• Arrival pattern (periodic, episodic) • Arrival time of message

– period and jitter (periodic msg)– min inter-arrival interval or burst length (episodic

msg)

• Message response properties – deadline (for hard deadline msg)– average response time (for soft deadline msg)

Page 11: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-12

Identify and characterize External Events (2)

by

• State information – pre-condition for the message– protocol (acceptable message sequence)– message data– post-conditional invariants for the response

Page 12: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-13

External Event List example

Event Description DirectionArrivalPattern

ResponsePerformance

1 setSpeeda 50 Hz PWM control signal with width of 1,25-1,75 msec to speed PWM servo periodic 20 ms period

2 setSteeringa 50 Hz PWM control signal with width of 1,25-1,75 msec to steering PWM servo periodic 20 ms period

3 IrTransmit signal to turn on IR diodes to IR diodes4 IrReceive signal received from IR receivers to System4 Tachometer signal from speed sensor to System

Page 13: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-15

Actors

• Actors may be human users or externally visible subsystems and devices, such as sensors and actuators

• Common mistake to assume that actors must be people

Page 14: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-16

Actors (2)

• Whether the actor is a device used by a human or the human itself depends on the scope of the system.

• If the system development includes the development of devices that interact with a human, then the human is the actor.

• If the system must interact with existing (or separately supplied) devices that are, in turn, used by human users, then the interface devices are the actors because they are the first thing outside the system scope that actually interacts with the system.

Page 15: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-17

Messages

• During Analysisidentify the semantics and characteristics of the individual messages (including those associated with signaling the occurrenceof events) that pass between the system and its set of actors

• A message is an abstraction of the exchange of information between a sender and a receiver

Page 16: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-18

Messages (2)

• Have semantic content, i.e. the meaning of the message, e.g. – ”the current temperature is 576 degrees”

sensor– ”insert the control rod”

actuator

• Have structure, also called signatureUsually a list of parameters during requirements analysis

Page 17: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-19

Messages (3)

• Pre- and postconditional invariants, which are ontological states assumed to be true prior to sending and after receipt of a message

• Important in systems where– messages occur in one of a set of

predefined sequences or– the system’s response to a message varies

based on its state

Page 18: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-20

Messages, Events

• Events can precipitate the sending of a message

• An event is an occurrence in space and time, which has significance to the system

Page 19: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-22

Assignment Nr 2 (1)

Task(s): • Revise/Modify the Use Case diagram for the MySSe Project

from the previous assignment. Take into account that the hardware is not within the scope of the project, i.e. the system boundary (and other elements, too) should be modified according to the fact that the system you develop is just the software, even if it is very closely coupled to the car HW and not the complete racing car.

• Identify and characterize External Events as described in this presentation and fill a table of similar format than found in the slide “External Event List example”

Page 20: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-23

Assignment Nr 2 (2)

• Deadline: 20.03.2002 (Wednesday) 10:00• Grading: The assignment affects the grading

of the exam by -1, 0, or +1 “assignment points”. – -1: assignment not done or clearly inferior to the

requirements.– The conversion between ““assignment points” and

exam points will be decided upon later.

Page 21: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-24

References

• Douglass, Bruce Powel. Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks, and Patterns. New York: Addison-Wesley, 1999.

Page 22: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-26

Behavior, event, signal

• This was not presented, it’s just extra information for those who would like a bit more insight

Page 23: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-27

behavior

• The term behavior refers to the observable effects of an operation or an event, including its results.

• Behavior refers to the ways in which things change.• Functional aspect: what the object does• Classification:

– Simple behavioran object performs services on request and keeps no memory of previous services

– State/State-driven/Reactive behavior

Page 24: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-28

event

• An event is a noteworthy occurrence that has a location in time and space.

• Within a state machine, the occurrence of an event can trigger a transition.

• An internal event passes between objects in the system; an external event passes between the system and an actor.

• Within the UML, there are four kinds of events: – call events – change events – signal events – time events

Page 25: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-29

Kinds of Events

Page 26: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-30

call event

• A call event is an event that represents the dispatch of an operation.

Page 27: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-31

change event

• A change event is an event that represents the satisfaction of a Boolean expression in response to a change to one or more of the values it references.

• A condition becoming true is shown with the keyword when followed by a Boolean expression

Page 28: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-32

signal event

• A signal event is an event that represents an object's reception of a signal.

Page 29: 1-1 ROPES Rapid Object-Oriented Process for Embedded Systems.

1-33

signal

• A signal is a specification of an asynchronous stimulus communicated between instances. The receiving instance handles the signal by a state machine.

• The term signal is a keyword that refers to a named object that is dispatched asynchronously by one object and rec eived by another object.