Modèle objet/classe. Sommaire



Documents pareils
Modélisation des données

UML (Diagramme de classes) Unified Modeling Language

Conception des bases de données : Modèle Entité-Association

Université de Bangui. Modélisons en UML

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

Information utiles. webpage : Google+ : digiusto/

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Rappel sur les bases de données

GOL502 Industries de services

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Génie Logiciel avec Ada. 4 février 2013

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Cours STIM P8 TD 1 Génie Logiciel

Modèle conceptuel : diagramme entité-association

IFT2255 : Génie logiciel

Bases de données relationnelles

Nom de l application

GESTION BUDGETAIRE. BTS MUC, Gestion commerciale. Lycée Charles de Gaulle Vannes INTRODUCTION :

Modèle Entité/Association

Introduction aux Bases de Données

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Retour d expérience. Le rôle du Business Analyst chez Orange. Nadia Magarino & Christophe Dufour 29 avril 2015

Chapitre VI- La validation de la composition.

Débuter avec EXPRESS. Alain Plantec. 1 Schema 2

II. Modèle conceptuel le modèle entité-association

Méthodes d évolution de modèle produit dans les systèmes du type PLM

Évaluation et implémentation des langages

Génie logiciel pour le commerce électronique Hiver 2003 Prof.: Julie Vachon

M1 : Ingénierie du Logiciel

Conception, architecture et urbanisation des systèmes d information

Créer et partager des fichiers

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

Langage et Concepts de Programmation Objet. 1 Attributs et Méthodes d instance ou de classe. Travaux Dirigés no2

MEGA ITSM Accelerator. Guide de démarrage

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

MATRICES RACI ET DIAGRAMMES BPMN : COMPLÉMENTAIRES DANS LES CONTRATS D OUTSOURCING. Processus, outsourcing

Développement itératif, évolutif et agile

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Bases de données. Chapitre 1. Introduction

LIVRE BLANC Décembre 2014

Modélisation Conceptuelle. Partie 2: Le modèle Entité-Association

Wix : mettre en place un site d e commerce

Guide d aide à la réservation par internet

Conditions Générales du RME

Chapitre I : le langage UML et le processus unifié

Génie Logiciel LA QUALITE 1/5 LA QUALITE 3/5 LA QUALITE 2/5 LA QUALITE 4/5 LA QUALITE 5/5

MEGA ITSM Accelerator. Guide de Démarrage

FRBR OO et PRESS OO : présentation rapide

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Formation à l utilisation des Systèmes de Gestion de Bases de Données Relationnelles. organisée avec la collaboration du

UML et les Bases de Données

Chap. 3: Le modèle de données entité-association (E.A.)

SECTION 5 BANQUE DE PROJETS

Introduction à LDAP et à Active Directory Étude de cas... 37

La gestion des données de référence ou comment exploiter toutes vos informations

1 Modélisation d une base de données pour une société de bourse

Modélisation de bases de données : Le modèle relationnel

Diagramme de classes

A.-M. Cubat PMB - Import de lecteurs - Généralités Page 1 Source :

TD sur JMS ) Qu est-ce qu un middleware orienté message (MOM)? Quelles différences faites-vous entre un MOM et JMS?

MÉTHODOLOGIE PROJET SYSTÈME D INFORMATION DÉCISIONNEL BI - BUSINESS INTELLIGENCE. En résumé :

ARIS : Des Processus de gestion au Système Intégré d Applications

Technologie Web. Conception de sites Web. Alexandre Pauchet. INSA Rouen - Département ASI. INSA - ASI TechnoWeb : Rappels UML 1/21

Chapitre 2. Classes et objets

Service On Line : Gestion des Incidents

Guide d établissement des budgets des propositions soumises aux appels à projets de

Programmation de services en téléphonie sur IP

Le Guide Pratique des Processus Métiers

OCL - Object Constraint Language

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Cours 1 : introduction

N avez-vous jamais rêvé d une nouvelle façon de faire un film? gettyimages.fr/film. Guide de l utilisateur

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Chapitre 4 : cas Transversaux. Cas d Emprunts

Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire

Manuel d utilisation pour la plateforme BeExcellent MANUEL D UTILISATION POUR LA PLATEFORME BEEXCELLENT

Pôle Référentiels Métier (Master Data Management)

PASS v2.0 : solution d authentification unique basée sur les composants Shibboleth Service Provider v2.5.1 et Identity Provider v2.3.

MEGA Application Portfolio Management. Guide d utilisation

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

Premiers Pas en Programmation Objet : les Classes et les Objets

NOM : Prénom : Date de naissance : Ecole : CM2 Palier 2

Polymorphisme, la classe Object, les package et la visibilité en Java... 1

Règlement de la Bibliothèque municipale

Guide de développement de «WorkFLows» avec SharePoint Designer 2013

Du résultat social au résultat consolidé Novembre 2011

Le travail collaboratif : guide des services

Le modèle de données

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

Dossier I Découverte de Base d Open Office

DISCOUNTED CASH-FLOW

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

CHAPITRE 1. Introduction aux bases de données

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Transcription:

Modèle objet/classe Sommaire Pourquoi un tel modèle ; Sa place dans le processus de développement ; Les premiers concepts ; Comment construire un diagramme de classes.

Sa place dans le processus de développement Les Ucs représentent une vue fonctionnelle du système ; Il faut passer d une vue fonctionnelle vers une vue objet du problème ; L on dégage ainsi les entités intrinsèquement liées au domaine d application ; Cette phase permet de déterminer les objets utiles pour la phase d analyse et au delà ; La construction du système va donc se faire autour de la notion d objet, plutôt qu autour de la notion de fonctionnalité ; Sa place dans le processus de développement Cas d utilisations Modèle objet/classe Conception Dynamique 2

