MARTE, THE UML Standard Extension For Real-Time and Embedded Systems
MARTE, THE UML Standard Extension For Real-Time and Embedded Systems
Sbastien Grard (sebastien[dot]gerard[at]cea[dot]fr) CEA LIST, Laboratory of Mode !ri"en Engineering for E#bedded Syste#s (LISE), $o%te co&rrier '(, Gif s&r )"ette Cede*, +,-..-. +rance/ +ran0ois Terrier (francois[dot]terrier[at]cea[dot]fr) CEA LIST, Laboratory of Mode !ri"en Engineering for E#bedded Syste#s (LISE), $o%te co&rrier '( , Gif s&r )"ette Cede*, +,-..-. +rance/ $ran Se ic (se ic[at]ac#[dot]org) Ma ina Soft1are Cor2/, 3e2ean, 4ntario, Canada 5ierre $o& et (2ierre[dot]bo& et[at] if [dot]fr) LI+L, 6ni"ersit des Sciences et Tec7no ogies de Li e, Cit scientifi8&e, (-'(( 9i ene&"e d:Asc8, +rance
Introduction
T7e 4b;ect Manage#ent Gro&2 (4MG, 111/o#g/org) is one of t7e 2rinci2a internationa organi<ations 2ro#oting standards s&22orting t7e &sage of #ode ,based soft1are and syste#s de"e o2#ent/ T7e 6nified Mode ing Lang&age standard (6ML [.]) is 2robab y t7e #ost re2resentati"e of t7ese and 7as 7ad significant s&ccess in t7e soft1are ind&stry as 1e as in ot7er do#ains s&c7 as IT and financia syste#s/ 6ML is no1 t7e #ost 1ides2read ang&age &sed for #ode ing in bot7 ind&stry and acade#ia/ It 1as designed as bot7 a genera ,2&r2ose #ode ing ang&age as 1e as a fo&ndation for different do#ain,s2ecific ang&ages, &sing its 2rofi e #ec7anis#/ T7e atter ca2abi ity a o1s t7e genera conce2ts of 6ML to be s2ecia i<ed for a s2ecific do#ain or a22 ication/,T7e fie d of rea ,ti#e e#bedded soft1are syste#s is one s&c7 do#ain for 17ic7 e*tensions to 6ML are re8&ired to 2ro"ide #ore 2recise e*2ression of do#ain, s2ecific 27eno#ena (e/g/, #&t&a e*c &sion #ec7anis#s, conc&rrency, dead ines, and t7e i=e)/ T7e 4MG a ready 7ad iss&ed a 6ML 2rofi e for t7is 2&r2ose, ca ed t7e UML profile for Schedulability, Performance and Time (S5T, [>])/ It 2ro"ided conce2ts for dea ing 1it7 #ode , based sc7ed& abi ity ana ysis, foc&sed 2ri#ari y on rate #onotonic ana ysis, and a so conce2ts for #ode ,based 2erfor#ance ana ysis based on 8&e&ing t7eory/ In addition, S5T a so 2ro"ided a fra#e1or= for re2resenting ti#e and ti#e,re ated #ec7anis#s/ ?o1e"er, 2ractica e*2erience 1it7 S5T re"ea ed s7ortco#ings 1it7in t7e 2rofi e in ter#s of its e*2ressi"e 2o1er and f e*ibi ity/ +or e*a#2 e, it 1as necessary to s&22ort t7e design of bot7 7ard1are and soft1are as2ects of e#bedded syste#s and a #ore e*tensi"e s&22ort for sc7ed& abi ity and 2erfor#ance ana ysis, enco#2assing additiona tec7ni8&es s&c7 as 7ierarc7ica sc7ed& ing/ +&rt7er#ore, 17en t7e ne1 "ersion of 6ML, 6ML > 1as ado2ted, it beca#e necessary to &2grade t7e S5T 2rofi e/ Conse8&ent y, a ne1 @e8&est +or 5ro2osa s (@+5) 1as iss&ed by t7e 4MG see=ing a ne1 6ML 2rofi e for rea ,ti#e and e#bedded syste#s, na#ed MARTE (Modeling and Analysis of Real-Time and Embedded systems, [A])/ T7e intent 1as to address t7e abo"e iss&es as 1e as to 2ro"ide a ign#ent 1it7 t7e 6ML 2rofi e for B&a ity of Ser"ice and +a& t To erance (BoS C +T, [D]), 17ic7 enab es s2ecification of not on y rea ,ti#e constraints b&t a so ot7er e#bedded syste#s c7aracteristics, s&c7 as #e#ory ca2acity and 2o1er constion/ MA@TE 1as a so re8&ired to s&22ort #ode ing and ana ysis of co#2onent,based arc7itect&res, as 1e as a "ariety of different co#2&tationa 2aradig#s (async7rono&s, sync7rono&s, and ti#ed)/ To res2ond to t7is @+5, a tea# of 4MG #e#bers decided to de"e o2 a ;oint s&b#ission/ T7is consorti&#, ca ed t7e 5roMA@TE consorti&#, consisted of t7e fo o1ing enter2risesE A cate , A@TISA3 Soft1are Too s, Car eton 6ni"ersity, CEA LIST, ESE4, E3SIETA, +rance Te eco#, Internationa $&siness Mac7ines, I3@IA, I3SA fro# Lyon, Loc=7eed Martin, Mat7For=s, Mentor Gra27ics Cor2oration, 3oMagic, t7e Soft1are Engineering Instit&te (Carnegie,Me on 6ni"ersity), Softea#, Te e ogic A$, T7a es, Tri,5acific Soft1are, and 6ni"ersidad de Cantabria/ T7e res& ting
s&b#ission 1as "oted on and acce2ted by t7e 4MG in G&ne >HHI [(] as a J$eta S2ecificationK/ As 2rescribed by t7e 4MG:s 5o icies and 5roced&res #an&a (5C5, [']), fo o1ing ado2tion, a so, ca ed +ina i<ation Tas= +orce (+T+) 1as instit&ted to 2re2are t7e ne1 s2ecification for its for#a iss&e as an officia 4MG tec7no ogy reco##endation/ T7e +T+:s 1or=ing 2eriod is abo&t .L #ont7s and its first 27ase (aro&nd ' #ont7s) is a co##ent,gat7ering 27ase d&ring 17ic7 feedbac= fro# t7e broader &ser and "endor co##&nities is co ected/ 4f 2artic& ar significance is in2&t fro# co##ercia and ot7er too "endors intending to s&22ort t7e ne1 s2ecifications in t7eir 2rod&cts/ T7e second 27ase is t7en dedicated to so "ing t7e =ey iss&es identified in t7e initia 27ase res& ting in a $eta > "ersion of t7e s2ecification/ T7is "ersion is first screened by t7e 4MG:s arc7itect&re board and, if dee#ed acce2tab e, is s&b#itted to t7e 4MG:s board of t7e directors for fina a22ro"a / At t7at 2oint, t7e s2ecification beco#es for#a y a"ai ab e in its "ersion ./H/ In t7e case of MA@TE it is e*2ected t7at t7is 1i be a"ai ab e by t7e first 8&arter of >HH-/
T7e to2 2ac=age, 17ic7 is t7e fo&ndation on 17ic7 t7e rest of MA@TE is constr&cted, consists of fo&r basics sets of 6ML e*tensions (s&b,2rofi es)E %on-functional properties &% P' T7is s&b,2rofi e 2ro"ides #ode ing constr&cts for dec aring, 8&a ifying, and a22 ying se#antica y 1e ,for#ed non,f&nctiona as2ects of 6ML #ode s/ It is co#2 e#ented by t7e (alue Specification Language &(SL', 17ic7 is a te*t&a ang&age for s2ecifying a gebraic e*2ressions/ T7e 3+5 s&b,2rofi e s&22orts t7e dec aration of non,f&nctiona 2ro2erties as 6ML data ty2es, 17ereas 9SL is &sed to s2ecify t7e )alues of t7ose ty2es and t7eir 2otentia f&nctiona re ations7i2s/ Time T7is consists of conce2ts for defining ti#e in a22 ications, and a so for #ani2& ating t7e &nder ying ti#e re2resentation/ T7e Ti#e e*tension defined in MA@TE 2ro"ides s&22ort for t7ree 8&a itati"e y different #ode s of ti#eE chronometric, logical, and synchronous/ Resource &*RM' 4ne i#2ortant re8&ire#ent 1it7 regards to @TE syste# #ode ing is to re2resent t7e set of reso&rces &nder ying an a22 ication and a so 7o1 t7e syste# &ses t7e#/ T7e *RM (*eneric Resource Modeling) s&b,2rofi e consists of an onto ogy of reso&rces enab ing #ode ing of co##on co#2&ting 2 atfor#s (i/e/, a set of reso&rces on to2 of 17ic7 an a22 ication #ay be a ocated to be co#2&ted), and 7ig7 e"e conce2ts for s2ecifying reso&rce &sage/ T7e e"e of abstraction &sed 7ere is at a genera syste# e"e / Allocation modeling &Alloc' T7is s&b,2rofi e of t7e fo&ndationa ayer 2ro"ides a set of genera conce2ts 2ertaining to a ocation of f&nctiona ity to entities res2onsib e for its rea i<ation/ It #ay be eit7er ti#e,re ated a ocation (i/e/, sc7ed& ing) or s2ace a ocation/ It a so tac= es t7e #ore abstract iss&e of refine#ent bet1een #ode s at different e"e s of abstraction/ 3ote t7at non,f&nctiona c7aracteristics #ay be attac7ed to an a ocation descri2tion (e/g/, 17en s2ecifying t7e a ocation of a f&nction to a gi"en e*ec&tion engine, it is 2ossib e to s2ecify its 1orst case e*ec&tion ti#e)/ Starting fro# t7ese fo&ndationa conce2ts, MA@TE is t7en s2 it into t1o different categories of e*tensionsE 4ne (denoted in fig&re . as t7e JMA@TE design #ode K) is dedicated to s&22orting t7e acti"ities of t7e eft branc7 of t7e c assica J9K de"e o2#ent cyc e (i/e/, #ode ,based design ), 17ereas t7e ot7er (denoted by t7e JMA@TE ana ysis #ode K 2ac=age), 2ro"ides s&22ort for #ode , based ana ysis of @TE a22 ications (i/e/ #ore de"oted to t7e "a idation and o2ti#i<ation acti"ities)/ Mode ,based design of @TE syste#s 1it7 MA@TE 2roceeds #ost y in a dec arati"e 1ay/ ?ence, MA@TE &sers #ay annotate t7eir #ode s 1it7 rea ,ti#e or e#bedded concerns &sing t7e e*tensions defined 1it7in t7e +LAM &+igh-Le)el Application Modeling' s&b,2rofi e/ +or instance, conc&rrent co#2&ting &nits 1it7 rea ,ti#e feat&res #ay be denoted &sing an e*tension ca ed Mrt6nitN and, by gi"ing s2ecific "a &es to its 2ro2erties, t7ey can a so indicate 17at is t7e #ode of co#2&tation for t7e conc&rrent &nit/ 3ote a so t7at MA@TE enab es co#2onent,based syste# (eit7er soft1are or 7ard1are) engineering t7ro&g7 its s2ecific s&b,2rofi e, *,M &*eneric ,omponent Model'/ GCM s&22orts bot7 #essage, and data,based co##&nication sc7e#es bet1een co#2onents/ In addition, MA@TE a so defines "ery refined conce2ts t7at enab e &sers to describe its co#2&ting 2 atfor#s (eit7er soft1are or 7ard1are) in a "ery detai ed and 2recise #anner [I, L, -]/ As e*a#2 es, MA@TE inc &des in its anne*es faci ities for #ode ing 4SEO, A@I3C or 54SIP co#2 iant soft1are co#2&ting 2 atfor#s/ +ina y, to dea effecti"e y 1it7 t7e increasing degrees of 2ara e is# a"ai ab e on c7i2s, MA@TE 2ro"ides in an anne* t7e RSM &Repetiti)e Structure Modeling' s&b,2rofi e t7at enab es a co#2act re2resentation of #& tidi#ensiona reg& ar str&ct&res/ Mode ,based ana ysis &sing MA@TE is done &sing #ain y t7e e*tensions defined eit7er in t7e *eneric -uantitati)e Analysis Modeling 2rofi e &*-AM', or &sing one of its t1o refine#ents, dedicated res2ecti"e y to sc7ed& abi ity ana ysis and 2erfor#ance ana ysis/ T7e annotation #ec7anis# &sed in MA@TE to s&22ort #ode ,based ana yses &ses 6ML stereoty2es/ T7ese ty2ica y #a2 t7e 6ML #ode e e#ents of t7e a22 ication into corres2onding ana ysis do#ain conce2ts, and a so a o1 s2ecification of "a &es for 2ro2erties 17ic7 are needed to carry o&t t7e
ana yses/ +ina y, MA@TE fosters #ode 2rocessing in t7e 1ay t7at it enab es adding se#antics to a gi"en 6ML #ode (e/g/, for code 2rod&ction or 8&antitati"e ana ysis 2&r2oses)/ In t7is conte*t, one generic &sage of MA@TE enab es t7e #ode ,2rocessing sc7e#a described in +ig&re >/ 3ote t7at t7is 2rocess can be 7ig7 y a&to#ated, 17ic7, in so#e cases, can e"en e i#inate t7e need for ana ysis do#ain e*2erts 17ic7 are often diffic& t to obtain/
Future
At t7e ti#e of t7is 1riting, MA@TE is a"ai ab e in its $eta > "ersion on t7e 4MG 1eb site (111/o#g/org)/ In Marc7 >HH-, it s7o& d be a"ai ab e in its "ersion ./H after 17ic7 t7e 4MG 1i start s&ccessi"e #inor re"ision cyc es ( asting .L #ont7s on t7e a"erage), eac7 one re2resenting a ne1 JdotK re ease/ T7e 2&r2ose of a re"ision tas= force is to reco##end c7anges t7at c arify co#2 e* or conf&sing te*t in t7e s2ec, or #a=e re"isions t7at correct errors/ 3ote, 7o1e"er, t7at t7ese re"isions cannot add ne1 ca2abi ities or en7ance#ents to t7e 2rofi e/ +or t7at, t7e 4MG needs to iss&e a ne1 @+5/ MA@TE 7as a ready been a22 ied e*tensi"e y in 2ractice bot7 by ind&stry and acade#ia as indicated by t7e ist of ongoing 2ro;ect t7at 2&t MA@TE in t7e center of t7eir concerns (cf/ t7e 4MG 1eb site dedicate to MA@TE, 111/o#g#arte/org)/
!esign Lang&ages (+!L) >HHI, $arce ona, S2ain, Se2te#ber >HHI/ [L] S/ Ta7a, A/ @ader#ac7er, S/ Gerard, and G/,L/ !e=ey<er, An 42en +ra#e1or= for ?ard1are !etai ed Mode ing, In IEEE 5roceedings of SIES:>HHI, IS$3 .,A>AA,HLAH,I, Lisbon, 5ort&ga , G& y >HHI/ [-] S/ Ta7a, A/ @ader#ac7er, S/Gerard, and G/,L/ !e=ey<er, MA@TEE 6ML,based ?ard1are !esign fro# Mode ing to Si#& ation, In 5roceedings of t7e Internationa Conference +or&# on S2ecification and !esign Lang&ages (+!L) >HHI, $arce ona, S2ain, Se2te#ber >HHI/