MCOO Chap 2
MCOO Chap 2
MCOO Chap 2
MOOC
En rsum : UML est une notation, pas une mthode. UML est un langage de modlisation objet. UML convient pour toutes les mthodes objet. UML est dans le domaine public. UML a pour but de documenter les modles objets.
MOOC
UML sert : - dcomposer le processus de dveloppement - mettre en relation les experts des mtiers et les analystes - coordonner les quipes danalyse et de conception - sparer lanalyse de la ralisation - prendre en compte lvolution de lanalyse et du dveloppement - migrer facilement vers une architecture objet dun point de vue statique et dynamique
La vue statique est caractrise par : Les cas dutilisation Diagramme dobjet Diagramme de classes Diagramme de composants Diagramme de dploiement
La vue dynamique est caractrise par : Diagramme de collaboration Diagramme de squence Diagramme dtat-transition Diagramme dactivits
Mr. KAIS BEN SALAH Ils intgrent : - Des acteurs externes au systme (primaires ou secondaires). - Des actions (cas dutilisation) permises par le systme.
MOOC
Les cas dutilisation dlimitent le systme, ses fonctions (ses cas), et ses relations avec son environnement. Ils constituent un moyen de dterminer les besoins du systme. Ils permettent dimpliquer les utilisateurs ds les premiers stades du dveloppement pour exprimer leurs attentes et leurs besoins (analyse des besoins). Ils constituent un fil conducteur pour le projet et la base pour les tests fonctionnels. Un acteur est une personne ou un systme qui interagit avec le systme tudi en changeant de linformation (en entre et en sortie). On trouve les acteurs en observant les utilisateurs directs du systme, les responsables de la maintenance ainsi que les autres systmes qui interagissent avec lui. Un acteur reprsente un rle jou par un utilisateur qui interagit avec le systme. La mme personne physique peut jouer le rle de plusieurs acteurs. Dautre part, plusieurs personnes peuvent jouer le mme rle et donc agir comme un mme acteur.
uses Rservation
Authentification Adhrent
uses
uses
Restitution
10
Mr. KAIS BEN SALAH Il est possible de simplifier les actions avec deux types de relations :
MOOC
La relation "extends" : Intgre les caractristiques du use case point La relation "uses" : Indique qu'un use case fait partie d'un sous-ensemble
Les cas dutilisation reprsentent le dialogue entre lacteur et le systme de manire abstraite. Les communications peuvent tre orientes ou pas. 2- Les diagrammes dobjets a- Les objets Les objets informatiques dfinissent une reprsentation simplifie des entits du monde rel, quil sagisse dentits concrtes (avec une ralit physique) ou conceptuelles. Les objets sont des abstractions qui mettent en avant les caractristiques essentielles et dissimulent les dtails. Une abstraction se dfinit par rapport un point de vue (tout dpend de lintrt que lon porte lobjet). Les trois caractristiques fondamentales des objets sont : - Ltat - Le comportement - Lidentit Ltat correspond aux valeurs instancies de tous les attributs de lobjet. Ltat volue au cours du temps. Exemple : pour une voiture, ltat est, la valeur de la marque, de la puissance, de la couleur
Son tat
Le comportement dcrit les actions et les ractions dun objet. Le comportement matrialise sous la forme dun ensemble doprations (mthodes et fonctions). Un objet peut faire appel aux comptences dun autre objet par linvocation dune opration (ou envoi de message). Les messages servent implanter les flots de donnes, les flots de donnes, les vnements, Ltat et le comportement sont lis : - Le comportement dpend de ltat (la prcondition de lopration de lopration : le message peut tre accept ou refus). - Ltat est modifi par le comportement (la postcondition de lopration).
11
MOOC
30 litres
Changement dtat
24 litres
Tout objet possde possde une identit (non modifiable) qui lui est propre et qui le caractrise. Lidentit permet de distinguer tout objet de faon non ambigu indpendamment de son tat (valeurs de ses attributs). Classe dobjet Etudiant : Etudiant OU instances dobjet Mohammed : Etudiant
3- Les diagrammes de Classes La classe est la description abstraite dun ensemble dobjets. Elle peut tre vu comme la factorisation des lments communs un ensemble dobjets. Nom de la classe
+ Attribut public : Type = valeur initiale - Attribut priv : Type 1 # Attribut protg : Type n + Opration publique ( ) - Opration prive ( ) # Opration protge ( )
12
MOOC
2Tlviseur + Modle : string Instanciation Allumer ( ) Eteindre ( ) Changer de programme ( ) Rgler le volume ( )
TV1 : Tlviseur Modle : Tlviseur LCD Full HD Sony KDL40W4000 - cran 102 cm
3Tlviseur Tlviseur
Association
Utilisateur
13
MOOC
Tlviseur 1
* (ou 4) Roue
1 Moteur
1 Carrosserie
5Tarte Fruit
Hrite
Pomme pommes
14
MOOC
Les diagrammes de collaborations font partie de la vue dynamique. Ils mettent laccent sur les relations spatiales entre les objets. Les messages entre ces derniers peuvent tre numrots pour introduire la dimension temporelle (point de vue ordre des messages). Exemple : Les messages entre les objets numrots
Message rflexif
Les objets
Ce diagramme est donc utilis pour illustrer comment les objets interagissent entre eux en changeant des messages. Ainsi, un diagramme de collaboration reprsente une collaboration, c'est--dire un ensemble de rles d'objet lis dans un contexte particulier, et une interaction, qui reprsente l'ensemble des messages changs entre les objets pour effectuer une opration ou produire un rsultat. Il s'agit d'un diagramme d'interaction qui affiche, pour un vnement systme dfini par un cas
15
MOOC
d'utilisation (cas d'utilisation : dans un diagramme de cas d'utilisation, reprsentation d'un ensemble d'vnements qui se produit lorsqu'un acteur utilise un systme pour terminer un processus. En temps normal, un cas d'utilisation est un processus relativement important (il ne s'agit pas d'une tape ou d'une transaction individuelle.), le mode de collaboration d'un groupe d'objets avec un autre. 5- Les diagrammes de squence Les principales informations contenues dans un diagramme de squence sont les messages changs entre les lignes de vie, prsents dans un ordre chronologique. Ainsi, contrairement au diagramme de communication, le temps y est reprsent explicitement par une dimension (la dimension verticale) et scoule de haut en bas. Ainsi, ces diagrammes mettent laccent sur les relations temporelles. Et des nombreuses notations annexes permettent de prciser la nature des messages (appel de procdure, simple signal, message rptitif, conditionnel, rflexif,) et les donnes transfres.
: Classe B
Objet en attente
Objet actif
Tant queFaire
Rpter
Jusqu
Message Asynchrone ()
16
Mr. KAIS BEN SALAH 6- Les diagrammes dtat (diagramme dtat transition)
MOOC
Les diagrammes dtat servent dcrire le comportement des objets (classes) complexes. Ce sont des diagrammes dtat tendus avec des conditions (gardes) sur les transitions et des actions sur les transitions et les tats. Ils sont attachs une classe dobjets. Ils dcrivent les squences dtats dun objet : en rponse aux stimuli reus en utilisant ses propres actions Dfinitions : Un tat est une condition dans la vie dun objet, pendant laquelle il satisfait quelques conditions, excute quelques actions ou attend quelques vnements. Un vnement est une occurrence remarquable, qui a la capacit de dclancher une transition dun tat vers un autre tat
Comme nous lavons dj indiqu, ltat dun objet est dfini par les valeurs de ses attributs. Dans un diagramme dtat, il faut toujours avoir un tat initial, mais nous pouvons avoir plusieurs tats de fin.
17
MOOC
Dmarrage OK
Arrter le Traitement
En marche
Arrter lordinateur
Arrt
7- Les diagrammes dactivit Ces diagrammes sont des variantes des diagrammes dtat-transition, ils dcrivent le comportement dune opration ou dune mthode, ils permettent la mise en vidence de lorganisation des activits. Ils reprsentent la fois, les comportements conditionnels et parallles. Ils regroupent graphiquement les activits par objet. A un niveau macroscopique, les diagrammes dactivit permettent de dcrire des enchanements de fonctionnalits. Ils compltent donc bien les cas dutilisation au niveau de lanalyse des besoins. A un niveau microscopique, les diagrammes dactivit permettent, par exemple, de dcrire lalgorithme dune action dun diagramme dtats.
18
MOOC
Client
Fournisseur
Commander un produit
Grer la commande
Recevoir le produit
Expdier le produit
Rgler la facture
Encaisser la facture
8- Les diagrammes de composants Les composants sont les parties lmentaires dun systme. Et puisque le systme est limplmentation dune ou plusieurs classes, un composant rside au niveau dun ordinateur et non pas dans la tte dun analyste. Les fichiers de donnes, les fichiers excutables, les documents et les librairies sont considrs comme des composants. Les diagrammes de composants sont en quelque sorte, la description de larchitecture logicielle.
19
MOOC
Ainsi, nous modlisons les composants et les relations qui permettent de les lier pour que: - Les clients peuvent visualiser la structure et les fonctionnalits du systme finalis, - Les dveloppeurs admettent une structure sur laquelle, ils peuvent travailler, - Les rdacteurs techniques peuvent fournir une documentation et des fichiers daide expliquant parfaitement le systme implment, - Le processus de rutilisation soit facile. Syntaxe
Le module reprsente une unit pour le regroupement et la manipulation de composants. Exemple : le module Java java.lang contient les composants String, Integer, ...
20
MOOC
Module
Interface
Composants
2-
9- Les diagrammes de dploiement Ces diagrammes montrent comment les composants sont dploys sur le matriel (Hardware) et comment les composants hardware sont connects ensemble. Ainsi, ils reprsentent une description de larchitecture Hardware.
21
MOOC
2-
22
MOOC
23
MOOC
24
MOOC
ANNEXE
Introduction JDBC
La technologie JDBC (Java DataBase Connectivity) est une API fournie avec Java (depuis sa version 1.1) permettant de se connecter des bases de donnes, c'est--dire que JDBC constitue un ensemble de classes permettant de dvelopper des applications capables de se connecter des serveurs de bases de donnes (SGBD). L'API JDBC a t dveloppe de telle faon permettre un programme de se connecter n'importe quelle base de donnes en utilisant la mme syntaxe, c'est--dire que l'API JDBC est indpendante du SGBD. De plus, JDBC bnficie des avantages de Java, dont la portabilit du code, ce qui lui vaut en plus d'tre indpendant de la base de donnes d'tre indpendant de la plate-forme sur laquelle elle s'excute.
Dans le modle 3 couches, une troisime couche (le serveur d'application) vient s'intercaler entre l'application Java et la base de donnes. Les instructions SQL et les rsultats livrs en
25
MOOC
retour y transitent. Ce modle prsente l'avantage d'intgrer dans cette couche un contrle d'accs.
26