MÉTHODOLOGIES DE CONCEPTION ET NOTATION GRAPHIQUE



Documents pareils
IFT2255 : Génie logiciel

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

Les diagrammes de modélisation

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

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

Chapitre I : le langage UML et le processus unifié

Le génie logiciel. maintenance de logiciels.

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

Université de Bangui. Modélisons en UML

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

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Méthodes fonctionnelles : Structured Analysis - Structured Design (SA - SD)

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

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

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

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

Diagramme de classes

Bases de Données. Plan

Résumé CONCEPTEUR, INTEGRATEUR, OPERATEUR DE SYSTEMES CRITIQUES

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

Cours de Génie Logiciel

EN BLANC AVANT IMPRESSION»»»

Présentation du module Base de données spatio-temporelles

SPF FIN. Patris Spécification de Use Case: 15-UC01 Obtenir de l'information patrimoniale. Version 1.1

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Chapitre 1 : Introduction aux bases de données

UML (Paquetage) Unified Modeling Language

IBM Tivoli Monitoring, version 6.1

Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire

Analyse,, Conception des Systèmes Informatiques

Évaluation et implémentation des langages

Créer et partager des fichiers

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

TP redondance DHCP. Gillard Frédéric Page 1/17. Vue d ensemble du basculement DHCP

Programmation sous QT

CHAPITRE 1. Introduction aux bases de données

Analyse des Besoins (Spécifications)

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)

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

Génie logiciel avec UML. Notions sur le langage UML adapté pour les cours du programme Techniques de l informatique

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

C++ COURS N 2 : CLASSES, DONNÉES ET FONCTIONS MEMBRES Classes et objets en C++ Membres d'une classe Spécification d'une classe Codage du comportement

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

Enseignement secondaire technique. Technologies de l'information et de la communication

et les Systèmes Multidimensionnels

Gestion des sauvegardes

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

LES INTERFACES HOMME-MACHINE

WEA Un Gérant d'objets Persistants pour des environnements distribués

Présentation du PL/SQL

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Introduction aux systèmes temps réel. Iulian Ober IRIT

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

Projet Active Object

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

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

M1 : Ingénierie du Logiciel

Préparer la synchronisation d'annuaires

Allocation de l adressage IP à l aide du protocole DHCP.doc

Communiqué de Lancement

SAP BusinessObjects Web Intelligence (WebI) BI 4

L'évolution de VISUAL MESSAGE CENTER Architecture et intégration

«clustering» et «load balancing» avec Zope et ZEO

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

Urbanisation de système d'information. PLM 6 (Product Lifecycle Management) Collaboration et partage d'informations

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

Réorganisation du processus de transfusion sanguine au Liban

Introduction : présentation de la Business Intelligence

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Description de la formation

Industrie des cartes de paiement (PCI) Norme de sécurité des données Récapitulatif des modifications de

Les bases de données Page 1 / 8

analyse et pérennise votre patrimoine informationnel

INTRODUCTION AUX BASES de DONNEES

L information et la technologie de l informationl

4.2 Unités d enseignement du M1

Chapitre 10. Architectures des systèmes de gestion de bases de données

Conduite de projets informatiques Développement, analyse et pilotage (2ième édition)

IT203 : Systèmes de gestion de bases de données. A. Zemmari zemmari@labri.fr

Visual Paradigm Contraintes inter-associations

GPA770 Microélectronique appliquée Exercices série A

WHITEPAPER. Quatre indices pour identifier une intégration ERP inefficace

Le langage UML 2.0 Notion d Objet

Méthodologie de conceptualisation BI

Spécifications de l'offre Surveillance d'infrastructure à distance

PROJET 1 : BASE DE DONNÉES REPARTIES

Théories de la Business Intelligence

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

La réplication sous SQL Server 2005

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

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

MEDLINE BANQUE DE DONNÉES EN MÉDECINE INTERFACE PUBMED INITIATION

Présentation à l Autorité des marchés financiers. Offre d assurance par Internet au Québec

Talend Technical Note

Cours Bases de données

Transcription:

