Organisme de Formation aux technologies et métiers de L'informatique

Formation UML 2 - Analyse et conception

Utiliser le formalisme UML 2 dans une démarche de développement logiciel

Informations générales

OBJ210
4 jours (28h)
2 350 €HT

Objectifs

Après ce cours, vous serez capable de :

  • Découvrir les différentes phases de la modélisation objet en UML
  • Traduire un besoin fonctionnel en s'appuyant sur les diagrammes UML
  • Expliquer UML de façon opérationnelle sur toutes les étapes du projet de développement
  • Expliquer les bonnes pratiques de conception logicielle fondamentale

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • Développeurs
  • Architectes logiciels
  • Analystes
  • Chefs de projets…

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Connaissance d'un langage de programmation orienté objet

Programme de la formation

Le monde du développement logiciel est aujourd'hui en quête d'agilité. Il s'agit souvent de mettre en œuvre une méthode de gestion de projet agile, favorisant le développement rapide d'un logiciel répondant aux besoins des utilisateurs. Mais qu'en est-il de l'agilité du logiciel lui-même, c'est-à-dire de sa capacité à s'adapter aux nouveaux besoins ? Cette agilité là n'est pas adressée par l'agilité de la méthode, mais par l'application de bonnes pratiques de conception logicielle au niveau du code lui-même. Que le projet adopte une méthode agile ou non, les choix structurants de conception du code doivent être partagés par tous les développeurs. Ces choix doivent donc être définis et formalisés de façon claire et rigoureuse.

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

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

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)

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'entreprise
plus d'infos

Méthode pédagogique

Une présentation des meilleures pratiques de conception d'architecture logicielle (architecture en couches MVC, patterns de communication, la structuration en packages, …) avec UML 2. Etude de cas complète depuis la modélisation du métier jusqu'à la conception, avec le modeleur Enterprise Architect (autre modeleur possible sur demande). Une progression pédagogique très opérationnelle : Les diagrammes sont présentés pour chacune des étapes d'un projet de développement géré de façon agile ou non.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 08/04/2024