Analyse et conception orientée objet Formateur: Mr. AASSOU Abdelilah Ecole Pigier de Nador Année...

54
Analyse et conception orientée objet Formateur: Mr. AASSOU Abdelilah Ecole Pigier de Nador Année scolaire: 2012/2013

Transcript of Analyse et conception orientée objet Formateur: Mr. AASSOU Abdelilah Ecole Pigier de Nador Année...

Analyse et conception orientée objetFormateur: Mr. AASSOU AbdelilahEcole Pigier de NadorAnnée scolaire: 2012/2013

Plan du cours

•Introduction•Présentation d’UML•Les diagrammes d’UML•Présentation des outils de travail•Présentation de l’approche objet•Diagramme de cas d’utilisation (use case)•Diagramme de séquence•Diagramme de classe

Introduction

•Système d’information ?•La méthode Merise ?•Modèle ?•Programmation fonctionnelle ? POO ?•Objet ?

Présentation d’UML

•UML pour Unified Modeling Language, est un langage de modélisation graphique utilisé pour la conception orientée objet.

•UML 1.0 paru dans sa première version en 1997, elle est la fusion de précédents langages de modélisation objet: Booch (Grady Booch), OMT (James Rumbaugh) et OOSE (Ivar Jacobson).

•UML est standardisé par l’OMG (Object Management Group).

•UML à contraire de Merise, n’est pas une méthode mais plutôt un langage de modélisation formel.

Présentation d’UML

•L’UML 2 que nous allons utilisé dans ce cours est composé de 13 diagrammes de différents.

•Les diagrammes d’UML sont classés de la manière suivante:▫Les diagrammes statiques;▫Les diagrammes comportementaux;▫Les diagrammes dynamiques;

Présentation d’UML

Présentation d’UML

•Diagrammes statiques:▫ Diagramme de classe: il représente les classes

intervenants du système.▫ Diagramme d’objet: il représente les objets du système.▫ Diagramme de composants: il représente les composants

système(fichier, bases de données, bibliothèque,…).▫ Diagramme de déploiement: il représente les éléments

physiques du système (ordinateurs, serveur, support de stockage,…).

▫ Diagramme de paquetages: il représente les package qui sont des conteneurs logiques.

▫ Diagramme de structure composite: il représente les relations entre les composants d’une classe.

Présentation d’UML

•Diagrammes comportementaux:▫ Diagramme de cas d’utilisation (use case): il représente

les interactions entre le système et les acteurs.▫ Diagramme état-transition (state machine): il représente

le comportement du système ou de ses composants.▫ Diagramme d’activité: il permet de décrire sous forme

de flux ou enchaînement d’activités le comportement du système ou de ses composants.

Présentation d’UML

•Diagrammes dynamiques:▫ Diagramme de séquence: il représente d’une façon

séquentielle le déroulement des traitements et des interactions entre les éléments du système et/ou de ses acteurs.

▫ Diagramme de communication: représentation simplifiée d'un diagramme de séquence se concentrant sur les échanges de messages entre les objets.

▫ Diagramme global d’interaction: permet de décrire les enchaînements possibles entre les scénarios préalablement identifiés sous forme de diagrammes de séquences.

▫ Diagramme de temps: permet de décrire les variations d'une donnée au cours du temps.

Présentation des outils de travail•Les outils gratuits:

▫ArgoUML.▫BOUML.▫Papyrus UML.

•Les outils payants:▫Rational Rose.▫Enterprise Architecte.▫Power AMC.

Présentation de l’approche objet•Un objet est une entité identifiable du

monde réel.•Exemples:

▫Un étudiant;▫Un livre;▫Une voiture;

•Chaque objet possède un ensemble d’attributs (structure) et un ensemble de méthode (comportement).

Présentation de l’approche objet•Un attribut est une variable destinée à

recevoir une valeur.•Une méthode est un ensemble d’instructions

prenant des valeurs en entrée et modifiant les valeurs des attributs ou produisant un résultat.

•Remarque: un ensemble d’objets similaires, c’est-à-dire possédant la même structure et le même comportement et constitué des mêmes attributs et méthodes, frome une classe d’objets.

Présentation de l’approche objet•Exemple: Une classe voiture

Présentation de l’approche objet•Exemple: Un objet

Diagramme de cas d’utilisation

•Diagramme de cas d’utilisation (use case): il représente les interactions entre le système et les acteurs.

uc Use Case Model

Employe

Responsable de formation

Chef de projet

Administrateur

Gestion des formation et du

planning

Validation des demandes de

formation

Demande de formation

Validation des demandes

d'inscription

Concultation du catalogue & demande de

formation

MAJ des users & paramétrage de

l'application

Authentification

«include»

«inculde»

«include»

«include»

«include»

«include»

Diagramme de cas d’utilisation

•Démarche de travail:▫Identifier les acteurs.▫Identifier les cas d’utilisation.▫Ajouter les relations entre les cas

d’utilisation.▫Finaliser un ou plusieurs diagramme(s) de

cas d’utilisation.▫Faire le diagramme sous Enterprise

Architect.

Diagramme de cas d’utilisation

•Exercice 1:▫Une société X souhaite réaliser une

application pour la gestion de projet et il de vous demande de faire l’analyse et la conception fonctionnelle.

▫Il vous donne le cahier des charges qui contient les règles suivantes:

▫Dans une étape préliminaire, le manager des projet ajoute et déclare un projet et il gère au même temps les ressources humaines.

▫Juste après la déclaration du projet, le chef de projet identifie le projet qui le concerne.

Diagramme de cas d’utilisation

•Exercice 1(suite):▫Un projet est représenté dans le temps par des

