Cours UML Partie 4

download Cours UML Partie 4

of 30

Transcript of Cours UML Partie 4

Partie 4:

Modlisation Oriente Objet Par UML

1

M Y.DHIBA - MLA - AU:2010/2011

3.Introduction au langage UML 3.1 Prsentation dUML:-UML (Unified Modeling Language): un langage de modlisation oriente objet unifi. UML est n de la fusion des trois mthodes OO qui ont le plus influenc la modlisation objet au milieu des annes 90 : OMT, Booch et OOSE. Modlisation OO: Plus proche de la ralit des systmes (pas de sparation entre donnes et traitements), favorise la rutilisation des composants UML est : .. Exploitable par toutes les diffrentes mthodes de modlisation OO. .. Indpendant des langages de programmation .. Adapt toutes les phases de dveloppement. ..Compatible avec toutes les techniques de ralisation. - Plusieurs versions (UML 0.8, 0.9,,1.3, 2.0). Devenu une norme OMG depuis 1997. lOMG (Object Management Group) est un organisme but non lucratif, cr en 1989 l'initiative de grandes socits (HP, Sun, American Airlines, Philips...). Son rle est de promouvoir des standards qui garantissent l'interoprabilit entre applications OO.2M Y.DHIBA - MLA - AU:2010/2011

1.Introduction au langage UML (suite) 3.2 Elments UML de modlisation dun systme :UML propose 9 principaux diagrammes pour reprsenter un systme: Laspect statique est dcrit par les 5 diagrammes suivant: .. Diagrammes des cas dutilisation, Diagrammes de classes, Diagrammes d'objets, Diagrammes de composants et Diagrammes de dploiement. Laspect dynamique est dcrit par les 4 diagrammes suivant: Squence, Activits, Etats Transactions et Collaboration Comment ces diagrammes interviennent dans le processus de modlisation dun systme ? -- Phase de spcification des besoins: .. Diagramme des cas dutilisation: Dcrit les fonctions du systme selon le point de vue de ses futurs utilisateurs. .. Diagramme de squence: reprsentation des interactions temporelles entre objets dans la ralisation dune interface homme-systme. -- Phase danalyse: .. Diagramme de classes: Structures des donnes du systme dfinies comme un ensemble de relations entre classes. .. Diagramme dobjets: Dcrit les objets et leur relations.3M Y.DHIBA - MLA - AU:2010/2011

3.2 Elments UML de modlisation dun systme (suite) : -- Phase danalyse (suite):.. Diagramme de collaboration, .. Diagramme dtats-transitions, Diagramme dactivits.

-- Phase de conception: Diagramme de squence, diagramme dedploiement, diagramme de composants.

3.3 Diagramme de cas dutilisation:3.3.1 Dfinition: Ces diagrammes dcrivent les interactions qui existent entre les acteurs et les fonctionnalits du systme. Ils sont utiliss tout au long du processus de dveloppement pour formaliser les comportements et la synchronisation des actions. Ils dfinissent de manire informelle les exigences auxquelles devra rpondre le systme.-

-

Un acteur doit avoir un identificateur reprsentatif de son rle. Un cas dutilisation : ensemble des actions ralises par le systme en rponse une action dun acteur. Il correspond une fonction visible par lutilisateur du systme.4M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite)

3.3.2 Formalismes:Cas dutilisation

ActeurIndique la participation dun acteur un cas dutilisation

Exemple 1:

Dposer de largent

Client de la banque

Retirer de largent

Consulter solde5M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite) 3.3.2 Formalismes (suite):Exemple 2:

6

M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite) 3.3.2 Formalismes (suite):Exemple 2:

- Les communications entre acteurs ne sont pas reprsents dans un diagramme M Y.DHIBA - MLA - AU:2010/2011 7 de CU

3.3 Diagramme de cas dutilisation (suite) 3.3.3 Relations entre cas dutilisation :On distingue deux types de relations entre les cas dutilisation: - La relation Utilise (uses ou include): Indique qu'une instance d'un cas d'utilisation contient le comportement dcrit par un autre. - La relation Etend (Extends):Indique qu'une instance d'un cas d'utilisation peut inclure le comportement dcrit par un autre. Exemple 1:Retirer de largentUtiliseEtend

Retirer de largent Avec dbit diffrUtilise