MÉTHODOLOGIES DE CONCEPTION ET NOTATION GRAPHIQUE m Notations : diagrammes m Diagrammes de transition d'états m Méthodes d'analyse de flot de m Conventions pour diagrammes données objet m Diagrammes de flot de données m Diagrammes de entités-relations m Dictionnaire de données et son m Diagrammes d'interaction d'objets contenu m Méthodes d'analyse fonctionnelle m Diagrammes de Booch m Diagrammes fonctionnels m Méthodologies de conception DIAGRAMMES DE FLUX DONNÉE stockage de donnée Fonction Ces symboles sont habituellement utilisés dans les Diagrammes de flot de données (DFD's). stockage de donnée Fonction stockage de donnée Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-1--2007-01-31-10:00 2-1 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-4--2007-01-31-10:00 2-4 NOTATIONS DIAGRAMMES Plusieurs notations de diagrammes sont utilisées durant les phases d'analyse des besoins et de conception: l Diagrammes de flot de données l Diagrammes de fonctions l Diagrammes de transition d'états l Diagrammes de entités-relations D'autres diagrammes sont spécifiquement utilisés pour la conception et sont souvent spécifiques à un langage. Ces notations sont souvent utilisées lors d'implantation en Ada: Diagrammes d'interaction d'objet l Diagrammes de Booch Ces applications et les autres notations de diagrammes font partie du processus de développement de logiciel d'une organisation. DIAGRAMMES DE FLUX DONNÉES Console Lire Formater formatée Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-2--2007-01-31-10:00 2-2 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-5--2007-01-31-10:00 2-5 MÉTHODES D'ANALYSE DE FLUX DE DONNÉES Les diagrammes de flot de données nous disent: l Les sources et les destinations des données dans le l Flux des données dans le l Les fonctions qui transforment les données dans le l Les fonctions qui engendrent des transactions dans le Le Dictionnaire nous donne: l Les attributs des données dans le l D'autres informations au sujet des données du DICTIONNAIRE DE DONNÉES ET SON CONTENU l Chaque classe d'objets dans le et ses attributs l Chaque objet unique (i.e., si placé dans une classe, la classe a une seule instance) et ses attributs l Constantes clés et leurs attributs l Paramètres des sous-programmes et leurs attributs Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-3--2007-01-31-10:00 2-3 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-6--2007-01-31-10:00 2-6 1

MÉTHODES D'ANALYSE FONCTIONNELLE DIAGRAMMES DE TRANSITION D'ÉTAT Diagrammes fonctionnels nous donnent : l Fonctions dans le Système l La suite des actions des fonctions Diagrammes de transition d'état (STD's) nous donnent: État 1 Événement/ Action résultante l Les états du Système l Les relations entre les états du l Les événements qui engendrent des transitions d'état du l Les actions résultantes effectuées en réponse à ces événements Ces symboles sont usuellement utilisés dans les diagramme de transition d'états (STD). État 2 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-7--2007-01-31-10:00 2-7 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-10--2007-01-31-10:00 2-10 IF-THEN-ELSE DIAGRAMMES FONCTIONNELS Voici une combinaison de symboles habituellement utilisés dans les diagrammes fonctionnels. CASE DIAGRAMMES DE TRANSITION D'ÉTAT Initialiser Système et Ouvrir Fait Lire ligne du Ouverture nonréussie, écrire un message au terminal Fin de Formater Nouvelle ligne lue Fait WHILE-DO REPEAT-UNTIL Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-8--2007-01-31-10:00 2-8 Fermer (si ouvert) et Exit Écriture nonréussie, écrire un message au terminal Écrire au terminal Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-11--2007-01-31-10:00 Écriture réussie 2-11 Ouvrir DIAGRAMMES FONCTIONNELS Obtenir Fini? Non Imprimer Oui Fermer Contrôleur de Simulation (1) sans modèle de simulation Il s agit alors d acquérir un modèle de simulation. Le contrôleur peut être invoqué ou réveillé par OPAL et reçoit les données d entrée venant d OPAL par tube ou fichier et fait exécuter l extracteur. (2) en spécification des paramètres de simulation Il s agit de gérer un menu d interaction avec l utilisateur pour accepter : une durée de simulation (avec spécification d unité de temps), un nombre de lots de simulation, des points d arrêt des types 1-5 (le type 5 étant basé sur le temps réel, donc sur une interruption matériel), des options de résultat et d affichage, et des modifications permises de réseau. Il achemine ces renseignements à l engin simulateur et fait démarrer (ou reprendre) une simulation (après une pause). Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-9--2007-01-31-10:00 2-9 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-12--2007-01-31-10:00 2-12 2

