Analyse Analyse, Conception des , Conception des Systèmes Informatiques Système

Analyse Analyse, Conception des , Conception des Systèmes Informatiques Systèmes Informatiques Méthod Méthode e d’analyse d’analyse et de et de conception conception Unified Process Unified Process O. Boissier, SMA/G2I/ENS Mines Saint-Etienne, Olivier.Boissier@emse.fr, Octobre 2005 2 Sommaire Sommaire Objectifs d’un processus d’ingénierie logicielle • Modèles UML (rappels) • Processus de développement « Unifié » Une partie du matériau de ce cours est issue du cours de Corinne CAUVET - Université d ’Aix-Marseille 3 Objectifs d Objectifs d ’un processus ’un processus de développement de développement • Un processus définit QUI fait QUOI, QUAND et COMMENT pour atteindre un certain objectif.  Construction des modèles d ’un ou plusieurs systèmes,  Organisation du projet,  Gérer le cycle de vie du projet de A à Z,  Gérer les risques,  Obtenir de manière répétitive des produits de qualité constante. 4 Activités de développement Activités de développement (rappel) (rappel) • Planification (Étude de la faisabilité) • Spécification des besoins • Analyse (Spécification formelle) • Conception (Spécification technique) • Implémentation (Codage) • Tests unitaires • Intégration et tests • Livraison • Maintenance 5 Développement (rappel) Développement (rappel) Modèle en cascade Modèle en cascade Analyse Conception Implémentation Tests Maintenance 6 Développement (rappel) Développement (rappel) Modèle en V Modèle en V Implémentation Expression des besoins Validation des besoins Validation fonctionnelle Analyse Conception Du Système Tests du système Tests des composants Conception des composants vérifie vérifie vérifie vérifie 7 Développement (rappel) Développement (rappel) Modèle en spirale Modèle en spirale Conception Analyse Spécifications Validation Tests Implémentation 8 Sommaire Sommaire Objectifs d’un processus d’ingénierie logicielle Modèles UML (rappels) • Processus de développement « Unifié » 9 Vocabulaire UML (rappel) Vocabulaire UML (rappel) Constituants de base Relations Diagrammes Struct. Comp. Group. Annot. Cas d ’utilisation Classe Classe Active Interface Composant Collaboration Noeud Interaction Machine d ’état Package Modèle Sous-système Framework note Dépendances Associations Généralisation D. Cas d ’utilisation D. de classe D. d ’objet D. de séquence D. de collaboration D. d ’état/transition D. d ’activité D. de composant D. de déploiement + des mécanismes d ’extensions 10 Diagrammes disponibles Diagrammes disponibles (rappel) (rappel) Use Case Diagrams Use Case Diagrams Diagrammes cas d’utilisation Scenario Diagrams Scenario Diagrams Diagrammes de collaboration State Diagrams State Diagrams Diagrammes de Composants Component Diagrams Component Diagrams Diagrammes de déploiement State Diagrams State Diagrams Diagrammes Objets Scenario Diagrams Scenario Diagrams Diagrammes Etat-transiition Use Case Diagrams Use Case Diagrams Diagrammes de Séquences State Diagrams State Diagrams Diagrammes de Classes Diagrammes d’activité Modèles dynamique statique ** Possibilité de représenter le même diagramme à des niveaux de détail différents. 11 Diagramme de cas d’utilisation Diagramme de cas d’utilisation objectifs objectifs • Description • de ce que l ’application doit (ou ne doit pas) être capable de prendre en compte, • de la manière dont une organisation ou un système externe doivent interagir avec le système. • Point de vue de l’utilisateur • pour mettre en évidence les services rendus par le système, • pour fixer le périmètre entre le système et son environnement. Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 12 Diagramme de cas d’utilisation Diagramme de cas d’utilisation notation notation Acteur Cas d'utilisation Le diagramme est accompagné d ’un texte organisé décrivant le cas d’utilisation et permettant de mettre en évidence les scénarios (flots d’événements). Un scénario est à un CAS D ’UTILISATION, ce qu ’un objet est à sa classe. Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 13 Diagramme de séquences Diagramme de séquences objectifs objectifs • Validation des cas d ’utilisation, pour comprendre la logique de l ’application. • Complète le diagramme des cas d’utilisation en mettant en évidence les objets et leurs interactions d’un point de vue temporel • Outils de documentation, peu rigoureux, pas tout le temps nécessaires. • Pas de flots de contrôle dans un diagramme de séquence, en faire plutôt un autre. Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 14 Diagramme de séquences Diagramme de séquences notation notation Acteur Objet ou classe Autre objet ou classe Augmenter(3,5) Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement « créer » X « détruire » temps getValue(a) 5,5 Modifier(b) 15 Diagramme de collaboration Diagramme de collaboration objectifs objectifs • Faire apparaître les classes, spécifier l’usage des instances, • Montrer les interactions entre objets par leurs liens et les messages échangés • Mêmes conseils d ’utilisation que les diagrammes de séquences. Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement Name 16 Diagramme de collaboration Diagramme de collaboration notation notation Un Objet Un Autre Objet Un acteur 1:augmenter(3,5) Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement Un Objet 2 : <<créer>> 3 :modifier 17 Diagramme de classes Diagramme de classes objectifs objectifs • Point central de la modélisation du système pour décrire ce que le système doit faire (analyse) et comment il va le faire (conception). • Représentation de la structure statique du système d’information • Modélisation des classes et de leurs relations • un Diagramme de package permet de représenter les dépendances entre les différents package du système. Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 18 Diagramme de classes Diagramme de classes notation notation Une Classe <<Un stéréotype>> +Un attribut public -Un attribut privé #Un attribut protégé +Une opération publique() -Une opération privée() #Une opération protégée() Une classe utilitaire <<Utilitaire>> Une autre classe <<Un stéréotype>> * * Une association Une classe agrégat Une sous-classe Un attribut spécifique Une opération spécifique() 1-Une classe-association -Un attribut porté par l'association Une association navigable Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 19 Diagramme d’objets Diagramme d’objets objectifs objectifs • Appelé aussi diagramme d’instances, il représente aussi la structure statique • représentation des instances • S’utilise de manière ponctuelle pour • montrer l’effet d’une interaction, • représenter des structures complexes (récursives) Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 20 Diagramme d’objets Diagramme d’objets notation notation Un objet : Une classe :Une classe Un Autre Objet Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 21 Diagramme d’états Diagramme d’états- -transitions transitions objectifs objectifs • Représentation du cycle de vie des instances d’une classe • Spécification des états, des transitions entre ces états et des actions associées aux transitions. • S’utilise pour la modélisation de la dynamique de certaines classes Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 22 Diagramme d’états Diagramme d’états- -transitions transitions notation notation Le premier état Entrée/Action Sortie/Action Un autre état [garde]évenement/action Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement do/Action Evénement/Action 23 Diagramme d’activités Diagramme d’activités objectifs objectifs • Représentation • un processus d’une organisation • du comportement d’opérations d ’une classe • Plusieurs points de vue • pour analyser un processus • pour concevoir un objet  Plusieurs acceptions de la notion d’activité • une opération • une étape dans une opération • une action d’un scénario d’un cas d ’utilisation Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 24 Diagramme d’activités Diagramme d’activités notation notation Une activité Une autre activité Une activité résultant d'une synchronisation Une activité nouvelle Une transition Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 25 Diagramme de composants Diagramme de composants objectifs objectifs • Description des composants logiciels et de leurs dépendances • Composant : un fichier de programme source, une bibliothèque, un programme exécutable, réutilisable • Utilisé en conception de logiciel pour allouer les classes et objets aux composants Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 26 Diagramme de composants Diagramme de composants notation notation Un composant Un autre composant Une dépendance fait référence aux services offerts par un composant. La flèche va de l'utilisateur vers le fournisseur. Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 27 Diagramme de déploiement Diagramme de déploiement objectifs objectifs • Description • de la configuration matérielle des unités de traitements (hard et soft). • de l’architecture technique, des nœuds et de leur interconnexion • Nœuds de l’architecture : serveurs, postes de travail et périphériques • Les composants sont alloués aux différents nœuds Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 28 Diagramme de déploiement Diagramme de déploiement notation notation Un noeud Un autre noeud Un composant Un autre composant Cas d’utilisation Séquences Collaboration Classes Objets États/transitions Activités Composants Déploiement 29 Liens entre les diagrammes Liens entre les diagrammes Diagramme Composants Diagramme Cas Utilisation Cas d’Utilisation Diagramme Séquences Diagramme Collaboration Diagramme Classes Diagramme Etats Diagramme Déploiement est utilisé par 30 Sommaire Sommaire  Objectifs d’un processus d’ingénierie logicielle  Modèles UML (rappels)  Processus de développement « Unifié » Principes Recueil des besoins, Analyse, Conception Utilisation des diagrammes Processus piloté par les cas d’utilisation Processus centré sur l’architecture Processus guidé par les Patterns 31 • Il n ’existe pas un seul processus de développement, ni de processus standard. • CEPENDANT des caractéristiques essentielles peuvent être mises en avant : • Pilotage par les cas d ’utilisation, • Focalisation sur l ’architecture, • Utilisation de « patrons » de conception (Design Patterns), • Déroulement itératif uploads/Management/ up-global-4pp.pdf

  • 18
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Fev 27, 2021
  • Catégorie Management
  • Langue French
  • Taille du fichier 0.4960MB