SlideShare une entreprise Scribd logo
Analyse et Conception avec UML

  Les diagrammes
 de cas d’utilisation
          blay@unice.fr
     www.polytech.unice.fr/~blay
     IUT Nice-Sophia Antipolis
            Mars 2011

            Site web du module :
     http://anubis.polytech.unice.fr/iut/
                        1
Bibliographie

Principalement :
     • cours IBM : Writing Good Use Cases (2006)
•Voir sur le site web les autres cours.
•Méthodologie en Ingénierie du logiciel, Modélisation Orientée
objet, M.Grimaldi – janvier 2010




                               2
Dict.   U.C.        Process.        Compléments.


                    Plan du cours
   Utilisation d’un dictionnaire du domaine

   Des cas d’utilisations (Use-cases/UC)
      Acteurs, use-cases, system UML


   Processus de construction des Uses-case

   Compléments
                          3 /95
Dict.   U.C.                 Process.                 Compléments.

    UML au travail : Système                       d’inscriptions
    L’université ESU désire automatiser son système d’inscription
‣    Le chef du service des inscriptions établit le programme des cours pour un
     semestre
‣    Un cours peut être offert plusieurs fois
‣    Les étudiants doivent sélectionner 4 cours primaires et 2 cours secondaires
     dans le catalogue des cours proposés
‣    Dès qu’un étudiant s’est inscrit pour un semestre, le système de facturation
     est notifié
‣    Les étudiants peuvent utiliser le système pour modifier leurs choix pendant
     une certaine période de temps après leur inscription
‣    Les enseignants utilisent le système pour consulter leur emploi du temps
     (tableau d’activités en fonction des cours qui tournent)
‣    Les utilisateurs du système d’inscription reçoivent des mots de passe qui
     sont nécessaire à la procédure d’identification
                                          4 /82
Dict.   U.C.             Process.              Compléments.

UML au travail : Guichet      automatique de banque
Le guichet automatique d’une banque (GAB) offre les
services suivants :
    Distribution d’argent à partir d’une carte de la banque
    ou d’une carte Visa.
    Consultation de solde de compte, dépôt en numéraire et
    dépôt de chèques pour les clients de la banque porteurs
    d’une carte de la banque.
De plus,
    Toutes les transactions sont sécurisées.
    Il est parfois nécessaire de recharger le distributeur, .

                               5 /82   Voir UML2 par la pratique
Dict.    U.C.          Process.           Compléments.


          Intérêt du dictionnaire
 Outil de dialogue
 Informel, évolutif, simple a réaliser

 Etablir et figer la terminologie
      –   Permet de figer la terminologie du domaine
          d'application.
      –   Constitue le point d'entrée et le référentiel
          initial de l'application ou du système.
 Homonymie
    Synonymie
    Polysémie                  6 /95
Dict.   U.C.               Process.                 Compléments.

    UML au travail : Système                       d’inscriptions
    L’université ESU désire automatiser son système d’inscription
‣    Le chef du service des inscriptions établit le programme des cours pour
     un semestre
         ‣   Un cours peut être offert plusieurs fois
‣    Les étudiants doivent sélectionner 4 cours primaires et 2 cours
     secondaires dans le catalogue des cours proposés
‣    Dès qu’un étudiant s’est inscrit pour un semestre, le système de facturation
     est notifié
‣    Les étudiants peuvent utiliser le système pour modifier leurs choix pendant
     une certaine période de temps après leur inscription
‣    Les enseignants utilisent le système pour consulter leur emploi du temps
     (tableau d’activités en fonction des cours qui tournent)
‣    Les utilisateurs du système d’inscription reçoivent des mots de passe qui
     sont nécessaire à la procédure d’identification
                                          7 /82
Dict.     U.C.                      Process.                      Compléments.

        UML au travail : Une           ludothèque
(1) Nous voulons informatiser une ludothèque pour favoriser la
consultation des jeux proposés par la ludothèque.
(2) Les adhérents peuvent emprunter des jeux en s’adressant à un
conseiller qui enregistre l’emprunt.
(3)Les jeux empruntés sont rendus à un conseiller....
(4) Un adhérent peut réserver des jeux. Une réservation précise
l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti
quand le jeu revient en rayon.
(5) Pour organiser un événement le conseiller spécialisé doit alors
donner les informations suivantes : les jeux à tester, le nombre maximal et
minimal de participants attendus, la date, et l’heure de début de l’événement.

(6) Un adhérent peut s’inscrire pour participer à un événement à
condition qu’il y ait encore de la place.
(7) Un adhérent peut payer sa cotisation en ligne par un système de
paiement externe
                                               8 /82
Dict.   U.C.             Process.             Compléments.


Les diagrammes de cas d ’utilisation
   Une des notations d ’UML (use-cases)
   But :
    ‣ définir le système du point de vue des utilisateurs

    ‣ définir les limites précises du système

   Notation très simple, compréhensible par tous
   Permet de structurer :
   ‣   les besoins (cahier des charges)
   ‣   le reste du développement
   ‣  la progression d ’un cycle en spirale
   Les cas d'utilisation sont nommés en utilisant la
   terminologie décrite dans le dictionnaire       Jean-Marie Favre
                              9 /95
Dict.      U.C.                          Process.                         Compléments.


Les diagrammes de cas d ’utilisation
    Une Notation très simple, compréhensible par tous




   cf. http://linformalibre.f2lt.fr/index.php?title=Comprendre_Joomla_%C3%A0_l%27aide_d%27UML

                                              10 /95
Dict.     U.C.   ✓Conclusion   Process.          Compléments.



    Bénéfices des use-cases
Organisent les exigences d’un point de vue utilisateur
Définissent les exigences du système comme des
séquences logiques,
Permettent de vérifier que toutes les exigences sont
capturées et qu’elles correspondent à ce qu’attend le
demandeur.
Facilitent l’adéquation des demandeurs
‣           mais aussi des cas de tests, la documentation et la
            réutilisation des exigences.

                                   11 /95
Dict.   U.C.   ✓Conclusion   Process.   Compléments.



Des use-cases, pour qui?
Demandeurs (décrire et approuver)
Utilisateurs (comprendre)
Architectes logiciels (identification
des fonctions)
Concepteurs et développeurs
Testeurs (identifier les tests)
Managers (Planifier)
Rédacteurs de documentation
(prendre un point de vue utilisateur)
                              12 /95
Dict.   U.C.   ✓Conclusion   Process.   Compléments.


Dev. logiciel dirigé par les use-cases




                                13 /95
Dict.   U.C.               Process.                      Compléments.


Processus d’écriture des UC
Trouver les acteurs                      Etudiant     Catalogue
                                                      des cours
                                  Enregistrer des cours
                      Brève description: Ce UC permet à un étudiant
Trouver les UC        d’enregistrer ses cours... Seuls les formations bien
                      construites sont acceptés. Le catalogue des cours est
                      notifié des inscriptions.


                      Description de «Enregistrer des cours»
Décrire les UC        -Flot d’évènements
                           -Pas à pas


                      Specification de «Enregistrer des cours»
Détailler les UC      - Flot d’évènements détaillés
                      - Exigences spéciales
                      - Pre/Postconditions
                               14 /95
Dict.   U.C.          Process.     Compléments.


Processus d’écriture des UC
  Trouver les acteurs

                              Important
  Trouver les UC          C’est un processus
                                 itératif
    Décrire les UC


   Détailler les UC
                        15 /95
Dict.   U.C.          Process.   ✓1. acteurs   Compléments.


Processus d’écriture des UC
  Trouver les acteurs                       Nommer et
                                             brièvement
                                             décrire les
  Trouver les UC                             acteurs
                                             trouvés


    Décrire les UC


   Détailler les UC
                        16 /95
Dict.     U.C.             Process.   ✓1. acteurs   Compléments.


Définir le périmètre du SI : Acteurs
   Définir les acteurs externes
    ‣           physiques et logiques
    ‣           rôle et entité concrète
« Un acteur est une personne ou une chose qui
  va interagir avec le système »




                                   17 /95
Dict.     U.C.             Process.   ✓1. acteurs   Compléments.


Définir le périmètre du SI : Acteurs
   Définir les acteurs externes
    ‣           physiques et logiques
    ‣           rôle et entité concrète
« Un acteur est une personne ou une chose qui
  va interagir avec le système »



                                     Etudiant




                                   17 /95
Dict.     U.C.             Process.   ✓1. acteurs   Compléments.


Définir le périmètre du SI : Acteurs
   Définir les acteurs externes
     ‣           physiques et logiques
     ‣           rôle et entité concrète
« Un acteur est une personne ou une chose qui
  va interagir avec le système »



                                      Etudiant
    Chef du
  Service des
  inscriptions
                                    17 /95
Dict.     U.C.                Process.   ✓1. acteurs         Compléments.


Définir le périmètre du SI : Acteurs
   Définir les acteurs externes
     ‣           physiques et logiques
     ‣           rôle et entité concrète
« Un acteur est une personne ou une chose qui
  va interagir avec le système »


                                                              Système
                          Enseignant     Etudiant           de facturation
    Chef du
  Service des
  inscriptions
                                       17 /95
Dict.     U.C.              Process.   ✓1. acteurs   Compléments.



Client
                              Acteurs
         Un Acteur =
         ‣        élément externe qui interagit avec le système
         ‣        rôle qu’un utilisateur joue par rapport au système
              ex: un enseignant, un guichetier
         Une même personne peut jouer plusieurs rôles
              ex: Marie est enseignante et étudiante
                  Maurice est directeur mais peut faire le guichetier
         Plusieurs personnes peuvent jouer un même rôle
              ex: Paul et Pierre sont deux clients
         Un acteur n’est pas forcément un être humain
              ex: un distributeur de billet peut être vu comme un acteur; un
                gestionnaire de mot de passes
                                       18 /95
Dict.      U.C.                Process.   ✓1. acteurs     Compléments.


               Description des acteurs
      Client


           Pour chaque acteur :
               ‣   choisir un identificateur représentatif de son rôle
                   (un bon nom décrit la responsabilité des acteurs)
               ‣   donner une brève description textuelle
                             Un guichetier est un employé de la banque chargé
                             de faire l’interface entre le système informatique et
                            les clients qu’il reçoit au comptoir. Le guichetier peut
                              réaliser les opérations courantes : création d ’un
     Guichetier
                                   compte, dépôt et retrait d ’argent, etc.
Jean-Marie Favre                          19 /95
Dict.   U.C.          Process.   ✓1. acteurs   Compléments.



         Trouver les acteurs
Qui ou quoi utilise le système?
Qui ou quoi obtient de l'information de ce système ?
Qui ou quoi fournit des informations au système ?
Où dans la compagnie le système est-il utilisé ?
Qui ou quoi supporte et maintient le système?
Quels autres systèmes utilisent ce système?


                       20 /95
Dict.   U.C.                 Process.    ✓1. acteurs      Compléments.



 Décrire les acteurs
Student :
    A person who signs
      up for a course                                         Student


- Qu'est-ce ou que l'acteur représente
- Pourquoi l'acteur est nécessaire
- Quel est l’intérêt de l’acteur dans le UC ?
                                                   Professor        Registrar




                                     21 /95
Dict.   U.C.                 Process.    ✓1. acteurs      Compléments.



 Décrire les acteurs
Student :
    A person who signs
      up for a course                                         Student


- Qu'est-ce ou que l'acteur représente
- Pourquoi l'acteur est nécessaire
- Quel est l’intérêt de l’acteur dans le UC ?
                                                   Professor        Registrar



                                                          Course Catalog
                                                             System

                                     21 /95
Dict.   U.C.             Process.   ✓1. acteurs   Compléments.

UML au travail : Guichet      automatique de banque
Le guichet automatique d’une banque (GAB) offre les
services suivants :
    Distribution d’argent à partir d’une carte de la banque
    ou d’une carte Visa.
    Consultation de solde de compte, dépôt en numéraire et
    dépôt de chèques pour les clients de la banque porteurs
    d’une carte de la banque.
De plus,
    Toutes les transactions sont sécurisées.
    Il est parfois nécessaire de recharger le distributeur, .

                              22 /82   Voir UML2 par la pratique
Identification des acteurs
Quelles sont les entités externes qui interagissent avec le GAB ?
                                     •     Porteur de carte
Phrase 1                             •     Carte de crédit
                                     •     Lecteur de carte
                                     •     Distributeur de billets



Phrase 2                         •       Porteur de carte
                                         client de la banque


Phrase 3                          Le système est sécurisé (par
                                       quoi?)
                                        1. Le système
                                             d’autorisation
                                        2. Le système
                                             d’information de
                                             la banque
Phrase 4                             •      Opérateur de
                                            maintenance
Dict.     U.C.                      Process.   ✓1. acteurs        Compléments.

        UML au travail : Une                            ludothèque
(1) Nous voulons informatiser une ludothèque pour favoriser la
consultation des jeux proposés par la ludothèque.
(2) Les adhérents peuvent emprunter des jeux en s’adressant à un
conseiller qui enregistre l’emprunt.
(3)Les jeux empruntés sont rendus à un conseiller....
(4) Un adhérent peut réserver des jeux. Une réservation précise
l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti
quand le jeu revient en rayon.
(5) Pour organiser un événement le conseiller spécialisé doit alors
donner les informations suivantes : les jeux à tester, le nombre maximal et
minimal de participants attendus, la date, et l’heure de début de l’événement.

(6) Un adhérent peut s’inscrire pour participer à un événement à
condition qu’il y ait encore de la place.
(7) Un adhérent peut payer sa cotisation en ligne par un système de
paiement externe                 24 /82
Dict.   U.C.   Process.   ✓1. acteurs   Compléments.



Diagramme de contexte




               25 /95
Le GAB est un système fondamentalement
mono-utilisateur: à tout instant, il n’y a qu’une
instance de chaque acteur (au maximum)
connecté au système!




Pour simplifier, nous utiliserons le terme Client banque pour
l’acteur Porteur de carte client de la banque.
Diagramme de contexte statique
Les acteurs humains Client banque et Porteur de carte sont
mutuellement exclusifs, ce qui n’est pas implicite d’après les
multiplicités des associations. On peut ajouter une contrainte
{XOR} (ou exclusif)
Une autre solution, un peu plus élaborée, consiste à
considérer que Client banque est une spécialisation de
Porteur de carte (héritage entre acteurs)
Dict.     U.C.                      Process.   ✓1. acteurs        Compléments.

        UML au travail : Une            ludothèque
