tutorialmarte-final version1 1 0

243
www.omgmarte.org C o p y r i g h t © T h a l e s , C E A a n d I N R I A 2 0 0 7 A l l r i g h t s r e s e r v e d , c o m m e r c i a l u s e s t r i c t l y p r o h i i t e d ! MARTE Tutorial  "# %&' ()*#+* ,+-  .&/ 0,12345 )1 +565410 75*4893:5 *#+ ;:<5++5+ (=()5:(

Upload: joao-taborda

Post on 08-Aug-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 1/243

www.omgmarte.org

Copyright©

Thales,C

EAandINRIA2007Allrig

htsreserved,c

ommercialusestrictlypro

hiited!

MARTE Tutorial

 "# %&' ()*#+*,+- .&/ 0,12345 )1 +565410 75*4893:5 *#+ ;:<5++5+ (=()5:(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 2/243

>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

Acknowledgment

This presentation reuses and extends material prepared by the

ProMARTE partners for the OM RTE!! PT" meeting in !an #iego$ onMarch %&th %''(

This tutorial has been designed in the context of )ORTE!! pro*ectwithin the )ARRO++ research program   D))0-EEFFFGH*,,1448,5(5*,HDG1,IE

"ollowing persons ha,e contributed to this tutorial   J;" /KL9 M H1#)*H)- (5<*()35#GI5,*,+NH5*G2, O

  PQ*(H*, ;(03#1R*S LT<*()35# 'T,*,+S L*21Q*# 9*D* *#+ U,T+T,3H 9D1:*(G

  KV7K" MH1#)*H)- 71<5,)GW5X(3:1#5N(10D3*G3#,3*G2, O   JD*,45( "#+,TS 71<5,) +5 L3:1#5S Y35,,5 Z1Q45)

  9D*45( 979 MH1#)*H)- /*Q,5#)G,31Q[N)D*45(I,1Q0GH1:O   &*+5453#5 U*QI\,5S /*Q,5#) 731Q[S L5<*()35# W5:*)D35Q

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 3/243

]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

-ow to read this tutorial

ithin next slides$ we may shown models at different le,elsof abstraction. e will clarify each le,el through following

pictograms

  U1, W1:*3# ^35F 45654

  U1, .&/ Y,12345 ^35F /5654

  U1, .(5, &1+54 ^35F /5654

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 4/243

_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

Agenda

Part /

0ntroduction to M## for RT1E systems 2 MARTE in a nutshell

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

  9D5 )3:3#I :1+54

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

  Y4*)21,: :1+543#I

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &   &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 5/243 `

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

Models in Traditional Engineering

Probably as old as engineering

Extracted from B. Selic presentation during Summer School MDD

For DRES 2004 (Brest, September 2004)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 6/243 a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

hat is a Model in M##

One definition   " ,5+QH5+E*<(),*H) ,50,5(5#)*)31# 12 (1:5 (=()5: )D*) D3ID43ID)( )D5

0,105,)35( 12 3#)5,5() 2,1: * I365# 013#) 12 635FG

  9D5 013#) 12 635F +523#5( H1#H5,# *#+ (H105 12 )D5 :1+54G

Inspired from B. Selic presentation during Summer School MDD

For DRES 2004 (Brest, September 2004)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 7/243b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

The Model

Map is based on a legend (explicit orimplicit) Here the map of bicycle roads of Seattle

As a map, the legend is defined in agraphical language, it means also thelegend is declared with a similarformalism.

If the Map is a Model, the legend is themeta-model defining the subset ofgraphical language used to build the model

The Legend is necessary to interpret themap.

If the legend is not shown, this mean werefer to a standard legend and implicit.

The Legend

U,1: cG Z5R363# E KV7K"

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 8/243d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

A Model without its meta8model has no meaning

PercentageOf town

infested of termites

Candidates at thePresidential election

In France in 2002

U,1: cG Z5R363# E KV7K"

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 9/243e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

The Model help to understand the system

 

Functional modelSystem to model

"or "unctional ,iewpoint and its design

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 10/243

fg

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

hy Model #ri,en Engineering is 9eeded:

To deal with complexity of systems de,elopment

  "<(),*H) * 0,1<45: )1 21HQ( 1# (1:5 0*,)3HQ4*, 013#)( 12 3#)5,5() 3:0,165 Q#+5,()*#+*<343)= 12 * 0,1<45:   Y1((3<45 (5) 12 #5*,4= 3#+505#+5#) 635F( 12 * :1+54

  L50*,*)31# 12 H1#H5,#( M5GIG h"(05H) %,35#)5+ &1+543#IiO

  K)5,*)365 :1+543#I :*= <5 5[0,5((5+ *) +3225,5#) 45654 12 *<(),*H)31#

To minimi;e de,elopment risks   9D,1QID *#*4=(3( *#+ 5[05,3:5#)*)31# 05,21,:5+ 5*,4= 3# )D5 +5(3I# H=H45   ;#*<45 )1 3#65()3I*)5 *#+ H1:0*,5 *4)5,#*)365 (14Q)31#(

To impro,e communication ... ... to foster information sharing and reuse<

  " I11+ :1+54 3( <5))5, )D*# * 41#I (055HD j

To reduce de,elopment flaws   "Q)1:*)3H :1+54 ),*#(21,:*)31# 3( 45(( 5,,1,80,1#5 )D*# <Q34+3#I * (05H323H

H1:0345,  Extracted from S.Gerard (ECRTS07)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 11/243

ff

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

  r  s   i  o  n

   C !   C

www.omgmarte.org

hy= Pro,ide )ontinuum in de,elopment process

Re>uirements

!ystem #esign

!ub8system #esign

!oftware

Re>uirements

!oftware #esign

 "Q)1:*)31#

 "Q)1:*)31#

 "Q)1:*)31#

 "Q)1:*)31#

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 12/243

f>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

)haracteristics of ?seful Models

Abstract

  ;:0D*(3R5 3:01,)*#) *(05H)( FD345 ,5:163#I 3,,5456*#) 1#5(

?nderstandable

  ;[0,5((5+ 3# * 21,: )D*) 3( ,5*+34= Q#+5,()11+ <= 1<(5,65,(

Accurate

  U*3)D2Q44= ,50,5(5#)( )D5 :1+545+ (=()5:

Predicti,e   J*# <5 Q(5+ )1 *#(F5, kQ5()31#( *<1Q) )D5 :1+545+ (=()5:

0nexpensi,e

  &QHD HD5*05, )1 H1#(),QH) *#+ ()Q+= )D*# )D5 *H)Q*4 (=()5:

To be useful, engineering models must satisfy all of thesecharacteristics! 

M;[),*H)5+ 2,1: ZG L543H 0,5(5#)*)31# +Q,3#I LQ::5, LHD114 &WW U1, W7;L >gg_ MZ,5()S L50)5:<5, >gg_O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 13/243

f]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

SC_MODULE(producer) {

  sc_outmaster<int> out1;

  sc_in<boo> start; !! "ic"#start

  $oid %enerate_data () {

  &or(int i '; i <1; i) {

  out1 'i ; !!to in$o"e sa$e;

  *

  *

  SC_C+O,(producer) {

  SC_ME+-OD(%enerate_data);

  sensiti$e << start;

  **;SC_MODULE(top) { !! container  producer ./1;  consumer .01;  sc_in"_mp<int> in"1;  SC_C+O,(top) {  /1 ' ne producer(2/13);  /14out1(in"1);  01 ' ne consumer(2013);  014in1(in"1);  **;

SC_MODULE(consumer) {  sc_insa$e<int> in1;  int sum; !! state $ariabe

  $oid accumuate (){  sum ' in1;  cout << 2Sum ' 2 << sum << end;  *  SC_C+O,(consumer) {  SC_SL/5E(accumuate6 in1);  sum ' ; !! initiai7e*

*;

A @it of Modern !oftware

Can you spot the architecture?Can you spot the architecture?

M;[),*H)5+ 2,1: ZG L543H 0,5(5#)*)31# +Q,3#I LQ::5, LHD114 &WW U1, W7;L >gg_ MZ,5()S L50)5:<5, >gg_O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 14/243

f_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

and its ?M+ Model

«sc_module»«sc_module»

consumer consumer «sc_module»«sc_module»

producer producer 

«sc_link_mp»

link1

Can you spot the architecture?Can you spot the architecture?

M;[),*H)5+ 2,1: ZG L543H 0,5(5#)*)31# +Q,3#I LQ::5, LHD114 &WW U1, W7;L >gg_ MZ,5()S L50)5:<5, >gg_O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 15/243

f`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

refine

NotStarted

Started

start

producer 

Model E,olution= Refinement

Models can be refined continuously until the specification iscomplete

«sc_module»

producer start out1

NotStarted

Started

start

producer 

St1 St2

void generate_data!"

for int i#$% i&1$% i''!"

  out1 # i%

((

 )generate_data !

M;[),*H)5+ 2,1: ZG L543H 0,5(5#)*)31# +Q,3#I LQ::5, LHD114 &WW U1, W7;L >gg_ MZ,5()S L50)5:<5, >gg_O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 16/243

fa

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Model8#ri,en !tyle of #e,elopment BM##C

An approach to de,elop systems and softwares in which the focus

and primary artifacts of de,elopment are models Bas opposed to

programsC

@ased on two time8pro,en methods

SC_MODULE(producer){

  sc_inslave<int> in1;

  int sum; //

  void accumulate () {

  sum += in1;

  cout << Sum =

<< sum <<

endl;}

«sc_module»«sc_module»

producer producer start out1

B/C A@!TRA)T0O9 B%C A?TOMAT0O9

«sc_module»«sc_module»

producer producer start out1

SC_MODULE(producer) {

  sc_inslave<int> in1;

  int sum; //

  void accumulate (){

  sum += in1;

  cout << Sum =

<< sum <<

endl;}

*ealm ofmodelinglanguages *ealm of tools

M;[),*H)5+ 2,1: ZG L543H 0,5(5#)*)31# +Q,3#I LQ::5, LHD114 &WW U1, W7;L >gg_ MZ,5()S L50)5:<5, >gg_O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 17/243

fb

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Profiling ?M+ for a #omain

Ad,antages of ?M+ Profiles   75Q(5 12 4*#IQ*I5 3#2,*(),QH)Q,5 M)114(S (05H323H*)31#(O

  75kQ3,5 45(( 4*#IQ*I5 +5(3I# (l344(

  "441F 21, #5F MI,*0D3H*4O #1)*)31# 12 5[)5#+5+ ()5,51)=05(

  " 0,12345 H*# +523#5 :1+54 635F013#)(

  ;GIGS .&/ *H)363)= +3*I,*: 5[)5#+5+ )1 (05H32= :Q4)3)*(l <5D*631, 

#isad,antage   J1#(),*3#5+ <= .&/ :5)*:1+54

Extracted from S.Gerard (ECRTS07)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 18/243

fd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

?M+% Extension Mechanisms

Profiles

  W523#5 43:3)5+ 5[)5#(31#( )1 * ,525,5#H5 :5)*:1+54 F3)D )D5 0Q,01(5 12*+*0)3#I )D5 :5)*:1+54 )1 * (05H323H 04*)21,: 1, +1:*3#G

  J1#(3()( 12 ()5,51)=05( )D*) 5[)5#+ )D5 :5)*:1+54 H4*((5( M:5)*H4*((5(OG

!tereotypes

  W523#5 D1F * (05H323H :5)*H4*(( :*= <5 5[)5#+5+

  Y,163+5 *++3)31#*4 (5:*#)3H( 3#21,:*)31#S <Q) 1#4= 21,-

  L5:*#)3H( ,5(),3H)31# 1, H4*,323H*)31# 12 5[3()3#I H1#H50)

  V5F 25*)Q,5( M<Q) H1:0*)3<45 F3)D 5[3)3#I 1#5jO

  ;#(Q,5 3#),1+QH)31# 12 +1:*3# (05H323H )5,:3#141I=

  ;GIGS ;"L98"W/>S * .&/ 0,12345 21, *Q)1:1)365 ;J.( MD))0-EEFFFG*)5(()G1,IO

  &*= +523#5 (05H323H #1)*)31# E.g.$ new icons or shapes

  &*= D*65 6*4Q5( )D*) *,5 Q(Q*44= ,525,,5+ )1 *( )*II5+ 6*4Q5(Extracted from S.Gerard

(ECRTS07)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 19/243

fe

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Profile 9otation

Profile is a stereotyped package

Applying a profile   "44 5[)5#(31#( *,5 )D5# *6*34*<45 21, :1+543#I

  K2 :Q4)3045 0,12345( *,5 *00435+-  7525,5#H5+ &&( D*65 )1 <5 3+5#)3H*4m

m *#+ )D5 :1+54 D*( *4(1 )1 ,525, )D5 (*:5 &&G

 9D53, H1#(),*3#) (5)( +1 #1) D*65 )1 H1#243H)

  K# H*(5 12 #*:3#I H1#243H)S Q(5 #*:5(0*H5 #1)*)31#  DProfile9ame==D!tereotype9ame

 e.g. FMyProfile/==nameG 2 FMyProfile%==nameG

«profile» MyProfile

« profile »

GenOfCodeC

  apply»MyModel

Extracted from S.Gerard (ECRTS07)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 20/243

>g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

The Profile )oncept Bcont.C