Sidentifier Dposer de largentGnralise

dposer chque

8

M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite)Exercice 1:

Dans un magasin, un commerant dispose dun systme de gestion de son stock darticles, dont les fonctionnalits sont les suivantes : - Edition de la fiche dun fournisseur - Possibilit dajouter un nouvel article (dans ce cas, la fiche fournisseur est automatiquement dite. Si le fournisseur nexiste pas, on peut alors le crer) - Edition de linventaire: on a le choix dimprimer linventaire, deffacer un article ou dditer la fiche dun article).Modliser cette situation par un diagramme de cas dutilisation

9

M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite)Exercice 2:

Dans un magasin, le processus de vente est le suivant : le client entre, passe dans les rayons pour prospecter les articles, demande ventuellement des renseignements au prs des vendeurs ou procde des essais, achte des articles (aprs vrification du stock par le vendeur), passe la caisse o il rgle ses achats (avec tout moyen de paiement accept: CB, Chque ou espce). Il peut ventuellement bnficier dune rduction. Modliser cette situation par un diagramme de cas dutilisation

10

M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite)Exercice 3:

On considre le systme suivant de gestion dun DAB (Distributeur automatique de billets) : - le distributeur dlivre de largent tout porteur de carte (carte Visa ou carte de la banque) - pour les clients de la banque, il permet : .. la consultation du solde du compte .. le dpt dargent (chque ou numraire) - toute transaction est scurise et ncessite par consquent une authentification - dans le cas o une carte est avale par le distributeur, un oprateur de maintenance se charge de la rcuprer. Cest la mme personne qui collecte galement les dpts dargent et qui recharge le distributeur.

Modliser cette situation par un diagramme de cas dutilisation11M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite)Exercice 4 :

Dans un tablissement scolaire, on dsire grer la rservation des salles de cours ainsi que du matriel pdagogique (ordinateur portable ou/et Vido projecteur). Seuls les enseignants sont habilits effectuer des rservations (sous rserve de disponibilit de la salle ou du matriel). Le planning des salles peut quant lui tre consult par tout le monde (enseignants et tudiants). Par contre, le rcapitulatif horaire par enseignant (calcul partir du planning des salles) ne peut tre consult que par les enseignants. Enfin, il existe pour chaque formation un enseignant responsable qui seul peut diter le rcapitulatif horaire pour lensemble de la formation.

Modliser cette situation par un diagramme de cas dutilisation12M Y.DHIBA - MLA - AU:2010/2011

3.3 Diagramme de cas dutilisation (suite)Exercice 5:

-- cas dune socit de Travail Temporaire:Lorsque la socit reoit une demande de personnel intrimaire d'une entreprise, elle recherche les personnes qui conviennent parmi celles qui sont disponibles durant la priode demande. Elle tablit et adresse une offre d'emploi aux intrimaires retenus et ouvre un dossier. Au bout dun dlai de 8 jours, la socit examine les rponses obtenues et propose des candidats lentreprise ainsi que le contrat signer. Si aucune rponse ne parvient dans les 8 jours lentreprise est avertie de labsence de candidat et le dossier est annul. L'entreprise dispose d'une semaine pour retourner le contrat sign, sinon le dossier est annul. Ds que le contrat sign par l'entreprise revient, on adresse un courrier dembauche lintrimaire concern en lui indiquant son affectation. Le salaire est vers par la socit lintrimaire ds quelle reoit soit le relev dactivit de lentreprise soit le relev dactivit de lintrimaire.

Modliser cette situation par un diagramme de cas dutilisation13M Y.DHIBA - MLA - AU:2010/2011

Etude de cas : Socit AUTOPIECE (suite) Le processus de commercialisation des produits de la socit AutoPiece se fait de la manire suivante : Gestion des commandes et des livraisons: A l'arrive d'une commande d'un client, le service commercial enregistre partir d'un terminal la commande avec un numro d'arrive (numro de la commande) et la date d'arrive. Une commande peut porter sur plusieurs produits. Durant la journe, Le magasinier consulte la base de donnes pour visualiser la liste de commandes livrer. En fonction de la quantit en stock d'un produit command, il enregistre la quantit relle pouvant tre livre (la quantit livre sera celle disponible en stock). Il dite un bon de livraison qui servira prparer le(s) colis. A partir du bon de livraison dit, le service prparation prpare le(s) colis, note sur le bon : le poids, le nombre de colis, le nom du prparateur et rectifie la quantit livre s'il a constat une anomalie dans le stock.14M Y.DHIBA - MLA - AU:2010/2011

