16/10/2014. I. Introduction aux Méthodes de Conception OO. Introduction. Conception Orientée Objet

Documents pareils
IFT2255 : Génie logiciel

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

Chapitre I : le langage UML et le processus unifié

Analyse,, Conception des Systèmes Informatiques

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

UML (Paquetage) Unified Modeling Language

CC30 Certificat de compétence Conception, développement et animation de sites Web

UML (Diagramme de classes) Unified Modeling Language

Génie Logiciel Orienté Objet UML

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

3. UML - Unified Modeling Language Diagrammes statiques

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

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

Management des processus opérationnels

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

RTDS G3. Emmanuel Gaudin

Cours STIM P8 TD 1 Génie Logiciel

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

UML 2.0. (IUT, département informatique, 1 re année) Laurent AUDIBERT

Université de Bangui. Modélisons en UML

Les diagrammes de modélisation

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

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

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

Cours en ligne Développement Java pour le web

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

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

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

Démarches d urbanisation : réorganiser le Système d Information en structurant ses fonctions dans des blocs fonctionnels communicants.

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

Conception, architecture et urbanisation des systèmes d information

En vue de l obtention du. Discipline : Informatique. Présentée et soutenue par Mohamed HADJ KACEM. Le Jeudi 13 Novembre 2008

Introduction au génie logiciel

Introduction IV. Comparaison MERISE/UML/SCRUM Approche fonctionnelle Schéma Entité/Association Méthodologie...

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

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

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

Besoins utilisateurs. Quelle démarche pour passer des besoins au code? Code. chapitre1 UNIFIED MODELING LANGUAGE. package LogiqueMetier.

Pascal Brunot Hadrien Cambazard UML FOR BUSINESS INTELLIGENCE PROJECT

Description de la formation

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

La démarche MDA. Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)*

Programmation Orientée Objet

UML et les Bases de Données

CONCEPTION DE PROJET SIG AVEC UML

Chapitre VI- La validation de la composition.

Extensions à la formation. Laurent Pérochon, avril 2008, RMT Modelia, modélisation conceptuelle, formation UML, INRA Castanet Tolosan

Méthodologies Orientées-Objet!

UML. Diagrammes de classes (suite) Delphine Longuet.

Chapitre VIII. Les bases de données. Orientées Objet. Motivation

Information utiles. webpage : Google+ : digiusto/

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

Patrons de Conception (Design Patterns)

