Langages de programmation TP12

Documents pareils
C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

IFT2255 : Génie logiciel

UML (Diagramme de classes) Unified Modeling Language

Chapitre I : le langage UML et le processus unifié

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

Présentation générale de la méthode orientée objet : O.M.T. (Rumbaugh & al.)

GOL502 Industries de services

Formation : Modélisation avec UML 2.0 et Mise en pratique

3. UML - Unified Modeling Language Diagrammes statiques

Développement ebusiness

Refonte front-office / back-office - Architecture & Conception -

Générer du code à partir d une description de haut niveau

Table des matières Sources

UML (Paquetage) Unified Modeling Language

Patrons de Conception (Design Patterns)

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

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

GOL-502 Industrie de services. Travaux Pratique / Devoir #7

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

NF26 Data warehouse et Outils Décisionnels Printemps 2010

Bases de données. Chapitre 1. Introduction

Démarche VUML Statique et Dynamique

Les diagrammes de modélisation

Diagrammes de Package, de déploiement et de composants UML

Diagramme de classes

Conception d'un système d'information WEB avec UML Par Ass SERGE KIKOBYA

Programmation Orientée Objet

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

UML et les Bases de Données

Université de Bangui. Modélisons en UML

Modèle Entité/Association

OCL - Object Constraint Language

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

Description de la formation

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

Sommaire. G. Pujolle, F. Ravat, C. Soulé-Dupuy, G. Zurfluh

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

Développement d un interpréteur OCL pour une machine virtuelle UML.

Analyse,, Conception des Systèmes Informatiques

Génie Logiciel. Rappels. C. Crochepeyre Génie Logiciel Rappels 1

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

UML. Diagrammes de classes (suite) Delphine Longuet.

Je catalogue, tu FRBRises, il/elle googlise. L évolution des catalogues et les bibliothécaires Vendredi 29 mars 2013 Manufacture des tabacs

Une proposition d extension de GML pour un modèle générique d intégration de données spatio-temporelles hétérogènes

Master MIDO 2ème année. Spécification et Conception en UML Maude Manouvrier

Apprendre la Programmation Orientée Objet avec le langage Java (avec exercices pratiques et corrigés)

Formation Méthode MDM. Architecture et procédés de modélisation des données de référence

Reporting Services - Administration

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

2 e édition JAVA 5 et 6. Jérôme Bougeault. TSoft et Groupe Eyrolles, 2003, 2008, ISBN :

Visual Paradigm Contraintes inter-associations

Management des processus opérationnels

Introduction à la modélisation

La conception orientée objet au secours de la programmation de microcontrôleur ou inversement

Business Process Design Max Pauron

openarchitectureware & transformation de modèle Yannick Lizzi Architecte Logiciel itemis France Mail: lizzi@itemis.de

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Je découvre Lina Maintenance

TP3 Intégration de pratiques agiles. 1. User Stories (1) Scénario d intégration agile. En direct-live du château

RTDS G3. Emmanuel Gaudin

Décès et succession LE DECES

CONCEPTION DE PROJET SIG AVEC UML

Initiation à JAVA et à la programmation objet.

Méthodes de Conception Orientés Objet (MCOO) SOMMAIRE

Programme et contenus Licence d'informatique de Lille, parcours MIAGE, en alternance ou en formation continue (13:40)

Ingénierie des Modèles. Méta-modélisation

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

Modélisation de Lignes de Produits en UML *

Squale Le portail qualimétrie open-source

Classeur de suivi de l auditeur. Architecture et Ingénierie des Systèmes et des Logiciels

TP1 : Initiation à Java et Eclipse

Christian Soutou UML 2. pour les. bases de données. Avec 20 exercices corrigés. Groupe Eyrolles, 2007, ISBN :

Génie Logiciel Avancé Cours 3 Le modèle à objets

Programmation en Java IUT GEII (MC-II1) 1

Livret 10. Mise à jour février Département Tertiaire

Comparaison de trois techniques de modélisation de processus: ADONIS, OSSAD et UML

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur Le 23 novembre 2012

Cours Composant 2. Qualité logicielle et spécications algébriques

Introduction aux Bases de Données

Intégration de l interface graphique de Ptidej dans Eclipse

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>

Environnement logiciel basé sur les modèles pour la conception collaborative de produit

1ère partie Nadine Cullot. Bases de données déductives. Bases de données déductives Introduction et Motivation

Introduction au Génie Logiciel

Information utiles. webpage : Google+ : digiusto/

Module BD et sites WEB

Cookies de session ils vous permettent de sauvegarder vos préférences d utilisation et optimiser l expérience de navigation de l Utilisateur ;

Génie Logiciel Orienté Objet UML

Chapitre 5 LE MODELE ENTITE - ASSOCIATION

ALGORITHMIQUE ET PROGRAMMATION En C

HMI target Visu / PLC HMI. Pour réaliser une interface homme machine avec PLC control

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

Roques. Programmeur UML 2. Modéliser une une application web. 4 e e édition

O b s e r v a t o i r e E V A P M. Taxonomie R. Gras - développée