(1) Nous voulons informatiser une ludothèque pour favoriser la
consultation des jeux proposés par la ludothèque.
(2) Les adhérents peuvent emprunter des jeux en s’adressant à un
conseiller qui enregistre l’emprunt.
(3)Les jeux empruntés sont rendus à un conseiller....
(4) Un adhérent peut réserver des jeux. Une réservation précise
l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti
quand le jeu revient en rayon.
(5) Pour organiser un événement le conseiller spécialisé doit alors
donner les informations suivantes : les jeux à tester, le nombre maximal et
minimal de participants attendus, la date, et l’heure de début de l’événement.

(6) Un adhérent peut s’inscrire pour participer à un événement à
condition qu’il y ait encore de la place.
(7) Un adhérent peut payer sa cotisation en ligne par un système de
paiement externe
                                              30 /82
Dict.   U.C.          Process.   ✓2. U.C.   Compléments.


Processus d’écriture des UC
  Trouver les acteurs              Nommer et
                                    brièvement décrire
                                    les UC trouvés
  Trouver les UC                   Créer un
                                    diagramme de UC
                                   Etablir la plus-
                                    value métier et les
    Décrire les UC                  risques techniques
                                    des UC

   Détailler les UC
                        31 /95
Dict.   U.C.   Process.   ✓1. UC   Compléments.


 Cas d’utilisation (UC)




               32 /95
Dict.   U.C.                Process.   ✓1. UC   Compléments.


     Cas d’utilisation (UC)
Un cas d’utilisation est un motif cohérent de comportement
‣     réalisé par le système.




                                32 /95
Dict.   U.C.                Process.   ✓1. UC      Compléments.


        Cas d’utilisation (UC)
  Un cas d’utilisation est un motif cohérent de comportement
   ‣     réalisé par le système.
Chaque cas d’utilisation est décrit par une séquence d’actions
connectées, effectuées par un dialogue entre des acteurs et le
système
   ‣     qui produit un résultat observable
   ‣     d’intérêt pour un ou plusieurs acteurs du système.
   ‣     ne révèle pas la structure interne du système.




                                   32 /95
Dict.   U.C.                Process.   ✓1. UC      Compléments.


        Cas d’utilisation (UC)
  Un cas d’utilisation est un motif cohérent de comportement
   ‣     réalisé par le système.
Chaque cas d’utilisation est décrit par une séquence d’actions
connectées, effectuées par un dialogue entre des acteurs et le
système
   ‣     qui produit un résultat observable
   ‣     d’intérêt pour un ou plusieurs acteurs du système.
   ‣     ne révèle pas la structure interne du système.
  Chaque cas d’utilisation est un flot complet et faisant du sens
  du point de vue d’un acteur particulier.


                                   32 /95
Dict.    U.C.              Process.   ✓2. U.C.    Compléments.


           Trouver les use-cases
Quels sont les objectifs de chaque acteur?
‣ Pourquoi l'acteur utiliserait-il le système?

‣ Est-ce que l'acteur créera, stockera, modifiera,
  supprimera ou lira des données dans le système? Si
  oui, pourquoi?
‣ Est-ce que l'acteur nécessite d'informer le système sur
  des événements externes ou des changements?
‣ Est-ce que l'acteur doit être informé de certains
  événements dans le système?
     Quels buts dois-je
  atteindre en utilisant le
         système?                           Acteur
                              33 /95
Dict.     U.C. ✓cas d’utilisat.         Process.               Compléments.


                 Cas d’utilisation




  Maintenir le                      Demander un
                                                       Enregistrer ses cours
  Programme                       tableau de service



                                         34 /82
Dict.        U.C. ✓cas d’utilisat.         Process.               Compléments.


                    Cas d’utilisation
Identification des besoins des acteurs
 ‣         Chef du service des inscriptions – maintenir le
           programme des études
 ‣         Enseignant – demander un tableau de service
 ‣         Etudiant – enregistrer ses cours
 ‣         Système de facturation – recevoir les informations de
           facturation du système d’inscription



     Maintenir le                      Demander un
                                                          Enregistrer ses cours
     Programme                       tableau de service



                                            34 /82
Dict.   U.C.   Process.     ✓2. UC           Compléments.


   Nommer un use-case




                           Enregistrer des Cours



               ?
                           Enregistrement de cours
                           Cours
                           Utiliser le système d’enregistrement
                           Accuser réception des cours
               35 /95
Dict.   U.C.                Process.     ✓2. UC           Compléments.


    Nommer un use-case
Le nom doit être unique, intuitif et auto-explicatif




                                         Enregistrer des Cours



                           ?
                                         Enregistrement de cours
                                         Cours
                                         Utiliser le système d’enregistrement
                                         Accuser réception des cours
                              35 /95
Dict.   U.C.                Process.     ✓2. UC           Compléments.


    Nommer un use-case
Le nom doit être unique, intuitif et auto-explicatif
Il doit commencer par un verbe et utiliser une simple
combinaison verbe-nom




                                         Enregistrer des Cours



                           ?
                                         Enregistrement de cours
                                         Cours
                                         Utiliser le système d’enregistrement
                                         Accuser réception des cours
                              35 /95
Dict.   U.C.                Process.     ✓2. UC           Compléments.


    Nommer un use-case
Le nom doit être unique, intuitif et auto-explicatif
Il doit commencer par un verbe et utiliser une simple
combinaison verbe-nom
Définir clairement et sans ambiguïté le gain des résultats
observables




                                         Enregistrer des Cours



                           ?
                                         Enregistrement de cours
                                         Cours
                                         Utiliser le système d’enregistrement
                                         Accuser réception des cours
                              35 /95
Dict.   U.C.                Process.     ✓2. UC           Compléments.


    Nommer un use-case
Le nom doit être unique, intuitif et auto-explicatif
Il doit commencer par un verbe et utiliser une simple
combinaison verbe-nom
Définir clairement et sans ambiguïté le gain des résultats
observables
Placez vous du point de vue de l'acteur qui déclenche le
cas d'utilisation


                                         Enregistrer des Cours



                           ?
                                         Enregistrement de cours
                                         Cours
                                         Utiliser le système d’enregistrement
                                         Accuser réception des cours
                              35 /95
Dict.   U.C.                Process.     ✓2. UC           Compléments.


    Nommer un use-case
Le nom doit être unique, intuitif et auto-explicatif
Il doit commencer par un verbe et utiliser une simple
combinaison verbe-nom
Définir clairement et sans ambiguïté le gain des résultats
observables
Placez vous du point de vue de l'acteur qui déclenche le
cas d'utilisation
Décrire le comportement fournit par le cas d'utilisation
                                         Enregistrer des Cours



                           ?
                                         Enregistrement de cours
                                         Cours
                                         Utiliser le système d’enregistrement
                                         Accuser réception des cours
                              35 /95
Dict.     U.C.                  Process.     ✓2. UC      Compléments.


            Diagramme des UC
  Objectif : visualiser les relations entre acteurs et cas
  d’utilisation (communication)



            Enregistrer ses cours        Consulter
                                    tableau de service
Etudiant                                                      Enseignant

                 S’inscrire


Système de                                                Etablir le
facturation                                          Programme Scolaire
                              Chef du Service
                              Des Inscriptions
                                     36 /95
Dict.    U.C.                     Process.    ✓2. UC           Compléments.


       Communication : un dialogue
L’étudiant se connecte au système
Le système approuve la connexion.
L’étudiant requiert des informations


                                                          Enregistrer
                                       Etudiant           ses cours            Catalogue
                                                                               des cours




   Le système affiche la liste des cours              Le système transmet la requête
     L’étudiant selectionne les cours                 Le Catalogue des cours retourne
                                                       des informations sur les cours.
    Le système affiche l’edt approuvé

                                            37 /95
Dict.   U.C.             Process.   ✓2. UC     Compléments.

UML au travail : Guichet      automatique de banque
Le guichet automatique d’une banque (GAB) offre les
services suivants :
    Distribution d’argent à partir d’une carte de la banque
    ou d’une carte Visa.
    Consultation de solde de compte, dépôt en numéraire et
    dépôt de chèques pour les clients de la banque porteurs
    d’une carte de la banque.
De plus,
    Toutes les transactions sont sécurisées.
    Il est parfois nécessaire de recharger le distributeur, .

                              38 /82   Voir UML2 par la pratique
Dict.   U.C.          Process.   ✓2. UC    Compléments.

     Diagramme des cas d’utilisation
Porteur de carte:
     Retirer de l’argent
Client banque:
     Retirer de l’argent (bien sûr!)
                                                      Acteurs
     Consulter le solde de son compte courant        primaires
     Déposer du numéraire
     Déposer de l’argent (numéraire ou chèque)
Opérateur de maintenance
     Recharger le distributeur
     Maintenir l’état opérationnel
Système d’autorisation (Sys.Auto)
                                                     Acteurs
     Néant                                         secondaires
Système d’information de la banque (SI banque)
     Néant
                              /82
Dict.   U.C.   Process.   ✓2. UC   Compléments.


Diagramme des cas d’utilisation




                 /82
Dict.   U.C.   Process.   ✓2. UC   Compléments.


Diagramme des cas d’utilisation
       amélioration




                  /82
Diagramme des cas d’utilisation sans les
acteurs secondaires
Dict.     U.C.                      Process.    ✓2. UC            Compléments.

        UML au travail : Une            ludothèque
(1) Nous voulons informatiser une ludothèque pour favoriser la
consultation des jeux proposés par la ludothèque.
(2) Les adhérents peuvent emprunter des jeux en s’adressant à un
conseiller qui enregistre l’emprunt.
(3)Les jeux empruntés sont rendus à un conseiller....
(4) Un adhérent peut réserver des jeux. Une réservation précise
l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti
quand le jeu revient en rayon.
(5) Pour organiser un événement le conseiller spécialisé doit alors
donner les informations suivantes : les jeux à tester, le nombre maximal et
minimal de participants attendus, la date, et l’heure de début de l’événement.

(6) Un adhérent peut s’inscrire pour participer à un événement à
condition qu’il y ait encore de la place.
(7) Un adhérent peut payer sa cotisation en ligne par un système de
paiement externe
                                              43 /82
Dict.   U.C.         Process.   ✓2. UC   Compléments.



                Le système
Le système est un ensemble de cas d’utilisation
Le système contient :
 ‣   les cas d ’utilisation,
 ‣   mais pas les acteurs.
Un modèle de cas d ’utilisation permet de définir :
 ‣   les fonctions essentielles du système,
 ‣   les limites du système,
 ‣   le système par rapport à son environnement.

                       44 /95
Dict.      U.C.                      Process.   ✓2. UC         Compléments.


                            System
                                                       Frontière du système
                             Etablir
                            un emploi
                            du temps

Etudiant                             Enregistrer
                                     ses cours
                                                            Catalogue
                     S’inscrire
                                                            des cours


                        Demander
                                                                        Système de
                            un
                        tableau de                                      facturation
                          service

Système de                                             Enseignant
facturation           Maintenir le
                      Programme
                                                            Chef du Service
                                        45 /95              Des Inscriptions
Dict.   U.C.   ✓Desc.   Process.   Compléments.



Description succincte d’un UC
 Sommaire d'identification :
 ■ Titre
 ■ Résumé
 ■ Acteurs
 ■ Date de création
 ■ Date de mise à jour
 ■ Version
 ■ Responsable
                          46 /95
Dict.     U.C.                  Process.   ✓2. UC         Compléments.


     Description textuelle du cas d'utilisation:
               « RETIRER DE L’ARGENT »   
Sommaire d'identification
Titre : Retirer de l'argent
Résumé : ce cas d'utilisation permet à un porteur de carte, qui n'est pas
client de la banque, de retirer de l'argent, si son crédit hebdomadaire le
permet.
Acteurs : Porteur de carte non client (principal), Sys. Auto. (secondaire).
Date de création : 03/01/07      Date de mise à jour : 09/02/07
Version : 1.0            Responsable : Pierre DUMONT




                                         /82
Dict.   U.C.          Process.   ✓3.décrire.   Compléments.


Processus d’écriture des UC
  Trouver les acteurs              Décrire les flots
                                    d’évènements
                                    (bref)
  Trouver les UC                   Saisir les scenarii
                                   Collecter les
                                    exigences
                                    additionnelles
    Décrire les UC


   Détailler les UC
                        48 /95
Dict.   U.C.               Process.   ✓3.décrire.   Compléments.


           Décrire une UC
Décrire chaque étape du UC par des phrases
courtes, organisées séquentiellement.
                Use Case Name
                Brief Description
                Basic Flow
                   1. First step
                   2. Second step
                   3. Third step
                Alternative Flows
                   1. Alternative flow 1
                   2. Alternative flow 2
                   3. Alternative flow 3
                            49 /95
Dict.    U.C.               Process.   ✓3.décrire.   Compléments.


                Décrire une UC
    Décrire chaque étape du UC par des phrases
    courtes, organisées séquentiellement.
                     Use Case Name
                     Brief Description                    Structurer
                     Basic Flow                           le flot de
Numéroter                                                 base en
                        1. First step
et nommer               2. Second step                    étapes
les étapes.             3. Third step                     majeures
                     Alternative Flows
                        1. Alternative flow 1             Identifier
                        2. Alternative flow 2             les flots
                        3. Alternative flow 3             alternatifs.
                                 49 /95
Dict.   U.C.                Process.   ✓3.décrire.   Compléments.


Pas à pas : enregistrer ses cours
 Basic Flow
 ‣ 1.
 L’étudiant se connecte.

 ‣ 2.
 L’étudiant choisit d’enregistrer ces choix de cours.

 ‣ 3.
 L’étudiant obtient des informations sur les cours.

 ‣ 4.
 L’étudiant sélectionne les cours.

 ‣ 5.
 L’étudiant soumet ses choix.
                                                       D’autres
 ‣ 6.
 Le système valide les choix.                 alternatives?
 Alternative Flows
 ‣ A1. Etudiant non identifié

 ‣ A2. L’étudiant quitte l’application avant soumission

 ‣ A3. Les choix ne sont pas valides

 ‣ A4. Le catalogue des Cours est non accessible.
                                50 /95
Dict.   U.C.         Process.   ✓3.décrire.   Compléments.



            Décrire les UC