A profile package may import external packages

  nV1,:*4n 0*Hl*I5(   5GIG 5[)5,#*4 0lI( +523#3#I (05H323H )=05( 21, * 0,12345

  nY,12345n 0*Hl*I5(

  "44 3:01,)5+ 545:5#)( :*= <5 Q(5+ 3# 0lI( *004=3#I )D5 0,12345

C_Types« profile »

GenCodeC

«import»

« profile »

MyRT_Profile

p3:01,)q   « profile »

SPT_Profile

Extracted from S.Gerard (ECRTS07)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 21/243

>f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

#esign Pattern Adopted for the MARTE Profile

!tage /  #escription of MARTE +1:*3# :1+54( MW1:*3# ^35FO   YQ,01(5- U1,:*4 +5(H,30)31# 12 )D5 H1#H50)( ,5kQ3,5+ 21, &"79;

  95HD#3kQ5(- &5)*8:1+543#I

!tage %  Mapping of MARTE domain models towards ?M+%= M.&/ 750,5(5#)*)31#O   YQ,01(5- &"79; +1:*3# :1+54( +5(3I# *( * .&/> 5[)5#(31#(   95HD#3kQ5(- .&/> 0,12345

F metamodel G

Marte domain model

F profile G

Marte profile ?M+% metamodel

p ,525,5#H5 q

p ,523#5 q

Extracted from S.Gerard (ECRTS07)

E l # i d l P fil ?

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 22/243

>>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Example= #omain model Profile ?sage

p :5)*H4*(( qJ1::1#Z5D*631,--Z*(3HZ5D*631,(--

Z5D*631,5+J4*((3235, 

3(W=#*:3H- Z1145*# rfs t ),Q53(&*3#- Z1145*#

0114L3R5- K#)5I5, 0114Y143H=- Y114&I)Y143H=u3#+0114v*3)3#I93:5- VUYXWQ,*)31#105,*)31#*4&1+5- Z5D*631, :*3#- %05,*)31#:5:1,=L3R5- VUYXW*)*L3R5

F stereotypeGRt?nit

H1#HY143H=- J*44J1#HQ,,5#H=u3#+:5:1,=L3R5- VUYXW*)*L3R5

F stereotypeGPp?nit

3#23#3)5v*3))3:5+v*3)+=#*:3H5[H50)31#1)D5, 

p 5#Q:5,*)31#q

PoolMgtPolicyHind

(5kQ5#)3*4IQ*,+5+H1#HQ,,5#)

)all)oncurrencyHind

&"79;--J1,5;45:5#)(--J*Q(*43)=--J1::1#Z5D*631,--

Z5D*631,5+J4*((3235, 

H1#HY143H=- J*44J1#HQ,,5#H=u3#+:5:1,=L3R5- VUYX+*)*L3R5

Pp?nit

Rt@eha,ior <5D*631,(1F#5, 

f   w

(5kQ5#)3*4IQ*,+5+H1#HQ,,5#)

p 5#Q:5,*)31#q)all)oncurrencyHind&"79;--'7&--75(1Q,H59=05(

--L=#HD75(1Q,H5

Rt!er,icew   f

(5,63H5(x(Q<(5)( 0L5,63H5(y

9 t ti f !t t # fi iti B? l R t ti C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 23/243

>]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

9otation for !tereotype #efinition B?ml RepresentationC

!tereotype definition

Re>uired stereotype

  ;[)5#+5+ :5)*8H4*(( :*= 1#4= <5 3#()*#)3*)5+ Q#+5, 3)( ()5,51)=05+ 21,:

!tereotype properties

Interface« stereotype »

ProvidedInterface

{re!ired"

« stereotype »ProvidedInterface

« metaclass » Interface

« stereotype »#ersion

a!t$or % Strin&

Extracted from S.Gerard (ECRTS07)

9otation for !tereotype ?sage Buser model le,elC

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 24/243

>_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

9otation for !tereotype ?sage Buser model8le,elC

Applying a stereotype

Applying se,eral stereotypes

!pecifying ,alues of a stereotype

  .(5 #*:5 12 ()5,51)=05( FD5# 01((3<45 H1#2Q(31#

« providedInterface »

MyInterface

« providedInterface' version »

MyInterface

« providedInterface»' «version »

MyInterface1, 

a!t$or ( )myname*«version»

MyInterface

«version»a!t$or ( )myname*

«stat!s»

val!e ( tested

«version' stat!s»

MyClass

Extracted from S.Gerard (ECRTS07)

?M+ P fil f RTE!

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 25/243

>`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E

   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

?M+ Profiles for RTE!

!PT was the first OMIs ?M+ profile for Real8Time!ystems=   LQ001,) 21, !HD5+Q4*<343)= "#*4=(3( F3)D 7&"8)=05 )5HD#3kQ5(   LQ001,) 21, P5,21,:*#H5 "#*4=(3( F3)D zQ5Q3#I 9D51,= *#+ Y5),3 V5)(   " ,3HD :1+54 21, h:5),3Hi T3:5 *#+ 93:5 &5HD*#3(:(

!e,eral impro,ements were re>uired=   &1+543#I Pv *#+ Lv 04*)21,:(S /1I3H*4 93:5S &1JJ(S JZL;m   "43I#:5#) )1 .&/>S z1L{U9S &W"Sm   LY9 H1#(),QH)( F5,5 H1#(3+5,5+ )11 *<(),*H) *#+ D*,+ )1 *004=   m

!PT

B%''58adoptedC

9114 LQ001,)

93:5 "#*4=(3(LQ001,)

P5#H5S * 75kQ5() U1, Y,101(*4 21, * #5F 0,12345 F*( 3((Q5+G

Extracted from S.Gérard (ECRTS07)

Th P MARTE T

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 26/243

>a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

The ProMARTE Team

w LQ<:3))5, )1 %&' .&/ Y,12345 21, &"79; 7UY

0ndustrials   "4H*)54w   /1HlD55+ &*,)3#w

  9D*45(w   U,*#H589545H1:

Tool ,endors   "79KL"V L12)F*,5 9114(w   K#)5,#*)31#*4 ZQ(3#5(( &*HD3#5(w   &5#)1, ',*0D3H( J1,01,*)31#w   L12)5*:w   954541I3H "Z MK8/1I3[wO

  9,38Y*H323H L12)F*,5   U,*#H5 9545H1:   V1 &*I3H   &*)DF1,l(

Academics   J*,45)1# .#365,(3)=   J1::3((*,3*) | 4};#5,I35 ")1:3kQ5   ;L;%

  ;VLK;9"   KV7K"   KVL" 2,1: /=1#   L12)F*,5 ;#I3#55,3#I K#()3)Q)5 MJ*,#5I35 &5441# .#365,(3)=O   .#365,(3+*+ +5 J*#)*<,3*

Public website=

 FFFG1:I:*,)5G1,I

Relationships with other OM !tandards

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 27/243

>b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Relationships with other OM !tandards

Relationships with generic OM standards

  Y,12345 )D5 .&/> (Q05,(),QH)Q,5 :5)*8:1+54

  7504*H5 .&/ Y,12345 21, LY9 MLHD5+Q43#IS Y5,21,:*#H5 *#+ 93:5O

  .(5 %J/> M%<~5H) J1#(),*3#)( /*#IQ*I5O

Relationships with RT2E specific OM standards

  ;[3()3#I ()*#+*,+(

  9D5 .&/ 0,12345 21, &1+543#I z1L *#+ U9 JD*,*H)5,3()3H( *#+ &5HD*#3(:( Addressed through MARTE 9"P package Bin a way detailed in the 9"P presentationC

  9D5 .&/ 0,12345 21, L1J ML=()5: %# JD30O More specific than MARTE purpose

  9D5 75*4893:5 J%7Z" 0,12345 Real8Time )OR@A based architecture can be annotated for analysis with Marte

  9D5 .&/ 0,12345 21, L=()5:( ;#I3#55,3#I ML=(&/O !peciali;ation of !ysM+ allocation concepts and reuse of flow8related concepts

Ongoing discussion to include J!+ in next !ysM+ ,ersion

O,erlap of team members

MARTE O,er,iew

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 28/243

>d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

MARTE O,er,iew

MARTE domain model

Marte"oundations

MarteAnalysisModelMarte#esignModel

U1Q#+*)31#( 21, 79E; (=()5:(

:1+543#I *#+ *#*4=(3(-

 J1,5;45:5#)(

 VUY( 93:5 '5#5,3H ,5(1Q,H5 :1+543#I '5#5,3H H1:01#5#) :1+543#I "441H*)31#

L05H3*43R*)31# 12 21Q#+*)31#( 21,

*##1)*)3#I :1+54 21, *#*4=(3(

0Q,01(5-

 '5#5,3H kQ*#)3)*)365 *#*4=(3(

 LHD5+Q4*<343)= *#*4=(3(

 Y5,21,:*#H5 *#*4=(3(

L05H3*43R*)31# 12 &"79; 21Q#+*)31#( 21,

:1+543#I 0Q,01(5 M(05H323H*)31#S +5(3I#S

mO-

 79; :1+54 12 H1:0Q)*)31# *#+H1::Q#3H*)31#

 L12)F*,5 ,5(1Q,H5 :1+543#I P*,+F*,5 ,5(1Q,H5 :1+543#I

Extracted from S.Gerard (ECRTS07)

Agenda

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 29/243

>e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Agenda

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %

9on8functional properties modeling

Outline of the Jalue !pecification +anguage BJ!+C

Part 3

  9D5 )3:3#I :1+54

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

  Y4*)21,: :1+543#I

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &

  &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

9on "unctional Properties B9"PsC

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 30/243

]g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7     B

  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

9on8"unctional Properties B9"PsC

9ature of 9"Ps

  zQ*#)3)*)365- :*I#3)Q+5 • Q#3) M;GIGS 5#5,I=S +*)* (3R5S +Q,*)31#O

  zQ*43)*)365 M;GIGS 05,31+3H 1, (01,*+3H 565#) *,,36*4 0*))5,#(O

9"P ,alues need to be >ualified   ;GIG (1Q,H5S ()*)3()3H*4 :5*(Q,5S 0,5H3(31#Sm

9"Ps need to be parametric and deri,able   ^*,3*<45(- 04*H5D14+5,( 21, Q#l#1F# 6*4Q5(

  ;[0,5((31#(- :*)DG *#+ )3:5 5[0,5((31#(

9"Ps need clear semantics   Y,5+523#5+ VUY( M;GIGS 5#+8)185#+ 4*)5#H=S 0,1H5((1, Q)343R*)31#O

  .(5,8(05H323H VUY( M<Q) ()344 Q#*:<3IQ1Q(4= 3#)5,0,5)5+jO

V1#82Q#H)31#*4 0,105,)35( +5(H,3<5 )D5 h23)#5((i 12 (=()5:( <5D*631, 

M;GIGS 05,21,:*#H5S :5:1,= Q(*I5S 01F5, H1#(Q:0)31#O

0ntroduction to the MARTEIs 9"Ps "ramework

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 31/243

]f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

0ntroduction to the MARTE s 9"Ps "ramework

!tructured Jalues:   ^*,3*<45(€

  J1:045[ )3:5 5[0,5((31#(€

  W*)* 9=05 L=()5:€

  ^*4Q5 kQ*43235,(€

  .&/ 4*Hl( :1+543#I H*0*<343)35( 21, VUY( jj

  VUY /3<,*,35(€

  &5*(Q,5(€

.&/ Y,12345 21, VUY(

^*4Q5 L05H323H*)31#

/*#IQ*I5 M^L/O

  "#+ .&/ 5[0,5((31# (=#)*[ 3( *4(1 #1) (Q223H35#)jj

  "##1)*)31# :5HD*#3(:€

The MARTEIs 9"P sub8profile

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 32/243

]>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

pDFY,1H5((1,qMyProcessor 

  pDFY,1H5((1,q(055+U*H)1, t f

(055+U*H)1,- K#)5I5, rgGGfs

MyProcessor 

(055+U*H)1, t f

proc/ = MyProcessor 

MyProcessor    p#20J1#(),*3#)q(055+U*H)1, t f

The MARTE s 9"P sub8profile

Three mechanisms to annotate ?M+ models=   ^*4Q5( 12 ()5,51)=05 0,105,)35(

  L41) 6*4Q5( 12 H4*((3235, 3#()*#H5(

  J1#(),*3#)(

.&/ Y,12345 21, VUY(

Annotating 9"Ps in Tagged Jalues

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 33/243

]]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

p:1+54/3<,*,=q9fpTypes

p:1+54/3<,*,=qMeasurement?nits

p:1+54/3<,*,=q@asic9fpTypes

6*4Q5- 75*45[0,- ̂ L/X;[0,5((31#Q#3)- WQ,*)31#.#3)u3#+(1Q,H5- L1Q,H5u3#+GGG

p#209=05q9"PK#uration

5[*:045

pQ#3)q (pQ#3)q :( xH1#6U*H)1,tf;8]S

GGG   <*(5.#3) t(y

p 5#Q:5,*)31#q#uration?nitHind

 5 [ * : 0 45

Annotating 9"Ps in Tagged Jalues

p3:01,) q

p0,12345q!chedAnalysisp0,12345q

!chedAnalysisp0,12345qLAM M*#*4=(3(O

p 3:01,) q

p3:01,) q

,5(09- VUYXWQ,*)31#

GG G

p()5,51)=05q!cenario

 5 [ * : 0

  4 5

?serModel

p*004= q

&"79; 0,58+523#5+

>O W523#5 VUY843l5 5[)5#(31#(

fO W5H4*,5 VUY )=05(

]O L05H32= VUY 6*4Q5(

8 W523#5 ()5,51)=05( *#+ )D53,

*)),3<Q)5( Q(3#I VUY )=05(

8 "004= ()5,51)=05( *#+ (05H32=)D53, )*I 6*4Q5( Q(3#I ^L/

8 W523#5 :5*(Q,5:5#) Q#3)( *#+

H1#65,(31# 0*,*:5)5,(

8 W523#5 VUY )=05( F3)D kQ*43235,(

*H) p(H5#*,31q #ataAc>

x ,5(09t M_bS :(S H*4HO y

*Hf5 [* : 0 4

5*H>

Annotating 9"Ps in !lots

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 34/243

]_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

p#20q +5*+43#5- VUYXWQ,*)31#

GG G

Task

 5 [ * : 0 45

0nstanceModel

+5*+43#5 t M`G`S :(S ,5kOGGG

)f-9*(l

5[*:045

Annotating 9"Ps in !lots

p:1+54/3<,*,=q9fpTypes

p:1+54/3<,*,=qMeasurement?nits

p:1+54/3<,*,=q@asic9fpTypes

6*4Q5- 75*4

5[0,- ^L/X;[0,5((31#

Q#3)- WQ,*)31#.#3)u3#+

(1Q,H5- L1Q,H5u3#+

GGG

p#209=05q9"PK#uration

5[*:045

p3:01,) q

)lassifierModel

&1+548(05H323H VUY(

>O W5H4*,5 VUY( 3# Q(5, :1+54(

fO W5H4*,5 VUY )=05(

]O L05H32= VUY 6*4Q5(

8 W523#5 H4*((3235,( *#+ )D53,

*)),3<Q)5( Q(3#I VUY )=05(

8 LQHD *)),3<Q)5( *,5 )*II5+ *( p#20q

8 K#()*#)3*)5 H4*((3235,( *#+ (05H32=)D53, (41) 6*4Q5( Q(3#I ^L/

8 W523#5 :5*(Q,5:5#) Q#3)( *#+H1#65,(31# 0*,*:5)5,(

8 W523#5 VUY )=05( F3)D kQ*43235,(

pQ#3)q (pQ#3)q :( xH1#6U*H)1,tf;8]S

GGG   <*(5.#3) t(y

p 5#Q:5,*)31#q#uration?nitHind

 5 [ * : 0 45

Annotating 9"Ps in )onstraints

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 35/243

]`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Annotating 9"Ps in )onstraints

p:1+54/3<,*,=q9fpTypes

p:1+54/3<,*,=qMeasurement?nits

p:1+54/3<,*,=q@asic9fpTypes

0nstanceModel

p3:01,) q

)lassifierModelp#20q Q)343R*)31#- V UYXY5,H5#)*I5

p#20q H 41HlU,5k- VUYXU,5kQ5#H=

GGG

Processor 

 5 [ * : 0 4 5

>O W5H4*,5 VUY(

fO W5H4*,5 VUY )=05(

]O L05H32= VUY 6*4Q5(

8W523#5 H4*((3235,( *#+ )D53,

*)),3<Q)5( Q(3#I VUY )=05(

-J,5*)5 J1#(),*3#)( )1 +523#5 *((5,)31#(1# VUY 6*4Q5( Q(3#I ^L/

-p#20J1#(),*3#)q 3( * required S offered S 1,

contract  H1#(),*3#) 12 VUY(

8 W523#5 :5*(Q,5:5#) Q#3)( *#+H1#65,(31# 0*,*:5)5,(

8 W523#5 VUY )=05( F3)D kQ*43235,(

0f-Y,1H5((1, 

p#20J1#(),*3#)q xl3#+t H1#),*H)y

x Q)343R*)31#MegS‚O € H41HlU,5kttMagS&PRO -H41HlU,5kttM>gS&PRO y

 5 [ * : 0 4 5

pQ#3)q PRpQ#3)q &PR xH1#6U*H)1,tf;•aS

GG G   <*(5.#3)tPRy

p 5#Q:5,*)31#q"re>uency?nitHind

 5 [ * : 0 4 5

6*4Q5- 75*45[0,- ^L/X;[0,5((31#Q#3)- U,5kQ5#H=.#3)u3#+(1Q,H5- L1Q,H5u3#+

GG G

p#209=05q9"PK"re>uency

5[*:045

The MARTEIs 9"P Modeling "ramework

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 36/243

]a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

The MARTE s 9"P Modeling "ramework

  9D,55 :*3# 4*#IQ*I5 5[)5#(31#( )1 .&/ (=#)*[   ',*::*, 21, 5[)5#+5+ 5[0,5((31#(

  L)5,51)=05( 21, 5[)5#+5+ +*)* )=05(   J1:045[ )3:5 5[0,5((31#(

^*4Q5 L05H323H*)31#

/*#IQ*I5 M^L/O

@asic Textual Expressions in J!+

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 37/243

]b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

as c e tua p ess o s !

io$var1 //input/output variable declaration

var1 //variable call expression.

Variable declaration &

Call 

+(5.0,var1) //”add” operation on Real datatypes5.0+var1 //infix operator notation

 Arithmetic OperationCall 

((var1!.0)"(10#!)1) //if true return 10 exp !,else 1Conditional Expression

1.%&' //scientific notationReal Number 

1%/01/0! 1%0000 //calendar date ti*eDateTime

1..%51 //upper opened interval beteen inte-ers

$1..$% //interval beteen variables

Interal 

(value%.0, unit *s) //duration tuple value

periodic(period%.0, itter.) //arrival pattern

Tuple and choice

21, %, 33, 5, %4 //seuence, ba-, ordered set..

221,%,4, 2,%44 //collection of collections

Collection

;[*:045(^*4Q5 L05HG

  LH105 12 )D5 0,101(5+ 5[)5#(31#(   ;[)5#+5+ Y,3:3)365 ^*4Q5(

  ;[)5#+5+ J1:01(3)5 ^*4Q5(

  ;[)5#+5+ ;[0,5((31#(

J!+ Extended #ata Types

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 38/243

]d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

MARTEK#ataTypes

yp

J!+ reuses ?M+ #ataType constructs$ but adds

  Z1Q#+5+LQ<)=05

  K#)5,6*49=05

  J1445H)31#9=05

  9Q0459=05

  JD13H59=05

F bounded!ubtypeGx <*(59=05 t K#)5I5, S

:3#^*4Q5 t 8_dggggS:*[̂ *4Q5 t •_dgggg y

+ong

65H)1,;45:5#)- K #)5I5, rgGG ws

F collectionTypeGx H1445H)31#")),3< t 65H)1,;45:5#) y

0ntegerJector 

:*),3[;45:5#)- K#)5I5, 5̂H)1, rgGG ws

F collectionTypeGx H1445H)31#")),3< t :*),3[;45:5#) y

0ntegerMatrix

<1Q#+- K#)5I5, r>s

F dataTypeG

F inter,alTypeGx 3#)5,6*4")),3< t <1Q#+ y

0nteger0nter,al

Examples==#ataTypes?se

6*4Q5- 75*4

5[0,- ^L/X;[0,5((31#Q#3)- Y1F5,.#3)u3#+(1Q,H5- L1Q,H5u3#+

F tupleTypeGPower 

05,31+3H- Y5,31+3HY*))5,#(01,*+3H - L01,*+3HY*))5,#

F choiceTypeGArri,alPattern

05,31+- 75*4 ~3))5,- 75*4

F tupleTypeG

PeriodicPattern

:3#K#)5,*,,36*4- 75*4:*[K#)5,*,,36*4- 75*4

F tupleTypeG

!poradicPattern

45#I)D- /1#I0,31,3)=7*#I5- K#)5I5,K#)5,6*401(3)31#- K#)5I5, 5̂H)1, 

(D*05- K#)5I5,&*),3[H1#(Q:0)31#- Y1F5, *,,36*4- ",,36*4Y*))5,#

My)lass

45#I)D t >f>]]]0,31,3)=7*#I5 t rgG G>s01(3)31#t x>S]y

(D*05 t xx>S]ySxfS`yyH1#(Q:0)31# t M8S 5[0t[w6fS Q#3)t :vS (1Q,H5t H*4HO*,,36*4t 05,31+3H M05,31+t fgS ~3))5,t gGfO

cl= My)lass

      

   L    5  H   3      3  H

  *   )   3  1  #  5  [  *  :  

   4  5 

W5H4*,*)31#

 5[*:045m

Examples of Time Expressions with J!+

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 39/243

]e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

p p

!d #ataAc>uisition

-J1#),1445, -L5#(1,  

*HkQ3,5MO x +fƒtMfS :(O y

(5#+W*)* M+*)*O x rMgS :(OGGMfgS :(Os y

*HlMO

N)>

x r+fGG]gw+fs y

{+f

H1#(),*3#)ft x M)gr3•fs 8 )gr3sO MfggS :(O yH1#(),*3#)>t x M)] FD5# +*)*ƒ G̀gO ƒ )>•M]gS :(O y

()*,)MO x ~3))5,M)gOƒM`S Q(O y

N)g

x s)fGG)f•MdS :(Os y

N)]

N)f

K#()*#) K#)5,6*4

J1#(),*3#)

;[)5#+5+

+Q,*)31#

3#)5,6*4( F3)D

<1Q#+ p r s q(05H323H*)31#

c3))5, H1#(),*3#)

WQ,*)31# 5[0,5((31#

<5)F55# )F1 (QH5((365

1HHQ,,5#H5(

J1#(),*3#) 3# *#

1<(5,6*)31# F3)D H1#+3)31#

5[0,5((31#L05H323H*)31# 5[*:045 3# L5kQ5#H5 +3*I,*:(m

WQ,*)31#

%<(5,6*)31#

)onclusions on MARTE==9"Ps

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 40/243

_g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!ynthesis of best modeling practices   %J/- 2Q44 H1#(),*3#) 4*#IQ*I5S <Q) D*,+ )1 Q(5 *#+ #1) ,5*48)3:5 1,35#)5+

  LY9 Y,12345- <Q34)83# 9^/ 4*#IQ*I5 3( (3:045,S <Q) #1) 245[3<45

  z1L{U9 Y,12345- *##1)*)31# :5HD*#3(: 3( 245[3<45S <Q) H1:045[

 VUY { ^L/ ,5Q(5 (545H)5+ :1+543#I 25*)Q,5(S FD345 ()344 0,163+3#I (3:043H3)= *#+245[3<343)=

"oundations   75Q(5 %J/ H1#(),QH)(- I,*::*, 21, 6*4Q5( *#+ 5[0,5((31#(

  '5#5,3H +*)* )=05 (=()5:- M<*(5+ 1# KL%}( '5#5,*48YQ,01(5 W*)*)=05(O

  ^L/ 5[)5#+( .&/ L3:045 93:5 :1+54 M5GIG 1HHQ,,5#H5 3#+5[S ~3))5,(O

  U1,:*44= +523#5+ <= *<(),*H) *#+ H1#H,5)5 (=#)*[5( MI,*::*,O

Agenda

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 41/243

_f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

g

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %   V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

The timing model

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

  Y4*)21,: :1+543#I

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &

  &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

Time in MARTE O,er,iewTime in MARTE O,er,iew

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 42/243

_>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!PT$ ?M+ % and Time!PT$ ?M+ % and Time

  .&/--J1::1#Z5D*631,(--L3:04593:5.&/--J1::1#Z5D*631,(--L3:04593:5

the MARTE Time domain ,iewthe MARTE Time domain ,iew   *GlG*G )D5 &"79; 93:5 :5)*8:1+54*GlG*G )D5 &"79; 93:5 :5)*8:1+54

  J1#H50)( *#+ ,54*)31#(D30(J1#H50)( *#+ ,54*)31#(D30(

the MARTE Time sub8profilethe MARTE Time sub8profile   *GlG*G .&/ 635F*GlG*G .&/ 635F

?sage of the Time sub8profile?sage of the Time sub8profile

?M+ profile for !chedulability$ Performance$ and Time B!PTC?M+ profile for !chedulability$ Performance$ and Time B!PTC

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 43/243

_]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T

   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

p y B C

OM ?M+ profile formal1'58'/8'% B,/./COM ?M+ profile formal1'58'/8'% B,/./C

@ased on ?M+ /.4@ased on ?M+ /.4

#ealing with#ealing with timetime andand resourcesresources

Luantitati,eLuantitati,e time informationtime information

)oncepts)oncepts

  K#()*#)S +Q,*)31#K#()*#)S +Q,*)31#

  ;65#);65#) <1Q#+ )1 )3:5S ()3:Q43<1Q#+ )1 )3:5S ()3:Q43

TimingTiming mechanismsmechanisms 22 ser,icesser,ices

To be aligned to UML 2

Metric time

?M+==)ommon@eha,iors==!impleTime?M+==)ommon@eha,iors==!impleTime

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 44/243

__

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

pp

?M+% adds?M+% adds new metaclassesnew metaclasses to representto represent   93:593:5

  WQ,*)31#WQ,*)31#

  %<(5,6*)31#%<(5,6*)31# M12 )3:5 0*((3#IOM12 )3:5 0*((3#IO

  L1:5 21,:( 12L1:5 21,:( 12 )3:5 H1#(),*3#)()3:5 H1#(),*3#)(

!imple!imple Be,en simplisticC model of timeBe,en simplisticC model of time

Ad,ice= Use a more sophisticated model of time providedby an appropriate profile$ if needed. ?M+ superstructure$ chapter/3N

e.g., MARTE

!impleTime==TimeE,ent!impleTime==TimeE,ent

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 45/243

_`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

pp

Co mmon Beh aviors::

Co mmun icatio ns::

Event 

Classes::Kernel::

ValueSpecification3(754*)365- Z1145*#

TimeE,entFD5#gGGf

f

Time specification

 Absolute/relativespecification

TimeE,ent usage B/CTimeE,ent usage B/C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 46/243

_a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

g B C

On Off  

*2)5, fg

*2)5, fg

stm <43#l5, 

UML state machine behavior

!pecification of a time"trigger

#nformal semantics

TimeE,ent usage B%CTimeE,ent usage B%C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 47/243

_b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Metaclasses involved in the modeling of a transition triggered b$ a TimeEvent

Classes::Kernel::NamedElement 

@eha,ior!tateMachines==Transition

)ommon@eha,io rs==)ommunications==

Trigger 

Classes::Kernel::PackaeableElement 

CommonBehaviors::

Communication s::

Event 

),3II5, 

gGGf

gGGw

3(754*)365- Z1145*#

)ommon@eha,iors==!impleTime==

TimeE,ent

Classes::Kernel::

ValueSpecification

Classes::Kernel::

!ypedElement 

f

565#)

FD5#

gGGf

f

!imple annotation →comple% implied structure

Meaning of after /'Q

!impleTime==Obser,ation!impleTime==Obser,ation

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 48/243

_d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

"bservation

23,();65#)- Z1145*#

TimeObser,ation

23,();65#)- Z1145*#rgGG>s

#urationObser,ation

Classes::

Kernel::NamedElement 

f 565#)

565#)fGG>

Obser,ation usage B/CObser,ation usage B/C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 49/243

_e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

sd .(5,"HH50)5+

-.(5, -"JL=()5:

J1+5

%u

J*,+%Q)xgGGf]y

x +GG]w+ y

{+

N)

x )GG)•+ y

.#41Hl

ƒ&%L )I)J1+5

ƒ&%L (,HJ*,+%Q)

ƒ&%L (,H%u

ƒ&%L)I)J*,+%Q)

&%L ()*#+( 21, &5((*I5%HHQ,,5#H5L05H323H*)31#

WQ,*)31#%<(5,6*)31#

93:5%<(5,6*)31#

WQ,*)31#J1#(),*3#)

93:5J1#(),*3#)

E%ample of se&uence diagram

9ote that red and blue annotations are not part of the ?M+ notation.

Obser,ation usage B%CObser,ation usage B%C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 50/243

`g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

J*,+%Q)-&5((*I5   %u-&5((*I5   J1+5-&5((*I5

)I)J*,+%Q)-&%L

(,H%u-&%L

+-WQ,*)31#%<(5,6*)31#

)-93:5%<(5,6*)31#

9KX:3#-93:5;[0,5((31#   n)n-^*4Q5L05H323H*)31#

(5#+;65#)

565#)

1<(5,6*)31#

9KX:*[-93:5;[0,5((31#

1<(5,6*)31#

1<(5,6*)31#

5[0, 

n)•+n-^*4Q5L05H323H*)31#

5[0, 

9J-93:5J1#(),*3#)

9K-93:5K#)5,6*4  :3#

,5H5365;65#)

(05H323H*)31#

H1#(),*3#5+;45:5#)

:*[

565#)

#nstance model of the time constraint' receive (ard)ut in *t .. t+d

!imple annotation →comple% implied structure

O,er,iewO,er,iew

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 51/243

`f

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!PT$ ?M+ % and Time!PT$ ?M+ % and Time

  .&/--J1::1#Z5D*631,(--L3:04593:5.&/--J1::1#Z5D*631,(--L3:04593:5

the MARTE Time domain ,iewthe MARTE Time domain ,iew   *GlG*G )D5 &"79; 93:5 :5)*8:1+54*GlG*G )D5 &"79; 93:5 :5)*8:1+54

  J1#H50)( *#+ ,54*)31#(D30(J1#H50)( *#+ ,54*)31#(D30( 

the MARTE Time sub8profilethe MARTE Time sub8profile   *GlG*G .&/ 635F*GlG*G .&/ 635F

?sage of the Time sub8profile?sage of the Time sub8profile

)oncepts in MARTE==Time)oncepts in MARTE==Time B/1%CB/1%C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 52/243

`>

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Time structureTime structure 

(5) 12 )3:5 <*(5( • )3:5 (),QH)Q,5 ,54*)31#((5) 12 )3:5 <*(5( • )3:5 (),QH)Q,5 ,54*)31#(

→  Y*,)3*44= 1,+5,5+ (5) 12 3#()*#)(Y*,)3*44= 1,+5,5+ (5) 12 3#()*#)(

Access to timeAccess to time  )lock)lock

PrinciplePrinciple== associate )locks with model elementsassociate )locks with model elements

  Z5D*631,*4 545:5#)(Z5D*631,*4 545:5#)( →→ 93:5+;65#)S 93:5+Y,1H5((3#I93:5+;65#)S 93:5+Y,1H5((3#I

  J1#(),*3#)(J1#(),*3#)( →→ 93:5+J1#(),*3#)93:5+J1#(),*3#)

  W*)* )=05(W*)* )=05(

 *#+*#+

6*4Q5(6*4Q5(

 →→

 93:5+^*4Q593:5+^*4Q5

)oncepts in MARTE==Time)oncepts in MARTE==Time B%1%CB%1%C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 53/243

`]

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

)oncepts

93:5 <*(5(&Q4)3045 93:5 Z*(5(K#()*#)(93:5 (),QH)Q,5 ,54*)31#(

)oncepts

J41Hl(/1I3H*4 H41Hl(JD,1#1:5),3H H41Hl(JQ,,5#) )3:5

)oncepts

93:5+ 545:5#)(93:5+ 565#)(93:5+ *H)31#(93:5+ H1#(),*3#)(

TimeJalue!pecification

TimeAccessTime!tructure Time?sage

-ot a UML diagram

Main concepts introduced in Time modeling

Time !tructureTime !tructure

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 54/243

`_

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

MultipleTime@ase

Time@ase

+*)5- 75*4

0nstant

x 1,+5,5+ y3#()*#)(

<*(5f

fGGw

:5:<5,9ZgGGw

!imeStructure#elation)(754*)31#(

gGGw

HQ,,5#)K#()*#)f

!imeBase#elation

!ime$nstant#elation

>GGwE,54*)5+K#()*#)(x Q#31#S 1,+5,5+ y

gGGw

gGGf   0*,5#)&9Z

(Q<&9Z

gGGw

f

1F#5+9Zx (Q<(5)( :5:<5,9Z y

>GGw

x Q#31#S 1,+5,5+ yE,54*)5+9Z

Timease oset of instants

MultipleTimease set of Timeases +

0ierarch$ +(onstraints

Relationships over

instants of differentTs

Relationships overTs

Access to Time= )lockAccess to Time= )lock

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 55/243

``

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Time@ase

 #*)Q,5- 93:5V*)Q,5u3#+ ,5(14Q)31#- 75*4tfGg HQ,,5#)93:5- 75*4 :*[3:*4^*4Q5- 75*4rgGGfs

Clock f)3:5Z*(5

Event 

?nit

gGGf

gGGf

H41Hl93Hl

*HH50)5+.#3)(

fGGw

+52*Q4).#3)x(Q<(5)(

*HH50)5+.#3)(y

f

 Access to the timestructure

Units associated 1itha cloc 

Event occurring ateach cloc ticing

)hronometric1+ogical )locks)hronometric1+ogical )locks

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 56/243

`a

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Clock 

+ogical)lock

Event 

+523#3#I;65#)gGGf()*#+*,+- 93:5L)*#+*,+u3#+ rgGGfs ()*<343)=- 75*4 rgGGfs 122(5)- WQ,*)31#^*4Q5 rgGGfs (l5F- 75*4 rgGGfs +,32)- 75*4 rgGGfs

)hronometric)lock

Physical!ime

gGGf

,525,5#H5J41Hl

#mplicit reference toph$sical time

3ossible reference toa repetitive event

-43s measured against areference cloc 

Two kinds of clocks

Time JaluesTime Jalues

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 57/243

`b

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Clock 

0nstant 0nstantJaluegGGw

+5#1)5+K#()*#)

Time0nter,al  gGGw

+5#1)5+93:5K#)5,6*4

#*)Q,5- 93:5V*)Q,5u3#+

!imeValue

3(&3#%05#- Z1145*# rfs3(&*[%05#- Z1145*# rfs

Time0nter,alJalue

:3# f :*[ f

?nit  Q#3)

gGGf

f

1#J41Hl

41F5, f Q005, f

#urationJalue

3#)5,6*4^*4Q5

f

#nstant/5uration t1odistinct concepts

 A Time6alue mustreference a cloc 

 A Time6alue has a unit

7default cloc unit8

Timed Entities= TimedElementTimed Entities= TimedElement

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 58/243

`d

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Clock !imedElement fGGw

1#

%odelElement 

The unif$ing concept' a TimedElement  a ModelElement + a (loc 

t

Timed Entities= TimedE,entTimed Entities= TimedE,ent

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 59/243

`e

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

TimedE,entOccurrence

0nstantJalue

*)

gGGf

fGGw!imultaneousOccurrence!et

!imedElement 

1HHL5)gGGw

)oreElements==)ausality==

RunT ime)ontext==E,entOccurrence

 3(754*)365- Z1145*#,505)3)31#- K#)5I5, rgGGfs

TimedE,ent

!imedElement 

565,=gGGfFD5#f

Event 

!imeValueSpecification &urationValueSpecification

3rovision forsimultaneit$

4acilit$ to specif$multiple occurrences

occurrences e,ents

www omgmarte org

Timed Entities= TimedProcessingTimed Entities= TimedProcessing

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 60/243

ag

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!imedProcessin 

gGGf()*,) gGGf23#3(DgGGf   +Q,*)31#

!imedElement 

!imedBehavior !imed'ction!imed%essae

#elay

Event &urationValueSpecification

CoreElements::Causality::

Common Beha vior::Behavior 

CoreElements::Causality::

Common Beha vior:: 'ctio n

CoreElements::Causality::

Communication::#e(uest 

www omgmarte org

Timed Entities=TimedObser,ationTimed Entities=TimedObser,ation

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 61/243

af

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!imed"bservation

1<(u3#+-;65#)u3#+rgGGfs

Timed0nstantObser,ation

1<(u3#+-;65#)u3#+rgGG>s

Timed#urationObser,ation

51HHf

gGG>

51HH

)oreElements==)ausality==

RunTime)ontext==E,entOccurrence

!imedElement 

)oreElements==)ausality==

)ommunication==Re>uest

)oreElements==)ausality==

RunTime)ontext==)omp@eha,iorExecution

1<(5,6*)31#J1#)5[)

gGGf

gGGf

5[H

CoreElements::Causality::

#un!imeConte)t ::BehaviorE)ecution

()3:gGGf()*,)23#3(D(5#+,5H5365H1#(Q:5

DDenumerationE,entHind

www omgmarte org

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 62/243

a>

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

http=11en.wikipedia.org1wiki10mage=TheKPersistenceKofKMemory.*pg!ee=

 ",)3()3H

www.omgmarte.org

O,er,iewO,er,iew

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 63/243

a]

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!PT$ ?M+ % and Time!PT$ ?M+ % and Time   .&/--J1::1#Z5D*631,(--L3:04593:5.&/--J1::1#Z5D*631,(--L3:04593:5

the MARTE Time domain ,iewthe MARTE Time domain ,iew   *GlG*G )D5 &"79; 93:5 :5)*8:1+54*GlG*G )D5 &"79; 93:5 :5)*8:1+54

  J1#H50)( *#+ ,54*)31#(D30(J1#H50)( *#+ ,54*)31#(D30(

the MARTE Time sub8profilethe MARTE Time sub8profile   *GlG*G .&/ 635F*GlG*G .&/ 635F

?sage of the Time sub8profile?sage of the Time sub8profile

www.omgmarte.org

Pro,iding extensions to ?M+Pro,iding extensions to ?M+

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 64/243

a_

   R  e

   ?  e  r  e  n  c  e

   @   A   R

   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

g g

Through a ?M+ profileThrough a ?M+ profile

  V5FV5F L)5,51)=05(L)5,51)=05(

"acilities"acilities

  &1+54&1+54 43<,*,35(43<,*,35(   W5+3H*)5+W5+3H*)5+ 4*#IQ*I5(4*#IQ*I5( M5(05H3*44= 21, 5[0,5((31#(OM5(05H3*44= 21, 5[0,5((31#(O

www.omgmarte.org

#ependencies#ependencies

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 65/243

a`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F profileG

9"Ps

F model+ibrary G

TimeTypes+ibrary

F profileG

Time

ƒƒ3:01,) ƒƒ3:01,)

F model+ibrary G

Time+ibraryƒƒ*004=

ƒƒ3:01,)

F profileG

J!+==#ataTypes

ƒƒ3:01,)

T1o other sub"profilesof MARTE

User9s model librar$

www.omgmarte.org

)entral stereotypes= )lockType 2 )lock)entral stereotypes= )lockType 2 )lock

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 66/243

aa

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

nature

is+ogical

+3(H,5)5 +5#(5

+ogicalclock

  V1) Q(5+),Q5

)hronometric clock2*4(5

+3(H,5)5 +5#(5

S optional•   set of properties

•   set of operations

L)5,51)=05 0,105,)35( -L05H3*4 (5:*#)3H(

•   Accepted units•   #efault unit

)hronometric clock → n0D=(3H*4 n )3:5„ Q#3)( ∈x(S:(SQ(Smy

+ogical clock → *#= ,505)3)365 565#)„ Q#3)( ∈ x)3Hly . YD=(3H*4.#3)(

www.omgmarte.org

)lock and TimedElement)lock and TimedElement

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 67/243

ab

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F stereotype G!imedElement 

F metaclass G?M+==)lasses==Hernel==)lass

#*)Q,5- 93:5V*)Q,5u3#+ rfsQ#3)9=05- ;#Q:5,*)31# rgGGfs3(/1I3H*4- Z1145*# rfs t 2*4(5,5(14")),- Y,105,)= rgGGfs:*[ *̂4")),- Y,105,)= rgGGfs122(5)")),- Y,105,)= rgGGfsI5)93:5- %05,*)31# rgGGfs(5)93:5- %05,*)31# rgGGfs3#+5[91^*4Q5- %05,*)31# rgGGfs

F stereotype G)lockType

F metaclass G?M+==)lasses==Hernel==0nstance!pecification

F stereotype G)lock

F stereotype G9"Ps==?nit

F stereotype GTimed#omain

F metaclass G?M+==)lasses==Hernel==

Package

1# fGGwQ#3)

gGGf

)=05

f

-otice that this abstractstereot$pe has no base metaclass

www.omgmarte.org

TimedJalue!pecificationTimedJalue!pecification

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 68/243

ad

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F metaclass GU%*::Classes::Kernel::

ValueSpecification

3#)5,0,5)*)31#- 93:5K#)5,0,5)*)31#u3#+ rgGGfs

F stereotypeG

TimedJalue!pecification

F stereotypeG!imedElement 

: either #nstant: or 5uration

www.omgmarte.org

TimedE,entTimedE,ent

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 69/243

ae

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

,505)3)31#- K#)5I5, rgGGfs

F stereotypeG

TimedE,ent

F metaclass G

?M+==)ommon@eha,iors==!impleTime==

TimeE,ent

DDmetaclass

U%*::Classes::Kernel::ValueSpecification   gGGf   gGGf

565,=

F stereotypeG

!imedElement 

E%tending theTimeEvent metaclass of

!impleTime

www.omgmarte.org

TimedProcessingTimedProcessing

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 70/243

bg

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F stereotype GTimedProcessing

()*,)gGGf

23#3(D

gGGf

+Q,*)31#

gGGf gGGf

F metaclass GU%*::

Common Beha viors::Commun icatio n::

Event 

F metaclass GU%*::'ctions::

 'ctio n

F metaclass GU%*::CommonBehaviors::

Behavior 

F metaclass G?M+==0n teract ions==@asic0n teract ions==

Message

F stereotype G!imedElement 

F metaclass GU%*::Classes::Kernel::

ValueSpecification

www.omgmarte.org

TimedObser,ationTimedObser,ation

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 71/243

bf

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F stereotypeG!imed"bservation

F stereotypeG!imedElement 

F metaclass G?M+==)ommon@ eha,io rs==

!impleTime==TimeObser,ation

F metaclass G?M+==)ommon@ eha,io rs==

!impleTime==#urationObser,ation

1<(u3#+-;65#)u3#+ rgGGfs

F stereotypeGTimed0nstantObser,ation

1<(u3#+-;65#)u3#+ rgGG>s

DDstereotypeTimed#urationObser,ation

E%tending the !impleTime

)bservation metaclasses

www.omgmarte.org

Timed)onstraint 2 )lock)onstraintTimed)onstraint 2 )lock)onstraint

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 72/243

b>

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F stereotype G9"Ps==

9fp)onstraint3#)5,0,5)*)31#- 93:5K#)5,0,5)*)31#u3#+

F stereotype GTimed)onstraint

F stereotype G)lock)onstraint

F stereotype G!imedElement 

www.omgmarte.org

Time8related RM stereotypesTime8related RM stereotypes

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 73/243

b]

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

p ()5,51)=05 qResource

p ()5,51)=05 qTime==)lockType

p ()5,51)=05qTimingResource

+Q,*)31#-VUYX+Q,*)31#3(Y5,31+3H- Z1145*#

p ()5,51)=05 qTimerResource

p ()5,51)=05 q)lockResource

Resources for timemanagement

!terot$pes defined in the ;eneric Resource Modeling sub"profile

www.omgmarte.org

Time8related libraries= TimeTypes+ibraryTime8related libraries= TimeTypes+ibrary

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 74/243

b_

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

9"K.9J/1H*4GGG

'YL

p 5#Q:5,*)31# qTime!tandardHind

()*,)23#3(D(5#+,5H5365H1#(Q:5

p 5#Q:5,*)31#qE,entHind

 +3(H,5)5 +5#(5

p 5#Q:5,*)31# qTime9atureHind

p :1+54/3<,*,= q

TimeTypes+ibrary

+Q,*)31#3#()*#)

p 5#Q:5,*)31#qTime0nterpretationHind

2

www.omgmarte.org

Time8related libraries= Time+ibraryTime8related libraries= Time+ibrary

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 75/243

b`

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

p :1+54/3<,*,=qTime+ibrary

HQ,,5#)93:5M O- 75*4

ƒƒH41Hl9=05x #*)Q,5 t +5#(5S Q#3)9=05 t 93:5.#3)u3#+S

I5)93:5 t HQ,,5#)93:5 y0deal)lock

p H41Hl qx Q#3) t ( y

3+5*4J4l-K+5*4J41HlpQ#3)q (

pQ#3)q :( x<*(5.#3)t(S H1#6U*H)1,tgGggfy

pQ#3)q Q( x<*(5.#3)t:(S H1#6U*H)1,tgGggfy

pQ#3)q #( x<*(5. #3)tQ(S H1#6U*H)1,tgGggfy

pQ#3)q :3# x<*(5.#3)t(S H1#6U*H)1,tagy

pQ#3)q D,( x<*(5.#3)t:3#S H1#6U*H)1,tagy

pQ#3)q +=( x<*(5.#3)tD,(S H1#6U *H)1,t>_yGGG

p 5#Q:5,*)31#qTime?nitHind

ƒƒQ#3) )3Hl

p 5#Q:5,*)31#q+ogicalTime?nitHind

6*4Q5- 75*45[0,- J41Hl5+ *̂4Q5L05H323H*)31#Q#3)- 9.u1#J41Hl- L),3#I

p )Q0459=05 qTimedJalueType

9.u

p 0,3:3)365 q)lockedJalue!pecification

Templated 5ataT$pe

T1o usual sets of Time

Units

Model of ideal <ph$sical time= 

www.omgmarte.org

Time8related 9"P typesTime8related 9"P types

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 76/243

ba

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

F model+ibraryG

MARTEK+ibrary==@asic9"PKTypes

Q#3)- 93:5.#3)u3#+

0,5H3(31#- 75*4

F dataTypeG

F nfpTypeG

x Q#3)")),3<t Q#3) y

9"PK#uration

6*4Q5- 75*4

F dataTypeG

F nfpTypeG

x 6*4Q5")),3<t 6*4Q5 y

9"PKReal

6*4Q5- W*)593:5

F dataTypeG

F nfpTypeG

x 6*4Q5")),3<t 6*4Q5 y

9"PK#ateTime

5[0,- ^L/X;[0,5((31#

(1Q,H5- L1Q,H5u3#+()*)z- L)*)3()3H*4zQ*43235,u3#+

+3,- W3,5H)31#u3#+

F dataTypeG

F nfpTypeG

x 5[0,")),3<t 6*4Q5 y

9"PK)ommonType

Q#3)- U,5kQ5#H=.#3)u3#+

0,5H3(31#- 75*4

F dataTypeG

F nfpTypeG

x Q#3)")),3<t Q#3) y

9"PK"re>uency

Time"related t$pes.)ften used.

www.omgmarte.org

Time specific languages=)locked Jalue !pecificationTime specific languages=)locked Jalue !pecification

;[0,5((3#I )3:5 6*4Q5( F3)D ;†Y/KJK9 H41Hl(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 77/243

bb

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

ValueSpecificationClockedValueSpecification

$n st an tValu eSp ec if ic at io n & urat io nV alu eSp ec if ic at io n

(=:<14-L),3#I rgGGfs

0nstantExpression

x 1,+5,5+ y gGGw

gGGf

3%05,*#+

$nstantValueSpecification

3(/1F5,%05#- Z1145*#3(.005,%05#- Z1145*#

0nstant0nter,al!pecification

fgGGf

:3#

f

gGGf :*[

&urationValueSpecification

3(/1F5,%05#- Z1145*#3(.005,%05#- Z1145*#

#uration0nter,al!pecification

f

gGGf:3#

f gGGf

:*[

!pan

f

gGGf

<5I3# 5#+gGGf

f

3(Z*HlF*,+- Z1145*# rgGGfs

Translation

f

gGGf

()*,)

f

gGGf

122(5)

(=:<14-L),3#I rgGGfs

#urationExpression

+%05,*#+

gGGf

gGGw x 1,+5,5+ y

2*H)1,- 75*4

!caling

f

gGGf

+Q,*)31#

)J!

K#()*#)

…WQ,*)31#

www.omgmarte.org

Time specific languages=J!+Time specific languages=J!+ Time ExpressionsTime Expressions

;[0,5((3#I )3:5 6*4Q5( F3)D ;†Y/KJK9 H41Hl(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 78/243

bd

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

     B  e  r  s

   i  o  n

   C !   C

J!+==TimeExpressions

ValueSpecification

#urationExpression"bservation

!imeE)pressionw

x1,+5,5+y1<(;[0,  )ompo siteJalu es==

0nter,al!pecification

#uration0nter,al

x,5+523#5( :3#y:3#

x,5+523#5( :*[y:*[

gGGf5[0, 

0nstantExpression 0nstant0nter,al

x,5+523#5( :3#y:3#

x,5+523#5( :*[y:*[

itterExpression

gGGf1HHQ,K#+5[;[0, 

gGG>H1#+3)31#;[0, 

Obs)allExpression

f1<(5,6*)31#

;[)5#+5+ H*0*<343)35(-‡%HHQ,,5#H5 3#+5[‡93:5 3#)5,6*4(‡ ~3))5, 

www.omgmarte.org

Time Jalues= )oncrete syntaxTime Jalues= )oncrete syntax

;[*:045( 12 J41Hl5+ 6*4Q5 5[0,5((31#(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 79/243

be

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!imple time ,alues!imple time ,alues

M6*4Q5t]G`S Q#3)t:(S 1#J41HltˆM6*4Q5t]G`S Q#3)t:(S 1#J41Hltˆ3+5*4J4l3+5*4J4l}O„}O„

]G` :( 1#]G` :( 1# 3+5*4J4l3+5*4J4l„„

-omogemeous expressions-omogemeous expressions

M6*4Q5tfG`S Q#3)t:(S 1#J41HltˆM6*4Q5tfG`S Q#3)t:(S 1#J41Hltˆ3+5*4J4l3+5*4J4l}O •}O •

M6*4Q5tf`gS Q#3)tQ(S 1#J41HltˆM6*4Q5tf`gS Q#3)tQ(S 1#J41Hltˆ3+5*4J4l3+5*4J4l}O„}O„

  →→  M6*4Q5tfa`gS Q#3)tQ(S 1#J41HltˆM6*4Q5tfa`gS Q#3)tQ(S 1#J41Hltˆ3+5*4J4l3+5*4J4l}O}O

-eterogeneous expressions-eterogeneous expressions

:3# Mf` )3Hl 1#:3# Mf` )3Hl 1# 0,J4l0,J4lS ` :( 1#S ` :( 1# 3+5*4J4l3+5*4J4lO„O„

Additional capabilities with J!+Additional capabilities with J!+   %HHQ,,5#H5 #Q:<5,S ~3))5,Sm%HHQ,,5#H5 #Q:<5,S ~3))5,Sm

  <Q) 3:043H3)4= 1#<Q) 3:043H3)4= 1# 3+5*4J4l3+5*4J4l

tuple, a la  6!L

short form

(an be evaluated,because conv4actor

bet1een units

(loc relation bet1eenpr(l and ideal(l must

be provided

www.omgmarte.org

Time specific languages=J!+ Time )onstraintsTime specific languages=J!+ Time )onstraints

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 80/243

dg

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

sd W*)*"HkQ3(3)31#

-J1#),1445, -L5#(1,  

*HkQ3,5MO x +f ƒt MfS:(O y

*HlMO

(5#+W*)*M+*)*O x rMgS:(OGGMfgS:(Os y

x r+fGG]w+fs y

{+f

N)]

x s)fGG)f•MdS:(Os y

()*,)MO x ~3))5,M)gO ƒ M`S:(O y  N)g

N)>

H1#(),f t x M)gr3•fs8)gr3sO MfggS:(O yH1#(),> t x )] ƒ )> • M]gS:(O y

t>' observationof the message'

startt> is periodic,period ?>>ms

1ith a @itter lessthan ms

t>BiC denotes thei"th occurrence

of 

www.omgmarte.org

Time specific languages=)lock )onstraint !pecificationTime specific languages=)lock )onstraint !pecification

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 81/243

df

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

)lock

)lockExpression

+52Z1+=

gGGf

gGGf

Event gGGf+523#3#I;65#)

)lockRelation

H41Hl( gGGw x 1,+5,5+ y   3#+5[- K#)5I5, 

0nstantReference

H41Hl

f

,54*)31#- K#()*#)754*)31#u3#+

0nstantRelation

x 1,+5,5+ y >

gGGf

3#()*#)752(

 'bst ractCo nstrain t 

)hrono9"P

PredicategGGf

gGGf IQ*,+

)hronometric)lock

x 1,+5,5+ y fGGw HD,1#1(

)lock#efinition

41H*4J41HlgGGf

f

)lock)onstraint!pecificationfGGw

H1#(),*3#)(

))!

H13#H3+5#H50,5H5+5#H5

p 5#Q:5,*)31#q0nstantRelationHind

x 1,+5,5+ yfGGw

H41Hl(

gGGwx 1,+5,5+ y

gGGf

*#1#=:1Q(J41Hl(

;[0,5((31# 12

J41Hl+505#+5#H35(

www.omgmarte.org

)lock )onstraint !pecification)lock )onstraint !pecification

234)5,5+Z=

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 82/243

d>

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

)lock)onstraint

K#()*#)754*)31#

J41Hl754*)31#

H13#H3+5#)v3)D

0,5H5+5(

(),3H)4= 0,5H5+5(

J13#H3+5#H58<*(5+

Y,5H5+5#H58<*(5+

%)D5,(

J41HlVUY

5kQ*4

+3(~13#)

3(U3#5,9D*#

3(J1*,(5,9D*#

,5(),3H)5+91

+3(H,5)3R5+Z=LQ<H41Hl3#I

9F18H41Hl5+

:3#Q(

v3)D 3:043H3) H41Hl

3(U*()5,9D*#

3(L41F5,9D*#

:*[W,32)

:5,I5

:55)(3(Y5,31+3H%#

3(L01,*+3H%#

*4)5,#*)5(v3)D

(*:045+91

FD5#

D*(L)*<34)=

D*65Ll5F

D*65W,32)

D*65%22(5)

D*(L*:57*)5

3#)5, 

9D,558H41Hl5+   3(.#31#%2 

"

R

2Q#H)31#*4

,54*)31#*4

Each relationhas amathematicalspecification

Y,58+523#5+J41Hl

J1#(),*3#)(

www.omgmarte.org

O,er,iewO,er,iew

!PT ?M+ % and Time!PT ?M+ % and Time

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 83/243

d]

   R  e

   ?  e  r  e  n  c  e

   @   A

   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!PT$ ?M+ % and Time!PT$ ?M+ % and Time   .&/--J1::1#Z5D*631,(--L3:04593:5.&/--J1::1#Z5D*631,(--L3:04593:5

the MARTE Time domain ,iewthe MARTE Time domain ,iew   *GlG*G )D5 &"79; 93:5 :5)*8:1+54*GlG*G )D5 &"79; 93:5 :5)*8:1+54

  J1#H50)( *#+ ,54*)31#(D30(J1#H50)( *#+ ,54*)31#(D30(

the MARTE Time sub8profilethe MARTE Time sub8profile   *GlG*G .&/ 635F*GlG*G .&/ 635F

?sage of the Time sub8profile?sage of the Time sub8profile

www.omgmarte.org

)hronometric )locks B/C)hronometric )locks B/C

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 84/243

d_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

HQ,,5#)93:5M O- 75*4

,5(14Q)31#- 75*4 x,5*+%#4=y

p H41Hl9=05 qx #*)Q,5 t +3(H,5)5S Q#3)9=05 t 93:5.#3)u3#+S,5(14")),t,5(14Q)31#S I5)93:5 t HQ,,5#)93:5 y

)hronometric

HQ,,5#)93:5M O- 75*4

p H41Hl9=05 qx #*)Q,5 t +5#(5S Q#3)9=05 t 93:5.#3)u3#+S

I5)93:5 t HQ,,5#)93:5 y0deal)lock

0mported from

MARTE==Time+ibrary

 An user9s defined(locT$pe

P1F )1 (05H32= HD,1#1:5),3H H41Hl(

www.omgmarte.org

)hronometric )locks B%C)hronometric )locks B%C

L05H32=3#I VUY 12 M#1# 3+5*4O

HD,1#1:5),3H H41Hl(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 85/243

d`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

,5(14Q)31# t gGgf

p H41Hl qx Q#3) t (S ()*#+*,+ t .9J y

HHf-JD,1#1:5),3H

,5(14Q)31# t gGgf

p H41Hl qx Q#3) t (S ()*#+*,+ t .9J yHH>-JD,1#1:5),3H

p H41HlJ1#(),*3#) q x l3#+ t ,5kQ3,5+ yx )lock H is 3+5*4J4l discreti;ed@y gGggfU

  HHf isPeriodicOn H 0eriod fgU

  HH> isPeriodicOn H periodfgU

  HHf has!tability f;8_U

  HH> has!tability f;8_U

  HHf$HH> ha,eOffset rgGG`s :( wrt 3+5*4J4lU

y

pH41Hl qx Q#3) t ( y

3+5*4J4l-K+5*4J41Hl

p 93:5+W1:*3#q

ApplicationTime#omain

c' local idealdiscrete cloc D

?0T1o

instances

 HD,1#1:5),3H H41Hl(

E%ists d such that for all 'cBd+?>F7"?8C+cc?BC,c-d./0123

4 gƒHHfrl•fs8HHfrlsƒ>g ms

 Another -on"functional propert$'Offset

 A -on"functional propert$'Stability?>">.>>?Gcc?B+?C"cc?BCG?>+>.>>? in 

ms

www.omgmarte.org

+ogical )locks B/14C+ogical )locks B/14C

P1F )1 (05H32= 41I3H*4 H41Hl(-

fO L)*,) F3)D * ()*#+*,+ .&/ H4*(( +3*I,*:

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 86/243

da

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

05,31+-VUYXWQ,*)31#

)ontroller 

,5(14Q)31#-75*43#/1FY1F5,-Z1145*#

Processor fgGGw

H),4( 0,1H

Fopa>ueExpressionGpid)ode

FtimeE,entGte,

fgGGf

<5D

3eriod of the 3#5controller' uses a -43"

t$pe

E%plicit model elementsnot usual in (lass

5iagrams

 A 6oltage"!caling processor. Assume 2 fre&uencies for

simplicit$

fO L)*,) F3)D * ()*#+*,+ .&/ H4*(( +3*I,*:

www.omgmarte.org

+ogical )locks B%14C+ogical )locks B%14C

>O "004= &"79; ()5,51)=05(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 87/243

db

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

The class 3rocessor isstereot$ped b$

(locT$pe

05,31+-VUYXWQ,*)31#

)ontroller 

,5(14Q)31#-75*43#/1FY1F5,-Z1145*#

FclockTypeGFep8allocatedG

Processor fgGGw

H),4( 0,1H

FtimedProcessingGx 1#t0,S ()*,)t)56S

+Q,*)31#t_` yFap8allocatedG

Fopa>u e@eha,iorGpid)ode

FtimedE,entGx 3(754*)365t),Q5S FD5#tgS1#t3+5*4J4lS 565,=t05,31+ y

FtimeE,entGte,

FallocateGf

gGGf

<5DThe pid code is

triggered b$ tev andtaes H c$cles of

3rocessor

Event tev is periodic onideal(loc, the period i

the value of thecontroller9s attribute

www.omgmarte.org

+ogical )locks B314C+ogical )locks B314C

]O K#()*#)3*)5 Q(5,}( :1+54 545:5#)(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 88/243

dd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

05,31+tM6*4Q5tfGgSQ#3)t:(O

Hf-J1#),1445, 

05,31+tM6*4Q5t>GgSQ#3)t:(O

H>-J1#),1445, 

,5(14Q)31#tfGg

0,-Y,1H5((1, 

ctrl0nst

FclockG3+5*4J4l-K+5*4J41Hl

 An instance of the s$stem 1ith an instance of 3rocessorsupporting t1o instances of (ontroller

Each controller instancehas its o1n period

www.omgmarte.org

+ogical )locks B414C+ogical )locks B414C

_O K#),1+QH5 H41Hl M<= ()5,51)=03#IO

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 89/243

de

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

05,31+tM6*4Q5tfGgSQ#3)t:(O

Hf-J1#),1445, 

05,31+tM6*4Q5t>GgSQ#3)t:(O

H>-J1#),1445, 

,5(14Q)31#tfGg

FclockG0,-Y,1H5((1, 

ctrl0nst

FclockG3+5*4J4l-K+5*4J41Hl

Fclock)onstraintG:*3#J4lJ), x )lock H is 3+5*4J4l discreti;ed@yf;8aU  0,  H filtered@ygZMfGg‰feO if  0,G3#/1FY1F5,„  0, t H filtered@ygZMfGg‰eO if not 0,G3#/1FY1F5,„ y

This instance of 3rocessor is usedas a logical cloc 

This cloc constraint binds processorcloc c$cle to ph$sical time, taing

account of the po1er mode

www.omgmarte.org

Multiform time B/14CMultiform time B/14C

A t ti li ti

 "#1)D5, 5[*:045 12 41I3H*4 H41Hl(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 90/243

eg

   R  e

   ?  e  r  e  n  c  e

   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

 Automotive application

4or ignition and in@ection, the position of the camshaft or the cranshaft is a <natural= reference frame for events and behaviors.

I 5efine logical clocs dealing 1ith angular positions.

ƒƒQ#3) ŠJ"&ƒƒQ#3) ŠJ7u

p 5#Q:5,*)31#qAngle?nitHind

*#I45Ml-K#)5I5,O- 75*4

,5(14Q)31#- 75*4122(5)- 75*4:*[3:*4̂ *4Q5- 75*4

p H41Hl9=05 qx #*)Q,5 t +3(H,5)5S 3(/1I3H*4S

)3:5.#3) t"#I45.#3)u3#+S,5(14")),3< t ,5(14Q)31#S

122(5)")),3< t 122(5)S:*[^*4")),3< t :*[3:*4^*4Q5S

3#+5[91^*4Q5 t *#I45 yAngle)lock

,5(14Q)31# tfGg122(5) t gGg:*[3:*4̂ *4Q5 t b>gGg

p H41Hl qx Q#3) t ŠJ7u y

H,lJ4l-"#I45J41Hl

x H1#)5[) "#I45J41Hl--*#I45Ml-K#)5I5,O- 75*4„*#I45 t M 122(5) • Ml ‹ fO w ,5(14Q)31# O

 ,:1+ :*[3:*4̂ *4Q5 y

,5(14Q)31# t fGg122(5) t gGg:*[3:*4̂ *4Q5 t ]agGg

p H41Hl qx Q#3) t ŠJ"& y

H*:J4l-"#I45J41Hl

  MfO +523#5 * (5) 12Q#3)(

  M>O +523#5 * H41Hl

)=05

  M]O 10)31#*4

+523#5 )D5 4*<543#I

2Q#H)31#

  M_O 3#()*#)3*)5 H41Hl(

-ote the possible useof an ocl rule

www.omgmarte.org

Multiform time B%14CMultiform time B%14C

;[*:045 12 Q(*I5 12 *# h"#I45J41Hli

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 91/243

ef

   R  e

   ?  e  r  e  n  c  e

   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

0ntake

stm ƒƒ)3:5+Y,1H5((3#I _L),1l5;#I3#5J=H45x 1# t H*:J4l y

)ompression

)ombustionExhaust

*2)5, eg

after 7'

*2)5, eg

*2)5, eg

A transition

A trigger 

Reference to a BlogicalC clock$ the

unit of which is V)AM Belsewhere

definedC

!tereotyped !tate Machine .

Makes reference to a )lock

!emantics=eg ŠJ"& *2)5,5#)5,3#I ()*)5

Compression 45*65)D3( ()*)5 *#+ 5#)5,()*)5 Combustion

0 I I

www.omgmarte.org

Multiform time B314CMultiform time B314C

 "#1)D5, 5[*:045 12 Q(*I5 12 *# h"#I45J41Hli-

;#D*#H5+ )3:3#I +3*I,*: Q(5+ 3# (05H323H*)31#

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 92/243

e>

   R  e

   ?  e  r  e  n  c  e

   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

V)RH

/&''   36'   54' (%'

0T#)

"@#)

sd p )3:5+Y,1H5((3#I q _L),1l5J=H45

x 1# t H,lJ4l y

0ntake

)ompression

)ombustion

Exhaust

0)

EOE)

0O

OT#)

!@#)

H,lJ4l- H,*#l(D*2) J41HlŠJ7u- +5I,55 H,*#l ZWJ- Z1))1: W5*+ J5#)5, UZWJ- U3,() ZWJ

LZWJ- L5H1#+ ZWJ

9WJ- 910 W5*+ J5#)5, K9WJ- KI#3)31# 9WJ

%9WJ- %65,4*0 9WJ

KJ- K#)*l5 H41(5(

K%- K#)*l5 105#(

;J- ;[D*Q() H41(5(

;%- ;[D*Q() 105#(

W tOT#)S 5..%'N X

W t"@#) S 4'..6'N X

W t!@#)8 45..6'N X

W tOT#) 8 /'../6N XYt"@#)

YtOT#)

Yt!@#)

YtOT#)

OT#)

Extension to logical timeTiming diagram

!tate

o,erlapping

;#D*#H5+ )3:3#I +3*I,*: Q(5+ 3# (05H323H*)31#

www.omgmarte.org

Multiform time B414CMultiform time B414C

J1:<3#3#I 41I3H*4 H41Hl(-

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 93/243

e]

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

ŠJ"&V)RH

p 5#Q:5,*)31#qAngle?nitHind

,5(14Q)31# t fGg122(5) t '.'

:*[3:*4̂ *4Q5 t b>gGg

p H41Hl qx Q#3) t ŠJ7u yHf-"#I45J41Hl

,5(14Q)31# t fGg122(5) t /&'.':*[3:*4̂ *4Q5 t b>gGg

p H41Hl qx Q#3) t ŠJ7u yH>-"#I45J41Hl

,5(14Q)31# t fGg122(5) t 54'.':*[3:*4̂ *4Q5 t b>gGg

p H41Hl qx Q#3) t ŠJ7u y

H]-"#I45J41Hl

,5(14Q)31# t fGg122(5) t 36'.'

:*[3:*4̂ *4Q5 t b>gGg

p H41Hl qx Q#3) t ŠJ7u yH_-"#I45J41Hl

,5(14Q)31# t fGg122(5) t gGg:*[3:*4̂ *4Q5 t b>gGg

p H41Hl qx Q#3) t ŠJ7u y

H-"#I45J41Hl

p H41HlJ1#(),*3#) qW c/ c%U c% c3Uc3 c4U c4 c/U

c is"inerThan c/U X9D5(5 6*4Q5( *,5 #1)3:01(5+S )D3( 3( *#*,<3),*,= M<Q) ,*)D5,#*)Q,*4O HD13H5G "#= H41Hl23#5, )D*# HfSH>SH]SH_ 3(

*441F5+

J1:<3#3#I 41I3H*4 H41Hl(-

Hl 3( *# "#I45J41Hl Q(5+ )1 (05H32= )D5 3I#3)31# 12 * H=43#+5, 

H 3( )D5 H41Hl Q(5+ )1 (05H32= 3I#3)31#( 3# * _8H=43#+5, 5#I3#5

www.omgmarte.org

Agenda

Part /

K ) + )3 ) &WW 2 79E; ) { &"79; 3 ) D 44

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 94/243

e_

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

   7  

   B  e  r  s

   i  o  n

   C !   C

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I   %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

  9D5 )3:3#I :1+54

Part 4

A component model for RT1E

Part 5

  Y4*)21,: :1+543#I

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &

  &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

www.omgmarte.org

)omponent8based paradigms in theRTE domain

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 95/243

e`

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

)omponent architectures are increasingly used in RTE execution

platforms   V55+ 21, :*#*I5*<45 *#+ ,5Q(*<45 035H5( 12 (12)F*,5

  u5= 5[*:045(- /3ID)F53ID)8JJ&S LJ"S "Q)1(*, 

)oncept of component also used to structure !ystem 1 !oftware

engineering processes

  ;#)3)35( Q#+5, *#*4=(3(E+5(3I# <,1l5# +1F# 3#)1 * (5,35( 12 H1:01#5#)(

  "0043H*<45 *) +3225,5#) ()*I5( 12 )D5 0,1H5((

  W3225,5#) l3#+- *H)365 6(G 0*((365 M5GIGS .&/ *H)365 H4*((5(O

  ;[*:045( 12 ,54*)5+ 4*#IQ*I5(- L=(&/S ""W/

9D5,5 3( * #55+ )1 0,163+5 :1+543#I H1#(),QH)( )1 (Q001,) )D5(5 H1#H50)( *)+3225,5#) 45654( 12 *<(),*H)31#

www.omgmarte.org

hat is a component in ?M+:

?M+ distinguishes the notions of structured class and component

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 96/243

ea

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

?M+ distinguishes the notions of structured class and component

  9D5 l5,#54 12 )D5 4*#IQ*I5 +523#5( Class *#+ Interface

!tructuredClasses +523#5( "ort  *#+Connector  *#+ 0,163+5 )D5 *<343)= )1+5(H,3<5 * Class *( *# *((5:<4= 12 0*,)(

#asic *#+ "ac$a%in%Component  +523#5)D5 #1)31# 12 H1:01#5#) ,5*43R*)31# *#+*++( 0*Hl*I3#I H*0*<343)35(

  K# *#= H*(5S #1 (Q001,) 21, 241F81,35#)5+ H1::Q#3H*)31#(

www.omgmarte.org

eneral )omponent Model

0 t d d t ith i t b d d l

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 97/243

eb

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

0ntroduced to cope with ,arious component8based models

  L=(&/S L03,3)S ""W/S /3ID)F53ID)8JJ&S ;"L98"W/>S "Q)1(*, 

#oes not imply any specific model of computation

Relies mainly on ?M+ structured classes$ on top of which a support for

!ysM+ blocks has been added   ")1:3H *#+ #1#8*)1:3H 241F 01,)(

  U41F 0,105,)35( *#+ 241F (05H323H*)31#(

@ut also pro,iding a support for +ightweight8))M$ AA#+ and EA!T8

A#+%$ !pirit and Autosar 

www.omgmarte.org

The MARTE )M subprofile

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 98/243

ed

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Example of component definition

")1:3H 241F 01,) )=05+ <= *

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 99/243

ee

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

L)*#+*,+ .&/ 01,) )=05+ <= * H4*(( )D*)Q(5( )D5 /1H*)31#"HH5(( 3#)5,2*H5

 ")1:3H 241F 01,) )=05+ <= *

J4*((3235, 

J1:045[ 241F 01,) )=05+ <= *241F (05H323H*)31#

www.omgmarte.org

Example of component usage

%Q)I13#I *)1:3H

241F 01,)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 100/243

fgg

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

.&/ +545I*)31# H1##5H)1, Q(5+F3)D *# *)1:3H 241F 01,)

241F 01,)K#H1:3#I *)1:3H

241F 01,)

.&/ +545I*)31# H1##5H)1, Q(5+

F3)D * #1#8*)1:3H 241F 01,)

www.omgmarte.org

RTE Model of )omputation and)ommunication

-igh le,el modeling concepts for RT1E design

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 101/243

fgf

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

-igh8le,el modeling concepts for RT1E design

  zQ*43)*)365 *(05H)(   ;GIG H1#HQ,,5#H= *#+ <5D*631, 

  zQ*#)3)*)365 *(05H)( *( ,5*48)3:5 25*)Q,5

  ;GIG +5*+43#5 1, 05,31+

Allows expressing real8time constraints on component interfaces and

connectors

  "0043H*<45 FD5)D5, H1:01#5#) *,5 *H)365 1, 0*((365

"or acti,e components$ introduces specific models of computation

  JQ,,5#)4=S *H)365 1<~5H)( M5GIG 7D*0(1+=S 71(5 79S "JJ%7WO

  "4)5,#*)365 &1JJ H*# <5 +523#5+ Q(3#I )D5 &"79; 21Q#+*)31#(

www.omgmarte.org

RTE Model of )omputation and)ommunication

Pro,ides high8le,el concepts for modeling >ualitati,e real8time features

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 102/243

fg>

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

Pro,ides high8le,el concepts for modeling >ualitati,e real8time features

on classes 1 structured classes 1 components

  75*4893:5 .#3) M79.#3)O

  '5#5,*43R*)31# 12 )D5 "H)365 %<~5H)( 12 )D5 .&/ >

  %F#( *) 45*() 1#5 (HD5+Q4*<45 ,5(1Q,H5

  75(1Q,H5( *,5 :*#*I5+ 53)D5, ()*)3H*44= M0114O 1, +=#*:3H*44=

  &*= D*65 105,*)31#*4 :1+5 +5(H,30)31# M(3:34*, )1 ""W/ :1+5(O

  Y,1)5H)5+ Y*((365 .#3) MYY.#3)O

  '5#5,*43R*)31# 12 )D5 Y*((365 %<~5H)( 12 )D5 .&/>

  75kQ3,5( (HD5+Q4*<45 ,5(1Q,H5( )1 <5 5[5HQ)5+

  LQ001,)( +3225,5#) H1#HQ,,5#H= 0143H35( M5GIG (5kQ5#)3*4S IQ*,+5+O

  Y143H35( *,5 (05H3235+ 53)D5, 41H*44= 1, I41<*44=   ;[5HQ)31# 3( 53)D5, 3::5+3*)575:1)5 1, +525,,5+

www.omgmarte.org

RTE Model of )omputation and)ommunication BcontIdC

Pro,ides high8le,el concepts for modeling >uantitati,e real8time features

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 103/243

fg]

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

Pro,ides high8le,el concepts for modeling >uantitati,e real8time features

on classes 1 structured classes 1 components

  75*4893:5 Z5D*631, M7)Z5D*631,O

  &5((*I5 zQ5Q5 (3R5 *#+ 0143H= <1Q#+ )1 * 0,163+5+ <5D*631, 

  75*4893:5 U5*)Q,5 M79UO

  ;[)5#+( .&/ "H)31#S &5((*I5S L3I#*4S Z5D*631,*4U5*)Q,5

  754*)365E*<(14Q)5E<1Q#+ +5*+43#5(S ,5*+= )3:5 *#+ :3(( ,*)31

  75*4893:5 J1##5H)1, M7)5J1##5H)1,O

 ;[)5#+( .&/ J1##5H)1,

  9D,1QID0Q)S ),*#(:3((31# :1+5 *#+ :*[ <41Hl3#IE0*Hl5) 9[ )3:5

www.omgmarte.org

?sage examples of the RTEMo))extensions

)ruise)ontrol!ystem

3(W=#*:3H t 2*4(5

J*# <5 1#5 12 )D5 21441F3#I-8 (5kQ5#)3*4

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 104/243

fg_

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

act start

p ,)2 q)IL055+ t (0:8I5)L055+MO

N)g xl3#+t()*,)"H)31#y

1HHu3#+ t *05,31+3H MO

6*4Q5 t M)752t)gS ,54W4tMfgS :(OS :3((tMfS ‚S :*[OO

I5)L055+MO- L055+

F pp?nitGWconcPolicyguardedX

!peedometer 

p,)L5,63H5q x5[5u3#+t+525,,5+y ()*,)MOp,)L5,63H5q x5[5u3#+t+525,,5+y ()10MO

)IL055+- L055+

F rt?nitG

)ruise)ontroler 

f

(0:

F dataTypeG

!peed

()*,)W5)5H)31#MO()10W5)5H)31#MO

F rt?nitG

Obstacle#etector 

f

(0:

3(W=#*:3H t 2*4(53(&*3# t 2*4(5

0114L3R5 t fg0114Y143H= t H,5*)5

3(&*3# t ),Q5

:*3# t ()*,)

 (5kQ5#)3*48 IQ*,+5+

8 H1#HQ,,5#)

JD*,*H)5,3R5( )D5 <5D*631, F3)D

,5*48)3:5 25*)Q,5(

%<()*H45W5H)5H)1, H4*(( +5H4*,5+

*( h*H)365i

www.omgmarte.org

Modeling real8time features ofcomponents

zQ*43)*)365 25*)Q,5( 1# *

H1:01#5#) 3#)5,2*H5

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 105/243

fg`

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

v3)D1Q) * p,).#3)q ()5,51)=05S )D5 H1:01#5#) 3(

H1#(3+5,5+ *( 0*((365

K) #55+( )1 <5 *441H*)5+ 1# * H1:0Q)3#I ,5(1Q,H5 M5GIGS

Q(3#I )D5 p*441H*)5q ()5,51)=05O

zQ*#)3)*)365 25*)Q,5( 1# *

H1:01#5#) 3#)5,2*H5

H1:01#5#) 3#)5,2*H5

Y,1)5H)5+ 0*((365 Q#3)

5[HD*#I5 <5)F55#

H1:01#5#)( F3)D *(5kQ5#)3*4 *HH5(( 0143H=

www.omgmarte.org

Modeling real8time features ofcomponents BcontIdC

zQ*43)*)365 25*)Q,5( +523#5+ 1#

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 106/243

fga

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

zQ*43)*)365 25*)Q,5( +523#5+ 1#

)D5 /1H*)31#"HH5(( 3#)5,2*H5

*004=

zQ*43)*)365 25*)Q,5( +523#5+ 1#

*H)31#( 12 )D5

H1:0Q)59,*~5H)1,= <5D*631, 

www.omgmarte.org

Modeling real8time features ofcomponents BcontIdC

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 107/243

fgb

   R  e

   ?  e  r  e  n  c  e   @

   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Extensibility

All models of computation in the RTE domain not explicitly addressed by

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 108/243

fgd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

p p y y

MARTE

MARTE foundations B9"P$ Time$ RMC allow third8parties to specify

other model of computations that rely on the same semantic basis

  "441F( 1#5 )1 Q(5 &"79; 25*)Q,5( *41#I F3)D )D3( Q(5,8+523#5+ &1JJ

www.omgmarte.org

Agenda

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

P t %

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 109/243

fge

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

  9D5 )3:3#I :1+54

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

Platform modeling  Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &

  &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

www.omgmarte.org

Outlines of the RM package

Pro,ides basic concepts for modeling a general Bhigh8le,elC

platform for processing RTE applications

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 110/243

ffg

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2   0

   0   7  

   B  e  r  s

   i  o  n

   C !   C

0ncludes the features for modeling processing platforms at

different le,el of details.

  9D5 45654 12 I,*#Q4*,3)= #55+5+ +505#+( 1# )D5 H1#H5,# :1)36*)3#I )D5

+5(H,30)31# 12 )D5 04*)21,:

  ;GIGS )D5 )=05 12 )D5 04*)21,:S )D5 )=05 12 )D5 *0043H*)31#S 1, )D5 )=05 12 *#*4=(3( )1 <5

H*,,35+ 1Q) 1# )D5 :1+54

@uild in a bottom8up process to abstract finer8le,el platforms

  Y,1H5((3#I 04*)21,: 21, +5(3I# H1#H5,#

  L55 P7& *#+ L7&

  Y,1H5((3#I 04*)21,: 21, *#*4=(3( H1#H5,#

  L55 'z"&8,54*)5+ 0)2 *#+ 2Q,)D5, ,523#5:5#)( 21, 05,21,:*#H5 *#+ (HD5+Q4*<343)=

*#*4=(3(

www.omgmarte.org

Essence of the RM Package

J4*((3235, H1#H5,#%<~5H) H1#H5,#

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 111/243

fff

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

3#()*#H5   )=05

fGGwgGGw75(1Q,H5K#()*#H5

Resource!ericeExecution

gGGw

fH1#)5[)

5[5L5,63H5(

3#()*#H5

)=05

fGGw

gGGw

,5(&Q4)- K#)5I5, rgGGfs

75(1Q,H5

75(1Q,H5L5,63H5

fGGw

fH1#)5[)

0L5,63H5(

1F#5+;45:5#)

1F#5, 

gGGf

gGGw

J4*((3235, H1#H5,#%<~5H) H1#H5,#

www.omgmarte.org

RM

eneric Resource Modeling75(1Q,H5 1225,( L5,63H5( *#+ :*= D*65

VUY( 21, 3)( +523#3)31# *#+ Q(*I5

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 112/243

ff>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Resource)ore

ResourceTypes

ResourceManagement !cheduling

Resource?sages

LD*,5+ ,5(1Q,H5(S (HD5+Q43#I (),*)5I35( *#+

(05H323H Q(*I5( 12 ,5(1Q,H5( M43l5 :5:1,=

H1#(Q:0)31#S H1:0Q)3#I )3:5 *#+ 5#5,I=O:*= <5 *##1)*)5+G

 " ,3HD H*)5I1,3R*)31# 3( 0,163+5+- L)1,*I5S

L=#HD,1#3R*)31#S J1#HQ,,5#H=S

J1::Q#3H*)31#S 93:3#IS J1:0Q)3#IS *#+W563H5 75(1Q,H5( :*= <5 +523#5+G

www.omgmarte.org

Example of ?M+ extensions for eneric Resources

p 0,12345 q'7&

p :5)*H4*(( q.&/--J4*((5(--u5,#54--

J4*((3235, 

p :5)*H4*(( q.&/--J4*((5(--u5,#54--K#()*#H5L05H323H*)31#

p :5)*H4*(( q.&/--J4*((5(--u5,#54--

Y,105,)=

p :5)*H4*(( q.&/--K#)5,*H)31#--Z*(3H

K#)5,*H)31#(--/32543#5

p :5)*H4*(( q.&/--J1:01(3)5L),QH)Q,5(--

K#)5,#*4L),QH)Q,5(--J1##5H)*<45;45:5#)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 113/243

ff]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

,5(&Q4)- K#)5I5, t f3(Y,1)5H)5+- Z1145*#

3("H)365- Z1145*#

p ()5,51)=05q

75(1Q,H5

p ()5,51)=05 q

J1:0Q)3#I75(1Q,H5

545:5#)L3R5- K#)5I5, 

p ()5,51)=05 q

J1::Q#3H*)31#&5+3*

(HD5+Y*,*:(- LHD5+Y*,*:5)5,( rgGGws

3("H)365-Z1145*# t ),Q5 xK(75*+%#4=y

p ()5,51)=05 qLHD5+Q4*<4575(1Q,H5

0,1)5H)u3#+- Y,1)5H)Y,1)1H14u3#+t0,31,3)=K#D5,3)*#H5H5343#I- K#)5I5, 

1)D5,Y,1)5H)Y,1)1H14- L),3#I3(Y,1)5H)5+-Z1145*#t),Q5xK(75*+%#4=y

p ()5,51)=05 q&Q)Q*4;[H4Q(31#75(1Q,H5

p ()5,51)=05 q

W563H575(1Q,H5

0*Hl5)L3R5- K#)5I5, 

p ()5,51)=05 qJ1::Q#3H*)31#;#+Y13#)

545:5#)L3R5- K#)5I5, 

p ()5,51)=05 qL)1,*I575(1Q,H5

3(Y,55:0)3<45- Z1145*# t ),Q5(HD5+Y143H=- LHD5+Y143H=u3#+ t U3[5+Y,31,3)=1)D5,LHD5+Y143H=- L),3#I

(HD5+Q45- %0*kQ5;[0,5((31#

p ()5,51)=05 qLHD5+Q45, 

(055+U*H)1,- VUYX75*4 t M6*4Q5 t fGgO

p ()5,51)=05 qY,1H5((3#I75(1Q,H5

p ()5,51)=05 qL5H1#+*,=LHD5+Q45, 

p ()5,51)=05 qL=#HD,1#3R*)31#75(1Q,H5

p ()5,51)=05 qJ1#HQ,,5#H=75(1Q,H5

p :5)*H4*(( q.&/--J1:01(3)5L),QH)Q,5(--

K#)5,#*4L),QH)Q,5(--J1##5H)1, 

www.omgmarte.org

eneric resource modeling example

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 114/243

ff_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

DD)o mpu ting Reso urce

WprocessingRate/.'X

9TK!tation

DD)omp utingR esource

WprocessingRate'.6X

)ontroller )A9K@us

DD#e,ice

WprocessingRate/.'X

Robot Arm

JMEK@us

DD)ommu nicationMediaWprocessingRate/.'X

DD)ommu nicationMedia

WprocessingRate&.5X

DD!torage

Welement!i;e/'%4x/'%4x&$

maxR0%56X

www.omgmarte.org

Allocation 2 Refinement

@asic ideas

  "441H*)5 *# *0043H*)31# 545:5#) )1 *# 0,1H5((3#I 04*)21,:

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 115/243

ff`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

00 0 I 0

545:5#)   7523#5 * I5#5,*4 545:5#) 3#)1 1#5 1, (565,*4 :1,5 (05H323H

545:5#)(

0nspired by the !ysM+ allocation  J*# 1#4= *441H*)5 *0043H*)31# )1 5[5HQ)31# 04*)21,:

 J*# *))*HD VUY H1#(),*3#)( )1 )D5 *441H*)31#

www.omgmarte.org

A two step process for allocation modeling

0dentify possible sources and targets of allocations

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 116/243

ffa

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

#efine allocation relationships and its features

vD*) H*# (5,65 *( *

)*,I5) 12 *# *441H*)31#S

)D5 0D=(3H*4 635F- * ,5(1Q,H5 1, *

(5,63H5G

vD*) H*# <5 *441H*)5+S

)D5 41I3H*4 635F- (),QH)Q,5 1, <5D*631, 

www.omgmarte.org

Allocation example B/C

Application

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 117/243

ffb

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

RealTimeOperating!ystem

:=L055+75IQ4*)1, - L055+75IQ4*)1,L=()5: rfs

L055+J1#),1445, J*,L055+

p (HD5+Q4*<4575(1Q,H5 q

%LX9*(lp ()1,*I575(1Q,H5  q

^3,)Q*4&5:1,=

www.omgmarte.org

Allocation example B%C

Application

L +7 4 ) L +7 4 ) L ) rfs

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 118/243

ffd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

RealTimeOperating!ystem

:=L055+75IQ4*)1, - L055+75IQ4*)1,L=()5: rfs

p *00X*441H*)5+ q

L055+J1#),1445, p *00X*441H*)5+ q

J*,L055+

p (HD5+Q4*<4575(1Q,H5 S50X*441H*)5+ q

%LX9*(l

p ()1,*I575(1Q,H5 S50X*441H*)5+ q

^3,)Q*4&5:1,=

www.omgmarte.org

Allocation example B3C

Application

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 119/243

ffe

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

RealTimeOperating!ystem

:=L055+75IQ4*)1, - L055+75IQ4*)1,L=()5: rfs

p *00X*441H*)5+ q

L055+J1#),1445, p *00X*441H*)5+ q

J*,L055+

p (HD5+Q4*<4575(1Q,H5 S50X*441H*)5+ q

%LX9*(l

p ()1,*I575(1Q,H5 S50X*441H*)5+ q

^3,)Q*4&5:1,=

p*441H*)5q

xl3#+t)3:5LHD5+Q43#Iyp*441H*)5q

x(0*)3*4W3(),3<Q)31#y

www.omgmarte.org

Allocation example B4CApplication

:=L055+75IQ4*)1, - L055+75IQ4*)1,L=()5: rfs

p *00X*441H*)5+ q

L055+J1#),1445,p *00X*441H*)5+ q

J*,L055+

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 120/243

f>g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

-ardwareProcessingPlatform

RealTimeOperating!ystem

p ()1,*I5S 50X*441H*)5+ q

^3,)Q*4&5:1,=

p*441H*)5q

x(0*)3*4W3(),3<Q)31#y

p ()1,*I575(1Q,H5 S*00X*441H*)5+ q

%LX&5:1,=

p ()1,*I575(1Q,H5 S*00X*441H*)5+ q

LF*0

p ()1,*I575(1Q,H5 S

50X*441H*)5+ q&5:1,=

p ()1,*I575(1Q,H5 S

50X*441H*)5+ qW3(l

p ()1,*I575(1Q,H5 S

*00X*441H*)5+ q711)U(

p H1::Q#3H*)31#&+5+3* S

50X*441H*)5+ qZQ(

p H1:0Q)3#I75(1Q,H5 S

50X*441H*)5+ qJY.

p*441H*)5q

xl3#+t(0*)3*4W3(),3<Q)31#y

p*441H*)5q

xl3#+t)3:5LHD5+Q43#Iy

L055+J1#),1445,  J*,L055+

p*441H*)5q

xl3#+t(0*)3*4W3(),3<Q)31#y

p (HD5+Q4*<4575(1Q,H5 S*00X*441H*)5+S

50X*441H*)5+ q%LX9*(l

p*441H*)5q

xl3#+t)3:5LHD5+Q43#Iy

www.omgmarte.org

hat is the !oftware Resource Modeling Profile B!RMC :

A ?M+ profile for modeling AP0s of RT1E sw execution supports

  75*4 93:5 %05,*)3#I L=()5:( M79%LO

  W5+3H*)5+ /*#IQ*I5 /3<,*,35( M5GIG "W"O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 121/243

f>f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

@?T it is 9OT a new AP0 standard dedicated to the RT1E domain<   L7& 3( )D5 ,5(Q4) 12 * 65,= +550 ()*)5 12 )D5 *,) *#+ 12 )D5 0,*H)3H5( 3#H4Q+3#I <Q) #1)

43:3)5+ )1-

  Y%LK†S "7KVJ a`]S LJ;Y97;S /3#Q[ 79S m

  L7& t * Q#3235+ :5*# )1 +5(H,3<5 (QHD 5[3()3#I 1, 0,10,35)*,= "YK(

0n which steps shall 0 use !RM :

Software Resource Modeling(SRM)

www.omgmarte.org

hy shall 0 use !RM for modeling RTO! AP0s:

RTO! AP0 modeling with ?M+ is already possible

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 122/243

f>>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  ZQ)S I5#5,3H( .&/ 3( 4*Hl3#I 79; #*)365 *,)32*H)(j 9o modeling artifacts to describe specific concepts

  ;GIG )*(l(S (5:*0D1,5( *#+ :*34<1[5(

  J1#(5kQ5#)4=S :1+54( ,54= 1#4= 1# #*:3#I H1#65#)31#(  9ot possible to define generic tools using these models

  ;GIG H1+5 I5#5,*)1, 1, :1+54 ),*#(21,:*)31#( 21, *#*4=(3(G

-ence$ !RM profile allows=   91 :1+54 0,5H3(5 :Q4)3)*(l3#I +5(3I#(

  91 <5 *<45 )1 +5(H,3<5 I5#5,3H I5#5,*)365 )114(

  91 +5(H,3<5 Lv 5[5:1+54( 3# *# Q#3235+ *#+ ()*#+*,+ F*=

  L7& 0,12345 3( * (Q<80,12345 12 )D5 &"79; ()*#+*,+

www.omgmarte.org

hat is supported by the !RM profile :

Concurrent execution contexts'

: !chedulable Resource 7JTas8

: Memor$ 3artition 7J3rocess8

Hardware and softwareresources brokering:

: 5rivers

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 123/243

f>]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!RM

!K)oncurrency

RM

p 3:01,)q

!K@rokering!K0nteraction

!KResource)orep 3:01,) q p 3:01,) q

p 3:01,) q

Interactions between concurrent contexts' 

: (ommunication !hared data Message 7JMessage &ueue8

: !$nchroniation Mutual E%clusion 7J!emaphore8 -otification Resource 7JEvent mechanism8

: #nterrupt Resource: Alarm : Memor$ management 

www.omgmarte.org

!napshot of the ?M+ extensions pro,ided by !RM

SRM::S!Concurrency

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 124/243

f>_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

SRM::S!"rokeringSRM::S!Interaction

p &5:1,=Z,1l5, q   p W563H5Z,1l5, qp &5((*I5J1:75(1Q,H5 q p V1)323H*)31#75(1Q,H5 q

p LD*,5+W*)*75(1Q,H5 q   p LF&Q)Q*4;[H4Q(31#75(1Q,H5 q

p &5:1,=Y*,)3)31# qp LFLHD5+Q4*<4575(1Q,H5 q p K#)5,,Q0)75(1Q,H5 q   p "4*,: q

p ;#),=Y13#) q

p LF93:5,75(1Q,H5 q

www.omgmarte.org

The O!EH1J#Z case study

O!EH1J#Z standard Bhttp=11www.osek8,dx.orgC

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 125/243

f>`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  "Q)1:1)365 3#+Q(),= ()*#+*,+ 21, *# 105#85#+5+ *,HD3)5H)Q,5 21,+3(),3<Q)5+ H1#),14 Q#3)( 3# 65D3H45(

  %L;uE^W† *,HD3)5H)Q,5 H1#(3()( 12 )D,55 4*=5,(-

  %L;u8J%& 4*=5,- J1::Q#3H*)31# #ata exchange support within and between electronics control units BE)?sC

  %L;u8V& 4*=5, - V5)F1,l &*#*I5:5#) )onfiguration determination and monitoring

  %L;u8%L 4*=5,- %05,*)3#I L=()5: AP0 specification of RTO! for automoti,e E)?

www.omgmarte.org

O,er,iew of the O!EH1J#Z8O! layer 

  &*3# HD*,*H)5,3()3H(

  " (3#I45 0,1H5((1, 105,*)3#I (=()5:

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 126/243

f>a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r   2

   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

I 0 0 I =

  " ()*)3H 79%L FD5,5 *44 l5,#54 1<~5H)( *,5 H,5*)5+ *) H1:0345 )3:5

  &*3# *,)32*H)(

  LQ001,) 21, H1#HQ,,5#) H1:0Q)3#I Task

  " )*(l 0,163+5( )D5 2,*:5F1,l 21, )D5 5[5HQ)31# 12 2Q#H)31#(

0nterrupt

  &5HD*#3(: 21, 0,1H5((3#I *(=#HD,1#1Q( 565#)(

Alarm 2 )ounter 

  &5HD*#3(:( 21, 0,1H5((3#I ,5HQ,,3#I 565#)(

  LQ001,) 21, (=#HD,1#3R*)31#( 12 H1#HQ,,5#) H1:0Q)3#I E,ent

  &5HD*#3(: 21, H1#HQ,,5#) 0,1H5((3#I (=#HD,1#3R*)31#

Resource

  &5HD*#3(: 21, :Q)Q*4 H1#HQ,,5#) *HH5(( 5[H4Q(31#

www.omgmarte.org

"ocus on the O!EH1J#Z Task definition

!emantic   "# %L;u8^W† )*(l 0,163+5( )D5 2,*:5F1,l 21, H1:0Q)3#I *0043H*)31#

2Q#H)31#(G " (HD5+Q45, 1,I*#3R5( )D5 (5kQ5#H5 12 )*(l 5[5HQ)31#(G

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 127/243

f>b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Example of properties Priority= ?09T3% 

  Y,31,3)= 5[5HQ)31# 12 )D5 )*(l

!tack!i;e= ?09T3%   L)*Hl (3R5 *((1H3*)5+ F3)D )D5 5[5HQ)31# 12 )D5 )*(l

Example of pro,ided ser,ices Acti,ateTask BTask0#= TaskTypeC

  LF3)HD )D5 )*(lS 3+5#)3235+ <= )D5 Task0# 0*,*:5)5,S 2,1: (Q(05#+5+ )1 ,5*+= ()*)5

)hainTask BTask0#= TaskTypeC   95,:3#*)5 12 )D5 H*443#I )*(l *#+ *H)36*)5 )D5 )*(l 3+5#)3235+ <= )D5 Task0# 

0*,*:5)5, 

www.omgmarte.org

hich !RM concepts for O!EH Task:

Concurrent execution contexts'

: !chedulable Resource 7JTas8

: Memor$ 3artition 7J3rocess8

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 128/243

f>d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!RM

!K)oncurrency

RM

p 3:01,) q

!K@rokering!K0nteraction

!KResource)orep 3:01,) q p 3:01,) q

p 3:01,) q

: Memor$ 3artition 7J3rocess8: #nterrupt Resource: Alarm

www.omgmarte.org

#etails of F!w!chedulableResourceG

!emantic  Bfrom MARTE==!RM==)oncurrency packageC

  75(1Q,H5 FD3HD 5[5HQ)5(S 05,31+3H*44= 1, #1)S H1#HQ,,5#)4= )1 1)D5, H1#HQ,,5#) ,5(1Q,H5(

!RM artifacts for modeling O!EH8J#Z Task<

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 129/243

f>e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Main features   %F#( *# 5#),= 013#) ,525,5#H3#I )D5 *0043H*)31# H1+5 )1 5[5HQ)5   &*= <5 ,5(),3H)5+ )1 5[5HQ)5 3# * I365# *++,5(( (0*H5 M3G5G * :5:1,= 0*,)3)31#O

  %F#( 0,105,)35(- 5GIGS Y,31,3)=S W5*+43#5S Y5,31+ *#+ L)*HlL3R5

  Y,163+5( (5,63H5(- 5GIGS *H)36*)5S ,5(Q:5 *#+ (Q(05#+

Extract from the !RM==!w)oncurrency meta model

)=05 - ",, 36*4Y*))5,#*H)36*)31#J*0*H3)= - K#)5I5, 05,31+;45:5#)( - &1+54;45:5#) rgGGws0,31,3)=;45:5#)( - &1+54;45:5#) rgGGws()*HlL3R5;45:5#)( - &1+54;45:5#) rgGGws

LFLHD5+Q4*<4575(1Q,H5

3(755#),*#) - Z1145*#

;#),=Y13#)

gGGw

5#),=Y13#)(

&5:1,=Y*,)3)31#

H1#HQ,,5#)75(1Q,H5(

*++,5((L0*H5 gGGf

fGGw

*H)36*)5L5,63H5(

gGGw

&R'((ResourceCore((

Resource!erice

,5(Q:5L5,63H5(

gGGw(Q(05#+L5,63H5(

gGGw

www.omgmarte.org

Model of an O!EH Task with F!w!chedulableResourceG

#efine a ?M+ model for O!EHKJ#Z==Task

*G   "++ :1+54 43<,*,= *004=3#I )D5 L7& 0,12345

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 130/243

f]g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

<G   "++ * H4*(( *#+ +523#5( 3)( 25*)Q,5( M0,105,)35( *#+ 105,*)31#(O Applying the F!w!chedulableResourceG stereotype

"ulfill the tagged ,alues of the applied stereotype

ML)50 fO ML)50 >O ML)50 ]O

&1+54( D*65 <55# ,5*43R5+ F3)D )D5 Y*0=,Q(

;H430(58<*(5+ 105#8(1Q,H5 )114 21, .&/>-

D))0-EEFFFG0*0=,Q(Q:4G1,I

www.omgmarte.org

!RM modeling facilities

-ow to model multiple candidates for the same semantics :

  "#(F5, - "44 ()5,51)=05 )*I( D*65 :Q4)3045 :Q4)3043H3)35(G 9DQ(S 3) 3( 01((3<45 )1

,525,5#H5 :Q4)3045 H*#+3+*)5( 21, )D5 (*:5 )*IG

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 131/243

f]f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  ;[*:045(  Z1)D name *)),3<Q)5( *#+ tas$Id  0*,*:5)5, *,5 )*(l 3+5#)3235, 

 Z1)D actiateTas$  *#+ chainTas$  105,*)31#( *,5 )*(l *H)36*)3#I

(5,63H5(

• *H)36*)59*(l Mtask0# 9*(l9=05O

• name - L),3#I

p (FLHD5+Q4*<4575(1Q,H5 q9*(l   p (FLHD5+Q4*<4575(1Q,H5 q

3+5#)3235,;45:5#)( t nameS task0#

• acti,ateTaskM)*(lKW )*(l9=05O

•chainTaskMO

p (FLHD5+Q4*<4575(1Q,H5 q

9*(l   p (FLHD5+Q4*<4575(1Q,H5 q*H)36*)5L5,63H5 t acti,ateTask$ chainTask

www.omgmarte.org

!RM modeling facilities Bse>.C

-ow to model a feature which ha,e multiple semantics :

  "#(F5, - U5*)Q,5 H*# <5 ,525,5#H5+ <= (565,*4 +3225,5#) )*I(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 132/243

f]>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  ;[*:045 The chain!ask  ser,ice is both a terminate ser,ice and an acti,ate ser,ice

0s it possible to reference a feature e,en if the feature owner is not thestereotyped element :   "#(F5, - Œ5(S )D5,5 3( #1 H1#(),*3#)( 1# )D5 25*)Q,5 1F#5, 

!RM allows multiple usages

  .(5, H*# Q(5 H1#(),*3#)(S (QHD *( %J/ ,Q45(S )1 43:3) )D1(5 01((3<343)35(

• acti,ateTask M)*(lKW )*(l9=05O

• chainTaskMO

p (FLHD5+Q4*<4575(1Q,H5 q

9*(lp(FLHD5+Q4*<4575(1Q,H5 q

*H)36*)5L5,63H5 t acti,ateTask$ chainTask

)5,:3#*)5L5,63H5 t chainTask

•acti,ateTaskMO

p 3#)5,2*H5 q

9*(lL5,63H5

p LFLHD5+Q4*<4575(1Q,H5 q

 0,31,3)=;45:5#)( t priority*H)36*)5L5,63H5 t acti,ateTaskMO

8 priority - K#)5I5, 

p (FLHD5+Q4*<4575(1Q,H5 q

9*(l

www.omgmarte.org

"ocus on the O!EH1J#Z E,ent definition

!emantics=

  9D5 565#) :5HD*#3(: 3( * :5*#( 12 (=#HD,1#3R*)31# )D*) 3#3)3*)5( ()*)5

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 133/243

f]]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

),*#(3)31#( 12 )*(l( )1 *#+ 2,1: )D5 )aitin% ()*)5G   ;[*:045 12 1F#5+ 0,105,)35(

Mask = E,entMaskType   W523#5 )D5 :*(l *((1H3*)5+ F3)D )D5 565#)

  ;[*:045( 12 0,163+5+ (5,63H5(

!etE,ent BTask0#= TaskType$ Mask= E,entMaskTypeC   9D5 565#)( 12 )D5 )*(l ,525,5#H5+ <= )D5 9*(lKW 0*,*:5)5, *,5 (5) *HH1,+3#I )1 )D5 565#)

:*(l (05H3235+ <= )D5 &*(l 0*,*:5)5,G

  J*443#I )D5 (5,63H5 L5);65#) H*Q(5( )D5 )*(l 3+5#)3235+ <= )D5 9*(lKW 0*,*:5)5, )1 <5

),*#(25,,5+ )1 )D5 ,5*+= ()*)5S 32 3) F*( F*3)3#I 21, *) 45*() 1#5 12 )D5 565#)( (05H3235+ 3# )D5

&*(l 0*,*:5)5,G 

aitE,ent BMask= E,entMaskTypeC

  9D5 ()*)5 12 )D5 H*443#I )*(l 3( (5) )1 )aitin% S Q#45(( *) 45*() 1#5 12 )D5 565#)( (05H3235+ 3# )D5&*(l 0*,*:5)5, D*( *4,5*+= <55# (5)G

www.omgmarte.org

hich !RM concepts for O!EH E,ent:

!RM

RM

p 3:01,) q

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 134/243

f]_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!K)oncurrency !K@rokering!K0nteraction

!KResource)orep 3:01,) q p 3:01,) q

p 3:01,) q

Interactions between concurrent contexts' 

: (ommunication !hared data Message 7JMessage &ueue8

: !$nchroniation Mutual E%clusion 7J!emaphore8 -otification Resource 7Event mechanism8

www.omgmarte.org

#etails of F9otificationResourceG

!emantic NotificationResource  (Q001,)( H1#),14 241F <= #1)32=3#I )D5 1HHQ,,5#H5( 12 H1#+3)31#( )1 *F*3)3#I

H1#HQ,,5#) ,5(1Q,H5(

tt L7& *,)32*H)( 21, :1+543#I %L;u8^W† ;65#)j

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 135/243

f]`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Main features   ;[*:045( 12 1F#5+ *)),3<Q)5

mas$Elements *#+ mechanism

  ;[*:045( 12 0,163+5+ (5,63H5

  24Q(DL5,63H5(S (3I#*4L5,63H5(SF*3)L5,63H5( *#+ H45*,L5,63H5(

Extract from the !RM==!w0nteraction meta model

0143H= - %HHQ,5#H5Y143H=u3#+

1HHQ,5#H5J1Q#);45:5#)( - &1+54;45:5#) rgGGws

:*(l;45:5#)( - &1+54;45:5#) rgGGws

:5HD*#3(: - V1)323H*)31#75(1Q,H5u3#+

V1)323H*)31#75(1Q,H5

24Q(DL5,63H5(

gGGw

!)!*nchroni+ationResource

'7&--75(1Q,H5J1,5--75(1Q,H5L5,63H5

(3I#*4L5,63H5(gGGw

F*3)L5,63H5(

gGGw

H45*,L5,63H5(

gGGw

Z*,,35, 

;65#)

.#+52 

%)D5, 

p 5#Q:5,*)31# q

V1)323H*)31#75(1Q,H5u3#+

www.omgmarte.org

O!EH1J#Z E,ent as a 9otificationResource

p V1)323H*)31#75(1Q,H5 q:*(l;45:5#)( t ;65#)--:*(lH45*,L5,63H5(t ;65#)L5,63H5--J45*,;65#)

!tereotype icon

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 136/243

f]a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

•L5);65#)M9*(lK+S &*(lO•'5);65#)M9*(lKWS ;65#)O•v*3);65#)M&*(lO•J45*,;65#)M&*(lO

p 3#)5,2*H5 q;65#)L5,63H5

(3I#*4L5,63H5(t ;65#)L5,63H5--L5);65#)F*3)L5,63H5(t ;65#)L5,63H5--'5);65#)

• :*(l - .KV9a_

p V1)323H*)31#75(1Q,H5 q;65#)

•L5);65#)M9*(lK+S &*(lO•'5);65#)M9*(lKWS ;65#)O•v*3);65#)M&*(lO

•J45*,;65#)M&*(lO

p 3#)5,2*H5 q;65#)L5,63H5

p V1)323H*)31#75(1Q,H5 q:*(l;45:5#)( t ;65#)--:*(lH45*,L5,63H5(t ;65#)L5,63H5--J45*,;65#)(3I#*4L5,63H5(t ;65#)L5,63H5--L5);65#)F*3)L5,63H5(t ;65#)L5,63H5--'5);65#)

p V1)323H*)31#75(1Q,H5 q;65#)

!tereotype shape

p #1)323H*)31#75(1Q,H5 q

p #1)323H*)31#75(1Q,H5 q

www.omgmarte.org

0n which typical cases shall 0 use !RM :

Software Resource Modeling(SRM)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 137/243

f]b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!oftware #esigner 

W5(H,3<5 5[5HQ)31#(Q001,) "YK

p 3#H4Q+5 q

J1+5 I5#5,*)31#

Execution Platform Pro,ider 

  Methodology

Pro,ider 

&1+549,*#(21,:*)31#

p 5[)5#+q

 .(5 "YK :1+54 p 5[)5#+q

www.omgmarte.org

?se examples of one RTO! modeled with !RM

Example /= Model8based design of multitask

li ti

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 138/243

f]d

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

applications   K44Q(),*)5+ 1# * ,1<1) H1#),1445, *0043H*)31#

Example %= O! configuration file generation

  '5#5,*)31# 12 )D5 %L;u %K/ H1#23IQ,*)31# 2345(

Example 3= Assistance to port applications

  U,1: %L;u )1 "7KVJ :Q4)3)*(l +5(3I#

www.omgmarte.org

)ase study= A simple robot controller software

oal

  " :1)31# H1#),1445, (=()5: 21, *# 5[041,*)31# *Q)1#1:1Q( :1<345 ,1<1)G

Robot features

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 139/243

f]e

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  Y31#55, 71<1) MY]"9O

  U1Q, +,363#I FD554(

  " H*:5,*

  ;3ID) (1#*, (5#(1,(S 5)HG

#esign features of the robot controller 

  %L;uE^W† 5[5HQ)31# (Q001,)

  L3:Q4*)31# 1# 9,*:0143#5

MD))0-EE),*:0143#5G,)(8(12)F*,5G1,IEO

  9F1 05,31+3H )*(l(

#ata ac>uisition task

  '5) 01(3)31# +*)* 2,1: (1#*, (5#(1,( 565,= f :(

tra*ectory computing task

  L5) #5F (055+ 565,= _ :(

71<1) L3:Q4*)1, 

D))0-EE04*=5,()*I5G(1Q,H521,I5G#5)EI*R5<1EI*R5<1GD):4

www.omgmarte.org

Purpose and context of the example /

Pro,ide a multitask design of the robot controller 

  9*,I5) 12 )D5 +5(3I# 3( *# %L;uE^W†8<*(5+ 04*)21,:

# i

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 140/243

f_g

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

#esign process

  " 04*)21,: 0,163+5, (Q00435( )D5 %L;uE^W† :1+54 43<,*,=

 &1+54 43<,*,= 3( +5(H,3<5+ F3)D )D5 L7& Y,12345 M*( 0,5631Q(4=

(D1F#O

  " Q(5, +5(3I#( * :Q4)3)*(l :1+54 12 )D5 *0043H*)31#

 L)50 f- W5(H,3<5 )D5 *0043H*)31# :1+54 M*4(1 H*445+ 2Q#H)31#*4

:1+54O

 L)50 >- Y,101(5 * :Q4)3)*(l +5(3I# Q(3#I )D5 %L;u :1+54 43<,*,=

*,)32*H)

www.omgmarte.org

Application design Application model at the functional le,el

  %#5 ,1<1) H1#),1445, 5#)3)=

  "3:( *) H1#),1443#I )D5 ,1<1) :1)31#(

&*3# 2Q#H)31#(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 141/243

f_f

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  &*3# 2Q#H)31#(  Ac>uire the sonar data

 )ompute the new speed of each 4 motions and send new orders

  " ,1<1) +,365, 5#)3)=

  "3:( *) 3#)5,2*H3#I ,1<1) (5#(1,( *#+ *H)Q*)1,( F3)D )D5 H1#),14 *0043H*)31#

 "HkQ3,5 (1#*, +*)*

2,1: (5#(1,(

J1:0Q)5 )D5 _

:1)31#

(055+ 6*4Q5(

95,:3#*)5

* :3((31#

W,365, )1 3#)5,2*H5

(5#(1,( *#+ *H)Q*)1,(

www.omgmarte.org

Principles of the applied multitask design

Two periodic tasks

U1, +*)* *HkQ3(3)31#

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 142/243

f_>

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  U1, +*)* *HkQ3(3)31#  '5) 01(3)31# +*)* 2,1: (1#*, (5#(1,(

 ;#),= 013#) Operation Motion)ontroller==ac>uireBC

 Y5,31+3H

Period / ms  U1, ),*~5H)1,= H1#),14

 J1:0Q)5 *#+ *((3I# #5F (055+ 1,+5, 

 ;#),= 013#) Operation Motion)ontroller==tra*ectory)ontrolBC

 Y5,31+3H Period 4 ms

www.omgmarte.org

Periodic task in O!EH1J#Z

A design pattern for implementing periodic task on O!EH1J#Z8basedplatforms   %#5 %L;uE^W† J1Q#)5, 

J1Q#)5, 05,31+ 05,31+ 12 )D5 ,5kQ3,5+ 05,31+3H )*(l

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 143/243

f_]

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  J1Q#)5, 05,31+ t 05,31+ 12 )D5 ,5kQ3,5+ 05,31+3H )*(l

  %#5 %L;uE^W† 9*(l   ;#),= 013#) - 05,31+3H )*(l ;#),= Y13#)

  %#5 %L;uE^W† "4*,:   "Q)1L)*,) - 9,3II5,5+ <= )D5 H1Q#)5, 

  "H)31# - "H)36*)5 )D5 )*(l

L7& Y,12345 3( Q(5+

 )1 +5(H,3<5 )D5 0*))5,#

www.omgmarte.org

@asic Robot )ontroller task models

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 144/243

f__

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Y5,31+ 12 )D5 05,31+3H )*(l *HkQ3(3)31# - f :(

L7& ()5,51)=05 )1 <3#+

*0043H*)31# *#+ 04*)21,:

www.omgmarte.org

Example %= O!EH )onfiguration "ile generation

Purpose

  '5#5,*)31# 12 )D5 %L;u %K/ H1#23IQ,*)31# 2345( 2,1:)D5 :Q4)38)*(l +5(3I# 12 )D5 ,1<1) H1#),1445, 

O0+= %!EH Kmplementation /anguage

%K/X^;7LK%V t n>G`n - n71<1)J1#),1445,n „

0MP+EME9TAT0O9 %L;u x

y„

)P? H0Q x

  APPMO#E ()+ x

  y„

)O?9TER H1Q#)5, x

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 145/243

f_`

   R  e

   ?  e  r  e  n  c

  e   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

O0+= %!EH Kmplementation /anguage   D))0--EE1(5l86+[G1,I

  9D5 I1*4 12 %K/ 3( )1 0,163+5 * :5HD*#3(: )1H1#23IQ,5 *# %L;u *0043H*)31# 21, * 0*,)3HQ4*, JY.

  Y,3#H3045

  U1, 5*HD JY.S )D5,5 :Q() <5 *# %K/+5(H,30)31#

  "44 %L;u (=()5: 1<~5H)( *,5 +5(H,3<5+ Q(3#I%K/ 1<~5H)(

  %K/ +5(H,30)31#( :*= <5 - hand8written

or generated by a system configuration tool 

xMAZA++OE#JA+?E t >`` „

T0)H!PER@A!E t f „

M09)[)+E t f „

  y„

  A+ARM *4*,:"HkQ x

)O?9TER t H1Q#)5, „

A)T0O9 t "J9K^"9;9"Lu x

9"Lu t *HkQ3(3)31# „

y „

A?TO!TART t 97.; x

 "/"7&9K&; t f „JŒJ/;9K&; t f „

 "YY&%W; t ()+ „

y „

  y„

  TA!H *HkQ3(3)31# x

PR0OR0T[ t > „

!)-E#?+E t U.// „

A)T0JAT0O9 t fg „

A?TO!TART t U"/L; „

!TA)H!0\E t ]>bad „

  y„m

www.omgmarte.org

Example 3= Assist user to port multitask designs

Purpose

  "((3() Q(5, )1 01,) )D5 :Q4)3)*(l +5(3I# )1 *# "7KVJ8a`] 79%L

  "7KVJ a`] ()*#+*,+ 0,163+5( *631#3H( *0043H*)31# (12)F*,5 F3)D )D5 (5) 12 <*(3H

(5,63H5( )1 *HH5(( )D5 105,*)3#I (=()5: *#+ 1)D5, (=()5:8(05H323H ,5(1Q,H5(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 146/243

f_a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

(5,63H5( )1 *HH5(( )D5 105,*)3#I (=()5: *#+ 1)D5, (=()5:8(05H323H ,5(1Q,H5(G

 "7KVJ a`]

&=79;X "0043H*)31# _"7KVJ

%L;uE^W†

&=79;X"0043H*)31# _%L;u

MyRTEKApplication

www.omgmarte.org-RM use cases

&"79;

!ystem Architect

Allocation

P7&

-igh le,el -modeling

p 3#H4Q+5 q

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 147/243

f_b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!oftware de,elopper 

Analy;er 

Analysis

#etailed -

modeling

!peciali;ed -

modeling

modeling

- designer 

Application

modeling

p 3#H4Q+5 q

p 5[)5#+q

p 3#H4Q+5 q

p 3#H4Q+5 q

] Q(5 H*(5( t ] 45654( 12 +5)*34(

www.omgmarte.org

-RM use cases 88 -igh le,el hardware modeling

-ow:

  P3ID 45654 12 abstraction

Architectural 635F 12 )D5 Pv 04*)21,:

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 148/243

f_d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Architectural 635F 12 )D5 Pv 04*)21,:

  v3)D l5= 0,105,)35(-

  ;GIGS 3#(),QH)31# (5) *#+ :5:1,= (3R5G

  " 21,:*4 635F 12 Q(Q*4 block diagrams 

"or    P3ID 45654 +5(H,30)31# 12 5[3()3#I *#+ )*,I5)5+ Pv 04*)21,:

  U3,() ()50( 12 +5(3I# 12 #5F Pv *,HD3)5H)Q,5

@y

  L=()5: *,HD3)5H)(

  L12)F*,5 +5654105,(

www.omgmarte.org

-RM use cases 88 !peciali;ed hardware modeling

-ow:

  L05H3*43R5+ Pv description :1+54

V*)Q,5 12 +5)*34( +505#+( 1# )D5 point of ,iew

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 149/243

f_e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  V*)Q,5 12 +5)*34( +505#+( 1# )D5 point of ,iew

  ;[f - *Q)1#1:= *#*4=(3( ,5kQ3,5( 01F5, H1#(Q:0)31# :1+543#I

  ;[> - vJ;9 *#*4=(3( #55+ +5)*34( 1# 0,1H5((1, (055+S H1::Q#3H*)31#

<*#+F3+)D *#+ :5:1,= 1,I*#3R*)31#m

"or analysis purpose

@y analy;ers

www.omgmarte.org

-RM use cases 88 #etailed hardware modeling

-ow:

  P7& 3( * +5)*345+ Pv *,HD3)5H)Q,5 +5(3I# 4*#IQ*I5

/5654 12 +5)*34( +505#+( 1# )D5 +5(H,30)31# accuracy

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 150/243

f`g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  /5654 12 +5)*34( +505#+( 1# )D5 +5(H,30)31# accuracy

  ;[f- UQ#H)31#*4 (3:Q4*)1, 12 * 0,1H5((1, 1#4= ,5kQ3,5( 3)( 3#(),QH)31# (5) 2*:34=

  ;[>- Y5,21,:*#H5 (3:Q4*)31# #55+ * 23#5 +5(H,30)31# 12 0,1H5((1,( :3H,18

*,HD3)5H)Q,5G

"or 

  &1+548<*(5+ +*)*(D55)( +5(H,30)31#

  L3:Q4*)31#

  I5#5,*)31# 12 H1#23IQ,*)31#( 21, (3:Q4*)31# )114(

@y

  Pv +5(3I#5,(

www.omgmarte.org-RM structure

-ierarchical taxonomy of hardware concepts

  LQHH5((365 inheritance 4*=5,(

"rom I5#5,3H H1#H50)( M'7&843l5O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 151/243

f`f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

I 0 M O ,)Computin%Resource- ,)'emor*- ,)CommunicationResource.

To (05H323H *#+ +5)*345+ ,5(1Q,H5(

,)"rocessor- ,)#ranch"redictor- ,)Cache- ,)''/- ,)#us- ,)#rid%e- ,)D'A.

  "44 P7& H1#H50)( *,5 ,)Resource0s1

  9F1 modeling 635F( to separate concerns

+ogical 1 Physical

F stereotypeG-wResourcegGGw

gGGf

1F#5+75(1Q,H5(

F stereotypeG-wResource!er,ice

0,163+5+L5,63H5(

fGGw,5kQ3,5+L5,63H5(

gGGw

www.omgmarte.org-RM structure 88 +ogical modeling

Pro,ides a 2Q#H)31#*4 description

@ased on a functional classification of hardware resources=G PFJ1:0Q)3#I G G PFL)1,*I5 G

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 152/243

f`>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

p PFY,1H5((1, qS p PFY/W qS

p PF"LKJq

p PFJ*HD5qS p PF7"& qS

p PF7%&qS p PFW,365q

p PF&&. qS

p PFW&" q

p PF",<3)5, q

p PFZ,3+I5q

p PF&5+3* qS p PFZQ(q

p PFW563H5 qS

p PFLQ001,)q

p PFKE% qp PFJ41Hl qS

p PF93:5, q

G PFW563H5 G

G PFJ1::Q#3H*)31# G

G PF93:3#I G

www.omgmarte.org

-RM structure 88 Physical modeling

Pro,ides a 0D=(3H*4 properties description

@ased on both following packages

  PF/*=1Q)

  U1,:(- JD30S J*,+S JD*##54m

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 153/243

f`]

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  W3:5#(31#(S *,5* *#+ *,,*#I5:5#) :5HD*#3(: F3)D3# ,5H)343#5*, I,3+(

  ;#63,1#:5#)*4 H1#+3)31#(- 5GIG )5:05,*)Q,5S 63<,*)31#S DQ:3+3)=m

  PFY1F5, 

  Y1F5, H1#(Q:0)31# *#+ D5*) +3((30*)31#

G PF/*=1Q) G G PFY1F5, G

p PFJ1:01#5#)ql3#+ - xJ*,+S JD*##54S JD30S Y1,)y

p PFJ1143#ILQ004=qp PFY1F5,LQ004=q

www.omgmarte.org-RM profile o,er,iew

F profile G-RM

F profileG

MARTE==RM

p 3:01,)q

F model+ibraryG

MARTE==+ibrary==@asic9"PKTypes

p 3:01,) q

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 154/243

f`_

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

F profileG

-w+ogical

F profileG

-wPhysical

-w)omputing

-w!torage

-w)ommunication

-wTiming

-w+ayout

-w!torageManager 

-w#e,ice

-wPower 

-weneral -weneral

-wMemory

www.omgmarte.org-RM profile 88 -wMemory

F profile G-RM

F profileGMARTE==RM

p 3:01,) q

F model+ibraryGMARTE==+ibrary==@asic9"PKTypes

p 3:01,) q

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 155/243

f``

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

F profileG-w+ogical

F profileG-wPhysical

-w)omputing

-w!torage

-w)ommunication

-wTiming

-w+ayout

-w!torageManager 

-w#e,ice

-wPower 

-weneral -weneral

-wMemory

www.omgmarte.org-RM profile 88 -wMemory

:5:1,=L3R5 - VUYXW*)*L3R5++ L3 VUY W ) L3

F stereotypeG

-wMemory

F stereotypeGMARTE==RM==!torage

F stereotypeG-wResource

#1)*)31# - VUYXL),3#I+ 3 )3 VUY L) 3

p +*)*9=05 qTiming

-wMemory

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 156/243

f`a

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

*++,5((L3R5 - VUYXW*)*L3R5)3:3#I( - 93:3#I rws

45654 - VUYXV*)Q,*4 t f)=05 - J*HD59=05

(),QH)Q,5 - J*HD5L),QH)Q,5,504XY143H= - 7504XY143H=F,3)5Y143H= - v,3)5Y143H=

F stereotypeG-w)ache

1,I*#3R*)31# - &5:1,=%,I*#3R*)31#3(L=#HD,1#1Q( - VUYXZ1145*#

3(L)*)3H -VUYXZ1145*#3(V1#^14*)345 - VUYXZ1145*#,504XY143H= - 7504XY143H=F,3)5Y143H= - v,3)5Y143H=

F stereotypeG-wRAM

W*)*K#(),QH)31#.#3235+%)D5, .#+523#5+

p 5#Q:5,*)31# q)acheType

+5(H,30)31# - VUYXL),3#I6*4Q5 - VUYXWQ,*)31#

#<71F( - VUYXV*)Q,*4#<J14Q:#( - VUYXV*)Q,*4#<Z*#l( - VUYXV*)Q,*4F1,+L3R5 - VUYXW*)*L3R5

p +*)*9=05qMemoryOrgani;ation

#<L5)( - VUYXV*)Q,*4<41HL3R5 - VUYXW*)*L3R5*((1H3*)363)= - VUYXV*)Q,*4

p +*)*9=05 q)ache!tructure

v,3)5Z*Hlv,3)59D,1QID%)D5, .#+523#5+

p 5#Q:5,*)31# qritePolicy

/7.VU.UKU%7*#+1:%)D5, .#+523#5+

p 5#Q:5,*)31# qReplKPolicy

)=05 - 7%&X9=051,I*#3R*)31# - &5:1,=%,I*#3R*)31#

F stereotypeG-wROM

&*(l5+7%&;Y7%&%9YX;Y7%&;;Y7%&U4*(D%)D5, 

.#+523#5+

p 5#Q:5,*)31#qROMKType

(5H)1,L3R5 - VUYXW*)*L3R5

F stereotypeG-w#ri,e

<Q225, x(Q<(5)( 1F#5+Pvy

gGGf

www.omgmarte.org

-RM profile 88 -wMemory 88 -w)ache

45654 - VUYXV*)Q,*4 t f)=05 - J*HD59=05

F stereotypeG-w)ache

  PFJ*HD5 3( * 0,1H5((3#I :5:1,= FD5,5

2,5kQ5#)4= Q(5+ +*)* H*# <5 ()1,5+ 21, ,*03+

*HH5((

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 157/243

f`b

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

W*)*K#(),QH)31#.#3235+%)D5, .#+523#5+

p5#Q:5,*)31# q)acheType

#<L5)( - VUYXV*)Q,*4<41HL3R5 - VUYXW*)*L3R5*((1H3*)363)= - VUYXV*)Q,*4

p +*)*9=05q)ache!tructure

v,3)5Z*Hlv,3)59D,1QID%)D5, .#+523#5+

p5#Q:5,*)31# q

ritePolicy

/7.VU.UKU%7*#+1:%)D5, .#+523#5+

p5#Q:5,*)31# q

ReplKPolicy

(),QH)Q,5 - J*HD5L),QH)Q,5,504XY143H= - 7504XY143H=F,3)5Y143H= - v,3)5Y143H=

  W5)*345+ +5(H,30)31# 12 )D5 PFJ*HD5 3(

#5H5((*,= 21, 05,21,:*#H5 *#*4=(3( *#+

(3:Q4*)31# 

www.omgmarte.org

-RM profile 88 -wMemory 88 -w)ache

45654 - VUYXV*)Q,*4 t f)=05 - J*HD59=05) ) J D L) )

F stereotypeG-w)ache

  L05H3235( )D5 H*HD5 45654G

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 158/243

f`d

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

W*)*K#(),QH)31#.#3235+%)D5, .#+523#5+

p 5#Q:5,*)31# q)acheType

#<L5)( - VUYXV*)Q,*4<41HL3R5 - VUYXW*)*L3R5*((1H3*)363)= - VUYXV*)Q,*4

p +*)*9=05 q)ache!tructure

v,3)5Z*Hlv,3)59D,1QID%)D5, .#+523#5+

p 5#Q:5,*)31# qritePolicy

/7.VU.UKU%7*#+1:%)D5, .#+523#5+

p 5#Q:5,*)31# qReplKPolicy

(),QH)Q,5 - J*HD5L),QH)Q,5,504XY143H= - 7504XY143H=F,3)5Y143H= - v,3)5Y143H=

0   W52*Q4) 6*4Q5 3( f

www.omgmarte.org

-RM profile 88 -wMemory 88 -w)ache

45654 - VUYXV*)Q,*4 t f)=05 - J*HD59=05) ) J D L) )

F stereotypeG-w)ache

  L05H3235( )D5 PFJ*HD5 (),QH)Q,5

  PFJ*HD5 3( 1,I*#3R5+ Q#+5, (5)( 12 <41Hl(G

  "((1H3*)363)= 3( )D5 #Q:<5, 12 <41Hl( F3)D3# 5*HD (5)G

  K2 *((1H3*)363)= t fS H*HD5 3( +3,5H) :*005+ K2 #<L5)( t f H*HD5 3( 2Q44= *((1H3*)365

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 159/243

f`e

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e

  r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

W*)*K#(),QH)31#.#3235+%)D5, .#+523#5+

p5#Q:5,*)31# q)acheType

#<L5)( - VUYXV*)Q,*4<41HL3R5 - VUYXW*)*L3R5*((1H3*)363)= - VUYXV*)Q,*4

p +*)*9=05q)ache!tructure

v,3)5Z*Hlv,3)59D,1QID%)D5, .#+523#5+

p5#Q:5,*)31# qritePolicy

/7.VU.UKU%7*#+1:%)D5, .#+523#5+

p5#Q:5,*)31# qReplKPolicy

(),QH)Q,5 - J*HD5L),QH)Q,5,504XY143H= - 7504XY143H=F,3)5Y143H= - v,3)5Y143H=

  K2 #<L5)( t fS H*HD5 3( 2Q44= *((1H3*)365G

  %J/ ,Q45

memor*!i+e 2 nb!ets x bloc!i+e x associatiit* 

www.omgmarte.org

-RM profile 88 -wMemory 88 -w)ache

45654 - VUYXV*)Q,*4 t f)=05 - J*HD59=05(),QH)Q,5 - J*HD5L),QH)Q,5

F stereotypeG-w)ache

  L05H3235( )D5 H*HD5 F,3)5 0143H=   v,3)5Z*Hl- J*HD5 F,3)5 3( #1) 3::5+3*)54=

,5245H)5+ )1 )D5 <*Hl3#I :5:1,=G

  v,3)59D,1QID- v,3)5( *,5 3::5+3*)54=

3 +

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 160/243

fag

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

W*)*K#(),QH)31#.#3235+%)D5, .#+523#5+

p5#Q:5,*)31# q)acheType

#<L5)( - VUYXV*)Q,*4<41HL3R5 - VUYXW*)*L3R5*((1H3*)363)= - VUYXV*)Q,*4

p +*)*9=05q)ache!tructure

v,3)5Z*Hlv,3)59D,1QID%)D5, .#+523#5+

p5#Q:5,*)31# qritePolicy

/7.VU.UKU%7*#+1:%)D5, .#+523#5+

p5#Q:5,*)31# qReplKPolicy

(),QH)Q,5 - J*HD5L),QH)Q,5,504XY143H= - 7504XY143H=F,3)5Y143H= - v,3)5Y143H=

:3,,1,5+G

www.omgmarte.org

-RM stereotypes extends the main structural ?M+ metaclasses   J4*((3235,S J4*((

  K#()*#H5L05H323H*)31#S Y,105,)=   "((1H3*)31# MPF&5+3*S PFZQ(mOS Y1,) MPF;#+Y13#)O

-RM usage

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 161/243

faf

   R  e

   ?  e  r  e  n

  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

-RM can be used with all !tructural ?M+ diagrams=   J4*(( +3*I,*:

  J1:01#5#) +3*I,*:

  J1:01(3)5 L),QH)Q,5 W3*I,*: MF544 *+*0)5+ 21, PvO

-RM profile application   W523#3)31#( 12 )D5 ()5,51)=05 0,105,)35( *,5 10)31#*4

  L05H3235+ if  #55+5+

  L05H3235+ when #55+5+ MRefinementO At class le,el for technology definition Be.g. type of +,CacheC

At instance le,el for component definition Be.g. si;e of +,Cache-

www.omgmarte.org

Jery early -w Architecture #escription

  L&Y ML=::5),3H &Q4)3Y,1H5((3#IO D*,+F*,5 04*)21,:

  _ 3+5#)3H*4 0,1H5((1,(

  .#3235+ /5654 > H*HD5 21, 5*HD

  LD*,5+ :*3# :5:1,= MLW7"&OJ ) 4 ULZ MU ) L3+ Z O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 162/243

fa>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

F hwResourceG

!MP

f

F hwResourceG

"!@

F hwResourceG

#MA

F hwResourceG

!#RAM

f f

F hwResourceG

@attery

f

F hwResourceG

)P?

_

F hwResourceG

?+%

f

  J5#),*4 ULZ MU,1#) L3+5 ZQ(O

  W&" MW3,5H) &5:1,= "HH5((O

  Z*))5,=   %#4= PF75(1Q,H5(

www.omgmarte.org

-RM usage example= +ogical ,iew /

F hw+ogical==hwResource G!MP

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 163/243

fa]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C F hwProcessor G

)P?

F hw)ache G?+%

x45654 t >S

)=05 t Q#3235+y

Fhw@usG"!@

  x3(L=#HD,1#1Q( t ),Q5y

F hwRAM G!#RAM

x3(L=#HD,1#1Q( t ),Q5S3(L)*)3H t 2*4(5y

_ f   f f

F hw!upportG@attery

F hw#MA G#MAx#<JD*##54( t _y

f

f

f

f

www.omgmarte.org

-RM usage example= +ogical ,iew %

F hw+ogical==hwResourceGsmp = !MP

F hwProcessor Gcpu/ = )P?

x2,5kQ5#H= t dgg&DRy

F hwProcessorGcpu% = )P?

x2,5kQ5#H= t dgg&DRy

F hwProcessorGcpu3 = )P?

x2,5kQ5#H= t dgg&DRy

F hwProcessorGcpu4 = )P?

x2,5kQ5#H= t dgg&DRy

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 164/243

fa_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C F hw)ache G

l% = ?+%

x:5:1,=L3R5 t `f>lZy

F hwRAM Gsdram = !#RAM

x2,5kQ5#H= t >aa&DRS

:5:1,=L3R5 t >`a&Zy

F hw!upportGbattery = @attery

F hw#MAGdma = #MA

x:*#*I5+&5:1,35( t (+,*:y

F hw)ache Gl% = ?+%

x:5:1,=L3R5 t `f>lZy

F hw)acheGl% = ?+%

x:5:1,=L3R5 t `f>lZy

F hw)ache Gl% = ?+%

x:5:1,=L3R5 t ̀ f>lZy

F hw@us Gfsb = "!@

x2,5kQ5#H= t f]]&DRSF1,+v3+)D t f>d<3)y

www.omgmarte.org

-RM usage example= Physical ,iew /

F hw)omponentG!MP

xl3#+ t J*,+y

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 165/243

fa`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

F hw)omponentG)P? 4N

xl3#+ t JD30y

F hw)omponentG

?+%

xl3#+ t .#3)y

F hw)omponentG

"!@xl3#+ t JD*##54y

F hw)omponentG

!#RAM

xl3#+ t J*,+y

F hwPower!upplyG@attery

xl3#+ t %)D5,SH*0*H3)= t _gvDy

F hw)omponentG

#MA

xl3#+ t JD30y

www.omgmarte.org

-RM usage example= Physical ,iew %

F hw)ard Gsmp = !MP

I,3+ t _S]*,5* t `ggg::

,XH1#+3)31#( t M95:05,*)Q,5„ %05,*)3#I„ ̂ }}} „ rfgŠJSagŠJsO

F hw)hip G

cpu/ = )P?

01(3)31# t rfSfsS rfSfs

F hw)hip G

cpu3 = )P?

01(3)31# t r>S>sS rfSfs

F h

w)ard G

sdram = !#RAM

01(3)31# t r]S_sS rfSfs#<Y3#( t f__

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 166/243

faa

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

()*)3HJ1#(Q:0)31# t `v ()*)3HJ1#(Q:0)31# t `v

F hw)hip Gcpu4 = )P?

01(3)31# t r>S>sS r]S]s()*)3HJ1#(Q:0)31# t `v

F hw)hip Gcpu% = )P?

01(3)31# t rfSfsS r]S]s()*)3HJ1#(Q:0)31# t `v

F hw)hip Gdma = #MA

01(3)31# t r]S]sS r]S]s

F hwPower!upplyGbattery = @attery

01(3)31# t r_S_sS r]S]sH*0*H3)= t fgvD

F53ID) t f`gI

#<Y3#( t f__

F hw)hannelGfsb = "!@

01(3)31# t rfS_sS r>S>s

www.omgmarte.org

-RM case study 88 T)/(76 B])ontrollerC

Ad,anced 3%8bit Tri)ore^8based 9ext eneration

Microcontroller for Real8Time Embedded systems

  "Q)1:1)365 H1#),14 (=()5:( K#+Q(),3*4 ,1<1)3H H1#),14

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 167/243

fab

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  K#+Q(),3*4 ,1<1)3H H1#),14

"eatures

  LQ05,8(H*4*, 9,3J1,5 JY.

  LQ05,31, ,5*48)3:5 05,21,:*#H5 Efficient interrupt handling

 _ ()*I5 030543#5

 WLY H*0*<343)35(

  f`g &PR 105,*)31#*4 2,5kQ5#H=

www.omgmarte.org -RM case study 88 T)/(76

)omplex memory architecture

  ;:<5++5+ Y,1I,*: &5:1,= M>&Z=)5O- Y&K MKJ"JP;S LY7"&OS Y&.

MZ7%&S YU/"LPS WU/"LPO W*)* &5:1,= - W&KM/W7"& WY7"&O W&.ML7"& LZ7"&O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 168/243

fad

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

  W*)* &5:1,= - W&KM/W7"&S WY7"&OS W&.ML7"&S LZ7"&Om

  ;[)5#+*<45 :5:1,= Q(3#I *# 5[)5,#*4 <Q(

-igh performance triple bus structure

  9F1 /1H*4 :5:1,= <Q((5( Ma_8<3)O )1 0,1I,*: *#+ +*)* :5:1,35(   ]>8<3) (=()5: 05,30D5,*4 <Q( )1 1#8HD30 05,30D5,*4(

  ]>8<3) ,5:1)5 05,30D5,*4 <Q( )1 5[)5,#*4 05,30D5,*4(

  K#+505#+5#) <Q( H1#),14 Q#3)(

/68channel #MA controller

www.omgmarte.org

@lock diagram of the T)/(76 )P?8!ubsystem

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 169/243

fae

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

-RM case study 88 T)/(76 )P?8!ubsystem

L55 :1+54( 5[*:045(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 170/243

fbg

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

L55 :1+54( 5[*:045(

on www.papyrusuml.org

www.omgmarte.org

-RM application 88 - emulation

?M+ models ha,e now a precise standard ZM+ representation Busing the

ZM0 definitionC.

Then$ all model manipulations and transformations can be easily doneusing widely known ZM+ technologies.

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 171/243

fbf

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

using widely known ZM+ technologies.

  ;H430(5 04QI3#( M;&US .&/>mOS "HH5451m

The steps are=

#escribe )D5 Pv :1+54( 3# .&/ Q(3#I P7&

Parse *#+ J*0)Q,5 *44 )D5 ,5kQ3,5+ Pv 0,105,)35(

Jerify H1D5,5#H= *#+ H1:045)31#

enerate )D5 H1#23IQ,*)31# 2345 21, )D5 )*,I5) 5:Q4*)31# )114

!imulate )D5 *0043H*)31# (12)F*,5 1# )D5 5:Q4*)5+ Pv

www.omgmarte.org

Examples of Possible -w Emulators

  L3:3H( M^3,)Q)5HDS FFFG63,)Q)5HDGH1:E C   LQ001,) 21, :1() Pv H1:01#5#)(

  UQ#H)31#*4 *#+ Y5,21,:*#H5 (3:Q4*)31#

  ;#*<45 )1 ,Q# D5*6= (12)F*,5 *0043H*)31#( M5GIGS 43#Q[O   U,55 21, *H*+5:3H(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 172/243

fb>

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

!kyeye Bwww.(l=5=5.org1C   LQ001,) 21, "7&843l5 0,1H5((1,(S :1() 12 :5:1,35( *#+ 05,30D5,*4(

  UQ#H)31#*4 (3:Q4*)31#

  ;#*<45 )1 ,Q# 1#4= 43ID) (F *0043H*)31#( M;GIGS Ž/3#Q[ *#+ "7&/3#Q[O

  'Y/

!imple!calar Bwww.(3:045(H*4*, .com1C   "H*+5:3H )114 5*(= )1 5[)5#+

  Y5,21,:*#H5 (3:Q4*)31#

  7Q# J H1+5

www.omgmarte.org

Agenda

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

9D5 )3:3#I :1+54

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 173/243

fb]

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C   9D5 )3:3#I :1+54

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

  Y4*)21,: :1+543#I

Part 6 Repetiti,e structure modeling

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &

  &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

www.omgmarte.org

Embedded !ystem -ardware is now #epetitive

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 174/243

fb_

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Multicore   91+*= _ )1 d H1,5(

  91:1,,1F- fa )1 a_ H1,5(

Processor meshes   ;[- 9345,* 9345a_

!0M# units   W*)* 0*,*44543(:

C

www.omgmarte.org

The "uture of Embedded Applications is Parallel 

Multimedia   ^3+51 H1+3#IE+5H1+3#I

  PW9^

#etection systems   7*+*, 

  L1#*, 

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 175/243

fb`

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m   

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

Telecom   L12)F*,5 ,*+31

  v3,545(( H1::Q#3H*)31#(

)omputation models

  &Q4)3+3:5#(31#*4 (3I#*4 0,1H5((3#I

  L),5*: 0,1H5((3#I

  W*)* 0*,*44543(:

C

www.omgmarte.org

Repetiti,e !tructure Modeling

Moti,ation

%ultidimensional reular parallelism

  V5()5+ 4110(

&Q4)30,1H5((1, L=()5:(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 176/243

fba

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C   &Q4)30,1H5((1, L=()5:(

Compact representation

  "0043H*)31#

  P*,+F*,5 04*)21,:   "((1H3*)31#

"orm

  V5F #1)*)31# E ()5,51)=05(

C

www.omgmarte.org

)oncepts of Repetiti,e !tructure Modeling

  J1#H50)(

!hape M5[)5#(31# 12 multiplicit* O

  91 :1+54 :Q4)3+3:5#(31#*4 *,,*=(

+ink topology M5[)5#(31# 12 connector  *#+ allocateO   91 :1+54 )D5 )10141I= 12 )D5 43#l( <5)F55# :Q4)3+3:5#(31#*4 *,,*=(

Y*))5,#8<*(5+ ,5IQ4*, )10141I35(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 177/243

fbb

   R  e

   ?  e  r  e

  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   

@asic idea= reular tilin  of

multidimensional arrays by

multidimensional sub8arrays

  75IQ4*, (0*H3#I 12 013#)( 3#(3+5 *

)345

  75IQ4*, (0*H3#I 12 )345(

  K#D5,3)( 2,1: )D5 ",,*=8%/ 4*#IQ*I5

  Y*))5,#8<*(5+ ,5IQ4*, )10141I35(

!   C

www.omgmarte.org

!hape Modeling

9ew notation   7523#5:5#) 12 )D5 :Q4)3043H3)=

#1)*)31#   ^5H)1, 12 .#43:3)5+V*)Q,*4(

F metaclass G

F profile GR!M

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 178/243

fbd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !

Examples   fa x_S_y

  w x`f>Sf>dSwy

F metaclass G?M+==MultiplicityElement

F stereotype G

!haped

(D*05 - LD*05L05H323H*)31# rfs

F dataTypeG

F collectionTypeG

xH1445H)31#")),3< t (3R5y!hape!pecification

(3R5 - .#43:3)5+V*)Q,*4 rgGGws

!   C

www.omgmarte.org

F metaclass G?M+==)onnectorEnd

F metaclass G?M+==)onnector 

F stereotype G

*ink!opoloy

F stereotype G#efault+ink

F profile GR!M

+ink Topology Modeling

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 179/243

fbe

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C  *ink!opoloy 

F stereotypeG

0nterRepetition

,505)3)31#L0*H5W505#+5#H5 - K#)5I5,^5H)1, rfs3(&1+Q41 - Z1145*# t 2*4(5

F stereotype GTiler 

1,3I3# - K#)5I5,^5H)1, 0*63#I - K#)5I5,&*),3[23))3#I - K#)5I5,&*),3[

)345, - 9345,L05H323H*)31#

0*))5,#LD*05 - LD*05L05H323H*)31# rfs,505)3)31#L0*H5 - LD*05L05H323H*)31# rfs

F stereotype GReshape

 !   C

www.omgmarte.org

-ardware Platform Example

!0M# unit   fa 0,1H5((1,(

Topology   91,13+*4 __ I,3+

  Z3+3,5H)31#*4 H1##5H)31#(

V1,)D8L1Q)D

p PFKL" q x)=05 t LK&Wy!0M#?nit

#

p 3#)5,7505)3)31# qx,505)3)31#L0*H5W505#+5#H5 txfSgyS

:1+Q41 t ),Q5y

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 180/243

fdg

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C   V1,)D L1Q)D

  ;*()8v5()

p PFJ1:0Q)3#I75(1Q,H5 q0 - ;45:5#)*,=Y,1H rx_S_ys

F   5

(

#

p 3#)5,7505)3)31# qx,505)3)31#L0*H5W505#+5#H5 txgSfyS

:1+Q41t),Q5y

0g 0f 0> 0]

0_ 0` 0a 0b

0d 0e 0fg 0ff

0f> 0f] 0f_ 0f`

C !   C

www.omgmarte.org

Tiling an Array

9eeded shapes   ",,*= (D*05

  Y*))5,# (D*05

  7505)3)31# (0*H5 (D*05

Tiler 

3itti 4 3 2 )D 3 ) 2

F stereotype G

Tiler 

1,3I3# - K#)5I5,^5H)1, 0*63#I - K#)5I5,&*),3[23))3#I - K#)5I5,&*),3[)345, - 9345,L05H323H*)31#

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 181/243

fdf

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C 3ittin% - ,5IQ4*, (0*H3#I 12 )D5 013#)( 12

)D5 )345(

  K#+5[ i 

  LH*##3#I )D5 0*))5,# "ain% - ,5IQ4*, (0*H3#I 12 )D5 )345(

  K#+5[ r 

  LH*##3#I )D5 ,505)3)31# (0*H5

F dataTypeG

F tupleTypeGTiler!pecification

1,3I3# - K#)5I5,^5H)1, 0*63#I - K#)5I5,&*),3[ rfs23))3#I - K#)5I5,&*),3[

1,3I3#•M0*63#I 23))3#IOGM Omod  *,,*=G(D*05

C !   C

www.omgmarte.org

raphical 0nterpretation of a Tiler B/1%C

"itting

  J14Q:# 65H)1,(

  Z*(3( 12 )D5 )345

  Y*))5,# (D*05

  Z1Q#+( 12 )D5 23))3#I

Pa,ing

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 182/243

fd>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C a g

  J14Q:# 65H)1,(

  Z*(3( 12 )D5 04*H5:5#) 12

)D5 )345(

  7505)3)31# (0*H5

  Z1Q#+( 12 )D5 0*63#I

  %,3I3#

  J11,+3#*)5( 12 )D5

,525,5#H5 013#) 12 )D5

,525,5#H5 )345

C !   C

www.omgmarte.org

raphical 0nterpretation of a Tiler B%1%C

"itting

  J14Q:# 65H)1,(

  Z*(3( 12 )D5 )345

  Y*))5,# (D*05

  Z1Q#+( 12 )D5 23))3#I

Pa,ing

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 183/243

fd]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

    g

  J14Q:# 65H)1,(

  Z*(3( 12 )D5 04*H5:5#) 12

)D5 )345(

  7505)3)31# (0*H5

  Z1Q#+( 12 )D5 0*63#I

  %,3I3#

  J11,+3#*)5( 12 )D5

,525,5#H5 013#) 12 )D5

,525,5#H5 )345

   C !   C

www.omgmarte.org

Application Example

"ft!tage

rx`f>Sf>dSwys

p )345, qx1,3I3#txgSgyS23))3#ItxxgSfyyS

0*63#ItxxfSgySxgS]>yy rxf>dys

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 184/243

fd_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

!amples from 5/% hydrophones around a submarine   LD*05 12 )D5 3#0Q) +*)* t `f>‘

Repetition of ""Ts   U1, 5*HD D=+,10D1#5

  L43+3#I F3#+1F 12 f>d (*:045( 565,= ]> )3:5 ()50(

rx`f>Swys2 - UU9 rx̀ f>Swys

0 I xx S ySx S yy

p )345, qx1,3I3#txgSgSgyS23))3#ItxxgSfSgyyS

0*63#ItxxfSgSgySxgSgSfyyy

rxf>dys

   C !   C

www.omgmarte.org

#istribution

Refinement of Allocation

!imilar to the reshape

stereotype of the

connectors Principle

F stereotype GAlloc==Allocate

F profile GR!M

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 185/243

fd`

   R  e

   ?  e  r

  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

  9343#I <1)D 5#+(

  9F1 )345,(

  v3)D )D5 (*:5 )345(

  %#5 0*))5,# (D*05

  %#5 ,505)3)31# (0*H5

Power of expression   ") 45*() *44 PYU +*)*

+3(),3<Q)31#(

F stereotype G

#istribute

0*))5,#LD*05 - LD*05L05H323H*)31# rfs,505)3)31#L0*H5 - LD*05L05H323H*)31# rfs2,1:9345, - 9345,L05H323H*)31# rfs)19345, - 9345,L05H323H*)31# rfs

n   C

 !   C

www.omgmarte.org

#istribution Example

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 186/243

fda

   R  e

   ?  e  r

  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

#istribution of the ""T computations to the !0M# unit   V1 (0*)3*4 +3(),3<Q)31# 12 )D5 3#23#3)5 +3:5#(31# M)3:5 ()50(O

  Z41H +3(),3<Q)31# 12 )D5 `f> UU9( 21, 5*HD )3:5 ()50

  L3R5 12 )D5 <41H t ]>

  %# )D5 fa 545:5#)*,= 0,1H5((1,(

n   C

 !   C

www.omgmarte.org

#istribution Example

p +3(),3<Q)5 qx0*))5,#LD*05 t x]>yS ,505)3)31#L0*H5 t x_S_SwyS 2,1:9345, t x1,3I3# t xgSgyS

 23))3#I t xxfSgyyS 0*63#Itxx]>SgySxf>dSgySxgSfyyyS

 )19345, t x1,3I3# t xgSgyS  23))3#I t xxgSgyyS  0*63#I t xxfSgySxgSfySxgSgyyyy

U2)L)*I5--2 - UU9 L3:+.#3)--0 -

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 187/243

fdb

   R  e

   ?  e  r

  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

#istribution of the ""T computations to the !0M# unit   V1 (0*)3*4 +3(),3<Q)31# 12 )D5 3#23#3)5 +3:5#(31# M)3:5 ()50(O

  Z41H +3(),3<Q)31# 12 )D5 `f> UU9( 21, 5*HD )3:5 ()50

  L3R5 12 )D5 <41H t ]>

  %# )D5 fa 545:5#)*,= 0,1H5((1,(

U2)L)*I5--2 - UU9rx`f>Swys

L3:+.#3)--0 -;45:5#)*,=Y,1H rx_S_ys

n   C

 !   C

www.omgmarte.org

)omplex -ardware Example=Tile64

)hallenge

  &1+54 )D5 *,HD3)5H)Q,5

  K# )D5 :1() H1:0*H) F*=

Proposal

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 188/243

fdd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  n p

  d[d8,505)3)31# 12 )D5

0,1H5((3#I 545:5#)

  _8,505)3)31# 12 )D5 WW7>

H1#),1445, 

  U*H)1,3R*)31# 12 )D5 01,)(

n   C

 !   C

www.omgmarte.org

Processing Element Repetition

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 189/243

fde

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o  

o  n

   C !   C

www.omgmarte.org

##R% )ontroler )onnection to the rid

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 190/243

feg

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o

o  n

   C !   C

www.omgmarte.org

)onclusion on R!M

eneral mechanism to handle   &Q4)3+3:5#(31#*4 (),QH)Q,5( M*,,*=(O   9343#I <= (Q<8(),QH)Q,5( M#1# 1,)D1I1#*4 1, (0*,(5 )345( 01((3<45O   /3#l( <5)F55# (QHD (),QH)Q,5( MH=H43H 1, #1# H=H43H H1##5H)31# 0*))5,#( 01((3<45O

9ecessary to handle massi,e regular parallelism   J1:0*H)#5(( 12 )D5 :1+54   ;223H35#H=S :*3#)*3#*<343)=S ,5*+*<343)=

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 191/243

fef

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o

Relations with the rest of MARTE   .(5( ^L/   Z5#523)( 2,1: )D5 H1:01#5#) :1+54 M241F 01,)(O   "00435( )1 <1)D *0043H*)31# *#+ D*,+F*,5 H1:01#5#)(   ;[)5#+( *441H*)31#

+imitations   P*#+45( 1#4= *,,*=( M#1 2*#H35, (D*05(O   v1Q4+ <5#523) 2,1: * HQ()1: M63(Q*4O )345, 5+3)1, 

  .#+5, +565410:5#)

o  n

   C !   C

www.omgmarte.org

Agenda

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

  9D5 )3:3#I :1+54

Part 4

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 192/243

fe>

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o

  " H1:01#5#) :1+54 21, 79E;

Part 5

  Y4*)21,: :1+543#I

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

Model8based analysis for RT1E

Part &

  &"79; *#+ ""W/

Part 7

  J1#H4Q(31#(

o  n

   C !   C

www.omgmarte.org

oals in 9on8"unctional Bor Luantitati,eC Analysis

#ifferent oals for E,aluate 2 Jerify !ystem Architectures

Y13#) 56*4Q*)31# 12 )D5 1Q)0Q) VUY( 21, * I365# 105,*)3#I 013#) +523#5+ <=

0t offers a mathematically8sound way to calculate 9"Ps of 

interest based on other a,ailable 9"Ps and the system beha,ior 

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 193/243

fe]

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i  o   Y13#) 56*4Q*)31# 12 )D5 1Q)0Q) VUY( 21, * I365# 105,*)3#I 013#) +523#5+ <=

3#0Q) VUY(

  L5*,HD 165, )D5 0*,*:5)5, (0*H5 21, 25*(3<45 1, 10)3:*4 (14Q)31#(

  L5#(3)363)= *#*4=(3( 12 (1:5 1Q)0Q) ,5(Q4)( )1 (1:5 3#0Q) 0*,*:5)5,(   LH*4*<343)= *#*4=(3(- D1F )D5 (=()5: 05,21,:( FD5# )D5 0,1<45: (3R5 1,

)D5 (=()5: (3R5 I,1FG

i  o  n

   C !   C

www.omgmarte.org

MARTE "eatures for Luantitati,e Analysis

0mpro,ements w.r.t. !PT

  ;[)5#+ 3:045:5#)*)31# *#+ (HD5+Q43#I :1+54(

  5GIG +3(),3<Q)5+ (=()5:(S D35,*,HD3H*4 (HD5+Q43#I

  ;[)5#+ )D5 (5) 12 *#*4=(3( )5HD#3kQ5( (Q001,)5+

 5GIG 122(5)8<*(5+ )5HD#3kQ5(

;[)5#+ )3:3#I *##1)*)31#( 5[0,5((365#5((

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 194/243

fe_

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

   i   ;[)5#+ )3:3#I *##1)*)31#( 5[0,5((365#5((

  %65,D5*+( M5GIG :5((*I5( 0*((3#IO

  75(01#(5 )3:5( M5GIG ZJ;9 { "J;9O

  93:3#I ,5kQ3,5:5#)( M5GIG :3(( ,*)31( *#+ :*[G ~3))5,(O

9ew features w.r.t. !PT

  LQ001,) 21, (5#(3)363)= *#*4=(3(

  K:0,165 :1+543#I ,5Q(5 *#+ H1:01#5#)8<*(5+ +5(3I#G

  LQ001,) 12 )D5 hŒ8HD*,)i *00,1*HD- *0043H*)31# 6(G 04*)21,: :1+54(

   i  o  n

   C !   C

www.omgmarte.org

?M+8@ased Analysis "oundations

LAM Profile factori;es common constructs and 9"Ps   L)5,51)=05( +523#5 h*#*4=(3(i *<(),*H)31#(

  F1,l41*+ 565#)(S (H5#*,31(Sm

  (HD5+Q4*<45 5#)3)35(S (D*,5+ ,5(1Q,H5(S 0,1H5((3#I #1+5(S (HD5+Q45,(m   L)5,51)=05 *)),3<Q)5( +523#5 0,58+523#5+ VUY(

  5GIG 565#) *,,36*4 0*))5,#(S 5#+8)185#+ +5*+43#5(S FH5)8<H5)8*H5)Sm

Th l i b fil d fi d l ll f d l

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 195/243

fe`

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s The analysis sub8profiles define model well8formedness rules

  K) 3#H4Q+5( hH1#(),*3#)(i )1 H1#(),QH) h*#*4=R*<45i :1+54(S FG,G)m

  i"#*4=(3( &1+54 ^35F013#)(i M5GIGS (HD5+Q4*<343)= *#*4=(3( 635F013#)O

  L05H3*43R5+ H1#(),*3#)( :Q() <5 ,523#5+ <= )5HD#3kQ58(05H323H *00,1*HD5(

The MARTE analysis sub8profiles pro,ide standard constructs

to map ?M+ models on well8established analysis techni>ues

&"79; hU1Q#+*)31#(i *#+ h'z"&i *441F 21, 5[)5#+3#I )1 2Q,)D5, )5HD#3kQ5(

s   i  o  n

   C !   C

www.omgmarte.org

LAM= #ependencies and Architecture

LAM

Time   RM

p 3:01,) q p 3:01,) q

p :1+54/3<,*,= qMARTEK+ibrary

p 3:01,) q

9"Ps

p 3:01,) q

'5#5,*4 VUY

)=05(

Y,1H5((3#I{

LHD5+Q43#I

:1+54

93:5+0,1H5((3#I

:1+54

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 196/243

fea

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

!AM PAM

p 3:01,) q p 3:01,) q

LAMKorkload   LAMKResourcesp 3:01,) q

LAMKObser,ersp 3:01,) q

LHD5+Q4*<343)= *#*4=(3(

M)3:543#5((O

Y5,21,:*#H5

*#*4=(3( M#1#8

+5)5,:3#3()3H

05,21,:*#H5O

s   i  o  n

   C !   C

www.omgmarte.org

LAM= Analysis Modeling !tructure

Analysis

)ontext

orkload

@eha,ior 

Resources

Platform

Q(5(

56*4Q*)5

(3)Q*)31#

56*4Q*)5

H*0*H3)=

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 197/243

feb

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

41*+

(H5#*,31(  5[5HGD1()

H1::GD1()

0,1)5H)5+

,5(1Q,H5(

<,1l5, 

,5(1Q,H5*441H*)31#

s   i  o  n

   C !   C

www.omgmarte.org

Processing !chema for Analysis

95HDG (0*H5

 21, *#*4=(3(

95HDG (0*H5

21, .&/ :1+543#I

.&/> 5+3)1, 

p 0,12345 q&"79;

W1:*3# :1+54&1+54

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 198/243

fed

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r  s

 "##1)*)5+ :1+54

75(Q4)EW3*I#1()3H

 :1+54   "#*4=(3( ,5(Q4)(

 "#*4=(3( )114

W1:*3# :1+54&1+54

H1#65,)5, 

75(Q4)(

H1#65,)5, 

r  s   i  o  n

   C !   C

www.omgmarte.org

!chedulability Analysis

!chedulability analysis offers=   %2243#5 IQ*,*#)55(G ;GIGS F1,()8H*(5 4*)5#H35( *#+ F1,()8H*(5 ,5(1Q,H5

Q(*I5G

") +3225,5#) +565410:5#) ()*I5(

Pro,ides the ability to e,aluate time constraints and guarantee

worst8case beha,ior of a system or particular piece of software

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 199/243

fee

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r   ") +3225,5#) +565410:5#) ()*I5(G

  ;*,4= *#*4=(3(- )1 +5)5H) 01)5#)3*44= Q#25*(3<45 ,5*48)3:5 *,HD3)5H)Q,5(G

  /*)5, *#*4=(3(- )1 +3(H165, )5:01,*48,54*)5+ 2*Q4)(S 1, )1 56*4Q*)5 )D5 3:0*H) 12

:3I,*)31#( M5GIGS (HD5+Q43#I (),*)5I35(OG Pro,ide answer to >uestions such as for example...

  v344 F5 :3(( *#= +5*+43#5 32 F5 (F3)HD * 0,1H5((1, 2,1: * #1,:*4105,*)31# :1+5 )1 * 41F5,8H1#(Q:0)31# :1+5€

  K2 =5(S D1F H*# F5 :1+32= )*(l F1,l41*+( 21, *441F3#I 1Q, (=()5: )1 ()344F1,l€

r  s   i  o  n

   C !   C

www.omgmarte.org

A !imple Example B)lassical !cheduling TheoryC

9*(l-

M3#+505#+5#)S #1

H=H45(S (3#I45

),3II5,O

LD*,5+ ,5(1Q,H5(

9*(l

0*,*:5)5,(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 200/243

>gg

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e  r

Three main analysis approaches for ,erify timeliness=   J,3)3H*4 3#()*#) H*4HQ4*)31#   .)343R*)31# <1Q#+ )5()   75(01#(5 )3:5 H*4HQ4*)31#

0*,*:5)5,(

  r  s   i  o  n

   C !   C

www.omgmarte.org

!AM= 0ntegration #ifferent Approaches

&1+Q4*,  "#*4=(3(

7&"8L)=45

93:5+ "Q)1:*)*

8 J4*((3H 7&"

8 ;[)5#+5+ 7&"8 P143()3H "00,1*HD

  A    A   T   -

  A    A   T   -

8 93:5+ "Q)1:*)* F3)D

9*(l(8 ";K%/9L

8 J1:01(3)31#*4 "#*4=(3(

   T   0   M   E  !

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 201/243

>gf

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

&W"  %<~5H)

%,35#)5+

L"&M&"79;O

8 YK&S YL&S YW&   8 "H)365 %<~5H) L5:*#)3H

8 ;65#) Y,31,3)35( 6(G9D,5*+ Y,31,3)35(

Other !ched. Analysis tools= +i,ede,icesI Real8Time Architect$

)oMET from Ja!T$ JectorIs )A9Aly;er

e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Π

!AM= The 9otion of End8To8End "low

An End8To8End "lowQ is the basic workload unit to be e,aluate by

by schedulability analysis tools.

 "# 5#+8)185#+ 241F ,525,( )1 )D5 5#)3,5 H*Q(*4 (5) 12 ()50(

),3II5,5+ <= 1#5 1, :1,5 5[)5,#*4 F1,l41*+ 565#)(G 

v1,l41*+ 565#)- <*(3H ()3:Q43

Q#3) M5GIGS )3:5,(S 5[)5,#*4

1HHQ,,5#H5(S 3#)5,#*4 565#)(SmO

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 202/243

>g>

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

β f*f

*]   *_

5f

5>

•*>

MHF>SH<]O

Π : 5#+8)185#+ 241F

53  : F1,l41*+ 565#)

β ~  : <5D*631, (H5#*,31*l : ()50

0,1H5((3#I )3:5( MF1,()

*#+ <5() H*(5OL)50- <*(3H <5D*631,*4 Q#3)

M5GIGS 5[5HQ)31# *H)31#(S H*44

*H)31#(S :5((*I5(SmO

e  r  s

   i  o  n

   C !   C

www.omgmarte.org

*~•

*3

A .

* ~

•* A .L5kQ5#H3*4-

&5,I5 %7-W5H3(31# %7-

!AM= Precedence Relations

Execution and communication steps may be causally related

by one of the following precedence relations=

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 203/243

>g]

   R  e   ?  e

  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e * ~

*3   * ~

 A

* ~[

*3

 A .

•*3   A

* ~

[*3   A .

c13#- U1,l-

e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= orkload #omain Metamodel Bend8to8endC

L"&Xv1,l41*+

3(LHD5+Q4*<45- VUYXZ1145*#

EndToEnd"low

LAMKorkload==orkload@eha,ior 

F1,l41*+   fGGw

!AMKObser,ers==

TimingObser,er 

93:3#I

f

w05,31+3H- Y5,31+3HY*))5,#*05,31+3H- "05,31+3HY*))5,#(01,*+3H- L01,*+3HY*))5,#<Q,()- ZQ,()Y*))5,#3,,5IQ4*,- K,,5IQ4*,Y*))5,#H41(5+- J41(5+Y*))5,#

105#- %05#Y*))5,#

F dataTypeG

F choiceTypeG

Arri,alPattern

Y,5+3H)31#( 0,163+5+ <=

*#*4=(3( )114(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 204/243

>g_

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B  e

(HD5+Q4*<343)=L4*Hl- VUYX75*45#+91;#+93:5 - VUYXWQ,*)31#5#+91;#+W5*+43#5 - VUYXWQ,*)31#

0*))5,#- ",,36*4Y*))5,#

LAMKorkload==

orkloadE,entLAMKorkload==@eha,ior!cenario

5225H)

fGGw

3#0Q)L),5*:

f

fGGw 5#+91;#+L)3:Q43   f5#+91;#+75(01#(5

105#- %05#Y*))5,#

;#+8)185#+

,5(01#(5 *#+

+5*+43#5 )3:5(

L)3:Q43

3#21,:*)31#

B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= orkload #omain Metamodel Bdetailed beha,.C

L"&Xv1,l41*+

D1()W5:*#+- V UYXWQ,*)31#

,5(093:5- VUYX+Q,*)31# rw sQ)343R*)31#- VUYX75*4 r ws

LAMKorkload==@eha,ior!cenario

LAMKorkload==

PrecedenceRelation

1Q)0Q)754 (QHH5(

wf

3#0Q)754

0,5+5H

w

f

H1##5H)1,(

f

w

RM==!cheduling==

!chedulableResource

H1#HQ,75(

w gGGf3(")1:3H- VUYXZ1145*#

<41Hl3#I93:5- V UYXWQ,*)31#0,31,3)=- VUYXK#)5I5, 

LAMKorkload==!tep

RM==Resource?sages==Resource?sage

()50(

gGGf <5D*631, 

w

Y,1H5((3#I Q#3)

M5[5HQ)31# 1,

H1::Q#3H*)31#O

;[5HQ)31# Q#3)(

*HH5((3#I (D*,5+

J1#HQ,,5#H=

,5(1Q,H5( M5GIGS

)D,5*+(S HD*##54(O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 205/243

>g`

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B

+5*+43#5 - VUYXWQ,*)31#

(0*,5J*0*H3)=- VUYXWQ,*)31#(HD5+Q4*<343)=L4*Hl- VUYX75*40,55:0)5+93:5- VUYXWQ,*)31#,5*+=93:5- VUYXWQ,*)31#+54*=93:5- V UYXWQ,*)31#

!a!tep

LAMKResources==)ommunication)hannel

x,5+523#5( H1#HQ,75(yH1#HQ,75(

  gGGf

x(Q<(5)( Q(5+75(1Q,H5y

(D*,5+75(1Q,H5

w

gGGf

!AMKResources==!haredResource

:(IL3R5- VUYXW*)*L3R5

LAMKorkload==)ommunication!tep

+5*+43#5 - VUYXWQ,*)31#

(0*,5J*0*H3)=- VUYXWQ,*)31#(HD5+Q4*<343)=L4*Hl- VUYX75*4

!a)ommunication!tep

LAMKorkload==Ac>uire!tep

LAMKorkload==Release!tep

*HH5((3#I (D*,5+

,5(1Q,H5(

B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Example of !tereotype Extensions ?sage

S+, -omain ,odel S+, Stereotype .,/ ,etaclasses Conte0t

1orkload2ehavior GaWorkloadBehavior UML::Interactions::Fragments::Com3inedFragments  

Modeled in a highlevelinteraction

4nd5o4ndFlo6 !a"nd#"ndFlo$ UML::Interactions::Fragments::7nteraction8perand  

Modeled in a highlevelinteraction

1orkload4vent GaWorkload"vent UML::Interactions::BasicInteractions::,essage

Modeled in a highlevelinteraction

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 206/243

>ga

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7  

   B,essage  interaction

2ehaviorScenario Ga!cenario UML::Interactions::BasicInteractions::7nteraction 

Modeled as a lo$levelinteraction nested $ithin ahigherlevel interaction

Step

CommunicationStep

*eleaseStep

+c9uireStep

!a!tep

!a%omm!tep

Ga&el!tep

Ga'c(!tep

UML::Interactions::BasicInteractions::,essage 

Messages in lo$levelinteractions

B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Examples of @eha,ior Annotations

pI*LH5#*,31q sd @!/

* H<

*(=#HG :5((*I5

),*#(:3((31#   p(*J1::L)50q:f

<5D*631, (H5#*,31

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 207/243

>gb

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

   B

(=#H,G

5[5HQ)31#

:5((*I5

41Hl *#+ Q#41Hl12 * (D*,5+

,5(1Q,H5(

pI*"HkL)50q:>

p(*L)50q:]MO

pI*754L)50q:_

B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Example of Precedence Relations Annotation

pI*LH5#*,31q sd @!/

pI*LH5#*,31q sd @!/

* H<

p(*L)50q:f

p(*L)50q:>

*f   *>

L5kQ5#H3*4-

x5[5H9t+M*fOy *f

*>

x5[5H9t+M*>Oy

U1,l-

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 208/243

>gd

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

   B

par 

* H<

p(*L)50q

:f

p(*L)50q:>

x5[5H9t+M*fOy *f

*>

*_[

*]

 A .

c13#-

x5[5H9t+M*>Oy

*>

[*f   A .

x5[5H9t+M*]Oy*]

x5[5H9t+M*_Oy

p(*L)50q:_

*_

p(*L)50q:]

B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Example of orkload Annotations

sd !#/

p(*;#+>5#+U41Fqr5>5Ufs

pI*v1,l41*+Z5D*631,q par vZf

* +H<

p(*v1,l41*+;65#)q:f

ref    p I*LH5#*,31 q

),3II5,3#I565#)(

M*(=#HG:5((*I5(O

5#+8)185#+241F

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 209/243

>ge

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

   B

p(*;#+>5#+U41Fqr5>5U>s

IZLf

ref    p I*LH5#*,31 qZL>

p(*v1,l41*+;65#)q:>

H1#HQ,,5#)2,*I:5#)(

Q(5 12 *#3#)5,*H)31#

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Resources )oncepts

Pro,ide additional Banalysis8specificC annotations to annotate resourcesplatform models

  /

κ //   τ % 3

Y,1H5((3#I ,5(1Q,H5(

M5[5HQ)31# *#+

H1::Q#3H*)31#O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 210/243

>fg

   R  e   ?

  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

!)-B !chR/ Wτ/$τ%$τ3$τ4$τ5X C

!haR/ W  /$  %$ 3X

)hn Wτ/$τ%$τ3X

// %

τ 3   τ 4τ /   τ %

τ 3

ε 3 : 5[5HQ)31# D1()κ  ~  : H1::Q#3H*)31# D1()

ς l : (D*,5+ ,5(1Q,H5LJP4 : (HD5+Q45, τ : : (HD5+Q4*<45 ,5(1Q,H5

LHD5+Q4*<45 ,5(1Q,H5(

M5GIGS )D,5*+(S HD*##54(S

mOLD*,5+ 75(1Q,H5(

LHD5+Q45, 

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Resources #omain MetamodelL"&X75(1Q,H5(

RM==!cheduling==!chedulableResource

RM==!cheduling==

MutualExclusionResourceRM==!cheduling==

!cheduler RM==ResourceTypes==)oncurrencyResource

w

D1()

w

LAMKResources==

ResourcesPlatform

RM==!cheduling==ProcessingResource

RM==Resource)ore==Resource

,5(1Q,H5(w

:*3#LHD5+Q45, fG Gw 0,1H5((3#I. #3) ( gG Gf

%65,D5*+(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 211/243

>ff

   R  e   ?

  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

H1::9[%65,D5*+- VUYXWQ,*)31#

H1::7H6%65,D5*+- VUYXWQ,*)31#H1#)5[)LF 3)HD93:5- VU YXWQ,*)31#H41Hl%6D- VU YXWQ,*)31#(HD5+Y,31,3)=7*#I5- VUYXK#)5,6*4:5:1,=L3R5- VUYXW*)*L3R5

Q)343R*)31#- VUYX75*4

LAMKResources==Execution-ost

H*0*H3)=- VUYXW*)*9[7*)5

0*Hl5)93:5- VUYXWQ,*)31#

<41Hl3#I93:5- VUYXWQ,*)31#),*#(:&1+5- 9,*#(:&1+5u3#+Q)343R*)31#- VUYX75*4

LAMKResources==)ommunication-ost

0*Hl5)L3R5- VUYXW*)*L3R5

Q)343R*)31#- VUYX75*4

LAMKResources==

)ommunication)hannel

!chedulableResource(HD5+Q4*<4575(1Q,H5

KL7(F3) HD93:5- VUYXWQ,*)31#KL70,31,3)=7*#I5- VUYXK#)5I5,K#)5,6*43(LHD5+Q4*<45- VUYXZ1145*#(HD5+Q4*<343)=L4*Hl- VUYX75*4

(HD5+.)343R*)31#- VUYX75*4(HD5+Y143H=- LHD5+Y143H=u3#+3(Y,55:0)3<45- VU YXZ1145*#

!aExecution-ost

3(LHD5+Q4*<45- VU YXZ1145*#(HD5+Q4*<343)=L4*Hl- VUYX75*4

!a)ommunication-ost

H*0*H3)=- VUYXK#)5I5, 3(Y,55:0)3<45- VUYXZ1145*#3(J1#(Q:*<45- VU YXZ1145*#*HkQ3(3)31#93:5- VUYXWQ,*)31#

,545*(593:5- VUYXWQ,*)31#

!haredResource

RM==ResourceTypes==

TimingResource

)3:3#I75(

gGGf

RM==!cheduling==

!chedulingParameters

(HD5+Y*,*:( f

(HD5+75(

w

(D*,5+75(1Q,H5(

w

H1::JD*##54(  w

 "#*4=(3( 0,5+3H)31#(

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Examples of the !tereotypes ?sage

S+, -omain ,odel S+, Stereotype .,/ ,etaclasses Conte0t

*esources:latform Ga&esources)lat*orm UML::!tructured%lasses::SctructuredClass   Main container o* resources

Sa40ecution;ost

SaCommunication;ost

<*,==Scheduler

!a"+ec,ost

!a%omm,ost

!cheduler

UML:: !tructured%lasses:::roperty 

)arts o* the resources plat*orm

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 212/243

>f>

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

<*,==Schedula3le*esource

SaCommChannel

!chedula-le&es

!a%omm%hannel

UML:: !tructured%lasses:::roperty 

)arts o* processing resources

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Example of Resources !tereotype ?sage

F gaResourcesPlatformG

RP/

p (*;[5HP1() q5[5HPf

p (*J1::P1() qH1::Pf

p ( *J1::JD*##54 q

HDf - JPp (HD5+Q4*<4575( q

(HD7f - LJP7

75(1Q,H5(

04*)21,: Q#+5,

*#*4=(3(

Y,1H5((3#I

75(1Q,H5( *(

.&/ 0*,)(

J1#HQ,,5#H=

,5(1Q,H5( *(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 213/243

>f]

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

p (HD5+Q45, q

(HDf- LJP

p ( *J1::JD*##54 q

HD> - JPp p (HD5+Q4*<4575( q q

(HD7> - LJP7

,5(1Q,H5( *(

#5()5+ 0*,)(

LHD5+Q45, *(

.&/ 0*,)

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org Λ f

Γ f

β f*ff

*f]   *f_

5f

5>

•*f>

β >

*>f   *>>   *>]5]

Θ fΘ >

Θ a

+MΠ fO

Π >

Π f

+M*f]O

!AM= Analysis )ontext concepts

  "# *#*4=(3( H1#)5[) 3( )D5

,11) H1#H50) Q(5+ )1

H1445H) ,5456*#)

kQ*#)3)*)365 3#21,:*)31#

21, 05,21,:3#I * (05H323H*#*4=(3( (H5#*,31G

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 214/243

>f_

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

!)-B !chR/ Wτ/$τ%$τ3$τ4$τ5X C

!haR/ W /$ %$  3X

  /

)hn Wτ /$τ %$τ 3X

κ /

τ /   τ%

τ 3   τ 4

τ /   τ %τ 3

Θ `

Θ _Θ ]   Θ b

Yf

Λ : *#*4(3( H 1#)5[)Γ 3 : F1,l41*+ <5D*631, Y ~ : ,5(1Q,H5( 04*)21,:

Θ l  : (HD5+G ,5(G *((3I#G

+M[O : +5*+43#5 12 [

  "# *#*4=(3( H1#)5[)

3#)5I,*)5( F1,l41*+

<5D*631, :1+54( *#+,5(1Q,H5( 04*)21,:

:1+54(G

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Analysis )ontext #omain Metamodel

!AM

LAM==Analysis)ontext

F1,l41*+Z5D*631, f   fGGw ,5(1Q,H5(Y4*)21,:

LAMKorkload==orkload@eha,ior 

LAMKResources==ResourcesPlatform

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 215/243

>f`

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e

  m     e  r

   2   0   0   7  

3(LHD5+Q4*<45- VUYXZ1145*#

10)3:*43)=J,3)5,31#- 10)3:*43)=J,3)5,31#u3#+

!aAnalysis)ontext

:55)P*,+W5*+43#5(:3#3:3R5&3((5+W5*+43#5(:3#3:3R5&5*#9*,+3#5((Q#+52 1)D5, 

F enumerationGOptimallity)riterionHind

'41<*4 *#*4=(3(

*##1)*)31#(

     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!AM= Example of Analysis )ontext !tereotype Applic.

F saAnalysis)ontextG sd !#/

p(*;#+>5#+U41Fqr5>5Ufs

pI*v1,l41*+Z5D*631,q par vZf

p *441H q*

x)1t (HD7fy

p *441H q*

x)1t HD>y

p *441H qH

x)1t (HD7>y

p *441H q<

x)1t HDfy

p(*v1,l41*+;65#)q:f

ref    p I*LH5#*,31 qZLf

 "441H*)31# )1

LHD5+Q4*<45

,5(1Q,H5(M43#l )1 04*)21,:

75(1Q,H5(O

K#)5,*H)31#

,50,5(5#)3#I

*# *#*4=(3(

H1#)5[)

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 216/243

>fa

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

p(*;#+>5#+U41Fqr5>5U>s

ZLf

ref    p I*LH5#*,31 qZL>

p(*v1,l41*+;65#)q:>

     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Example of lobal #e,elopment Process

+O0)A+

MO#E+

 

trol

structure

 interactions behaviour 

 

REL?0REME9T!

MO#E+

 

trol

use cases

trol

scenarios

PROTOT[PE

MO#E+

 

DDprofile DDprofile

components

 

activities

Lo!Lo!

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 217/243

>fb

   R  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

  A    A   T   -  A

P+AT"ORM

MO#E+

 software

!)-E#. 2 PER".

MO#E+

 

trolworkload

 allocation behaviour  

profile

!AM

p

-RM2!RM

components

hardwareP

30

1

8

377039

48 79

80 8352

33

P’Q’

49

7

9

5C6T Calc!lation

Lo!

Lo!

     B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

eneral Procedure to ?se the !AM Profile

v1,l41*+ Z5D*631,& + 4 MYK&O

 "##1)*)5+

Z5D*631,

%

4

V1#82Q#H)31#*4 6*4Q5( 21, (05H323H *#*4=(3( H1#)5[)(

6

W5(3I#YD*(5

 "#*4=(3(9114(

   "  #  *   4  =  (   3  (

   U   3   4  5 5

   W  5  (   3  I  #

   &  1   +  5   4  (

 /

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 218/243

>fd

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7 &1+54( MYK&OZ5D*631, 

&1+54(  L05H32=

Y*,*:5)5,3R5+

 "#*4=(3( J1#)5[)

&1+54 "##1)*)575(1Q,H5(

&1+54(

75(1Q,H5( Y4*)21,:&1+54( MYW&O

4 W5)5,:3#5W5(3,5+ VUY( 12

K#)5,5() MI365#

*#+ 0,5+3H)5+0*,*:5)5,(O

 "#*4=(3(J1#)5[)3

7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Example= A Teleoperated Robot

)lassesJiewKTeleoperatedRobot

,5*+ MO- W*)*F,3)5 MW- W*)*O

+*)*- K#)5I5, rw s

F pp?nitG

#isplay#ata

Q0+*)5W3(04*= MOQ0+*)5',*0D3H( MO

F rt?nit G

#isplayRefresher 

+3(04*=W*)*

0,1H5((;65#) MO04*#9,*~5H)1,= MO

F rt?nit G

)ommand0nterpreter 

+3(04*=W*)*

(5#+J1::*#+ MJ- J1::*#+O3)L) ) MO L) )

!tation)ommunication

(5#+L)*)Q( ML - L)*)Q(O3)J + MO J +

)ontroller)ommunication

H1:: H1::

#eploymentJiewKTeleoperatedRobot

!tation

)A9K@us

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 219/243

>fe

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7 *F*3)L)*)Q( MO- L)*)Q( *F*3)J1::*#+ MO- J1::*#+

,501,) MO

F rt?nit G

Reporter 

:*#*I5 MO

F rt?nit G

)ommandManager 

H1:: H1::

I5) MO- W*)*(5) MW- W*) *O

W*)*- K#)5I5, rws

F pp?nitG

!er,os#ata

H1#),14L5,61( MOH1#),14"4I1,3)D:( MO

+1J1#),14 MO

F rt?nitG

!er,os)ontroller 

(5,61(W*)*(5,61(W*)*

(5,61(W*)*

)ontroller    RobotArm^&;XZQ(

7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

F ga!cenarioG Report

-7501,)5, 

  p (*LD*,5+75( q-L5,61(W*)*

x 0,1)5H)u3#+t 0,31,3)=J5343#IS0,31,3)=tfa y

-J1#),J41Hl-J"VZQ(

pL*LD*,5+75(q-W3(04*=W*)*

x 0,1)5H)u3#+t 0,31,3)=J5343#IS

0,31,3)=t]f y

-J1#),1445,J1::   -L)*)31#J1:: -W3(04*=752,5(D5, 

p I*"HkL)50 q 41Hl MO

p (*L)50 q*F*3)L)*)Q( MOx 5[5H9t MgGg>>S gGg>>S :(O y

p (*L)50 q I5) MOx 5[5H9t MgGgg_S gGg>S :(O y

p (*L)50 q ,501,) MOx 5[5H9t MfGfS fG>>S :(O y

Example of Annotated !cenario with !AM

LD*,5+

75(1Q,H5

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 220/243

>>g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7

p (*L)50 q (5#+L)*)Q( MOx 5[5H9t MgGg]fS gGg]fS :(O y

p (*J1::L)50 q),*#(:3) MOx :(IL3R5tMfggS lZO y

p (*J1::L)50 q),*#(:3) MOx :(IL3R5tMfggS lZO y

p (*L)50 q),*#(:3)J1::*#+ MO

x 5[5H9t M>G`aS >G`aS :(O y

p I*754L)50 q Q#41Hl MO

p (*L)50 qQ0+*)5W3(04*= MOx 5[5H9t MgG>_S gG_S :(Oy

p(*L)50 q ,5*+ MO

p(*;[5HL)50q F,3)5 MO

p(*L)50qQ0+*)5(',*0D3H( MOx 5[5H9t M`S fgS :(Oy

L)50 M5[5HG

)3:5O

7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Example of Annotated Resources Model with !AM

F gaResourcesPlatformG

TeleoperatedRobot KPlatform

p (*;[5HP1() q- J1#),1445, 

x (055+U*H)1, t MfGgOH41Hl%6Dt MbS Q(S :5*(OH#)[)LF9t M̀ S Q(S :5*(O

KL7(F3)HD9t M>G̀ S Q(S :5*(O(HD5+Y,317*#I5 t MrgGG]gsS +5)5,:O

KL7Y,317*#I5t Mr]f ]fs +5)5,:O y

p (*J1::P1() q- J"VXZQ(

x ),*#(&1+5t P*428WQ045[

(055+U*H)1, t M’0,J"VO<41Hl9t MfffS Q(S :*[S :5*(O

0*Hl5)9t Ma_ Q( H*4HO y

p (*;[5HP1() q- L)*)31#

p (*;[5HP1() q- 71<1)",:

p (HD5+Q4*<4575( q

- W3(04*=752,5(D5,9*(lx 20 M0,31,3)=t >>O y

- ^&;XZQ(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 221/243

>>f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0   7 KL7Y,317*#I5t Mr]fGG]fsS +5)5,:O y0*Hl5)9t Ma_S Q(S H*4HO y

p (HD5+Q4*<4575( q

- J1::*#+&*#*I5, 

x 20 M0,31,3)=t faO y

p (HD5+Q45, q

- 79%LXLHD5+Q45, x (HD5+Y143H= t U3[5+Y,31,3)= y

p (HD5+Q4*<4575( q

- L5,61(J1#),1445,9*(l

x 20 M0,31,3)=t ]gO y

p (HD5+Q4*<4575( q

- 7501,)5, x 20 M0,31,3)=t >_O y

p (HD5+Q4*<4575( q

- J1#),1445,J1::x 20 M0,31,3)=t ]fO y

p (HD5+Q4*<4575( q

- &(~L)*)Q(x 20 M0,31,3)=t >_O y

p (HD5+Q4*<4575( q

- &(~J1::*#+x 20 M0,31,3)=t >_O y

9D,5*+( 1F#5+ <=

)D5 0,1H5((3#I

,5(1Q,H5

   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

p (*"#*4=(3(J1#)5[) q x 3(LHD5+t M’3(LHDS H*4HO y sd Analysis!cenario'/

p(*;#+>5#+U41Fqr7501,)Y,1H5((s

x (H DL4*HltM’(4*HlfS H*4HOS

5#+>5#+Wt MfggS :(OS5#+>5#+9t M’5>59fS H*4HO y

p(*;#+>5#+U41Fqr;[5HQ)5J1::*#+s

x (HDL4*HltM’(4*Hl>S H*4HOS

pI*v1,l41*+Z5D*631,q par V1,:*4&1+5

ref    p I*LH5#*,31 q7501,)

p*441Hq-7501,)5, 

x )1t 7501,)5,y

p*441Hq-J1#),1445,J1::

x )1t &( ~L)*)Q(y

p*441Hq-L)*)31#J1::

x )1t &(~J1::*#+y

p *441H q-W3(04*=752,5(D5, 

x )1t

W3(04*=752,5(D5,9*(ly

p*441Hq-&*#*I5, 

x )1t

J1::*#+&*#*I5,y

p*441Hq-L)*)31#J1::

x )1t

L5,61(J1#),1445,9*(ly

p(*v1,l41*+;65#)q

7501,)9,3II5, x 05,31+3H M 05,31+t MfggS :(OO y

Example of Analysis )ontext Model

;#+ 91 ;#+ U41F(

M5#+>5#+

+5*+43#5( *#+0,5+3H)5+ )3:5(O

v1,l41*+ Z5D*631, 

LH5#*,31 M,5(01#(5

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 222/243

>>>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2   0   0

x M S OS5#+>5#+Wt MfS (OS

5#+>5#+9t M’5>59>S H*4HO y

p(*;#+>5#+U41FqrJ1#),14L5,61(s

x (HDL4*HltM’(4*Hl]S H*4HOS5#+>5#+Wt M`S :(OS

5#+>5#+9t M’5>59]S H*4HO y

ref    p I*LH5#*,31 q

J1::*#+

ref  p I*LH5#*,31 qJ1#),14

p(*v1,l41*+;65#)q7501,)9,3II5, 

x 05,31+3H M05,31+t MfS (OO y

p(*v1,l41*+;65#)q7501,)9,3II5, 

x 05,31+3H M05,31+ t M`S :(OO y

v1,l41*+ ;65#)(M*,,36*4 0*))5,#(O

LH5#*,31 M,5(01#(5

)3:5(S D1()(

Q)343R*)31#mO

0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

p6*,q x+3,t 3#1Q) y 3(LHD5+XL=()5:- VUYXZ1145*#t 3(LHDL=(

p6*,q x+3,t 3#1Q) y FH5)X7501,)- VUYXWQ,*)31#t FH5)fp6*,q x+3,t 3#1Q) y 0,1H7*)5XJ"V- VUYX75*4t 0,J"Vp6*,q x+3,t 3#1Q) y 05,31+X7501,)- VUYXWQ,*)31#t 07

p(*"#*4=(3(J1#)5[)qx 3(LHD5+t M’3(LHDL=(O y

TeleoperatedRobot!AM

p I*v1,l41*+Z5D*631, q= 9ormalMode

p '*75(1Q,H5(Y4*)21,: q= TeleoperatedRobot KPlatform

Example of Parametric Analysis )ontext

K#()*#H5 12 *

v1,l41*+Z5D*631,

:1+54

J1#)5[) Q#+5, "#*4=(3(

L5#(3)363)= "#*4=(3(L3:045

L D + 4 <343)

J1#)5[)8(05H323H

6*,3*<45(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 223/243

>>]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0   0

3(LHD5+XL=()5:t M),Q5S ,5kOFH5)X7501,)t M`gS ’6fS :(S :*[S H*4HO0,1H7*)5XJ"Vt MgG>S ’6>S :3#S H*4HO05,31+X7501,)t MfgS ’6]S :(S :3#S H*4HO

p(*"#*4=(3(J1#)5[)qL5#(3)363)="#*4=(3( - 9545105,*)5+71<1)L"&

3(LHD5+XL=()5:t M),Q5S ’6gS H*4HOFH5)X7501,)t M`S :(S +5)5,:O0,1H7*)5XJ"Vt MfS +5)5,:O05,31+X7501,)t M]gS : (S +5)5,:O

p(*"#*4=(3(J1#)5[)qLHD5+Q4*<343)=- 9545105,*)5+71<1)L"&

H1#)5[)LHD5+Q4*<343)=

 "#*4=(3( H1#)5[)

0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

MARTE Tooling

)urrent 0mplementations supporting MARTE   UQ44 &"79; Y,12345 { /3<,*,35( 21, ;H430(5 .&/>

  ^L/ 5+3)31# *((3()*#) *#+ )=05 HD5Hl5, *( * ;H430(5 04QI83# 21, )D5 .&/

Y*0=,Q( )114 *#+ 7L" bGg

On8going work= ;H430(5 04QI83#( )1 ),*#(21,: .&/ :1+54( *##1)*)5+ F3)D )D5 L"& 0,12345

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 224/243

>>_

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0   0   ;H430(5 04QI 3#( )1 ),*#(21,: .&/ :1+54( *##1)*)5+ F3)D )D5 L"& 0,12345

)1 3#0Q) 2345( 12 &"L9S L=:9"ELS JD5++*, *#+ 7*03+7&" )114(

&"79; %05# L1Q,H5 K:045:5#)*)31# 3#

.&/ Y*0=,Q(- www.papyrusuml.org

KZ& 7L"= www.omgmarte.org

0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

)onclusions on MARTEIs Analysis

0ndustrial ?se of J2J can benefits from M#E   "#*4=(3( )*(l :Q() <5 H1D5(3654= 3#)5I,*)5+ F3)D W5(3I# )*(l(

  "0043H*)31# 12 3#+363+Q*4 *#*4=(3( )5HD#3kQ5( (D1Q4+ <5 ,5I*,+5+ *( *#

5((5#)3*4 0*,) 12 *# 3#)5I,*)5+ ^{^ :5)D1+141I=

Methodological support is still under way= J1:045[ *#*4=(3( (H5#*,31( 21, K#)5,2*H58Z*(5+ W5(3I# &Q4)31<~5H)365

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 225/243

>>`

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0   0   J1:045[ *#*4=(3( (H5#*,31( 21, K#)5,2*H5 Z*(5+ W5(3I#S &Q4)31<~5H)365

W5(3I# L0*H5 ;[041,*)31#m

  &5*#( )1 :*#*I5 VUY :5*(Q,5:5#) :1+54(   &5)D1+( )1 :*0E),*#(21,: &1JJ( 3#)1 *#*4=(3( :1+54(

   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Agenda

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3   9D5 )3:3#I :1+54

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

Y4 2 + 43

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 226/243

>>a

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0   Y4*)21,: :1+543#I

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I Part (

  &1+548<*(5+ *#*4=(3( 21, 79E; 

Part &

MARTE and AA#+

Part 7

  J1#H4Q(31#(

0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

AA#+ O,er,iew

AA#+ Architecture Analysis #escription +anguage

  ",HD3)5H)Q,5 W5(H,30)31# /*#IQ*I5 +5+3H*)5+ )1 79;L

  K#)5,#*)31#*4 ()*#+*,+ *) L"; M"L``gaS >gg_O

  "+*0)5+ 21, :*#= H,3)3H*4 H1:0Q)5, (=()5: +1:*3#   "Q)1:1)365S (0*H5S ,1<1)3H(S 3#+Q(),3*4 H1#),14S :5+3H*4S *631#3H(S m

  "441F (05H323H*)31#S *#*4=(3( *#+ *Q)1:*)5+ 3#)5I,*)31# 12 ,5*48)3:5 05,21,:*#H5H,3)3H*4 93:3#IS

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 227/243

>>b

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0   93:3#IS

  L*25)=S

  LHD5+Q4*<343)=S   U*Q4) )145,*#)S

  L5HQ,3)=S

  W3(),3<Q)5+ H1:0Q)3#I (=()5:(SmG

0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

hat does AA#+ look like :

 ' raphical representation

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 228/243

>>d

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0

 ' te)tual representation

0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

uidelines for modeling AA#+ application in MARTE

AA#+   L05H323H )1 (=#HD,1#1Q( +*)* 241F

*0043H*)31# :1+543#I *#+ *#*4=(3(

  "++,5(( +5)*345+ +5(3I# ()*I5(

  Z*(5+ 1# *# 3:043H3) 5[5HQ)31# 04*)21,::1+54

  (05H323H )D,5*+ 5[5HQ)31# *Q)1:*)*

  "0043H*)31#( *#+ 04*)21,: 5[5HQ)31#

(5:*#)3H( D*65 )1 <5 3# 43#5

MARTE   '5#5,3H 21, 75*4 )3:5 ;:<5++5+

L=()5: *0043H*)31# :1+543#I *#+*#*4=(3(

  "++,5(( 5*,4= *#+ +5)*345+ +5(3I#()*I5(

  J1:045:5#)*,= *#+ H1#(3()5#)635F( :*l5 )D5 :1+54 :1,5Q#+5,()*#+*<45

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 229/243

>>e

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   0

  /*Hl 12 #1#82Q#H)31#*4 0,105,)35( :1+54

3#)5I,*)31#

  Y4*)21,: 5[5HQ)31# :1+54 H*# <55[043H3)4= :1+543R5+

  UQ44 3#)5I,*)31# 12 #1#82Q#H)31#*40,105,)35( 3# )D5 :1+54 M93:5S05,21,:*#H5S (HD5+Q43#I25*)Q,5(mO

0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

AA#+ useful for. 

AA#+ Elements

L12)F*,5 H1:01#5#)(

P*,+F*,5 H1:01#5#)

 "441H*)31#

Architecture and designJ1:01#5#)( *#+ 3#)5,2*H5(S

H1##5H)31#(

W*)* *#+ H1#),14 241F(

7Q# )3:5 *,HD3)5H)Q,5

9on functional

aspects through

properties

specification

95:01,*4S (*25)=S

,543*<343)=Sm

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 230/243

>]g

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v

  e  m

     e  r

   2   

Y1,) *#+ H1##5H)31#(

U41F(&1+5(

Y, 105, )35( M5[)5#(3<45 4*#IQ*I5O

Analysis and ,erification

aspects

;#+8)185#+ 4*)5#H=

 "I5 12 (3I#*4 +*)* *#+ ~3))5, 

m

2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

"44 ) +Z3 +3

DFY,1H5((1,S DF&5:1,=SGGP*,+F*,5 H1:01#5#)(

:5:1,=Y*,)3)31#S FLHD5+Q4*<4575((1Q,H5SGL12)F*,5 H1:01#5#)(

&"79; H1#H50)( ""W/ H1#H50)(

MARTE8AA#+ concepts mapping

  U3,() ""W/ ‹ &"79; *43I#:5#) <*(5+ 1# ""W/ H1#(),QH)( *#+ 25*)Q,5( *#+

&"79; *,)32*H)(G

  V5[) ()50- W5505, :*0 ""W/ H1:01#5#) (5:*#)3H(S ""W/ 0,105,)35( *#+ 3:043H3)

 ""W/ 04*)21,: (5:*#)3H( 1# &"79; H1#H50)( M&"79; H1#H50)( 0,105,)35( *#+

VUYS ^L/ 4*#IQ*I5O

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 231/243

>]f

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2

.&/ ()*)5 :*HD3#5(&1+5(

V1) =5) +1HQ:5#)5+Y,105,)35(

.&/ 1<~5H) 241F(U41F (05H323H*)31#

.&/ +545I*)31#E*((5:<4= H1##5H)1,(Y1,) J1##5H)31#(

.&/ Y*,)(LQ<H1:01#5#)(

&"79; 241FY1,)(S .&/ ,5kQ3,5+E0,163+5+

3#)5,2*H5(m

 ""W/ 25*)Q,5(

 "441H*)5+Z3#+3#I

2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

AA#+ component BType and 0mplementationC

AA#+ )omponent Types   L05H3235( * 2Q#H)31#*4 3#)5,2*H5 3# )5,:( 12

25*)Q,5( M01,)(S 01,) I,1Q0(S 241F(05H323H*)31#(S (Q<H1:01#5#) *HH5((GGOS0,105,)35(

  .&/ 0*Hl*I5 H1#)*3#3#I ""W/ H1:01#5#)+5H4*,*)31#O

)omponent 0mplementation=

?M+ Reali;ation

  ""W/ J1:01#5#) K:045:5#)*)31#(   W5(H,3<5( )D5 3#)5,#*4 (),QH)Q,5 *#+ <5D*631, 12

)D*) H1:01#5#) 3# )5,:( 12 (Q<H1:01#5#)(SH1##5H)31#( *#+ 241F( *H,1(( )D5:S *#+<5D*631,*4 :1+5(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 232/243

>]>

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2

)omponent Extension =

?M+ enerali;ation

  ""W/ J1:01#5#) ;[)5#(31#   .&/ '5#5,*43R*)31#

<5D*631,*4 :1+5(

  .&/ 0*Hl*I5 H1#)*3#3#I ""W/ H1:01#5#)

3:045:5#)*)31#(   ""W/ 3:045:5#)*)31# 43l5+ )1 ""W/ +5H4*,*)31#

)D,1QID .&/ 75*43R*)31# 

2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

AA#+ !ystem and AA#+ !ubcomponents

AA#+ !ystem   750,5(5#)( * H1:01(3)5 (12)F*,5S 5[5HQ)31#

04*)21,: 1, (=()5: H1:01#5#)(

  750,5(5#)5+ <= * hL=(&/i <41Hl

!ystem Types

system li!ht #ystemdc o d e

  ""W/ LQ<H1:01#5#)(   ,50,5(5#)5+ <= .&/ 0*,)(

!ystem

 0mplementation

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 233/243

>]]

   R  e

   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   2

!ubcomponentsrelationships

system li!ht"#ystem

end li!ht"#ystem$

system implementation li!ht"#ystem&'eneric

subcomponents

#"()* + system ()*"#ystem&,ower,)"'4$

#"-., + system -av".utopilot"#ystem&,ower,)"'4$

/.- + bus /.-"us$ &

   e  n e

  r a  t e d  c

!ystem subcomponents

2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Re>uired data1bus access

  ""W/ ZQ( *#+ W*)* H1:01#5#)( *HH5((

Pro,ide data1ser,ice to other AA#+ components

Access re>uired from other AA#+ components

  K:045:5#)*)31# 0*,) -

  "HH5(( +5(3I# <= +545I*)31# E *((5:<4=H1##5H)1,(

  75(1Q,H5( :*= <5 (05H3*43R5+ F3)D ,5*4 )3:5

25*)Q,5( 1, *((1H3*)5+ )1 (5,63H5(

Access declaration

  W5H4*,*)31# 0*,) - Y,163+5E,5kQ3,5+ *HH5(( :1+545+

3# &"79; 63* 0,163+5+ E ,5kQ3,5+ .&/ K#)5,2*H

5(

de

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 234/243

>]_

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

   

Access connections

25*)Q,5( 1, *((1H3*)5+ )1 (5,63H5(

M(=#HD,1#3R*)31#S H1#HQ,,5#H= *HH5(( mO

 processor power,)

eatures

emus + reuires bus access emory"us$

ev"us + reuires bus access evice"us

nd ,ower,)$

 bus emory"us

end emory"us$

   e  n e  r a  t e

 d  c o d e

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Ports and )onnections

AA#+ Ports   U41F 01,)( *,5 ,50,5(5#)5+ <= &"79; U41F Y1,)(

system -av".utopilot"#ystemfeatures

.,"6o!!le + in event port$

.,",osition"*nput + in event data port -av"6ypes++,osition&',#$ m

AA#+ Port$ @us and Memory )onnections   ZQ(E+*)* *HH5(( +*)* *,5 ,50,5(5#)5+ <= .&/ H1##5H)1,(

<5)F55# )D5 01,) 0,163+3#I )D5 *HH5(( *#+ )D5 +563H5

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 235/243

>]`

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

"lows ports connections are represented by ?M+

connectors Bdelegation or assembly connectorsC

system implementation -av".utopilot"#ystem&,ower,)"'4 

mG

 bus access ev"us n!ine",")ontroller&)onnector"us$

&

data port ,"-av")on&n!ine",":utput n!ine",")ontroller&*nput $

 

   e  n e  r a  t e d  c o d e

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!ystem binding

AA#+ !ystem bindings

  ",5 ,50,5(5#)5+ <= &"79;

ƒƒ*441H*)31# ()5,51)=05+ .&/

W505#+5#H=

Execution platform

AA#+ @indings

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 236/243

>]a

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o  v  e  m

     e  r

!oftware Application

r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

!ubprogram call

!ubprogram

 ",5 ,50,5(5#)5+ <= %05,*)31#

!ubprogram calls

 ",5 ,50,5(5#)5+ )D,1QID .&/ &5((*I5( 1# (5k

Q5#H5

+3*I,*:(

 e  n e  r a  t e d  c o d e

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 237/243

>]b

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

     e  r

thread implementation :=X)D,5*+G3:04

calls x

23,()X(Q<0I, - subprogram :=X(Q<0,1I,*:„

(5H1#+X(Q<0I, - subprogram :=X(5H1#+X(Q<0,1I,*:„

  y

end :=X)D,5*+G3:04„

  

r   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Modes with MARTE guidelines

Mode transition modeli;ed by an ?M+ sta

machine

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 238/243

>]d

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

     e  r

#ifferent mode

configuration through)ollaboration diagrams

e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Properties

AA#+ Properties

  ",5 ,50,5(5#)5+ <= ƒƒ""W/ 0,105,)35(

()5,51)=05+ .&/ H1::5#)(

  v344 <5 *43I#5+ Q(3#I VUY(S ^L/ 4*#IQ*I5

*#+ &"79; H1#H50)( 0,105,)35(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 239/243

>]e

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

     e

e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

MARTE8AA#+ code generator 

  &"79; )1 ""W/ H1+5 I5#5,*)1, 3( *4,5*+= *6*34*<45

  Z,3+I5 <5)F55# &"79;E""W/ *#+ JD5++*, MLHD5+Q43#I *#*4=(3(O *4,5*+=

)5()5+  process implementation -av")ontrol",rocess&,ower,)"'4

subcomponents

6"',#"eader + thread ',#"#amplin!"6hread&,ower,)"'4 in modes ;',#"<,".,"<,= ',#"<,".,":>-?$

6".,")ompute + thread .utopilot")ompute"6hread&,ower,)"'4 in modes ;',#"<,".,"<,?$ 6".,",arams + thread

.utopilot"odify",arameters"6hread&,ower,)"'4$

".,"estination + data -av"6ypes++,osition&#imple$

".,".irspeed + data -av"6ypes++*nte!er$

".,".ltitude + data -av"6ypes++*nte!er$

connections

data port ',#",osition"*nput 6"',#"eader&,osition"*nput in modes ;',#"<,".,"<,= ',#"<,".,":>-?$

data port 6"',#"eader&,osition":utput ,osition":utput in modes ;',#"<,".,"<,= ',#"<,".,":>-?$

data port 6"',#"eader&,osition":utput 6".,")ompute&,osition"*nput i n modes ;',#"<,".,"<,?$

6".,")ompute&elta"oll":utput elta"oll":utput in modes ;',#"<,".,"<,?$

data port 6".,")ompute&elta"@aw":utput elta"@aw":utput in modes ;',#"<,".,"<,?$

data port 6".,")ompute&elta",itch":utput elta",itch":utput in modes ;',#"<,".,"<,?$

data port 6".,")ompute&n!ine",":utput n!ine",":utput in modes ;',#"<,".,"<,?$

t d t t ., , iti * t 6 ., , ., , iti * t d9  E  R A

  T  E  #

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 240/243

>_g

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

     e event data port .,",osition"*nput 6".,",arams&.,",osition"*nput$ modes

',#"<,".,":>- + i nitial mode$

',#"<,".,"<, + mode$

A*-*6*./": B AC-6 D A*-./":

',#"<,".,":>- B .,"6o!!le D ',#"<,".,"<,$

',#"<,".,":>- B ',#"rror D ',#":>-$

',#"<,".,"<, B ',#"rror D ',#":>-$

end -av")ontrol",rocess&,ower,)"'4$ m

 process implementation ()*",rocess&,ower,)"'4

subcomponents

6"#creen"isp + thread #creen"isplay"6hread&,ower,)"'4$

6",ilot"*nput + thread ,ilot"*nput"6hread&,ower,)"'4$

connections

event port 6",ilot"*nput&.,"6o!!le .,"6o!!le$

event data port 6",ilot"*nput&.,",osition":utput .,",osition":utput$

6",ilot"*nput&.,"6o!!le 6"#creen"isp&.,"6o!!le$

  )  O  #  E

     E

  9

e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Agenda

Part /

  K#),1+QH)31# )1 &WW 21, 79E; (=()5:( { &"79; 3# * #Q)(D544

Part %

  V1#82Q#H)31#*4 0,105,)35( :1+543#I

  %Q)43#5 12 )D5 ^*4Q5 L05H323H*)31# /*#IQ*I5 M^L/O

Part 3

  9D5 )3:3#I :1+54

Part 4

  " H1:01#5#) :1+54 21, 79E;

Part 5

  Y4*)21,: :1+543#I

P t 6

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 241/243

>_f

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

     e

Part 6

  7505)3)365 (),QH)Q,5 :1+543#I

Part (

  &1+548<*(5+ *#*4=(3( 21, 79E;

Part &

  &"79; *#+ ""W/

Part 7

)onclusions

e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

MARTE "rontiers and )hallenges

MARTE define the language constructs only<

  J1::1# 0*))5,#(S <*(5 <Q34+3#I <41Hl(S ()*#+*,+ VUY *##1)*)31#(

  '5#5,3H H1#(),*3#)( )D*) +1 #1) 21,H5 (05H323H 5[5HQ)31# :1+54(S *#*4=(3(

)5HD#3kQ5( 1, 3:045:5#)*)31# )5HD#141I35( 0t does not co,er methodologies aspects=

  K#)5,2*H58Z*(5+ W5(3I#S W5(3I# L0*H5 ;[041,*)31#

  &5*#( )1 :*#*I5 ,523#5:5#) 12 VUY :5*(Q,5:5#) :1+54(

  J1#H,5)5 0,1H5((5( )1 ()1,*I5S <3#+S *#+ +3(04*= VUY H1#)5[) :1+54(

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 242/243

>_>

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

     e 0 I S S 0 =

  &*003#I )1 ),*#(21,: &1JJ( 3#)1 *#*4=(3( :1+54(

MARTE is to the RTE! domain as ?M+ to the !ystem 2

!oftware domain= a family of large and open

specification formalisms<

  e  r

   2   0   0   7  

   B  e  r  s

   i  o  n

   C !   C

www.omgmarte.org

Related links

The official MARTE web site= www.omgmarte.org   9Q)1,3*4(S 565#)(S 0,1~5H)( ,54*)5+ *#+ )114(   %# 105# (1Q,H5 ;H430(5 04QI83# 21, .&/> I,*0D3H*4 :1+543#I   &"79; 3:045:5#)*)31# *6*34*<45 F3)D3# KZ& 7L" bGg

  K#H4Q+5+ )D5 ^L/ 5+3)1, 

www.papyrusuml.org   %# 105# (1Q,H5 ;H430(5 04QI83# 21, .&/> I,*0D3H*4 :1+543#I   &"79; 3:045:5#)*)31# *6*34*<45 F3)D3# )D5 ^fGd ,545*(5 12 )D5 )114

  "4,5*+= *6*34*<45 1#- https=11speedy.supelec.fr1Papyrus1s,n1Papyrus1extensions1MARTE1head1

8/22/2019 TutorialMARTE-Final Version1 1 0

http://slidepdf.com/reader/full/tutorialmarte-final-version1-1-0 243/243

>_]

   R

  e   ?  e  r  e  n  c  e

   @   A   R   T   E   T  u

   t  o  r   i  a

   l  

   N  o

  v  e  m

    https=11speedy.supelec.fr1Papyrus1s,n1Papyrus1extensions1MARTE1head1

 v1,l3#I 1#- https=11speedy.supelec.fr1Papyrus1s,n1Papyrus1core1...