Urbanisation de système d'information. PLM 4 (Product Lifecycle Management) Préoccupation d'assurance qualité Processus et Procédures

Objectif du cours. Outline. Complexité des systèmes modernes. La modélisation et UML dans les activités du Génie Logiciel...

Méthodologie de conception d un produit mécatronique

Transcription:

Langages de programmation TP12 Objectifs: Diagrammes UML pour refléter relations entre classes Des diagrammes UML UML (Unified Modeling Language, que l'on peut traduire par "langage de modélisation unifié) est une notation permettant de modéliser un problème de façon standard. Dans notre cas, UML est un formalisme de modélisation objet. Avec la méthode UML, un objet est par exemple représenté de la façon suivante : Importance des diagrammes UML: Un diagramme UML permet de définir le problème à haut niveau sans rentrer dans les spécificités d'un langage, parce que les langages orientés objet constituent chacun une manière spécifique d'implémenter le paradigme objet Un diagramme UML représente ainsi un outil permettant de définir un problème de façon graphique, afin par exemple de le présenter à tous les acteurs d'un projet. Un diagramme UML est une méthode d'analyse du problème (afin de couvrir toutes les facettes du problème), d'autre part un langage permettant une représentation standard stricte des concepts abstraits (la modélisation) afin de constituer un langage commun. Modélisation des classes en UML UML propose une manière de représenter les objets de façon graphique, sous forme de rectangle, dans lequel le nom de l'objet est souligné: Le premier contient le nom donné à la classe (non souligné). Les attributs d'une classe sont définis par un nom, un type (éventuellement une valeur par défaut, c'est-à-dire une valeur affectée à la propriété lors de l'instanciation) dans le second compartiment. Les opérations sont répertoriées dans le troisième volet du rectangle. La visibilité des attributs en UML:

Les niveaux de visibilité des éléments de la classe définissent les droits d'accès aux données selon que l'on y accède par une méthode de la classe elle-même, d'une classe héritière, ou bien d'une classe quelconque. Il existe trois niveaux de visibilité: publique: Les fonctions de toutes les classes peuvent accéder aux données ou aux méthodes d'une classe définie avec le niveau de visibilité public. Il s'agit du plus bas niveau de protection des données protégée: l'accès aux données est réservé aux fonctions des classes héritieres, c'est-à-dire par les fonctions membres de la classe ainsi que des classes dérivées privée: l'accès aux données est limité aux méthodes de la classe elle-même. Il s'agit du niveau de protection des données le plus élevé La notation UML permet de représenter le niveau de visibilité des attributs de façon graphique en faisant précéder le nom de chaque attribut par un caractère représentant la visibilité: + défini un attribut public # défini un attribut protégé - défini un attribut privé Relations entre les classes: Association : exprime une connexion sémantique entre deux classes Agrégation: une association non symétrique, qui exprime un couplage fort et une relation de subordination.

Composition: La composition est une agrégation forte (agrégation par valeur). Dépendance Spécialisation Généralisation (pour exprimer héritage) Problème en classe Dans une librairie on vend des livres. Chaque livre a une description qui contient les informations suivantes: titre, auteur, description, nombre de pages, ISBN unique, année de apparence et le prix unitaire. Au prix unitaire nous ajoutons 10% (la valeur TVA) et nous obtenons le prix de vente pour chaque livre. Les descriptions des livres sont contenues dans un catalogue offert pour consultation aux clients. Ecrivez un programme qui exécute les fonctions suivantes: ajouter les descriptions de tous les livres dans le catalogue

rechercher par un ou deux critères (title, auteur) et afichez les livres qui répondent à ces critères afficher le contenu du catalogue Ajouter les constructeurs, accesseurs et mutateurs necessaries. La diagramme de classes de ce problème est la suivante: Devoir 1. Mettez en œuvre la classe Voiture. Une voiture est caractérisée par: Code unique (integer) Marque (string) Modèle (string) Prix à la production (double) Pays de production (string) Date de fabrication (GregorianCalendar " dd/mm/yyyy ") Décidez les plus appropriés constructeurs et méthodes pour la classe. Mettez en œuvre la classe Parking. Un parking est caractérisé par le nombre maximum de voitures qu'il peut contenir. Un parking contient un tableau de voitures et les méthodes suivantes: Ajoutez une nouvelle voiture Retirez une voiture en utilisant son numéro d'index dans le tableau Modifiez le pays de production d'une voiture à l'aide de son code unique Montrez toutes les voitures d'une marquee Trouvez toutes les voitures fabriquées au cours des deux dernières années Trouvez la voiture la plus chère dans le parking Créez une classe de test, déclarez les possibilités de parking avec un nombre maximum de 20 voitures, ajoutez les 5 premières voitures de la même marque, mais produit dans trois pays différents, puis ajoutez 3 autres voitures d'une deuxième marque sur le parking et testez des méthodes.

2. [Optionnel] Mettre en œuvre les classes de diagrammes suivants et une classe de test, ManageHospitalSystem, pour les tester. Pour mettre en œuvre la relation Spécialisation Généralisation, vous devez lire sur héritage.