09.08.2013 Views

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

Architecture Modeling - SPES 2020

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.

ReusableElement<br />

ComData<br />

+com Data 1<br />

+referencedPorts<br />

0..*<br />

PortReference<br />

Signal<br />

+ length: int<br />

Message<br />

+ length: int<br />

Frame<br />

+ length: int<br />

<strong>Architecture</strong> <strong>Modeling</strong><br />

+signal<br />

1<br />

+owner +signalT oMsgMapping<br />

+message<br />

1<br />

+owner +msgT oFrameM apping<br />

NamedElement<br />

MsgToFrameMapping<br />

0..*<br />

+ offsetInFrame: int<br />

0..*<br />

«enumeration»<br />

TransferPropertyKind<br />

«enum eration»<br />

triggered<br />

pending<br />

triggeredOnChange<br />

SignalToMsgM apping<br />

NamedElement<br />

+ offsetInMessage: int<br />

+ transferProperty: T ransferPropertyKind<br />

Figure 3.16: Meta-model integration of the concepts for modeling data encapsulation<br />

interface (API) is provided, that hides the complexity of different bus technologies and communication<br />

protocols. Data sent by some application task is then processed by a communication<br />

stack, which is typically organized in layers like in the Open Systems Interconnection model<br />

(OSI) [51].<br />

Beside the wish to abstract from the details of a layer of communication protocols from the<br />

logical perspective of the system, in the technical perspective one needs a specification of e. g.<br />

their real-time aspects or safety aspects. This allows to reason about whether requirements on<br />

the communication of components in the logical perspective can be fulfilled when allocating<br />

them to a technical architecture. Figure 3.16 shows the concepts of the meta-model, which<br />

allow to capture the data encapsulations done by a communication stack and Figure 3.17 shows<br />

their intended usage. For the sake of brevity the SchedulerSlots and a Scheduler are<br />

not shown in that figure.<br />

ComputingResource<br />

header<br />

header<br />

app-task1:Task<br />

app-task2:Task<br />

Signal1<br />

com:Task<br />

Signal2<br />

Signal1 Signal2<br />

payload<br />

Message1 Frame1<br />

Message1<br />

payload Frame1<br />

bus-drv:Task<br />

Figure 3.17: Example for specifying the data enscapsulation<br />

The Signal concept represents data sent by some application tasks, which components<br />

from the logical perspective have been allocated to. The declared Signal references Ports<br />

in the technical architecture model to indicate at which ports it is sent or received. The concepts<br />

Message and Frame also allow to reference multiple Ports. The data encapsulation by a<br />

communication stack as sketched in the bottom half of Figure 3.17 is expressed by the concepts<br />

SignalToMsgMapping and MsgToFrameMapping. They allow to describe the composition<br />

of messages in frames and of signals in messages. The condition when a Task, which is<br />

responsible for the encapsulation of Signals in Messages, actually triggers the Message<br />

can be defined by the attributes of the concept SignalToMsgMapping. For example some<br />

Signals mapped to the same Message may cause it to be triggered, while others just update<br />

the value inside the Message.<br />

26/ 156

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

Saved successfully!

Ooh no, something went wrong!