Pourquoi? Décrit les objets et les relations qui interviennent dans la problématique : Description de la structure des objets et de leurs caractéristiques ; Description des associations entre les classes des objets ; Les objets manipulés lors de l analyse doivent refléter les entités du problème ; La description du MO(C) est indépendante de la solution technique ; Il explique ce qu il faut réaliser et non pas comment le réaliser ; Premiers concepts Le modèle statique sert à définir la sémantique des objets au sein du système ; Il permet de lever certaines ambiguïtés qui peuvent exister dans les spécifications ; emprunteur 0.. emprunter 0..3 objet prêté Exemplaire 3

Classe / Objet Le concept de classe permet de modéliser les caractéristiques de tous les objets qui sont instanciés à partir de ces classes, à savoir leurs données et leurs comportements ; Dans le modèle statique, la définition de l objet est intermédiaire entre celle de l objet réel et celle de l objet telle qu on la rencontre au moment de l implantation : Objet du modèle statique = restriction de objet réel Certaines classes de l analyse peuvent ne pas apparaître lors de l implémentation Attributs & Opérations -nom : string -prénom : string -adresse : string +changeadresse() +emprunter() Les attributs représentent les données de l objet. Chaque objet a une identité propre ; Les opérations représentent le comportement de l objet ; La précision de la description d une classe ne dépend que du niveau de granularité que l on veut donner à notre modèle ; 4

Classe ou Objet? emprunteur 0.. emprunter 0..3 objet prêté Exemplaire Pedro: -nom : Pedro : string -prénom: Gonzales : string -adresse: inconnue : string emprunter Hamlet: Exemplaire La relation d instanciation est mise en évidence par une flèche en pointillé allant de la classe vers l objet ; Le système final manipule des objets, mais la description se fait principalement via les classes ; Cela simplifie le problème posé ; Il serait trop compliqué de décrire tous les objets qui interviennent dans le système. Association «un adhérent peut emprunter au maximum 3 exemplaires» : existence d un lien entre les objets de la classe adhérent et les objets de la classe exemplaire ; Une association possède un nom (verbe) et des noms de rôles qui peuvent lever certaines ambiguïtés : SociétéIntérim employeur SociétéNettoyage travaillepour employé Un sens de lecture, indiqué par un triangle. Aucune conclusion à tirer sur la manière dont sera implantée l association! 5

Association Cardinalité représentant le nombre d instances impliquées dans l association. La cardinalité se trouve du côté de l objet qu elle décrit : Capitale Pays Continent * Pays Pays 0.. Roi Classe d association Lorsqu il est nécessaire d ajouter des informations supplémentaires sur l association ; Ces informations sont inhérentes à l association ; il est alors possible de les stocker dans une classe particulière : la classe d association : Pret -date : string -durée : entier +prolonger() -nom : string -prénom : string -adresse : string emprunteur 0.. emprunter 0..3 objet prêté Exemplaire Elles sont nécessaires quand (i) les associations sont soumises à des opérations et quand (ii)les associations sont associées à d autres classes ; 6

Association ou attribut? Représenter un lien entre 2 classes de 2 façons : grâce à une association ou à un attribut : Pret -durée : entier +prolonger() Date Pret -date : Date -durée : entier +prolonger() Une association est préférable si la classe date est importante dans le cadre du projet (ex. gestion de planning) ; Une association permet d expliciter un lien et d associer des données et des comportements à ce lien ; Comment modéliser une information simple? Une classe vs. Façon brute (chaîne de caractères, entier, etc.) ; Le second choix est limitatif : enferme l information dans une structure de données trop restreinte ; Exemple : Date Date -jour : entier -mois : entier -année : entier +affichejjmmaa() +affichejjmmaaaa() +enregistretoi() Les formats de données évoluent souvent. Il est préférable de créer des classes les représentant ; 7

Comment construire un diagramme de classes Le modèle objet sera, dans un premier temps, décrit par un diagramme de classes ; C est un réseau de classes et d associations. Il modélise la structure d un objet, son rôle au sein du système et ses relations avec les autres objets ; N.B: 2 analystes travaillant en // sur les mêmes spécifications et Ucs produiront vraisemblablement 2 modèles différents! Ces derniers varieront selon l expérience (et la sensibilité) de leurs auteurs. Ils seront cependant tous les deux justes. Comment construire un diagramme de classes : une recette Identifier les classes. Elles se cachent derrière les substantifs qui se trouvent dans les différents documents. Ces souvent des mots du domaine applicatif. L ensemble peut être alors réduit en fonction de critères comme : Suppression des synonymes ; Suppression des classes trop vagues ; Suppression des classes non pertinentes. 8

Ex. de la médiathèque Liste des mots Médiathèque Livre Cassette audio Auteur Membre Fiche temps retenus dans Cassette vidéo Support Acteur Prêt Type de média emprunt les spécs Renseignement CD audio Bibliographie Compositeur musicien Découvrir des associations, les attributs et opérations Mise en évidence des classes interdépendantes ; Elles correspondent souvent à des expressions verbales ; En général, les infos qui n ont pas encore été modélisées sont des attributs des différentes classes du modèle ; Quand on hésite entre 2 classes associées, pour placer un attribut, la solution est d intégrer cet attribut dans une classe d association entre les 2 dites classes ; À cette étape de l analyse, on identifie les opérations immédiates et simples ; surtout celles qui participent à la description de l objet 9