EDITIONS ENI : 06. UML 2. Analyse et conception
Organisme
44812 ST HERBLAIN CEDEXVoir toutes ses formationsAutres organismes proposant cette formation
Durée
Modalités
- Classe virtuelle
- Présentiel
Par les stagiaires, qui en début et fin de formation, réalisent une auto-évaluation de leurs connaissances et compétences en lien avec les objectifs de la formation.
Prix
Public
Développeurs, architectes logiciels, analystes, chefs de projets…
Pré-requis
Connaître la programmation orientée objet.
Objectifs pédagogiques
- Découvrir les différentes phases de la modélisation objet en UML
- Savoir traduire un besoin fonctionnel en s'appuyant sur les diagrammes UML
- Appréhender UML de façon opérationnelle sur toutes les étapes du projet de développement
- Maitriser les bonnes pratiques de conception logicielle fondamentale
Programme détaillé
Le modèle objet, oui mais pourquoi ? (0,25 jour)
• Quels sont les apports du modèle objet ?
• Une analyse plus simple et proche du réel
• Les concepts associés : abstraction, encapsulation, héritage, polymorphisme, …
• Vers une plus grande flexibilité, évolutivité et réutilisation
• Les principes de l'approche objet
- Evolution des techniques de conception de logiciels
- Evolution de la gestion de l'information
- Les apports de la conception objet
- Les principaux modèles
• Les caractéristiques des objets
- Objets et messages
- Les relations entre classes et objets
- Encapsulation et réutilisation
- Héritage et polymorphisme
Présentation d'UML (0,25 jour)
• Les objectifs d'UML
• L'historique d'UML
- Les besoins initiaux
- Les apports successifs des différentes versions
• Les nouveautés d'UML 2
• Les axes et les vues de modélisation UML
• Présentation générale des différents diagrammes
• Quelle démarche adopter avec UML ?
- Présentation de différentes démarches de modélisation
• Les outils pour UML
- Les fonctionnalités attendues d'un AGL (Atelier de Génie Logiciel)
- Présentation et comparatif de plusieurs outils de modélisation actuels
• Travaux pratiques :
- Installation d’un AGL et présentation de son interface pour la création de diagrammes UML
- Présentation du cahier des charges de l’application à modéliser qui servira d’étude de cas pendant la formation
Introduction aux méthodologies Agiles - Comment les utiliser avec UML ? (0,25 jour)
• Comment les besoins guident la démarche ?
• Notions fondamentales
- Construction incrémentale et itérative
- Les différentes activités et phases
• Travaux pratiques :
- Identification des principales fonctionnalités du projet étudié
- Découpage itératif des fonctionnalités et priorisation
La modélisation des besoins : L'axe fonctionnel (1 jour)
• Comment commencer ?
• Introduction aux méthodes permettant de recueillir les besoins d'un système
• L'analyse fonctionnelle à partir du cahier des charges
- Analyser et identifier pour réaliser la description des cas d'utilisation
- Identification des différents scénarii
• Des cas d'utilisation au diagramme de cas d'utilisation
- Les éléments de notation du diagramme de cas d'utilisation
• Finaliser le diagramme de cas d'utilisation
- Les relations entre les cas d'utilisation, les différents types d'acteurs, les sous-systèmes, …
- Préparer l'axe de modélisation suivant
• Travaux pratiques :
- Identification des cas d’utilisation à partir du cahier des charges
- Réalisation de diagrammes de cas d’utilisation
- Identification des différents scénarii pour chaque cas d’utilisation
- Réalisation de la représentation textuelle des cas d’utilisation pour chaque scénario
La modélisation des comportements du système et des objets : L'axe dynamique (1 jour)
• Les notions relatives à la modélisation de la dynamique
- Les messages, les événements et les états
• Les diagrammes d'interaction
- Le diagramme de séquence et ses nouveautés en UML 2
- Le diagramme de communication
• Les diagrammes complémentaires apportés par UML 2
- Le diagramme de timing
- Le diagramme de vue d'ensemble des interactions
• Formalisation des scénarii en diagrammes d'interactions
• Modélisation des activités : le diagramme d'activité
• Modélisation du cycle de vie des objets : le diagramme d'états-transitions
• Travaux pratiques :
- Réalisation de diagrammes de séquence à partir de scénarii identifiés
- Réalisation d’un diagramme de communication pour un scénario simple
- Réalisation d’un diagramme de vue d’ensemble des interactions pour une fonctionnalité utilisateur
- Identification des objets du système à partir des diagrammes de l’axe dynamique
La modélisation de la structure des objets : L'axe statique (1 jour)
• Identification des classes à partir des objets identifiés dans les axes de modélisation précédents
• Le formalisme du diagramme de classe
- Représentation des classes concrètes et classes abstraites
- La notion de stéréotypes
• Première représentation des classes d'objets sur le diagramme de classe
- Les attributs et opérations membres
- Les types de données
- La visibilité des membres
• Les associations entre classes
- Liens d'associations, rôles, cardinalité, navigation…
• Les différents types d'associations
- L'agrégation et la composition
- La généralisation et la spécialisation : modélisation de l'héritage
- Définir des contraintes sur les associations
• Utilisation des interfaces
- Les spécificités des interfaces
- La relation de réalisation
• Identifier et représenter des objets spécifiques
- Le diagramme d'objets
- Le diagramme de structure composite
• Travaux pratiques :
- Identification des classes candidates à partir des objets découverts
- Création du diagramme de classe, ajout des attributs et des méthodes
- Réalisation des associations entre classes
- Finalisation du diagramme de classe et aperçu de la génération de code
- Création d’un diagramme d’objets sur des objets pertinents
La modélisation de l'architecture du système (0,25 jour)
• L'architecture logicielle et matérielle
• Organiser l'architecture logicielle du système avec ses objets
- Identification des paquetages (packages) fonctionnels
- Identification des couches logicielles
- La modélisation des paquetages et de leurs relations : Le diagramme de paquetage
• Des objets aux composants
- Identification des composants logiciels par assemblage d'objets
- Le diagramme de composants
• Introduction à l'architecture matérielle
- Décrire le système dans son environnement de fonctionnement
- Présentation du diagramme de déploiement
• Travaux pratiques :
- Identification des composants logiciels techniques à partir des assemblages de classes
- Regroupement de classes techniques et fonctionnelles existantes dans un diagramme de paquetage
- Création d’un diagramme de composants
- Présentation d’un diagramme de déploiement