Documente Academic
Documente Profesional
Documente Cultură
Brahim HAMID
brahim.hamid@irit.fr brahim.hamid@ ni!"tlse#.fr http$%%mass"cara. ni!"tlse#.fr%&brahimo %ens% ml
La base de contrle Robot Zone explorer
IRIT UTM
Vue comportementale
Diagramme des cas dutilisation Diagramme tats-transition Diagramme dactivits Diagramme de collaboration Diagramme de squence
IRIT"UTM
IRIT"UTM
'
neI6M operation8 tton $peration%utton 1..7 operation8 tton &umeric%utton 1..7 neI6M 1
#rameCalculatrice
IRIT"UTM
Mod'le
Calculatrice !ale r$inte2er$5 )+alc latrice,)a1o ter ,nombre $inte2er)so straire ,nombre $inte2er )intialiser,)to3trin2,-$ 3trin2 )0dd4bser!able ,frame+alc latrice $*rame+alc latrice 1 ne+alc latrice
neI6M operation8 tton $peration%utton 1..7 operation8 tton &umeric%utton 1..7 neI6M 1
#rameCalculatrice
IRIT"UTM
Mod'le
Calculatrice !ale r$inte2er$5 )+alc latrice,)a1o ter ,nombre $inte2er)so straire ,nombre $inte2er )intialiser,)to3trin2,-$ 3trin2 )0dd4bser!able ,frame+alc latrice $*rame+alc latrice 1 ne+alc latrice
(M
neI6M operation8 tton $peration%utton 1..7 operation8 tton &umeric%utton 1..7 neI6M 1
#rameCalculatrice
IRIT"UTM
IRIT"UTM
Mod'leCalculatrice
(MCalculatrice
.ous les lments Calculatrice
(MCalculatrice
IRIT"UTM
>
neI6M
IRIT"UTM
neI6M operation8 tton $peration%utton 1..7 operation8 tton &umeric%utton 1..7 neI6M 1
#rameCalculatrice
15
IRIT"UTM
11
IRIT"UTM
1#
Classe vs; Composant Les classes reprsentent des abstractions logiques alors que les composants reprsentent des abstractions p-<siques qui e!istent dans le monde des bits Les composants reprsentent le regroupement p-<sique de ce quon pourrait appeler des composants logiques et se situent 2 un niveau dabstraction di::rent Les classes peuvent avoir directement des attributs et des oprations; 1n gnral7 les composants comportent seulement des oprations que lon peut atteindre uniquement par leur inter:ace
IRIT"UTM
1'
Le composant
Interface Fournie
Composant
Interface Requise
IRIT"UTM
1(
Le composant Le composant est un lment p-<sique qui reprsent une partie implmet d=un s<st'me"
du code un script7 un :ic-ier de commandes;;;
IRIT"UTM
19
Les inter:aces 5>8 Une inter:ace est un ensemble d=oprations utilises pour dcrire un service d=une classe ou d=un composant UML :ournit un mo<en grap-ique de reprsenter les inter:aces
Interfaces
3p+tl3/st
+peed9cquisition
3p0c@3/st
IRIT"UTM
1:
Les inter:aces 5,8 Les inter:aces d=un composant sont les lments d:inissant le compotement 5service8 o::ert 2 d=autres composants Un composant est un lment p-<sique qui se con:orme 2 un ensemble dinter:aces et les ralise; Les inter:aces :ont donc le lien entre le mod'le logique et le mod'le p-<sique;
IRIT"UTM
1;
Interface Fournie
Composant
Interface Requise
IRIT"UTM
1>
1!emple
/ nter:ace 0 CalculatriceCommand )a1o ter ,nombre $inte2er )so straire ,nombre $inte2er )intialiser,)to3trin2,-$ 3trin2 )0dd4bser!able ,frame+alc latrice $*rame+alc latrice -
Calculatrice !ale r$inte2er $5 )+alc latrice,)a1o ter,nombre $inte2er )so straire,nombre $inte2er)intialiser,)to3trin2,-$3trin2 )0dd4bser!able ,frame+alc latrice $*rame+alc latrice 1 ne+alc latrice
neI6M
IRIT"UTM
1?
@elations entre composants 5>8 La majeure partie des relations e!istantes entre composants est constitue par des contraintes de compilations et d=dition de liens
IRIT"UTM
#5
@elations entre composants 5,8 Dpendance entre composants par l=intermdiare d=une inter:ace
Composant utilisateur
IRIT"UTM
#1
UML>;!" un composant est une unit modulaire7 dplo<able et interc-angeable dans un s<st'me7 encapsulant limplmentation et ne!posant quun ensemble dinter:aces ;; UML ,;A" les composants deviennent des lments structurant beaucoup plus abstraits7 qui reprsentent davantage des sous parties dun s<st'me7 amenes 2 3tre modlises selon di::rentes vues et ra::ines tout au long du c<cle de dveloppement
IRIT"UTM
##
Le concept de composant est dcrit dans di::rentes parties 5ou packages8 de la partie +uperstructure de la norme UML,;A " Composite structures Components Deployments Un certain nombre de pro:ils regroups en anne!e ont t d:inis pour dcrire des arc-itectures logicielles 2 base de composants relativement rpandus comme 16%7 CCM7 ou encore C$M
IRIT"UTM
#'
Vue e!terne d=un composant .escription des ser!ices fo rnis et re@ is Un ensemble dDinterfaces fo rnies et re@ ises Un ensemble dDattrib ts et opErations p bli@ es
A component B
3tarter
3peedRe2 lator
.ispla/
A component B 3peedRe2 lator A Cro!ided interfaces B 3tarter start,stop,A Re@ ired interfaces B .ispla/
IRIT"UTM
#(
Une interface fo rnie est implEmentEe par le composant Une interface re@ ise est tilisEe par le composant
A Interface B 3tarter start,stop,A reception B 4n4ff max3p$ float
A component B
A Interface B .ispla/
3peedRe2 lator
/ use 0
IRIT"UTM
#9
Les ports +Dest n point dDinterraction entre n composant et de son en!ironnement Cl sie rs ports pe !ent Ftre dEfinis po r le mFme composants selon le mode dDinteraction tilisE +e @ i permet de preser!er n 2rand ni!ea dDindEpendance entre le comosant et son en!ironnement
Interface Requise
IRIT"UTM
#:
Un composant possde un certain nombre dinterfaces fournies et requises Ce qui permet de connecter les composants les uns aux autres, soit en utilisant des relations de dpendance, ou laide de connecteurs. Une interface fournie est donc !" soit directement implmente par le composant ou lun de ses constituants #" soit le t$pe dun port fourni ou requi par le composant.
#;
A component B
3peedRe2 lator
#>
Diagramme de composants Les diagrammes de composants dcrivent les composants et leurs dpendances dans lenvironnement de ralisation Les diagrammes de composants sont des vues statiques de limplmentation des s<st'mes qui montrent les c-oi! de ralisation Les relations de dpendance sont utilises dans les diagrammes de composants pour indiquer quun lment dimplmentation dun composant :ait appel au! services o::erts par les lments dimplmentation dun autre composant
IRIT"UTM
#?
ProvidedInterface
Composant !
RequiredInterface
InterfaceProvider1
RequiredInterface1
Composant #
InterfaceProviderN
RequiredInterfaceN
IRIT"UTM
'5
9ssemblage de composants
AcomponentB
AcomponentB
.ispla/
IRIT"UTM
3peedRe2 l a t o r 3tarter
Re2 lator3creen
'1
ComposantCalculatrice
ComposantCalculatrice (M
IRIT"UTM
'#
Mod'le de plate:orme5>8 Consiste 2 reprsenter le milieu! p-<sique dans lequel le composant est mis
4rcision du nDud 5la mac-ine8 4rcision du protocole 5lien entre les nDuds8
Gx$ Un C+ et pl sie rs ser!e rs
unServeur SSH
unPC * TCP/IP
unServeur
IRIT"UTM
''
C-aque ressource matrielle est reprsente par un nDud; Cette ressource poss'de au minimum de la mmoire et par:ois aussi des capacits de calcul" Un calculateur7 des ressources -umaines ou des prip-riques ;;;
un serveur une imprimante
IRIT"UTM
'(
Les di::rents nDuds qui apparaissent dans le diagramme de dploiement sont connects entre eu! par des lignes qui s<mbolisent un support de communication7 2 priori7 bidirectionnel
un PC porta le !SB
un modem
IRIT"UTM
'9
Les diagrammes de dploiement permet de montrer la disposition p-<sique des di::rents matriels E les nDuds E qui entrent dans la composition dun s<st'me et la rpartition des instances de composants7 processus et objets qui / vivent 0 sur ces matriels
IRIT"UTM
':
" suppor#
IRIT"UTM
';
Le nud 1
Le nud 2
Le composant C1
Le composant C2
IRIT"UTM
'>
nC+
@obotControler
nRobot 7
1mbedded9ppli
ethernet
@obot%asicLibrar<
@obotControler (M
IRIT"UTM
'?
Fork Kant
Descartes
Fork Fork
Aristotle
IRIT"UTM
(5
1!ercice" dGner de p-ilosop-e modlisation 2 base de composants .rois p-ilosop-es autour d=une table pour manger des spaguettis Un plat de spaguetti devant c-aque p-ilosop-e Une :ourc-ette 2 gauc-e de c-aque plat 4our manger7 un p-ilosop-e 2 besoin de deu! :ourc-ettes" celle de gauc-e de son plat et celle 2 gauc-e de son voisin de droite
IRIT"UTM
(1
IRIT"UTM
(#
Diagramme de composant
IRIT"UTM
('
IRIT"UTM
((
IRIT"UTM
(9
Diagramme de collaboration
Comporte
Des objets dans une situation donn Les liens qui relient les objets qui se connaissent Les messages c-angs entre les objets7 reprsents le long de ces liens
L=ordre d=envoi des messages est matrialis par un numro de squence &otation" un objet A envoie un message X 2 un objet B7 puis lobjet B envoie un message Y 2 un objet C7 et en:in C senvoie un message Z
0 1$ H #$ I + '$ Z
IRIT"UTM
(:
Diagramme de collaboration
#. 2et3es+ommandes
.ipond$Responsable
+ommande$+ommande
IRIT"UTM
(;
IRIT"UTM
(>
Diagramme d=activits $u / diagramme de :lu! 0 Le diagramme dactivit est utilis pour mettre laccent sur les squences et les conditions pour coordonner les comportements d=un s<st'me
4ermet de spci:ier le :lu! dactivits dans le s<st'me Contrairement au diagramme de squence7 il se :ocalise sur le droulement dune procdure interne plutFt que dans les vnements e!ternes
IRIT"UTM
(?
Diagramme d=activits
IRIT"UTM
95
IRIT"UTM
91
Service compta le
(i)ne d*eau
+valider,
-arde .or/
Pr&parer commande
0oin 9#
Activit&
IRIT"UTM
9'
Diagramme d=activits- tat d=action Un tat d=action est un tat qui reprsente le!cution dune action atomique ou dune opration &otations UML"
2nom d*action3
IRIT"UTM
9(
Diagramme d=activits- tat de sous activit Un tat de sous activit reprsente l=e!cution d=une squence7 non atomique7 dtapes
intrieurement elle se compose dans un ensemble d=actions et probablement d=vnements d=attente
&otations UML"
IRIT"UTM
99
Un objet :lot permet de modliser lutilisation des objets par les tats dactions ainsi que leur in:luence sur ces objets
&otations UML"
nom
Commande5 +Transmise,
&tat &tat
IRIT"UTM
9:
Diagramme d=activits- transition La transition reprsente le trans:ert de contrFle entre les activits Le trans:ert se::ectue une :ois le!cution de lactivit :inie &otations UML"
transition transition 2une activit&3 +condition, +condition, 2une autre 2une autre activit&3 activit&3
Condition de garde condition qui doit !tre satis"aite pour permettre la transition
IRIT"UTM
9;
Activit& Activit& 7 7
ranche
+condition +condition 6, 6,
+condition +condition 7, 7,
Activit& Activit& 6 6
Activit& Activit& 6 6
IRIT"UTM
9>
Lotation UML $
Activit& 7
Barre de s9nchronisation
Activit& 6
Activit& 8
IRIT"UTM
9?
Barre de s9nchronisation
Activit& 6
IRIT"UTM
:5
Diagramme d9ctivits
en prison +vendue,
se d&placer +non vendue, arr:t sur une rue +ne veut pas acheter, acheter +veut acheter,
+m4appartient,
IRIT"UTM
:1
:#
Chercher le caf&
parall&lisme
Mettre un filtre Mettre du caf& <emplir le r&servoir d4eau Prendre une tasse
Allumer la cafeti=re
S9nchronisation
(e caf& passe
servir
IRIT"UTM
:'
condition
+oui,
commentaire
IRIT"UTM
:(
IRIT"UTM
:9