-

Etude de cas : Socit AUTOPIECE (suite) Quand la prparation est termine, le magasinier enregistre le poids, le nombre de colis, rectifie la quantit livre si ncessaire. Il dite le bon de livraison dfinitif joindre au colis.

- En fin de journe, le magasinier enregistre les produits (les approvisionnements) livrs par les fournisseurs la socit; cette opration provoque la mise jour des quantits en stock. Il visualise ensuite les commandes incompltement livres par ordre chronologique d'arrive; il peut alors diter de nouveaux bons de livraisons servant la prparation des colis (Ainsi plusieurs livraisons peuvent porter sur une mme commande). Le magasinier dite aussi la liste des produits en rupture de stock et rapprovisionner; il l'adresse au service approvisionnement.15M Y.DHIBA - MLA - AU:2010/2011

Etude de cas : Socit AUTOPIECE (suite) Gestion des factures et rglements des clients : En fin de journe, le service commercial lance la facturation des livraisons prpares par le magasinier. Il dite 2 exemplaires qu'il transmet au magasinier. Le magasinier joint les exemplaires de facture aux colis; ils sont alors prts tre expdis au client. On dite une facture pour chaque livraison dune commande de client. Chaque fin de mois, le service commercial dite le relev des factures du mois de chaque client et le lui adresse. Le client est tenu de rgler le total des factures pour la date d'chance en une ou plusieurs fois au Service Comptabilit. Le contenu dun relev est dcrit par la fiche suivante :16M Y.DHIBA - MLA - AU:2010/2011

Etude de cas : Socit AUTOPIECE (suite)

17

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes3.4.1 Dfinitions et formalismes: - Un diagramme de classe reprsente la structure dun systme sous la forme de classes et de relations entre classes. A- Notion de classe: Une classe est une description abstraite dun ensemble dobjet ayant: des proprits similaires et des smantiques communes. Exemple Formalisme Nom de la classe AttributsProprits communes aux objets de la classe Interface de la classe: services offert par la classe

SalariNom Prnom Adresse Date_recrutement Anciennet() Modifier_adresse()

Oprations

-

Chaque classe porte un nom unique. Chaque attribut de la classe est caractris par un type de donnes (numrique, chane de caractres, etc.) et porte un nom unique.M Y.DHIBA - MLA - AU:2010/2011

18

3.4 Diagramme de classes (suite)3.4.1 Dfinitions et formalismes (suite) A- Notion dobjet ou instance dune classe: Un objet est une instance ou occurrence relle dune classe. Chaque objet a sa propre identit indpendante des valeurs de ses attributs. Exemple: Objets instances de Classe salari La classe salari SalariNom Prnom Adresse Date_recrutement Anciennet() Modifier_adresse()

objet1Alaoui Zineb 22 Rue Racine rabat 17/01/2001

objet2Naciri Kamal 18 Rue Inara Casa 10/12/1999

Objet N Chaque objet dispose des oprations de sa classe 19CHAOUI Ali 120 BV MedV rabat 01/01/2004

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)3.4.2 Association ou Relation entre classes Une Association est une relation structurelle entre deux ou plusieurs classes. Elle porte un nom qui dfinit la manire dont une classe intervient dans la relation. Formalisme: Classe A..

Nom de lassociation

Classe B..

-

Exemple: SalariNom Prnom Adresse Date_recrutement

SocitTravail pourNom Nbr_Dpartement Capital Date_Cration Modifier_capital()

Anciennet() Modifier_adresse()20M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)3.4.2 Association ou Relation entre classes (suite) Exemples:

Ville..

Travail

Personne..

Habiter par

Personne..

Est conjoint

Enseignant..

Matireenseigner..

Classe.. 21M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)3.4.2 Association ou Relation entre classes (suite) Classe associative: Une association qui contient des attributs (proprits) ou des oprations est transform en une classe appele classe associative.

Exemple:Enseignant..

Classeenseigner..

CoursDure Contenu Afficher_contenu() Modifier_contenu()

Matire..