Contrôleur de Simulation Engin de Simulation (3) en contrôle de l exécution de l engin simulateur Il s agit d accepter un ordre de l utilisateur (Break, Stop, Exit) et d interrompre (ou de suspendre) l exécution de l engin simulateur. Le contrôleur interrompt l engin et lui dit quoi faire (Continue, Stop, Exit, Modify, Options). Noter qu une interruption d horloge temps réel (un point d arrêt du type 5) est considérée comme un ordre Break venant de l utilisateur. (4) en contrôle d une pause de l engin simulateur Il s agit d accepter un ordre de l utilisateur (Continue, Stop, Exit, Restart, Options) et de le transmettre à l engin simulateur. Noter qu un Restart est transmis par un Stop suivi d un Start. Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-13--2007-01-31-10:00 2-13 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-16--2007-01-31-10:00 2-16 Contrôleur de Simulation DIAGRAMMES OBJETS Diagrammes des entités- relations (ERD) comprennent: l Les Entités dans le l Les relations entre ces entités Diagrammes d'interaction d'objets donnent: l Les Objets et les Classes dans le Système l Les Relations entre les Objets l Les Interfaces Objets l Les Flux de Données entre les Objets l Méthodes d'appels l La suite des Appels (optionnel) Diagrammes de Booch montrent: Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-14--2007-01-31-10:00 2-14 l Les Relations de Dépendance entre les Classes Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-17--2007-01-31-10:00 2-17 Engin de Simulation DIAGRAMMES DE RELATION - ENTITÉ (0) sans modèle de simulation Il attend un message du type EXTRACT venant du contrôleur de simulation. (1) en inactivité Il attend un message MODIFY ou START venant du contrôleur de simulation. (2) en exécution Il peut être interrompu par un signal SIGUSR1 venant du contrôleur de simulation et s interrompre lui-même. (3) en pause Il attend un message CONTINUE, STOP, EXIT, MODIFY ou OPTIONS venant du contrôleur de simulation. (4) en flottement Il attend un message du type STOP venant du contrôleur de simulation. Entité 1 Ces symboles sont usuellement utilisés dans les Diagrammes de Relations d'entités (ERD). Relation Entité 2 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-15--2007-01-31-10:00 2-15 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-18--2007-01-31-10:00 2-18 3

