Introduction à UML
Parler un langage commun
- L'importance de la modélisation
- Une communication précise et concise
- L'évolution d'UML
Éléments d'UML
- Blocs de construction : entités, relations et diagrammes
- Vues d'un projet : spécification, conception, mise en œuvre, traitement et déploiement
- Niveaux de détail : visualisation, spécification et construction
Concepts des techniques orientées objet
- Objets et classes
- Liens et associations
- Héritage et polymorphisme
Modélisation de la structure d'un système
Spécification des classes
- Modélisation de types définis par l'utilisateur en tant que classes
- Représentation des informations sous forme d'attributs
- Représentation des fonctionnalités sous forme d'opérations
Identification des relations entre classes
- Dépendances
- Associations
- Agrégation et composition
- Généralisation
Diagrammes d'objets/classes : le cœur d'UML
- Représentation de classes et leurs relations
- Représentation d'un instantané du système avec les diagrammes d'objets
- Définition de modèles d'informations avec des diagrammes de classe
Modélisation du comportement d'un système
Diagrammes des cas d'utilisation : description des besoins utilisateurs
- Représentation des limites du système
- Acteurs et cas d'utilisation
- Notations complémentaires
Diagrammes de séquence et de communication : représentation de scénarios types
- Événements et signaux
- Chronologie des opérations
- Réalisation de cas d'utilisation dans l'optique du développement
- Conversion entre diagramme de séquences et diagramme de communication
Expression des aspects temps réel
- Messages synchrones et asynchrones
- Représentation des contraintes temporelles et des délais de transmission
- Mise en oeuvre des diagrammes de temps
Représenter des machines d'état
Diagrammes d'état : modélisation du comportement sous forme d'états
- États, transitions et événements
- Sous-états concurrents
- États historiques et états synchronisés
Diagrammes d'activités : spécification de la logique comportementale
- Modélisation des workflows
- Partitionnement des activités en utilisant les lignes de visibilité
- Concurrence et synchronisation des activités parallèles
Modélisation architecturale
Paquetages et interfaces
- Distinction entre classes et interfaces
- Publication des interfaces des classes et des paquetages
- Utilisation des interfaces
Diagrammes de composants et de déploiement
- Description des dépendances
- Déploiement des composants sur des fils d'exécution, des processus et des processeurs
- Utilisation de diagrammes de structure composite pour décrire la structure interne
Design patterns
- Patterns, mécanismes et frameworks
- Représentation des design patterns
- Référencement de design patterns
Utilisation d'UML
Architecture MDA (Model-Driven Architecture)
- MOF (Meta-Object Facility)
- CWM (Common Warehouse Meta-model)
Phases du cycle de vie
- Utilisation d'UML dans le Processus Unifié
- Modélisation des processus métier
- Récupération des spécifications
- Analyse système
- Conception de logiciels