22

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)3.4.3 Multiplicit dune association Notion de multiplicit: La multiplicit dune association dtermine le nombre de fois o un objet participe une instance de lassociation. Exemple:

Client..

Contrat

1

Passer

0..*

..

1 : Un contrat est fait pour un et un seul client. 0..* : Un client peut passer 0 ou plusieurs contratLes valeurs possibles: 1 (Un et un seul); 0..1 (0 ou Un); * ou 0..* (de 0 plusieurs); 1..* (de un plusieurs); M..N (de M N); N (exactement N)

23

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)3.4.3 Multiplicit dune association (Suite) Exemples:

Salari..

SocitEmploy

1Employeur

0..*Pilote

..

Personne..

0..*Passagers

avion..

1

1..*

0..*Personne..

Enfants

* 2Parents

24

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite) 3.4.4 Association particulire: AgrgationAgrgation: Une agrgation est une association non symtrique o une classe B fait partie intgrante dune classe A. Cest une association compos-composant o une classe B est une composante dune classe A. Notation: Classe A Classe B Compos-

..

Composant

..

Exemple: Socit..

Dpartement..

Service..

Travaille-pour

Personne.. 25

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite) 3.4.5 Cas particulier dune agrgation: CompositionComposition: Une composition est une forme particulire dune agrgation o la classe composante est un attribut de la classe compos. Une composition implique une multiplicit du ct compos gale 0..1. Notation: Classe A Classe B Compos-

..

0..1Voiture..

Composant

..

Exemple: Moteur..

Chssis..

4..6Roue.. 26M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite) 3.4.6 Association: Gnralisation-

-

Gnralisation ou Hritage: Une gnralisation est une association entre une classe et une ou plusieurs versions affines de cette classe. Une classe A est une gnralisation dune classe B lorsque B est une sorte de classe A. Notation: Classe A Classe B.. ..

Exemple:

27

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite) Exercice 1:Soient les phrases suivantes : Un rpertoire contient des fichiers Une pice contient des murs Les modems et claviers sont des priphriques dentre / sortie Une transaction boursire est un achat ou une vente Un compte bancaire peut appartenir une personne physique ou morale

Elaborez les diagrammes de classe correspondants en choisissant le type de relation appropri

28

M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)

Exercice 2:Une

acadmie souhaite grer les cours dispenss dans plusieurs collges. Pour cela, on dispose des renseignements suivants :

Chaque collge possde un site Internet Chaque collge est structur en dpartements, qui regroupent chacun des enseignants spcifiques. Parmi ces enseignants, lun deux est responsable du dpartement. Un enseignant se dfinit par son nom, prnom, tl, mail, date de prise de fonction et son indice. Chaque enseignant ne dispense quune seule matire. Les tudiants suivent quant eux plusieurs matires et reoivent une note pour chacune delle. Pour chaque tudiant, on veut grer son nom, prnom, tl, mail, ainsi que son anne dentre au collge. Une matire peut tre enseigne par plusieurs enseignants mais a toujours lieu dans la mme salle de cours (chacune ayant un nombre de places dtermin). On dsire pouvoir calculer la moyenne par matire ainsi que par dpartement On veut galement calculer la moyenne gnrale dun lve et pouvoir afficher les matires dans lesquelles il na pas t not Enfin, on doit pouvoir imprimer la fiche signaltique (Nom, prnom, tl, mail) dun enseignant ou dun lve.29M Y.DHIBA - MLA - AU:2010/2011

3.4 Diagramme de classes (suite)

Exercice3: On

souhaite grer les rservations de vols effectus dans une agence. Daprs les interviews ralises avec les membres de lagence, on sait que : Les compagnies ariennes proposent diffrents vols Un vol est ouvert la rservation et referm sur ordre de la compagnie Un client peut rserver un ou plusieurs vols, pour des passagers diffrents Une rservation concerne un seul vol et un seul passager Une rservation peut tre confirme ou annule Un vol a un aroport de dpart et un aroport darrive Un vol a un jour et une heure de dpart, et un jour et une heure darrive Un vol peut comporter des escales dans un ou plusieurs aroport(s) Une escale a une heure de dpart et une heure darrive Chaque aroport dessert une ou plusieurs villes A partir des lments qui vous sont fournis ci-dessus, laborez le diagramme de classes.30M Y.DHIBA - MLA - AU:2010/2011