DIAGRAMMES DE RELATION - ENTITÉ Programme DIAGRAMMES DE BOOCH Programme Terminal Get_Line Lire les s du Terminal Créer Écrire les s dans Les Diagrammes de Booch utilisent les mêmes symboles de base que les OID, sauf qu'ils montrent la dépendance d'information au lieu des relations de flot de données, dans en option, les suites de fonctions. FILE_TYPE Ouvrir Put_Line Fermer Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-19--2007-01-31-10:00 2-19 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-22--2007-01-31-10:00 2-22 Appel d'un sous-programme d'un autre avec flot de donnée DIAGRAMMES D'INTERACTION D'OBJETS Types de données Paquetage Sous-Programme Types de données Sous-Programme Sous-Programme Ces symboles sont usuellement utilisés dans les Diagrammes de Booch (OID's). Tâche Point d'entrée Point d'entrée MÉTHODOLOGIES DE CONCEPTION Conception Orientée sur le Flux des données Conception Orientée sur la structure des données Conception en temps-réel Note Les trois premières classes sont fortement guidées par le Domaine d'information. Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-20--2007-01-31-10:00 2-20 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-23--2007-01-31-10:00 2-23 DIAGRAMMES D'INTERACTION D'OBJETS Terminal Get_Line Programme ID ID ID FILE_TYPE Nom Ouvrir Put_Line Fermer Conception Orientée sur les Flux de Données l Utilise les caractéristiques du flot d'information pour construire la structure du programme l Deux techniques d'analyse de conception: m Conception et Analyse des Transformations - le flot d'information établissent les frontières entre les données d'entrée et de sortie (i.e., entrées, traitement, et la sortie sont trois éléments clés du flot de données) m Conception et Analyse Transactionnelles - un élément d'information engendre un flot pour sélecter parmi plusieurs alternatives. l Les Diagrammes de Flux de Données (DFD) sont habituellement utilisés pour représenter le flot des données Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-21--2007-01-31-10:00 2-21 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-24--2007-01-31-10:00 2-24 4

Conception Orientée Flux de Données Analyse des Transformations et de Conception Étapes de conception: l Réviser le modèle fondamental du l Réviser et raffiner les DFD pour le logiciel l Déterminer les caractéristiques des transformations et des transactions des DFD l Isoler le centre des transformations en spécifiant les flots d'entrée et de sortie l Effectuer la factorisation de premier niveau - dériver l'architecture d'après les parties majeures des DFD de la structure du programme l Effectuer la factorisation de deuxième niveau -- dériver des bulles individuelles des DFD pour les modules dans la structure du programme. l Raffiner cette première ébauche de la structure du programme -- maximiser la cohésion, minimiser les redondances et construire une structure hiérarchique. S Conception Orientée sur les Structures de données l Les trois méthodes clés sont: m Le de Développement de Jackson - se concentre sur le processus de modélisation et de contrôle m Construction logique de Programmes (Warnier) - vue rigoureuse de la structure de donnée et s'oriente vers la conception procédurale détaillée m Développement de structuré en fonction des données (Orr) - inclut l'analyse des flot de données avec les deux méthodes précédentes l C'est une technologie des années 1970 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-25--2007-01-31-10:00 2-25 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-28--2007-01-31-10:00 2-28 Conception Orientée Flux de Données Analyse Transactionnelle et de Conception Étapes de conception: l Réviser le modèle fondamental du l Réviser et raffiner les DFD pour le logiciel l Déterminer les caractéristiques des transformations et des transactions des DFD l Isoler le centre de la transaction et les caractéristiques du flot pour chaque action l A partir du DFD, établir une structure du logiciel souple pour le traitement des transactions l Factoriser et raffiner la structure de la transaction et la structure de chaque action l Raffiner cette première ébauche de la structure du programme -- maximiser la cohésion, minimiser les redondances et construire une structure hiérarchique. CONCEPTION ORIENTÉE-OBJET (OOD) l S'intéresser à créer un modèle du réel l Les objets représentent le domaine d'information, et les opérations associées avec cette information sont groupées avec les objets. l Les messages (interfaces) fournissent un moyen par lequel les opérations sont invoquées l L'organisation des objets avec leurs opérations associées prennent place - les abstractions (représentation) de données et procédurales sont combinées dans une seule composante de programme appelé objet ou un paquetage l Les représentations OOD sont plus dépendantes du langage Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-26--2007-01-31-10:00 2-26 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-29--2007-01-31-10:00 2-29 Conception Orientée sur les flot de données - Conception Heuristique l Minimiser la redondance et maximiser la cohésion l Minimiser les déploiements et s'efforcer de regrouper à mesure que la profondeur augmente l Minimiser les effets de bord; garder la portée de l'effet du module à l'intérieur du contrôle du module l Évaluer les interfaces du module pour réduire la complexité et la redondance; améliorer la consistance du module l Identifier les modules dont les fonctions sont prévisibles et testables l S'efforcer d'avoir un seul point d'entrée et une seule sortie l Organiser le logiciel en fonction des contraintes de conception et les besoins de portabilité Définitions l Objet - une composante du monde réel élaborée dans le domaine du logiciel ou comme un item d'information l Opérations ou Méthodes - processus qui agit sur les objets pour transformer leur structure interne de données ou fournir de l'information sur leur structure interne de données l Message - une requête à un objet pour effectuer une de ses opérations l Classe - un ensemble de caractéristiques communes à plusieurs objets l Instance - un objet individuel d'une classe Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-27--2007-01-31-10:00 2-27 Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-30--2007-01-31-10:00 2-30 5

Étapes de la conception Orientée-Objet l Identifier les objets l Identifier les attributs des objets l Identifier les opérations qui s'appliquent à ces objets l Établir les interfaces de ces objets avec le monde extérieur ( spécification des paquetages d'ada peuvent être utilisées si Ada est le langage) l Implémenter les objets (le corps des paquetages d'ada) l Une représentation graphique peut être utilisée : les diagrammes de Booch et les diagrammes d'interaction sont recommandés Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-31--2007-01-31-10:00 2-31 CONCEPTION EN TEMPS-RÉEL l Comprend tous les aspects du logiciel conventionnel en plus d'introduire simultanément des contraintes de synchronisation [timing] et de taille; le code doit satisfaire à ces contraintes. l Toutes les classes de conception ( architecturale, procédurales, et basée sur les données) deviennent plus complexes dues aux contraintes de temps engendrées par le temps réel. l La modélisation mathématique et la simulation sont des outils répandues pour la conception en temps-réel. Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-32--2007-01-31-10:00 2-32 Préoccupation des Systèmes en Temps-Réel l Gestion des interruptions et changements de contexte l Temps de Réponse l Taux de transfert des données l Performance de l'uct et du (throughput) l Allocation des ressources et gestion des priorités l Synchronisation des tâches et communication inter-tâches Ingénierie du Logiciel avec Ada -- Louis Granger--m2--GL10-33--2007-01-31-10:00 2-33 6