Un processus itératif : ne pas tout détailler, pas
trop tôt
Un processus de découverte : Décrire vous aide
à découvrir ce que vous ne connaissez pas. Une
brève description sert de point de départ.
Un processus d’évaluation : UC trop petit ou
trop gros ? partagé?


                      51 /95
Dict.   U.C.        Process.   ✓3.décrire.   Compléments.




Exigences additionnelles

Collecter les exigences système qui ne
peuvent pas être allouées à des UC
spécifiques dans des documents
additionnels.



                     52 /95
Dict.   U.C.          Process.   ✓4.détailler   Compléments.


Processus d’écriture des UC
  Trouver les acteurs              Détailler les flots
                                    d'événements
                                   Structurer les flots
  Trouver les UC                    d'événements
                                   Spécifier les
                                    propriétés
                                    additionnelles
    Décrire les UC


   Détailler les UC
                        53 /95
Dict.   U.C.   ✓Système   Process.   ✓4.détailler   Compléments.


Description détaillée d’un UC
 ■ Description des scénarios:
   ■ Préconditions
   ■ Scénario Nominal
   ■ Flots alternatifs
   ■ Flots d'erreur
   ■ Postconditions
   ■ Exigences non fonctionnelles
 ■ Besoins d'IHM
                             54 /95
Dict.   U.C.                    Process.   ✓4.détailler     Compléments.


                       Préconditions
 Décrire l'état dans lequel doit être le système avant que le UC
  puisse commencer.
    Simples déclarations qui définissent l'état du système,
     exprimées comme ses conditions qui doivent être remplies
    Il ne faut jamais se référer à d'autres UC qui doivent être
     effectuées avant cet UC
    Devraient être énoncées clairement et devraient être
     facilement vérifiables
 Facultatif: Utilisez uniquement si nécessaire pour clarifier
 Exemple
    UC «Inscription à des cours»
    Préconditions
      La liste des offres de cours pour le semestre a été créée et est disponible au
       service d’inscription.
      L'élève a ouvert une session d’inscription dans le système
                                         55 /95
Dict.   U.C.   ✓Système   Process.   ✓4.détailler   Compléments.


Description détaillée d’un UC
 ■ Description des scénarios:
   ■ Préconditions
   ■ Scénario Nominal
   ■ Flots alternatifs
   ■ Flots d'erreur
   ■ Postconditions
   ■ Exigences non fonctionnelles
 ■ Besoins d'IHM
                             56 /95
Dict.   U.C.               Process.      ✓4.détailler   Compléments.


       Détailler le flot de base
                                            Register for Courses
                      1.1     Basic Flow
                      1.      Log On.
                         This use case starts when someone accesses the
Décrire les étapes.    Course Registration System and chooses to register for
                       courses. The system validates that the person accessing
                       the system is an authorized student.
                      2.      Select “Create a Schedule ”.
                         The system displays the functions available to the
    <Acteur>           student. The student selects “Create a Schedule ”.
                      3.      Obtain Course Information.
     <fait>              The system retrieves a list of available course offerings
                       from the Course Catalog System and displays the list to
                       the student .The student can search the list by
                       department, professor, or topic to obtain the desired
                       course information .
   <Système>          4.      Select Courses.
                         The student selects four primary course offerings and
     <fait>            two alternate course offerings from the list of available
                       offerings course offerings.
                                   57 /95
Dict.   U.C.            Process.   ✓4.détailler   Compléments.


                     Formulation
 Utilisez la voix active
    Dire: “Le Professeur attribue des notes à chaque étudiant”
    Au lieu de : “Quand le Professeur a attribué les notes”
 Dire ce qui déclenche l’étape
    Dire: “Le UC commence quand le Prof. choisit de donner
      une note.”
    Au lieu de : “Le UC commence quand le Prof. décide de ....
 Dire qui fait quoi (utiliser le nom d'acteur)
    Dire: “L'étudiant choisit ... …”
    Au lieu de: "L'utilisateur choisit ...…"
    Dire: “Le Système valide …”
    Au lieu de: "Le choix est validé …"
                              58 /95
Description textuelle du cas d'utilisation:
                 « RETIRER DE L’ARGENT »   
Description des scénarios
Pré conditions
    •La caisse du GAB est alimentée (il reste au moins un billet !).
    •Aucune carte ne se trouve déjà coincée dans le lecteur.

Scénario nominal
1. Le porteur de carte introduit sa carte dans le lecteur de cartes du GAB.
2. Le GAB vérifie que la carte introduite est bien une carte bancaire.
3. Le GAB demande au porteur de carte de saisir son code d'identification.
4. Le porteur de carte saisit son code d'identification.
5. Le GAB compare le code d'identification avec celui qui est codé sur la
     puce de la carte.
6. Le GAB demande une autorisation au système d'autorisation.
7. Le système d'autorisation donne son accord et indique le solde
     hebdomadaire.
8. Le GAB demande au porteur de carte de saisir le montant désiré du
     retrait.
9. Le porteur de carte saisit le montant désiré du retrait.
10. Le GAB contrôle le montant demandé par rapport au solde
     hebdomadaire.
11. Le GAB demande au porteur de carte s'il veut un ticket.
12. Le porteur de carte demande un ticket.
13. Le GAB rend sa carte au porteur de carte.
14. Le porteur de carte reprend sa carte.
15. Le GAB délivre les billets et un ticket.
16. Le porteur de carte prend les billets et le ticket.
17. Le GAB enregistre la transaction de retrait.
Description textuelle du cas d'utilisation:
          RETIRER DE L’ARGENT  (Représentation de C.Larman)
Une autre présentation dite de Larman consiste à séparer les
actions des acteurs et du système en deux colonnes:

       Action d’acteur                         Action Système
1. Le porteur de carte introduit sa     2. Le GAB vérifie que la carte
   carte dans le lecteur de cartes du       introduite est bien une carte
   GAB.                                     bancaire.
                                        3. Le GAB demande au porteur de
                                            carte de saisir son code
                                            d'identification.
4. Le porteur de carte saisit son 5. Le GAB compare le code
   code d'identification.            d’identification avec celui qui est
                                     codé sur la puce de la carte.
                                        6. Le GAB demande une autorisation
                                           au système d'autorisation global.
7. Le système donne son accord et 8. Le GAB de mande au porteur de
   indique le solde                  carte de saisir le montant désiré
   hebdomadaire.                     du retrait.
9. Le porteur de carte saisie le 10. Le GAB contrôle le montant
   montant désiré                   demandé par rapport au solde
                                    hebdomadaire
                                11. Le GAB demande au porteur de
                                   carte s’il veut un ticket
12. Le porteur de carte demande 13. Le GAB rend sa carte au porteur
    un ticket.                     de carte.

14. Le porteur de carte reprend sa 15. Le GAB délivre des billets et un
   carte                              ticket.

16. Le porteur de carte prend les 17. Le GAB enregistre la transaction
   billets et le ticket.             de retrait.
Dict.   U.C.   ✓Système   Process.   ✓4.détailler   Compléments.


Description détaillée d’un UC
 ■ Description des scénarios:
   ■ Préconditions
   ■ Scénario Nominal
   ■ Flots alternatifs
   ■ Flots d'erreur
   ■ Postconditions
   ■ Exigences non fonctionnelles
 ■ Besoins d'IHM
                             63 /95
Enchaînements alternatifs*
Al : code d'identification provisoirement erroné
L'enchaînement Al démarre au point 5 du scénario nominal.
6. Le GAB indique au porteur de carte que le code est erroné, pour la
   première ou deuxième fois.
7. Le GAB enregistre l'échec sur la carte.
Le scénario nominal reprend au point 3.

A2 : montant demandé supérieur au solde hebdomadaire
L'enchaînement A2 démarre au point 10 du scénario nominal.
11. Le GAB indique au porteur de carte que le montant demandé est
    supérieur au solde hebdomadaire.
Le scénario nominal reprend au point 8.

* Nous distinguons les enchaînements alternatifs (Ax) qui reprennent ensuite à
une étape du scénario nominal des enchaînements d'erreur (Ey) qui terminent
brutalement le cas d'utilisation en échec. L'objectif de l'acteur principal est donc
atteint par les scénarios nominaux et alternatifs mais pas par ceux d'erreur.
A3 : ticket refusé
L'enchaînement A3 démarre au point 11 du scénario nominal.
12. Le porteur de carte refuse le ticket.
13. Le GAB rend sa carte au porteur de carte.
14. Le porteur de carte reprend sa carte.
15. Le GAB délivre les billets.
16. Le porteur de carte prend les billets.
17. Le GAB enregistre la transaction de retrait.



            Enchaînements d’erreur
El : carte non-valide
L'enchaînement El démarre au point 2 du scénario nominal.
3. Le GAB indique au porteur que la carte n'est pas valide (illisible,
   périmée, etc.), la confisque ; le cas d'utilisation se termine en échec.
E2 : code d'identification définitivement erroné
L'enchaînement E2 démarre au point 5 du scénario nominal.
6. Le GAB indique au porteur de carte que le code est erroné, pour la
   troisième fois.
7. Le GAB confisque la carte.
8. Le système d'autorisation est informé ; le cas d'utilisation se termine
   en échec.

E3 : retrait non autorisé
L'enchaînement E3 démarre au point 6 du scénario nominal.
7. Le système d'autorisation interdit tout retrait.
8. Le GAB éjecte la carte ; le cas d'utilisation se termine en échec.

E4 : carte non reprise
L'enchaînement E4 démarre au point 13 du scénario nominal.
14. Au bout de 15 secondes, le GAB confisque la carte.
15. Le système d'autorisation est informé ; le cas d'utilisation se termine
    en échec.
E5 : billets non pris
L'enchaînement E5 démarre au point 15 du scénario nominal.
16. Au bout de 30 secondes, le GAB reprend les billets.
17. Le système d'autorisation est informé ; le cas d'utilisation se termine
   en échec.

E6 : annulation de la transaction
L'enchaînement E6 peut démarrer entre les points 4 et 12 du scénario
     nominal.
4 à 12. Le porteur de carte demande l'annulation de la transaction en
     cours.
Le GAB éjecte la carte ; le cas d'utilisation se termine en échec.

E4 : carte non reprise
L'enchaînement E4 démarre au point 13 du scénario nominal.
14. Au bout de 15 secondes, le GAB confisque la carte.
15. Le système d'autorisation est informé ; le cas d'utilisation se termine
    en échec.
Dict.   U.C.                Process.   ✓3.décrire.       Compléments.


Décrire les flots d'événements
    Flot de base
‣   Quel événement déclenche le cas d'utilisation?
‣   Comment le cas d'utilisation se termine-t-il?
‣   Comment le cas d'utilisation répète-t-il certains comportements?
    Flots d’exceptions
‣   Y-a-t-il des situations facultatives dans le cas d'utilisation?
‣   Quel cas étrange pourrait se produire?                 Etape de
‣   Quelles variantes pourraient arriver?            communication avec
    Qu’est-ce qui peut mal tourner?                     les utilisateurs
‣

‣   Qu’est-ce qui ne peut pas se produire?
‣   Quels types de ressources peuvent être bloqués?
                                                           Pas dans le détail
                                   68 /95
Dict.   U.C.   ✓Système   Process.   ✓4.détailler   Compléments.


Description détaillée d’un UC
 ■ Description des scénarios:
   ■ Préconditions
   ■ Scénario Nominal
   ■ Flots alternatifs
   ■ Flots d'erreur
   ■ Postconditions
   ■ Exigences non fonctionnelles
 ■ Besoins d'IHM
                             69 /95
Dict.    U.C.                     Process.   ✓4.détailler      Compléments.


                     Postconditions
 Décrire l'état dans lequel doit être le système à la fin du UC
    Utiliser lorsque l'état du système est une condition préalable
     à un autre UC, ou lorsque les résultats possibles du UC ne
     sont pas évidents pour le lecteur
    Il ne faut jamais se référer à d'autres UC qui doivent être
     effectués avant cet UC
    Devraient être énoncées clairement et devraient être
     facilement vérifiables
 Facultatif: Utilisez uniquement si nécessaire pour clarifier
 Exemple                                   on peut commencer par les
                                          postconditions avant même les
    UC «Inscription à des cours»
                                                      flots.
    Postconditions
      À la fin de ce cas d'utilisation, soit l'étudiant a été inscrit à des cours, soit
       l’inscription a échoué et aucune modification n'a été apportée à aux cours...
                                           70 /95
Dict.      U.C.                   Process.   ✓4.détailler   Compléments.


  Exemple de description détaillée d’un UC
                                             Précondition :
                     Le distributeur contient des billets, il est en attente d ’une
                         opération, il n’est ni en panne, ni en maintenance


                    Début : lorsqu ’un client introduit sa carte bancaire dans le
   Retirer
 DeLArgent                                  distributeur.
AuDistributeur

                      Fin : lorsque la carte bancaire et les billets sont sortis.

                                          Postcondition :
                     Si de l ’argent a pu être retiré la somme d’argent sur le
                    compte est égale à la somme d ’argent qu’il y avait avant,
                   moins le montant du retrait. Sinon la somme d ’argent sur le
                                  compte est la même qu’avant.
Jean-Marie Favre                          71 /95
Dict.   U.C.   ✓Système   Process.   ✓4.détailler   Compléments.


Description détaillée d’un UC
 ■ Description des scénarios:
   ■ Préconditions
   ■ Scénario Nominal
   ■ Flots alternatifs
   ■ Flots d'erreur
   ■ Postconditions
   ■ Exigences non fonctionnelles
 ■ Besoins d'IHM
                             72 /95
Dict.      U.C.                   Process.   ✓4.détailler   Compléments.

      Exemple de description détaillée d’un UC
                                   Contraintes non fonctionnelles :


                       (A) Performance : le système doit réagir dans un délai
                    inférieur à 4 secondes, quelque soit l ’action de l ’utilisateur.
   Retirer
 DeLArgent
AuDistributeur      (B) Résistance aux pannes : si une coupure de courant ou
                    une autre défaillance survient au cours du cas d ’utilisation,
                    la transaction sera annulée, l ’argent ne sera pas distribué.
                       Le système doit pouvoir redémarrer automatiquement
                        dans un état cohérent et sans intervention humaine.


                     (C) Résistance à la charge : le système doit pouvoir gérer
                           plus de 1000 retraits d ’argent simultanément
                                                 ...
Jean-Marie Favre                          73 /95
Description textuelle du cas d'utilisation:
               « RETIRER DE L’ARGENT » 
                   informations optionnelles
Exigences non fonctionnelles

    Contraintes                            Descriptif
Temps de réponse    L’interface du GAB doit réagir en l’espace de 2
                    secondes au maximum. Une transaction nominale
                    de retrait doit durer moins de 2 minutes
Concurrence         Non applicable (mono-utilisateur)

Disponibilité       Le GAB est accessible 7j/7, 24h/24 . L’absence de
                    papier pour les tickets ne doit pas empêcher les
                    retraits.
Intégrité           Les interface du GAB doivent être très robustes
                    pour prévenir le vandalisme

Confidentialité     La vérification du code saisi doit être fiable à 10-6
Dict.   U.C.   ✓Système   Process.   ✓4.détailler   Compléments.


Description détaillée d’un UC
 ■ Description des scénarios:
   ■ Préconditions
   ■ Scénario Nominal
   ■ Flots alternatifs
   ■ Flots d'erreur
   ■ Postconditions
   ■ Exigences non fonctionnelles
 ■ Besoins d'IHM
                             75 /95
Description textuelle du cas d'utilisation:
              « RETIRER DE L’ARGENT » 
                  informations optionnelles
Besoins d’IHM
Les dispositifs d'entrée/sortie à la disposition du porteur
   de carte doivent être :
• Un lecteur de carte bancaire.
• Un clavier numérique (pour saisir son code), avec des
   touches «validation », « correction » et « annulation ».
• Un écran pour l'affichage des messages du GAB.
• Des touches autour de l'écran pour sélectionner un
   montant de retrait parmi ceux qui sont proposés.
• Un distributeur de billets.
• Un distributeur de tickets.
Dict.   U.C.        Process.   ✓4.détailler   Compléments.



Faire le point sur les UC
Les interactions entre le système et les acteurs
sont claires
Les séquence de communication sont conformes
aux attentes de l'utilisateur
Quand/comment les UC commencent/se
terminent est clair
Le flot de base de base donne un résultat
observable pour un ou plusieurs acteurs
                     77 /95
Dict.   U.C.              Process.   ✓4.détailler   Compléments.


      Quel niveau de détail?
✓   Saisir toutes les                     X Pas de détail des
    exigences pour tous les               interfaces utilisateurs
    demandeurs
                                          X Pas de détail des
                                          processus internes non
                                          liés à une exigence
✓   Informations et
    événements                            X Pas les formats de
                                          données, ni les contrôles

           How much detail in a use case?
 Enough to satisfy all stakeholders that their interests
(requirements) will be satisfied in the delivered system.
                              78 /95
Dict.      U.C.               Process.                Compléments.


         Ecrire des UC : Défis
1.       Comment garder les UC précis et concis?
2.       Comment traiter les interfaces utilisateur?
3.       Comment traiter un flux quand
     a.     Un acteur doit choisir parmi différentes options?
     b.     Un acteur peut répéter des actions avant de passer à
            la suite?
     c.     Les étapes ne sont pas nécessairement séquentielles?
4.       Comment gérer le comportement conditionnelle dans les
         cas d'utilisation?


                                79 /95
Dict.     U.C.                Process.                    Compléments.


 1.Comment garder les UC précis et concis?(1)
✓ Capturer le vocabulaire commun dans un
   glossaire
    ➡ Définir les termes utilisés dans le projet dans le glossaire,
             pas dans les flux
    ➡ Aide à éviter les malentendus
                 Use Case                                     Glossary
 5. Enter Customer Information                   Customer Details Information
                                                 that uniquely identifies and
    The system prompts the Customer to           provides contact information
    enter their Customer Details.                for a customer located in the
    The Customer enters the Customer             U.S.A. The information
                                                 consists of Name, two address
    Details.                                     lines, city, state, ZIP code, and
    The Customer creates the account.            daytime phone number.
                                              Implementation

                                   80 /95
Dict.    U.C.                   Process.                    Compléments.


 1.Comment garder les UC précis et concis? (2)
✓ Visualiser le glossaire par un modèle du
   domaine
   Student       1          0..*    Schedule     0..*        0..4 Course Offering


                                                                 0..*       0..*



                                                    0..1                    1
 Part-time Student   Full-time Student           Professor              Course




                                         81/95
Dict.    U.C.       Process.     Compléments.

           Relations entre UC :
        Include, Extend, Specialize




                     82 /95
Dict.    U.C.               Process.                Compléments.

               Relations entre UC :
            Include, Extend, Specialize
Au fur et à mesure que les cas d’utilisation sont documentés,
des relations peuvent apparaître
‣     Une relation include : utilisation systématique
‣     Une relation extend dénote un comportement optionnel




                                 82 /95
Dict.   U.C.          Process.             Compléments.



                                    Extends
                                    Les deux UC sont
                                     indépendants.

                                Permettre au client de
                               consulter son solde avant
                                 de saisir le montant :
                                extension optionnelle.

Flot enrichi
       8. Le GAB demande au client de saisir le montant
             Point d’extension : Vérification du solde
       9. Le client saisit le montant désiré de retrait
                          83 /95
Dict.   U.C.   Process.   Compléments.


Ludothèque




                    /82
Dict.   U.C.      Process.        Compléments.


        La relation <<include>>




                    /95
Dict.   U.C.           Process.          Compléments.


            La relation <<include>>

La relation d’include a pour seul objectif de factoriser
une partie de la description d’un cas d’utilisation qui
      est commune à d’autres cas d’utilisation.




                             /95
Dict.   U.C.           Process.          Compléments.


            La relation <<include>>

La relation d’include a pour seul objectif de factoriser
une partie de la description d’un cas d’utilisation qui
      est commune à d’autres cas d’utilisation.
    Le cas d’utilisation inclus dans les autres cas
 d’utilisation n’est pas à proprement parler un vrai
 cas d’utilisation car il n’a pas d’acteur déclencheur
               ou receveur d’évènement.




                             /95
Dict.   U.C.           Process.            Compléments.


            La relation <<include>>

La relation d’include a pour seul objectif de factoriser
une partie de la description d’un cas d’utilisation qui
      est commune à d’autres cas d’utilisation.
    Le cas d’utilisation inclus dans les autres cas
 d’utilisation n’est pas à proprement parler un vrai
 cas d’utilisation car il n’a pas d’acteur déclencheur
               ou receveur d’évènement.
 Il est juste un artifice pour faire de la réutilisation
                d’une portion de texte.

                             /95
Généralisation

   L'association de généralisation entre cas d'utilisation a la
    même sémantique que pour les classes


                          Valider usager




                  Vérifier              Scanner
                mot de passe             rétine


                                                         86
Dict.   U.C.   Process.   Compléments.


Ludothèque




                    /82
Dict.   U.C.   Process.   Compléments.


Ludothèque




                    /82
Dict.   U.C.   Process.     Compléments.

                          Ludothèque




                 /82
Dict.   U.C.             Process.      Compléments.

Structuration des UC en packages




     Scanner p 43 et 44 de UML par la pratique
On peut alors, si nécessaire,
 détailler certains de cas
       d’utilisation.        /95
Dict.     U.C.                  Process.               Compléments.


  2. Comment traiter les interfaces utilisateur?
✓Laissez l'interface utilisateur hors des UC
    ➡ Les UC sont indépendants de l'interface utilisateur
    ➡ Décrire les interfaces utilisateur avec des modèles dédiés
             ou des prototypes
          Words to Avoid                          Words to Use
 Click          Drag     Form                   Prompts        Chooses
 Open           Close    Drop                   Initiates
 Button         Field    Drop-down              Specifies
 Pop-up         Scroll   Browse                 Submits        Selects
 Record         Window                          Starts         Displays
                                                Informs


 “Le système fait sonner le téléphone.”
                                     91 /95
Dict.     U.C.                  Process.               Compléments.


  2. Comment traiter les interfaces utilisateur?
✓Laissez l'interface utilisateur hors des UC
    ➡ Les UC sont indépendants de l'interface utilisateur
    ➡ Décrire les interfaces utilisateur avec des modèles dédiés
             ou des prototypes
          Words to Avoid                          Words to Use
 Click          Drag     Form                   Prompts        Chooses
 Open           Close    Drop                   Initiates
 Button         Field    Drop-down              Specifies
 Pop-up         Scroll   Browse                 Submits        Selects
 Record         Window                          Starts         Displays
                                                Informs


 “Le système fait sonner le téléphone.”
                                     91 /95
Dict.     U.C.                  Process.               Compléments.


  2. Comment traiter les interfaces utilisateur?
✓Laissez l'interface utilisateur hors des UC
    ➡ Les UC sont indépendants de l'interface utilisateur
    ➡ Décrire les interfaces utilisateur avec des modèles dédiés
             ou des prototypes
          Words to Avoid                          Words to Use
 Click          Drag     Form                   Prompts        Chooses
 Open           Close    Drop                   Initiates
 Button         Field    Drop-down              Specifies
 Pop-up         Scroll   Browse                 Submits        Selects
 Record         Window                          Starts         Displays
                                                Informs


 “Le système fait sonner le téléphone.”
                                     91 /95
Dict.     U.C.                  Process.               Compléments.


  2. Comment traiter les interfaces utilisateur?
✓Laissez l'interface utilisateur hors des UC
    ➡ Les UC sont indépendants de l'interface utilisateur
    ➡ Décrire les interfaces utilisateur avec des modèles dédiés
             ou des prototypes
          Words to Avoid                          Words to Use
 Click          Drag     Form                   Prompts        Chooses
 Open           Close    Drop                   Initiates
 Button         Field    Drop-down              Specifies
 Pop-up         Scroll   Browse                 Submits        Selects
 Record         Window                          Starts         Displays
                                                Informs


 “Le système fait sonner le téléphone.”
                 notifie              91 /95
Si c’est nécessaire...Après...
• avec l’addon Firefox :
• http://pencil.evolus.vn/en-US/Downloads/Application.aspx




                                               92
Résumé
       et
    conseils
méthodologiques
       93
Dict.   U.C.            Process.          Compléments.



  Cas d’utilisation : résumé
 Se   servir des Cas d’Utilisation UML pour identifier les
                   exigences fonctionnelles.




                            94 /95
Dict.   U.C.   Process.   Compléments.



Cas d’utilisation : résumé




               95 /95

Contenu connexe

Tendances

Cours uml
Cours umlCours uml
Cours uml
zimamouche1
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
Lilia Sfaxi
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...
Addi Ait-Mlouk
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
Lilia Sfaxi
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
Lilia Sfaxi
 
Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisation
Nassim Amine
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
Amir Souissi
 
Modèle en v
 Modèle en v Modèle en v
Modèle en v
bouye2209
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
Mansouri Khalifa
 
Introduction au génie logiciel
Introduction au génie logicielIntroduction au génie logiciel
Introduction au génie logiciel
Mohamed Diallo
 
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
Madjid Meddah
 
Correction Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfCorrection Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdf
slimyaich3
 
Modèle en cascade
Modèle en cascadeModèle en cascade
Modèle en cascade
Ghodhbane Mohamed Amine
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
Oussama Yoshiki
 
Rapport de Stage
Rapport de StageRapport de Stage
Rapport de Stage
gphilippon
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
tayebbousfiha1
 
QCM système d'information
QCM système d'informationQCM système d'information
QCM système d'information
Frust Rados
 
Chapitre II. METHODE D'ANALYSE P2 MCD .pptx
Chapitre II. METHODE D'ANALYSE P2 MCD .pptxChapitre II. METHODE D'ANALYSE P2 MCD .pptx
Chapitre II. METHODE D'ANALYSE P2 MCD .pptx
anisanima1
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
Lilia Sfaxi
 
UML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouriUML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouri
Mansouri Khalifa
 

Tendances (20)

Cours uml
Cours umlCours uml
Cours uml
 
Chp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de ConceptionChp1 - Introduction aux méthodologies de Conception
Chp1 - Introduction aux méthodologies de Conception
 
Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...Conception et réalisation d'une application de gestion intégrée au sein de la...
Conception et réalisation d'une application de gestion intégrée au sein de la...
 
TP2-UML-Correction
TP2-UML-CorrectionTP2-UML-Correction
TP2-UML-Correction
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
 
Uml 2 pratique de la modélisation
Uml 2  pratique de la modélisationUml 2  pratique de la modélisation
Uml 2 pratique de la modélisation
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Modèle en v
 Modèle en v Modèle en v
Modèle en v
 
UML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouriUML Part 3- diagramme de séquences mansouri
UML Part 3- diagramme de séquences mansouri
 
Introduction au génie logiciel
Introduction au génie logicielIntroduction au génie logiciel
Introduction au génie logiciel
 
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
 
Correction Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfCorrection Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdf
 
Modèle en cascade
Modèle en cascadeModèle en cascade
Modèle en cascade
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Rapport de Stage
Rapport de StageRapport de Stage
Rapport de Stage
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
 
QCM système d'information
QCM système d'informationQCM système d'information
QCM système d'information
 
Chapitre II. METHODE D'ANALYSE P2 MCD .pptx
Chapitre II. METHODE D'ANALYSE P2 MCD .pptxChapitre II. METHODE D'ANALYSE P2 MCD .pptx
Chapitre II. METHODE D'ANALYSE P2 MCD .pptx
 
TD4-UML
TD4-UMLTD4-UML
TD4-UML
 
UML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouriUML Part2- diagramme des uses cases_mansouri
UML Part2- diagramme des uses cases_mansouri
 

Similaire à Uml & cas d'utilisation

Uml Cas Utilisation introduction
Uml Cas Utilisation introductionUml Cas Utilisation introduction
Uml Cas Utilisation introduction
Mireille Blay-Fornarino
 
2 TUP
2 TUP2 TUP
Rapport de projet symphony
Rapport de projet symphonyRapport de projet symphony
Rapport de projet symphony
TonySARR1
 
atam guide de developpement v1.3
atam guide de developpement v1.3atam guide de developpement v1.3
atam guide de developpement v1.3
Abdessamad Hamouch
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
ssuserec8501
 
Es20 g formation-z-os-system-services-structure
Es20 g formation-z-os-system-services-structureEs20 g formation-z-os-system-services-structure
Es20 g formation-z-os-system-services-structure
CERTyou Formation
 
Expression des besoins pour le SI
Expression des besoins pour le SIExpression des besoins pour le SI
Expression des besoins pour le SI
Nouhaila ALAMI
 
Resume theorique-m106-partie1-1401-620cd8a160396 (1)
Resume theorique-m106-partie1-1401-620cd8a160396 (1)Resume theorique-m106-partie1-1401-620cd8a160396 (1)
Resume theorique-m106-partie1-1401-620cd8a160396 (1)
MounirAlaoui4
 
Unified Modeling Language Intro 2021-2022 VF
Unified Modeling Language Intro 2021-2022 VFUnified Modeling Language Intro 2021-2022 VF
Unified Modeling Language Intro 2021-2022 VF
cifaf13039
 
Xtensus catalogue pfe-2018
Xtensus catalogue pfe-2018Xtensus catalogue pfe-2018
Xtensus catalogue pfe-2018
. WATCOM
 
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
LeClubQualiteLogicielle
 
2-Cours de Géniel Logiciel
2-Cours de Géniel Logiciel2-Cours de Géniel Logiciel
2-Cours de Géniel Logiciel
lauraty3204
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
ZakariaLabay
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
FootballLovers9
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test
LeClubQualiteLogicielle
 
La Conduite de projet
La Conduite de projetLa Conduite de projet
La Conduite de projet
Echecs & Stratégie
 
Schuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).ppt
Schuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).pptSchuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).ppt
Schuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).ppt
isggabes
 
RA et CCDS - Séance 1.pptx
RA et CCDS - Séance 1.pptxRA et CCDS - Séance 1.pptx
RA et CCDS - Séance 1.pptx
testuser715939
 
Cours Génie Logiciel 2016
Cours Génie Logiciel 2016Cours Génie Logiciel 2016
Cours Génie Logiciel 2016
Erradi Mohamed
 

Similaire à Uml & cas d'utilisation (20)

Uml Cas Utilisation introduction
Uml Cas Utilisation introductionUml Cas Utilisation introduction
Uml Cas Utilisation introduction
 
2 TUP
2 TUP2 TUP
2 TUP
 
Rapport de projet symphony
Rapport de projet symphonyRapport de projet symphony
Rapport de projet symphony
 
atam guide de developpement v1.3
atam guide de developpement v1.3atam guide de developpement v1.3
atam guide de developpement v1.3
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
 
Es20 g formation-z-os-system-services-structure
Es20 g formation-z-os-system-services-structureEs20 g formation-z-os-system-services-structure
Es20 g formation-z-os-system-services-structure
 
Expression des besoins pour le SI
Expression des besoins pour le SIExpression des besoins pour le SI
Expression des besoins pour le SI
 
Resume theorique-m106-partie1-1401-620cd8a160396 (1)
Resume theorique-m106-partie1-1401-620cd8a160396 (1)Resume theorique-m106-partie1-1401-620cd8a160396 (1)
Resume theorique-m106-partie1-1401-620cd8a160396 (1)
 
Unified Modeling Language Intro 2021-2022 VF
Unified Modeling Language Intro 2021-2022 VFUnified Modeling Language Intro 2021-2022 VF
Unified Modeling Language Intro 2021-2022 VF
 
Xtensus catalogue pfe-2018
Xtensus catalogue pfe-2018Xtensus catalogue pfe-2018
Xtensus catalogue pfe-2018
 
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
20130523 04 - Grille d'évaluation - Gestion du patrimoine de test
 
2-Cours de Géniel Logiciel
2-Cours de Géniel Logiciel2-Cours de Géniel Logiciel
2-Cours de Géniel Logiciel
 
Algorithme
AlgorithmeAlgorithme
Algorithme
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
 
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptxresume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
resume-theorique-m106-partie1-v2-6228baed03113 (1).pptx
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test
 
La Conduite de projet
La Conduite de projetLa Conduite de projet
La Conduite de projet
 
Schuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).ppt
Schuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).pptSchuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).ppt
Schuman_Presentation__experimentation_BTS_a_reunion_du_24-10-2012 (1).ppt
 
RA et CCDS - Séance 1.pptx
RA et CCDS - Séance 1.pptxRA et CCDS - Séance 1.pptx
RA et CCDS - Séance 1.pptx
 
Cours Génie Logiciel 2016
Cours Génie Logiciel 2016Cours Génie Logiciel 2016
Cours Génie Logiciel 2016
 

Plus de Mireille Blay-Fornarino

Diagramme d'activité en UML
Diagramme d'activité en UMLDiagramme d'activité en UML
Diagramme d'activité en UML
Mireille Blay-Fornarino
 
Introduction rapide à 'objet et à UML
Introduction rapide à 'objet et  à UML Introduction rapide à 'objet et  à UML
Introduction rapide à 'objet et à UML
Mireille Blay-Fornarino
 
Uml classes Par les exemples
Uml classes Par les exemplesUml classes Par les exemples
Uml classes Par les exemples
Mireille Blay-Fornarino
 
Introduction à Uml
Introduction à UmlIntroduction à Uml
Introduction à Uml
Mireille Blay-Fornarino
 
Methodes de gestion de projets - introduction au processus unifié
Methodes de gestion de projets - introduction au processus unifiéMethodes de gestion de projets - introduction au processus unifié
Methodes de gestion de projets - introduction au processus unifié
Mireille Blay-Fornarino
 
De l'analyse à la conception
De l'analyse à la conceptionDe l'analyse à la conception
De l'analyse à la conception
Mireille Blay-Fornarino
 
Diagrammes de classes
Diagrammes de classesDiagrammes de classes
Diagrammes de classes
Mireille Blay-Fornarino
 
Uml interactions
Uml interactionsUml interactions
Uml interactions
Mireille Blay-Fornarino
 
Modélisation par Objets - Introduction - De Merise à UML
Modélisation par Objets - Introduction - De Merise à UMLModélisation par Objets - Introduction - De Merise à UML
Modélisation par Objets - Introduction - De Merise à UML
Mireille Blay-Fornarino
 
Analyse et conception des systèmes d’information
Analyse et conception des systèmes d’informationAnalyse et conception des systèmes d’information
Analyse et conception des systèmes d’information
Mireille Blay-Fornarino
 

Plus de Mireille Blay-Fornarino (11)

Analyse et cahier des charges
Analyse et cahier des chargesAnalyse et cahier des charges
Analyse et cahier des charges
 
Diagramme d'activité en UML
Diagramme d'activité en UMLDiagramme d'activité en UML
Diagramme d'activité en UML
 
Introduction rapide à 'objet et à UML
Introduction rapide à 'objet et  à UML Introduction rapide à 'objet et  à UML
Introduction rapide à 'objet et à UML
 
Uml classes Par les exemples
Uml classes Par les exemplesUml classes Par les exemples
Uml classes Par les exemples
 
Introduction à Uml
Introduction à UmlIntroduction à Uml
Introduction à Uml
 
Methodes de gestion de projets - introduction au processus unifié
Methodes de gestion de projets - introduction au processus unifiéMethodes de gestion de projets - introduction au processus unifié
Methodes de gestion de projets - introduction au processus unifié
 
De l'analyse à la conception
De l'analyse à la conceptionDe l'analyse à la conception
De l'analyse à la conception
 
Diagrammes de classes
Diagrammes de classesDiagrammes de classes
Diagrammes de classes
 
Uml interactions
Uml interactionsUml interactions
Uml interactions
 
Modélisation par Objets - Introduction - De Merise à UML
Modélisation par Objets - Introduction - De Merise à UMLModélisation par Objets - Introduction - De Merise à UML
Modélisation par Objets - Introduction - De Merise à UML
 
Analyse et conception des systèmes d’information
Analyse et conception des systèmes d’informationAnalyse et conception des systèmes d’information
Analyse et conception des systèmes d’information
 

Dernier

Zineb Mekouar.pptx Écrivaine marocaine
Zineb Mekouar.pptx   Écrivaine  marocaineZineb Mekouar.pptx   Écrivaine  marocaine
Zineb Mekouar.pptx Écrivaine marocaine
Txaruka
 
GUIDE POUR L’EVRAS BALISES ET APPRENTISSAGES
GUIDE POUR L’EVRAS BALISES ET APPRENTISSAGESGUIDE POUR L’EVRAS BALISES ET APPRENTISSAGES
GUIDE POUR L’EVRAS BALISES ET APPRENTISSAGES
DjibrilToure5
 
1e Espaces productifs 2024.Espaces productif
1e Espaces productifs 2024.Espaces productif1e Espaces productifs 2024.Espaces productif
1e Espaces productifs 2024.Espaces productif
NadineHG
 
Auguste Herbin.pptx Peintre français
Auguste   Herbin.pptx Peintre   françaisAuguste   Herbin.pptx Peintre   français
Auguste Herbin.pptx Peintre français
Txaruka
 
Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024
Friends of African Village Libraries
 
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
Editions La Dondaine
 

Dernier (6)

Zineb Mekouar.pptx Écrivaine marocaine
Zineb Mekouar.pptx   Écrivaine  marocaineZineb Mekouar.pptx   Écrivaine  marocaine
Zineb Mekouar.pptx Écrivaine marocaine
 
GUIDE POUR L’EVRAS BALISES ET APPRENTISSAGES
GUIDE POUR L’EVRAS BALISES ET APPRENTISSAGESGUIDE POUR L’EVRAS BALISES ET APPRENTISSAGES
GUIDE POUR L’EVRAS BALISES ET APPRENTISSAGES
 
1e Espaces productifs 2024.Espaces productif
1e Espaces productifs 2024.Espaces productif1e Espaces productifs 2024.Espaces productif
1e Espaces productifs 2024.Espaces productif
 
Auguste Herbin.pptx Peintre français
Auguste   Herbin.pptx Peintre   françaisAuguste   Herbin.pptx Peintre   français
Auguste Herbin.pptx Peintre français
 
Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024Burkina Faso libraries newsletter for June 2024
Burkina Faso libraries newsletter for June 2024
 
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
La Révolution Bénédictine Casadéenne du Livradois-Forez: De Charlemagne à Fra...
 