Conception fonctionnelle de services d entreprise fondée sur l alignement entre cœur de métier et système d information

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

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA (d'après A.-M. Hugues) màj 17/04/2007

CNAM cours NFE107 : Urbanisation et architecture des SI Xavier Godefroy, Rapport sur le BPM, mai Le BPM

Université Libre de Tunis

Nom de l application

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Le génie logiciel. maintenance de logiciels.

ANALYSE D UN SYSTEME D INFORMATION ET EXTENSION DE

Le Guide Pratique des Processus Métiers

Par : ZIED TOUNSI PROJET DE FIN D ETUDE. Licence Appliquée GESTON DES PERSONNELS GOUVERNORAT DU KAIROUAN

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

UML est-il soluble dans les méthodes agiles?

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

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

CHAPITRE 1. Introduction aux bases de données

Projet Active Object

Méthodologies de développement de logiciels de gestion

Cours d Analyse et Conception des Systèmes d Information (d Outils et Modèles pour le Génie Logiciel)

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Architecture Orientée Objet Pour l Ingénierie des SIP application à l Entreprise SAFCER

TP1 : Initiation à Java et Eclipse

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

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Business Process Modeling (BPM)

Génie logiciel (Un aperçu)

Rational Unified Process

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

Meta Object Facility. Plan

Cours de Génie Logiciel

Systèmes d information et bases de données (niveau 1)

Développement ebusiness

Catalogue des Formations

LICENCE : INFORMATIQUE GENERALE

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

Sommaire. Conduite de projet Méthode d analyse et de conception. Processus unifié. Objectifs d un processus de développement

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

Généralités sur le Langage Java et éléments syntaxiques.

Mercredi 15 Janvier 2014

3 Descriptif du stage de fin d études du mastère professionnel

Analyse par Objets. avec UML (Unified Modeling Language) Pr. Jean-Marc Jézéquel IRISA - Univ. Rennes I

Visual Paradigm Contraintes inter-associations

RAPPORT DE CONCEPTION UML :

INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

Comprendre Merise et la modélisation des données

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Transcription:

Conception Orientée Objet I. Introduction aux Méthodes de Conception OO Rafik BOUAZIZ -- Faïez GARGOURI FSEG Sfax ISIM Sfax Introduction I.1. Systèmes d information et Méthodes de Conception Système d'information (SI) : Dans [Galacsi 1984], un SI est défini comme : «l'ensemble des., humains et matériels, et les. se rapportant au traitement des différentes formes d'information rencontrées dans les.». 7 8 Introduction SI et Méthodes de Conception Systèmes d information - Système : ensemble de. travaillant en collaboration pour accomplir des tâches bien définies. - Information, nécessitant différents traitements :. collecte, vérification, validation, représentation,.... codage, affinage, stockage, manipulation,... Le développement d un SI nécessite : - des d'analyse et de conception (MERISE, OMT, HOOD, ), - des. de programmation (classique, modèle relationnel, OO, ). 9 10 1

SI et Méthodes de Conception Une méthode est composée de : + Un ensemble de. exprimant des points de vue différents. + Un ensemble de, et leurs. d utilisation permettant la représentation des modèles. + Un ensemble d étapes successives : des. Une méthode = un (concepts + modèles + règles d utilisation) + des.. + un L OBJET I.2. Est un élément du. à modéliser : La facture 100567, la personne Ali, le cours COOSI. Possède sa propre identité : (Object Identifier) : OID : est une valeur indépendante des valeurs des propriétés de l objet. OID : Attribuée par le. et elle est totalement transparente à l utilisateur. 11 12 L OBJET (suite) Peut avoir plusieurs.. durant son cycle de vie : Etat d un objet : situation significative que peut prendre un objet, déterminée en fonction des valeurs des différents attributs et liens de l objet. Cycle de vie : les états que peut prendre un objet, entre sa.. et sa, et les conditions de passage d un état à un autre. Exemples : La facture 100567 : {100567, 27/8/2010,...} Les états que peut prendre une facture : {éditée, en attente de règlement, réglée partiellement, soldée} La CLASSE Regroupe un ensemble d'objets semblables : les mêmes structurelles (attributs) ; le même (opérations, méthodes) ; les mêmes... avec les autres objets ; et ayant un intérêt pour l'application. les données et les traitements : La classe Facture : {NumFacture, DateFacture,, Imprimer(), Solder(),...}. 13 14 2

La CLASSE (suite) Exemple : CLASSE Personne Attributs Nom : Chaîne; Prénom : Chaîne; Age : entier; Opérations Créer(); Supprimer(); FIN CLASSE Personne L ENCAPSULATION Est un principe qui consiste à : les données et les traitements dans une même structure (une même clase) et. cette classe pour l exécution de ces traitements, les données et les détails d'implantation (algorithmes) et laisser visible la partie interface (. des opérations publiques) des classes. 15 16 Exemple : Considérons la classe COMPTE suivante : CLASSE Compte PROPRIETES Programme utilisateur : Numéro : Integer;... a = Lire(NuméroCompte); Solde : Integer; b = CalculerIntérêt(a); METHODES Partie. à l utilisateur : Créer(); CalculerIntérêt(x: integer){ CalculerIntérêt(); return (x.solde*4%) } FIN CLASSE Compte En cas de changement du taux d intérêt, le programme utilisateur reste L HERITAGE Est un mécanisme permettant le des caractéristiques d une classe (généralisation) par une ou plusieurs autres classes (spécialisations). Héritage Cours, Diplôme,... Héritage.. Enseignant Personne Etudiant Etudiant_Enseignant Nom, Prénom, Adresse,... Année,... Numéro, TD,... 17 18 3

LE POLYMORPHISME Est la capacité d une méthode héritée à être appliquée sur des objets de types. Afficher() Afficher() Entête Objet Fenêtre Afficher() L opération Afficher() s applique : à une fenêtre et à une entête Concepts Orientée objet Les différents points de perception d un système La vision. : Description des entités représentant l univers de discours et de leurs relations. De quoi est fait le système? La vision : Description des évolutions, dans le temps, des entités représentant l univers de discours. Comment peut-il évoluer? La vision. : Description du fonctionnement (des différentes fonctionnalités) du système. Comment fonctionne-t-il? 19 20 Concepts Orientée objet Décrire les objets :. structures de données. opérations. liens entre les classes Modèle fonctionnel Modèle statique Décrire comment contrôler les évolutions, dans le temps, des objets du système Décrire le fonctionnement du système Modèle dynamique I.3. Durant les dernières décennies, plus d une de méthodes objet ont été proposées : Les méthodes inspirées et dédiées à un langage de : HOOD [Heitz 1989] pour ADA. OOD [Booch 1991] pour Smalltalk. 21 22 4

Les méthodes inspirées et dédiées aux temps réel : OOAD [Shlear 1991]. OOSE [Jacobson 1992]. Les extensions de. classiques : OMT [Rumbaugh 1991]. OOM [Bouzeghoub 1994], [Morejon 1994]. Les méthodes.. orientées objets : O* [Brunet 1993]. MCO [Castellani 1993]. Suite à cette.. de propositions : divers concepts sont utilisés, divers modèles proposés, diverses démarches suivies, diverses notations graphiques supportées, diverses sémantiques accordées aux mêmes concepts. 23 24 Un besoin d unification: UML : Pour la modélisation : Sous forme de langage : Unified Modelling Language UML Remarque : Pourquoi langage et non méthode? Regroupe les plus récentes propositions : Concepts de modélisation des données. Modélisation des processus d affaires (WorkFlow). Modélisation objet. Modélisation des composants. Peut être associé à toute démarche de conception : à n importe quelle étape de la démarche, avec différents environnements de programmation. 25 26 5

UML : Unification des concepts et des modèles de principalement méthodes connues : (Object-Oriented Design) de Grady BOOCH. (Object Modelling Techniques) de James RUMBAUGH.. (OO Software Engineering) de Ivar JACOBSON. La Genèse d UML 2003 : Publication d UML 2.0 2000-2002 : Publication d UML 1.4 1999 : Standardisation par l OMG 1997 : Soumission à l OMG (Object Management Group) OOPSLA 96 OOPSLA 95 Autres méthodes OOD 91 Booch OOD 93 UML 1.0 UML 0.9 UML 3.0 UML 2.0 UML 1.4 UML 1.3 Méthode Unifiée 0.8 OMT-2 94 2005 : On parle de UML 3.0 Infrastructure plus solide Renforcement de l approche par composants Apparition de MDA (Model Driven Architecture) Guide de l utilisateur Manuel de référence Guide du processus Spécifications disponibles sur le web OMT-1 Rumbaugh Partenaires Industriels OOSE 92 Jacobson Principales étapes d'élaboration d'uml 27 28 UML 2.0 de classes de composants de déploiement de structure de package Chacun représente un aspect particulier du SI à modéliser d objets de structure composite de communication d activités de séquence 13 diagrammes comportemental d interactions de cas d utilisation de timing de transition d état vue d ensemble des interactions s de.. Vue : de quoi est fait le système? de classes (UML 1) : décrit les classes et leurs relations. d objets (UML 1) : présente des instances de classes et de relations. de package ou de paquetage ou de paquets (UML 2) : regroupe des classes, des cas d utilisation ou des paquets, pour renforcer la modularité et la cohérence du modèle global. 29 30 6

de structure composite ou d architecture (UML 2) : montre la décomposition hiérarchique d une classe complexe en parties internes, avec des ports d interfaces externes, lors de l exécution. de composants (UML 1) : décrit l architecture d un logiciel en terme de modules et montre les dépendances de compilation ou d exécution entre ces modules. de déploiement (UML 1) : décrit les unités de programmes et leurs processus d affectation. Il montre la disposition des matériels et la répartition des composants sur ces matériels. s Comment se comporte le système? Vue : de cas d utilisation (UML 1) : décrit les fonctionnalités du système et les interactions avec les utilisateurs. Vue.. : d états-transitions (UML 1) : décrit le cycle de vie d un objet (états et transitions). de timing (UML 2) : montre l évolution de l état d un objet ou d un groupe d objets en fonction d événements temporels. 31 32 de communication ou de collaboration (UML 1) : décrit les interactions entre les objets, en montrant les liens. de séquence ou d interaction (UML 1) : représente les interactions entre les objets d une manière ordonné dans le temps. d activités (UML 1) : décrit les activités et les méthodes en termes d actions, en montrant le comportement procédural et parallèle. de vue d ensemble des interactions (UML 2) : Mixage du diagramme d activités et du diagramme de séquence. 33 7