phases, chaque phase contient des tâches, le tout est géré par le chef de projet.

▫Après le découpage du projet en phases et tâches, il faut affecter des ressources humaines.

▫Et finalement, comme tous les projets, le projet doit être clôturé.

▫Travail à faire▫1- Identifier les acteurs et les cas d’utilisation.▫2- Finaliser les diagramme des cas d’utilisation.

Diagramme de cas d’utilisation

•Solution exercice 1:▫1- Les acteurs du système sont:

Le manager de projets. Le chef de projet.

▫ Les cas d’utilisation sont: Ajouter un projet. Gérer les ressources humaines. Identifier son projet. Gérer les phases . Gérer les tâches. Affecter des ressources humaines. Clôturer le projet.

Diagramme de cas d’utilisation

•Solution exercice 1(suite):▫2- Diagramme de cas d’utilisation

Diagramme de cas d’utilisation

•Exercice 2:▫Une grande entreprise anonyme emploie plus

de 650 employés et accueille chaque année plus de 200 stagiaires. Cette entreprise investit beaucoup d’argent pour améliorer le niveau de ces ressources humaines, en organisant des sessions de formations dans différents domaines.

▫Suite à des problèmes de gestion de formation, elle souhaite automatiser cette tâche et elle vous demande de faire l’analyse et la conception pour le futur logiciel.

▫Elle vous donne le cahier des charges suivant:

Diagramme de cas d’utilisation

•Exercice 2(suite):

▫Travail à faire: 1- Identifier les acteurs du SI. 2- Finaliser le diagramme de cas d’utilisation

par acteur.

Diagramme de cas d’utilisation

•Solution exercice 2:▫1- Les acteurs du SI:

Responsable de formations. Chef de projet. Employé. Administrateur de l’application.

Diagramme de cas d’utilisation

•Solution exercice 2:

▫2- Les diagrammes UC par acteur:

Diagramme de cas d’utilisation

•Exercice 3:

▫Une polyclinique a décidé d’avoir une simple application pour sa gestion interne. Dans un premier temps, les utilisateurs de cette application sont le chef des secrétaires et les médecins.

▫Le rôle du médecin dans l’application réside dans la gestion de ses patients, leurs prescriptions et leurs consultations.

▫Le chef des secrétaires à comme rôle, la gestion des médecins, des infermières et des secrétaires.

Diagramme de cas d’utilisation

•Exercice 3(suite):

▫L’application contient une base de données sur les médicaments, cette base est alimentée par une petite application lié à Internet(site de la société pharmaceutique).

▫Une partie du paramétrage contient 2 parties, la première est affectée au médecin dans laquelle il gère les maladies, les dose et les symptômes. En ce qui concerne la deuxième partie, le secrétaire gére les actes.

Diagramme de cas d’utilisation

•Exercice 3(suite):

▫Travail à faire : 1- Identifier les acteurs. 2- Identifier les cas d’utilisation. 3- Finaliser le diagramme de cas d’utilisation.

Diagramme de cas d’utilisation

Diagramme de séquence•Définitions:

▫Un scénario : est une suite spécifique d’interaction entre les acteurs et le système à l’étude.

▫Un scénario est une instance du cas d’utilisation, un chemin particulier dans sa combinatoire.

▫Chaque scénario est composé d’étapes qui peuvent être de trois sortes : un message d’un acteur vers le système. une validation ou un changement d’état du

système. un message du système vers un acteur.

•Définitions:▫Le diagramme de séquence est la

représentation des échanges entre les acteurs et le système, selon un ordre chronologique.

Diagramme de séquence

•Définitions:▫UML2 fournit quelques notations

complémentaires très utiles.▫Des rectangles, appelés fragments

d’interaction, sont utilisables pour indiquer qu’un groupe de message est: Optionnel (mot-clé opt). Répété (mot-clé loop). Alternatif (mot-clé alt). Référence (mot-clé ref).

Diagramme de séquence

•Exemples:▫1- Diagramme de séquence du cas

« Rechercher des ouvrages ».▫2- Diagrammes de séquence « Rechercher

des ouvrages » avec modifications.▫3- Diagramme de séquence du cas « Gérer

son panier ».▫4- Digramme de séquence du cas « Passer

une commande ».▫5- Diagramme de séquence du cas

« Maintenir le catalogue ».

Diagramme de séquence

Question!!!

•Exercice 1:▫Dans notre exemple de la bibliothèque en

ligne, un internaute peut être un client qui a un compte client qui sert à passer une commande mais après l’authentification, ou bien un visiteur qui a besoin de créer un compte pour passer une commande.

▫Travail à faire: 1- Diagramme de séquence de

l’authentification du client. 2- Diagramme de séquence de création du

compte pour le visiteur.

Diagramme de séquence

•Exercice 2:▫Dans un Guichet Automatique Bancaire

(GAB), un client peut effectuer plusieurs opérations, parmi lesquelles on cite les suivantes: Retirer de l’argent. Consulter son solde. Consulter l’historique des opérations.

▫Travail à faire: 1- Diagramme de cas d’utilisation. 2- Diagramme de séquence pour le scénario

« Retirer de l’argent ».

Diagramme de séquence

Diagramme de classes•Un diagramme de classes est un

diagrammes qui se compose de classes, des interfaces, des relations entre les classes et les interfaces et des packages.

•Une classe est la représentation d’un ensemble d’objets ayant une sémantique, des attributs et des opérations(méthodes).

•Un objet est occurrence de classe.•Les attributs d’une classe ont un nom et un

type.•Les opérations d’une classe ont un nom, un

type de retour et des paramètres.

Diagramme de classes•Exemple d’une classe en UML: