Aller au contenu

Semaine 3 : Jour 1 - Modélisation avec UML (Use Cas & Diagramme de Classe) & MCD (Merise) - PostgreSQL

Formation Java / Spring Boot pour développeurs COBOL


Modélisation & PostgreSQL

Objectifs

À l’issue de cette journée, vous serez capable de :

L’objectif n’est pas de devenir expert.e UML et Merise, mais d’être opérationnel.


Mise en contexte (COBOL → UML → Java)

En COBOL :

En Java moderne :

UML est un langage de communication. Il nous sert pour savoir quoi coder.


Qu’est-ce que UML ?

UML = Unified Modeling Language (voir le cours complet dont le lien est plus haut)

UML permet de :

UML n’est pas réservé aux architectes, un.e développeur.euse Java doit savoir lire les diagrammes.


Les diagrammes UML utiles pour un développeur Java

Il existe de nombreux diagrammes UML, mais 90 % du temps, vous utiliserez :

  1. Diagramme de cas d’utilisation (Use Case)
  2. Diagramme de classes
  3. Diagramme de séquences

Aujourd’hui : focus uniquement sur ces deux-là


DIAGRAMME DE CAS D’UTILISATION (USE CASE)

Diagramme de cas d’utilisation : à quoi ça sert ?

Un Use Case sert à :

Il répond à la question : “Qu’est-ce que le système doit permettre de faire ?”


Éléments d’un Use Case


Exemple – Use Case bancaire


Lecture d’un Use Case

Exemple : “Un client peut consulter le solde de ses comptes.”

Ce n’est pas :

C’est un besoin métier !

En Java : On formalise d’abord puis on code.


Travaux pratiques (Use Case)

TP 1 – Identifier les Use Cases

Thématique : Gestion de comptes bancaires ou reprendre le cas de Gestion de Location (semaine 2)

Consignes :

  1. Lister les acteurs
  2. Lister les actions possibles
  3. Vérifier qu’aucun terme technique n’apparaît
  4. Reformuler si nécessaire

Livrable :


Proposition de corrigé du TP1

Acteur : Client

Acteur : Conseiller


DIAGRAMME DE CLASSES

Diagramme de classes : rôle clé pour le développeur ou la développeuse

Le diagramme de classes sert à :

C’est la carte du territoire Java.


Éléments d’un diagramme de classes

Vous le savez déjà, comme en Java, une classe UML contient :

Exemple :

Compte
----------------
- numero : String
- solde : BigDecimal
----------------
+ crediter()
+ debiter()

Visibilité UML et Java

UML Java
+ public
- private
# protected

Cette correspondance est fondamentale.


Relations UML

Pas d’inquiétude, nous allons voir ceci en détail dans le cours sur les cardinalités (MCD) et les multiplicités (UML)

Association

Multiplicité


Exemple : Relation Client et Compte

Lecture UML :

Traduction Java :

class Client {
    private List<Compte> comptes;
}

et pour le Compte :

class Compte {
    private Client titulaire;
}

Héritage avec UML

UML :

Compte
  ▲
  |
CompteCourant
CompteEpargne

Java :

public abstract class Compte { }
public class CompteCourant extends Compte { }
public class CompteEpargne extends Compte { }

Diagramme de classes

Classes principales :

Relations :


Travaux pratiques (Diagramme de classes)

– Construire le diagramme de classes

Consignes :

  1. Identifier les classes
  2. Définir les attributs principaux
  3. Ajouter les méthodes métier
  4. Définir les relations
  5. Vérifier la cohérence métier

Corrigé – TP2


UML et Java : ce qu’on attend en entreprise

En pratique :

Les logiciels qui utilisent UML ne permettent pas toujours de générer le code, mais il vous guide.


Erreurs fréquentes

  1. Confondre Use Case et méthode Java
  2. Mettre de la technique dans un Use Case
  3. Mettre trop de détails dans UML
  4. Confondre diagramme de classes et diagramme de données
  5. Ignorer les multiplicités
  6. Oublier la visibilité
  7. Ne pas faire le lien UML ↔ Java
  8. Penser que UML est “théorique”
  9. Vouloir tout modéliser
  10. Refuser UML par habitude COBOL

Avancement

Aujourd’hui, vous avez :

À partir de maintenant, le code doit respecter le modèle.


Synthèse de la journée

Vous savez maintenant :


Préparation du jour suivant

On abordera :