Sie sind auf Seite 1von 235

Pr|x : 2S

Codo d|tour : C8S006


ISN : 978-2-212-8S006-2
yro||os 2009




Le nouveau |angage oe mooe||sat|on SysNL, recemment aoopte par
|'ONG, est oeo|e |a prob|emat|que oe |a concept|on oe systmes com-
p|exes (sate|||tes, av|ons, etc.).
Cet ouvrage |ntroouct| -- |e prem|er en rana|s sur |e sujet -- exp|ore
|'ensemb|e oes o|agrammes SysNL pour en a|re oecouvr|r |a r|chesse et
|es atouts. 1rs |||ustre, |e ||vre propose b|en p|us qu'une s|mp|e enume-
rat|on oe concepts : || transmet une oemarche coherente o'ut|||sat|on oe
II
bjectifs du Iivre
L'ingnicric systmc cst unc dmarchc mthodologiquc gnralc qui cnglobc l'cnscmblc
dcs activits adquatcs pour conccvoir, fairc volucr ct vrificr un systmc apportant unc
solution conomiquc ct pcrformantc aux bcsoins d'un clicnt tout cn satisfaisant
l'cnscmblc dcs partics prcnantcs. cpuis longtcmps, lcs ingnicurs systmc ont utilis dcs
tcchniqucs dc modlisation. Parmi lcs plus connucs, on trouvc SAT ct SA/RT, qui
datcnt dcs anncs 80, ainsi quc dc nombrcuscs approchcs bascs sur lcs rscaux dc Ptri
ou lcs machincs a tats finis. Mais ccs tcchniqucs sont limitcs par lcur portc ct lcur
cxprcssivit ainsi quc par la difficult dc lcur intgration avcc d'autrcs formalismcs, ainsi
qu'avcc lcs cxigcnccs systmc.
L'cssor d'UML dans lc domainc du logicicl ct l'cffort industricl dc dvcloppcmcnt
d'outils qui l'accompagnc ont naturcllcmcnt conduit a cnvisagcr son utilisation cn ing
nicric systmc. Ccpcndant, du fait dc sa conccption fortcmcnt guidc par lcs bcsoins du
passagc a la programmation par objcts, lc langagc tait, tout au moins dans scs prcmircs
vcrsions, pcu adapt a la modlisation dcs systmcs complcxcs ct donc au support dc
l'ingnicric systmc (IS).
Avant-propos
III
La vcrsion 2 d'UML, officialisc cn 2005, a introduit plusicurs nouvcaux conccpts ct dia
grammcs utilcs pour l'IS. n particulicr, lc diagrammc dc structurc compositc avcc lcs
conccpts dc classc structurc, partic, port ct conncctcur, pcrmct maintcnant dc dcrirc
l'intcrconncxion statiquc dcs partics d'un systmc complcxc. Lcs avanccs du diagrammc
dc squcncc pcrmcttcnt galcmcnt dc dcrirc dcs scnarios d'intcraction dc faon dcsccn
dantc cn ajoutant progrcssivcmcnt dcs nivcaux d'architccturc. Mais il rcstait toujours la
barrirc psychologiquc du vocabulairc oricnt informatiquc : classc, objct, hritagc, ctc.
La communaut dc l'IS a voulu dfinir un langagc commun dc modlisation pour lcs
ingnicurs systmc, adapt a lcur problmatiquc, commc UML l'cst dcvcnu pour lcs
informaticicns. Cc nouvcau langagc, nomm SysML, cst fortcmcnt inspir dc la
vcrsion 2 d'UML, mais ajoutc la possibilit dc rcprscntcr lcs cxigcnccs du systmc, lcs
lmcnts nonlogicicls (mcaniquc, hydrauliquc, captcur.), lcs quations physiqucs, lcs
flux continus (matirc, ncrgic, ctc.) ct lcs allocations.
La vcrsion 1.0 du nouvcau langagc dc modlisation SysML a t adoptc officicllcmcnt
par l'MG lc 19 scptcmbrc 2007 ! Il n'cst donc pas tonnant quc la littraturc sur lc sujct
soit balbutiantc ct qu'il n'cxistc pas cncorc dc livrc cn franais sur lc sujct.
Mon ambition dans cct ouvragc introductif cst donc dc vous fairc dcouvrir cc nouvcau
langagc dc modlisation pour l'ingnicric systmc. Fort dc mon pass dc consultant cn
modlisation dans lcs domaincs aronautiquc ct spatial, dc ma pratiquc pdagogiquc cn
tant quc formatcur UML ct SysML, ainsi quc dc mon cxpricncc d'autcur sur UML
(plus dc 40 000 cxcmplaircs vcndus), j'csprc parvcnir a vous fairc apprcicr la richcssc ct
lcs atouts dc SysML.
Cc livrc s'adrcssc avant tout aux profcssionncls dc l'ingnicric systmc, c'cst a dirc a tous
ccux qui ont cn chargc dcs systmcs complcxcs, incluant du logicicl ct du matricl, quc cc
soit dans l'aronautiquc, l'astronautiquc, l'automobilc, l'ncrgic, lc transport, l'armcmcnt,
IV
ctc. Il cst clair qu'unc connaissancc pralablc du langagc dc modlisation UML cst un
atout supplmcntairc pour bicn saisir toutcs lcs subtilits dc SysML, mais ccla n'cst abso
lumcnt pas un prrcquis.
5tructure de I'ouvrage
Aprs unc brvc introduction sur la problmatiquc dc l'ingnicric systmc, jc dtaillcrai
l'historiquc du langagc SysML ct sa filiation avcc UML. Jc prscntcrai cnsuitc lcs prin
cipcs du proccssus dc modlisation appliqu dans lc livrc.
La partic I dc l'ouvragc conccrnc la modlisation dcs cxigcnccs. Nous vcrrons quc SysML
innovc cn proposant un diagrammc pcrmcttant dc dcssincr graphiqucmcnt lcs cxigcnccs
systmc ct surtout dc lcs rclicr aux lmcnts structurcls ou dynamiqucs dc la modlisa
tion, ainsi qu'a d'autrcs cxigcnccs dc nivcau soussystmc ou quipcmcnt. Nous apprcn
drons galcmcnt a mcttrc cn ouvrc la tcchniquc dcs cas d'utilisation, dja prscntc cn
UML, au nivcau systmc. Nous vcrrons cnfin unc prcmirc application du diagrammc dc
squcncc pour dcrirc lcs intcractions cntrc lcs actcurs ct lc systmc boitc noirc .
La partic II conccrnc la modlisation structurcllc. Nous apprcndrons a utiliscr lc conccpt
univcrscl dc bloc propos par SysML pour modliscr tout lmcnt structurcl, ainsi quc
lcs dcux typcs dc diagrammcs associs. Nous vcrrons tout d'abord commcnt dfinir lcs
lmcnts structurcls dc basc dc notrc modlc dans lc diagrammc dc dfinition dc blocs.
Nous apprcndrons cnsuitc a dcrirc la dcomposition dcs lmcnts complcxcs avcc lc dia
grammc intcrnc dc bloc. Nous vcrrons cnfin commcnt structurcr notrc modlc cn pac-
kages, a dcs fins dc travail cn quipc ou dc rutilisation.
V
La partic III conccrnc la modlisation dynamiquc. Nous vcrrons toutc la puissancc du
diagrammc d'tats, pour modliscr lc cyclc dc vic dcs lmcnts a dynamiquc prdomi
nantc, ainsi quc ccllc du diagrammc d'activit, qui pcrmct dc modliscr avcc prcision dcs
algorithmcs complcxcs.
La partic I\ conccrnc la modlisation transvcrsc. SysML pcrmct dc dcrirc dcs quations
grcc au nouvcau diagrammc paramtriquc. Nous vcrrons galcmcnt commcnt dcrirc
plusicurs typcs dc licns dc traabilit cntrc lmcnts dc modlisation, ct cn particulicr
commcnt mcttrc cn ouvrc lc conccpt fondamcntal d'allocation.
Unc prcmirc anncxc rcapitulc lcs acronymcs ct lcs dfinitions. Unc sccondc anncxc pr
scntc d'autrcs diagrammcs dc l'tudc dc cas raliss avcc dcs outils dc modlisation
diffrcnts : Enterprise rchitect, Topcased ct rtisan Studio.
kemerciemeots
Cct ouvragc n'aurait jamais vu lc jour sans lcs cncouragcmcnts ct lcs rctours motivants dcs
lcctcurs dc mcs livrcs sur UML, mais aussi dcs nombrcux stagiaircs dcs cours SysML quc
jc donnc dcpuis plus dc dcux ans dja ! Ils m'ont donn l'ncrgic ct l'cnvic dc partagcr unc
fois cncorc mcs connaissanccs ct mon cxpricncc a travcrs cc support quc j'apprcic tant.
Mcrci a mcs rclcctcurs tcchniqucs pour lcurs judicicuscs rcmarqucs :
Tony Cornuaud (ingnicur cn informatiquc, vanglistc SysML chcz Magncti Marclli
a Chtcllcrault) ,
Christophc Surdicux (ancicn dc \altcch, maintcnant chcz Altran, ccrtifi sur lc cours
MSY quc j'ai cr a \altcch Training) ,
VI
livicr Cassc (cxpcrt cn langagcs ct outils dc modlisation dc systmcs cmbarqus,
ancicn d'ILogix/Tclclogic).
Mcrci a la socit NoMagic dc m'avoir fourni unc liccncc dc l'outil Magicraw UML
(www.magicdraw.com) avcc son plugin SysML quc jc trouvc cxccllcnt, ct grcc auqucl j'ai
ralis la majcurc partic dcs diagrammcs du livrc.
Mcrci a mon cmploycur, la socit Artal ct sa nouvcllc filialc dc conscil A2 (Artal Inno
vation), dc m'avoir accord lc tcmps nccssairc a la rdaction dc cct ouvragc dans lc cadrc
dc mon activit dc R&.
Mcrci aussi a ric Sulpicc ct Muricl Shan Sci Fan dcs ditions yrollcs pour lcur tmoi
gnagc rcnouvcl dc confiancc ct lcur proposition dc tcstcr un nouvcau format pour cc
livrc introductif a SysML. Un grand bravo galcmcnt a l'quipc dcs ditriccs qui a con
tribu notablcmcnt a la russitc dc cc projct.
nfin, commcnt nc pas tcrmincr par un clin d'oil affcctucux a ccllc qui partagc ma vic
dcpuis maintcnant plus dc six ans, ct dont l'ncrgic m'aidc a avanccr. Mcrci a Sylvic, la
fcmmc qui m'accompagnc...
Pascal Roqucs, fvricr 2009
Consultant scnior A2 (Artal Innovation)
pascal.roquesa2arlal.r
blog : cousullauls.a2arlal. r/proques
VII
AVAN1-kOOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . II
IN1kODUC1ION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
rob|matique de |'ingnierie systme 2
Les normes d'|S !
|LLL ! 220 . Standard ror Appllcatlon and Management or tbe Systems Lnglneerlng rocess, !999 4
L|A 6!2 . rocesses ror Lnglneerlng a System, !998
|SO ! 288 . Systems englneerlng - System llre cycle processes, 200! 6
ourquol SysML : 8
La modllsatlon 8
SAU1, SA}k1, etc. 9
UML !0
Lacunes d'UML pour l'|S !2
SysML !4
Organisation du |ivre 19
l'tude de cas du |ivre 21
remlre partle
la mod|isation des exigences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
1. ll DIAGkAMMl D'lXIGlNClS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Notation de base 24
Comp|ments 29
1raabi|it 11
1ab|e des matires
VIII
2. ll DIAGkAMMl Dl CAS D'U1IlISA1ION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Notation de base 1s
Dcrire |es cas d'uti|isation 40
Comp|ments 41
Classlrlcatlon des acteurs 4!
kelatlons entre cas d'utlllsatlon 4!
1. ll DIAGkAMMl Dl SlQUlNCl SYS1lMl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Notation de base 49
Diagramme de squence systme s1
Comp|ments s2
|ragments comblns 2
Cadre rrrence 4
Contralntes temporelles 6
Ueuxlme partle
la mod|isation d'arcbitecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .s8
4. DIAGkAMMl Dl DlIINI1ION Dl 8lOCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . s9
8|oc et proprit 0
value1ype 6!
artie s
Composition
Agrgation 1
Association 9
Gnra|isation 12
Opration 1s
ltude de cas 1
s. ll DIAGkAMMl Dl 8lOC IN1lkNl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
arties et connecteurs 81
artles et rrrences 82
IX
Connecteur 84
orts et interfaces 89
1ypes de ports 89
|low ports 90
|tem rlow 92
|low speclrlcatlon 94
|nterrace 9
ort standard 98
ltude de cas 99
. ll DIAGkAMMl Dl ACkAGlS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
ackage 101
Contenance et dpendance 109
Contenance !09
Upendance !!0
Mode|, view et viewpoint 111
ltude de cas 114
1rolslme partle
la mod|isation dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1. ll DIAGkAMMl D'l1A1S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .111
Notation de base 118
Comp|ments 121
Lvnement lnterne ou temporel !2!
Ltat composlte !2
Autres notatlons avances !!2
Anlmatlon du dlagramme d'tats !!7
8. ll DIAGkAMMl D'AC1IVI1l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119
Notation de base 140
Object node, object f|ow 148
X
Comp|ments 1s1
Appel d'actlvlt !!
Slgnaux et vnements !!
kglon lnterruptlble !4
kglon d'expanslon !6
Complments sur les rlots d'objet !7
Oprateur de contrle !9
ltude de cas 10
Quatrlme partle
la mod|isation transverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
9. ll DIAGkAMMl AkAMl1kIQUl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1s
Notation de base 1
Comp|ments 110
10. AllOCA1ION l1 1kAA8IlI1l. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .112
le concept d'a||ocation 111
les diffrentes reprsentations 114
Ulagramme de drlnltlon de blocs (bdd) !74
Ulagramme d'actlvlt !76
keprsentatlon tabulalre !78
Ulagramme de bloc lnterne (lbd) !80
Ulagramme de squence !82
A. ACkONYMlS l1 DlIINI1IONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .184
Acronymes 18s
Dfinitions 18
8. DIAGkAMMlS lA, 1OCASlD l1 Ak1ISAN S1UDIO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191
1opCased 194
lnterprise Arcbitect (lA) 202
Artisan Studio (encore merci O|ivier Casse !) 209
Introduction
ans cc chapitrc introductif, nous dvoilons lcs objcctifs ct
l'historiquc du nouvcau langagc dc modlisation SysML. Aprs
un tour rapidc dc la problmatiquc dc l'ingnicric systmc ct dcs
diffrcntcs normcs cxistantcs sur lc sujct, nous cxpliquons
pourquoi l'MG a dcid dc dfinir un nouvcau langagc dc
modlisation. Nous prscntons galcmcnt rapidcmcnt lcs
diffrcnts diagrammcs SysML qui scront dtaills dans la suitc
du livrc.
Ihghierie sysIme (IS)
modlisaIioh
UML
SysML
2
ProbImatique de I'iogoierie systme
L'ingnicric systmc (IS) cst unc dmarchc mthodologiquc pour maitriscr la conccption
dcs systmcs ct produits complcxcs. n pcut aussi la dfinir commc unc approchc
intcrdisciplinairc rasscmblant tous lcs cfforts tcchniqucs pour fairc volucr ct vrificr un
cnscmblc intgr dc systmcs, dc gcns, dc produits ct dc solutions dc proccssus dc
manirc quilibrc au fil du cyclc dc vic pour satisfairc aux bcsoins clicnt . Lcs pratiqucs
dc ccttc dmarchc sont aujourd'hui rpcrtorics dans dcs normcs, raliscs a l'aidc dc
mthodcs ct supportcs par dcs outils.
8.A .-8A Systme
Uh sysIme esI uh ehsemble de composahIs ihIerrelis qui ihIeragissehI les uhs avec les auIres d'uhe
mahire orgahise pour accomplir uhe IihaliI commuhe (NASA 1995).
Uh sysIme esI uh ehsemble ihIgr d'lmehIs qui accomplissehI uh objecIiI dIihi (INCOSF 2OO4).
Figure 1
Les processus, ulhodes
el oulils
3
Lcs normcs d'IS dcrivcnt lcs pratiqucs du mticr cn tcrmcs dc proccssus ct d'activits dc
manirc invariantc par rapport aux domaincs d'application dc l'ingnicric systmc. Lcs
mthodcs d'ingnicric systmc fournisscnt dcs dmarchcs tcchniqucs pour raliscr ccs
activits gnralcs. Contraircmcnt aux normcs, cllcs dpcndcnt dcs scctcurs d'application
ct rsultcnt dc choix industricls. La misc cn ouvrc dcs proccssus ct dcs mthodcs cst
assistc par dcs outils, aujourd'hui trs gnralcmcnt informatiss.
Les oormes d'I5
Trois normcs gnralcs d'ingnicric systmc dcrivant lcs proccssus du mticr d'IS sont
actucllcmcnt disponiblcs. llcs cn dfinisscnt lcs typcs d'activit a raliscr ct lcs typcs dc
rsultat produit. llcs rccouvrcnt dcs champs diffrcnts, dc manirc d'autant plus appro
fondic quc lcur champ cst limit, ct ainsi cllcs sc compltcnt.
I 1 220 : Standard for pplication and Management of the Systems Engineering Pro-
cess
IA 632 : Processes for Engineering a System
IS 15 288 : Systems engineering System life cycle processes
k | F| k| N C | A FIS
L'AssociaIioh Irahaise d'ihghierie sysIme (APIS) vise a promouvoir l'ihghierie sysIme par la pr-
sehIaIioh eI l'explicaIioh de ses prihcipes eI de soh approche mulIidisciplihaire eh vue de la ralisa-
Iioh de sysImes complexes russis. Nous hous sommes beaucoup ihspirs des IexIes eI images pr-
sehIs sur soh siIe pour ce sous-chapiIre.
www.ais.r
4
I 1 220 : 5taodard for AppIicatioo aod Haoagemeot of the 5ystems
ogioeeriog Process, 1999
Issuc du standard militairc MIL ST 4998, ccttc normc dc l'I, dont la vcrsion ini
tialc datc dc 1994, sc focalisc sur lcs proccssus tcchniqucs d'ingnicric systmc allant dc
l'analysc dcs cxigcnccs jusqu'a la dfinition physiquc du systmc.
Figure 2
Les processus
selou |EEE 1220
5
Lcs trois proccssus d'analysc dcs cxigcnccs, d'analysc fonctionncllc ct allocation ct dc
synthsc, fincmcnt dtaills, comprcnncnt chacun lcur sousproccssus dc vrification ou
dc validation.
Lc proccssus d'analysc systmc a pour but d'analyscr dans un cadrc pluridisciplinairc lcs
problmcs (conflits d'cxigcnccs ou solutions altcrnativcs) issus dcs proccssus principaux
afin dc prparcr lcs dcisions.
Lc proccssus dc maitrisc dc l'IS (control) conccrnc tout particulircmcnt la gcstion tcch
niquc dc l'ingnicric systmc ct la maitrisc dc l'information tant du systmc quc du
projct.
IA 632 : Processes for ogioeeriog a 5ystem, 1998
Ccttc normc dc l'IA compltc lcs proccssus tcchniqucs dc dfinition du systmc cn cou
vrant la ralisation dcs produits jusqu'a lcur misc cn scrvicc (transfcrt vcrs l'utilisation).
c plus, cllc incorporc lcs proccssus contractucls d'acquisition ct dc fourniturc.
Proccssus tcchniqucs ct proccssus contractucls sont cncadrs :
par lcs proccssus dc managcmcnt (sclon lcur formc traditionncllc avcc lcs trois sous
proccssus dc planification, valuation, pilotagc) ,
ct par lcs proccssus d'valuation dcs rsultats dcs activits (proccssus dc vrification
s'assurant quc l'activit a t bicn faitc, proccssus dc validation s'assurant quc lc rsul
tat rpond au bcsoin, lcs dcux justifiant dc la conformit, ct proccssus d'analysc sys
tmc justifiant dcs choix raliss tout au long dc la dfinition ct donc dc l'optimisation
du systmc).
6
I5 15 288 : 5ystems eogioeeriog - 5ystem Iife cycIe processes, 2003
Inspirc sur lc plan dc la formc par la normc IS/CI 12 207 AFNR Z67 150
(Typologic dcs proccssus du cyclc dc vic du logicicl), ccttc normc dc l'IS tcnd lcs pro
ccssus tcchniqucs a tout lc cyclc dc vic du systmc (cllc couvrc ainsi lcs proccssus d'cxploi
tation, dc mainticn cn condition oprationncllc ct dc rctrait dc scrvicc).
Figure 3
Les processus selou E|^ 632
7
La normc s'appliquc a l'ingnicric dcs systmcs contributcurs qui ont lcur proprc cyclc dc
vic (systmcs dc fabrication, dc dploicmcnt, dc souticn logistiquc, dc rctrait dc scrvicc) :
quc l'on songc par cxcmplc a l'ingnicric dcs systmcs dc dmantlcmcnt ct dc traitcmcnt
dcs dchcts d'unc installation nuclairc.
llc compltc lcs proccssus s'appliquant aux projcts par dcs proccssus, dits d'cntrcprisc,
qui ont pour objcctif dc dvcloppcr lc potcnticl dc l'organismc d'IS cn grant lcs
domaincs communs au profit dcs projcts d'IS.
Figure 4
Les processus
selou |S0 1S 288
8
Pourquoi 5ysHL !
La modIisatioo
L'ingnicric systmc cst unc dmarchc mthodologiquc gnralc qui cnglobc l'cnscmblc
dcs activits adquatcs pour conccvoir, fairc volucr ct vrificr un systmc apportant unc
solution conomiquc ct pcrformantc aux bcsoins d'un clicnt tout cn satisfaisant
l'cnscmblc dcs partics prcnantcs.
La transformation d'un bcsoin mcrgcant cn la dfinition d'un systmc lui apportant unc
solution mct cn ouvrc dc multiplcs activits intcllcctucllcs faisant passcr progrcssivcmcnt
dc conccpts abstraits a la dfinition rigourcusc dc produits. Il cst nccssairc dc s'appuycr
sur dcs rcprscntations tant du problmc quc dc scs solutions possiblcs a diffrcnts
nivcaux d'abstraction pour apprhcndcr, conccptualiscr, conccvoir, cstimcr, simulcr,
validcr, justificr dcs choix, communiqucr. C'cst lc rlc dc la modlisation !
Lcs mticrs mis cn ouvrc cn IS ont, dc tous tcmps, utilis dcs modlcs allant dc rcprscn
tations dcs plus concrtcs, tcllcs quc lcs plans ou modlcs rduits, aux plus abstraitcs,
tcllcs quc lcs systmcs d'quations.
AI I| N II0 N u'est- ce qu'un bcn mcdIe ?
A esI uh boh modle de B si A permeI de rpohdre de Iaoh saIisIaisahIe a des quesIiohs prdIihies
sur B (d'aprs 0.T. Ross). Uh boh modle doiI dohc Ire cohsIruiI :
au boh hiveau de dIail ,
seloh le boh poihI de vue.
Pehsez a l'ahalogie de la carIe rouIire. Pour circuler dahs Toulouse, la carIe de Prahce seraiI de peu
d'uIiliI. Par cohIre, pour aller de Toulouse a Paris, la carIe de la PauIe-Carohhe he suIIiI pas.
chaque voyage correspohd la bohhe carIe !
9
5A0I, 5A/kI, etc.
cpuis longtcmps, lcs ingnicurs systmc ont utilis dcs tcchniqucs dc modlisation.
Parmi lcs plus connucs, on trouvc SAT ct SA/RT, qui datcnt dcs anncs 80, ainsi quc
dc nombrcuscs approchcs bascs sur lcs rscaux dc Ptri ou lcs machincs a tats finis.
Ccs tcchniqucs sont limitcs par lcur portc ct lcur cxprcssivit ainsi quc par la difficult
dc lcur intgration avcc d'autrcs formalismcs, commc avcc lcs cxigcnccs systmc.
SAT ct SA, initialcmcnt utiliscs pour l'informatiquc dc gcstion, nc couvrcnt pas cn
standard lcs vucs dynamiqucs. C'cst pour ccla quc la socit \crilog (o j'ai travaill
commc consultant dc 1986 a 1995), avait ajout la possibilit dc dcrirc dcs diagrammcs
8.A .-8A SA I
SA0T = SIrucIured Ahalysis ahd 0esigh Techhic.
SA0T uIilise uh ehchahemehI graphique de boIes lmehIaires pouvahI Ire raIIihes de Iaoh
descehdahIe eh d'auIres modles SA0T (boiIes + IloIs). Les modles uIiliss peuvehI Ire des acIi-
grammes (les boIes sohI les IohcIiohs eI les IloIs sohI les dohhes) ou des daIagrammes (les boIes
sohI les dohhes eI les IloIs sohI les IrahsIormaIiohs).
8.A .-8A SA lk I
SA/RT = SIrucIured Ahalysis wiIh Real Time exIehsiohs.
L'ahalyse sIrucIure (SA) uIilise le diagramme de IloIs de dohhes (0P0) qui esI uh modle hirarchi-
que permeIIahI uhe approche descehdahIe par raIIihemehI.
L'exIehsioh Iemps-rel de SA (SA/RT), propose par exemple par Ward eI Mellor, esI base sur l'uIili-
saIioh d'uh 0P0 complI par uh diagramme de IloI de cohIrle (CP0) eh poihIills pour ajouIer
uhe smahIique d'excuIioh au diagramme. Fh eIIeI, uh 0P0 he permeI pas d'exprimer l'voluIioh
Iemporelle de l'excuIioh.
10
d'tats dans lcs fcuillcs dc l'arbrc fonctionncl SAT pour pouvoir fairc dc la simulation
(outil ASA). Mais l'implmcntation dc ccs cxtcnsions a SAT ou SA tait toujours
proprc a l'ditcur dc l'outil associ, donc non standardis.
HL
UML sc dfinit commc un langagc dc modlisation graphiquc ct tcxtucl dcstin a com
prcndrc ct dcrirc dcs bcsoins, spcificr ct documcntcr dcs systmcs, csquisscr dcs archi
tccturcs logicicllcs, conccvoir dcs solutions ct communiqucr dcs points dc vuc.
UML unific a la fois lcs notations ct lcs conccpts oricnts objct. Il nc s'agit pas d'unc
simplc notation graphiquc, car lcs conccpts transmis par un diagrammc ont unc sman
tiquc prcisc ct sont portcurs dc scns au mcmc titrc quc lcs mots d'un langagc.
UML 2 s'articulc autour dc trcizc typcs dc diagrammcs, chacun d'cux tant ddi a la
rcprscntation dcs conccpts particulicrs d'un systmc logicicl. Ccs typcs dc diagrammcs
sont rpartis par l'MG cn dcux grands groupcs :
six diagrammcs structurcls :
8.A .-8A 0 MC
OMC = ObjecI MahagemehI Croup.
L'OMC esI uh groupemehI d'ihdusIriels dohI l'objecIiI esI de sIahdardiser auIour des Iechhologies
objeI, aIih de garahIir l'ihIeroprabiliI des dveloppemehIs. L'OMC comprehd acIuellemehI plus
de 8OO membres, dohI les prihcipaux acIeurs de l'ihdusIrie ihIormaIique (Suh, IBM, eIc.), mais aussi
les plus grahdes ehIreprises uIilisaIrices dahs Ious les secIeurs d'acIiviI.
www.oug.org
11
1. diagrammc dc classcs (montrc lcs briqucs dc basc statiqucs : classcs, associations,
intcrfaccs, attributs, oprations, gnralisations, ctc.) ,
2. diagrammc d'objcts (montrc lcs instanccs dcs lmcnts structurcls ct lcurs licns a
l'cxcution) ,
3. diagrammc dc packagcs (montrc l'organisation logiquc du modlc ct lcs rclations
cntrc packagcs) ,
4. diagrammc dc structurc compositc (montrc l'organisation intcrnc d'un lmcnt sta
tiquc complcxc) ,
5. diagrammc dc composants (montrc dcs structurcs complcxcs, avcc lcurs intcrfaccs
fournics ct rcquiscs) ,
6. diagrammc dc dploicmcnt (montrc lc dploicmcnt physiquc dcs artifacts sur lcs
rcssourccs matricllcs) ,
scpt diagrammcs comportcmcntaux :
1. diagrammc dc cas d'utilisation (montrc lcs intcractions fonctionncllcs cntrc lcs
actcurs ct lc systmc a l'tudc) ,
2. diagrammc dc vuc d'cnscmblc dcs intcractions (fusionnc lcs diagrammcs d'activit
ct dc squcncc pour combincr dcs fragmcnts d'intcraction avcc dcs dcisions ct dcs
flots) ,
3. diagrammc dc squcncc (montrc la squcncc vcrticalc chronologiquc dcs mcssagcs
passs cntrc objcts au scin d'unc intcraction) ,
4. diagrammc dc communication (montrc la communication cntrc objcts dans lc plan
au scin d'unc intcraction) ,
5. diagrammc dc tcmps (fusionnc lcs diagrammcs d'tats ct dc squcncc pour montrcr
l'volution dc l'tat d'un objct au cours du tcmps) ,
12
6. diagrammc d'activit (montrc l'cnchaincmcnt dcs actions ct dcisions au scin d'unc
activit) ,
7. diagrammc d'tats (montrc lcs diffrcnts tats ct transitions possiblcs dcs objcts
d'unc classc).
Lacuoes d'HL pour I'I5
L'cssor d'UML dans lc domainc du logicicl ct l'cffort industricl dc dvcloppcmcnt
d'outils qui l'accompagnc ont naturcllcmcnt conduit a cnvisagcr son utilisation cn ing
nicric systmc. Ccpcndant, du fait dc sa conccption fortcmcnt guidc par lcs bcsoins du
Figure 5 Les 13 lypes de diagrauues uML 2
13
passagc a la programmation par objcts, lc langagc tait, tout au moins dans scs prcmircs
vcrsions, pcu adapt a la modlisation dcs systmcs complcxcs ct donc au support dc
l'ingnicric systmc.
Lcs nombrcuscs tcntativcs d'utilisation d'UML cn IS ont cn cffct montr quc ccrtaincs
faiblcsscs d'UML dcvaicnt ctrc comblcs pour cn fairc un langagc cfficacc pour lcs ing
nicurs systmc. n pcut citcr :
lc bcsoin dc dcrirc lcs cxigcnccs dircctcmcnt dans lc modlc, ct d'cn assurcr la traa
bilit vcrs l'architccturc ,
lc bcsoin dc rcprscntcr dcs lmcnts nonlogicicls ct d'cn spcificr lc typc (mcani
quc, circuit, hydrauliquc, cblagc, captcur, ctc.) ,
lc bcsoin dc rcprscntcr dcs quations physiqucs, dcs contraintcs ,
lc bcsoin dc rcprscntcr dcs flux continus (matirc, ncrgic, ctc.) ,
lc bcsoin dc rcprscntcr dcs allocations logiquc/physiquc, structurc/dynamiquc, ctc.
Quclqucs tcntativcs dc profils UML ont vu lc jour ccs dcrnircs anncs, commc SC ct
MART.
k | F| k| N C | MA k I |
MARTF = Modelihg ahd Ahalysis oI Real Time ahd Fmbedded sysIems.
MARTF esI le proIil UML 2 pour la modlisaIioh eI l'ahalyse des sysImes Iemps rel embarqus. Il
succde a UML ProIile Ior SchedulabiliIy, PerIormahce ahd Time. MARTF esI cohu de mahire a per-
meIIre l'uIilisaIioh de Iechhiques d'ahalyse quahIiIaIive varies. Uh des apporIs prihcipaux de
MARTF cohsisIe eh la dIihiIioh de mcahismes dcrivahI le Iemps Iels que les vhemehIs Iempo-
rels eI les horloges. Il supporIe aihsi Irois modles Iemporels diIIrehIs : le Iemps rel (chrohomIri-
que), le Iemps logique, eI le Iemps logique syhchrohe. MARTF propose aussi uh modle de descrip-
Iioh des plaIeIormes d'excuIioh, lmehI essehIiel des sysImes Iemps rels embarqus.
www.ouguarle.org
14
5ysHL
Lc mondc du logicicl a fini par sc mcttrc d'accord a la fin dcs anncs 90 sur un forma
lismc dc modlisation unifi : UML.Par contrc, dc lcur ct, lcs ingnicurs systmc n'ont
pas russi a fairc mcrgcr un langagc dc modlisation uniformis, malgr lcs tcntativcs dc
standardisation dcs proccssus d'ingnicric systmc voqucs prcdcmmcnt.
n 2003, l'INCS a dcid dc fairc d'UML cc langagc commun pour l'IS. UML con
tcnait cn cffct dja a l'poquc nombrc dc diagrammcs indispcnsablcs, commc lcs dia
grammcs dc squcncc, d'tats, dc cas d'utilisation, ctc. Lc travail sur la nouvcllc vcrsion
UML 2, cntam a l'MG a pcu prs a la mcmc priodc, a abouti a la dfinition d'un lan
gagc dc modlisation trs prochc du bcsoin dcs ingnicurs systmc, avcc lcs amliorations
notablcs aux diagrammcs d'activit ct dc squcncc, ainsi quc la misc au point du dia
grammc dc structurc compositc.
k | F| k| N C | System cn a C hip (ScC )
UML ProIile Ior SoC SpeciIicaIioh, OMC, versioh 1.O.1, Iormal/O6-O8-O1, augusI 2OO6.
8.A .-8A IN C 0 S|
L'IhIerhaIiohal Couhcil oh SysIems Fhgiheerihg (INCOSF) esI uh orgahisme sahs buI lucraIiI, Iohd
eh 199O. Sa missioh esI de Iaire progresser l'IaI de l'arI eI la praIique de l'Ihghierie SysIme dahs
l'ihdusIrie, les uhiversiIs eI les orgahismes gouverhemehIaux, par la promoIioh d'approches volu-
Iives eI ihIerdisciplihaires visahI a produire des soluIiohs Iechhologiques appropries qui rpohdehI
aux besoihs de la sociI.
www.iucose.org
15
Ccpcndant, il rcstait unc barrirc psychologiquc importantc a l'adoption d'UML par la
communaut dc l'IS : sa tcinturc logicicllc indlbilc ! La possibilit d'cxtcnsion
d'UML, grcc au conccpt dc strotypc, a pcrmis d'adaptcr lc vocabulairc pour lcs ing
nicurs systmc. n liminant lcs mots objct ct classc au profit du tcrmc plus ncutrc
bloc , brcf cn gommant lcs aspccts lcs plus informatiqucs d'UML, ct cn rcnommant cc
langagc dc modlisation, l'MG vcut promouvoir SysML commc un nouvcau langagc
diffrcnt d'UML, tout cn profitant dc sa filiation dircctc.
L'MG a annonc l'adoption dc SysML cn juillct 2006 ct la disponibilit dc la prcmirc
vcrsion officicllc(SysML v. 1.0) cn scptcmbrc 2007. Trs rccmmcnt, unc nouvcllc spci
fication SysML v. 1.1 a t rcnduc publiquc (dccmbrc 2008). Lc groupc dc travail pour
la rvision 1.2 cst dja cn action.
Figure 6
SysML eu laul que proil uML 2
16
SysML s'articulc autour dc ncuf typcs dc diagrammcs, chacun d'cux tant ddi a la
rcprscntation dcs conccpts particulicrs d'un systmc. Ccs typcs dc diagrammcs sont
rpartis par l'MG cn trois grands groupcs :
quatrc diagrammcs comportcmcntaux :
1. diagrammc d'activit (montrc l'cnchaincmcnt dcs actions ct dcisions au scin d'unc
activit complcxc) ,
2. diagrammc dc squcncc (montrc la squcncc vcrticalc dcs mcssagcs passs cntrc
blocs au scin d'unc intcraction) ,
3. diagrammc d'tats (montrc lcs diffrcnts tats ct transitions possiblcs dcs blocs
dynamiqucs) ,
4. diagrammc dc cas d'utilisation (montrc lcs intcractions fonctionncllcs cntrc lcs
actcurs ct lc systmc a l'tudc) ,
8.A .-8A FrcfiI uML
Uh proIil UML permeI d'adapIer UML a uh domaihe parIiculier ou a uhe problmaIique spciIique.
Les proIils meIIehI eh jeu le cohcepI cehIral de sIroIype. Uh sIroIype esI uhe sorIe d'IiqueIIe
homme que l'oh peuI coller sur IouI lmehI d'uh modle UML. Par exemple, coller uh sIroIype
cohIihuous sur uh IloI dahs uh diagramme d'acIiviI sighiIie que le IloI eh quesIioh h'esI plus uh
IloI UML sIahdard, c'esI-a-dire discreI, mais qu'il esI cohIihu. SysML ajouIe aihsi uh cerIaih hombre
de cohcepIs a UML 2 eh dIihissahI uh ehsemble de sIroIypes. Mais il simpliIie galemehI le lah-
gage de modlisaIioh eh laissahI de cI cerIaihs cohcepIs UML, jugs hoh ihdispehsables.
k | F| k| N C | Site SysML
TouIes les ihIormaIiohs oIIicielles sur le lahgage SysML se IrouvehI sur uh siIe web uhique :
www.ougsysul.org
17
un diagrammc transvcrsc : lc diagrammc d'cxigcnccs (montrc lcs cxigcnccs du systmc
ct lcurs rclations) ,
quatrc diagrammcs structurcls :
1. diagrammc dc dfinition dc blocs (montrc lcs briqucs dc basc statiqucs : blocs,
compositions, associations, attributs, oprations, gnralisations, ctc.) ,
2. diagrammc dc bloc intcrnc (montrc l'organisation intcrnc d'un lmcnt statiquc
complcxc) ,
3. diagrammc paramtriquc (rcprscntc lcs contraintcs du systmc, lcs quations qui lc
rgisscnt) ,
4. diagrammc dc packagcs (montrc l'organisation logiquc du modlc ct lcs rclations
cntrc packagcs).
La structurc du systmc cst rcprscntc par lcs diagrammcs dc blocs. Lc diagrammc dc
dfinition dc blocs (block definition diagram) dcrit la hirarchic du systmc ct lcs classifi
cations systmc/composant. Lc diagrammc dc bloc intcrnc (internal block diagram) dcrit
AI I| N II0 N iffrences uML 2lSysML
Les diagrammes UML 2 qui h'ohI pas I reIehus par SysML, prihcipalemehI par souci de simpliIica-
Iioh, sohI :
le diagramme d'objeIs ,
le diagramme de composahIs ,
le diagramme de dploiemehI ,
le diagramme de vue d'ehsemble des ihIeracIiohs ,
le diagramme de commuhicaIioh ,
le diagramme de Iemps.
RcapiIulohs : 1J diagrammes (UML 2) - 6 + 2 (exigehces, paramIrique) = 9 diagrammes SysML !
18
la structurc intcrnc du systmc cn tcrmcs dc partics, ports ct conncctcurs. Lc diagrammc
dc packagcs cst utilis pour organiscr lc modlc.
Lcs diagrammcs comportcmcntaux inclucnt lc diagrammc dc cas d'utilisation, lc dia
grammc d'activit, lc diagrammc dc squcncc ct lc diagrammc dc machincs a tats. Lc
diagrammc dc cas d'utilisation fournit unc dcscription dc haut nivcau dcs fonctionnalits
du systmc. Lc diagrammc d'activit rcprscntc lcs flots dc donncs ct dc contrlc cntrc
lcs actions. Lc diagrammc dc squcncc rcprscntc lcs intcractions cntrc lcs partics du sys
tmc qui collaborcnt. Lc diagrammc dc machincs a tats dcrit lcs transitions cntrc tats
ct lcs actions quc lc systmc ou scs partics raliscnt cn rponsc aux vncmcnts.
Lc diagrammc d'cxigcnccs capturc lcs hirarchics d'cxigcnccs, ainsi quc lcurs rclation dc
drivation, dc satisfaction, dc vrification ct dc raffincmcnt. Ccs rclations fournisscnt la
capacit dc rclicr lcs cxigcnccs lcs uncs aux autrcs, ainsi qu'aux lmcnts dc conccption ct
aux cas dc tcsts.
Figure 7
Les 9 lypes
de diagrauues
SysML
19
Lc diagrammc paramtriquc pcrmct dc rcprscntcr dcs contraintcs sur lcs valcurs dc para
mtrcs systmc tcls quc pcrformancc, fiabilit, massc, ctc. Il s'agit d'unc spcialisation du
diagrammc dc bloc intcrnc o lcs sculs blocs utilisablcs sont dcs contraintcs cntrc param
trcs pcrmcttant dc rcprscntcr graphiqucmcnt dcs quations ct rclations mathmatiqucs. Cc
nouvcau diagrammc fournit ainsi un support pour lcs tudcs d'analysc systmc.
SysML inclut galcmcnt unc rclation d'allocation pour rcprscntcr diffrcnts typcs
d'allocation, commc ccllcs dc fonctions a dcs composants, dc composants logiqucs a com
posants physiqucs, ainsi quc dc softwarc a hardwarc.
rgaoisatioo du Iivre
Aprs cc prcmicr chapitrc introductif, qui nous a pcrmis dc poscr lcs bascs du langagc
SysML, nous allons dtaillcr un par un, dans la suitc dc cc livrc, lcs diffrcnts typcs dc dia
grammcs pcrmcttant dc rcprscntcr un systmc suivant tous lcs points dc vuc souhaits.
Ccpcndant, a dcs fins pdagogiqucs, nous allons tudicr lcs diffrcnts typcs dc dia
grammc dans un ordrc particulicr, corrcspondant a unc utilisation naturcllc du langagc
SysML pour modliscr un systmc, cn partant dcs cxigcnccs, cn cxplicitant cnsuitc lcs
aspccts structurcls, puis comportcmcntaux ct cnfin transvcrscs. Il cst clair quc dans la ra
lit, la dmarchc dc modlisation nc saurait ctrc si linairc, commc l'imposc ccttc prscn
tation critc, mais comprcndrait plutt dcs allcrsrctours cntrc lcs vucs structurcllcs ct
dynamiqucs, ainsi qu'unc utilisation itrativc dcs mcmcs typcs dc diagrammcs cn allant
du gnral au particulicr.
Nous avons donc choisi dc prscntcr dans l'ordrc :
lc diagrammc d'cxigcnccs ,
20
lc diagrammc dc cas d'utilisation ,
lc diagrammc dc squcncc ,
lc diagrammc dc dfinition dc blocs ,
lc diagrammc dc bloc intcrnc ,
lc diagrammc dc packagcs ,
lc diagrammc d'tats ,
lc diagrammc d'activit ,
ct lc diagrammc paramtriquc.
La figurc suivantc rcplacc chacun dcs chapitrcs suivants dans lc cadrc dc la prscntation dcs
diffrcnts typcs dc diagrammcs. Il cst a notcr quc lc chapitrc 10 traitcra dc l'important con
ccpt transvcrsc d'allocation, bicn quc nc donnant pas licu a un diagrammc a part cntirc.
Figure 8 Les chapilres du livre d'apres les diagrauues SysML
21
Cc schma gnral nous scrvira ainsi d'introduction pour chaquc chapitrc du livrc, afin dc
bicn lc rcplaccr dans la vision d'cnscmblc du langagc dc modlisation SysML.
L'tude de cas du Iivre
La difficult cn ingnicric systmc cst dc trouvcr unc tudc dc cas suffisammcnt rcpr
scntativc, mais pas trop complcxc, ni trop lic a un domainc tcchniquc particulicr.
ans lc cadrc dc cc livrc, j'ai rutilis un cxcmplc qui m'a scrvi dc nombrcuscs fois lors dcs
scssions dc formation SysML quc j'ai raliscs dcpuis plus dc dcux ans. Il s'agit d'un
radiorvcil a projcctcur, systmc facilc a comprcndrc par tout un chacun, mais dont la
simplicit apparcntc cst trompcusc. Jc vous cngagc par cxcmplc a consultcr lc diagrammc
d'tats du chapitrc 7 pour vous cn convaincrc !
Figure 9
Le radiorveil de l'lude de cas
PRFMIERF PARTIF
la mod|isation des
exigences
La partic I dc l'ouvragc conccrnc la modlisation dcs cxigcnccs. Nous
vcrrons quc SysML innovc cn proposant un diagrammc d'cxigcnccs
pcrmcttant dc dcssincr graphiqucmcnt lcs cxigcnccs systmc ct surtout dc
lcs rclicr cnsuitc aux lmcnts structurcls ou dynamiqucs dc la
modlisation, ainsi qu'a dcs cxigcnccs dc nivcau soussystmc ou
quipcmcnt. Nous apprcndrons galcmcnt a mcttrc cn ouvrc la tcchniquc
dcs cas d'utilisation, dja prscntc cn UML, au nivcau systmc. Nous
vcrrons cnfin unc prcmirc application du diagrammc dc squcncc au
nivcau systmc boitc noirc .
1
le diagramme d'exigences
Cc chapitrc prscntc lc diagrammc d'cxigcnccs. Cc diagrammc
capturc lcs hirarchics d'cxigcnccs, ainsi quc lcurs rclations dc
drivation, dc raffincmcnt, dc satisfaction ct dc vrification. Ccs
rclations fournisscnt la capacit dc rclicr lcs cxigcnccs lcs uncs aux
autrcs, ainsi qu'aux lmcnts dc conccption ct aux cas dc tcsts.
exigehce
IraabiliI
cas de IesI
24
Notatioo de base
Lc diagrammc d'cxigcnccs pcrmct dc rcprscntcr graphiqucmcnt lcs cxigcnccs dans lc
modlc.
8.A .-8A | xigence
Uhe exigehce permeI de spciIier uhe capaciI ou uhe cohIraihIe qui doiI Ire saIisIaiIe par uh sys-
Ime. Flle peuI spciIier uhe IohcIioh que le sysIme devra raliser ou uhe cohdiIioh de perIor-
mahce, de IiabiliI, de scuriI, eIc.
Les exigehces servehI a Iablir uh cohIraI ehIre le cliehI eI les ralisaIeurs du IuIur sysIme.
25
Lcs dcux proprits dc basc d'unc cxigcncc sont :
un idcntifiant uniquc (pcrmcttant cnsuitc dc grcr la traabilit avcc l'architccturc,
ctc.) ,
un tcxtc dcscriptif.
ans l'cxcmplc du radiorvcil, la prcmirc cxigcncc fondamcntalc conccrnc la capacit a
assurcr a l'utilisatcur un rvcil automatiquc a l'hcurc souhaitc avcc la radio ou un buzzcr.
n pcut galcmcnt listcr dcs cxigcnccs sur lc rglagc dc la radio, dc l'horlogc ct dc
l'alarmc, ainsi quc sur la nccssit d'un mcanismc dc sauvcgardc. Unc prcmirc bauchc
dc diagrammc d'cxigcnccs cst donnc par la figurc suivantc.
Figure 1-1
Preuiere exigeuce
du radiorveil
8.A .-8A C artcuche de diagramme
Uh carIouche posiIiohh eh hauI a gauche du diagramme dahs uh pehIagohe permeI de spciIier le
Iype de diagramme SysML, le Iype de l'lmehI cohcerh, l'lmehI cohcerh, eI le hom du dia-
gramme.
0ahs l'exemple suivahI, il s'agiI d'uh diagramme d'exigehces (req) homm 0iagramme ihiIial
d'exigehces , cohcerhahI l'lmehI RadioRveil de Iype Modle.
Le carIouche ghral du diagramme d'exigehces esI de la Iorme :
|package ou ex1gehce] hom de 1`1mehf |hom du d1agamme]
26
Il cst courant dc dfinir d'autrcs proprits pour lcs cxigcnccs, par cxcmplc :
priorit (par cxcmplc : hautc, moycnnc, bassc) ,
sourcc (par cxcmplc : clicnt, markcting, tcchniquc, lgislation, ctc.) ,
risquc (par cxcmplc : haut, moycn, bas) ,
statut (par cxcmplc : proposc, validc, implmcntc, tcstc, livrc, ctc.) ,
mthodc dc vrification (par cxcmplc : analysc, dmonstration, tcst, ctc.).
Nous pouvons cnrichir lc diagrammc d'cxigcnccs prcdcnt cn ajoutant unc cxigcncc sur
la capacit dc projctcr l'hcurc courantc au plafond. Cc nouvcau equ1emehf aura
commc statut : proposc, au licu dc validc pour lcs autrcs.
Figure 1-2
0iagrauue iuilial
d'exigeuces du radiorveil
27
Lcs cxigcnccs pcuvcnt ctrc rclics cntrc cllcs par dcs rclations dc contcnancc, dc raffinc
mcnt ou dc drivation :
la contcnancc (lignc tcrminc par un ccrclc contcnant unc croix du ct du contcncur)
pcrmct dc dcomposcr unc cxigcncc compositc cn plusicurs cxigcnccs unitaircs, plus
facilcs cnsuitc a traccr visavis dc l'architccturc ou dcs tcsts ,
Figure 1-3 Exigeuces du radiorveil avec allribuls
28
lc raffincmcnt ( ef1he ) consistc cn l'ajout dc prcisions, par cxcmplc dc donncs
quantitativcs ,
la drivation ( de1vePeqf ) consistc a rclicr dcs cxigcnccs dc nivcaux diffrcnts,
par cxcmplc dcs cxigcnccs systmc a dcs cxigcnccs dc nivcau soussystmc, ctc. llc
impliquc gnralcmcnt dcs choix d'architccturc.
Figure 1-4 Exeuple de relalious eulre les exigeuces du radiorveil
29
ans notrc cxcmplc, l'cxigcncc sur la gcstion dc la radio cst cxprimc par unc phrasc con
tcnant unc conjonction dc coordination ct . Ccci cst souvcnt lc symptmc d'unc cxi
gcncc compositc dcvant ctrc dcomposc cn cxigcnccs unitaircs, cc quc nous avons fait
avcc lcs dcux cxigcnccs sur lc rglagc dc la station ct lc rglagc du volumc.
L'cxigcncc sur lc rglagc dc la station pcut ctrc raffinc cn prcisant lcs valcurs dcs
gammcs dc frqucncc dcvant ctrc supportcs.
nfin, on pcut considrcr quc la gcstion dc l'hcurc cst unc cxigcncc qui drivc dc l'cxi
gcncc gnralc cn cc scns qu'cllc impliquc un nivcau d'architccturc supplmcntairc, a
savoir la notion d'horlogc.
CompImeots
SysML pcrmct d'utiliscr dcs notcs graphiqucs sur tous lcs typcs dc diagrammcs (formc dc
postit). cux motscls particulicrs ont t dfinis afin dc rcprscntcr :
dcs problmcs a rsoudrc ( pob1em ) ,
dcs justificatifs ( af1oha1e ).
Nous cn vcrrons l'illustration sur la prochainc figurc.
Il cst galcmcnt possiblc dc fairc la distinction cntrc diffrcnts typcs d'cxigcnccs, au licu
d'utiliscr un uniquc typc banalis :
fonctionncllc ,
pcrformancc ,
fiabilit ,
scurit ,
30
volumtric ,
physiquc ,
intcrfacc ,
ctc.
Lcs cxigcnccs non fonctionncllcs (pcrformancc, fiabilit, ctc.) apportcnt souvcnt dc la
prcision aux cxigcnccs fonctionncllcs, commc illustr sur la figurc suivantc, o nous
avons rcprscnt unc cxigcncc d'intcrfacc ct unc cxigcncc physiquc raffinant unc cxigcncc
fonctionncllc dc basc.
Figure 1-5
Exeuples de lypes d'exigeuce
du radiorveil
31
IraabiIit
La gcstion dcs cxigcnccs cst l'cnscmblc dcs activits pcrmcttant dc dfinir ct dc suivrc lcs
cxigcnccs d'un systmc au cours d'un projct. llc pcrmct :
dc s'assurcr dc la cohrcncc cntrc cc quc fait rcllcmcnt lc projct ct cc qu'il doit fairc ,
dc facilitcr l'analysc d'impact cn cas dc changcmcnt.
Lc diagrammc d'cxigcnccs pcrmct ainsi tout au long d'un projct dc rclicr lcs cxigcnccs
avcc d'autrcs typcs d'lmcnt SysML par plusicurs rclations :
cxigcncc lmcnt comportcmcntal (cas d'utilisation, diagrammc d'tats, ctc.) :
ef1he ,
cxigcncc bloc d'architccturc : saf1sfy ,
cxigcncc cas dc tcst : ve1fy .
ans notrc cxcmplc, j'ai cr un cas d'utilisation couter la radio (voir lc chapitrc 2 sur lcs
cas d'utilisation), un bloc d'architccturc Radio (voir lc chapitrc 4) ainsi qu'un cas dc tcst
Test radio. J'ai cnsuitc rcli ccs nouvcaux lmcnts a l'cxigcncc dc Gestion radio par lcs
rclations dc traabilit adquatcs.
Unc autrc rcprscntation graphiquc proposc par SysML consistc a fairc apparaitrc lcs
rclations dc traabilit par unc notc attachc a l'cxigcncc, ou cncorc par dcs attributs ou
8.A .-8A C as de test
Uh cas de IesI reprsehIe uhe mIhode de vriIicaIioh de la saIisIacIioh d'uhe exigehce. Il esI repr-
sehI eh SysML par uh recIahgle avec le moI-cl Tesf Case .
32
dcs compartimcnts supplmcntaircs. Lcs dcux figurcs qui suivcnt montrcnt ccs diff
rcntcs solutions.
Unc possibilit supplmcntairc dc rcprscntation consistc a utiliscr unc formc tabulairc.
C'cst a la chargc dc l'outil dc modlisation dc proposcr ccttc formc graphiquc, cn gnral
Figure 1-6
^ulres relalious avec les
exigeuces du radiorveil
Figure 1-7
^joul de la lraabilil
a l'iulrieur d'uue exigeuce
33
calculc dc faon automatiquc a partir dcs rclations dclarcs dans dcs diagrammcs ou
dans lcs fichcs dc proprit dcs lmcnts. Un cxcmplc, ralis par Magicraw, cst donn
sur la figurc suivantc.
Figure 1-8
^joul de la lraabilil
d'uue exigeuce au uoyeu
d'uue uole
Figure 1-9
Exeuple de reprseulaliou
labulaire de la relaliou
salisy
2
le diagramme de cas
d'uti|isation
Cc chapitrc prscntc lc diagrammc dc cas d'utilisation, qui
fournit unc dcscription dc haut nivcau dcs fonctionnalits du
systmc.
cas d'uIilisaIioh
acIeur
ihclusioh, exIehsioh
ghralisaIioh
35
Notatioo de base
Il cst souhaitablc dc rcprscntcr lcs scrviccs attcndus du systmc a l'tudc par un modlc
dc cas d'utilisation. Cc modlc conticnt un ou plusicurs diagrammcs dc cas d'utilisation,
montrant lcs intcractions fonctionncllcs cntrc lcs actcurs ct lc systmc a l'tudc.
8.A. -8A A cteur
Rle jou par uh uIilisaIeur humaih ou uh auIre sysIme qui ihIeragiI direcIemehI avec le sysIme
Iudi.
Uh acIeur parIicipe a au moihs uh cas d'uIilisaIioh.
36
Lc diagrammc dc cas d'utilisation cst un schma qui montrc lcs cas d'utilisation (ovalcs)
rclis par dcs associations (ligncs) a lcurs actcurs (icnc du stick man, ou rcprscntation
graphiquc quivalcntc). Chaquc association signific simplcmcnt participc a .
Pour notrc tudc dc cas, unc prcmirc vcrsion du diagrammc dc cas d'utilisation consistc
a considrcr un scul actcur (l'utilisatcur) conncct a un uniquc cas d'utilisation (ctrc
rvcill a l'hcurc cn musiquc).
nsuitc, on pcut sc dirc quc l'utilisatcur, alors qu'il cst rvcill, cst susccptiblc d'utiliscr lc
radiorvcil cn tant quc simplc radio ou horlogc. Chaquc cas d'utilisation doit bicn rcpr
scntcr un scrvicc autonomc rcndu par lc systmc ct fournissant un rsultat obscrvablc ct
intrcssant pour l'actcur conccrn. Si l'on dcssinc un rcctanglc cnglobant autour dcs cas
d'utilisation pour matrialiscr lc radiorvcil, on obticnt la figurc suivantc.
8.A .-8A C as d'utiIisaticn
Uh cas d'uIilisaIioh (use case, ou UC) reprsehIe uh ehsemble de squehces d'acIiohs qui sohI rali-
ses par le sysIme eI qui produisehI uh rsulIaI observable ihIressahI pour uh acIeur parIiculier.
Chaque cas d'uIilisaIioh spciIie uh comporIemehI aIIehdu du sysIme cohsidr comme uh IouI,
sahs imposer le mode de ralisaIioh de ce comporIemehI. Il permeI de dcrire ce que le IuIur sys-
Ime devra Iaire, sahs spciIier commehI il le Iera.
Uh cas d'uIilisaIioh doiI Ire reli a au moihs uh acIeur.
Figure 2-1
^cleur el cas d'ulilisaliou
37
Figure 2-2
^cleur el cas d'ulilisaliou
(suile)
AI I| N II0 N C as d'utiIisaticn
Uhe erreur IrquehIe cohcerhahI les cas d'uIilisaIioh cohsisIe a vouloir descehdre Irop bas eh Iermes
de grahulariI. Uh cas d'uIilisaIioh reprsehIe uh ehsemble de squehces d'acIiohs ralises par le
sysIme, eI le lieh ehIre ces squehces d'acIiohs esI prcismehI l'objecIiI mIier de l'acIeur. Le cas
d'uIilisaIioh he doiI dohc pas se rduire sysImaIiquemehI a uhe seule squehce, eI ehcore moihs a
uhe simple acIioh.
LimiIez a 2O le hombre de vos cas d'uIilisaIioh de base (eh dehors des cas ihclus, spcialiss, ou des
exIehsiohs). Avec ceIIe limiIe arbiIraire, oh resIe syhIhIique eI oh he Iombe pas dahs le pige de la
grahulariI Irop Iihe des cas d'uIilisaIioh.
38
Lcs actcurs candidats sont systmatiqucmcnt :
lcs utilisatcurs humains dirccts : faitcs donc cn sortc d'idcntificr tous lcs profils possi
blcs, sans oublicr l'administratcur, l'opratcur dc maintcnancc, ctc. ,
lcs autrcs systmcs conncxcs qui intcragisscnt aussi dircctcmcnt avcc lc systmc tudi,
souvcnt par lc biais dc protocolcs bidircctionncls.
La rccommandation communc consistc a fairc prvaloir l'utilisation dc la formc gra
phiquc du stick man pour lcs actcurs humains ct unc rcprscntation rcctangulairc pour lcs
systmcs connccts.
Nous appclons actcur principal cclui pour qui lc cas d'utilisation produit un rsultat
obscrvablc. Par opposition, nous qualifions d'actcurs sccondaircs lcs autrcs participants
du cas d'utilisation. Lcs actcurs sccondaircs sont souvcnt sollicits pour dcs informations
complmcntaircs , ils pcuvcnt uniqucmcnt consultcr ou informcr lc systmc lors dc l'cx
cution du cas d'utilisation.
Unc bonnc pratiquc consistc a fairc figurcr lcs actcurs principaux a gauchc dcs cas d'utili
sation, ct lcs actcurs sccondaircs a droitc. Si nous ajoutons lcs stations radio cn tant
qu'actcurs sccondaircs pour lcs cas d'utilisation du radiorvcil lis a la radio, nous obtc
nons la figurc suivantc.
AI I| N II0 N A cteurs
Ne cohIohdez pas rle eI ehIiI cohcrIe. Uhe mme ehIiI cohcrIe peuI jouer successivemehI diI-
IrehIs rles par rapporI au sysIme Iudi, eI Ire modlise par plusieurs acIeurs. Rciproque-
mehI, le mme rle peuI Ire Iehu simulIahmehI par plusieurs ehIiIs cohcrIes, qui serohI alors
modlises par le mme acIeur.
39
Figure 2-3
^cleurs priucipal huuaiu
el secoudaire uouhuuaiu
8.A .-8A C artcuche
Le carIouche ghral du diagramme de cas d'uIilisaIioh esI de la Iorme :
|package ou b1oc] hom de 1`1mehf |hom du d1agamme]
40
0crire Ies cas d'utiIisatioo
Chaquc cas d'utilisation doit ctrc dcrit tcxtucllcmcnt (a l'aidc d'un plantypc). n pcut
galcmcnt associcr a chaquc cas d'utilisation un ou plusicurs diagrammcs dc squcncc
commc cxpliqu dans lc chapitrc qui suit.
La fichc dc dcscription tcxtucllc d'un cas d'utilisation n'cst pas normalisc par
SysML.Nous prconisons pour notrc part la structuration suivantc :
sommairc d'idcntification (obligatoirc) : inclut titrc, rsum, datcs dc cration ct dc
modification, vcrsion, rcsponsablc, actcurs, ctc. ,
dcscription dcs scnarios (obligatoirc) : dcrit lc scnario nominal, lcs scnarios (ou
cnchaincmcnts) altcrnatifs, lcs scnarios (ou cnchaincmcnts) d'chcc, mais aussi lcs
prconditions (l'tat du systmc pour quc lc cas d'utilisation puissc dmarrcr) ct lcs
postconditions (cc qui a chang dans l'tat du systmc a la fin du cas d'utilisation) ,
cxigcnccs non fonctionncllcs (optionncl) : ajoutc, si c'cst pcrtincnt, lcs informations
suivantcs : frqucncc, volumtric, disponibilit, fiabilit, intgrit, confidcntialit, pcr
formanccs, concurrcncc, ctc. Prcisc galcmcnt lcs contraintcs d'intcrfacc hommc
machinc commc dcs rglcs d'crgonomic, unc chartc graphiquc, ctc.
8.A .-8A Scnaric
Uh schario reprsehIe uhe successioh parIiculire d'ehchahemehIs, s'excuIahI du dbuI a la Iih
du cas d'uIilisaIioh, uh ehchahemehI IahI l'uhiI de descripIioh de squehces d'acIiohs.Uh cas
d'uIilisaIioh cohIiehI eh ghral uh schario homihal eI plusieurs scharios alIerhaIiIs (qui se Iermi-
hehI de Iaoh hormale) ou d'erreur (qui se IermihehI eh chec).
Oh peuI d'ailleurs proposer uhe dIihiIioh diIIrehIe pour uh cas d'uIilisaIioh : ehsemble de sc-
harios d'uIilisaIioh d'uh sysIme relis par uh buI commuh du poihI de vue de l'acIeur prihcipal .
41
CompImeots
CIassificatioo des acteurs
n pourrait imagincr distingucr lcs cas d'utilisation du radiorvcil sclon quc l'utilisatcur
cst cndormi ou dja rvcill. n cffct, c'cst l'utilisatcur cndormi qui souhaitc ctrc rvcill
a l'hcurc, alors quc c'cst l'utilisatcur vcill qui va coutcr la radio ou rcgardcr l'hcurc. Unc
vcrsion altcrnativc du diagrammc dc cas d'utilisation cst donnc sur la figurc suivantc.
Figure 2-4
Preuiere variaule du
diagrauue de cas d'ulilisaliou
42
Mais on pcut mcmc allcr un pcu plus loin : grcc au dispositif dc projcction au plafond,
l'utilisatcur (a moiti) cndormi pcut lui aussi avoir l'hcurc ! n pourrait ainsi considrcr quc
tout utilisatcur pcut avoir l'hcurc, qu'il soit cndormi ou rvcill, mais quc scul l'utilisatcur
cndormi vcut sc fairc rvcillcr ct quc scul l'utilisatcur vcill pcut choisir d'coutcr la radio.
Pour vitcr d'avoir dcux actcurs principaux (utilisatcur cndormi ct utilisatcur vcill) con
nccts au mcmc cas d'utilisation, SysML pcrmct dc crcr un actcur gnralis Utilisateur
qui factorisc lcs comportcmcnts communs aux dcux actcurs. n dit alors quc lcs actcurs
utilisateurendormictutilisateure.eillesont dcs spcialisations dc l'actcurUtilisateur. Ils pcu
vcnt chacun possdcr lcurs proprcs cas d'utilisation spcifiqucs.
Figure 2-5
variaule du diagrauue avec
guralisaliou d'acleurs
43
keIatioos eotre cas d'utiIisatioo
Pour affincr lc diagrammc dc cas d'utilisation, SysML dfinit trois typcs dc rclations
standardiscs cntrc cas d'utilisation :
unc rclation d'inclusion, formalisc par lc motcl 1hc1ude : lc cas d'utilisation dc
basc cn incorporc cxplicitcmcnt un autrc, dc faon obligatoirc.
unc rclation d'extension, formalisc par lc motcl exfehd : lc cas d'utilisation dc
basc cn incorporc implicitcmcnt un autrc, dc faon optionncllc, a un cndroit spcifi
indircctcmcnt dans cclui qui procdc a l'cxtcnsion (appcl extension point).
unc rclation dc gnralisation/spcialisation (flchc blanchc) : lcs cas d'utilisation dcs
ccndants hritcnt la dcscription dc lcur parcnt commun. Chacun d'cntrc cux pcut
nanmoins comprcndrc dcs intcractions spcifiqucs supplmcntaircs.
La rcprscntation graphiquc dc toutcs ccs rclations cst donnc a la figurc 26.
ssayons dc donncr quclqucs cxcmplcs sur notrc tudc dc cas.
Lc cas d'utilisation .oir l`heure pourrait sc spcialiscr suivant quc la lccturc dc l'hcurc sc
fait dircctcmcnt sur lc radiorvcil ou alors au plafond.
8.A. -8A A cteur gnraIis
0eux acIeurs ou plus peuvehI prsehIer des similiIudes dahs leurs relaIiohs aux cas d'uIilisaIioh. Oh
peuI exprimer ce cohcepI eh crahI uh acIeur ghralis qui modlise les aspecIs commuhs aux diI-
IrehIs acIeurs cohcreIs.
44
Figure 2-6
Nolalious avauces
du diagrauue de cas
d'ulilisaliou
Figure 2-7
Curalisaliou/spcialisaliou
de cas d'ulilisaliou
45
Lcs cas d'utilisation Avoir l'hcurc ct trc rvcill a l'hcurc cn musiquc inclucnt tous lcs
dcux unc capacit dc modification dcs hcurcs ct dcs minutcs. n pcut donc crcr un nou
vcau cas d'utilisation pcrmcttant dc nc dclarcr ct dcrirc qu'unc sculc fois un comportc
mcnt rutilisablc.
Lc diagrammc suivant illustrc la rclation d'inclusion.
Pour la rclation d'cxtcnsion, souvcnt mal utilisc dans la pratiquc, nous pourrions prcndrc
cn comptc unc fonctionnalit optionncllc, tcllc quc lc simulatcur d'aubc (la lumirc aug
mcntc progrcssivcmcnt pcndant 30 a 90 minutcs avant l'hcurc dc rvcil : lc contact dc la
lumirc avcc lcs paupircs a unc incidcncc positivc sur lcs rythmcs hormonaux ct prparc
l'organismc au rvcil...).
Cc nouvcau cas d'utilisation pcut ctrc strotyp fragmcnt afin d'cxprimcr lc fait qu'il
nc s'cxcutcra jamais dc faon autonomc, mais toujours dans lc cadrc d'un autrc cas d'uti
lisation. Il s'agit d'unc bonnc pratiquc prconisc par dc nombrcux spcialistcs, mais
absolumcnt pas obligatoirc.
Figure 2-8
|uclusiou de cas d'ulilisaliou
46
Unc vcrsion complcxc du diagrammc dc cas d'utilisation, incorporant toutcs lcs rclations
possiblcs cntrc actcurs ct cas d'utilisation cst donnc par lc schma suivant. Il s'agit d'un
cxcmplc dc notation, pas d'unc rccommandation mthodologiquc ! n cffct, nous consi
drons quc lc diagrammc dc la figurc 23, pagc 39, cst probablcmcnt tout a fait suffisant
dans notrc cas.
8.A .8A Strctype
Les moIs-cls SysML comme 1hc1ude eI exfehd sohI hoIs ehIre guillemeIs Iypogra-
phiques. Mais hous pouvohs galemehI crer hos propres moIs-cls, Iels que fagmehf (pour
ihdiquer qu'uh cas d'uIilisaIioh h'esI qu'uh IragmehI IacIoris par d'auIres cas d'uIilisaIioh) ou
secohda1e (pour ihdiquer qu'uh cas d'uIilisaIioh esI moihs imporIahI que les auIres). Ces
moIs-cls ihvehIs par les modlisaIeurs s'appellehI alors des sIroIypes.
Figure 2-9
Exleusiou de cas d'ulilisaliou
AI I| N II0 N k eIaticns entre uC
N'abusez pas des relaIiohs ehIre cas d'uIilisaIioh (ihclusioh, exIehsioh, ghralisaIioh) : elles peu-
vehI rehdre les diagrammes de cas d'uIilisaIioh Irop diIIiciles a dcrypIer pour les experIs mIier qui
sohI cehss les valider.
47
Figure 2-10
versiou couplexe
du diagrauue de cas
d'ulilisaliou
3
le diagramme de squence
systme
Cc chapitrc prscntc lc diagrammc dc squcncc systmc .
Pour documcntcr lcs cas d'utilisation, la dcscription tcxtucllc cst
indispcnsablc, car cllc sculc pcrmct dc communiqucr facilcmcnt
avcc lcs utilisatcurs ct dc s'cntcndrc sur lc vocabulairc mticr
cmploy. n rcvanchc, lc tcxtc prscntc dcs dsavantagcs
puisqu'il cst difficilc dc montrcr commcnt lcs cnchaincmcnts sc
succdcnt, ou a qucl momcnt lcs actcurs sccondaircs sont
sollicits. n outrc, la maintcnancc dcs volutions s'avrc
souvcnt fastidicusc. Il cst donc rccommand dc compltcr la
dcscription tcxtucllc par un ou plusicurs diagrammcs dc
squcncc SysML.
diagramme de squehce
ihIeracIioh
schario
49
Notatioo de base
Lc diagrammc dc squcncc montrc la squcncc vcrticalc dcs mcssagcs passs cntrc l
mcnts (ligncs dc vic) au scin d'unc intcraction.
8.A. -8A Ligne de vie
ReprsehIaIioh de l'exisIehce d'uh lmehI parIicipahI dahs uh diagramme de squehce.
Uhe lighe de vie possde uh hom eI uh Iype. Flle esI reprsehIe graphiquemehI par uhe lighe ver-
Iicale eh poihIills.
50
8.A. -8A Message
FlmehI de commuhicaIioh uhidirecIiohhel ehIre lighes de vie qui dclehche uhe acIiviI dahs le
desIihaIaire. La rcepIioh d'uh message provoque uh vhemehI chez le rcepIeur.
La Ilche poihIille reprsehIe uh reIour. Cela sighiIie que le message eh quesIioh esI le rsulIaI
direcI du message prcdehI. Uh message syhchrohe (meIIeur bloqu eh aIIehIe de rpohse) esI
reprsehI par uhe Ilche pleihe, alors qu'uh message asyhchrohe esI reprsehI par uhe Ilche vi-
de. La Ilche qui boucle (message rIlexiI) permeI de reprsehIer uh comporIemehI ihIerhe.
8.A .-8A A ctivaticn
Les bahdes verIicales le lohg d'uhe lighe de vie reprsehIehI des priodes d'acIivaIioh. Flles sohI
opIiohhelles, mais permeIIehI de mieux comprehdre la Ilche poihIille du message de reIour. Tou-
IeIois, dahs uh souci de simpliciI, hous he l'uIiliserohs ghralemehI pas.
Figure 3-1
Nolaliou de base du
diagrauue de squeuce
51
0iagramme de squeoce - systme
Pour lcs mcssagcs proprcs a un cas d'utilisation, lcs diagrammcs dc squcncc systmc
montrcnt non sculcmcnt lcs actcurs cxtcrncs qui intcragisscnt dircctcmcnt avcc lc sys
tmc, mais galcmcnt cc systmc (cn tant quc boitc noirc) ct lcs vncmcnts systmc
dclcnchs par lcs actcurs. L'ordrc chronologiquc sc droulc vcrs lc bas ct l'ordrc dcs mcs
sagcs doit suivrc la squcncc dcritc dans lc cas d'utilisation.
Nous rccommandons dc prscntcr lcs dss cn montrant l'actcur principal a gauchc, puis
unc lignc dc vic uniquc rcprscntant lc systmc cn boitc noirc, ct, cnfin, lcs vcntucls
actcurs sccondaircs sollicits durant lc scnario a droitc du systmc.
Un prcmicr cxcmplc dc dss du cas d'utilisation tre re.eille l`heure en musique cst donn
a la figurc suivantc. Rcmarqucz l'utilisation dc notcs (postit) pour micux documcntcr lc
diagrammc. Lc prcmicr mcssagc cst un mcssagc synchronc, donnant licu a un rctour :
l'affichagc d'un point a ct dc l'hcurc indiquant quc l'alarmc cst positionnc. Lc fait quc
radiorvcil dtcctc quc l'hcurc courantc dcvicnt galc a l'hcurc d'alarmc cst rcprscnt
par un mcssagc rflcxif avcc lc motcl Wheh. Lc dcrnicr mcssagc cst un signal asyn
chronc.
8.A .8A iagramme de squence systme (dss)
Nous uIilisohs le Ierme de diagramme de squehce sysIme pour souligher le IaiI que dahs ce
Iype de diagramme de squehce, hous cohsidrohs le sysIme ehIier comme uhe boIe hoire eI le
reprsehIohs par uhe seule lighe de vie. Le comporIemehI du sysIme esI dcriI vu de l'exIrieur,
sahs prjuger de commehI il le ralisera.
52
CompImeots
Fragmeots combios
SysML proposc unc notation trs utilc : lc fragmcnt combin. Chaquc fragmcnt possdc
un opratcur ct pcut ctrc divis cn oprandcs. Lcs principaux opratcurs sont :
1oop : bouclc. Lc fragmcnt pcut s'cxcutcr plusicurs fois, ct la condition dc gardc
cxplicitc l'itration ,
opf : optionncl. Lc fragmcnt nc s'cxcutc quc si la condition fournic cst vraic ,
a1f : fragmcnts altcrnatifs. Scul lc fragmcnt possdant la condition vraic s'cxcutcra.
Figure 3-2
0ss siuple du cas
Elre rveill a l'heure
53
ssayons d'illustrcr ccs trois opratcurs sur l'cxcmplc prcdcnt.
Lc son qui sort dc la radio cst continu pcndant plusicurs minutcs, cc n'cst pas un simplc
signal unitairc. Pour lc rcprscntcr, positionnons un fragmcnt dc bouclc. n fait, l'utilisa
tcur scra rvcill par la radio ou lc buzzcr suivant son choix. Nous pouvons donc ajoutcr
un fragmcnt a1f avcc dcux oprandcs. nfin, lc prcmicr mcssagc n'cst pas nccssairc si
l'alarmc tait dja positionnc la vcillc : il cst donc optionncl. Lc dss corrcspondant
dcvicnt commc illustr sur la figurc suivantc.
Figure 3-3
0ss avec ragueuls du cas
Elre rveill a l'heure
54
Cadre rfreoce
Un diagrammc dc squcncc pcut cn rfrcnccr un autrc grcc a un sccond typc dc rcc
tanglc avcc lc motcl ef. Ccttc notation cst trs pratiquc pour modulariscr lcs dia
grammcs dc squcncc, ct crcr dcs hypcrlicns graphiqucs cxploitablcs par lcs outils dc
modlisation.
n fait, dans lc scnario nominal du cas d'utilisation tudi, l'utilisatcur a la possibilit
avant dc sc couchcr dc modificr lcs rglagcs dc l'horlogc ct dc la radio. Si nous nc voulons
pas dcrirc lc dtail dc ccs intcractions dans lc mcmc diagrammc dc squcncc, il suffit
d'utiliscr dcs cadrcs ef optionncls.
Pour compltcr, nous allons illustrcr un quatrimc opratcur dc fragmcnt combin : pa
(paralllc). Grcc a cc motcl, plusicurs oprandcs pourront ctrc cxcuts cn paralllc, cc
qui nc scrait pas facilc a modliscr avcc un diagrammc dc squcncc classiquc.
A l'hcurc d'alarmc, cn paralllc dc l'activation dc la radio, lc projcctcur cst galcmcnt
allum (sauf bicn sr s'il l'tait dja).
8.A .-8A C artcuche
Le carIouche ghral du diagramme de squehce esI de la Iorme-:
|1hfeacf1oh] hom de 1`1hfeacf1oh |hom du d1agamme]
55
Figure 3-4
0ss avec rreuces du cas
Elre rveill a l'heure
56
Cootraiotes temporeIIes
SysML pcrmct d'ajoutcr dcs contraintcs tcmporcllcs sur lc diagrammc dc squcncc.
Il cxistc dcux typcs dc contraintcs :
la contraintc dc durc, qui pcrmct d'indiqucr unc contraintc sur la durc cxactc, la
durc minimalc ou la durc maximalc cntrc dcux vncmcnts ,
la contraintc dc tcmps, qui pcrmct dc positionncr dcs labcls associs a dcs instants
dans lc scnario au nivcau dc ccrtains mcssagcs ct dc lcs rclicr ainsi cntrc cux.
Nous avons modlis lc simulatcur d'aubc cn utilisant lcs dcux typcs dc contraintcs. ans la
ralit, il aurait fallu choisir l'un ou l'autrc, mais ccla nous pcrmct d'illustrcr lcs dcux cas.
Pour simulcr l'aubc, nous avons suppos quc la lampc commcncc a mcttrc douccmcnt
trcntc minutcs avant l'hcurc du rvcil. Lc mcssagc 3 : 1um1e douce modlisc cc dbut
d'clairagc. La contraintc dc durc cst rcprscntc par unc doublc flchc cn prolongcmcnt
dc cc mcssagc ct du dclcnchcmcnt dc l'alarmc (mcssagc 5), avcc la durc cntrc
accoladcs : [30 mn]. La contraintc dc tcmps, pour sa part, cst rcprscntc cn associant
unc contraintc [t - Halarmc] cn prolongcmcnt du mcssagc 5, ct unc autrc contraintc [t -
Halarmc 30 mn] cn prolongcmcnt du mcssagc 3.
57
Figure 3-5
0ss avec coulraiules
leuporelles
0FUXIEMF PARTIF
la mod|isation
d'arcbitecture
La partic II conccrnc la modlisation structurcllc. Nous apprcndrons a
utiliscr lc conccpt univcrscl dc bloc propos par SysML pour modliscr
tout lmcnt structurcl, ainsi quc lcs dcux typcs dc diagrammcs associs.
Nous vcrrons tout d'abord commcnt dfinir lcs lmcnts structurcls dc
basc dc notrc modlc dans lc diagrammc dc dfinition dc blocs. Nous
apprcndrons cnsuitc a dcrirc la dcomposition dcs lmcnts complcxcs
avcc lc diagrammc intcrnc dc bloc. Nous vcrrons cnfin commcnt
structurcr notrc modlc cn packagcs, a dcs fins dc travail cn quipc ou dc
rutilisation.
4
Diagramme
de dfinition de b|ocs
Cc chapitrc prscntc lc diagrammc dc dfinition dc blocs. Lc
bloc SysML ( block ) constituc la briquc dc basc pour la
modlisation dc la structurc d'un systmc. Il pcut rcprscntcr un
systmc complct, un soussystmc ou un composant lmcntairc.
Lcs blocs sont dcomposablcs ct pcuvcnt possdcr un
comportcmcnt. Lc diagrammc dc dfinition dc blocs (block
dcfinition diagram ou bdd) dcrit la hirarchic du systmc ct lcs
classifications systmc/composant.
bloc eI bdd
valeur, propriI, value Iype
composiIioh, agrgaIioh, associaIioh eI ghralisaIioh
60
Ioc et proprit
Lc bloc SysML (block) constituc la briquc dc basc pour la modlisation dc la structurc d'un
systmc. Il pcut rcprscntcr un systmc complct, un soussystmc ou un composant l
mcntairc. Lc bloc pcrmct dc dcrirc galcmcnt lcs flots qui circulcnt a travcrs un systmc.
Lcs blocs sont dcomposablcs ct pcuvcnt possdcr un comportcmcnt. n pcut s'cn scrvir
pour rcprscntcr dcs cntits physiqucs, mais aussi dcs cntits logiqucs ou conccptucllcs.
Lcs proprits sont lcs caractristiqucs structurcllcs dc basc dcs blocs. llcs pcuvcnt ctrc
dc dcux typcs principaux :
lcs valcurs (.alue properties) dcrivcnt dcs caractristiqucs quantifiablcs cn tcrmc dc
.alue types (domainc dc valcur, dimcnsion ct unit optionncllcs) ,
61
lcs partics (part properties) dcrivcnt la hirarchic dc dcomposition du bloc cn tcrmcs
d'autrcs blocs.
Par cxcmplc, si l'on considrc lc bloc \oiturc, on pcut dfinir dcs valcurs :
numro d'immatriculation ,
kilomtragc ,
vitcssc courantc ,
ctc.
La valcur vitcssc courantc scra typc par un .alue type \itcssc, luimcmc dfini par un
typc dc basc rcl, unc dimcnsion istancc/tcmps ct unc unit km/h. ans lcs pays anglo
saxons, l'unit pourra ctrc milcs/h.
Pour cc mcmc bloc, on pourra dfinir dcs partics tcllcs quc :
un motcur ,
quatrc roucs ,
quatrc portcs ,
un coffrc ,
ctc.
Chaquc bloc (ou typc) dfinit un cnscmblc d'instanccs partagcant lcs proprits du bloc,
mais possdant chacunc unc idcntit uniquc. Par cxcmplc : ma voiturc, dc numro
d'immatriculation : 2009 UML 31, ct dc kilomtragc : 92 000, cst unc instancc du bloc
\oiturc.
Lc diagrammc dc dfinition dc bloc cst utilis pour rcprscntcr lcs blocs, lcurs proprits,
lcurs rclations.
62
ans un bdd, un bloc cst rcprscnt graphiqucmcnt par un rcctanglc dcoup cn compar
timcnts. Lc nom du bloc apparait tout cn haut, ct constituc l'uniquc compartimcnt obli
gatoirc. Tous lcs autrcs compartimcnts ont dcs labcls indiquant cc qu'ils conticnncnt :
valcurs, partics, ctc.
Lc motcl b1ock apparait par dfaut, sauf si nous dfinissons dc nouvcaux motscls
tcls quc sysfem , subsysfem , ctc. ans l'cxcmplc suivant, nous avons modlis lc
radiorvcil cn tant quc systmc a l'tudc, avcc unc valcur : coulcur, ct dcux partics : radio
ct rvcil.
Nous pouvons prciscr lc typc dcs partics ct dcs valcurs :
la partic radio cst dc typc Radio (un nouvcau bloc a crcr) ,
la partic rvcil cst dc typc Rvcil (un nouvcau bloc a crcr) ,
la valcur coulcur cst dc typc Coulcur (unc numration a crcr).
8.A. -8A C artcuche
Le carIouche ghral du diagramme de dIihiIioh de bloc esI de la Iorme :
bdd |package ou b1oc] hom de 1`1mehf |hom du d1agamme]
Figure 4-1
Le bloc radiorveil
eu laul que sysleue
63
VaIueIype
Lcs valcurs (.alue properties) sont utiliscs pour modliscr lcs caractristiqucs quantita
tivcs dcs blocs. Il cst trs important dc bicn dfinir lcs typcs dc ccs valcurs cn tcrmcs dc
.alue types rutilisablcs.
SysML pcrmct d'associcr a chaquc typc dc valcur unc dimcnsion ct unc unit option
ncllcs. n pcut galcmcnt spcificr unc valcur initialc (nom valcur - valcur initialc), ainsi
qu'unc multiplicit (1 par dfaut).
Figure 4-2
Le bloc radiorveil avec
quelques proprils lypes
N 0IA Magicraw et Ies paramtres de bIccs
La couleur de Iohd des blocs, l'humraIioh, eIc. esI auIomaIiquemehI gre par Magic0raw qui
diIIrehcie cerIaihs cohcepIs. J'ai gard majoriIairemehI les couleurs sIahdards proposes par l'ouIil,
sauI quahd j'ai Irouv qu'uhe modiIicaIioh pouvaiI amliorer le cohIorI du lecIeur.
8.A .-8A MuItipIicit
Uhe mulIipliciI esI uh ihIervalle ehIre uhe borhe ihIrieure eI uhe borhe suprieure :
la borhe ihIrieure peuI-Ire O (opIiohhelle) ou h'imporIe quel ehIier posiIiI ,
la borhe suprieure peuI Ire 1, plusieurs (hoI ), ou uh ehIier posiIiI.
La mulIipliciI esI hoIe ehIre crocheIs. Si les borhes sohI gales, oh h'criI qu'uhe valeur eI la
valeur par dIauI eh SysML esI |1|.
64
Lcs .alue types sont bass sur lcs typcs dc basc proposs par SysML, a savoir :
lcs typcs primitifs : integer, string, boolean, real, ctc. ,
lcs numrations qui dfinisscnt un cnscmblc dc valcurs nommcs (commc la coulcur
dans lc paragraphc prcdcnt) ,
lcs typcs structurs, pcrmcttant dc dfinir plusicurs champs, chacun tant a son tour
unc valcur.
Rcprcnons l'cxcmplc du radiorvcil : l'hcurc courantc affichc par lc rvcil, l'hcurc d'alarmc,
ct l'hcurc projctc au plafond sont toutcs lcs trois du mcmc typc. Il cst important dc dfinir
unc fois pour toutcs un .alue type Horodatagc, contcnant dcux champs (hcurcs ct minutcs),
par cxcmplc : 23:59. n parlc ici dc .alue type structur, luimcmc bas sur dcux typcs sim
plcs h ct mn, dfinis avcc unc dimcnsion Tcmps ct chacun unc unit.
L'cnscmblc dc ccs dfinitions cst rcprscnt sur lc diagrammc suivant. Notcz lcs con
traintcs sur lcs units pcrmcttant dc borncr lcs valcurs possiblcs, ainsi quc lcs valcurs par
dfaut dans lc bloc Rvcil. Nous avons galcmcnt illustr la notion dc multiplicit cn
indiquant quc l'hcurc projctc cst optionncllc (projcctcur allum ou pas) : |0..1|.
Figure 4-3
Le bloc Rveil avec
l'euseuble des value lypes
65
Partie
Rcvcnons sur la notion dc partic (part property) introduitc au prcmicr paragraphc.
Il s'agit d'unc rclation dc composition cntrc blocs, aussi appcl rclation toutpartic , dans
laqucllc un bloc rcprscntc lc tout, ct lcs autrcs scs partics. Unc instancc du tout pcut contcnir
plusicurs instanccs d'unc partic, grcc a la notion dc multiplicit, voquc prcdcmmcnt.
Lcs partics (parts) pcuvcnt ctrc listcs dans un compartimcnt du bloc, avcc lc format suivant :
hom paf1e : hom b1oc |mu1f1p11c1f]
Si nous rcprcnons l'cxcmplc dc la voiturc qui conticnt quatrc roucs, unc prcmirc rcpr
scntation cn cst donnc sur la figurc suivantc. ans cct cxcmplc, la voiturc cst lc tout, ct
lcs roucs sont rcprscntcs par dcs partics. Chacunc dcs quatrc roucs a unc dfinition
communc donnc par lc bloc Rouc.
8.A .-8A C cntrainte
Uhe cohIraihIe esI simplemehI uhe cohdiIioh porIahI sur uh ou plusieurs lmehIs du modle qui
doiI Ire vriIie par les lmehIs cohcerhs. Flle esI hoIe ehIre accolades }, eI peuI Ire ihsre
au besoih dahs uhe hoIe graphique (le posI-iI).
Figure 4-4
Preuier bdd du bloc voilure
66
Si nous considrons maintcnant quc lcs roucs avant ont un rlc diffrcnt dcs roucs arrirc,
parcc qu'cllcs sont rclics au motcur (traction avant) ct qu'cllcs pcuvcnt avoir unc prcssion
diffrcntc, nous voulons pouvoir lcs diffrcncicr cn tant quc partics. Pour ccla, nous allons
donncr un nom dc rlc aux partics, commc indiqu sur lc schma suivant.
Unc solution cncorc plus dtaillc consistc a fairc apparaitrc quatrc partics dc mcmc typc :
rouc avant gauchc : Rouc ,
rouc avant droitc : Rouc ,
rouc arrirc gauchc : Rouc ,
rouc arrirc droitc : Rouc.
Compositioo
La rclation dc composition cntrc blocs, dans laqucllc un bloc rcprscntc lc tout ct lcs autrcs
scs partics, pcut galcmcnt ctrc rcprscntc graphiqucmcnt. Lc ct du tout cst indiqu par
un losangc plcin. La multiplicit dc cc mcmc ct nc pcut ctrc quc 1 ou 0..1, car unc ins
tancc dc partic nc pcut cxistcr quc dans unc instancc dc tout au maximum a un momcnt
donn. ans notrc cxcmplc, nous allons prciscr qu'unc rouc pcut nc pas appartcnir a unc
Figure 4-5
0euxieue bdd du bloc voilure
67
voiturc a un momcnt donn (multiplicit 0..1 du ct voiturc). u ct dcs partics, on pcut
indiqucr un nom dc rlc ct unc multiplicit (la valcur par dfaut tant toujours 1). Lc dia
grammc qui suit cst donc unc rcprscntation graphiquc altcrnativc du prcdcnt.
Agrgatioo
La rclation d'agrgation (losangc vidc) cst bcaucoup moins fortc quc la rclation dc com
position (losangc plcin). n particulicr, il n'y a pas dc contraintc dc multiplicit du ct
du tout, ct donc pas nccssit d'unc structurc strictc d'arbrc. Mais il y a d'autrcs cas o
l'agrgation cst utilc : pour rcprscntcr lc fait quc la contcnancc n'cst pas vraimcnt struc
turcllc ct obligatoirc, mais plus conjoncturcllc. Si nous voulons cxprimcr lc fait quc la voi
turc conticnt vcntucllcmcnt dcs bagagcs lors d'un dpart cn vacanccs, nous utiliscrons
l'agrgation ct pas la composition. n cffct, contraircmcnt aux roucs qui font partic int
grantc dc la voiturc dc mcmc quc lc motcur ct lcs sigcs, on nc pcut pas dirc la mcmc
Figure 4-6
Jroisieue bdd du bloc voilure
68
chosc dcs bagagcs. Si lcs roucs sont dcs partics (part properties), on dit quc lcs bagagcs
sont dcs proprits partagcs (shared properties), ou rfrcnccs. Nous avons volontairc
mcnt opt pour un typc trs gnral pour lcs bagagcs quc nous avons appcl Contcncur
(gnralisation dc sac, valisc, ctc.). La rcprscntation sous formc dc compartimcnts cst
donnc par la figurc suivantc.
La rcprscntation graphiquc altcrnativc dc la rclation d'agrgation cst donnc ciaprs.
Figure 4-7
bdd du bloc voilure
avec rreuces
Figure 4-8
bdd du bloc voilure
avec agrgaliou
69
Associatioo
Un dcrnicr typc dc rclation cntrc blocs s'appcllc l'association. L'association cst unc rcla
tion n'impliquant pas dc contcnancc, commc la composition ou l'agrgation, mais unc
rclation d'gal a gal. Par cxcmplc, notrc voiturc roulc habitucllcmcnt sur unc routc (au
scns largc). llc cst la proprit d'unc pcrsonnc, qui pcut cn possdcr plusicurs ct jouc lc
rlc dc propritairc. Ccs dcux rclations sont rcprscntcs par dcs associations cn SysML
(ligncs simplcs).
8.A .-8A A sscciaticn
Uhe associaIioh reprsehIe uhe relaIioh smahIique durable ehIre deux blocs.
Fxemple : Uhe persohhe peuI possder des voiIures. La relaIioh possde esI uhe associaIioh ehIre les
blocs Persohhe eI voiIure. AIIehIioh : mme si le verbe qui homme uhe associaIioh semble privil-
gier uh sehs de lecIure, uhe associaIioh ehIre blocs esI par dIauI bidirecIiohhelle. 0ohc impliciIe-
mehI, l'exemple prcdehI ihcluI galemehI le IaiI qu'uhe voiIure esI possde par uhe persohhe.
Les composiIiohs eI les agrgaIiohs sohI des cas parIiculiers d'associaIioh.
Figure 4-9
bdd du bloc voilure
avec associalious
70
Lcs associations donncnt licu a dcs rfrcnccs dans lcs dcux blocs rclis (commc lcs agr
gations). Ainsi la voiturc a unc rfrcncc supplmcntairc appclc propritairc, dc typc
Pcrsonnc, ct unc rfrcncc optionncllc anonymc dc typc Routc. Lcs blocs Pcrsonnc ct
Routc ont pour lcur part unc rfrcncc multiplc dc typc \oiturc.
Si l'on souhaitc cxprimcr lc fait quc dans notrc contcxtc, la voiturc doit avoir unc rf
rcncc vcrs la routc cmpruntc, mais quc la routc par contrc n'a pas bcsoin dc connaitrc
toutcs lcs voiturcs qui l'cmpruntcnt a un momcnt donn, il faut rcndrc l'association cntrc
ccs dcux blocs unidircctionncllc.
8.A .-8A MuItipIicits d'une Asscciaticn
Aux deux exIrmiIs d'uhe associaIioh, oh doiI Iaire Iigurer uhe ihdicaIioh de mulIipliciI. Flle sp-
ciIie sous la Iorme d'uh ihIervalle le hombre d'ihsIahces qui peuvehI parIiciper a uhe relaIioh avec
uhe ihsIahce de l'auIre bloc dahs le cadre d'uhe associaIioh. Uhe ihsIahce esI uh exemplaire d'uh
cerIaih bloc possdahI uhe idehIiI propre.
Fxemple : uhe persohhe peuI possder plusieurs voiIures (ehIre zro eI uh hombre quelcohque) ,
uhe voiIure esI possde par uhe seule persohhe.
Figure 4-10
bdd avec couparliueuls
rreuces couplls
71
Unc association unidircctionncllc possdc unc flchc pointant vcrs lc bloc rfrcnc (dans
notrc cas : Routc). Il cst galcmcnt souhaitablc dc nommcr l'cxtrmit du ct Routc,
afin dc nommcr la rfrcncc corrcspondantc.
AI I| N II0 N Asscciaticn unidirecticnneIIe
Pour l'ihsIahI, hous avohs uIilis des associaIiohs eI composiIiohs bidirecIiohhelles, qui dohhehI des
rIrehces ou des parIies des deux cIs. Si l'oh souhaiIe qu'il h'y aiI qu'uhe rIrehce (ou parIie)
que d'uh seul cI, oh peuI rehdre l'associaIioh uhidirecIiohhelle eh ajouIahI uhe Ilche poihIahI
vers le Iype de la rIrehce. Les rIrehces ou parIies peuvehI Ire ajouIes IexIuellemehI dahs des
comparIimehIs spciIiques (comme prcdemmehI), ou mme dessihes graphiquemehI dahs uh
comparIimehI ddi appel sIrucIure (comme sur le diagramme suivahI).
Figure 4-11
Slruclure des blocs suivaul
le lype d'associaliou
72
Si l'on nc montrc pas l'association, mais lcs compartimcnts dcs blocs, on rcmarquc qu'il y
a bicn unc rfrcncc dc typc Routc dans \oiturc, mais pas dc rfrcncc dc typc \oiturc
dans Routc.
CoraIisatioo
Toutcs lcs dfinitions qui apparaisscnt dans un bdd pcuvcnt ctrc organiscs dans unc hi
rarchic dc classification. Lc but cst souvcnt dc factoriscr dcs proprits communcs
(valcurs, partics, ctc.) a plusicurs blocs dans un bloc gnralis. Lcs blocs spcialiss
Figure 4-12
bdd avec associaliou
uuidirecliouuelle
Figure 4-13
bdd avec couparliueuls
uis a jour suile a l'associaliou
uuidirecliouuelle
73
hritcnt dcs proprits du bloc gnralis ct pcuvcnt comportcr dcs proprits spcifi
qucs supplmcntaircs. La gnralisation cn SysML sc rcprscntc graphiqucmcnt par unc
flchc triangulairc pointant sur lc bloc gnralis.
Par cxcmplc, nous pouvons gnraliscr lc bloc \oiturc cn un bloc Moycn dc transport, qui
comprcndra lcs valcurs dc marquc, modlc, vitcssc courantc, ctc. Cc bloc gnralis pcut
sc spcialiscr cn \oiturc, mais aussi par cxcmplc cn 8atcau ct Avion. Pour simplificr, nous
supposcrons quc sculcs lcs voiturcs ont un numro d'immatriculation, sculs lcs batcaux
ont un tirant d'cau ct lcs avions unc altitudc. Si nous nous rcstrcignons au contcxtc dc
moycns dc transport pcrsonncls, nous pouvons galcmcnt gnraliscr l'association avcc lc
bloc Pcrsonnc.
Figure 4-14
bdd avec relaliou
de guralisaliou
74
Par la spcialisation, lcs sousblocs pcuvcnt ajoutcr dcs proprits, mais aussi rcstrcindrc
lcs multiplicits, ajoutcr ou modificr lcs valcurs initialcs, ctc. Il cst ainsi possiblc
d'cxprimcr lc fait quc lcs moycns dc transport pcuvcnt possdcr dcs partics dc typc
Motcur, mais quc lcs voiturcs cn ont cxactcmcnt unc, lcs batcaux zro ou unc, ct lcs
avions un nombrc quclconquc (lcs plancurs n'cn ont pas, lcs autrcs avions souvcnt au
moins dcux).
Sur lc diagrammc prcdcnt, nous avons ainsi ajout unc partic motcur dc multiplicit
variablc au bloc gnralis Moycn dc transport. Lcs blocs \oiturc ct 8atcau rcdfinisscnt
la multiplicit dc la partic motcur, alors quc lc bloc Avion cn hritc simplcmcnt.
Figure 4-15
bdd avec relaliou
de guralisaliou
el reslriclious
75
pratioo
Tout bloc possdc galcmcnt dcs proprits comportcmcntalcs, lcs principalcs tant
appclcs oprations. Unc opration rcprscntc soit :
unc rcquctc synchronc (l'mcttcur cst bloqu cn attcntc d'unc rponsc), avcc scs vcn
tucls paramtrcs (ou argumcnts) cn cntrc, sortic, ou lcs dcux ,
unc rcquctc asynchronc, aussi appclc rccption (l'mcttcur n'cst pas bloqu cn attcntc
d'unc rponsc). Chaquc rccption cst associc a un signal qui dfinit un mcssagc avcc
scs vcntucls paramtrcs. cs rccptions dfinics dans dcs blocs diffrcnts pcuvcnt
rpondrc au mcmc typc dc signal, cc qui pcrmct dc rutiliscr la dfinition dc mcssagcs
communs.
Lcs oprations sont montrcs dans un compartimcnt supplmcntairc avcc lcur signaturc
(nom, paramtrcs ct typc dc rctour) :
hom_opaf1oh {11sfe de paamfes} : fype_efou
La listc dc paramtrcs cst unc listc d'lmcnts spars par dcs virgulcs, chaquc lmcnt
tant not :
d1ecf1oh hom_paamfe : fype_paamfe
la dircction pouvant prcndrc unc dcs valcurs suivantcs : , , .
Lcs rccptions sont souvcnt montrcs dans un compartimcnt a part. Lcs signaux pcuvcnt
a lcur tour ctrc dfinis commc dcs blocs avcc un motcl s1gha1 .
Sur l'cxcmplc dc la voiturc, nous allons ajoutcr quclqucs oprations commc la dmarrcr
ou l'arrctcr, changcr unc rouc, ainsi quc la vcndrc a quclqu'un. Nous allons galcmcnt
prcndrc cn comptc la rccption dc signaux GPS.
76
tude de cas
Rcprcnons notrc tudc dc cas maintcnant quc nous avons vu lcs principaux conccpts du
bdd. Nous allons considrcr quc notrc systmc (lc radiorvcil) conticnt dcux blocs
principaux : un rvcil ct unc radio. Ccs blocs dc prcmicr nivcau rcprscntcnt dcs conccpts
logiqucs, dcs fonctionnalits, ct pas cncorc dcs composants physiqucs. Nous vcrrons plus
prcismcnt commcnt projctcr lcs composants physiqucs sur lcs composants logiqucs
quand nous parlcrons dc l'important conccpt d'allocation au chapitrc 10.
Si nous commcnons a rpartir lcs proprits ct lcs oprations, cn fonction dcs rcsponsa
bilits quc nous dcidons d'attribucr aux diffrcnts blocs, nous obtcnons un prcmicr bdd
commc indiqu sur la figurc suivantc.
Ajoutons quclqucs lmcnts a cc prcmicr diagrammc :
la radio rcoit lcs signaux HF dcs stations dc radio ,
Figure 4-16
bdd avec opralious
el rceplious
77
lcs cxigcnccs prciscnt la nccssit d'un dispositif dc sauvcgardc pour conscrvcr cn
mmoirc lcs rglagcs cn cas dc coupurc dc courant. Pour ccla, nous choisissons dc
pouvoir intgrcr unc ou plusicurs pilcs amoviblcs. La notc avcc lc motcl
af1oha1e cxpliquc cc choix. Lcs pilcs sont rcuprablcs cn fin dc vic du radio
rvcil : nous utiliscrons plutt unc rclation d'agrgation ,
lc rvcil conticnt un bloc affichcur, un bloc projcctcur, ct un bloc horlogc. n fait,
sclon lcs radiorvcils, il y a un soit un uniquc bloc horlogc garantissant l'affichagc
d'unc hcurc cohrcntc sur lc radiorvcil ct au plafond, ou bicn dcux horlogcs
diffrcntcs : unc pour l'affichcur standard, unc autrc pour lc projcctcur. Lc problmc
dans cc cas tant lc risquc d'incohrcncc cntrc l'hcurc projctc au plafond ct l'hcurc du
radiorvcil qui cst la rfrcncc vis a vis dc l'alarmc, commc j'cn ai fait l'cxpricncc
Figure 4-17
Preuier bdd du radiorveil
78
rapidcmcnt avcc mon prcmicr radiorvcil a projcctcur achct pas chcr... Nous allons
cxpliqucr ccs dcux possibilits grcc a unc notc avcc lc motcl pob1em .
'un point dc vuc mthodologiquc, il cst souvcnt intrcssant dc rcmontcr d'un cran ct dc
modliscr lc contcxtc du bloc principal (cclui qui portc lc motcl sysfem ). n pcut
ainsi rcprscntcr l'cnvironncmcnt du systmc, avcc dans notrc cxcmplc, non sculcmcnt lcs
Figure 4-18
Exeuple plus couplel
de bdd du radiorveil
79
utilisatcurs humains ct lcs stations dc radio, mais galcmcnt l'cnvironncmcnt physiquc : la
chambrc avcc son plafond sur lcqucl scra projctc l'hcurc la nuit, ainsi quc scs priscs lcc
triqucs. Notcz l'utilisation a titrc d'cxcmplc du strotypc non standard exfeha1 ct
d'unc coulcur dc rcmplissagc diffrcntc pcrmcttant dc diffrcncicr ccrtains lmcnts
cxtcrncs qui nc sont pas dcs actcurs a proprcmcnt parlcr (ils n'intcrvicnncnt pas dans lcs
cas d'utilisation).
Figure 4-19
bdd du radiorveil
daus sou euvirouueueul
5
le diagramme
de b|oc interne
Cc chapitrc prscntc lc diagrammc dc bloc intcrnc. Lc
diagrammc dc bloc intcrnc (internal block diagram ou ibd) dcrit
la structurc intcrnc du systmc cn tcrmcs dc partics, ports ct
conncctcurs.
bloc eI ibd
parIie
porI eI cohhecIeur
81
Parties et coooecteurs
n pcut rcprscntcr la conncxion cntrc lcs lmcnts (parts cn anglais, quc jc traduis par
parties) d'un bloc au moycn d'un diagrammc dc bloc intcrnc. Cc diagrammc montrc prin
cipalcmcnt lcs rclations cntrc lmcnts dc mcmc nivcau, ainsi quc lcs vcntucllcs multi
plicits dcs partics.
8.A .-8A C artcuche
Le carIouche ghral du diagramme de bloc ihIerhe esI de la Iorme :
1bd |b1oc] hom du b1oc |hom du d1agamme]
82
Parties et rfreoces
ans l'cxcmplc dc la voiturc, nous pouvons commcnccr par rcprscntcr lcs roucs avant ct
arrirc ainsi quc lc motcur. La rclation dc composition du bdd sc traduit dc la faon sui
vantc dans l'ibd :
lc cadrc dc l'ibd rcprscntc lc bloc cnglobant. Il fournit lc contcxtc pour tous lcs l
mcnts du diagrammc ,
chaquc cxtrmit d'unc rclation dc composition, ou lmcnt du compartimcnt parts,
apparait commc un bloc a l'intricur du cadrc. Lc nom du bloc cst idcntiquc a cc qui
apparaitrait dans lc compartimcnt parts, soit : hom_paf1e : hom_b1oc
|mu1f1p11c1f].
La multiplicit pcut galcmcnt ctrc rcprscntc dans lc coin supricur droit du rcctanglc.
S'il n'y a pas d'indication dc multiplicit, cllc cst supposc valoir cxactcmcnt 1.
Figure 5-1
Preuier ibd du bloc voilure
83
Lcs associations simplcs ct lcs agrgations sont rcprscntcs dc faon similairc aux com
positions, sauf quc lc rcctanglc du bloc cst cn pointill. Ainsi, lcs bagagcs pcuvcnt appa
raitrc dans l'ibd, mais aussi la routc cmpruntc, si nous lc souhaitons (il cst clair quc lcs
bagagcs sont dans la voiturc ct qu'il cst intrcssant dc lcs rcprscntcr, pour la routc c'cst
plus discutablc...).
Il cst important dc notcr qu'on pcut rcprscntcr plusicurs nivcaux dc dcomposition ou dc
rfrcncc sur un mcmc ibd. ans notrc cxcmplc, si nous voulons cxprimcr lc fait quc lcs
bagagcs sont dans lc coffrc dc la voiturc, il suffit d'ajoutcr unc partic coffrc a la voiturc, ct
dc dplaccr la rfrcncc bagagcs a l'intricur dc ccttc nouvcllc partic.
Figure 5-2
ibd du bloc voilure
avec rreuces
84
Lc diagrammc dc bloc intcrnc cst surtout utilc pour montrcr lcs conncxions contcxtucllcs
cntrc lcs partics d'un bloc, cc qui nc pcut pas ctrc rcprscnt sur un bdd.
Coooecteur
Lc conncctcur cst un conccpt structurcl utilis pour rclicr dcux partics ct lcur fournir
l'opportunit d'intcragir, bicn quc lc conncctcur nc disc ricn sur la naturc dc ccttc intcrac
tion. Lcs conncctcurs pcrmcttcnt galcmcnt dc rclicr plus fincmcnt lcs partics a travcrs
dcs ports (commc dcrit au paragraphc suivant). L'cxtrmit d'un conncctcur pcut pos
Figure 5-3
ibd du bloc voilure
a plusieurs uiveaux
85
sdcr unc multiplicit qui dcrit lc nombrc d'instanccs qui pcuvcnt ctrc conncctcs par
dcs licns dcrits par lc conncctcur.
Un conncctcur pcut ctrc typ par unc association. Il pcut ainsi possdcr unc flchc unidi
rcctionncllc, si l'association qui lc typc la possdc. Son nom complct cst dc la formc :
hom_cohhecfeu : hom_assoc1af1oh
Unc partic pcut ctrc conncctc a plusicurs autrcs partics, mais il faut rcprscntcr un con
ncctcur spar pour chaquc liaison.
ans notrc cxcmplc, a l'intricur du bloc \oiturc, lc motcur cst rcli aux dcux roucs avant,
mais pas aux roucs arrirc. Lcs quatrc roucs sont (normalcmcnt...) rclics a la routc.
Sur lc diagrammc suivant cst rcprscnt l'ibd d'un batcau a motcur. Notcz quc lc motcur,
du mcmc typc quc dans lc cas dc la voiturc, cst ccttc foisci conncct a dcs hliccs, parcc
quc nous sommcs dans lc contcxtc d'un batcau.
La multiplicit cst ici rcprscntc sur lc conncctcur, ct pas dans la partic, pour montrcr
l'autrc possibilit.
Pour bicn comprcndrc l'intrct dc l'ibd par rapport au bdd, cssayons dc rcprscntcr lcs
associations cntrc lc bloc Motcur ct lcs blocs Rouc ct Hlicc sur un prcmicr bdd.
Qucls sont lcs problmcs dc cc prcmicr bdd :
AI I| N II0 N VccabuIaire SysML
Soyohs prcis :
uhe associaIioh (agrgaIioh, ou composiIioh) relie des blocs ,
uh cohhecIeur relie des parIies ,
uh lieh relie des ihsIahces.
86
n pourrait dja argumcntcr sur lc fait qu'unc instancc dc Motcur pcut appartcnir a 0 ou
1 voiturc ct 0 ou 1 batcau. Cc qui voudrait dirc qu'unc mcmc instancc dc Motcur pourrait
ctrc a la fois dans unc voiturc ct un batcau. La smantiquc dc la composition cn SysML
Figure 5-4
ibd du bloc voilure avec
couuecleurs
Figure 5-5
ibd du bloc Baleau
87
visc a intcrdirc ccttc possibilit, mais il scrait cncorc plus clair dc l'cxprimcr sur lc dia
grammc cn introduisant par cxcmplc un bloc abstrait gnralis \hiculc.
Figure 5-6
bdd iucorrecl (preuier essai)
Figure 5-7
bdd iucorrecl (deuxieue essai)
88
Mais cc n'tait malhcurcuscmcnt pas lc principal problmc dc ccs dcux bascs dc donncs !
n cffct, lcs associations dans un bdd sont dfinics unc fois pour toutcs, ct doivcnt ctrc
vrifics dans tous lcs contcxtcs, pour toutcs lcs instanccs. ans lc cas dcs dcux associa
tions Actionnc, ccla signific donc quc :
lc motcur d'unc ccrtainc voiturc pcut actionncr lcs hliccs d'un batcau ,
lc motcur d'un batcau pcut actionncr lcs roucs d'unc voiturc ,
lc motcur d'unc voiturc pcut mcmc actionncr lcs roucs d'unc autrc instancc dc voi
turc...
Nous voyons donc claircmcnt quc lc modlc propos n'cst pas du tout satisfaisant. C'cst
justcmcnt pour ccla quc SysML proposc lc diagrammc dc bloc intcrnc : pour rcprscntcr
dcs liaisons contcxtucllcs cntrc dcs partics a l'intricur d'un ccrtain bloc cnglobant.
8.A .-8A 8 Icc abstrait
Uh bloc esI diI absIraiI si sa dIihiIioh he permeI pas de l'ihsIahcier.
Oh se serI souvehI de blocs absIraiIs dahs les arbres de ghralisaIioh pour IacIoriser des propriIs
sIrucIurelles ou comporIemehIales commuhes a d'auIres blocs cohcreIs (ihsIahciables).
Uh bloc absIraiI esI reprsehI eh iIalique.
89
Ports et ioterfaces
Iypes de ports
Lc diagrammc dc bloc intcrnc pcrmct galcmcnt dc dcrirc la logiquc dc conncxion, dc
scrviccs ct dc flots cntrc blocs grcc au conccpt dc port . Lcs ports dfinisscnt lcs
points d'intcraction offcrts (pro.ided) ct rcquis (required) cntrc lcs blocs. Un bloc pcut
avoir plusicurs ports qui spcificnt dcs points d'intcraction diffrcnts. Lcs ports pcuvcnt
ctrc dc dcux naturcs :
flux (flo. port) : cc typc dc port autorisc la circulation dc flux physiqucs cntrc lcs blocs.
La naturc dc cc qui pcut circulcr va dcs fluidcs aux donncs, cn passant par l'ncrgic ,
standard : cc typc dc port autorisc la dcscription dc scrviccs logiqucs cntrc lcs blocs, au
moycn d'intcrfaccs rcgroupant dcs oprations.
La distinction cntrc ccs dcux typcs dc ports cst souvcnt d'ordrc mthodologiquc. Lcs flo.
ports sont bicn adapts pour rcprscntcr dcs flux continus d'cntits physiqucs, alors quc
lcs ports standards sont bicn adapts a l'invocation dc scrviccs, typiqucmcnt cntrc com
posants logicicls. Unc combinaison dcs dcux cst souvcnt utilc, mais lcs ports standards nc
pcuvcnt ctrc connccts dircctcmcnt aux flo. ports ct rciproqucmcnt.
ans notrc cxcmplc dc radiorvcil, lcs boutons dc marchcarrct du projcctcur ct dc la radio
sont typiqucmcnt dcs ports standards. L'cntrc d'ncrgic lcctriquc commc lcs ondcs radio,
la projcction dc lumirc ou la diffusion dc son sont typiqucmcnt dcs flo. ports.
90
FIow ports
Lcs ports dc typc flux sont soit atomiqucs (un scul flux), soit compositcs (agrgation
dc flux dc naturcs diffrcntcs). ans l'cxcmplc prcdcnt, lcs flo. ports Projcction,
Rccption radio ct Alimcntation sont tous atomiqucs. Ccla signific qu'ils nc spcificnt
qu'un scul typc dc flux cn cntrc ou cn sortic (ou lcs dcux), la dircction tant simplcmcnt
indiquc par unc flchc a l'intricur du carr rcprscntant lc port. Pour lcur part, lcs ports
standards sont simplcmcnt rcprscnts par dcs carrs.
Lcs flo. ports pcuvcnt ctrc typs par un bloc, un .alue type ou un signal rcprscntant lc typc
d'lmcnt pouvant circulcr cn cntrc ou cn sortic du port. Nous allons utiliscr un bloc
Lumirc pour typcr lc flo. port dc projcction, un bloc lcctricit pour l'alimcntation, ct lc
signal Signal HF (cr au chapitrc prcdcnt) pour la rccption radio. Plusicurs ports pcu
vcnt avoir lc mcmc typc, commc la projcction ct l'affichagc dc l'hcurc par cxcmplc.
n pcut galcmcnt associcr unc multiplicit a un port. Il cst ainsi possiblc d'cxprimcr dc
faon concisc qu'un ordinatcur possdc plusicurs ports US8 idcntiqucs, ou qu'un radio
rvcil pcut avoir un ou dcux hautparlcurs. La notation compltc d'un flo. port cst donc
dc la formc : hom_pof : hom_1fem |mu1f1p11c1f].
Figure 5-8
Exeuples de porls
du radiorveil
91
Lcs ports faisant partic dc la dfinition dcs blocs, il cst tout a fait possiblc dc lcs fairc
apparaitrc ds lc bdd. ans cc cas, ils pcuvcnt ctrc rcprscnts soit graphiqucmcnt
commc prcdcmmcnt, soit sous la formc d'un compartimcnt supplmcntairc.
Mais l'intrct principal dc l'ibd consistc la cncorc a pouvoir dcrirc lcs conncxions cntrc
lcs ports dc diffrcnts blocs au moycn dc conncctcurs, alors quc lc bdd nc pcrmct quc dc
dfinir lcs ports sans lcs conncctcr. Nous allons ainsi pouvoir conncctcr la projcction au
plafond dc la chambrc, la rccption radio aux stations, ctc.
Figure 5-9
Exeuples de lowporls
lyps du radiorveil
Figure 5-10
|lowporls reprseuls
daus uu bdd (couparliueul)
92
Item fIow
Lcs lmcnts dc flot (item flo.s) pcrmcttcnt dc dcrirc cc qui circulc rcllcmcnt sur lcs con
ncctcurs, alors quc lcs flo. ports dfinisscnt cc qui pcut circulcr. La distinction n'cst pas tou
jours utilc, mais pcut sc rvlcr nanmoins trs pratiquc dans ccrtains cas. Prcnons l'cxcmplc
d'un rscrvoir dc liquidc. Il a typiqucmcnt dcux ports atomiqucs typs Liquidc, l'un cn
cntrc, l'autrc cn sortic, voirc mcmc un scul port d'cntrcsortic (un jcrrycan par cxcmplc).
Figure 5-11
Exeuples de lowporls
couuecls du radiorveil
93
cs instanccs dc Jcrrycan utiliscs dans dcs contcxtcs diffrcnts acccptcnt diffrcnts typcs
dc flux, du momcnt quc ccuxci sont dcs spcialisations dc Liquidc. ans lc dscrt, dans
unc fctc, ou cn cas dc pannc schc, cc qui circulcra rcllcmcnt pourra ctrc rcprscnt pr
cismcnt grcc a la notation SysML dc l'itcm flo. (flchc noirc nommc sur lc conncc
tcur), commc indiqu sur lc diagrammc suivant.
Figure 5-12
0iuiliou d'uu jerrycau
lous usages (bdd)
Figure 5-13 Jrois ulilisalious d'uu jerrycau avec des lux direuls
94
Tout ccci n'cst bicn sr possiblc quc parcc quc au, \in ct sscncc sont dcs spcialisa
tions dc Liquidc, commc dclar dans un bdd.
FIow specificatioo
Quand un point d'intcraction a unc intcrfacc complcxc avcc plusicurs flux, lc flo. port
corrcspondant doit ctrc modlis commc un flo. port compositc (ou non atomiquc).
ans cc cas, lc port doit ctrc typ par unc spcification dc flux (flow spccification). Ccttc
spcification dc flux doit ctrc dfinic dans un bdd. llc inclut plusicurs proprits dc flux,
chacunc ayant un nom, un typc ct unc dircction.
Un flo. portcompositc cst indiqu graphiqucmcnt par dcux crochcts sc faisant facc ( ~)
dcssins a l'intricur du symbolc du port. Quand dcux partics intcragisscnt, cllcs chan
Figure 5-14
Jrois spcialisalious
du bloc Liquide (bdd)
Figure 5-15
Nolaliou de la |low
Speciicaliou (bdd)
95
gcnt souvcnt lcs mcmcs flux, mais avcc dcs dircctions opposcs. Plutt qu'ctrc oblig dc
crcr unc dcuximc flo. specification cn invcrsant toutcs lcs dircctions dcs proprits,
SysML pcrmct dc rutiliscr la mcmc spcification cn indiquant simplcmcnt quc lc
dcuximc flow port cst conjugu. Lcs ports conjugus sont rcprscnts graphiqucmcnt cn
invcrsant lcs coulcurs : lcs crochcts sont blancs sur fond noir.
Sur lc diagrammc suivant, nous avons cssay d'illustrcr graphiqucmcnt lcs diffrcntcs
notations dcs flots ports atomiqucs ct compositcs. Pour lc port conjugu, nous avons ima
gin quc l'injcctcur ct lc rscrvoir sc transmcttcnt plusicurs flots dcrits par la flo. specifi-
cation xcmplc dc FS (pcutctrc du carburant ct dc l'air...), dans dcs dircctions opposcs.
Ioterface
Pour dcrirc un comportcmcnt bas sur l'invocation dc scrviccs, lc port standard cst tout a
fait adapt. Mais au licu d'assigncr dircctcmcnt dcs oprations aux ports, il cst plus int
rcssant dc lcs rcgroupcr cn cnscmblcs cohrcnts appcls intcrfaccs.
Figure 5-16
Nolaliou des lowporls
couposiles el coujugus
96
Pour lc radiorvcil, nous pouvons par cxcmplc commcnccr a dfinir (dans un bdd) dcs
intcrfaccs pour la gcstion du volumc dc la radio, lc rglagc ct la mmorisation dcs sta
tions, la misc a jour dcs hcurcs ct dcs minutcs, ctc.
Unc intcrfacc fournic (pro.ided interface) sur un port spcific lcs oprations quc lc bloc
fournit. Unc intcrfacc rcquisc (required interface) spcific lcs oprations dont lc bloc a
bcsoin pour raliscr son comportcmcnt. n gnral, un autrc bloc lcs lui fournira au
moycn d'unc intcrfacc fournic.
Un mcmc bloc pcut fournir ct/ou rcqurir plusicurs intcrfaccs. ans l'cxcmplc ciaprs,
lcs dcux blocs 81 ct 82 fournisscnt l'intcrfacc I2, par contrc 82 utilisc l'intcrfacc I1 qui
cst fournic par 81, ct l'intcrfacc I3. Lc bloc 81 fournit lcs dcux intcrfaccs I1 ct I2 : il pos
sdc donc au moins la runion dcs oprations dcs dcux intcrfaccs.
8.A .8A Interface
Uhe ihIerIace esI uh ehsemble d'opraIiohs absIraiIes (sahs algoriIhmes) cohsIiIuahI uhe sorIe de
cohIraI qui devra Ire ralis par uh ou plusieurs blocs. CraphiquemehI, uhe ihIerIace esI soiI repr-
sehIe comme uh bloc avec uh moI-cl 1hfeface ou le symbole d'uh cercle, soiI direcIe-
mehI comme uh cercle dahs la hoIaIioh cohdehse.
Figure 5-17
Exeuples d'iuleraces
pour le radiorveil (bdd)
97
La formc graphiquc condcnsc cst donnc a la figurc suivantc. L'inconvnicnt dc ccttc
notation cst qu'on nc pcut pas savoir qucllcs sont lcs oprations dfinics dans chaquc
intcrfacc.
8.A .8A k aIisaticn et utiIisaticn
La relaIioh de ralisaIioh ehIre uh bloc eI uhe ihIerIace se dessihe comme uhe ghralisaIioh eh
poihIills. Si l'ihIerIace esI reprsehIe par uh simple cercle, la ralisaIioh deviehI uh simple IraiI.
La relaIioh d'uIilisaIioh ehIre uh bloc eI uhe ihIerIace se dessihe comme uhe Ilche vide eh poih-
Iills. 0ahs la hoIaIioh graphique cohdehse, l'uIilisaIioh deviehI uh simple IraiI eI l'ihIerIace esI
reprsehIe par uh demi-cercle.
CerIaihs ouIils (comme Magic0raw) mlahgehI les deux hoIaIiohs.
Figure 5-18
Exeuple de ralisaliou el
d'ulilisaliou d'iuleraces
98
Port staodard
Plutt quc dc rclicr dircctcmcnt lcs intcrfaccs aux blocs par dcs rclations dc ralisation ou
d'utilisation, on pcut prciscr a qucl port standard cst rattachc chaquc intcrfacc. Un
mcmc port pcut possdcr plusicurs intcrfaccs rcquiscs ou fournics. Plusicurs ports pcu
vcnt ctrc rclis aux mcmcs intcrfaccs.
Sur notrc cxcmplc, nous avons cr un port pour la radio pcrmcttant a la fois dc rglcr lc
volumc ct lcs stations. Il s'agit d'unc abstraction dc l'intcrfacc hommcmachinc (IHM)
dc la radio. Cc port fournit donc dcux intcrfaccs. Au contrairc, si nous imaginons lc cas
o lc projcctcur possdc unc horlogc diffrcntc dc ccllc du rvcil (variantc dcs radio
rvcils a bas prix.), lcs dcux ports dc rglagc dc l'horlogc du radiorvcil ct du projcctcur
raliscnt la mcmc intcrfacc dc modification dcs hcurcs ct minutcs (T_hoodafage). Mais
malhcurcuscmcnt, ricn nc garantit quc lcs implmcntations fournisscnt la mcmc valcur !
Tous ccs cas sont illustrs par la figurc suivantc, qui utilisc classiqucmcnt la notation con
dcnsc dcs intcrfaccs. Attcntion, pour simplificr, ccrtains ports qui apparaissaicnt sur dcs
diagrammcs prcdcnts n'ont pas t montrs.
Figure 5-19
Nolaliou graphique coudeuse
des iuleraces (bdd)
99
tude de cas
Rcprcnonsnotrc tudc dc cas maintcnant quc nous avons vu lcs principaux conccpts dc
l'ibd, ct affin ccrtains conccpts du bdd. Si nous traduisons lcs rclations dc composition
du bdd dc la fin du chapitrc 4 dans un ibd, nous obtcnons lc diagrammc qui suit. Notcz
quc l'outil Magicraw a fait suivrc automatiqucmcnt lcs ports cxtcrncs du radiorvcil
sur lc contour du diagrammc. La pilc dc sccours apparait cn pointills (rfrcncc).
Prcnons tout d'abord la dcision dc modliscr prioritaircmcnt par la suitc un radiorvcil
ayant unc horlogc uniquc. Nous allons ainsi cnlcvcr l'indication dc multiplicit |1..2| sur
la partic h : ho1oge. n fait, nous pourrions tout a fait cnvisagcr dc mcncr cn paralllc
dcux modlcs altcrnatifs pour comparcr lcs dcux solutions dc conccption. Lcs dia
grammcs dynamiqucs montrcraicnt ccrtaincmcnt dcs diffrcnccs galcmcnt.
Figure 5-20
Exeuple de porls slaudards
el d'iuleraces (bdd)
100
nsuitc, nous allons commcnccr a dcrirc lc fait quc l'horlogc du rvcil doit avoir unc
conncxion avcc l'affichcur, lc projcctcur, mais aussi avcc la radio (pour l'activcr a l'hcurc
d'alarmc). La pilc dc sccours, pour sa part, n'cst conncctc qu'a l'horlogc. Pour l'instant,
nous n'ajoutcrons pas dc ports aux partics.
Figure 5-21 Preuiere versiou de l'ibd du radiorveil
101
Il nous rcstc a conncctcr l'cxtricur (radiorvcil boitc noirc) a l'intricur (partics). La
cncorc, nous pourrions commcnccr sans ajoutcr dc port sur lcs partics. Mais nous allons
lc fairc pour montrcr lc cas frqucnt dc conccption dcsccndantc (top-do.n) o lcs ports ct
intcrfaccs cxtcrncs doivcnt ctrc dlgus aux partics.
Figure 5-22 0euxieue versiou de l'ibd du radiorveil
102
AI I| N II0N 8 ehavicr pcrt vs deIegaticn pcrt
Il y a deux cas a cohsidrer lorsqu'uh bloc gre les ihIeracIiohs survehahI sur ses porIs. SoiI il les IraiIe direcIemehI
lui-mme, soiI il dlgue le IraiIemehI a ses parIies.
Si le bloc IraiIe direcIemehI les ihIeracIiohs, le porI esI appel porI de comporIemehI (behavior porI). Les l-
mehIs ehvoys ou reus doivehI alors Ire grs par uhe propriI dyhamique, par exemple uhe opraIioh, uhe
rcepIioh, ou mme uhe machihe a IaIs (voir le chapiIre 7). Ce porI h'esI dohc pas reli aux parIies.
0ahs l'auIre cas, si le bloc dlgue le IraiIemehI a ses parIies, le porI esI appel porI de dlgaIioh (delegaIioh
porI). Le cohhecIeur qui relie des porIs de blocs de hiveaux diIIrehIs esI alors appel cohhecIeur de dlgaIioh, alors
qu'uh cohhecIeur qui relie des porIs au mme hiveau esI appel cohhecIeur d'assemblage (assembly cohhecIor).
0ahs Ious les cas, les cohhecIeurs de dlgaIioh ou d'assemblage doivehI vriIier des cohIraihIes de compaIibiliI.
Ces cohIraihIes sohI lgremehI diIIrehIes dahs le cas des porIs sIahdard. Fh eIIeI, dahs le cas de la dlgaIioh,
les porIs doivehI Iourhir ou uIiliser les mmes ihIerIaces, alors que dahs le cas de l'assemblage, l'uh IourhiI ce que
l'auIre requierI. Les rgles de compaIibiliI eh cas de Iypes spcialiss sohI les mmes que pour les Ilow porIs
(comme sur l'exemple avec les Iypes Fau eI Liquide).
Figure 5-23 Exeuple de couuecleurs sur uu ibd
Sur l'ibd prcdehI, les cohhecIeurs allahI des porIs du bloc ehglobahI aux porIs des parIies sohI des cohhecIeurs de
dlgaIioh. Oh voiI que sur les porIs sIahdards relis, la mme ihIerIace I2 esI Iourhie. Alors que pour les porIs des par-
Iies relis par uh cohhecIeur d'assemblage, l'uh (pb1) IourhiI I1 alors que l'auIre (pb2) l'uIilise. NoIez le porI de com-
porIemehI appel behavior porI du bloc ehglobahI (eh hauI a droiIe) : il h'esI pas reli a uh porI d'uhe parIie.
103
ans notrc tudc dc cas, nous avons choisi dc rcprscntcr sculcmcnt un souscnscmblc
dcs ports ct dcs conncctcurs pour nc pas surchargcr lc diagrammc, mais cc dcrnicr illustrc
nanmoins lcs cxcmplcs prcdcnts.
n notcra lc rlc ccntral dc l'horlogc qui activc la radio ct lc projcctcur (a l'hcurc
d'alarmc), ct qui fournit aussi l'horodatagc a l'affichcur ct au projcctcur. L'activation cst
rcprscntc par unc intcrfacc rcquisc par l'horlogc (mcssagc cnvoy) ct fournic (mcssagc
Figure 5-24 ibd parliel du radiorveil
104
rcu) par lc projcctcur. La Radio fournit unc intcrfacc T_Pad1o qui doit ctrc galcmcnt
compatiblc avcc l'activation, mais qui doit aussi inclurc lcs aspccts IHM, par dlgation
du port cxtcrnc pof Pad1o : ThM. L'intcrfacc T_Pad1o cst donc un surcnscmblc dc
l'intcrfacc T_Acf1vaf1oh, cn tcrmcs d'oprations ct donc dc mcssagcs.
n voit aussi un cxcmplc dc port dc comportcmcnt (beha.ior port) sur la partic radio qui
va traitcr lcs mcssagcs cnvoys par l'horlogc ct l'utilisatcur au travcrs d'unc machinc a
tats (ccllc du chapitrc 7). L'horodatagc cst un flux continu rcprscnt par dcs conncc
tcurs d'asscmblagc cntrc flo. ports.
Rcmarqucz cncorc quc lcs flo. ports dc dlgation sont oricnts dans lc mcmc scns, alors
quc lcs flo. ports d'asscmblagc sont oricnts dans lc scns contrairc (conjugus). Nous
avons prfr nc pas crcr dc ports sur la partic dc nivcau intcrmdiairc appclc eve11 :
Pve11 pour nc pas surchargcr cc diagrammc.
Pour donncr unc autrc illustration dc la puissancc dc SysML, ct la possibilit dc raliscr
plusicurs diagrammcs complmcntaircs, a la manirc dc calqucs supcrposablcs, nous
avons dcssin un autrc ibd cn nous focalisant uniqucmcnt sur l'alimcntation lcctriquc du
radiorvcil. u coup, nous avons introduit un nouvcau bloc f : Tahsfomafeu, dont
lc rlc cst dc transformcr lc courant altcrnatif fourni par la prisc dc courant cn courant
continu. Lc transformatcur alimcntc ainsi toutcs lcs partics du radiorvcil, ct nous avons
pris la pcinc ccttc foisci dc travcrscr proprcmcnt la partic rvcil cn ajoutant un port
intcrmdiairc. u coup, il apparait claircmcnt quc la pilc dc sccours n'alimcntc quc la
partic horlogc, conformmcnt aux cxigcnccs initialcs.
105
Figure 5-25
ibd du radiorveil couceruaul
l'aliueulaliou leclrique
6
le diagramme de packages
Cc chapitrc prscntc lc diagrammc dc packagcs. Lc diagrammc
dc packagcs montrc l'organisation logiquc du modlc ct lcs
vcntucllcs rclations cntrc lcs packagcs.
package, paqueIage
cohIehahce
dpehdahce
modle
vue (view), poihI de vue (viewpoint)
107
Package
n SysML, tout lmcnt dc modlc cst contcnu dans un scul contcncur. Quand un con
tcncur cst dtruit ou copi, scs lmcnts contcnus sont galcmcnt dtruits ou copis. Ccr
tains lmcnts contcnus sont a lcur tour dcs contcncurs, cc qui conduit classiqucmcnt a
unc hirarchic dc contcnancc d'lmcnts dc modlc.
Lcs packagcs sont un cxcmplc important dc contcncur, lcs blocs cn sont un autrc (commc
nous l'avons vu au chapitrc prcdcnt pour lcs valcurs, lcs partics, lcs oprations, ctc.).
Lcs diffrcnts packagcs d'un modlc ainsi quc lcurs rclations pcuvcnt ctrc montrs dans
un diagrammc dc packagcs (package diagram).
108
8.A. -8A Fackage
Mcahisme ghral de regroupemehI d'lmehIs Iels que blocs, ihIerIaces, mais aussi acIeurs, cas
d'uIilisaIioh, eIc. Les packages peuvehI Ire imbriqus dahs d'auIres packages.
Uh package cohsIiIue uh espace de homs (hamespace) pour les lmehIs qu'il cohIiehI.
CerIaihs auIeurs uIilisehI la versioh Irahaise du Ierme : paqueIage, mais hous prIrohs garder
package...
8.A .-8A C artcuche
Le carIouche ghral du diagramme de package esI de la Iorme :
pkg |fype de package] hom du package |hom du d1agamme]
Le Iype de package peuI Ire : modle, package ou vue (voir paragraphes suivahIs).
Figure 6-1 0iagrauue de paclages siuple
109
Cooteoaoce et dpeodaoce
Il y a dcux typcs dc rclations possiblcs cntrc packagcs : la contcnancc ct la dpcndancc.
Cooteoaoce
La rclation dc contcnancc pcut ctrc montrc dc dcux faons :
un trait avcc unc croix cntourc du ct du contcncur ,
lcs packagcs contcnus graphiqucmcnt a l'intricur du packagc cnglobant.
La prcmirc solution pcrmct dc rcprscntcr dcs hirarchics compltcs graphiqucmcnt cn
gardant la mcmc taillc dc policc dc caractrcs.
Nous avons dit qu'un packagc cst galcmcnt un cspacc dc noms pour lcs lmcnts con
tcnus. Pour nommcr un lmcnt, il cst ainsi possiblc d'utiliscr un nom qualifi (qualified
Figure 6-2
Couleuauce eulre paclages
110
name), montrant lc chcmin rclatif dc l'lmcnt (s'il apparticnt au packagc du diagrammc)
ou lc chcmin absolu complct.
ans l'cxcmplc suivant, lc packagc P111 cst contcnu dans lc packagc P11 qui cst lui
mcmc contcnu dans lc packagc P1. Son nom qualifi cst donc P1::P11::P111.
0peodaoce
Sclon l'organisation du modlc ct lcs choix dc structuration, lcs lmcnts dc diffrcnts
packagcs sont souvcnt rclis cntrc cux. Nous avons vu par cxcmplc quc lcs blocs pcuvcnt
ctrc rclis par dcs associations, dcs compositions, dcs gnralisations, ctc. Ccs rclations
cntrc lmcnts induiscnt dcs rclations dc dpcndancc cntrc lcs packagcs cnglobants :
Figure 6-3
Couleuauce eulre paclages
el uou qualii
111
unc rclation dc gnralisation cntrc lcs blocs 8loc1 ct 8loc2 appartcnant rcspcctivc
mcnt aux packagcs P1 ct P2 sc traduit ainsi par unc rclation dc dpcndancc dc P1 vcrs
P2 ,
unc association dircctionncllc cntrc lcs blocs 8loc1 ct 8loc2 appartcnant rcspcctivc
mcnt aux packagcs P1 ct P2 sc traduit galcmcnt par unc rclation dc dpcndancc dc
P1 vcrs P2.
Il cst a notcr quc la flchc pointillc dc dpcndancc cntrc lcs packagcs cnglobants cst tou
jours dans lc mcmc scns quc lcs flchcs dc gnralisation ou d'association oricntc.
Figure 6-4
Relalious eulre blocs
el relalious de dpeudauce
eulre paclages
AI I| N II0 N A sscciaticn bidirecticnneIIe
Lorsqu'uhe associaIioh he possde pas de Ilche, hous avohs expliqu que cela sighiIie qu'elle esI
havigable dahs les deux sehs. Les blocs aux exIrmiIs possdehI alors au mihimum uhe rIrehce
chacuh sur l'auIre. Cela ihduiI uhe dpehdahce muIuelle au hiveau des packages ehglobahI, ce qui
esI raremehI souhaiIable.
112
Si l'on vcut rcprscntcr lcs rclations cntrc lcs blocs dans lc contcxtc du packagc P1, on a
alors intrct a utiliscr lc nom qualifi du bloc 8loc2, commc illustr sur la figurc suivantc.
Figure 6-5
Relalious eulre blocs
el espaces de uous
AI I| N II0 N Fcrte cchsicn et faibIe ccupIage
La sIrucIuraIioh d'uh modle esI uhe acIiviI dlicaIe. Flle doiI s'appuyer sur deux prihcipes
IohdamehIaux : IorIe cohsioh ihIerhe eI Iaible couplage exIerhe. Le secohd prihcipe cohsisIe a
mihimiser les dpehdahces ehIre packages, eh parIiculier eh viIahI les dpehdahces muIuelles eI
les dpehdahces cycliques.
113
HodeI, view et viewpoiot
Un modlc cst un typc particulicr dc packagc. Il constituc unc sortc dc racinc pour tous
lcs packagcs d'unc hirarchic. Lc choix dc cc nivcau cst un choix mthodologiquc ou
organisationncl.
Un modlc (model) cst rcprscnt par lc symbolc du packagc agrmcnt d'un trianglc cn
haut a droitc.
Unc vuc (.ie.) cst unc sortc dc packagc utilisc pour montrcr unc pcrspcctivc particulirc
sur un modlc, commc la scurit, ou lcs pcrformanccs.
Figure 6-6
Reprseulaliou graphique d'uu
uodele
Figure 6-7
Reprseulaliou graphique
d'uue vue el d'uu poiul de vue
114
Un point dc vuc (.ie.point) rcprscntc unc pcrspcctivc particulirc qui spcific lc con
tcnu d'unc vuc. n dit qu'unc vuc sc conformc a un point dc vuc. Un point dc vuc con
ticnt dcs proprits standardiscs par SysML, commc illustr sur l'cxcmplc suivant :
concerns : lcs proccupations dcs partics prcnantcs ,
languages : lcs langagcs utiliss pour prscntcr la vuc ,
methods : lcs mthodcs utiliscs pour tablir la vuc ,
purpose : la raison dc la prscntation dc ccttc vuc ,
stakeholders : lcs partics prcnantcs ayant un intrct dans la vuc.
Unc vuc importc un cnscmblc d'lmcnts cn fonction du point dc vuc conccrn. n
gnral, unc vuc nc conticnt pas d'lmcnts, mais uniqucmcnt dcs diagrammcs.
tude de cas
Rcprcnons notrc tudc dc cas ct structurons lcs blocs dja crs cn packagcs.
Rcgroupons lcs cxigcnccs cntrc cllcs, lcs cas d'utilisation, lcs blocs cxtricurs au radio
rvcil, lcs typcs dc basc, ct lcs blocs intcrncs au radiorvcil dans dcs packagcs diffrcnts.
nsuitc, nous pouvons rcprscntcr tous ccs packagcs ainsi quc lcur contcnu sur un dia
grammc dc packagcs synthtiquc. Si nous ajoutons dcs dpcndanccs vcrs lc packagc
rcgroupant lcs typcs communs, ainsi quc dcs cas d'utilisation vcrs lc contcxtc (qui con
ticnt lcs actcurs), nous obtcnons lc diagrammc suivant :
115
Insistons sur lc fait quc lc dcoupagc cn packagcs propos ici cst un choix purcmcnt arbi
trairc. n pcut galcmcnt rcgroupcr dcs lmcnts dc naturcs diffrcntcs dans un mcmc
packagc (cas d'utilisation, blocs, activits, ctc.), pour insistcr davantagc sur la dcomposi
tion architccturalc du systmc.
Figure 6-8
Slrucluraliou du uodele eu
paclages
TROISIEMF PARTIF
la mod|isation
dynamique
La partic III conccrnc la modlisation dynamiquc. Lcs diagrammcs
comportcmcntaux inclucnt lc diagrammc dc cas d'utilisation, lc
diagrammc d'activit, lc diagrammc dc squcncc ct lc diagrammc d'tats.
Nous avons dja vu lc diagrammc dc cas d'utilisation au chapitrc 2 ct lc
diagrammc dc squcncc au chapitrc 3. Nous vcrrons dans ccttc partic
toutc la puissancc du diagrammc d'tats, pour modliscr lc cyclc dc vic dcs
lmcnts a dynamiquc prdominantc, ainsi quc ccllc du diagrammc
d'activit, qui pcrmct dc modliscr avcc prcision dcs algorithmcs
complcxcs.
7
le diagramme d'tats
Cc chapitrc prscntc lc diagrammc d'tats. Lc diagrammc dc
machincs a tats dcrit lcs transitions cntrc tats ct lcs actions
quc lc systmc ou scs partics raliscnt cn rponsc aux
vncmcnts.
IaI
IrahsiIioh
vhemehI
cohdiIioh
eIIeI
acIiviI
118
Notatioo de base
SysML a rcpris lc conccpt bicn connu dc machinc a tats finis, qui consistc a s'intrcsscr
au cyclc dc vic d'unc instancc gnriquc d'un bloc particulicr au fil dc scs intcractions,
dans tous lcs cas possiblcs. Ccttc vuc localc d'un bloc, qui dcrit commcnt il ragit a dcs
vncmcnts cn fonction dc son tat courant ct commcnt il passc dans un nouvcl tat, cst
rcprscntc graphiqucmcnt sous la formc d'un diagrammc d'tats.
Sur lc prcmicr diagrammc d'tats, nous avons fait figurcr dcux tats appcls rcspcctivc
mcnt tat 1 ct tat 2. L'vncmcnt 1 fait passcr dc tat 1 a tat 2, l'vncmcnt 2 portc
un paramtrc appcl param ct fait rcvcnir dc tat 2 a tat 1.
119
Hcurcuscmcnt, tous lcs blocs du modlc nc rcquircnt pas nccssaircmcnt unc machinc a
tats. Il s'agit donc dc trouvcr ccux qui ont un comportcmcnt dynamiquc complcxc
nccssitant unc dcscription plus poussc. Ccla corrcspond a l'un dcs dcux cas suivants :
8.A .-8A | tat
Uh IaI reprsehIe uhe siIuaIioh durahI la vie d'uh bloc pehdahI laquelle :
il saIisIaiI uhe cerIaihe cohdiIioh ,
il excuIe uhe cerIaihe acIiviI ,
ou bieh il aIIehd uh cerIaih vhemehI.
Uh bloc passe par uhe successioh d'IaIs durahI soh exisIehce. Uh IaI a uhe dure Iihie, variable
seloh la vie du bloc, eh parIiculier eh IohcIioh des vhemehIs qui lui arrivehI.
8.A .-8A | vnement
SpciIicaIioh d'uhe occurrehce qui peuI dclehcher uhe racIioh sur uh lmehI eI qui possde uhe
localisaIioh dahs le Iemps eI l'espace.
Uh vhemehI peuI porIer des paramIres qui maIrialisehI le IloI d'ihIormaIioh ou de dohhes
reu par l'lmehI.
Figure 7-1
Preuier diagrauue d'lals
120
lc bloc ragit diffrcmmcnt lors d'occurrcnccs succcssivcs du mcmc vncmcnt : cha
quc typc dc raction caractrisc un tat particulicr ,
lc bloc doit organiscr ccrtaincs oprations dans un ordrc prcis : dans cc cas, dcs tats
squcnticls pcrmcttcnt dc prciscr la chronologic forcc dcs vncmcnts d'activation.
8.A .-8A Iransiticn
Uhe IrahsiIioh dcriI la racIioh d'uh bloc lorsqu'uh vhemehI se produiI (ghralemehI le bloc
chahge d'IaI, mais pas IorcmehI). Fh rgle ghrale, uhe IrahsiIioh possde uh vhemehI
dclehcheur, uhe cohdiIioh de garde, uh eIIeI eI uh IaI cible.
8.A .-8A C cnditicn
Uhe cohdiIioh (ou cohdiIioh de garde) esI uhe expressioh boolehhe qui doiI Ire vraie lorsque
l'vhemehI arrive pour que la IrahsiIioh soiI dclehche. Flle se hoIe ehIre crocheIs.
Flle peuI cohcerher les valeurs du bloc cohcerh aihsi que les paramIres de l'vhemehI dclehcheur.
Plusieurs IrahsiIiohs avec le mme vhemehI doivehI avoir des cohdiIiohs de garde diIIrehIes.
Figure 7-2 Secoud diagrauue d'lals
121
Sur lc dcuximc diagrammc d'tats, nous avons ajout un troisimc tat appcl tat 3.
L'vncmcnt 1 fait passcr dc tat 1 a tat 2 si la condition dc gardc Cond1 cst vraic, ct
dc tat 1 a tat 3 si la condition dc gardc Cond2 cst vraic. 'un point dc vuc mthodo
logiquc, il convicnt dc vrificr quc Cond2 cst bicn la condition invcrsc dc Cond1, ou car
rmcnt d'utiliscr cxplicitcmcnt l'invcrsc dc Cond1 : |NT Cond1|. Prcisons quc si ni
Cond1 ni Cond2 nc sont vraics, l'vncmcnt 1 cst pcrdu, ct quc si lcs dcux conditions
sont vraics simultanmcnt, lc diagrammc cst dit nondtcrministc ct on nc pcut savoir
dans qucl tat lc bloc passcra.
Lorsqu'il y a plus dc dcux conditions, il cst rccommand d'utiliscr lc motcl e1se pour
garantir l'cxhaustivit commc illustr sur lc diagrammc suivant, a la placc dc l'cxprcssion
complcxc |NT Cond1 AN NT Cond2|.
Notcz galcmcnt quc l'vncmcnt dclcnchcur pcut corrcspondrc a l'invocation d'unc
opration du bloc : c'cst lc cas pour opration11 qui possdc un paramtrc ct qui fait
passcr lc bloc dc tat 2 a tat 1.
Figure 7-3
ulilisaliou du uolcl else
122
La notation dc basc du diagrammc d'tats cst donnc par la figurc suivantc. L'tat initial
cst tat 1, l'tat final cst attcint a partir dc tat 3 suitc a l'vncmcnt dcstruction. La
transition dclcnchc par opration11 dfinit un cffct appcl cffct1. tat 3 possdc unc
activit durablc appclc activit1. ans l'tat 3, l'vncmcnt 2 dclcnchc un cffct mais nc
fait pas changcr d'tat (transition rflcxivc).
8.A. -8A | ffet, acticn, activit
Uhe IrahsiIioh peuI spciIier uh comporIemehI opIiohhel ralis par le bloc lorsque la IrahsiIioh esI
dclehche. Ce comporIemehI esI appel eIIeI : cela peuI Ire uhe simple acIioh ou uhe
squehce d'acIiohs. Uhe acIioh peuI reprsehIer la mise a jour d'uhe valeur, uh appel d'opraIioh,
aihsi que l'ehvoi d'uh sighal a uh auIre bloc. L'excuIioh de l'eIIeI esI uhiIaire eI he permeI de Irai-
Ier aucuh vhemehI supplmehIaire pehdahI soh droulemehI. Les acIiviIs durables (do-acIi-
viIy)ohI uhe cerIaihe dure, peuvehI Ire ihIerrompues eI sohI associes aux IaIs.
8.A .-8A | tat initiaI, tat finaI
Fh plus de la successioh d'IaIs hormaux correspohdahI au cycle de vie d'uh bloc, le diagramme
d'IaIs comprehd galemehI deux pseudo-IaIs :
l'IaI ihiIial du diagramme d'IaIs correspohd a la craIioh d'uhe ihsIahce ,
l'IaI Iihal du diagramme d'IaIs correspohd a la desIrucIioh de l'ihsIahce.
Il esI possible d'uIiliser plusieurs IaIs Iihals (ou Iihaux, les deux se disehI...) pour disIihguer par
exemple la desIrucIioh hormale de l'lmehI eh Iih de vie d'uhe desIrucIioh accidehIelle.
8.A .-8A C artcuche
Le carIouche ghral du diagramme d'IaIs esI de la Iorme :
s1m |mach1he a fafs] hom de 1a mach1he a fafs |hom du d1agamme]
Le Iype d'lmehI de modle esI opIiohhel puisqu'il s'agiI Ioujours d'uhe machihe a IaIs.
L'ouIil Magic0raw uIilise la lgre variahIe suivahIe :
s1a1e mach1ne hom de 1`1mehf ehg1obahf |hom du d1agamme]
comme oh peuI le voir sur le diagramme prcdehI.
123
CompImeots
voemeot ioteroe ou temporeI
La dmarchc dc construction d'un diagrammc d'tats pcut s'nonccr commc suit :
rcprscntcr tout d'abord la squcncc d'tats qui dcrit lc comportcmcnt nominal d'un
bloc, avcc lcs transitions qui y sont assocics ,
ajoutcr progrcssivcmcnt lcs transitions qui corrcspondcnt aux comportcmcnts altcrna
tifs ou d'crrcur ,
compltcr lcs cffcts sur lcs transitions ct lcs activits dans lcs tats.
Nous allons appliqucr ccttc dmarchc a la construction du diagrammc d'tats du bloc
Radio.
Figure 7-4
Nolaliou de base du
diagrauue d'lals
124
Commcnons par dclarcr trois tats principaux corrcspondant aux trois positions du
bouton physiquc pcrmcttant d'allumcr la radio, dc l'tcindrc, ou d'armcr l'alarmc du rvcil.
Lcs vncmcnts dc changcmcnt dc position sont nomms powcr_N, powcr_FF,
powcr_AUT. ans l'tat Radio N, nous avons dclar unc activit durablc do/mcttrc
son. Notcz quc pour l'instant, nous nc distinguons pas d'tat initial, la cration du radio
rvcil tant pcu intrcssantc a modliscr dans notrc contcxtc d'utilisation.
n fait, dans l'tat Radio AUT, la radio cst silcncicusc jusqu'a cc quc l'hcurc courantc
dcvicnnc l'hcurc d'alarmc : Wheh {hcouahfe = ha1ame}.
nsuitc, la radio s'tcint toutc sculc au bout dc 59 mn : affe {S9 mh}.
Figure 7-5
0bul du diagrauue
d'lals du radiorveil
AI I| N II0 N | vnement interne
Les chahgemehIs d'IaI ihIerhes(chahge evehI) se modlisehI eh uIilisahI le moI-cl Wheh suivi
d'uhe expressioh boolehhe dohI le passage de Iaux a vrai dclehche la IrahsiIioh.
125
tat composite
Pour modliscr cc comportcmcnt plus dtaill, unc prcmirc solution consistc a trans
formcr l'tat Radio AUT cn tat compositc (cncorc appcl supcrtat), ct a dcssincr lcs
nouvcaux tats a l'intricur. Notcz qu'il faut ajoutcr un soustat initial pour indiqucr quc
lorsquc lc bloc passc dans l'tat Radio AUT, il rcntrc cn fait dircctcmcnt dans lc sous
tat Silcncicusc.
AI I| N II0 N | vnement tempcreI
Lepassage du Iemps (Iime evehI) se modlise eh uIilisahI le moI-cl affesuivi d'uhe expressioh
reprsehIahI uhe dure, dcompIe a parIir de l'ehIre dahs l'IaI courahI.
Figure 7-6
Suile du diagrauue
d'lals du radiorveil
126
Ajoutons maintcnant lc comportcmcnt du bouton Snoozc . Quand l'utilisatcur appuic
sur cc bouton, il intcrrompt provisoircmcnt lc son dc la radio qui sc ractivc automatiquc
mcnt aprs 9 mn.
8.A .-8A | tat ccmpcsite
Uh IaI composiIe (aussi appel super-IaI) permeI d'ehglober plusieurs sous-IaIs exclusiIs. Oh
peuI aihsi IacIoriser des IrahsiIiohs dclehches par le mme vhemehI eI amehahI vers le mme
IaI cible (comme power_ON ou power_OPP dahs l'exemple), IouI eh spciIiahI des IrahsiIiohs par-
Iiculires ehIre les sous-IaIs.
Figure 7-7
Suile du diagrauue
d'lals du radiorveil
avec suooze
127
Pour modliscr ccci, nous nc pouvons pas nous contcntcr dc rcvcnir dans lc soustat
Silcncicusc. n cffct, il nous faut ractivcr lc son au bout dc 9 mn, donc unc transition
dclcnchc par l'vncmcnt tcmporcl affe {9 mh}, qui rcvicnt dans l'tat n alarmc.
Mais commc nous allons dans Silcncicusc ds l'cntrc dans lc supcrtat Radio AUT,
ccla voudrait dirc quc la radio s'activc au bout dc 9 mn, sauf si l'hcurc d'alarmc arrivc
avant... Il faut donc absolumcnt crcr un troisimc soustat dans Radio AUT.
Unc autrc faon dc rcprscntcr un tat compositc consistc a ajoutcr un symbolc cn formc
d'haltrc cn bas a droitc du rcctanglc a coins arrondis, puis a dcrirc lcs transitions cntrc
scs soustats dans un autrc diagrammc. n pcut ainsi fairc dc la dcomposition hirar
chiquc d'tats, cn gardant chaquc nivcau lisiblc ct rclativcmcnt simplc. n pcut mcmc
rutiliscr dcs machincs a tats dcritcs par aillcurs. C'cst pour ccla qu'un tat compositc
possdc un nom plus complcxc, du typc Nom dc l'tat : Nom dc la machinc a tats. Nous
avons donc rcpris lc diagrammc prcdcnt cn transformant Radio AUT cn sous
machinc a tats rcprscntc dans un sccond diagrammc.
Figure 7-8
0iagrauue d'lals
du radiorveil avec lal
couposile uou expaus
128
Imaginons maintcnant quc nous souhaitons modliscr la mmorisation dc l'tat dc la
radio aprs unc coupurc dc courant intcmpcstivc. Il faut dja ajoutcr dcux tats : Ali
mcnt ct Nonalimcnt, avcc dcux transitions provoqucs par lcs vncmcnts branchcr ct
dbranchcr. L'tat Alimcnt corrcspond cn fait au supcrtat dc tous ccux quc nous avons
modlis jusqu'a prscnt. Au passagc, nous avons opt pour fairc dc l'tat Nonalimcnt
notrc tat initial.
Cc modlc cst bon si l'on considrc quc lorsquc l'on rcbranchc lc radiorvcil aprs l'avoir
dbranch, il rctournc toujours dans l'tat Radio FF (soustat initial). Mais si l'on sou
haitc un comportcmcnt un pcu plus intclligcnt qui conscrvc l'tat courant dc la radio
(N, FF ou AUT) cn cas dc dbranchcmcnt intcmpcstif (avcc pilc dc sauvcgardc),
Figure 7-9
0iagrauue d'lals
de la sousuachiue
Radio ^uJ0
129
cc modlc n'cst plus satisfaisant. SysML fournit unc construction trs pratiquc dans cc
cas : lc pscudotat History.
Lc diagrammc d'tats dcvicnt alors commc sur la figurc suivantc.
Figure 7-10
0iagrauue d'lals avec
gesliou de l'aliueulaliou
AI I| N II0 N Fseudc- tat histcry
L'acIivaIioh du pseudo-IaI PisIory permeI a uh super-IaI de se souvehir du derhier sous-IaI
squehIiel qui IaiI acIiI avahI uhe IrahsiIioh sorIahIe. Uhe IrahsiIioh vers l'IaI PisIory rehd a hou-
veau acIiI le derhier sous-IaI acIiI, au lieu de le rameher vers le sous-IaI ihiIial.
130
Si l'on voulait quc la notion d'historiquc sc propagc dans la hirarchic d'tats ct dc sous
tats, qucl quc soit lc nivcau dc profondcur dc lcur dcomposition, SysML proposc un
deep history, not avcc unc toilc cn cxposant du H : H.
Un tat compositc pcut galcmcnt contcnir dcs rgions concurrcntcs, il suffit graphiquc
mcnt dc lc sparcr par dcs traits pointills. Chaquc rgion pcut alors ctrc nommc
(optionncl). llc conticnt scs proprcs tats ct scs proprcs transitions. Lcs rgions sont ditcs
concurrcntcs car cllcs pcuvcnt volucr cn paralllc ct indpcndammcnt. L'tat courant dc
l'lmcnt conccrn dcvicnt alors un vcctcur a plusicurs ligncs (autant quc dc rgions).
Figure 7-11
0iagrauue d'lals avec
gesliou de l'aliueulaliou
el hislorique
131
ans l'cxcmplc prcdcnt, a partir dc l'tat 1, quand l'vncmcnt cv1 arrivc, l'lmcnt
passc dans l'tat compositc 2. Ccla signific qu'il cst a la fois dans lcs tats disjoints 31
ct 41. nsuitc, suivant l'ordrc d'arrivc dcs vncmcnts cv2, cv3 ou cv4, chaquc rgion
va volucr indpcndammcnt. Pour passcr a l'tat 5, il faudra quc l'lmcnt soit a la fois
dans 32 ct 43 quand cv5 arrivcra.
Figure 7-12
Nolaliou de l'hislorique
prooud (deep hislory)
Figure 7-13
Rgious coucurreules
132
Ccttc notion d'tats paralllcs cst ccrtcs intrcssantc, mais complcxific la lccturc du dia
grammc d'tats. Avcc lcs conccpts dc partics, ports ct conncctcurs fournis par lc dia
grammc dc bloc intcrnc (ibd) ct la possibilit dc dcomposition associc, il cst rclativc
mcnt facilc dc sc passcr dcs rgions concurrcntcs cn dcrivant indpcndammcnt la
dynamiquc dc chacunc dcs partics.
Autres ootatioos avaoces
Pour modliscr dcs cffcts qui sont cxcuts par toutcs lcs transitions cn cntrc ou cn sortic
d'un tat, SysML proposc dcs raccourcis dc notation utilisant dcs mots cls a l'intricur
du symbolc dc l'tat.
Lc diagrammc qui suit utilisc ccs dcux notations, pour vitcr dc dupliqucr lcs cffcts sur lcs
transitions (commc sur cclui d'aprs, plus fouillis).
Notcz au passagc qu'un cffct pcut contcnir unc squcncc d'actions, commc cclui dclar
sur la transition cntrc tat 1 ct tat 3 : l'action dc sortic scra cxcutc, suivic immdiatc
mcnt dc l'action d'cntrc.
Imaginons maintcnant quc l'activit 1 dc l'tat 3 sc tcrminc automatiqucmcnt unc fois
quc lc traitcmcnt corrcspondant cst achcv avcc succs. Commcnt rcprscntcr la transi
8.A .-8A | ffets d'entre et de scrtie
Uh eIIeI d'ehIre (ihIroduiI par le moI-cl ehfy a l'ihIrieur du symbole d'uh IaI) reprsehIe uh
eIIeI qui esI excuI chaque Iois que l'oh ehIre dahs ceI IaI. Cela permeI de IacIoriser uh mme
eIIeI qui sera dclehch par IouIes les IrahsiIiohs qui ehIrehI dahs l'IaI. L'eIIeI de sorIie (ihIroduiI
par le moI-cl ex1f) esI l'eIIeI symIrique eh sorIie de l'IaI.
133
Figure 7-14
Eels d'eulre el de sorlie
Figure 7-15
Mue diagrauue saus eels
d'eulre el de sorlie
134
tion qui fait sortir dc l'tat a la compltion dc l'activit, puisqu'cllc n'cst pas dclcnchc
par un vncmcnt dc rccption dc mcssagc, ni par un timcout : Nous pourrions utiliscr lc
motcl whcn indiquant un changcmcnt intcrnc, mais commcnt nommcr cc changcmcnt
simplcmcnt : SysML proposc un autrc raccourci dc notation : la transition dc compltion
(ou transition automatiquc).
8.A .-8A Iransiticn de ccmpIticn
Uhe acIiviI durable a l'ihIrieur d'uh IaI peuI Ire soiI :
cohIihue : elle he cesse que lorsque se produiI uh vhemehI qui IaiI sorIir l'lmehI de l'IaI ,
Iihie : elle peuI galemehI Ire ihIerrompue par uh vhemehI, mais elle cesse de IouIe Iaoh
d'elle-mme au bouI d'uh cerIaih Iemps, ou quahd uhe cerIaihe cohdiIioh esI remplie.
La IrahsiIioh de complIioh d'uhe acIiviI Iihie, aussi appele IrahsiIioh auIomaIique, esI reprseh-
Ie eh SysML sahs hom d'vhemehI hi moI-cl.
Figure 7-16 0iagrauue d'lal avec lrausiliou de couplliou
135
AI I| N II0 N Iransiticn prcpre cu transiticn interne ?
0ahs le cas d'uhe IrahsiIioh propre, l'lmehI quiIIe soh IaI de dparI pour y reIourher aussiII.
Mais cela peuI avoir des eIIeIs secohdaires hoh hgligeables comme l'ihIerrupIioh puis le redmar-
rage d'uhe acIiviI durable, aihsi que la ralisaIioh d'eIIeIs eh ehIre ou eh sorIie de l'IaI. 0e plus,
lorsqu'uh IaI esI dcompos eh sous-IaIs, uhe IrahsiIioh propre ramhe IorcmehI l'lmehI dahs
le sous-IaI ihiIial.
Pour rsoudre ce problme, SysML propose le cohcepI de IrahsiIioh ihIerhe (inter no | tr o n: ition). Uhe
IrahsiIioh ihIerhe reprsehIe uh couple (vhemehI/eIIeI) qui h'a aucuhe ihIluehce secohdaire sur
l'IaI courahI. Flle esI hoIe simplemehI a l'ihIrieur du symbole de l'IaI, comme illusIr sur la
Iigure suivahIe. 0ahs l'IaI 2, vhemehI 2 peuI arriver eI dclehcher alors uhiquemehI eIIeI2. 0ahs
l'IaI J, par cohIre, vhemehI 2 dclehche successivemehI : acIioh de sorIie, eIIeI2, puis acIioh
d'ehIre. 0e plus, l'acIiviI 1 esI ihIerrompue, puis redmarre.
Figure 7-17 Jrausiliou propre ou lrausiliou iulerue
136
Lc formalismc du diagrammc d'tats SysML conticnt cncorc quclqucs subtilits avanccs
ct rarcmcnt indispcnsablcs (cntry point, cxit point, jonction, ctc.). Cc diagrammc cst trs
Figure 7-18 |hM du Radiorveil siuule eu vB
137
puissant, mais aussi trs complcxc. N'oublicz pas d'adaptcr lc nivcau dc votrc modlisa
tion a vos objcctifs ct a vos lcctcurs !
Aoimatioo du diagramme d'tats
Ccrtains outils UML/SysML pcrmcttcnt d'allcr plus loin quc la simplc dition dc
modlcs : citons cn particulicr l'animation (ou l'cxcution) dcs diagrammcs d'tats. C'cst
lc cas par cxcmplc dc l'outil Rhapsody d'I8M/Tclclogic, ou d'Artisan Studio dc Artisan.
livicr Cassc, spcialistc dc l'outil Artisan, m'a propos dc raliscr un prototypc cxcu
tablc du Radiorvcil grcc a sa connaissancc cxpcrtc dc cc gcnrc d'outil. Il a galcmcnt
ralis unc IHM cn \isual8asic, afin dc pcrmcttrc dc stimulcr lc diagrammc d'tats par
dcs vncmcnts cxtcrncs, ct dc visualiscr lcs valcurs dcs sortics, commc dans la ralit.
Lc tlchargcmcnt dc l'cxcmplc complct cst possiblc sur un sitc qui scra prcis sur cclui
dcs ditions yrollcs :
diagrammcs SysML Artisan (tlchargcablcs dans la vcrsion gratuitc Artisan Studio
Uno disponiblc sur lc sitc dc l'ditcur : www.artisansoftwarctools.com/StudioUno) ,
sourccs \8 avcc l'cxcutablc rsultant dc l'IHM ct appcls a l'API Artisan pour la con
ncxion cn modc simulation dc la vcrsion industricllc d'Artisan Studio, nccssitant unc
liccncc ,
cxcutablc du modlc du radiorvcil gnr cn C a partir dc la vcrsion compltc
d'Artisan (car Uno nc pcrmct pas la gnration dc codc ni la simulation) ct rcli a unc
autrc IHM fonctionnant dc faon autonomc, sans l'outil Artisan Studio.
Unc copic d'cran dc l'cxcution du diagrammc d'tats sous Artisan cst donnc ciaprs.
138
Figure 7-19 Copie d'crau de la siuulaliou du Radiorveil avec ^rlisau
8
le diagramme d'activit
Cc chapitrc prscntc lc diagrammc d'activit. Lc diagrammc
d'activit rcprscntc lcs flots dc donncs ct dc contrlc cntrc lcs
actions. Il cst utilis majoritaircmcnt pour l'cxprcssion dc la
logiquc dc contrlc ct d'cntrcs/sortics.
acIiviI
acIioh
dcisioh
joih/Iork
140
Notatioo de base
Lc diagrammc d'activit cst l'un dcs diagrammcs dynamiqucs proposs par SysML. Il
rcsscmblc fondamcntalcmcnt a un traditionncl diagrammc fonctionncl (a la SAT ou
SA/RT), montrant lc flot dc contrlc d'action cn action. Mais il proposc dcs capacits
supplmcntaircs importantcs commc ccllc dc pouvoir fairc lc licn avcc lcs blocs dc la
modlisation structurcllc ct ccllc dc pouvoir modliscr dcs flux continus.
8.A. -8A Acticn
L'acIioh esI l'uhiI IohdamehIale de spciIicaIioh comporIemehIale eh SysML. Flle reprsehIe uh
IraiIemehI ou uhe IrahsIormaIioh. Les acIiohs sohI cohIehues dahs les acIiviIs, qui IourhissehI leur
cohIexIe.
141
Lcs lmcnts dc basc du diagrammc d'activit sont lcs suivants :
dcs actions ,
dcs flots dc contrlc cntrc actions ,
dcs dcisions (aussi appclcs branchcmcnts conditionncls) ,
un dbut ct unc ou plusicurs fins possiblcs.
La notation graphiquc dc basc cst prscntc sur la figurc suivantc.
ans lc diagrammc prcdcnt, l'activit dmarrc avcc l'action 1. Lorsquc l'action 1 cst
tcrminc, cllc produit un jcton (token) qui va alimcntcr l'action 2, via lc flot dc contrlc.
L'action 2 dmarrc alors ct possdc sa proprc durc. Lorsquc l'action 2 sc tcrminc, cllc
produit a son tour un jcton qui arrivc jusqu'a la dcision. Suivant la condition K ou Not
K, lc jcton va activcr l'action 3 ou l'action 1. Si c'cst l'action 3 qui cst activc, cllc s'cx
cutc ct sa tcrminaison fait galcmcnt tcrmincr l'activit cnglobantc. Si c'cst l'action 1 qui
a t activc dc nouvcau, cllc s'cxcutc ct sa tcrminaison fait dc nouvcau cxcutcr
l'action 2 puis tcstcr la condition, ctc.
8.A. -8A FIct
Uh IloI esI uh cohIrle de squehage pehdahI l'excuIioh de huds d'acIiviI. Les IloIs de cohIrle
sohI de simples Ilches reliahI deux huds (acIiohs, dcisiohs, eIc.). Le diagramme d'acIiviI permeI
galemehI d'uIiliser des IloIs d'objeIs (reliahI uhe acIioh eI uh objeI cohsomm ou produiI).
8.A. -8A cisicn
Uhe dcisioh esI uh hud de cohIrle sIrucIur reprsehIahI uh choix dyhamique ehIre plusieurs
cohdiIiohs qui doivehI Ire muIuellemehI exclusives. Flle esI reprsehIe par uh losahge qui pos-
sde uh arc ehIrahI eI plusieurs arcs sorIahIs.
142
Par lc biais dcs jctons, lc conccpt dc flot dc contrlc pcrmct ainsi d'cxprimcr dcs con
traintcs sur la squcncc d'cxcution dcs actions. Un jcton qui arrivc sur un flot dc contrlc
cntrant pcrmct lc dmarragc dc l'action conccrnc. La tcrminaison d'unc action mct un
jcton a disposition sur lc flot dc contrlc sortant. Lorsqu'un flot dc contrlc conncctc
dcux actions, l'action ciblc a l'cxtrmit du flot dc contrlc nc pcut pas dmarrcr tant quc
l'action sourcc nc s'cst pas tcrminc.
8.A .-8A C artcuche
Le carIouche ghral du diagramme d'acIiviI esI de la Iorme :
ac1 |acf1v1f] hom de 1`acf1v1f |hom du d1agamme]
Le Iype d'lmehI de modle esI opIiohhel puisqu'il s'agiI Ioujours d'uhe acIiviI.
Figure 8-1 Les bases du diagrauue d'aclivil
143
La dcision cst l'un dcs nouds dc contrlc proposs par SysML. Lc dbut ct la fin dc
l'activit cnglobantc cn sont galcmcnt. Nous allons cxpliqucr maintcnant lc fork
(dbranchcmcnt paralllc) ct lcjoin (synchronisation ou rcndczvous).
ans cc nouvcau diagrammc, quc sc passctil a la tcrminaison dc l'action 3 : Lc jcton
qui cst produit sc divisc cn passant lc fork. Puisquc lc fork possdc dcux flots cn sortic, ccla
signific quc dcux jctons indpcndants cxistcnt maintcnant cn paralllc. Chacun dcs dcux
jctons va activcr unc action. L'action 4 ct l'action 5 dmarrcnt donc cxactcmcnt cn mcmc
tcmps ct s'cxcutcnt dc faon indpcndantc.
k | F| k| N C | k seau de Fetri
Ce cohcepI Iormel de jeIoh viehI du Iormalisme des rseaux de PeIri, uh modle maIhmaIique ser-
vahI a reprsehIer divers sysImes (ihIormaIiques, ihdusIriels.) IravaillahI sur des variables discrIes.
Uh rseau de PeIri se reprsehIe par uh graphe oriehI reliahI des places eI des IrahsiIiohs. 0eux
places he peuvehI pas Ire relies ehIre elles, hi deux IrahsiIiohs. Les places peuvehI cohIehir des
jeIohs, reprsehIahI ghralemehI des ressources dispohibles. La disIribuIioh des jeIohs dahs les
places esI appele marquage du rseau de PeIri. Les ehIres d'uhe IrahsiIioh sohI les places des-
quelles parI uhe Ilche poihIahI vers ceIIe IrahsiIioh, eI les sorIies d'uhe IrahsiIioh sohI les places
poihIes par uhe Ilche ayahI pour origihe ceIIe IrahsiIioh.
Uh rseau de PeIri volue lorsqu'oh excuIe uhe IrahsiIioh : des jeIohs sohI reIirs dahs les places eh
ehIre de ceIIe IrahsiIioh eI des jeIohs sohI dposs dahs les places eh sorIie de ceIIe IrahsiIioh.
L'excuIioh d'uhe IrahsiIioh esI uhe opraIioh ihdivisible qui esI dIermihe par la prsehce du
jeIoh sur la place d'ehIre.
8.A. -8A Fcrk
Uh Iork esI uh hud de cohIrle sIrucIur reprsehIahI uh dbrahchemehI parallle. Il esI repr-
sehI par uhe barre horizohIale ou verIicale qui possde uh arc ehIrahI eI plusieurs arcs sorIahIs. Le
Iork duplique le jeIoh ehIrahI sur chaque IloI sorIahI. Les jeIohs sur les arcs sorIahIs sohI ihdpeh-
dahIs eI cohcurrehIs.
144
Figure 8-2
0iagrauue d'aclivil
avec paralllisue
145
La fin d'activit n'aura licu quc lorsquc lc join aura produit son jcton. r, un join nc pro
duit son jcton dc sortic quc lorsquc tous scs flots d'cntrc possdcnt lcur jcton. Il faut
donc quc lcs dcux actions 4 ct 5 soicnt tcrmincs, dans un ordrc quclconquc, pour quc
l'activit cnglobantc sc tcrminc.
8.A. -8A Icin
Uh joih esI uh hud de cohIrle sIrucIur reprsehIahI uhe syhchrohisaIioh ehIre acIiohs (rehdez-
vous). Il esI reprsehI par uhe barre horizohIale ou verIicale qui possde uh arc sorIahI eI plusieurs
arcs ehIrahIs. Le joih he produiI soh jeIoh de sorIie que lorsqu'uh jeIoh esI dispohible sur chaque
IloI ehIrahI.
AI I| N II0 N Icin specificaticn
Le comporIemehI par dIauI du joih peuI Ire redIihi par uhe spciIicaIioh : joih speciIicaIioh. Il
doiI s'agir d'uhe expressioh logique uIilisahI les homs des IloIs ehIrahIs, qui doivehI dohc Ire hom-
ms pour l'occasioh.
Figure 8-3
oiu speciicaliou
146
Un autrc noud dc contrlc intrcssant cst la fin dc flot (flo. final). Contraircmcnt a la fin
d'activit qui cst globalc a l'activit, la fin dc flot cst localc au flot conccrn ct n'a pas
d'cffct sur l'activit cnglobantc. nrichissons notrc cxcmplc : ajoutons unc troisimc
action paralllc. Nous nc voulons pas synchroniscr ccttc nouvcllc action 6 avcc lcs dcux
prcdcntcs. Nous souhaitons quc la tcrminaison d'action 6 n'ait aucun impact sur lc rcstc
dc l'activit, alors quc la tcrminaison conjointc dcs actions 4 ct 5 intcrrompc l'activit,
mcmc si l'action 6 cst cn cours.
Figure 8-4
|iu de lol
147
Il cxistc un dcrnicr noud dc contrlc asscz subtil : la fusion (merge). C'cst l'invcrsc dc la
dcision : lc mcmc symbolc du losangc, mais ccttc foisci avcc plusicurs flots cntrants ct
un scul sortant.
ans lc pctit cxcmplc prcdcnt, si l'on avait rcli dircctcmcnt lcs actions a11 ct a12 a
l'action a2, ccllcci n'aurait jamais t activc ! n cffct, cllc aurait attcndu indfinimcnt
un jcton sur chaquc flot cntrant, donc dcux jctons, alors qu'il n' cxistc qu'un scul jcton...
La solution consistc donc a intcrcalcr un noud dc fusion, pcrmcttant dc garantir un scul
flot cntrant a l'action a2, qui scra bicn activc ds quc l'un dcs dcux flots sortant dc a11 ou
dc a12 scra portcur d'un jcton.
Si nous rcvcnons au diagrammc 4, on pourrait argumcntcr quc l'action 1 possdc dcux
flots cntrants, ct qu'il n'y aura jamais un jcton sur chaquc ! La solution corrcctc consistc
donc a ajoutcr unc fusion commc illustr sur lc prochain diagrammc.
Figure 8-5
|usiou de lols (uerge)
148
bject oode, object fIow
Lc diagrammc d'activit scrt non sculcmcnt a prciscr la squcncc d'actions a raliscr,
mais aussi cc qui cst produit, consomm ou transform au cours dc l'cxcution dc ccttc
activit.
Figure 8-6
Exeuple de base coupll
149
Pour ccla, SysML proposc lcs conccpts dc flot d'objct (object flo.) ct dc brochc d'cntrc
ou sortic (input output pin). Unc action traitc lcs jctons placs sur scs brochcs d'cntrc.
Ccs jctons, qui pcuvcnt ctrc typs par dcs blocs (dclars dans un bdd), sont consomms
ou transforms par l'action, puis placs sur lcs brochcs dc sortic pour alimcntcr d'autrcs
actions. Pour l'instant, nous n'avions parl quc dcs flots dc contrlc cntrc actions, lcs flots
d'objct vicnncnt donc notablcmcnt compltcr lc pouvoir d'cxprcssion du diagrammc
d'activit. Grcc aux flots d'objct, SysML ajoutc la possibilit dc typcr lcs jctons qui
circulcnt cntrc lcs actions.
ans lc pctit cxcmplc qui suit, l'action act1 possdc unc brochc dc sortic appclc output1.
l'action act2 possdc unc brochc d'cntrc appclc input2, ainsi quc dcux brochcs dc sortic
appclcs output21 ct output22. La brochc dc sortic output22 cst typc par lc bloc 8loc1,
avcc unc multiplicit optionncllc |0..1|.
Sur lc diagrammc prcdcnt, lcs brochcs, non rclics, sont dcssincs avcc unc flchc indi
quant la dircction d'cntrc ou dc sortic. Par contrc, lorsquc lcs brochcs dc plusicurs
Figure 8-7
^clious avec broches
AI I| N II0 N MuItipIicit des brcches
Chaque broche possde uhe mulIipliciI qui dcriI le hombre mihimum eI maximum de jeIohs que
l'acIioh va cohsommer ou produire au cours d'uhe excuIioh. Les broches jouehI aihsi uh rle de
buIIer o les jeIohs d'ehIre eI de sorIie peuvehI Ire sIocks avahI ou pehdahI l'excuIioh de
l'acIioh. Si la mulIipliciI mihimale esI zro, la broche esI opIiohhelle, sihoh elle esI obligaIoire.
150
actions sont rclics par un flot d'objct, lcs flchcs sont gnralcmcnt omiscs puisquc lc
scns cst vidcnt.
Rcvcnons sur lcs flots d'objct. Nous avons vu unc prcmirc faon dc lcs rcprscntcr : unc
lignc conncctant unc brochc dc sortic a unc brochc d'cntrc avcc unc flchc vcrs ccttc
dcrnirc. Il cst clair quc la dircction du flot d'objct doit ctrc compatiblc avcc lc scns dcs
brochcs aux cxtrmits, mais aussi quc lcs typcs dcs brochcs doivcnt ctrc compatiblcs.
Ccla signific quc lcs blocs typant lcs brochcs conncctcs sont idcntiqucs ou dans unc rcla
Figure 8-8
^clious avec broches
el lol d'objel
AI I| N II0 N Smantique d'excuticn
Rsumohs les rgles d'acIivaIioh eI de Iermihaisoh d'uhe acIioh :
l'acIiviI ehglobahIe doiI Ire eh excuIioh ,
pour qu'uhe acIioh dmarre, il IauI uh jeIoh sur chaque IloI de cohIrle eI au moihs le hombre
mihimum de jeIohs sur chaque broche d'ehIre ,
l'acIioh dmarre alors soh excuIioh eI Ious les jeIohs prsehIs sur les broches d'ehIre sohI dis-
pohibles pour Ire cohsomms ,
pour qu'uhe acIioh se Iermihe, il IauI que le hombre de jeIohs produiIs sur chaque broche de sor-
Iie soiI suprieur ou gal a la mulIipliciI mihimale ,
uhe Iois que l'acIioh esI Iermihe, Ious les jeIohs prsehIs sur les broches de sorIie sohI dispohi-
bles pour les acIiohs cohhecIes eh ehIre. Uh jeIoh esI galemehI dispohible sur chaque IloI de
cohIrle eh sorIie ,
la Iermihaisoh de l'acIiviI ehglobahIe ehIrahe la Iermihaisoh de l'acIioh, quelque soiI soh pro-
pre IaI.
151
tion dc gnralisation/spcialisation. Lorsquc lcs typcs dcs brochcs sont idcntiqucs, unc
notation altcrnativc cst possiblc commc illustr sur lc diagrammc suivant. n pcut alors
omcttrc lcs brochcs ct rcprscntcr un uniquc rcctanglc intcrmdiairc appcl noud d'objct
(object node). Lc flot d'objct conncctc dans cc cas l'action productricc au noud d'objct,
puis lc noud d'objct a l'action consommatricc.
CompImeots
AppeI d'activit
Lcs activits fournisscnt lc contcxtc dans lcqucl lcs actions s'cxcutcnt. Mais lcs activits
cllcsmcmcs pcuvcnt ctrc utiliscs ct surtout rutiliscs a travcrs dcs actions d'appcl (call-
Beha.iorction). Il cst ainsi possiblc dc sc constitucr dcs bibliothqucs d'activits rutili
sablcs, dcrivant dcs algorithmcs classiqucs dans lc contcxtc mticr. Il cst galcmcnt pos
siblc dc dcrirc dcs traitcmcnts trs complcxcs dc faon dcsccndantc avcc un nombrc dc
nivcaux dc dcomposition arbitrairc.
Figure 8-9
^clious avec broches,
lol d'objel el uoud d'objel
152
L'action d'appcl cst rcprscntc graphiqucmcnt par unc fourchc a droitc dc la boitc
d'action, ainsi quc par la chainc : hom d`acf1oh : hom d`acf1v1f.
L'action d'appcl pouvant possdcr dcs brochcs d'cntrc/sortic, l'activit appclc pcut pos
sdcr a son tour dcs paramtrcs qui pcuvcnt ctrc typs, inclurc unc dircction (in, out,
inout) ct unc multiplicit :
hom du paamfe : fype du paamfe|mu1f1p11c1f]
Ccs paramtrcs sont rcprscntablcs graphiqucmcnt par dcs rcctanglcs a l'cxtricur du
cadrc du diagrammc d'activit prcisant l'algorithmc dc l'activit rutilisc. Il n'y a pas dc
notation particulirc pour indiqucr la dircction dcs paramtrcs, du coup il cst rccom
mand dc positionncr lcs paramtrcs d'cntrc a gauchc ct ccux dc sortic a droitc. Unc fois
quc lcs paramtrcs dc l'activit ont t connccts aux actions a l'intricur, la dircction
dcvicnt cxplicitc.
Figure 8-10
Nolaliou de l'acliou d'appel
Figure 8-11
Nolaliou de l'acliou d'appel
avec parauelres
153
Lc diagrammc prcdcnt montrc dcux actions a l'intricur dc l'activit rutilisablc.
L'action act1 consommc lc paramtrc d'cntrc p1 ct produit lc paramtrc dc sortic p2. n
paralllc, act1 activc act2 si la condition K cst vraic. ans cc cas, act2 produit lc para
mtrc dc sortic p3.
5igoaux et voemeots
n plus dc consommcr ct dc produirc dcs paramtrcs, unc activit pcut rcccvoir ct
mcttrc dcs signaux. L'idc fortc cst dc pcrmcttrc a dcs activits dc communiqucr cn
incluant dans unc activit l'mission d'un signal ct dans unc autrc la rccption d'vnc
mcnts. Il faut utiliscr pour ccla dcs typcs d'action particulicrs, possdant chacun unc
rcprscntation graphiquc spcifiquc :
accept e.ent action ;
Figure 8-12
Nolaliou de l'aclivil
avec parauelres
154
send signal action ;
accept time e.ent.
Cc dcrnicr typc (accept time e.ent) corrcspond a l'cxpiration d'un timcr (after) ou a
l'occurrcncc d'unc datc (at). Il n'a qu'unc brochc dc sortic mais pas dc brochc d'cntrc.
Nous vcrrons l'utilisation la plus courantc dcs accept e.ent actions dans lc paragraphc sui
vant (rgion intcrruptiblc).
kgioo ioterruptibIe
Nous avons cxpliqu quc toutcs lcs actions sc tcrmincnt lorsquc l'activit cnglobantc sc
tcrminc. Il pcut arrivcr qu'on vcuillc tcrmincr sculcmcnt un souscnscmblc dcs actions
pour unc raison particulirc.
Figure 8-13
Nolaliou des siguaux
155
SysML proposc lc conccpt dc rgion intcrruptiblc pour modliscr ccttc situation. llc cst
rcprscntc graphiqucmcnt par un rcctanglc aux bords arrondis cn pointills qui cnglobc
un souscnscmblc dcs actions dc l'activit. Il doit cxistcr galcmcnt un mcanismc
d'intcrruption, typiqucmcnt unc rccption d'vncmcnt (accept e.ent) suivic d'un flot
d'intcrruption, rcprscnt par un clair.
Figure 8-14
Rgiou iulerruplible
156
ans l'cxcmplc prcdcnt, l'vncmcnt Intcrruption cst significatif si un jcton sc trouvc
dans l'action 2 ou dans l'action 3. ans cc cas, il droutc lc jcton prscnt vcrs l'action 6,
au licu dc poursuivrc sa routc naturcllc vcrs lc fork avant lcs actions 4 ct 5. Lcs actions
autrcs quc l'action 2 ou l'action 3 nc sont pas intcrruptiblcs.
kgioo d'expaosioo
Unc rgion d'cxpansion cst un noud dans unc activit qui acccptc un cnscmblc d'objcts
cn cntrc, lcs traitc individucllcmcnt ct finalcmcnt lcs rctournc cn sortic tous traits. Ccla
pcrmct dc rcprscntcr fincmcnt lc traitcmcnt dc chaquc objct d'un cnscmblc, dans lc cas
d'un algorithmc commun. La rgion d'cxpansion sc rcprscntc commc la rgion intcrrup
tiblc, mais avcc un port multiplc (quatrc carrs au licu d'un). Un motcl pcrmct dc pr
ciscr commcnt cst trait l'cnscmblc :
1feaf1ve : lcs objcts dc l'cnscmblc sont traits squcnticllcmcnt ,
paa11e1 : lcs objcts dc l'cnscmblc sont traits cn paralllc ,
sfeam1hg : lcs objcts dc l'cnscmblc sont traits commc un scul flot, un pcu
commc sur unc chainc dc montagc. Chaquc objct n'a pas a attcndrc quc lc traitcmcnt
dc l'objct prcdcnt soit compltcmcnt tcrmin.
Sur l'cxcmplc prcdcnt, l'cnscmblc d'objcts cn cntrc dc la rgion d'cxpansion cst trait
individucllcmcnt ct squcnticllcmcnt par lcs actions 2 ct 3, puis fourni globalcmcnt cn
sortic.
157
CompImeots sur Ies fIots d'objet
Lc comportcmcnt par dfaut d'unc action (ou activit) consistc a acccptcr dcs jctons cn
cntrc au dmarragc dc ccllcci, ct a fournir lcs jctons cn sortic a sa tcrminaison. Au con
trairc, dans lc cas d'unc brochc ou d'un paramtrc dc typc {sfeam}, l'action ou l'activit
va pouvoir continucr a acccptcr dcs cntrcs ou a produirc dcs sortics pcndant son cxcu
tion. Pcnscz typiqucmcnt a la lccturc d'unc vido sur intcrnct : la lccturc commcncc alors
quc la vido continuc dc sc chargcr cn mmoirc.
Pour pcrmcttrc la modlisation dc systmcs continus, SysML pcrmct dc caractriscr la
naturc du dbit qui circulc sur lc flot : continu ou discrct. n utilisc pour ccla dcs
strotypcs : cohf1huous ct d1scefe . Par dfaut, un flot cst suppos discrct.
Figure 8-15
Rgiou d'expausiou
158
SysML autorisc galcmcnt la dfinition dc taux (rate) sur lcs flux dc typc {sfeam} pour
pcrmcttrc dc caractriscr lcs distributions d'cntrcs ct dc sortics. Un flot continu cst cn
fait unc sortc dc flot pour lcqucl lc taux scrait infini, ou invcrscmcnt la priodc cntrc dcux
jctons nullc.
L'action 7 sur lc diagrammc prcdcnt possdc trois brochcs :
unc brochc d'cntrc dc typc cohf1huous ,
unc cntrc discrtc dc typc {sfeam} ,
unc sortic discrtc avcc un taux dc 1 par sccondc.
Figure 8-16
Jypes de lols
Figure 8-17
|lols avec probabilil
159
SysML pcrmct d'ajoutcr unc indication dc probabilit aux flots sortant d'unc dcision.
ans cc cas, tous lcs flots altcrnatifs doivcnt possdcr unc probabilit ct la sommc dcs
probabilits doit ctrc galc a 1.
prateur de cootrIe
Unc action avcc dcs cntrcs/sortics discrtcs ct pas dc typc {sfeam} a unc smantiquc dc
dmarragc ct d'arrct simplc. Par contrc, pour unc action avcc dcs cntrcs/sortics conti
nucs ou dc typc {sfeam}, il faut pouvoir intcrvcnir dc l'cxtricur sur l'activation ou la
dsactivation. SysML proposc a cct cffct unc valcur dc contrlc (Control!alue) dc typc
numration nc possdant quc dcux valcurs possiblcs : enable ct disable. La valcur enable
corrcspond a un jcton dc contrlc cntrant, alors quc la valcur disable corrcspond a la tcr
minaison forcc dc l'action. Un comportcmcnt particulicr, appcl opratcur dc contrlc
(ControlOperator) cst charg dc produirc ccttc valcur dc contrlc a travcrs un paramtrc
dc sortic, dc typc Control!alue.
Cct opratcur dc contrlc doit ctrc dcrit a son tour par un diagrammc d'activit cxpli
quant commcnt cst produitc la Control!alue. Un cxcmplc cst donn sur lc diagrammc sui
vant, qui illustrc la dsactivation d'activits si lc courant cst abscnt, commc dans lc cas du
radiorvcil.
Figure 8-18
^ppel de l'opraleur
de coulrle
160
tude de cas
Pour notrc radiorvcil, unc prcmirc faon dc dmarrcr lc diagrammc d'activit consistc
a rcprscntcr lcs grandcs fonctionnalits, aprs lc branchcmcnt lcctriquc. Lcs fonctions
principalcs (grcr l'horlogc, affichcr, projctcr l'hcurc ct diffuscr la radio) sont toutcs
dmarrcs cn paralllc ds lc branchcmcnt.
L'activit cnglobantc nc s'arrctc quc si l'alimcntation lcctriquc n'cst plus disponiblc. Pour
ccla, unc rgion intcrruptiblc cst tout a fait adaptc.
Si nous nous plaons dans l'hypothsc plus favorablc d'unc alimcntation dc sccours, con
formmcnt aux cxigcnccs, l'abscncc d'alimcntation lcctriquc dsactivc toutcs lcs fonc
tionnalits, sauf la gcstion dc l'horlogc qui cst prscrvc. Unc faon lgantc dc lc mod
liscr consistc a utiliscr un opratcur dc contrlc, commc cxpliqu dans lc paragraphc
prcdcnt.
Figure 8-19
0iagrauue d'aclivil de
l'opraleur de coulrle
161
Si nous nous intrcssons maintcnant aux flots d'objct, on pcut dirc quc l'action Grcr
l'horlogc fournit toutcs lcs minutcs l'horodatagc courant aux actions d'affichagc ct dc
projcction. Ccs dcux dcrnircs produiscnt unc sortic continuc dc typc Horodatagc.
c mcmc, l'action diffuscr la radio rcoit cn pcrmancncc dcs ondcs radio qu'cllc trans
formc cn son.
Figure 8-20
0bul du diagrauue
d'aclivil de l'lude
de cas
162
Figure 8-21
Exeuple d'opraleur
de coulrle
Figure 8-22
Exeuple de lols d'objel
163
Figure 8-23
^ulre exeuple de lols couliuus
UATRIEMF PARTIF
la mod|isation
transverse
La partic I\ conccrnc la modlisation transvcrsc. SysML pcrmct dc
dcrirc plusicurs typcs dc licns dc traabilit cntrc lmcnts dc
modlisation, ct cn particulicr dc mcttrc cn ouvrc lc conccpt fondamcntal
d'allocation. Nous vcrrons galcmcnt commcnt dcrirc dcs quations grcc
au nouvcau diagrammc paramtriquc.
9
le diagramme paramtrique
Cc chapitrc prscntc lc diagrammc paramtriquc. Lc diagrammc
paramtriquc pcrmct dc rcprscntcr dcs contraintcs sur lcs
valcurs dc paramtrcs systmc tcls quc pcrformancc, fiabilit,
massc, ctc. Il s'agit d'unc spcialisation du diagrammc dc bloc
intcrnc o lcs sculs blocs utilisablcs sont dcs contraintcs cntrc
paramtrcs pcrmcttant dc rcprscntcr graphiqucmcnt dcs
quations ct dcs rclations mathmatiqucs. Cc nouvcau
diagrammc fournit ainsi un support prcicux pour lcs tudcs
d'analysc systmc.
cohIraihIe
quaIioh
value bihdihg
exigehce
veriIiedBy
166
Notatioo de base
Lc diagrammc paramtriquc cst unc tcchniquc dc modlisation spcifiquc a SysML (par
rapport a UML 2) pcrmcttant d'intgrcr dans lc modlc dcs rcprscntations dc con
traintcs ou d'quations a dcs fins d'analysc.
Chaquc contraintc cst d'abord dfinic par dcs paramtrcs ainsi qu'unc rglc dcrivant l'vo
lution dcs paramtrcs lcs uns par rapport aux autrcs. Unc contraintc cst rcprscntc par un
bloc avcc un strotypc cohsfa1hf . Il faut donc dclarcr lcs contraintcs dans un bdd,
commc pour lcs blocs plus classiqucs. Un cxcmplc donnant la dclaration dc dcux lois lcc
triqucs, la loi d'hm ct l'cffct Joulc, cst montr sur la figurc suivantc. Notcz quc lcs con
traintcs apparaisscnt galcmcnt dans lc bloc cnglobant Radiorvcil si nous lc souhaitons.
167
Lcs contraintcs s'appuicnt cnsuitc sur lc diagrammc paramtriquc, qui cst unc spcialisa
tion du diagrammc dc bloc intcrnc, pour pcrmcttrc lcur composition ct lcur misc cn rcla
tion. Lcs constraint properties sont rcprscntcs diffrcmmcnt dcs part properties dc l'ibd :
cc sont dcs rcctanglcs aux coins arrondis. u coup, lc motcl cohsfa1hf cst
optionncl.
8.A .-8A C cntrainte (rappeI)
SysML ihcluI uh mcahisme ghral d'expressioh de cohIraihIes dahs IouI Iype de diagramme sous
Iorme d'uhe simple chahe de caracIres ehIre accolades. Il h'impose pas de lahgage parIiculier, car
le modlisaIeur peuI avoir ehvie d'uIiliser celui qui esI le plus perIihehI dahs soh cohIexIe.
Uhe cohIraihIe peuI aihsi Ire mohIre soiI dahs uh comparIimehI spciIique appel cohsIraihIs,
soiI dahs le comparIimehI du hom de l'lmehI, soiI sous Iorme d'uhe hoIe aIIache ihcluahI le
IexIe de la cohIraihIe.
Figure 9-1 Reprseulalious graphiques des coulraiules daus les diagrauues SysML
168
Lcs paramtrcs formcls dcs quations sont rcprscnts par dcs ports ct pcuvcnt ainsi ctrc
connccts lcs uns aux autrcs. Ils sont dclars sous la formc habitucllc : hom du
paamfe : Type |mu1f1p11c1f].
Montrons la conncxion dcs dcux quations prcdcntcs via lcurs paramtrcs communs sur
lc diagrammc suivant. Lcs dcux lmcnts dc typc constraint property rcprscntcnt chacun
un usagc dcs dcux contraintcs dclarcs prcdcmmcnt. Lcs paramtrcs dc typc \olt ct
Figure 9-2
0iuiliou de coulraiules
daus uu bdd
8.A .-8A C artcuche
Le carIouche ghral du diagramme paramIrique esI de la Iorme :
par |fype d`1mehf] hom de 1`1mehf |hom du d1agamme]
le Iype d'lmehI peuI Ire uh bloc ou uhe cohIraihIe.
169
Ampcrc sont connccts cntrc cux. Notcz qu'ils sont graphiqucmcnt compltcmcnt a
l'intricur dc la contraintc, a la diffrcncc dcs ports classiqucs dans l'ibd. Ils pourraicnt
avoir dcs noms diffrcnts, cc qui pourrait ctrc lc cas si lcs quations avaicnt t dfinics
dans dcs contcxtcs diffrcnts. Il suffit quc lcs typcs soicnt compatiblcs pour pouvoir lcs
rclicr cntrc cux.
Figure 9-3
Sysleue d'qualious daus uu
diagrauue paraulrique
AI I| N II0 N iagramme structureI !
Le diagramme paramIrique esI uh diagramme sIrucIurel ! uahd oh exprime la loi d'Ohm sous la
Iorme U = RI, cela he sighiIie pas que l'oh calcule U a parIir des valeurs R eI I. Il h'y a pas de hoIioh
d'ehIre/sorIie. Oh auraiI d'ailleurs pu crire R = U/I ou I = U/R. voila pourquoi le diagramme para-
mIrique h'esI pas uhe spcialisaIioh du diagramme d'acIiviI, mais d'uh diagramme sIrucIurel : le
diagramme ihIerhe de bloc.
170
CompImeots
La contraintc s'instancic cnsuitc cn rcliant dcs valcurs (appartcnant aux blocs du modlc)
aux paramtrcs formcls : c'cst la notion dc .alue binding.
Sur lc diagrammc prcdcnt, on voit apparaitrc trois .alue properties : tcnsion, rsistancc
ct dissipation, qui ont t dclarcs dans lc bloc Radiorvcil au nivcau du bdd. Pour pr
ciscr a qucl bloc apparticnncnt ccs valcurs, rcmarqucz la notation donnant lc chcmin
complct, par cxcmplc : Pad1o-ve11::fehs1oh. Unc notation pointc cst galcmcnt
possiblc (Pad1o-ve11.fehs1oh), ainsi quc l'affichagc du nom du posscsscur cntrc
parcnthscs audcssous.
Figure 9-4
0iagrauue paraulrique
avec value biudiug
171
L'objcctif principal du diagrammc paramtriquc cst dc supportcr dcs analyscs plus pous
scs d'ingnicric avcc dcs outils commc Matlab/Simulink, ctc. Un autrc objcctif cst dc
rclicr ccs analyscs aux cxigcnccs, cn montrant commcnt unc contraintc ou quation pcut
scrvir a vrificr unc cxigcncc particulirc.
Imaginons quc nous avions idcntifi unc cxigcncc non fonctionncllc sur lc radiorvcil
conccrnant la dissipation dc chalcur occasionnc. Nous pouvons maintcnant rclicr la con
traintc portant sur l'cffct Joulc a ccttc cxigcncc, puisquc la formulc dc l'quation pcrmct
justcmcnt dc calculcr ccttc dissipation cn fonction dcs paramtrcs lcctriqucs (P - UI ou
P - RI
2
, puisquc U - RI).
L'intrct du diagrammc paramtriquc ticnt dcs capacits quc commcnccnt a offrir lcs di
tcurs SysML d'injcctcr dcs donncs dans d'autrcs outils d'analysc. Citons d'orcs ct dja lc
couplagc dc Magicraw avcc ParaMagic qui pcrmct d'cffcctucr dcs simulations a partir
dcs contraintcs du diagrammc paramtriquc, cn s'appuyant sur un solvcur mathmatiquc
appcl Mathcmatica. n pcut galcmcnt citcr lc couplagc dc l'outil I8MTclclogic/
Rhapsody vcrs Matlab/Simulink.
Figure 9-5
Lieu eulre exigeuces
el coulraiules
10
A||ocation et traabi|it
Cc chapitrc prscntc lc conccpt d'allocation ct scs possibilits dc
rcprscntation. SysML inclut cn cffct un mcanismc gnral
pcrmcttant dc rcprscntcr diffrcnts typcs d'allocation, incluant
l'allocation dc fonctions a dcs composants, dc composants
logiqucs a composants physiqucs, ainsi quc du softwarc au
hardwarc.
allocaIioh
IraabiliI
173
Le coocept d'aIIocatioo
L'allocation cst un mcanismc gnral cn ingnicric systmc pour intcrconncctcr dcs l
mcnts dc diffrcnts typcs. Par cxcmplc, pour rclicr un flot d'objct dans un diagrammc
d'activit a un conncctcur dans un diagrammc dc bloc intcrnc (ibd), ou unc action a unc
partic, ctc. Ccs rclations sont souvcnt prscntcs dans un modlc classiquc, mais uniqucmcnt
sous formc dc commcntaircs ou dc notcs, donc pcu visiblcs. Lc gros apport dc SysML avcc
lc mcanismc d'allocation cst dc rcndrc visiblc ct cxploitablc toutcs ccs intcrconncxions.
Commc lc mcanismc d'allocation cst trs gnral, SysML n'a pas ajout un diagrammc
spcifiquc, mais plutt un mcanismc avcc plusicurs rcprscntations graphiqucs dispo
niblc dans dc nombrcux diagrammcs.
174
Nous avons d'aillcurs dja vu unc sortc d'allocation dans lc chapitrc 2 avcc lc diagrammc
d'cxigcnccs : la rclation saf1sfy pcut tout a fait ctrc vuc commc l'allocation dcs cxi
gcnccs aux blocs.
Les diffreotes reprseotatioos
0iagramme de dfioitioo de bIocs (bdd)
Lc diagrammc dc dfinition dc blocs pcrmct dc dcrirc dcs allocations cntrc dcs lmcnts
rcprscnts graphiqucmcnt commc dcs rcctanglcs : principalcmcnt dcs blocs, mais aussi
dcs activits, ctc.
La prcmirc rcprscntation graphiquc cst donnc par unc flchc pointillc avcc lc motcl
a11ocafe .
Unc sccondc faon consistc a montrcr lcs rclations dans un compartimcnt supplmcn
tairc. L'lmcnt point par la rclation a11ocafe possdc unc proprit
a11ocafedIom, l'lmcnt ciblc possdc unc proprit a11ocafedTo.
8.A .-8A A IIccaticn
Uhe allocaIioh esI uhe relaIioh ehIre lmehIs de Iypes diIIrehIs, ou de hiveaux d'absIracIioh diI-
IrehIs. Flle permeI d'allouer uh lmehI cible a uh ou plusieurs lmehIs sources.
Flle peuI se Iraduire graphiquemehI par uhe Ilche poihIille avec le moI-cl a11ocafe , uh
comparIimehI spciIique avec les moIs-cls a11ocafedIom, a11ocafedTo, uhe hoIe, eIc.
175
Notcz quc lc bloc radio possdc galcmcnt unc proprit Saf1sf1es, dcpuis lc chapitrc
sur la gcstion dcs cxigcnccs.
Unc troisimc faon dc rcprscntcr ccs proprits consistc a lcs fairc figurcr dans unc notc
attachc.
Figure 10-1
^llocaliou d'uue aclivil
a uu bloc daus uu bdd
Figure 10-2
^llocalious daus
des couparliueuls
Figure 10-3
^llocalious daus des uoles
176
0iagramme d'activit
Lc diagrammc d'activit pcut ctrc augmcnt cn rcprscntant l'allocation dcs actions sur
lcs blocs, grcc au conccpt dc partition (ou s.imlane). Si nous rcprcnons lc diagrammc
d'activit du chapitrc 8 avcc la rgion intcrruptiblc ct quc nous ajoutons lcs couloirs
d'allocation, nous obtcnons lc diagrammc d'activit suivant.
Figure 10-4 ^llocalious daus des couloirs du diagrauue d'aclivil
177
Nous pouvons galcmcnt alloucr plus fincmcnt lcs brochcs d'cntrc/sortic, ct lcs flots
d'objct du diagrammc d'activit aux ports ct aux conncctcurs structurcls.
Pour notrc tudc dc cas, nous avons rcpris lc diagrammc d'activit ralis au chapitrc 8,
rcprscntant lcs brochcs ct flots d'objct cntrc lcs fonctions. Nous lui avons ajout l'alloca
tion dcs brochcs dc sortic aux ports dcs blocs conccrns, ainsi quc l'allocation du flot
d'objct cntrc Grcr l'horlogc ct Affichcr, ct lc conncctcur structurcl cntrc lcs partics Hor
logc ct Affichcur du Radiorvcil.
Figure 10-5
^llocalious de broches
el lols d'objels a des parlies,
porls el couuecleurs
178
keprseotatioo tabuIaire
Commc c'cst galcmcnt lc cas pour lcs cxigcnccs, SysML prconisc dc pouvoir rcpr
scntcr lcs allocations sous formc tabulairc. Il cst a la chargc dc l'outil dc modlisation dc
fournir cc gcnrc dc rcprscntation, cn complmcnt dcs rcprscntations graphiqucs. La
figurc suivantc cst gnrc automatiqucmcnt par Magicraw a partir dcs diagrammcs
prcdcnts.
n fait, l'outil pcrmct mcmc d'allcr plus loin cn montrant lcs allocations dc faon hirar
chiquc cntrc lmcnts plus fins (commc ports ct brochcs, par cxcmplc).
Figure 10-6
Reprseulaliou labulaire
des allocalious
179
Figure 10-7 Reprseulaliou labulaire dlaille des allocalious
180
0iagramme de bIoc ioteroe (ibd)
Lc diagrammc dc bloc intcrnc pcrmct d'ajoutcr dcs allocations d'actions, flots, ctc. pr
scnts dans lc diagrammc d'activit. Nous avons vu lc mcanismc invcrsc dans lc para
graphc prcdcnt. C'cst la quc l'on apprcic l'aidc d'un outil SysML (par rapport a un pur
outil dc dcssin) qui doit savoir rpcrcutcr lcs allocations dclarcs unc fois pour toutcs sur
l'cnscmblc dcs diagrammcs o figurcnt dcs lmcnts conccrns.
Figure 10-8 ^llocalious daus uu ibd
181
Unc autrc utilisation courantc dc la rclation d'allocation consistc a rclicr dcs lmcnts
structurcls cntrc cux. Il cst souvcnt rccommand dans dc nombrcuscs mthodologics
d'ingnicric systmc dc commcnccr par unc dcomposition structurcllc guidc par lcs
fonctions, souvcnt qualific d'architccturc logiquc. Puis, dans un sccond tcmps, d'intro
duirc dcs choix tcchniqucs pour dcrirc unc ou plusicurs architccturcs physiqucs impl
mcntant l'architccturc logiquc. La rclation cntrc ccs dcux nivcaux d'architccturc sc fait
parfaitcmcnt par lcs rclations d'allocation.
ans notrc tudc dc cas, nous avons voqu la possibilit au nivcau dc l'implmcntation
d'avoir dcux horlogcs sparcs pour l'affichcur ct lc projcctcur, ou unc horlogc uniquc
garantissant la cohrcncc dcs affichagcs. Au nivcau logiquc, il n'y a qu'unc fonctionnalit
Figure 10-9
^llocalious
slruclurelles
eulre uiveaux
logique el
physique
182
dc gcstion d'horlogc. n pourrait donc fairc unc prcmirc dcscription structurcllc dans cc
scns, puis cxplorcr plusicurs architccturcs physiqucs candidatcs afin dc raliscr unc ana
lysc comparativc (trade-off analysis).
Sur lc diagrammc prcdcnt, nous avons fait figurcr ctc a ctc unc vuc logiquc simplific
dc la structurc du rvcil, ct unc vuc physiquc simplific dc cc mcmc rvcil. Notcz lcs stro
typcs 1og1que ct phys1que quc nous avons crs, puis ajouts aux dcux blocs, afin
dc mcttrc cncorc plus cn vidcncc lc point dc vuc adopt pour chacun. Notcz aussi quc
SysML pcrmct dc dcssincr unc vuc simplific dc la structurc intcrnc d'un bloc dans un
compartimcnt particulicr ds lc bdd. Ccla nous facilitc ainsi la vic pour dclarcr lcs rclations
d'allocation qui sont dc vritablcs projcctions du mondc logiquc vcrs lc mondc physiquc.
0iagramme de squeoce
ans lc chapitrc 3, nous avons montr commcnt lc diagrammc dc squcncc systmc
pcrmct dc dcrirc dcs intcractions boitc noirc cntrc lc systmc a l'tudc ct scs actcurs.
Ccla pcut d'aillcurs scrvir asscz dircctcmcnt a drivcr dcs scnarios dc tcst fonctionncl.
Maintcnant quc nous avons idcntifi dcs partics a l'intricur du systmc ct prcis lcurs
conncxions structurcllcs, nous allons pouvoir dcomposcr la lignc dc vic rcprscntant lc
systmc pour montrcr lcs intcractions intcrncs (scnario boitcblanchc ). n pcut sc
scrvir dc cc nivcau pour cn drivcr dcs scnarios dc tcst d'intgration cntrc lcs diffrcnts
blocs qui vont constitucr lc systmc, ct ccci dc faon rcursivc.
Sur lc diagrammc dc squcncc suivant, j'ai rcpris lc scnario nominal simplifi du cas
d'utilisation principal : ctrc rvcill a l'hcurc. A la placc dc la lignc dc vic rcprscntant lc
systmc boitc noirc (Radiorvcil), j'ai fait figurcr lcs trois partics importantcs qui partici
pcnt au scnario : l'horlogc, la radio ct lc projcctcur.
183
Lc scnario boitcblanchc prcisc maintcnant quc c'cst l'horlogc qui jouc lc rlc dc con
trlcur ct qu'cllc activc cn paralllc la radio ct lc projcctcur. Au passagc, cn crcusant a cc
nivcau, on s'apcroit qu'on avait oubli dc fairc figurcr la projcction sur lc scnario boitc
noirc. C'cst ccla aussi la modlisation itrativc ct incrmcntalc !
Figure 10-10 0couposiliou slruclurelle daus le diagrauue de squeuce
A
Acronymes et dfinitions
Ccttc anncxc rappcllc lcs diffrcnts acronymcs utiliss dans lc
livrc ainsi quc lcs dfinitions lcs plus importantcs.
185
Acrooymes
A FIS ^ssocialiou rauaise d'iuguierie sysleue
bdd blocl deiuiliou diagrau
C F Coulrol |low0iagrau
F 0ala |low0iagrau
dss diagrauue de squeuce sysleue
ibd iulerual blocl diagrau
IN C 0S| |ulerualioual Couucil ou Sysleus Eugiueeriug
IS |uguierie sysleue
MA k I | Modeliugaud ^ualysis o Real Jiue aud Eubedded sysleus
0 MC 0bjecl Mauageueul Croup
SA I Slruclured ^ualysis aud 0esigu Jechuic
SA lk I Slruclured ^ualysis wilh Real Jiue exleusious
S0 C Sysleu 0u Chip
SysML Sysleus ModeliugLauguage
uC use Case
uML uuiied ModeliugLauguage
186
0fioitioos
A cteur
Rle jou par uh uIilisaIeur humaih ou uh auIre sysIme qui ihIeragiI direcIemehI avec le sysIme
Iudi.
Uh acIeur parIicipe a au moihs uh cas d'uIilisaIioh.
A cteur gnraIis
0eux acIeurs, ou plus, peuvehI prsehIer des similiIudes dahs leurs relaIiohs aux cas d'uIilisaIioh. Oh
peuI l'exprimer eh crahI uh acIeur ghralis, vehIuellemehI absIraiI, qui modlise les aspecIs
commuhs aux diIIrehIs acIeurs cohcreIs.
Acticn
L'acIioh esI l'uhiI IohdamehIale de spciIicaIioh comporIemehIale eh SysML. Flle reprsehIe uh
IraiIemehI ou uhe IrahsIormaIioh. Les acIiohs sohI cohIehues dahs les acIiviIs, qui IourhissehI leur
cohIexIe.
Activaticn
Les bahdes verIicales le lohg d'uhe lighe de vie d'uh diagramme de squehce reprsehIehI des
priodes d'acIivaIioh. Flles sohI opIiohhelles, mais permeIIehI de mieux comprehdre la Ilche poih-
Iille du message de reIour. TouIeIois, dahs uh souci de simpliciI, hous he l'uIiliserohs ghrale-
mehI pas.
187
A sscciaticn
Uhe associaIioh reprsehIe uhe relaIioh smahIique durable ehIre deux blocs.
Fxemple : Uhe persohhe peuI possder des voiIures. La relaIioh possde esI uhe associaIioh ehIre
les blocs Persohhe eI voiIure. AIIehIioh : mme si le verbe qui homme uhe associaIioh semble privil-
gier uh sehs de lecIure, uhe associaIioh ehIre blocs esI par dIauI bidirecIiohhelle. 0ohc impliciIemehI,
l'exemple prcdehI ihcluI galemehI le IaiI qu'uhe voiIure esI possde par uhe persohhe.
Les composiIiohs eI les agrgaIiohs sohI des cas parIiculiers d'associaIioh.
8 Icc abstrait
Uh bloc esI diI absIraiI si sa dIihiIioh he permeI pas de l'ihsIahcier.
Oh se serI souvehI de blocs absIraiIs dahs les arbres de ghralisaIioh pour IacIoriser des propriIs
sIrucIurelles ou comporIemehIales commuhes a d'auIres blocs cohcreIs (ihsIahciables).
Uh bloc absIraiI esI reprsehI eh iIalique.
C as d'utiIisaticn
Uh cas d'uIilisaIioh (use case) reprsehIe uh ehsemble de squehces d'acIiohs qui sohI ralises par
le sysIme eI qui produisehI uh rsulIaI observable ihIressahI pour uh acIeur parIiculier. Chaque
cas d'uIilisaIioh spciIie uh comporIemehI aIIehdu du sysIme cohsidr comme uh IouI, sahs impo-
ser le mode de ralisaIioh de ce comporIemehI. Il permeI de dcrire ce que le IuIur sysIme devra
Iaire, sahs spciIier commehI il le Iera.
Uh cas d'uIilisaIioh doiI Ire reli a au moihs uh acIeur.
188
C cnditicn
Uhe cohdiIioh (ou cohdiIioh de garde) esI uhe expressioh boolehhe qui doiI Ire vraie lorsque
l'vhemehI arrive pour que la IrahsiIioh soiI dclehche. Flle se hoIe ehIre crocheIs.
Flle peuI cohcerher les valeurs du bloc cohcerh aihsi que les paramIres de l'vhemehI dclehcheur.
Plusieurs IrahsiIiohs avec le mme vhemehI doivehI avoir des cohdiIiohs de garde diIIrehIes.
Ccntrainte
Uhe cohIraihIe esI simplemehI uhe cohdiIioh porIahI sur uh ou plusieurs lmehIs du modle qui
doiI Ire vriIie par les lmehIs cohcerhs. Flle esI hoIe ehIre accolades }, eI peuI Ire ihsre
au besoih dahs uhe hoIe graphique (le posI-iI).
cisicn
Uhe dcisioh esI uh hud de cohIrle sIrucIur reprsehIahI uh choix dyhamique ehIre plusieurs
cohdiIiohs qui doivehI Ire muIuellemehI exclusives. Flle esI reprsehIe par uh losahge qui pos-
sde uh arc ehIrahI eI plusieurs arcs sorIahIs.
| ffet, acticn, activit
Uhe IrahsiIioh peuI spciIier uh comporIemehI opIiohhel ralis par le bloc lorsque la IrahsiIioh esI
dclehche. Ce comporIemehI esI appel eIIeI : cela peuI Ire uhe simple acIioh ou uhe
squehce d'acIiohs. Uhe acIioh peuI reprsehIer la mise a jour d'uhe valeur, uh appel d'opraIioh,
aihsi que l'ehvoi d'uh sighal a uh auIre bloc. L'excuIioh de l'eIIeI esI uhiIaire eI he permeI de Irai-
Ier aucuh vhemehI supplmehIaire pehdahI soh droulemehI. Les acIiviIs durables (o o- o ctivitj )
ohI uhe cerIaihe dure, sohI ihIerrupIibles eI sohI associes aux IaIs.
189
| tat
Uh IaI reprsehIe uhe siIuaIioh durahI la vie d'uh bloc pehdahI laquelle :
il saIisIaiI uhe cerIaihe cohdiIioh ,
il excuIe uhe cerIaihe acIiviI ,
ou bieh il aIIehd uh cerIaih vhemehI.
Uh bloc passe par uhe successioh d'IaIs durahI soh exisIehce. Uh IaI a uhe dure Iihie, variable
seloh la vie du bloc, eh parIiculier eh IohcIioh des vhemehIs qui lui arrivehI.
| tat ccmpcsite
Uh IaI composiIe (aussi appel super-IaI) permeI d'ehglober plusieurs sous-IaIs exclusiIs. Oh
peuI aihsi IacIoriser des IrahsiIiohs dclehches par le mme vhemehI eI amehahI vers le mme
IaI cible, IouI eh spciIiahI des IrahsiIiohs parIiculires ehIre les sous-IaIs.
| vnement
SpciIicaIioh d'uhe occurrehce remarquable qui a uhe localisaIioh dahs le Iemps eI l'espace. Uh v-
hemehI peuI porIer des paramIres qui maIrialisehI le IloI d'ihIormaIioh ou de dohhes ehIre l-
mehIs.
|xigence
Uhe exigehce permeI de spciIier uhe capaciI ou uhe cohIraihIe qui doiI Ire saIisIaiIe par uh sys-
Ime. Flle peuI spciIier uhe IohcIioh que le sysIme devra raliser ou uhe cohdiIioh de perIor-
mahce, de IiabiliI, de scuriI, eIc.
Les exigehces servehI a Iablir uh cohIraI ehIre le cliehI eI les ralisaIeurs du IuIur sysIme.
190
FIct
Uh IloI esI uh cohIrle de squehage pehdahI l'excuIioh de huds d'acIiviI. Les IloIs de cohIrle
sohI de simples Ilches reliahI deux huds (acIiohs, dcisiohs, eIc.). Le diagramme d'acIiviI permeI
galemehI d'uIiliser des IloIs d'objeIs (reliahI uhe acIioh eI uh objeI cohsomm ou produiI).
Fcrk
Uh Iork esI uh hud de cohIrle sIrucIur reprsehIahI uh dbrahchemehI parallle. Il esI repr-
sehIe par uhe barre horizohIale ou verIicale qui possde uh arc ehIrahI eI plusieurs arcs sorIahIs.
Le Iork duplique le jeIoh ehIrahI sur chaque IloI sorIahI. Les jeIohs sur les arcs sorIahIs sohI ihd-
pehdahIs eI cohcurrehIs.
Interface
Uhe ihIerIace esI uh ehsemble d'opraIiohs absIraiIes (sahs algoriIhmes) cohsIiIuahI uhe sorIe de
cohIraI qui devra Ire ralis par uh ou plusieurs blocs. CraphiquemehI, uhe ihIerIace esI soiI repr-
sehIe comme uh bloc avec uh moI-cl 1hfeface ou le symbole d'uh cercle, soiI direcIe-
mehI comme uh cercle dahs la hoIaIioh cohdehse.
Icin
Uh joih esI uh hud de cohIrle sIrucIur reprsehIahI uhe syhchrohisaIioh ehIre acIiohs (rehdez-
vous). Il esI reprsehI par uhe barre horizohIale ou verIicale qui possde uh arc sorIahI eI plusieurs
arcs ehIrahIs. Le joih he produiI soh jeIoh de sorIie que lorsqu'uh jeIoh esI dispohible sur chaque
IloI ehIrahI.
191
Ligne de vie
ReprsehIaIioh de l'exisIehce d'uh lmehI parIicipahI dahs uh diagramme de squehce.
Uhe lighe de vie possde uh hom eI uh Iype. Flle esI reprsehIe graphiquemehI par uhe lighe ver-
Iicale eh poihIills.
Message
FlmehI de commuhicaIioh uhidirecIiohhel ehIre lighes de vie qui dclehche uhe acIiviI dahs le
desIihaIaire. La rcepIioh d'uh message provoque uh vhemehI chez le rcepIeur.
La Ilche poihIille reprsehIe uh reIour. Cela sighiIie que le message eh quesIioh esI le rsulIaI
direcI du message prcdehI. Uh message syhchrohe (meIIeur bloqu eh aIIehIe de rpohse) esI
reprsehI par uhe Ilche pleihe, alors qu'uh message asyhchrohe esI reprsehI par uhe Ilche vi-
de. La Ilche qui boucle (message rIlexiI) permeI de reprsehIer uh comporIemehI ihIerhe.
MuItipIicit
Uhe mulIipliciI esI uh ihIervalle avec uhe borhe ihIrieure eI uhe borhe suprieure :
la borhe ihIrieure peuI-Ire O (opIiohhelle) ou h'imporIe quel ehIier posiIiI ,
la borhe suprieure peuI Ire 1, plusieurs (hoI ), ou uh ehIier posiIiI.
La mulIipliciI esI hoIe ehIre crocheIs. Si les borhes sohI gales, oh h'criI qu'uhe valeur eI la
valeur par dIauI eh SysML esI |1|.
Aux deux exIrmiIs d'uhe associaIioh, oh doiI Iaire Iigurer uhe ihdicaIioh de mulIipliciI. Flle sp-
ciIie sous la Iorme d'uh ihIervalle le hombre d'ihsIahces qui peuvehI parIiciper a uhe relaIioh avec
uhe ihsIahce de l'auIre bloc dahs le cadre d'uhe associaIioh.
Fackage
Mcahisme ghral de regroupemehI d'lmehIs Iels que blocs, ihIerIaces, mais aussi acIeurs, cas
d'uIilisaIioh, eIc. Les packages peuvehI Ire imbriqus dahs d'auIres packages.
Uh package cohsIiIue uh espace de homs (no m e: po ce) pour les lmehIs qu'il cohIiehI.
192
Scnaric
Uh schario reprsehIe uhe successioh parIiculire d'ehchahemehIs, s'excuIahI du dbuI a la Iih
du cas d'uIilisaIioh, uh ehchahemehI IahI l'uhiI de descripIioh de squehces d'acIiohs.Uh cas
d'uIilisaIioh cohIiehI eh ghral uh schario homihal eI plusieurs scharios alIerhaIiIs (qui se Iermi-
hehI de Iaoh hormale) ou d'erreur (qui se IermihehI eh chec).
Oh peuI d'ailleurs proposer uhe dIihiIioh diIIrehIe pour uh cas d'uIilisaIioh : ehsemble de sc-
harios d'uIilisaIioh d'uh sysIme relis par uh buI commuh du poihI de vue de l'acIeur prihcipal .
Strctype
Les moIs-cls SysML comme 1hc1ude eI exfehd sohI hoIs ehIre guillemeIs Iypogra-
phiques. Mais hous pouvohs galemehI crer hos propres moIs-cls, Iels que fagmehf (pour
ihdiquer qu'uh cas d'uIilisaIioh h'esI qu'uh IragmehI IacIoris par d'auIres cas d'uIilisaIioh) ou
secohda1e (pour ihdiquer qu'uh cas d'uIilisaIioh esI moihs imporIahI que les auIres). Ces
moIs-cls ihvehIs par les modlisaIeurs s'appellehI alors des sIroIypes.
Systme
Uh sysIme esI uh ehsemble de composahIs ihIerrelis qui ihIeragissehI les uhs avec les auIres d'uhe
mahire orgahise pour accomplir uhe IihaliI commuhe (NASA 1995).
Uh sysIme esI uh ehsemble ihIgr d'lmehIs qui accomplissehI uh objecIiI dIihi (INCOSF 2OO4).
transiticn
Uhe IrahsiIioh dcriI la racIioh d'uh bloc lorsqu'uh vhemehI se produiI (ghralemehI le bloc
chahge d'IaI, mais pas IorcmehI). Fh rgle ghrale, uhe IrahsiIioh possde uh vhemehI
dclehcheur, uhe cohdiIioh de garde, uh eIIeI eI uh IaI cible.
B
Diagrammes lA, 1opCased
et Artisan Studio
Ccttc anncxc prscntc d'autrcs diagrammcs raliss pour l'tudc
dc cas Radiorvcil avcc lcs outils ntcrprisc Architcct,
TopCascd ct Artisan Studio. Ccs diagrammcs ont t faits
indpcndammcnt dc ccux raliss pour lc livrc avcc Magicraw.
Ils nc sont pas toujours cohrcnts cntrc cux, mais illustrcnt lcs
possibilits dc modlisation offcrtcs par d'autrcs outils.
194
IopCased
Figure 8 -1
JopCased . exigeuces
priucipales
195
Figure 8 -2
JopCased . exigeuces
d'aliueulaliou
196
Figure 8 -3
JopCased .
exigeuces
d'aichage
197
Figure 8 -4 JopCased . lieus eulre exigeuces el cas d'ulilisaliou
198
Figure 8 -5 JopCased . bdd siuple
199
Figure 8 -6 JopCased . bdd diuissaul des value Jypes
200
Figure 8 -7 JopCased . bdd coupll
201
Figure 8 -8 JopCased . lieus eulre exigeuces, cas d'ulilisaliou el blocs
202
oterprise Architect (A)
Figure 8 -9
E^ . dbul de l'ibd
du radiorveil
203
Figure 8 -10
E^ . porls el iuleraces
du radiorveil
204
Figure 8 -11
E^ . diuiliou des iuleraces
du radiorveil
205
Figure 8 -12
E^ . diagrauue de squeuce
de couler la radio
206
Figure 8 -13
E^ . diagrauue de squeuce
de lre rveill
207
Figure 8 -14
E^ . diagrauue de squeuce
dcoupos de lre rveill
208
Figure 8 -15
E^ . diagrauue d'lals
209
Artisao 5tudio (eocore merci Iivier Casse !)
Figure 8 -16
^rlisau . relalious
eulre exigeuces
210
Figure 8 -17
^rlisau .
cas d'ulilisaliou
211
Figure 8 -18
^rlisau . relalious
eulre exigeuces,
cas d'ulilisaliou
el cas de lesl
212
Figure 8 -19
^rlisau . diagrauue
de squeuce sysleue
213
Figure 8 -20
^rlisau .
bdd couplel
214
Figure 8 -21
^rlisau .
diagrauue
d'lals
215
Figure 8 -22 ^rlisau . diagrauue d'lals auiu
216
Figure 8 -23
^rlisau . diagrauue d'aclivil
1
A
acteur 35
classification 41
gnralis 43
principal 38
action 122, 140
accept event action 153
accept time event 154
action dappel 151
smantique dexcution 150
send signal action 154
activation 50
activit 122
paramtre 152
signal 153
AFIS 3
agrgation 67
allocation 173
Artisan Studio 137
ASA 10
association 69
bidirectionnelle 111
multiplicits 70
unidirectionnelle 71
2
B
bdd (block definition diagram) 59, 174
bloc 60
bloc abstrait 88
broche 149
C
cadre rfrence 54
cas dutilisation 36
description 40
relations 43
cas de test 31
classification 72
composition 66
condition 120
connecteur 84
connecteur dassemblage 102
connecteur de dlgation 102
contrainte 65, 167
ControlOperator 159
ControlValue 159
D
dcision 141
dpendance 111
deriveReqt 28
3
diagramme 16
animation 137
cartouche 25
activit 139, 176
tats 117
exigences 23
de bloc interne (ibd) 80, 180
de cas dutilisation 34
de dfinition de blocs (bdd) 59, 174
de packages 106
de squence systme (dss) 48, 182
cadre rfrence 54
contraintes temporelles 56
fragment combin 52
paramtrique 165
dss (diagramme de squence systme ) 48
E
effet 122
entre 132
de sortie 132
espace de noms 109
tat 119
tat composite 126
tat final 122
4
tat initial 122
pseudo-tat History 129
rgion concurrente 130
vnement 119
vnement interne 124
vnement temporel 125
exigence 24
drivation 28
raffinement 28
F
flot 141
continu 157
fin de flot 146
flot dobjet 149
stream 158
flow port 89
composite 94
conjugu 95
flow specification 94
fork 143
forme tabulaire 32, 178
fragment combin 52
fusion 147
5
I
ibd (internal block diagram) 80, 180
INCOSE 14
ingnierie systme (IS) 1
norme 3
interface 96
item flow 92
J
jeton 141
join 143
L
ligne de vie 49
M
MagicDraw VI, 33, 63, 171, 178
MARTE 13
Mathematica 171
Matlab 171
message 50
modle 8, 113
modlisation 8
exigences 22
multiplicit 63
N
ud dobjet 151
6
nom qualifi 109
norme
EIA 632 5
IEEE 1 220 4
ISO 15 288 6
O
object flow 148
object node 148
OMG (Object Management Group) 10
oprateur de contrle 159
opration 75
P
package 107
contenance 109
dpendance 111
modle 113
point de vue 114
vue 113
paquetage 108
partie 61, 65, 82
partition 176
point de vue 114
port 89
composite 94
7
flow port 90
port conjugu 95
port de comportement 102
port de dlgation 102
port standard 89, 98
profil UML 16
R
rception 75
rfrence 82
refine 28
rgion
concurrente 130
expansion 156
interruptible 155
relation
agrgation 67
association 69
composition 66
extension 43
inclusion 43
utilisation 97
de contenance 109
de gnralisation 43
ralisation 97
8
rseau de Petri 143
S
SA/RT 9
SADT 9
scnario 40
Simulink 171
spcialisation 74
strotype 46
stream 157
super-tat 126
SysML
diagramme 16
histoire 14
site Web 16
UML 2/SysML 17
System on a Chip (SoC) 14
systme 2
T
test case 31
traabilit 31
transition 120
de compltion 134
interne 135
propre 135
9
U
UML 10
diagramme 10
profil 16
UML 2/SysML 17
use case (UC) 36
V
valeur 60
de contrle 159
value binding 170
value type 63
vue 113

Das könnte Ihnen auch gefallen