Uml & cas d'utilisation

  • 1. Analyse et Conception avec UML Les diagrammes de cas d’utilisation blay@unice.fr www.polytech.unice.fr/~blay IUT Nice-Sophia Antipolis Mars 2011 Site web du module : http://anubis.polytech.unice.fr/iut/ 1
  • 2. Bibliographie Principalement : • cours IBM : Writing Good Use Cases (2006) •Voir sur le site web les autres cours. •Méthodologie en Ingénierie du logiciel, Modélisation Orientée objet, M.Grimaldi – janvier 2010 2
  • 3. Dict. U.C. Process. Compléments. Plan du cours  Utilisation d’un dictionnaire du domaine  Des cas d’utilisations (Use-cases/UC)  Acteurs, use-cases, system UML  Processus de construction des Uses-case  Compléments 3 /95
  • 4. Dict. U.C. Process. Compléments. UML au travail : Système d’inscriptions L’université ESU désire automatiser son système d’inscription ‣ Le chef du service des inscriptions établit le programme des cours pour un semestre ‣ Un cours peut être offert plusieurs fois ‣ Les étudiants doivent sélectionner 4 cours primaires et 2 cours secondaires dans le catalogue des cours proposés ‣ Dès qu’un étudiant s’est inscrit pour un semestre, le système de facturation est notifié ‣ Les étudiants peuvent utiliser le système pour modifier leurs choix pendant une certaine période de temps après leur inscription ‣ Les enseignants utilisent le système pour consulter leur emploi du temps (tableau d’activités en fonction des cours qui tournent) ‣ Les utilisateurs du système d’inscription reçoivent des mots de passe qui sont nécessaire à la procédure d’identification 4 /82
  • 5. Dict. U.C. Process. Compléments. UML au travail : Guichet automatique de banque Le guichet automatique d’une banque (GAB) offre les services suivants : Distribution d’argent à partir d’une carte de la banque ou d’une carte Visa. Consultation de solde de compte, dépôt en numéraire et dépôt de chèques pour les clients de la banque porteurs d’une carte de la banque. De plus, Toutes les transactions sont sécurisées. Il est parfois nécessaire de recharger le distributeur, . 5 /82 Voir UML2 par la pratique
  • 6. Dict. U.C. Process. Compléments. Intérêt du dictionnaire  Outil de dialogue  Informel, évolutif, simple a réaliser  Etablir et figer la terminologie – Permet de figer la terminologie du domaine d'application. – Constitue le point d'entrée et le référentiel initial de l'application ou du système. Homonymie Synonymie Polysémie 6 /95
  • 7. Dict. U.C. Process. Compléments. UML au travail : Système d’inscriptions L’université ESU désire automatiser son système d’inscription ‣ Le chef du service des inscriptions établit le programme des cours pour un semestre ‣ Un cours peut être offert plusieurs fois ‣ Les étudiants doivent sélectionner 4 cours primaires et 2 cours secondaires dans le catalogue des cours proposés ‣ Dès qu’un étudiant s’est inscrit pour un semestre, le système de facturation est notifié ‣ Les étudiants peuvent utiliser le système pour modifier leurs choix pendant une certaine période de temps après leur inscription ‣ Les enseignants utilisent le système pour consulter leur emploi du temps (tableau d’activités en fonction des cours qui tournent) ‣ Les utilisateurs du système d’inscription reçoivent des mots de passe qui sont nécessaire à la procédure d’identification 7 /82
  • 8. Dict. U.C. Process. Compléments. UML au travail : Une ludothèque (1) Nous voulons informatiser une ludothèque pour favoriser la consultation des jeux proposés par la ludothèque. (2) Les adhérents peuvent emprunter des jeux en s’adressant à un conseiller qui enregistre l’emprunt. (3)Les jeux empruntés sont rendus à un conseiller.... (4) Un adhérent peut réserver des jeux. Une réservation précise l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti quand le jeu revient en rayon. (5) Pour organiser un événement le conseiller spécialisé doit alors donner les informations suivantes : les jeux à tester, le nombre maximal et minimal de participants attendus, la date, et l’heure de début de l’événement. (6) Un adhérent peut s’inscrire pour participer à un événement à condition qu’il y ait encore de la place. (7) Un adhérent peut payer sa cotisation en ligne par un système de paiement externe 8 /82
  • 9. Dict. U.C. Process. Compléments. Les diagrammes de cas d ’utilisation Une des notations d ’UML (use-cases) But : ‣ définir le système du point de vue des utilisateurs ‣ définir les limites précises du système Notation très simple, compréhensible par tous Permet de structurer : ‣ les besoins (cahier des charges) ‣ le reste du développement ‣ la progression d ’un cycle en spirale Les cas d'utilisation sont nommés en utilisant la terminologie décrite dans le dictionnaire Jean-Marie Favre 9 /95
  • 10. Dict. U.C. Process. Compléments. Les diagrammes de cas d ’utilisation Une Notation très simple, compréhensible par tous cf. http://linformalibre.f2lt.fr/index.php?title=Comprendre_Joomla_%C3%A0_l%27aide_d%27UML 10 /95
  • 11. Dict. U.C. ✓Conclusion Process. Compléments. Bénéfices des use-cases Organisent les exigences d’un point de vue utilisateur Définissent les exigences du système comme des séquences logiques, Permettent de vérifier que toutes les exigences sont capturées et qu’elles correspondent à ce qu’attend le demandeur. Facilitent l’adéquation des demandeurs ‣ mais aussi des cas de tests, la documentation et la réutilisation des exigences. 11 /95
  • 12. Dict. U.C. ✓Conclusion Process. Compléments. Des use-cases, pour qui? Demandeurs (décrire et approuver) Utilisateurs (comprendre) Architectes logiciels (identification des fonctions) Concepteurs et développeurs Testeurs (identifier les tests) Managers (Planifier) Rédacteurs de documentation (prendre un point de vue utilisateur) 12 /95
  • 13. Dict. U.C. ✓Conclusion Process. Compléments. Dev. logiciel dirigé par les use-cases 13 /95
  • 14. Dict. U.C. Process. Compléments. Processus d’écriture des UC Trouver les acteurs Etudiant Catalogue des cours Enregistrer des cours Brève description: Ce UC permet à un étudiant Trouver les UC d’enregistrer ses cours... Seuls les formations bien construites sont acceptés. Le catalogue des cours est notifié des inscriptions. Description de «Enregistrer des cours» Décrire les UC -Flot d’évènements -Pas à pas Specification de «Enregistrer des cours» Détailler les UC - Flot d’évènements détaillés - Exigences spéciales - Pre/Postconditions 14 /95
  • 15. Dict. U.C. Process. Compléments. Processus d’écriture des UC Trouver les acteurs Important Trouver les UC C’est un processus itératif Décrire les UC Détailler les UC 15 /95
  • 16. Dict. U.C. Process. ✓1. acteurs Compléments. Processus d’écriture des UC Trouver les acteurs Nommer et brièvement décrire les Trouver les UC acteurs trouvés Décrire les UC Détailler les UC 16 /95
  • 17. Dict. U.C. Process. ✓1. acteurs Compléments. Définir le périmètre du SI : Acteurs Définir les acteurs externes ‣ physiques et logiques ‣ rôle et entité concrète « Un acteur est une personne ou une chose qui va interagir avec le système » 17 /95
  • 18. Dict. U.C. Process. ✓1. acteurs Compléments. Définir le périmètre du SI : Acteurs Définir les acteurs externes ‣ physiques et logiques ‣ rôle et entité concrète « Un acteur est une personne ou une chose qui va interagir avec le système » Etudiant 17 /95
  • 19. Dict. U.C. Process. ✓1. acteurs Compléments. Définir le périmètre du SI : Acteurs Définir les acteurs externes ‣ physiques et logiques ‣ rôle et entité concrète « Un acteur est une personne ou une chose qui va interagir avec le système » Etudiant Chef du Service des inscriptions 17 /95
  • 20. Dict. U.C. Process. ✓1. acteurs Compléments. Définir le périmètre du SI : Acteurs Définir les acteurs externes ‣ physiques et logiques ‣ rôle et entité concrète « Un acteur est une personne ou une chose qui va interagir avec le système » Système Enseignant Etudiant de facturation Chef du Service des inscriptions 17 /95
  • 21. Dict. U.C. Process. ✓1. acteurs Compléments. Client Acteurs Un Acteur = ‣ élément externe qui interagit avec le système ‣ rôle qu’un utilisateur joue par rapport au système ex: un enseignant, un guichetier Une même personne peut jouer plusieurs rôles ex: Marie est enseignante et étudiante Maurice est directeur mais peut faire le guichetier Plusieurs personnes peuvent jouer un même rôle ex: Paul et Pierre sont deux clients Un acteur n’est pas forcément un être humain ex: un distributeur de billet peut être vu comme un acteur; un gestionnaire de mot de passes 18 /95
  • 22. Dict. U.C. Process. ✓1. acteurs Compléments. Description des acteurs Client Pour chaque acteur : ‣ choisir un identificateur représentatif de son rôle (un bon nom décrit la responsabilité des acteurs) ‣ donner une brève description textuelle Un guichetier est un employé de la banque chargé de faire l’interface entre le système informatique et les clients qu’il reçoit au comptoir. Le guichetier peut réaliser les opérations courantes : création d ’un Guichetier compte, dépôt et retrait d ’argent, etc. Jean-Marie Favre 19 /95
  • 23. Dict. U.C. Process. ✓1. acteurs Compléments. Trouver les acteurs Qui ou quoi utilise le système? Qui ou quoi obtient de l'information de ce système ? Qui ou quoi fournit des informations au système ? Où dans la compagnie le système est-il utilisé ? Qui ou quoi supporte et maintient le système? Quels autres systèmes utilisent ce système? 20 /95
  • 24. Dict. U.C. Process. ✓1. acteurs Compléments. Décrire les acteurs Student : A person who signs up for a course Student - Qu'est-ce ou que l'acteur représente - Pourquoi l'acteur est nécessaire - Quel est l’intérêt de l’acteur dans le UC ? Professor Registrar 21 /95
  • 25. Dict. U.C. Process. ✓1. acteurs Compléments. Décrire les acteurs Student : A person who signs up for a course Student - Qu'est-ce ou que l'acteur représente - Pourquoi l'acteur est nécessaire - Quel est l’intérêt de l’acteur dans le UC ? Professor Registrar Course Catalog System 21 /95
  • 26. Dict. U.C. Process. ✓1. acteurs Compléments. UML au travail : Guichet automatique de banque Le guichet automatique d’une banque (GAB) offre les services suivants : Distribution d’argent à partir d’une carte de la banque ou d’une carte Visa. Consultation de solde de compte, dépôt en numéraire et dépôt de chèques pour les clients de la banque porteurs d’une carte de la banque. De plus, Toutes les transactions sont sécurisées. Il est parfois nécessaire de recharger le distributeur, . 22 /82 Voir UML2 par la pratique
  • 27. Identification des acteurs Quelles sont les entités externes qui interagissent avec le GAB ? • Porteur de carte Phrase 1 • Carte de crédit • Lecteur de carte • Distributeur de billets Phrase 2 • Porteur de carte client de la banque Phrase 3 Le système est sécurisé (par quoi?) 1. Le système d’autorisation 2. Le système d’information de la banque Phrase 4 • Opérateur de maintenance
  • 28. Dict. U.C. Process. ✓1. acteurs Compléments. UML au travail : Une ludothèque (1) Nous voulons informatiser une ludothèque pour favoriser la consultation des jeux proposés par la ludothèque. (2) Les adhérents peuvent emprunter des jeux en s’adressant à un conseiller qui enregistre l’emprunt. (3)Les jeux empruntés sont rendus à un conseiller.... (4) Un adhérent peut réserver des jeux. Une réservation précise l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti quand le jeu revient en rayon. (5) Pour organiser un événement le conseiller spécialisé doit alors donner les informations suivantes : les jeux à tester, le nombre maximal et minimal de participants attendus, la date, et l’heure de début de l’événement. (6) Un adhérent peut s’inscrire pour participer à un événement à condition qu’il y ait encore de la place. (7) Un adhérent peut payer sa cotisation en ligne par un système de paiement externe 24 /82
  • 29. Dict. U.C. Process. ✓1. acteurs Compléments. Diagramme de contexte 25 /95
  • 30. Le GAB est un système fondamentalement mono-utilisateur: à tout instant, il n’y a qu’une instance de chaque acteur (au maximum) connecté au système! Pour simplifier, nous utiliserons le terme Client banque pour l’acteur Porteur de carte client de la banque.
  • 32. Les acteurs humains Client banque et Porteur de carte sont mutuellement exclusifs, ce qui n’est pas implicite d’après les multiplicités des associations. On peut ajouter une contrainte {XOR} (ou exclusif)
  • 33. Une autre solution, un peu plus élaborée, consiste à considérer que Client banque est une spécialisation de Porteur de carte (héritage entre acteurs)
  • 34. Dict. U.C. Process. ✓1. acteurs Compléments. UML au travail : Une ludothèque (1) Nous voulons informatiser une ludothèque pour favoriser la consultation des jeux proposés par la ludothèque. (2) Les adhérents peuvent emprunter des jeux en s’adressant à un conseiller qui enregistre l’emprunt. (3)Les jeux empruntés sont rendus à un conseiller.... (4) Un adhérent peut réserver des jeux. Une réservation précise l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti quand le jeu revient en rayon. (5) Pour organiser un événement le conseiller spécialisé doit alors donner les informations suivantes : les jeux à tester, le nombre maximal et minimal de participants attendus, la date, et l’heure de début de l’événement. (6) Un adhérent peut s’inscrire pour participer à un événement à condition qu’il y ait encore de la place. (7) Un adhérent peut payer sa cotisation en ligne par un système de paiement externe 30 /82
  • 35. Dict. U.C. Process. ✓2. U.C. Compléments. Processus d’écriture des UC Trouver les acteurs Nommer et brièvement décrire les UC trouvés Trouver les UC Créer un diagramme de UC Etablir la plus- value métier et les Décrire les UC risques techniques des UC Détailler les UC 31 /95
  • 36. Dict. U.C. Process. ✓1. UC Compléments. Cas d’utilisation (UC) 32 /95
  • 37. Dict. U.C. Process. ✓1. UC Compléments. Cas d’utilisation (UC) Un cas d’utilisation est un motif cohérent de comportement ‣ réalisé par le système. 32 /95
  • 38. Dict. U.C. Process. ✓1. UC Compléments. Cas d’utilisation (UC) Un cas d’utilisation est un motif cohérent de comportement ‣ réalisé par le système. Chaque cas d’utilisation est décrit par une séquence d’actions connectées, effectuées par un dialogue entre des acteurs et le système ‣ qui produit un résultat observable ‣ d’intérêt pour un ou plusieurs acteurs du système. ‣ ne révèle pas la structure interne du système. 32 /95
  • 39. Dict. U.C. Process. ✓1. UC Compléments. Cas d’utilisation (UC) Un cas d’utilisation est un motif cohérent de comportement ‣ réalisé par le système. Chaque cas d’utilisation est décrit par une séquence d’actions connectées, effectuées par un dialogue entre des acteurs et le système ‣ qui produit un résultat observable ‣ d’intérêt pour un ou plusieurs acteurs du système. ‣ ne révèle pas la structure interne du système. Chaque cas d’utilisation est un flot complet et faisant du sens du point de vue d’un acteur particulier. 32 /95
  • 40. Dict. U.C. Process. ✓2. U.C. Compléments. Trouver les use-cases Quels sont les objectifs de chaque acteur? ‣ Pourquoi l'acteur utiliserait-il le système? ‣ Est-ce que l'acteur créera, stockera, modifiera, supprimera ou lira des données dans le système? Si oui, pourquoi? ‣ Est-ce que l'acteur nécessite d'informer le système sur des événements externes ou des changements? ‣ Est-ce que l'acteur doit être informé de certains événements dans le système? Quels buts dois-je atteindre en utilisant le système? Acteur 33 /95
  • 41. Dict. U.C. ✓cas d’utilisat. Process. Compléments. Cas d’utilisation Maintenir le Demander un Enregistrer ses cours Programme tableau de service 34 /82
  • 42. Dict. U.C. ✓cas d’utilisat. Process. Compléments. Cas d’utilisation Identification des besoins des acteurs ‣ Chef du service des inscriptions – maintenir le programme des études ‣ Enseignant – demander un tableau de service ‣ Etudiant – enregistrer ses cours ‣ Système de facturation – recevoir les informations de facturation du système d’inscription Maintenir le Demander un Enregistrer ses cours Programme tableau de service 34 /82
  • 43. Dict. U.C. Process. ✓2. UC Compléments. Nommer un use-case  Enregistrer des Cours ?  Enregistrement de cours  Cours  Utiliser le système d’enregistrement  Accuser réception des cours 35 /95
  • 44. Dict. U.C. Process. ✓2. UC Compléments. Nommer un use-case Le nom doit être unique, intuitif et auto-explicatif  Enregistrer des Cours ?  Enregistrement de cours  Cours  Utiliser le système d’enregistrement  Accuser réception des cours 35 /95
  • 45. Dict. U.C. Process. ✓2. UC Compléments. Nommer un use-case Le nom doit être unique, intuitif et auto-explicatif Il doit commencer par un verbe et utiliser une simple combinaison verbe-nom  Enregistrer des Cours ?  Enregistrement de cours  Cours  Utiliser le système d’enregistrement  Accuser réception des cours 35 /95
  • 46. Dict. U.C. Process. ✓2. UC Compléments. Nommer un use-case Le nom doit être unique, intuitif et auto-explicatif Il doit commencer par un verbe et utiliser une simple combinaison verbe-nom Définir clairement et sans ambiguïté le gain des résultats observables  Enregistrer des Cours ?  Enregistrement de cours  Cours  Utiliser le système d’enregistrement  Accuser réception des cours 35 /95
  • 47. Dict. U.C. Process. ✓2. UC Compléments. Nommer un use-case Le nom doit être unique, intuitif et auto-explicatif Il doit commencer par un verbe et utiliser une simple combinaison verbe-nom Définir clairement et sans ambiguïté le gain des résultats observables Placez vous du point de vue de l'acteur qui déclenche le cas d'utilisation  Enregistrer des Cours ?  Enregistrement de cours  Cours  Utiliser le système d’enregistrement  Accuser réception des cours 35 /95
  • 48. Dict. U.C. Process. ✓2. UC Compléments. Nommer un use-case Le nom doit être unique, intuitif et auto-explicatif Il doit commencer par un verbe et utiliser une simple combinaison verbe-nom Définir clairement et sans ambiguïté le gain des résultats observables Placez vous du point de vue de l'acteur qui déclenche le cas d'utilisation Décrire le comportement fournit par le cas d'utilisation  Enregistrer des Cours ?  Enregistrement de cours  Cours  Utiliser le système d’enregistrement  Accuser réception des cours 35 /95
  • 49. Dict. U.C. Process. ✓2. UC Compléments. Diagramme des UC Objectif : visualiser les relations entre acteurs et cas d’utilisation (communication) Enregistrer ses cours Consulter tableau de service Etudiant Enseignant S’inscrire Système de Etablir le facturation Programme Scolaire Chef du Service Des Inscriptions 36 /95
  • 50. Dict. U.C. Process. ✓2. UC Compléments. Communication : un dialogue L’étudiant se connecte au système Le système approuve la connexion. L’étudiant requiert des informations Enregistrer Etudiant ses cours Catalogue des cours Le système affiche la liste des cours Le système transmet la requête L’étudiant selectionne les cours Le Catalogue des cours retourne des informations sur les cours. Le système affiche l’edt approuvé 37 /95
  • 51. Dict. U.C. Process. ✓2. UC Compléments. UML au travail : Guichet automatique de banque Le guichet automatique d’une banque (GAB) offre les services suivants : Distribution d’argent à partir d’une carte de la banque ou d’une carte Visa. Consultation de solde de compte, dépôt en numéraire et dépôt de chèques pour les clients de la banque porteurs d’une carte de la banque. De plus, Toutes les transactions sont sécurisées. Il est parfois nécessaire de recharger le distributeur, . 38 /82 Voir UML2 par la pratique
  • 52. Dict. U.C. Process. ✓2. UC Compléments. Diagramme des cas d’utilisation Porteur de carte: Retirer de l’argent Client banque: Retirer de l’argent (bien sûr!) Acteurs Consulter le solde de son compte courant primaires Déposer du numéraire Déposer de l’argent (numéraire ou chèque) Opérateur de maintenance Recharger le distributeur Maintenir l’état opérationnel Système d’autorisation (Sys.Auto) Acteurs Néant secondaires Système d’information de la banque (SI banque) Néant /82
  • 53. Dict. U.C. Process. ✓2. UC Compléments. Diagramme des cas d’utilisation /82
  • 54. Dict. U.C. Process. ✓2. UC Compléments. Diagramme des cas d’utilisation amélioration /82
  • 55. Diagramme des cas d’utilisation sans les acteurs secondaires
  • 56. Dict. U.C. Process. ✓2. UC Compléments. UML au travail : Une ludothèque (1) Nous voulons informatiser une ludothèque pour favoriser la consultation des jeux proposés par la ludothèque. (2) Les adhérents peuvent emprunter des jeux en s’adressant à un conseiller qui enregistre l’emprunt. (3)Les jeux empruntés sont rendus à un conseiller.... (4) Un adhérent peut réserver des jeux. Une réservation précise l’emprunteur, le jeu et la date de la demande de réservation. L’adhérent est averti quand le jeu revient en rayon. (5) Pour organiser un événement le conseiller spécialisé doit alors donner les informations suivantes : les jeux à tester, le nombre maximal et minimal de participants attendus, la date, et l’heure de début de l’événement. (6) Un adhérent peut s’inscrire pour participer à un événement à condition qu’il y ait encore de la place. (7) Un adhérent peut payer sa cotisation en ligne par un système de paiement externe 43 /82
  • 57. Dict. U.C. Process. ✓2. UC Compléments. Le système Le système est un ensemble de cas d’utilisation Le système contient : ‣ les cas d ’utilisation, ‣ mais pas les acteurs. Un modèle de cas d ’utilisation permet de définir : ‣ les fonctions essentielles du système, ‣ les limites du système, ‣ le système par rapport à son environnement. 44 /95
  • 58. Dict. U.C. Process. ✓2. UC Compléments. System Frontière du système Etablir un emploi du temps Etudiant Enregistrer ses cours Catalogue S’inscrire des cours Demander Système de un tableau de facturation service Système de Enseignant facturation Maintenir le Programme Chef du Service 45 /95 Des Inscriptions
  • 59. Dict. U.C. ✓Desc. Process. Compléments. Description succincte d’un UC Sommaire d'identification : ■ Titre ■ Résumé ■ Acteurs ■ Date de création ■ Date de mise à jour ■ Version ■ Responsable 46 /95
  • 60. Dict. U.C. Process. ✓2. UC Compléments. Description textuelle du cas d'utilisation: « RETIRER DE L’ARGENT »    Sommaire d'identification Titre : Retirer de l'argent Résumé : ce cas d'utilisation permet à un porteur de carte, qui n'est pas client de la banque, de retirer de l'argent, si son crédit hebdomadaire le permet. Acteurs : Porteur de carte non client (principal), Sys. Auto. (secondaire). Date de création : 03/01/07 Date de mise à jour : 09/02/07 Version : 1.0 Responsable : Pierre DUMONT /82
  • 61. Dict. U.C. Process. ✓3.décrire. Compléments. Processus d’écriture des UC Trouver les acteurs Décrire les flots d’évènements (bref) Trouver les UC Saisir les scenarii Collecter les exigences additionnelles Décrire les UC Détailler les UC 48 /95
  • 62. Dict. U.C. Process. ✓3.décrire. Compléments. Décrire une UC Décrire chaque étape du UC par des phrases courtes, organisées séquentiellement. Use Case Name Brief Description Basic Flow 1. First step 2. Second step 3. Third step Alternative Flows 1. Alternative flow 1 2. Alternative flow 2 3. Alternative flow 3 49 /95
  • 63. Dict. U.C. Process. ✓3.décrire. Compléments. Décrire une UC Décrire chaque étape du UC par des phrases courtes, organisées séquentiellement. Use Case Name Brief Description Structurer Basic Flow le flot de Numéroter base en 1. First step et nommer 2. Second step étapes les étapes. 3. Third step majeures Alternative Flows 1. Alternative flow 1 Identifier 2. Alternative flow 2 les flots 3. Alternative flow 3 alternatifs. 49 /95
  • 64. Dict. U.C. Process. ✓3.décrire. Compléments. Pas à pas : enregistrer ses cours Basic Flow ‣ 1. L’étudiant se connecte. ‣ 2. L’étudiant choisit d’enregistrer ces choix de cours. ‣ 3. L’étudiant obtient des informations sur les cours. ‣ 4. L’étudiant sélectionne les cours. ‣ 5. L’étudiant soumet ses choix. D’autres ‣ 6. Le système valide les choix. alternatives? Alternative Flows ‣ A1. Etudiant non identifié ‣ A2. L’étudiant quitte l’application avant soumission ‣ A3. Les choix ne sont pas valides ‣ A4. Le catalogue des Cours est non accessible. 50 /95
  • 65. Dict. U.C. Process. ✓3.décrire. Compléments. Décrire les UC Un processus itératif : ne pas tout détailler, pas trop tôt Un processus de découverte : Décrire vous aide à découvrir ce que vous ne connaissez pas. Une brève description sert de point de départ. Un processus d’évaluation : UC trop petit ou trop gros ? partagé? 51 /95
  • 66. Dict. U.C. Process. ✓3.décrire. Compléments. Exigences additionnelles Collecter les exigences système qui ne peuvent pas être allouées à des UC spécifiques dans des documents additionnels. 52 /95
  • 67. Dict. U.C. Process. ✓4.détailler Compléments. Processus d’écriture des UC Trouver les acteurs Détailler les flots d'événements Structurer les flots Trouver les UC d'événements Spécifier les propriétés additionnelles Décrire les UC Détailler les UC 53 /95
  • 68. Dict. U.C. ✓Système Process. ✓4.détailler Compléments. Description détaillée d’un UC ■ Description des scénarios: ■ Préconditions ■ Scénario Nominal ■ Flots alternatifs ■ Flots d'erreur ■ Postconditions ■ Exigences non fonctionnelles ■ Besoins d'IHM 54 /95
  • 69. Dict. U.C. Process. ✓4.détailler Compléments. Préconditions  Décrire l'état dans lequel doit être le système avant que le UC puisse commencer.  Simples déclarations qui définissent l'état du système, exprimées comme ses conditions qui doivent être remplies  Il ne faut jamais se référer à d'autres UC qui doivent être effectuées avant cet UC  Devraient être énoncées clairement et devraient être facilement vérifiables  Facultatif: Utilisez uniquement si nécessaire pour clarifier  Exemple  UC «Inscription à des cours»  Préconditions  La liste des offres de cours pour le semestre a été créée et est disponible au service d’inscription.  L'élève a ouvert une session d’inscription dans le système 55 /95
  • 70. Dict. U.C. ✓Système Process. ✓4.détailler Compléments. Description détaillée d’un UC ■ Description des scénarios: ■ Préconditions ■ Scénario Nominal ■ Flots alternatifs ■ Flots d'erreur ■ Postconditions ■ Exigences non fonctionnelles ■ Besoins d'IHM 56 /95
  • 71. Dict. U.C. Process. ✓4.détailler Compléments. Détailler le flot de base Register for Courses 1.1 Basic Flow 1. Log On. This use case starts when someone accesses the Décrire les étapes. Course Registration System and chooses to register for courses. The system validates that the person accessing the system is an authorized student. 2. Select “Create a Schedule ”. The system displays the functions available to the <Acteur> student. The student selects “Create a Schedule ”. 3. Obtain Course Information. <fait> The system retrieves a list of available course offerings from the Course Catalog System and displays the list to the student .The student can search the list by department, professor, or topic to obtain the desired course information . <Système> 4. Select Courses. The student selects four primary course offerings and <fait> two alternate course offerings from the list of available offerings course offerings. 57 /95
  • 72. Dict. U.C. Process. ✓4.détailler Compléments. Formulation  Utilisez la voix active  Dire: “Le Professeur attribue des notes à chaque étudiant”  Au lieu de : “Quand le Professeur a attribué les notes”  Dire ce qui déclenche l’étape  Dire: “Le UC commence quand le Prof. choisit de donner une note.”  Au lieu de : “Le UC commence quand le Prof. décide de ....  Dire qui fait quoi (utiliser le nom d'acteur)  Dire: “L'étudiant choisit ... …”  Au lieu de: "L'utilisateur choisit ...…"  Dire: “Le Système valide …”  Au lieu de: "Le choix est validé …" 58 /95
  • 73. Description textuelle du cas d'utilisation: « RETIRER DE L’ARGENT »    Description des scénarios Pré conditions •La caisse du GAB est alimentée (il reste au moins un billet !). •Aucune carte ne se trouve déjà coincée dans le lecteur. Scénario nominal 1. Le porteur de carte introduit sa carte dans le lecteur de cartes du GAB. 2. Le GAB vérifie que la carte introduite est bien une carte bancaire.
  • 74. 3. Le GAB demande au porteur de carte de saisir son code d'identification. 4. Le porteur de carte saisit son code d'identification. 5. Le GAB compare le code d'identification avec celui qui est codé sur la puce de la carte. 6. Le GAB demande une autorisation au système d'autorisation. 7. Le système d'autorisation donne son accord et indique le solde hebdomadaire. 8. Le GAB demande au porteur de carte de saisir le montant désiré du retrait. 9. Le porteur de carte saisit le montant désiré du retrait. 10. Le GAB contrôle le montant demandé par rapport au solde hebdomadaire. 11. Le GAB demande au porteur de carte s'il veut un ticket. 12. Le porteur de carte demande un ticket. 13. Le GAB rend sa carte au porteur de carte. 14. Le porteur de carte reprend sa carte. 15. Le GAB délivre les billets et un ticket. 16. Le porteur de carte prend les billets et le ticket. 17. Le GAB enregistre la transaction de retrait.
  • 75. Description textuelle du cas d'utilisation: RETIRER DE L’ARGENT  (Représentation de C.Larman) Une autre présentation dite de Larman consiste à séparer les actions des acteurs et du système en deux colonnes: Action d’acteur Action Système 1. Le porteur de carte introduit sa 2. Le GAB vérifie que la carte carte dans le lecteur de cartes du introduite est bien une carte GAB. bancaire. 3. Le GAB demande au porteur de carte de saisir son code d'identification. 4. Le porteur de carte saisit son 5. Le GAB compare le code code d'identification. d’identification avec celui qui est codé sur la puce de la carte. 6. Le GAB demande une autorisation au système d'autorisation global.
  • 76. 7. Le système donne son accord et 8. Le GAB de mande au porteur de indique le solde carte de saisir le montant désiré hebdomadaire. du retrait. 9. Le porteur de carte saisie le 10. Le GAB contrôle le montant montant désiré demandé par rapport au solde hebdomadaire 11. Le GAB demande au porteur de carte s’il veut un ticket 12. Le porteur de carte demande 13. Le GAB rend sa carte au porteur un ticket. de carte. 14. Le porteur de carte reprend sa 15. Le GAB délivre des billets et un carte ticket. 16. Le porteur de carte prend les 17. Le GAB enregistre la transaction billets et le ticket. de retrait.
  • 77. Dict. U.C. ✓Système Process. ✓4.détailler Compléments. Description détaillée d’un UC ■ Description des scénarios: ■ Préconditions ■ Scénario Nominal ■ Flots alternatifs ■ Flots d'erreur ■ Postconditions ■ Exigences non fonctionnelles ■ Besoins d'IHM 63 /95
  • 78. Enchaînements alternatifs* Al : code d'identification provisoirement erroné L'enchaînement Al démarre au point 5 du scénario nominal. 6. Le GAB indique au porteur de carte que le code est erroné, pour la première ou deuxième fois. 7. Le GAB enregistre l'échec sur la carte. Le scénario nominal reprend au point 3. A2 : montant demandé supérieur au solde hebdomadaire L'enchaînement A2 démarre au point 10 du scénario nominal. 11. Le GAB indique au porteur de carte que le montant demandé est supérieur au solde hebdomadaire. Le scénario nominal reprend au point 8. * Nous distinguons les enchaînements alternatifs (Ax) qui reprennent ensuite à une étape du scénario nominal des enchaînements d'erreur (Ey) qui terminent brutalement le cas d'utilisation en échec. L'objectif de l'acteur principal est donc atteint par les scénarios nominaux et alternatifs mais pas par ceux d'erreur.
  • 79. A3 : ticket refusé L'enchaînement A3 démarre au point 11 du scénario nominal. 12. Le porteur de carte refuse le ticket. 13. Le GAB rend sa carte au porteur de carte. 14. Le porteur de carte reprend sa carte. 15. Le GAB délivre les billets. 16. Le porteur de carte prend les billets. 17. Le GAB enregistre la transaction de retrait. Enchaînements d’erreur El : carte non-valide L'enchaînement El démarre au point 2 du scénario nominal. 3. Le GAB indique au porteur que la carte n'est pas valide (illisible, périmée, etc.), la confisque ; le cas d'utilisation se termine en échec.
  • 80. E2 : code d'identification définitivement erroné L'enchaînement E2 démarre au point 5 du scénario nominal. 6. Le GAB indique au porteur de carte que le code est erroné, pour la troisième fois. 7. Le GAB confisque la carte. 8. Le système d'autorisation est informé ; le cas d'utilisation se termine en échec. E3 : retrait non autorisé L'enchaînement E3 démarre au point 6 du scénario nominal. 7. Le système d'autorisation interdit tout retrait. 8. Le GAB éjecte la carte ; le cas d'utilisation se termine en échec. E4 : carte non reprise L'enchaînement E4 démarre au point 13 du scénario nominal. 14. Au bout de 15 secondes, le GAB confisque la carte. 15. Le système d'autorisation est informé ; le cas d'utilisation se termine en échec.
  • 81. E5 : billets non pris L'enchaînement E5 démarre au point 15 du scénario nominal. 16. Au bout de 30 secondes, le GAB reprend les billets. 17. Le système d'autorisation est informé ; le cas d'utilisation se termine en échec. E6 : annulation de la transaction L'enchaînement E6 peut démarrer entre les points 4 et 12 du scénario nominal. 4 à 12. Le porteur de carte demande l'annulation de la transaction en cours. Le GAB éjecte la carte ; le cas d'utilisation se termine en échec. E4 : carte non reprise L'enchaînement E4 démarre au point 13 du scénario nominal. 14. Au bout de 15 secondes, le GAB confisque la carte. 15. Le système d'autorisation est informé ; le cas d'utilisation se termine en échec.
  • 82. Dict. U.C. Process. ✓3.décrire. Compléments. Décrire les flots d'événements Flot de base ‣ Quel événement déclenche le cas d'utilisation? ‣ Comment le cas d'utilisation se termine-t-il? ‣ Comment le cas d'utilisation répète-t-il certains comportements? Flots d’exceptions ‣ Y-a-t-il des situations facultatives dans le cas d'utilisation? ‣ Quel cas étrange pourrait se produire? Etape de ‣ Quelles variantes pourraient arriver? communication avec Qu’est-ce qui peut mal tourner? les utilisateurs ‣ ‣ Qu’est-ce qui ne peut pas se produire? ‣ Quels types de ressources peuvent être bloqués? Pas dans le détail 68 /95
  • 83. Dict. U.C. ✓Système Process. ✓4.détailler Compléments. Description détaillée d’un UC ■ Description des scénarios: ■ Préconditions ■ Scénario Nominal ■ Flots alternatifs ■ Flots d'erreur ■ Postconditions ■ Exigences non fonctionnelles ■ Besoins d'IHM 69 /95
  • 84. Dict. U.C. Process. ✓4.détailler Compléments. Postconditions  Décrire l'état dans lequel doit être le système à la fin du UC  Utiliser lorsque l'état du système est une condition préalable à un autre UC, ou lorsque les résultats possibles du UC ne sont pas évidents pour le lecteur  Il ne faut jamais se référer à d'autres UC qui doivent être effectués avant cet UC  Devraient être énoncées clairement et devraient être facilement vérifiables  Facultatif: Utilisez uniquement si nécessaire pour clarifier  Exemple on peut commencer par les postconditions avant même les  UC «Inscription à des cours» flots.  Postconditions  À la fin de ce cas d'utilisation, soit l'étudiant a été inscrit à des cours, soit l’inscription a échoué et aucune modification n'a été apportée à aux cours... 70 /95
  • 85. Dict. U.C. Process. ✓4.détailler Compléments. Exemple de description détaillée d’un UC Précondition : Le distributeur contient des billets, il est en attente d ’une opération, il n’est ni en panne, ni en maintenance Début : lorsqu ’un client introduit sa carte bancaire dans le Retirer DeLArgent distributeur. AuDistributeur Fin : lorsque la carte bancaire et les billets sont sortis. Postcondition : Si de l ’argent a pu être retiré la somme d’argent sur le compte est égale à la somme d ’argent qu’il y avait avant, moins le montant du retrait. Sinon la somme d ’argent sur le compte est la même qu’avant. Jean-Marie Favre 71 /95
  • 86. Dict. U.C. ✓Système Process. ✓4.détailler Compléments. Description détaillée d’un UC ■ Description des scénarios: ■ Préconditions ■ Scénario Nominal ■ Flots alternatifs ■ Flots d'erreur ■ Postconditions ■ Exigences non fonctionnelles ■ Besoins d'IHM 72 /95
  • 87. Dict. U.C. Process. ✓4.détailler Compléments. Exemple de description détaillée d’un UC Contraintes non fonctionnelles : (A) Performance : le système doit réagir dans un délai inférieur à 4 secondes, quelque soit l ’action de l ’utilisateur. Retirer DeLArgent AuDistributeur (B) Résistance aux pannes : si une coupure de courant ou une autre défaillance survient au cours du cas d ’utilisation, la transaction sera annulée, l ’argent ne sera pas distribué. Le système doit pouvoir redémarrer automatiquement dans un état cohérent et sans intervention humaine. (C) Résistance à la charge : le système doit pouvoir gérer plus de 1000 retraits d ’argent simultanément ... Jean-Marie Favre 73 /95
  • 88. Description textuelle du cas d'utilisation: « RETIRER DE L’ARGENT »  informations optionnelles Exigences non fonctionnelles Contraintes Descriptif Temps de réponse L’interface du GAB doit réagir en l’espace de 2 secondes au maximum. Une transaction nominale de retrait doit durer moins de 2 minutes Concurrence Non applicable (mono-utilisateur) Disponibilité Le GAB est accessible 7j/7, 24h/24 . L’absence de papier pour les tickets ne doit pas empêcher les retraits. Intégrité Les interface du GAB doivent être très robustes pour prévenir le vandalisme Confidentialité La vérification du code saisi doit être fiable à 10-6
  • 89. Dict. U.C. ✓Système Process. ✓4.détailler Compléments. Description détaillée d’un UC ■ Description des scénarios: ■ Préconditions ■ Scénario Nominal ■ Flots alternatifs ■ Flots d'erreur ■ Postconditions ■ Exigences non fonctionnelles ■ Besoins d'IHM 75 /95
  • 90. Description textuelle du cas d'utilisation: « RETIRER DE L’ARGENT »  informations optionnelles Besoins d’IHM Les dispositifs d'entrée/sortie à la disposition du porteur de carte doivent être : • Un lecteur de carte bancaire. • Un clavier numérique (pour saisir son code), avec des touches «validation », « correction » et « annulation ». • Un écran pour l'affichage des messages du GAB. • Des touches autour de l'écran pour sélectionner un montant de retrait parmi ceux qui sont proposés. • Un distributeur de billets. • Un distributeur de tickets.
  • 91. Dict. U.C. Process. ✓4.détailler Compléments. Faire le point sur les UC Les interactions entre le système et les acteurs sont claires Les séquence de communication sont conformes aux attentes de l'utilisateur Quand/comment les UC commencent/se terminent est clair Le flot de base de base donne un résultat observable pour un ou plusieurs acteurs 77 /95
  • 92. Dict. U.C. Process. ✓4.détailler Compléments. Quel niveau de détail? ✓ Saisir toutes les X Pas de détail des exigences pour tous les interfaces utilisateurs demandeurs X Pas de détail des processus internes non liés à une exigence ✓ Informations et événements X Pas les formats de données, ni les contrôles How much detail in a use case? Enough to satisfy all stakeholders that their interests (requirements) will be satisfied in the delivered system. 78 /95
  • 93. Dict. U.C. Process. Compléments. Ecrire des UC : Défis 1. Comment garder les UC précis et concis? 2. Comment traiter les interfaces utilisateur? 3. Comment traiter un flux quand a. Un acteur doit choisir parmi différentes options? b. Un acteur peut répéter des actions avant de passer à la suite? c. Les étapes ne sont pas nécessairement séquentielles? 4. Comment gérer le comportement conditionnelle dans les cas d'utilisation? 79 /95
  • 94. Dict. U.C. Process. Compléments. 1.Comment garder les UC précis et concis?(1) ✓ Capturer le vocabulaire commun dans un glossaire ➡ Définir les termes utilisés dans le projet dans le glossaire, pas dans les flux ➡ Aide à éviter les malentendus Use Case Glossary 5. Enter Customer Information Customer Details Information that uniquely identifies and The system prompts the Customer to provides contact information enter their Customer Details. for a customer located in the The Customer enters the Customer U.S.A. The information consists of Name, two address Details. lines, city, state, ZIP code, and The Customer creates the account. daytime phone number. Implementation 80 /95
  • 95. Dict. U.C. Process. Compléments. 1.Comment garder les UC précis et concis? (2) ✓ Visualiser le glossaire par un modèle du domaine Student 1 0..* Schedule 0..* 0..4 Course Offering 0..* 0..* 0..1 1 Part-time Student Full-time Student Professor Course 81/95
  • 96. Dict. U.C. Process. Compléments. Relations entre UC : Include, Extend, Specialize 82 /95
  • 97. Dict. U.C. Process. Compléments. Relations entre UC : Include, Extend, Specialize Au fur et à mesure que les cas d’utilisation sont documentés, des relations peuvent apparaître ‣ Une relation include : utilisation systématique ‣ Une relation extend dénote un comportement optionnel 82 /95
  • 98. Dict. U.C. Process. Compléments. Extends Les deux UC sont indépendants. Permettre au client de consulter son solde avant de saisir le montant : extension optionnelle. Flot enrichi 8. Le GAB demande au client de saisir le montant Point d’extension : Vérification du solde 9. Le client saisit le montant désiré de retrait 83 /95
  • 99. Dict. U.C. Process. Compléments. Ludothèque /82
  • 100. Dict. U.C. Process. Compléments. La relation <<include>> /95
  • 101. Dict. U.C. Process. Compléments. La relation <<include>> La relation d’include a pour seul objectif de factoriser une partie de la description d’un cas d’utilisation qui est commune à d’autres cas d’utilisation. /95
  • 102. Dict. U.C. Process. Compléments. La relation <<include>> La relation d’include a pour seul objectif de factoriser une partie de la description d’un cas d’utilisation qui est commune à d’autres cas d’utilisation. Le cas d’utilisation inclus dans les autres cas d’utilisation n’est pas à proprement parler un vrai cas d’utilisation car il n’a pas d’acteur déclencheur ou receveur d’évènement. /95
  • 103. Dict. U.C. Process. Compléments. La relation <<include>> La relation d’include a pour seul objectif de factoriser une partie de la description d’un cas d’utilisation qui est commune à d’autres cas d’utilisation. Le cas d’utilisation inclus dans les autres cas d’utilisation n’est pas à proprement parler un vrai cas d’utilisation car il n’a pas d’acteur déclencheur ou receveur d’évènement. Il est juste un artifice pour faire de la réutilisation d’une portion de texte. /95
  • 104. Généralisation  L'association de généralisation entre cas d'utilisation a la même sémantique que pour les classes Valider usager Vérifier Scanner mot de passe rétine 86
  • 105. Dict. U.C. Process. Compléments. Ludothèque /82
  • 106. Dict. U.C. Process. Compléments. Ludothèque /82
  • 107. Dict. U.C. Process. Compléments. Ludothèque /82
  • 108. Dict. U.C. Process. Compléments. Structuration des UC en packages Scanner p 43 et 44 de UML par la pratique On peut alors, si nécessaire, détailler certains de cas d’utilisation. /95
  • 109. Dict. U.C. Process. Compléments. 2. Comment traiter les interfaces utilisateur? ✓Laissez l'interface utilisateur hors des UC ➡ Les UC sont indépendants de l'interface utilisateur ➡ Décrire les interfaces utilisateur avec des modèles dédiés ou des prototypes Words to Avoid Words to Use Click Drag Form Prompts Chooses Open Close Drop Initiates Button Field Drop-down Specifies Pop-up Scroll Browse Submits Selects Record Window Starts Displays Informs “Le système fait sonner le téléphone.” 91 /95
  • 110. Dict. U.C. Process. Compléments. 2. Comment traiter les interfaces utilisateur? ✓Laissez l'interface utilisateur hors des UC ➡ Les UC sont indépendants de l'interface utilisateur ➡ Décrire les interfaces utilisateur avec des modèles dédiés ou des prototypes Words to Avoid Words to Use Click Drag Form Prompts Chooses Open Close Drop Initiates Button Field Drop-down Specifies Pop-up Scroll Browse Submits Selects Record Window Starts Displays Informs “Le système fait sonner le téléphone.” 91 /95
  • 111. Dict. U.C. Process. Compléments. 2. Comment traiter les interfaces utilisateur? ✓Laissez l'interface utilisateur hors des UC ➡ Les UC sont indépendants de l'interface utilisateur ➡ Décrire les interfaces utilisateur avec des modèles dédiés ou des prototypes Words to Avoid Words to Use Click Drag Form Prompts Chooses Open Close Drop Initiates Button Field Drop-down Specifies Pop-up Scroll Browse Submits Selects Record Window Starts Displays Informs “Le système fait sonner le téléphone.” 91 /95
  • 112. Dict. U.C. Process. Compléments. 2. Comment traiter les interfaces utilisateur? ✓Laissez l'interface utilisateur hors des UC ➡ Les UC sont indépendants de l'interface utilisateur ➡ Décrire les interfaces utilisateur avec des modèles dédiés ou des prototypes Words to Avoid Words to Use Click Drag Form Prompts Chooses Open Close Drop Initiates Button Field Drop-down Specifies Pop-up Scroll Browse Submits Selects Record Window Starts Displays Informs “Le système fait sonner le téléphone.” notifie 91 /95
  • 113. Si c’est nécessaire...Après... • avec l’addon Firefox : • http://pencil.evolus.vn/en-US/Downloads/Application.aspx 92
  • 114. Résumé et conseils méthodologiques 93
  • 115. Dict. U.C. Process. Compléments. Cas d’utilisation : résumé  Se servir des Cas d’Utilisation UML pour identifier les exigences fonctionnelles. 94 /95
  • 116. Dict. U.C. Process. Compléments. Cas d’utilisation : résumé 95 /95