Dans cette formation, vous apprendrez les concepts, le vocabulaire, et la modélisation avec le langage UML 2.
Le modèle objet, oui mais pourquoi ?
- 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, etc.
- 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
- 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 ?
- 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
- 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, etc.
- 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
- 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
- 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, etc.
- 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
- 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
- Appréhender les objectifs d’UML et de la modélisation
- Utiliser un atelier de génie logiciel pour modéliser
- Décrire les vues et les axes de modélisation avec UML
- Maitriser le formalisme du langage de modélisation UML
- Appréhender comment et pourquoi UML est utilisé dans les méthodes actuelles de gestion de projet
- Intégrer UML dans les différentes phases d’un projet
- Adopter une démarche projet associée à UML telle que le Processus Unifié ou une méthode Agile
- Modéliser les besoins dans l’axe fonctionnel et construire un diagramme de cas d’utilisation
- Identifier les scénarii principaux et secondaires pour ensuite modéliser l’axe dynamique
- Modéliser l’axe dynamique avec les diagrammes de séquence, de communication, et les autres diagrammes afin de découvrir les interactions et les objets du système
- Modéliser la structure des objets de l’axe statique avec le diagramme de classe, d’objet, de composants
- Modéliser l’architecture du système pour concevoir les composants et les livrables ainsi que la stratégie de déploiement du système final
Depuis votre domicile ou votre entreprise, vous rejoignez un environnement de formation en ligne, à l’aide de votre ordinateur, tout en étant éloigné.e physiquement du/de la formateur.trice et des autres participant.e.s. Vous êtes en totale immersion avec le groupe et participez à la formation dans les mêmes conditions que le présentiel.
En début et en fin de formation, vous réalisez une auto-évaluation de vos connaissances et compétences en lien avec les objectifs de la formation. L’écart entre les deux évaluations permet ainsi de mesurer vos acquis.
Cette formation s’adresse aux développeur.euse.s objet, analystes programmeur.euse.s, architectes et chef.fe.s de projets techniques.
Prérequis :
Avoir une expérience de programmation orientée objet quel que soit le langage d’origine.
Vous recevez une attestation de suivi de cours CPI Formations à la fin de cette formation, pour autant que le taux de présence atteigne 80%.
Intervenant
Intervenant.e de la formation
Intervenant.e de la formation
La formation est animée par un.e professionnel.le de l’informatique et de la pédagogie, dont les compétences techniques, professionnelles et pédagogiques ont été validées par des certifications et/ou testées et approuvées par les éditeurs et/ou notre équipe pédagogique. Il/Elle est en veille technologique permanente et possède plusieurs années d’expérience sur les produits, technologies et méthodes enseignés. Il/Elle est présent.e auprès des stagiaires pendant toute la durée de la formation.