Les objectifs de la formation
- 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
- Maîtriser les bonnes pratiques de conception logicielle fondamentale
A qui s’adresse cette formation ?
Pour qui
- Développeurs
- Architectes logiciels
- Analystes
- Chefs de projets…
Prérequis
- Connaissance d’un langage de programmation orienté objet
Le programme
1 – Introduction et prise en main du sujet
- Processus de développement : gestion de projet en cascade vs agile – la place des activités de spécification et de conception
- Conception Orientée Objet : séparation des préoccupations et limitation des dépendances – introduction à UML
2 – Définir le système à réaliser
- S’approprier le métier : au travers de l’étude de cas, comprendre les processus métier (diagramme d’activité) et les informations du domaine (diagramme de classe)
- Spécifier les exigences – au travers de l’étude de cas, définir et formaliser dans un document lisible et rigoureux – Les exigences fonctionnelles : identifier les acteurs et les cas d’utilisation du système – Les exigences non fonctionnelles à l’aide de l’approche FURPS – Le détail des interfaces du système
- Prendre en main le plan de développement projet : objectifs et planification des différentes itérations/sprints de l’étude de cas
3 – Concevoir le système logiciel – Les fondamentaux
- Définir la plate-forme technique : définir l’architecture matérielle (diagramme de déploiement), choisir le framework logiciel
- Concevoir un code source répondant aux exigences, maintenable et évolutif
- Définir une architecture du code : le pattern en couches MVC, étendu au système entier
- Concevoir les attributs : attributs identifiants et dérivés – association entre classes (diagramme de classe)
- Concevoir les traitements et la communication entre classes (diagramme de séquence) : utiliser les scénarios de cas d’utilisation – répondre aux exigences fonctionnelles, séparer les préoccupations selon MVC
- Affiner la structuration du code source : affiner la structuration en packages (diagramme de packages), factoriser du code avec la généralisation – du bon usage de l’héritage, faire communiquer les classes en limitant les dépendances : utilisation des interfaces et des singletons – pattern de communication requête/notification, gérer les états (diagramme d’états)
- Concevoir les composants déployables : définir les composants et leurs interfaces (diagramme de composant), définir le déploiement des composants (diagramme de déploiement)
4 – Pour aller plus loin
- Compléments sur les processus itératifs/agiles
- Le processus TUP (Two Tracks Unified Process) et l’approche MDA (Model Driven Architecture)
- Mettre en place UML dans l’établissement
Thèmes : Analyse, Conception et modélisation