You are on page 1of 84

Unified Modeling Langage

(UML)

(Bersini 2004)
(http://www.projet-plume.org/ressource/uml-langage-graphique-de-modelisation)

Laurent Prochon
animateur PEPI IDL
INRA, Dept PHASE
URH
63122 St Gens Champanelle
Laurent.perochon@clermont.inra.fr

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Histoire des langages de


programmation
1970/1980 : langages procduraux et structures de
donnes.
Les procdures divisent le code en plusieurs parties
(chapitres dun livre).
Rutilisabilit du code. Librairies (ensemble de
procdures).
1980 -> Conception oriente-objets, programmation

donnes
en groupe
ou structures, types diffrents.
oriente
objets,
Framework.
Framework = regroupement dobjets (librairie).

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Lorient Objet
Cest une technique de modlisation
de systme.

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Le systme
Un systme est compos dobjets en interaction
Exemples :
Une compagnie arienne (avions, pilotes )
Un amphithtre (lves, professeur, tables )

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les objets
Les objets du systme amphithtre

Paul

Lucie

Table n1
Chaise n2

Pascal

Table2

Chaise n1

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les objets
Objet = attributs + Mthodes
(Oprations)
Pascal

23 ans

Table2

Attributs

clibataire
mange
dors
tudie

4 pieds
marron

Oprations
Mthodes

ouverture tiroir
tirer rallonge

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Diffrences approches
procdurale/Objet
Procdurale

programm
es

objet
Objets
attributs
mthodes

Fichiers de donnes

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes
Elles regroupent les objets ayant des caractristiques
communes (informations/comportements).
Mme moule

Une classe est un


modle!
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes
Objets
Paul

Table n1

Chaise n1

Table2

Chaise n2

Pascal

Lucie

Classes
Personne

Table

Chaise

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes et les


instances
Pascal

Paul

Lucie

23 ans

25 ans

20 ans

clibataire

mari

clibataire

mange
dors
tudie

mange
dors
tudie

mange
dors
tudie

Objet
Instance

Personne
ge

Classe

statut marital
mange
dors
tudie

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes et les


instances
Chaque instance est forcment associe une classe.
Quand on instancie une classe on obtient un objet. (on crer les
champs pour les attributs)
Une instance est un objet.

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Rsum : Entits de
lapproche oriente objet
Objets

Valeurs particulires

Attributs
Classes
(Mthodes
)

Cases
vides

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Objet = le
Communication inter les : ponts

http://fr.wikipedia.org/wiki/Fichier:Faroes030417-nasa%282%29.jpg
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les associations
(liens entre classes)
Hritage . voir
Agrgation
Association
...

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Lhritage

Gnralisation/Spcialisation
Lorsque
des
classes
ont
des
caractristiques
communes, on peut mettre en commun ces
informations/comportements
dans
une
classe
spcifique.
Les classes dorigines hriteront des caractristiques
de celle-ci.

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Lhritage

Personne
ge
statut marital
mange
dors
tudie
Personne
ge

dors

Homme

Bb

statut marital
mange
tudie

mange

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Lhritage

Personne
ge
statut marital
mange
dors
tudie
Personne
ge

Modification
de Mange
dors
mange

Homme

Bb

statut marital
tudie
mange

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Lhritage
Personne
ge

Parent

dors
mange

Homme

Bb

statut marital

Descendants

tudie
mange

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Lhritage
Avantages
partage de code
Rutilisabilit
Fiabilit (classes les plus hautes souvent utilises)

Dangers
Dcoupage excessif du code
non respect de la gnralisation/spcialisation

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Agrgation
Composition (plus fort)

lobjet contient, regroupe, possde

Exemple de relation regroupe

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Association
Communication entre objets. Un objet envoi un
message/stimulus un autre

Demande rapport

Lucie

Demande rapport
Envoi partie n1
Professeur
Martin

Binme n1

Envoi partie n2
Remise rapport
Demande rapport

Pascal

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Le principe de
lencapsulation
Sparation Interface/Implmentation

Demande service

lobjet2 ne peut accder lobjet1 que par ses mthodes


publiques (pas de modification directe de ses attributs )

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Le polymorphisme
Une objet peut envoyer un message un autre objet,
sans connatre le type de la classe de lobjet qui le
recevra.

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Rsum
Un objet/instance contient les donnes (attributs) et les
traitements (mthodes)
Chacun deux est associ une classe (moule)
Les classes sont associes entre elles par des associations

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Exemple modliser
Demande rapport

Lucie

Demande rapport
Envoi partie n1
Professeur
Martin

Binme n1

Envoi partie n2
Remise rapport
Demande rapport

Pascal

Schma logique

Reprsentation physique :
programme
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?
Quest ce qui agit, pense, fourni un service ?

Professeur
Martin

Lucie
Pascal

Personnes physiques qui ne font


Pas la mme chose

Et binme n1 ? .
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?

Sans objectifs plus prcis, sans spcifications supplmentaires, il y a plusieurs


possibles

simpl
e

complex
e

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?
Simple
instance
classe

-lve
-Lucie

-lve
-Pascal

-Professeur
-Martin
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?
Trop Simple
classe
Personne
-Statut
-Nom
Demande rapport()
Envoie partie()

instance
lve
Lucie
-lve
-Pascal

-Professeur
-Martin

Linstance Lucie ne connat quelle mme


Linstance de professeur ne connat pas de binme ni dlv
Et le binme ? Cest le seul qui fait une remise de rapport
Seul Professeur et binme peuvent demander un rapport
Seul les lves remettent des parties de rapport
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?

Linstance Lucie ne connat quelle mme


Linstance de professeur ne connat pas de binme ni dl

Deux types de problmes

Et le binme ? Cest le seul qui fait une remise de


rapport
Seul Professeur et binme peuvent demander un
rapport
Seul les lves remettent des parties de rapport
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?
Et le binme ? Cest le seul qui fait une remise de rapport
Seul Professeur et binme peuvent demander un rapport
Seul les lves remettent des parties de rapport

Il manque des notions/informations


+
Mlange de fonctions

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?

Et le binme ? Cest le seul qui fait une remise de rap


Seul Professeur et binme peuvent demander un rap
Seul les lves remettent des parties de rapport

Correspondance

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes ?

Linstance Lucie ne connat quelle mme


Linstance de professeur ne connat pas de binme ni dl

divergence

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes et les


associations ?

Connat

Professeur
Demande rapport()

Connat

Est compos de
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes et les


associations
? pour juste mett
Une classe
met
Personne

en commun un nom cest


faire compliquer pour rien.
rien

-nom

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Les classes et les


associations ?

Difficile darriver cette solution !


Raisons : problmes de spcifications et sur
de mthode et de reprsentation non norm
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Le programme
Professeur

Professeur

Programme
principal

Crer( Martin)

-Martin

(1,Lucie)
(3,instances Pascal et Lucie) (2,Pascal)

-1

-Pascal

binme

-Lucie

lves

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Le programme

Professeur
-Martin

(1,Lucie)
(2,Pascal)

-Pascal

Ainsi Martin connat Pascal et Lucie!


Idem pour binme 1

-Lucie

lves

Tableau
Instance Lucie, instance Pascal, instance
dinstances
= accs aux instances depuis linstance Professeur Martin
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
(unified Modeling Langage)
Introduction
Vue densemble
Que doit faire mon logiciel ?
La structure (vue mtier)
La dynamique (vue mtier)
La conception (vue informatique)
Conclusion
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Introduction

Logiciel

symboles

Excutable

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Introduction
Modles Compartiments
(flux entre compartiments)

Unified Modeling Langage


(UML)

-Modle du domaine
-Architecture du logiciel
-Communication utilisateur/informa

(J. Learmount et al. 2006)


Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Vue densemble

Introduction

Vue densemble
Que doit faire mon logiciel ?
La structure du logiciel (vue mtier)
La dynamique interne au logiciel (vue mtier)
La conception (vue informatique)
Conclusion
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Vue densemble

Object Management Group (OMG)


Regroupe les principaux acteurs
en informatique utilisant lapproche objet

Unified Modeling Langage


(UML)
UML 1 (1997)

XML
MOF
CORBA

UML 2 (2005)
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Vue densemble

Entits

Associations Diagrammes
(entre entits) (entits + associations)

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Vue densemble

Classe
tat / Activits

Personne
- ge

Gestant

- dors()
Acteur

Cas d utilisation

Paquetage

mission
CO2

Biologique

Eleveur
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Vue densemble

Associations
(entre entits)
Gnralisation/
Spcialisation

Dpendance

Association
Alimente >

Agrgation

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Vue densemble

Diagrammes
Etats-Transitions

Classes
Cas dutilisation

13

Activits

Squences
Paquetages

Reprsentation graphiques
du logiciel
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits

Introduction
Vue densemble

Que doit faire mon logiciel ?


La structure du logiciel (vue mtier)
La dynamique interne au logiciel (vue mtier)
La conception (vue informatique)
Conclusion
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits

Chaque type dutilisateur va avoir des besoins spcifiques / des


utilisations du logiciel diffrentes
Dcoupage par fonctions, responsabilits, domaines dexpertise, par
quipes
Exemple :
Logiciel Achat : secrtaire, responsable contrat achat, service
informatique
Simulateur PARIS : informaticien, expert comportement social, expert
ingestion, expert
vgtation, stagiaires

Un type dutilisateur

UML

Type de lacteur

Un acteur

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits

dfinir les fonctionnalits du logiciel pour chacun des acteurs


Exemple :
Logiciel Achat : consulter un prix, passer commande, ajouter un
nouveau compte utilisateur, inscrire un nouveau fournisseur
Simulateur PARIS : caractriser les animaux et la vgtation initiales,
slectionner les sorties dsires, lancer une simulation

Une fonctionnalit

UML

Un cas dutilisation

Nom du cas dutilisation


Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits

Le diagramme des cas dutilisation


acteurs + cas dutilisation
Mon logiciel
Cas dutilisation
1

Acteur 1

Cas dutilisation
4

Cas dutilisation
7

Acteur 2

Cas dutilisation
6
Cas dutilisation
3

Acteur 3

Cas dutilisation
5
Cas dutilisation
2

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Acteur 4

UML
Fonctionnalits

Exemple : logiciel achat


Logiciel achat
Consulter
Un prix

Secrtaire

Passer une
commande

Inscrire un
nouveau
fournisseur

Responsable
contrat achat

Ajouter
un nouveau
compte utilisateur

Service
informatique
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits
Extend, include, spcialisation

Etend

Inclus

Cas plus
gnral

Cas plus
spcialis

Laurent Prochon, IDL 2011, La


Londe Les Maures, du 05/12 au
09/12/2011

UML
Fonctionnalits

Dtailler chaque cas dutilisation


Exemple : logiciel achat

Passer une
commande

Secrtaire
1- saisir code article

Logiciel
Contrle code correct et
renvoi libell

2- saisie quantit
3- saisie code quipe
4- valide commande

enregistre
Contrle code correct

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits

Technique

Mtier

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits : vue mtier

Troupeau de bovins laitiers

Eleveur

Vtrinaire

Vendre
du lait

Soigner les
vaches

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Fonctionnalits

Du cas dutilisation la structure du logiciel

Comment ?
Secrtaire

Logiciel

1- saisir code article

Contrle code correct


et renvoi libell

2- saisie quantit

enregistre

3- saisie code quipe

Contrle code correct

4- valide commande

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Informaticien

UML
Fonctionnalits

Comment raliser les fonctionnalits ?

Quelles parties du systme


interviennent pour raliser le cas
dutilisation ?

Comment font ces parties pour


raliser le cas dutilisation ?

1 cas dutilisation

Dcrire la structure du systme


(statique)

Dcrire la dynamique du
systme

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
structure

Introduction
Vue densemble
Que doit faire mon logiciel ?

La structure du logiciel (vue mtier)


La dynamique interne au logiciel (vue mtier)
La conception (vue informatique)
Conclusion
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
structure

Les dpendances entre systmes

Sous
Systme
2
Sous systme
2

Sous
Systme 1
Sous systme 1

Sous
Soussystme 3
Systme 3
Paquetage

<<system>> systme entier

Dpendance : le sous-systme 1 dpend


du sous-systme 2

<<system>>

<<system>>

sous-systme 1

sous-systme 2

<<system>>

sous-systme 3
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
structure

<<system>> Bovins allaitants


<<system>>

<<system>>

Fermier

Troupeau
<<system>>

Parcelle

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : lobjet

Entit de base du systme : lobjet


Objet 5
Objet 1

Objet 2
Objet 4

Objet 6

Objet 3

Un objet est unique, il a des caractristiques et un


comportement

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : lobjet

Arbre 1
Arbre 2
Renard 1

Champignon 2
Champignon 1

Renard 2

Arbre 3

Ils ont des points communs : type de caractristiques et


de fonctions communes
renard 1 : mle; 7 ans; 1,15 m; croissance; reproduction
renard 2 : femelle; 6 ans; 1,02 m; croissance; reproduction
.

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : la classe
Objet 1
Objet 2
Objet 4

Nom de la classe
Caractristiques
(variables)
fonctions

renard 1 : mle, 7 ans, 1,15 m; croissance, reproduction


renard 2 : femelle, 6 ans; 1,02 m ; croissance, reproduction
.
Forme dtaille
Renard
Forme simplifie
- Sexe
Renard
- ge
- Taille
- Croissance
- Reproduction
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : les associations

Classe A

Classe A

Nom association>

Rle B
Rle A

Classe B

Classe B

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : les associations

Lapin

Risque

mange>

engendre>

Salade

Accident

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : les cardinalits
nombre dobjets de chaque classe impliqus dans
lassociation

Classe
Classe
Classe
Classe
Classe

0..*
1..*
0..1
m..n
1

Entre 0 et plusieurs objets


Entre 1 et plusieurs objets
Entre 0 et 1 : optionnel
Entre m et n objets
Exactement 1

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Structure : les cardinalits
devient>
Cocon

0..1

Un cocon peut
engendrer
un papillon ou non

Un papillon provient
dun cocon
et dun seul

engendre>
Risque

0..*

Un accident peut
survenir cause des
risques pris ou pour
dautres raisons

Papillon

0..*

Accident

Un risque peut tre


li des accidents
ou non

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML On hrite ? Ah ah
Gnralisation / Spcialisation
Classe plus spcialise

Classe plus gnrale

Les entits biologiques


Chromosome

BioEntity

Solvent

Cytoplasme

PyuvateTransporter

Enzyme

Nucleus
Matrix

EukaryoticCell
Erythrocyte

TransportProtein

LipidDisintegration
Membrane

LipidBilayer

CellMembrane

NeuronCellBody

MitochondrialInnerMembrane

CellBilayer
MitochondrialInnerBilayer

MitochondrialOuterBilayer

MitochondrialOuterMembrane

Solution

Mitochondrion
Cellular solution
GaseousSolution
Cytosol

MatrixSol

ExtraCellularSolution
MitochondrialIntermembranesol

MitochondrialDualMembrane
MitochondrialIntermembraneSpace

(Webb et al. 2005)


Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Agrgation / composition
agrgat

partie

composition

partie

(Drouet et al., 2007)


Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Exemple complet

(Force et al., 2002)


Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Modle mtier

Using UML for modeling a distributed Java application, K. Berner, A. Rausch, M.Sihling.
http://www.cetus-links.org/ suivre le lien UML.
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

<<singleton>>
- Ecole

<<singleton>
>
+ ajouterPlanning()
Organisateur

Equipe

+ ajouterProfesseur()

+ supprimerPlanning()

+
supprimerProfesseur()

+ compterPlannings()

<<Interface
>>

+ getProfesseurs()
1
+ compterStatuts()

Serialization

+ setEcole()

Priode
- Jour

# getOrganisateur()

- Dbut

# setOrganisateur
Professeu ()
r
- Nom

+
getJour()
- Fin
+ setJour()

- Statut
+ ajouterImpossibilit()

+ getHeure()

+ supprimerImpossibilit()
+ compterImpossibilits()
+ getImpossibilits()

+
effacerObserver()

+ aFaire ()
1

+ getNom()
0..1

# ajouterSurveillance()
# supprimerSurveillance() Laurent

+ ajouterRcr()
+ SupprimerRcr ()
+ compterRcrs()

Observ
er
*
AffichageSynths
e
+ rafrachir()
+ metJour
()

+ getRcr ()

+ getLieu()

Impossibilit
*# chercherRecouvrement
()

#
avertirObserver()

Lieu

+ getMinute()

+ setDutre()

+ setStatut()

*
# setChangEtAvertir
()
Planning

+ setHeure()

+ getDure()

# setChang()

+getEquipe() 1

1
+
supprimerToutesRcrs()

+ setMinute()

+ compterSurveillances()

# getSurveillance()

+ compter Rcrs()

# setEquipe()

+ getEcole()

+ setnom()

+
ajouterObserver()

Modle technique
+ getPlanning()

+
compterProfesseurs()

+ getStatut()

Observabl
e

+ setLieu()
Rcratio
n

+
()
1

1
AffichagePlannin
g

+
affecterProfesseur()
+
enleverProfesseur()
0..*
+ estSurveille()
+ existeConflit()

surveille

Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Planning
t

UML
Dynamique interne

Introduction
Vue densemble
Que doit faire mon logiciel ?
La structure du logiciel (vue mtier)

La dynamique interne au logiciel (vue


mtier)
La conception (vue informatique)
Conclusion
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Dynamique interne

inter objets

intra objet

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Dynamique interne : diagramme de squence

Diagramme de squence
Echange entre objets actifs (AO) et petites molcules
SM

AO

SM

/cellBilayer
/cytosol
/extraCellula
Solution
SubstrateRequ
SubstrateReq
SubstrateLev
SubstrateLev

AO

/enzyme 1

AO

AOSubstrateLevel
/mitochondrial
OuterBilayer
SubstrateRequ

/enzyme n

SubstrateLev
SubstrateRequ

SubstrateRequ
SubstrateLev
SubstrateLev

(Webb et al. 2005)


Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Dynamique interne : diagramme dtats transitions
Les stades du papillon
Etat initial
chenille

chrysalide

Transition
Etat

papillon

Etat final

Quels sont les tats ?


Quelles sont les transitions entre tats ?

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
Dynamique interne : diagramme dactivits

Activit : enchanement plus ou moins complexes dactions

activit
Activit 1

Activit 2

Activit 3

Lactivit 3 ne commencera que


lorsque les activits 1 et 2 seront
finies

Alternative
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
La conception

Introduction
Vue densemble
Que doit faire mon logiciel ?
La structure du logiciel (vue mtier)
La dynamique interne au logiciel (vue mtier)

La conception (vue informatique)


Conclusion
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

UML
La conception

ftp://ftp-developpez.com/laurent-audibert/Cours-UML/pdf/Cours-UML.pdf
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Faut-il utiliser les 13 types de diagramme?


Non.
Diagramme des classes.
Diagramme des cas d'utilisation
Diagrammes d'tats-transitions, d'activits et enfin de squences.
Faut-il utiliser UML?
Aide la production du logiciel et documentation.
Rien ne nous empche de programmer directement.
On ne l'utilise que pour les parties du logiciel pour lesquelles la modlisation
peut les aider.
Evolution
du code
cart code / diagramme
Relation avec les langages de programmation
Son usage naturel est plutt tourn vers les langages orients objets.
On peut convertir les diagrammes (des classes) en un squelette finir de
remplir en C++ ou Java par exemple. On peut galement obtenir
automatiquement des tables relationnelles. La conversion en langages
procdurales est moins directe.
UML est-il un langage formel?
NON! Je citerai ici les initiateurs de ce langage: Le langage UML est
imprcis, complexe et tentaculaire, ce qui est la fois un dfaut et une
qualit. (Rumbaugh, Jacobson et Booch, 2004).
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Evolution du code
cart code / diagramme
Relation avec les langages de programmation
Comme il est bas sur les concepts orient objets, son usage naturel est
plutt tourn vers ceux-ci. A partir d'outil, on peut convertir les diagrammes
(des classes) en un squelette finir de remplir en C++ ou Java par exemple.
On peut galement obtenir automatiquement des tables relationnelles. La
conversion en langages procdurales est moins directe.
UML est-il un langage formel?
NON! Je citerai ici les initiateurs de ce langage: Le langage UML est
imprcis, complexe et tentaculaire, ce qui est la fois un dfaut et une
qualit. (Rumbaugh, Jacobson et Booch, 2004).

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Outils
De nombreux outils existes, libres ou non.
https://intranet.inra.fr/pepi-idl/index.php?
option=com_content&view=article&id=15:outilsuml&catid=21:general&Itemid=30
UML uniquement pour modliser un logiciel?
Comme UML est un langage de modlisation, il a t utilis dans d'autres
domaines (http://www.projet-plume.org/ressource/uml,
https://intranet.inra.fr/pepi-idl/index.php?option=com_content&view=categ
ory&id=21&Itemid=30
, http://www.modelia.org/html/20090428_FormationUML/pdf/
Le vocabulaire est adapter.
Langage international
Actuellement, les informaticiens travers le monde reoivent une formation
ce langage. N'importe quel stagiaire en informatique connatra donc ce
langage.

Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

Rfrences bibliographiques
Biologie

J.L. Drouet, L. Pags. GRAAL-CN: A model of GRowth, Architecture and Allocation for Carbon and Nitrogen
dynamics within whole plants formalised at the organ level. Ecological Modelling. V. 206, pp. 231249. 2007.
C. Force, L. Perochon, D.R.C. Hill. Design of a multimodel of a dairy cows herd attacked by mastitis. Simulation
Modelling Practice and Theory. V. 10, pp. 543554. 2002.
T. V. Karpinets, B. D. Foy. Model of the developing tumorigenic phenotype in mammalian cells and the roles of
sustained stress and replicative senescence. Journal of Theoretical Biology. V. 227, pp. 253264. 2004.
J. Learmount, M.A. Taylor, G. Smith, C. Morgan. A computer model to simulate control of parasitic gastroenteritis in
sheep on UK farms. Veterinary Parasitology. V. 142, pp. 312329. 2006.
N. El Saadi, A. Bah. An individual-based model for studying the aggregation behavior in phytoplankton. Ecological
Modelling. V. 204, pp. 193212. 2007.
L. Prochon, P. Carrre, R. Baumont, B. Dumont, C. Mazel, C. Force, D.R.C. Hill, P. DHour, F. Louault, S. Prache,
J.F. Soussana, M. Petit. Design of a spatial multi-agent model of a perennial grassland ecosystem grazed by a herd of
ruminants. ESS01. 13th european simulation symposium. Simulation in industry. SCS, pp. 509-513. 2001.
K. Webb, T. White. UML as a cell and biochemistry modeling language. BioSystems. V. 80, pp.283302. 2005.

UML

L. Debrauwer et F. V. der Heyde. UML2. Initiation, exemples et exercices corrigs. Ed. ENI. Coll. Informatique
Technique. 274 p. 2005
M. Roux-Rouqui, N. Caritey, L. Gaubert et C. Rosenthal-Sabroux. Using the Unified Modelling Language (UML)
to guide the systemic description of biological processes and systems. 2004. BioSystems. V. 75, pp. 314. 2004.
J. Rumbaugh, I. Jacobson, G. Booch. UML 2.0 Guide de rfrence. Campus Press. 774 p. 2004.
Sur le site internet www.modelia.org suivre les liens Fiches techniques, puis UML.
http://www.projet-plume.org/ressource/uml-langage-graphique-de-modelisation
Laurent Prochon, IDL 2011, La Londe Les Maures, du 05/12 au 09/12/2011

You might also like