Upload
labraidji
View
217
Download
0
Embed Size (px)
Citation preview
8/9/2019 Imagerie Medical Recalage Chapitre 6
1/10
Chapitre 6 Modle Conceptuel de lApplication
Modle Conceptuel de lApplication
1. Introduction
La modlisation de notre application se fait par approche oriente objet, le langage UML
(Unified Modeling Language) est loutil par excellence pour dcrire cette modlisation.UML offre plusieurs vues complmentaires qui permettent de dcrire le cycle de vie dune
application, ces vues utilisent les notions fondamentales de la conception objets, sa notation
graphique permet de visualiser une solution objet.
2-Generalits sur UML
a- Dfinition dUML: (Unified Modeling Language, que lon peut traduire par langage de
modlisation unifi) est une notation permettant de modliser un problme de faon standard.
Ce langage est n de la fusion de plusieurs mthodes existant auparavant, et est devenu
dsormais la rfrence en terme de modlisation objet, un tel pointque sa connaissance est
souvent ncessaire pour obtenir un poste de dveloppeur objet.
b- Pourquoi UML ?
-UML est un langage pour visualiser: Lcriture de modles en UML permet dapporter une
solution aux problmes lis lchange et au partage dinformations.
-UML permet dutiliser au mieux les reprsentations textuelles ou graphiques en fonction des
besoins.
-UML est un langage pour spcifier: Cest--dire construire des modles prcis, sans
ambigut.
-UML permet la spcification de toutes les dcisions importantes en matire danalyse, de
conception et dimplmentation.
-UML est un langage pour construire : UML nest pas un langage de programmation visuelle,
ses modles peuvent tre directement traduits dans les diffrents langages de programmation.
Cela signifie quil est possible de traduire un modle UML dans un langage de
programmation tel que Java, C++ ou Visual Basic.
-UML est un langage pour documenter: UML permet de documenter larchitecture dun
systme dans ses moindres dtails, fournit un langage pour exprimer les besoins et effectuer
des tests et propose un langage pour modliser la planification du projet et la gestion des
versions.
-UML est un langage graphique : UML exprime ses concepts travers diffrents diagrammes
graphiques qui correspondent des vues particulires du systme :
58
8/9/2019 Imagerie Medical Recalage Chapitre 6
2/10
Chapitre 6 Modle Conceptuel de lApplication
-La vue logique : elle fait rfrence aux diagrammes de classes (class diagrams). Cest au
niveau de cette approche que lon va utiliser la plupart des concepts objets.
-Cas dutilisation : qui fait rfrence aux diagrammes des cas dutilisation (use cases
diagrams) et des acteurs. on va sintresser aux fonctionnalits du systme.
-La vue des composants (component view) : elle reprsente lensemble des composants
logiciels ainsi que les taches.
-La vue dploiement (deployment view) : elle dcrit les diffrentes ressources matrielles et
limplantation du logiciel dans ces ressources.
Si on procde par classification, on a les diagrammes suivants :
- Les cas dutilisation.
- Les diagrammes de classes.
- Les diagrammes de comportement :
- Diagrammes dtat transitions.
- Diagrammes dactivits.
- Diagrammes de squences.
- Diagrammes de collaboration.
- Les Diagrammes dimplmentation :
- Diagramme de composants.
- Diagrammes de dploiement.
c- Avantages et Inconvnients :
UML utilise des reprsentations diagrammatiques pour modliser les aspects statique
(structurel) et dynamique (comportemental) des systmes.
-Avantages :
-Reprsentation en 2D,
-Reprsentation smantiquement riche,
-Chaque notation est simple => facilit dapprentissage par les non informaticiens =>
validation possible par les utilisateurs finaux.
-Inconvnients :
-Smantique pas totalement dfinie => risque dinterprtations varies,
-Beaucoup de diagrammes diffrents => difficult matriser toutes les notations,
3. Les diagrammes de UML ::
3.1 Diagrammes des cas dutilisations :
Les diagrammes de cas dutilisation se composent dacteurs (reprsents par des silhouettes)
et des cas dutilisation (reprsents par des ellipses),les traits entre les cas dutilisation et les
59
8/9/2019 Imagerie Medical Recalage Chapitre 6
3/10
Chapitre 6 Modle Conceptuel de lApplication
acteurs reprsentent les interactions. Ces diagrammes montrent les relations qui existent entre
des acteurs et des fonctionnalits du systme.
Exemple :
3.2Diagramme de classes :
Cest un diagramme qui montre une collection dlments statiques (classes), leur contenu et
les relations entre eux. On distingue :
Les entits formes de trois parties :
-Les classes : Les classes se dsignent par un nom (1repartie), contiennent des attributs (2me
partie) et des mthodes associes (3me partie).
-Les attributs : sont des proprits caractristiques de la classe. Les attributs peuvent tre
privs, publique, protgs. Ils sont le plus souvent privs. Les classes respectent le principe
dencapsulation des donnes.
-Les mthodes : sont des procdures spcifiques une classe. Elles sont le plus souvent
publiques. Elles peuvent tre privs : on parle dans ce cas de mthodes dimplmentation.
3.2.1 Les relations interclasses :
Elles sont appeles associations. On a dfini diffrents types dassociations :
-Association simple
-Agrgation
-Hritage (spcialisation, gnralisation)
-Dpendance
Les noms de rle :ceux sont les noms des relations interclasses.
Les multiplicits : associes aux associations, les multiplicits permettent de dterminer le
nombre doccurrences dune classe par rapport une autre classe en utilisant le nom de rle.
La navigation : cest le sens de lecture du nom de rle dune association donne.
Lassociation est symbolise par une ligne qui lie deux classes.
La navigation est symbolise par une flche qui indique le sens de lecture du nom de rle.
3.3Diagrammes de comportement (behavior diagrams):
60
Extends
Extends
Retrait Francs
Retrait Devises
Retrait
Guichetier Systme central
Fig. 11 Exemple de diagramme de cas
dutilisation
8/9/2019 Imagerie Medical Recalage Chapitre 6
4/10
Fig. 12 Exemple de diagramme dactivit
Chapitre 6 Modle Conceptuel de lApplication
3.3.1 Diagrammes dtatstransitions (state diagrams) :
Les diagrammes tats-transitions dcrivent les squences dtats quun objet peut prendre au
cours de sa vie en rponse un stimulus. On associe souvent un diagramme dtats-
transitions une classe.
On distingue dans ces diagrammes :
-Les vnements externes qui causent une transition dun tat lautre,
-Les vnements internes qui induisent une action sans changer dtat,
-Les actions qui rsultent dun changement dtat,
-Les actions en sortie dtat,
-Les activits pendant ltat.
3.3.2 Les diagrammes dactivit activity diagrams :
Un diagramme dactivit est un cas spcial de diagramme dtat dans lequel tous (ou la
plupart) des tats sont des tats daction dans lesquels toutes (ou la plupart) des transitions
sont dclanches par achvement des actions dans les tats sources. Le diagramme entier est
rattach une classe, limplmentation dune opration ou dune cas dutilisation. Le but de
cediagramme est de visualiser les flux conduits par des processus internes.
Exemple :
Examiner demande de mise
jour
Retourner la demande de mise
jour
Notifier lacceptation ou le refus
Classifier la demande de mise jour
[non vise par la socit]
[non concerne par la socit]
61
8/9/2019 Imagerie Medical Recalage Chapitre 6
5/10
Fig.13 Exemple de diagramme de squence
Chapitre 6 Modle Conceptuel de lApplication
3.3.3 Les diagrammes de squence :
Les diagrammes de squences montrent les interactions qui surviennent dans une squence de
temps. En particulier ils montrent la participation dobjets dans les interactions et les
messages quils changent dans un intervalle de temps. Ils ne montrent pas les associations
entre les objets.
Exemple :
3.3.4 Les diagrammes de collaboration :
Les diagrammes de collaboration montrent les interactions et les liens entre objets.
Contrairement aux diagrammes de squence les diagrammes de collaboration montrent les
relations entre objets mais pas la dure de vis des interactions. Ils ont en commun le fait de
tenir compte de la chronologie des interactions.
Les diagrammes de collaboration comme les diagrammes de squence expriment la mme
information, mais le montrent par des chemins diffrents.
62
Un objet Encore un objetUn autre objet
Un message
Un autre message
8/9/2019 Imagerie Medical Recalage Chapitre 6
6/10
(5) vrification solde
compte
(7) autorisationdlivrance
(2) validation compte
(4) Retrait espces
(6) Dbit compte
Fig.14 Exemple de diagramme de collaboration
Chapitre 6 Modle Conceptuel de lApplication
Exemple :
3.4 Les diagrammes dimplmentation :
On distingue Les diagrammes de composants qui montrent la structure du code et Les
diagrammes de dploiement qui montrent la structure du systme lors de son excution.
3.4.1 Les diagrammes de composants :
Les diagrammes de composants sont des graphes de composants connects par des relations
de dpendance. Les composants sont des composants logiciels. On distingue les composants
de code source, de code binaire, et les composants excutables. Un module logiciel peut tre
reprsent comme un type de composant. Certains composants existent lors de la
compilation, ldition des liens, et dautres lors de lexcution.
3.4.2 Les diagrammes de dploiement :
Les diagrammes de dploiement montrent la configuration des lments de traitement
excuts et de composants logiciels, traitements, et les objets qui sont impliqus. Les
instances de composants logiciels reprsentent les manifestations lors de lexcution des
units de code.
4. Utilisation de UML pour notre application :
Notre travail est bas sur le recalage de deux images IRM crbrales. Les images sont
donnes au mdecin pour quil puisse faire une bonne interprtation des pathologies du
patient
La conception de notre application est illustre avec les diagrammes suivants :
63
Guichetier
Systme Guichetier
Systme central
(1) Saisie compte
(3)DemandeType dopration
8/9/2019 Imagerie Medical Recalage Chapitre 6
7/10
Chapitre 6 Modle Conceptuel de lApplication
4.1 Diagramme de cas dutilisation :
Acteurs du systme :
L'identification des acteurs participants dans le systme est primordiale pour dcrire et
prciser comment chacun d'eux se comporte pour servir ou tre servie.
Les acteurs principaux de notre application sont lutilisateur le Mdecin et lanalyste (traiteur
dimages).
a)Acteur analyste :
Lanalyste a deux cas dutilisation :
-Traitement dimages bas niveau.
-Traitement dimages haut niveau (recalage).
Le cas dutilisation traitement dimages bas niveau comporte les taches principales de :
- dtection de contour.
-Seuillage.
-Le cas dutilisation traitement dimages haut niveau comporte les taches suivantes :
-la slection des points sur les deux images.
-le calcul des paramtres de la transformation.
-lapplication de la transformation sur limage source.
-affichage de limage recale.
b) Acteur Mdecin :
-interviennent dans le traitement de haut niveau, pour dfinir limage recale, objet de son
interprtation
Le diagramme de cas dutilisation de notre application est le suivant :
64
8/9/2019 Imagerie Medical Recalage Chapitre 6
8/10
Fig.15Diagramme de cas dutilisation
Entrer les deux images
Afficher les deux images
Appliquer contour
Afficher contour dimages
Appliquer Seuillage
Afficher image seuille
Chapitre 6 Modle Conceptuel de lApplication
4.2 Diagramme de squence :
-Traitement dimages bas niveau :
Le mdecin se connecte au systme et entre les deux images recaler.
65
: Analyste : Systme
Traitement images
bas niveau
Traitement images
haut niveau
Analyste
(Traiteurdimages)
Mdecin
8/9/2019 Imagerie Medical Recalage Chapitre 6
9/10
Slection des points
Afficher points slectionns
Chercher paramtres de la transformation
Afficher les paramtres
Appliquer la transformation
Afficher limage recale
Chapitre 6 Modle Conceptuel de lApplication
-Traitement dimages haut niveau :
66
: Analyste : Systme
: Systme: Mdecin
Demander image recale
Afficher image recale
8/9/2019 Imagerie Medical Recalage Chapitre 6
10/10
1
11
1
1
1..n1..n
1
1
1..n
Chapitre 6 Modle Conceptuel de lApplication
4.3 Diagramme de classes :
Conclusion :
On a utilis UML pour prsenter la conception de notre application par approche objet.
On sest concentr sur le diagramme de cas dutilisation et le diagramme de classes , sur le
quel se base notre implmentation dans le chapitre suivant.
67
Point
PointSource
PointRf
Nombre
SelectPoint ()
AjouterPoint()
ImagesImgSource
ImgRference
DateImg ()
Contourer()
Seuiller()
Afficher()
Personne
Nom
Prnom
Date Naissance
Adresse
Paramtres
TransX,Trans
Y
Sechelle
Rrot
Erreur
CalculerT()
CalculerS()
CalculerR()CalculerE()
Recalage
ImgS
ImgR
Recaler()
Afficher()
11