SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
1001
Améliorer les spécifications
  logicielles grâce à la
   modélisation métier

          Pascal Roques
          Valtech Training
Présentations
• Intervenant : Pascal Roques
  •   Formateur et consultant senior chez Valtech Training
  •   Responsable de l’offre formation autour d’UML
  •   Auteur de 3 ouvrages sur UML parus chez Eyrolles :
        UML 2 en action           UML 2 par la pratique
       De l'analyse des besoins       Études de cas et
                                                                      UML
         à la conception J2EE                              Modéliser un site e-commerce
                                      exercices corrigés
Notre programme
• 1. La problématique de la modélisation métier
• 2. Comment modéliser les processus métier ?
• 3. Comment modéliser les objets métier ?
• 4. Le passage aux spécifications logicielles



  •   Les diagrammes de la présentation ont
      été réalisés avec l’outil Together®
1 : La problématique de la
    modélisation métier
Business Modeling (BM)
• La modélisation du niveau métier consiste à
 représenter l’entreprise : ses processus, ses
 ressources et son organisation




                            Modèle
                         d’organisation

          Modèle des
                                          Modèle des
          ressources
                                          processus
                       Entreprise
Les objectifs du BM
• Le BM peut avoir des objectifs très différents suivant
 le contexte

• Principaux buts :
  •   Réorganiser le S.I.
  •   Préciser les besoins d’une application
  •   Optimiser les systèmes informatiques existants
  •   Préparer la mise en place d’un ERP
  •   …
Préciser les besoins d’un logiciel
• Pallier au manque de définition du contexte métier
  lors du démarrage d’un projet informatique
  •   Cahier des charges incomplet
  •   Objectifs stratégiques de l’entreprise perdus de vue
• Gérer les risques de mauvais ciblage du projet
  • Différence entre besoins réels et besoins exprimés
  • Manque de visibilité globale sur l’activité des
    utilisateurs
  • Tentation d’automatiser les pratiques en cours, sans
    profiter du potentiel de changement lié aux
    nouvelles technologies
• Cette tâche amont est trop souvent négligée !
  • Elle n’est en général pas budgétisée
  • Les experts métier sont peu disponibles
BM orienté objet avec UML ?
• UML est un standard de modélisation
  •   Langage commun pour communiquer et capitaliser
  •   Puissance de modélisation applicable à de multiples
      niveaux d’abstraction
  •   Extensibilité intégrée au langage
• UML est utilisé sur les projets informatiques
  •   Couverture complète de tout le cycle de développement
  •   En phase avec les nouvelles technologies
  •   Continuité des concepts de bout en bout
Les diagrammes d’UML
• UML 1.5 propose 9 types de diagrammes :
  •   Diagramme de cas d’utilisation
                                                              Fonctionnel
  •   Diagramme de classes
  •   (Diagramme d’objets)                                    DIAGRAMME DE CAS
                                                                 D'UTILISATION


  •   Diagramme de séquence
  •   (Diagramme de collaboration)      Statique                                      Dynamique
  •   Diagramme d’activités            DIAGRAMME DE CLASSES                           DIAGRAMME D'ÉTATS
                                        DIAGRAMME D'OBJETS                          DIAGRAMME D'ACTIVITÉ

      Diagramme d’états
                                     DIAGRAMME DE COMPOSANTS                       DIAGRAMME DE SÉQUENCE
  •                                  DIAGRAMME DE DÉPLOIEMENT                    DIAGRAMME DE COLLABORATION



  •   (Diagramme de composants)
  •   (Diagramme de déploiement)
UML pour le BM (1/2)
• Nous privilégions 2 types de diagrammes :
             •     Diagramme de classes                                          Diagramme d’activités
                                                                                     Client

                                                                                                                                   Chef d'atelier
                                               De man d e De R e p ar at ion
                                concerne                                       Demande reparation

                                            date
                                            description                                                                     Verifier la demande


                                                                                                                   [NOK]
                  1
                 V oit u r e                           1
                                                                                                                                         [OK]
                                                                                                   Prendre un RV
             modele
                                                                                                                             Etablir un devis
             immatriculation                               donne lieu a                                                                                                  Mecanicien
             kilometrage                                                                                            devis refuse                    devis accepte

                                                    0..1                                                                                                            Effectuer la reparation
         1             1                              De vis
                                                                                                                            Verifier le vehicule
         1             1                          montant
                                                  dateValidite
   Cle                     Cart e G r ise                                                                           [OK]                            [NOK]


numero                 immatriculation
                                                                                Payer la facture


                                                                                                                            Livrer le vehicule
UML pour le BM (2/2)
• Nous utilisons 3 autres types de diagrammes :
  •   Diagramme de cas d’utilisation


  •   Diagramme de séquence


                                 Diagramme d’états
La démarche de BM avec UML

                                                                                                               Identifier les acteurs et les
                                                                                                                   processus métier




                                                                                                                                                                                                                                                                                                De man d e De R e p ar at ion
                                                                                                                                                                                                                                                                                  concerne
                                                                                                                                                                                                                                                                                             date
                                                                                                                                                                                                                                                                                             description

                                                                                                                                                                                                                                                              1
                                                                                                                                                                                                                                                             V oit u r e                                1

                                                                                                                                                                                                                                                          modele
                                                                                                                                                                                                                                                          immatriculation                                   donne lieu a
                                                                                                                                                                                                                                                          kilometrage

                                                                                                                                                                                                                                                                                                     0..1
                                                                                        Décrire les                                 Identifier et décrire les                                                                                         1               1                                De vis
                                                                                     processus métier                                    entités métier                                                                                               1               1                            montant
                                                                                                                                                                                                                                                                                                   dateValidite
      Client                                                                                                                                                                                                                                   Cle                        Cart e G r ise

                                                    Chef d'atelier                                                                                                                                                                     numero                        immatriculation

Demande reparation                                                                                                                                                Client


                                             Verifier la demande                                                                                                                                             Chef d'atelier
                                                                                                                                                         Demande reparation

                                    [NOK]                                                                                                                                                       <<entity>>
                                                                                                                                                                                           :De man d e De R e p ar at ion


                                                          [OK]                                                                                                                                            Verifier la demande
                    Prendre un RV
                                              Etablir un devis
                                                                                          Mecanicien                                                                                            [NOK]
                                                                                                                                                                                Prendre un RV                                                                        Mecanicien
                                     devis refuse                    devis accepte                                                                                                                                     [OK]

                                                                                                                                                                                                          Etablir un devis
                                                                                                                                                                                                                                                                           <<entity>>
                                                                                     Effectuer la reparation                                                                                                                                                                :V oit u r e
                                                                                                                                                                        <<entity>>                                                                                         [a reparer]
                                                                                                                                                                         :De vis
                                                                                                                                                                                                  devis refuse                         devis accepte
                                             Verifier le vehicule


                                     [OK]                            [NOK]                                             Consolider                                                                                                     <<entity>>
                                                                                                                                                                                                                                                              Effectuer la reparation

                                                                                                                                                                                                        Verifier le vehicule           :V oit u r e
                                                                                                                                                                <<entity>>                                                            [reparee]
                                                                                                                                                                 :Fac tu re
                                                                                                                                                                                                                                                             [NOK]
 Payer la facture

                                                                                                                                                                                                             [OK]
                                             Livrer le vehicule                                                                                              Payer la facture



                                                                                                                                                                                                                               <<entity>>
                                                                                                                                                                                                                                :V oit u r e
                                                                                                                                                                                                                                [a livrer]
                                                                                                                                                                                                  Livrer le vehicule
2 : Comment modéliser les
    processus métier ?
Processus métier
• Un processus métier modélise un service
 rendu par une organisation
  •   On parle aussi de cas d'utilisation métier
      (“business use case”)


                             Garage


                        <<processus métier>>
                        Réparer une voiture
           Client
Types d’acteurs métier
• Un acteur métier modélise une
  personne ou un rôle qui participe
  à au moins un processus métier
• On peut distinguer :
  •   Business Actor
      •   Extérieur à l’entreprise : client,
          fournisseur…
  •   Business Worker
      •   Rôle interne à l’entreprise :
          mécanicien, chef d’atelier…
          •   Case worker, internal worker
Diagramme de cas d’utilisation
• Le diagramme de cas d’utilisation UML
 permet de mettre en relation les acteurs et
 les processus métier
  •   Très simple, synthétique

                                         Garage




                                                  <<internal worker>>
                  <<processus métier>>
                                                    Mecanicien
                  Reparer une voiture
      Client



                                                   <<case worker>>
                                                    Chef d'atelier
Exemple plus complet
                                                         <<processus support>>
                                                       Acheter des pieces detachees
                                                                                        Fournisseur
                           <<case worker>>                                            Fournisseur
                            Chef d'atelier



          <<processus métier>>
           Reparer une voiture
                                             <<internal worker>>
                                                Mecanicien



           <<processus métier>>
            Vendre une voiture
Client


                                                              <<case worker>>
                                                               Commercial
            <<processus métier>>
         Racheter une voiture d'occasion
Plan type détaillé
• Permet de décrire chaque processus métier dans
 ses moindres détails
  •   Plan-type (Template) à définir par entreprise
  •   Exemple :
      •   Titre
      •   Objectif
      •   Précondition
      •   Scénario nominal
      •   Extensions
      •   Postconditions
      •   Risques
      •   Etc.
Exemple
Titre : Réparer une voiture
Pré-condition : L'atelier est en état de fonctionnement normal couvrant 80% de ses capacités de réparation avec son personnel présent
et ses pièces détachées.

Scénario nominal
Le processus commence quand un client déclare vouloir faire réparer sa voiture à l'atelier.
1. Le client est accueilli par le chef d'atelier qui vérifie le rendez-vous déjà pris, ou bien planifie un rendez-vous (extension « Prendre
rendez-vous »).
2. Le chef d'atelier demande les clés et la carte grise du véhicule au client. Il donne au client un temps approximatif nécessaire pour
effectuer la réparation et lui soumet un devis.
3. Le client accepte le devis (Erreur 1 : le client refuse le devis).
4. Le chef d'atelier affecte un mécanicien (Alternative 1 : aucun mécanicien disponible).
5. Le mécanicien procède à la réparation (Alternative 2 : il manque une pièce).
6. Lorsque le véhicule est prêt, le chef d'atelier contrôle l'état du véhicule.
7. Si le véhicule est présentable, et lorsque le client est physiquement présent, il procède à la remise de la facture.
8. Le client va payer auprès du service comptabilité et présente la facture payée au chef d'atelier (Alternative 3 : défaut de paiement).
9. Le chef d’atelier livre la voiture au client qui récupère les clefs et la carte grise du véhicule.
…
Alternative 2 : S’il manque une pièce, le mécanicien informe le chef d’atelier qui passe une commande à un fournisseur référencé
(extension : acheter des pièces détachées).
…
Post-condition : La facture est payée, le véhicule est rendu réparé et propre au client.
Diagramme d’activités
• Les briques de base
  •   Activités
  •   Transitions
  •   Décisions
  •   Début et fin(s)
• Compléments
  •   Fork/join
  •   Swimlanes
  •   Signaux
Exemple
       Client

                                                     Chef d'atelier

 Demande reparation


                                              Verifier la demande


                                     [NOK]


                                                           [OK]
                     Prendre un RV
                                               Etablir un devis
                                                                                           Mecanicien
                                      devis refuse                    devis accepte


                                                                                      Effectuer la reparation


                                              Verifier le vehicule


                                      [OK]                            [NOK]



  Payer la facture


                                              Livrer le vehicule
Diagramme de séquence
• Définition
  •   Le diagramme de séquence représente les éléments
      intervenant dans un scénario ainsi que les messages
      dans leur ordre chronologique
• Notation (très simple !)




                                       Temps
Exemple
• Pour la
 modélisation des
 processus métier,
 les participants
 sont des acteurs
 ou des workers
3 : Comment modéliser les
      objets métier ?
Modèle objet « métier »
• La 2è partie du modèle métier est
 constituée par le modèle objet
  •   Business Object Model (BOM)
• Alors que le modèle des processus
 décrit le « quoi », le modèle objet
 décrit le « comment »
  •   Comment les business workers et les
      business entities sont reliés et
      collaborent pour réaliser les processus
  •   Sous forme de diag. de classes UML
       • élémentaires
       • ou plus détaillés (planche suivante)
Exemple de modèle objet métier
                                                                                                      <<organization unit>>
                                                                                                       B OM.Co mp t ab ilit e
                                                                                                   +Facture
                                               De man d e De R e p ar at io n
                                concerne
                                            date
                                            description

                 1                                                                                                      <<organization unit>>
                V o it u r e                           1                                                                    B OM.At e lie r
                                                                                                                   +Voiture
             modele                                                                                                +DemandeDeReparation
             immatriculation                               donne lieu a                                            +Devis
             kilometrage                                                                                           +Cle
                                                                                                                   +CarteGrise
                                                     0..1
         1             1                               De vis
                                                                    1
         1             1                          montant
                                                  dateValidite
   Cle                     Cart e G r ise
                                                                                                 0..1
numero                immatriculation
                                                                                     B O M.Co mp t ab ilit e .Fac tu re

                                                                                date
                                                                                montant
                                                                                description
Diagramme d’activité - compléments
• Object Flow
  • Une entité métier peut être en sortie
    d’une activité (produite)
  • ou en entrée d’une activité (utilisée)
  • Peut inclure l’état de l’objet entre
    crochets, si celui-ci évolue au fil du
    processus
• Permet de faire le lien entre le
 modèle des processus et le modèle
 objet !
Exemple consolidé
          Client



                                                     Chef d'atelier
 Demande reparation
                                        <<entity>>
                                   :De man d e De R e p ar at ion


                                                  Verifier la demande



                                        [NOK]
                        Prendre un RV                                                                  Mecanicien
                                                               [OK]

                                                  Etablir un devis
                                                                                                            <<entity>>
                                                                                                             :V oit u r e
                <<entity>>                                                                                  [a reparer]
                 :De vis
                                          devis refuse                         devis accepte


                                                                                                Effectuer la reparation
                                                                              <<entity>>
                                                Verifier le vehicule           :V oit u r e
        <<entity>>                                                            [reparee]
         :Fac tu re
                                                                                               [NOK]


                                                     [OK]
     Payer la facture



                                                                       <<entity>>
                                                                        :V oit u r e
                                                                        [a livrer]
                                          Livrer le vehicule
Diagramme d’états
• Le diagramme d’états est une représentation du
 cycle de vie auquel doivent se conformer toutes les
 instances d’une classe donnée
  •   C’est un diagramme très puissant, qui permet d’aller
      très loin dans la précision et la complétude de la
      description du comportement

• Un diagramme d’états est forcément associé à une
 classe, mais toutes les classes n’en ont pas besoin
Exemple : entité « Voiture »
4 : Le passage aux
spécifications logicielles
Liens avec les disciplines en aval…

              Business Modeling

  Business Rules,                 Business Use Case Model
  Business Object Model




                                         Requirements

        Analysis (& Design)


                                           Use Case Model

           Analysis Model
Liens entre disciplines : détail
• BPM (Business Process Model)
  •   Les activités à informatiser des processus métier
      sont des cas d’utilisation candidats
  •   Les acteurs (ou workers) métier concernés par ces
      activités deviennent naturellement des acteurs du
      système informatique


• BOM (Business Object Model)
  •   Les entités métier manipulées par les activités à
      informatiser deviennent des classes d’analyse
      (entités)
Lien avec Requirements : exemple
      Client

                                                    Chef d'atelier

Demande reparation


                                             Verifier la demande
                                                                          Activités à
                                    [NOK]
                                                                         informatiser
                                                          [OK]
                    Prendre un RV
                                              Etablir un devis
                                                                                          Mecanicien
                                     devis refuse                    devis accepte


                                                                                     Effectuer la reparation


                                             Verifier le vehicule


                                     [OK]                            [NOK]
                                                                                                               Poste de travail du chef d'atelier

 Payer la facture
                                                                                                                    Gerer un RV client
                                             Livrer le vehicule


                                                                                         <<case worker>>
                                                                                          Chef d’atelier              Etablir un devis
                                                                                          Chef d'atelier
Lien avec l’analyse : exemple

                                               De man d e De R e p ar at io n
                                concerne
                                            date                                                                Ajouter
                                            description
                                                                                                              « Client » !
                 1
                V o it u r e                           1

             modele                                                             Entités métier
             immatriculation                               donne lieu a
             kilometrage                                                        à informatiser
                                                     0..1
         1             1                               De vis
                                                                    1
         1             1                          montant
                                                  dateValidite
   Cle                     Cart e G r ise
                                                                                                 0..1
numero                immatriculation
                                                                                     B O M.Co mp t ab ilit e .Fac tu re

                                                                                date
                                                                                montant
                                                                                description
Pourquoi utiliser UML pour le BM ?
• UML fournit un langage commun pour les analystes
    métier et les concepteurs
•   UML est visuel
•   UML décrit les processus métier à la fois
    structurellement et dynamiquement
•   UML vous aide à dériver de meilleures exigences
    système
•   UML est orienté objet
Historique d’UML

     http://www.uml.org/


    03/2003 : révision 1.5                                                  Industrialisation
                                                            UML 1.5

    11/1997 : adoption par l'OMG
    09/1997 : révision 1.1                              UML 1.1

    01/1997 : soumission à l'OMG
                                                UML 1.0                     Standardisation
    06/1996
                                          UML 0.9
                                                              Partenaires
    10/1995
                                   Unified Method 0.8            UML
                                                                              Unification

    10/1994
                              Booch'93 + OMT-2

                        G. Booch           J. Rumbaugh      I. Jacobson     Fragmentation
                        Booch-91               OMT-1            OOSE
Les diagrammes d’UML 2
• UML 2.0 propose 13 types de diagrammes :
  •   Diagramme de cas d’utilisation
  •   Diagramme de classes
  •   Diagramme d’objets
  •   Package diagram                 New !
  •   Composite structure diagram                   New !
  •   Interaction overview diagram        New !
  •   Diagramme de séquence          Modified !
  •   Diagramme de communication
  •   Timing diagram         New !
  •   Diagramme d’activité                Modified !
  •   Diagramme d’états
  •   Diagramme de composants          Modified !
  •   Diagramme de déploiement
Diagramme d’activité UML 2.0
• Le diagramme d’activité(s) a été notablement modifié
  •   Voir la présentation sur UML 2.0 aujourd’hui !


• L’alignement avec d’autres formalismes de
 modélisation de processus devrait être plus facile …
  •   Cf. www.bpmi.org
  •   BPML : Business Process Modeling Language
Questions ?
Merci


Pensez à remettre votre fiche d’évaluation

         Pour me contacter …
       pascal.roques@gmail.com

Contenu connexe

Tendances

Rapport de projet de fin d'année
Rapport de projet de fin d'année Rapport de projet de fin d'année
Rapport de projet de fin d'année kaies Labiedh
 
Présentation du l'application Mobile "Passion Beauté 1.0"
Présentation du l'application Mobile "Passion Beauté 1.0"Présentation du l'application Mobile "Passion Beauté 1.0"
Présentation du l'application Mobile "Passion Beauté 1.0"Nazih Heni
 
Application web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemApplication web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemSarra ERRREGUI
 
Rapport de stage - gestion commerciale @REC MEDIA
Rapport de stage - gestion commerciale @REC MEDIARapport de stage - gestion commerciale @REC MEDIA
Rapport de stage - gestion commerciale @REC MEDIAREDOUANIAbdessamad
 
Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...
Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...
Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...Mohammed JAITI
 
Développement d'une application de gestion d'abonnement payant aux articles p...
Développement d'une application de gestion d'abonnement payant aux articles p...Développement d'une application de gestion d'abonnement payant aux articles p...
Développement d'une application de gestion d'abonnement payant aux articles p...Rodikumbi
 
Le Développement d’une Application Web
Le Développement d’une Application WebLe Développement d’une Application Web
Le Développement d’une Application WebMalick Mbaye
 
Rapport stage
Rapport stageRapport stage
Rapport stageTECOS
 
Rapport mini-projet Gestion Commerciale D’un Supermarché
Rapport mini-projet  Gestion Commerciale D’un SupermarchéRapport mini-projet  Gestion Commerciale D’un Supermarché
Rapport mini-projet Gestion Commerciale D’un SupermarchéMouad Lousimi
 
pfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdfpfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdfnesrine haloui
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop amat samiâ boualil
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceLilia Sfaxi
 
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Ayoub Rouzi
 

Tendances (20)

Rapport de projet de fin d'année
Rapport de projet de fin d'année Rapport de projet de fin d'année
Rapport de projet de fin d'année
 
Présentation du l'application Mobile "Passion Beauté 1.0"
Présentation du l'application Mobile "Passion Beauté 1.0"Présentation du l'application Mobile "Passion Beauté 1.0"
Présentation du l'application Mobile "Passion Beauté 1.0"
 
Application web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment systemApplication web de gestion de recrutement- Recruitement managment system
Application web de gestion de recrutement- Recruitement managment system
 
Rapport de stage - gestion commerciale @REC MEDIA
Rapport de stage - gestion commerciale @REC MEDIARapport de stage - gestion commerciale @REC MEDIA
Rapport de stage - gestion commerciale @REC MEDIA
 
Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...
Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...
Rapport de mon First Projet Web à l'Ecole Supérieure de Technologie de SAFI -...
 
Rapport de stage
Rapport de stageRapport de stage
Rapport de stage
 
Développement d'une application de gestion d'abonnement payant aux articles p...
Développement d'une application de gestion d'abonnement payant aux articles p...Développement d'une application de gestion d'abonnement payant aux articles p...
Développement d'une application de gestion d'abonnement payant aux articles p...
 
Envoi SMS JAVA
Envoi SMS JAVAEnvoi SMS JAVA
Envoi SMS JAVA
 
Le Développement d’une Application Web
Le Développement d’une Application WebLe Développement d’une Application Web
Le Développement d’une Application Web
 
Rapport pfev7
Rapport pfev7Rapport pfev7
Rapport pfev7
 
Support cours angular
Support cours angularSupport cours angular
Support cours angular
 
Rapport stage
Rapport stageRapport stage
Rapport stage
 
Uml & cas d'utilisation
Uml & cas d'utilisationUml & cas d'utilisation
Uml & cas d'utilisation
 
Rapport mini-projet Gestion Commerciale D’un Supermarché
Rapport mini-projet  Gestion Commerciale D’un SupermarchéRapport mini-projet  Gestion Commerciale D’un Supermarché
Rapport mini-projet Gestion Commerciale D’un Supermarché
 
pfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdfpfe_rapport_poste_licence_LFIG.pdf
pfe_rapport_poste_licence_LFIG.pdf
 
Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop Rapport projet: relisation d'une app desktop
Rapport projet: relisation d'une app desktop
 
Chp4 - Diagramme de Séquence
Chp4 - Diagramme de SéquenceChp4 - Diagramme de Séquence
Chp4 - Diagramme de Séquence
 
Rapport final
Rapport finalRapport final
Rapport final
 
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
Rapport j2ee: Gestion d’un compte bancaire En utilisant les EJB 3.0
 
zaineb pfe 2014
zaineb pfe 2014zaineb pfe 2014
zaineb pfe 2014
 

Similaire à Modélisation métier (2004)

Rapport de stage de perfectionnement
Rapport de stage de perfectionnementRapport de stage de perfectionnement
Rapport de stage de perfectionnementbadouuur
 
Industrialisation des développements CRM 2011
Industrialisation des développements CRM 2011Industrialisation des développements CRM 2011
Industrialisation des développements CRM 2011Microsoft
 
Quels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatifQuels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatifguestdbf1bd
 
Quels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatifQuels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatifPierre Tran
 
SysML (Valtech Days 2008)
SysML (Valtech Days 2008)SysML (Valtech Days 2008)
SysML (Valtech Days 2008)Pascal Roques
 
2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"
2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"
2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"ASIP Santé
 
Méthodologie 2 Track Unified Process
Méthodologie 2 Track Unified ProcessMéthodologie 2 Track Unified Process
Méthodologie 2 Track Unified ProcessZakaria Bouazza
 
Principes de L'intégration Continue
Principes de L'intégration ContinuePrincipes de L'intégration Continue
Principes de L'intégration ContinueXavier Warzee
 
Témoignage client ProxiAD
Témoignage client ProxiADTémoignage client ProxiAD
Témoignage client ProxiADEclipseDayParis
 
Friday Web 16 01 2009
Friday Web 16 01 2009Friday Web 16 01 2009
Friday Web 16 01 2009Arnaud_Pukan
 
Mia software@md day2011
Mia software@md day2011Mia software@md day2011
Mia software@md day2011MDDAY11
 
Agile Tour Rennes - REX EOLE Kanban - Logica
Agile Tour Rennes - REX EOLE Kanban - LogicaAgile Tour Rennes - REX EOLE Kanban - Logica
Agile Tour Rennes - REX EOLE Kanban - LogicaEric Hébert
 
Modeliser une application_web
Modeliser une application_webModeliser une application_web
Modeliser une application_webMoez Moezm
 
02 - Lazaristes - Lyon - F2000 - 2012
02 - Lazaristes - Lyon - F2000 - 201202 - Lazaristes - Lyon - F2000 - 2012
02 - Lazaristes - Lyon - F2000 - 2012Cédric Frayssinet
 
Geti 2101 activity_diagrams
Geti 2101 activity_diagramsGeti 2101 activity_diagrams
Geti 2101 activity_diagramsChebil Hanen
 

Similaire à Modélisation métier (2004) (20)

Rapport de stage de perfectionnement
Rapport de stage de perfectionnementRapport de stage de perfectionnement
Rapport de stage de perfectionnement
 
Industrialisation des développements CRM 2011
Industrialisation des développements CRM 2011Industrialisation des développements CRM 2011
Industrialisation des développements CRM 2011
 
Quels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatifQuels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatif
 
Ttup
TtupTtup
Ttup
 
Uml2
Uml2Uml2
Uml2
 
Quels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatifQuels outils pour maitriser et accélérer le développement applicatif
Quels outils pour maitriser et accélérer le développement applicatif
 
SysML (Valtech Days 2008)
SysML (Valtech Days 2008)SysML (Valtech Days 2008)
SysML (Valtech Days 2008)
 
2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"
2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"
2012-03-21 ASIP Santé RIR "Le projet CRM : point de situation"
 
Méthodologie 2 Track Unified Process
Méthodologie 2 Track Unified ProcessMéthodologie 2 Track Unified Process
Méthodologie 2 Track Unified Process
 
Principes de L'intégration Continue
Principes de L'intégration ContinuePrincipes de L'intégration Continue
Principes de L'intégration Continue
 
Témoignage client ProxiAD
Témoignage client ProxiADTémoignage client ProxiAD
Témoignage client ProxiAD
 
Friday Web 16 01 2009
Friday Web 16 01 2009Friday Web 16 01 2009
Friday Web 16 01 2009
 
Uml
UmlUml
Uml
 
Elaborer un logiciel
Elaborer un logicielElaborer un logiciel
Elaborer un logiciel
 
Mia software@md day2011
Mia software@md day2011Mia software@md day2011
Mia software@md day2011
 
Manuel uml-poweramc
Manuel uml-poweramcManuel uml-poweramc
Manuel uml-poweramc
 
Agile Tour Rennes - REX EOLE Kanban - Logica
Agile Tour Rennes - REX EOLE Kanban - LogicaAgile Tour Rennes - REX EOLE Kanban - Logica
Agile Tour Rennes - REX EOLE Kanban - Logica
 
Modeliser une application_web
Modeliser une application_webModeliser une application_web
Modeliser une application_web
 
02 - Lazaristes - Lyon - F2000 - 2012
02 - Lazaristes - Lyon - F2000 - 201202 - Lazaristes - Lyon - F2000 - 2012
02 - Lazaristes - Lyon - F2000 - 2012
 
Geti 2101 activity_diagrams
Geti 2101 activity_diagramsGeti 2101 activity_diagrams
Geti 2101 activity_diagrams
 

Plus de Pascal Roques

SysCon 2013 SysML & Requirements
SysCon 2013 SysML & RequirementsSysCon 2013 SysML & Requirements
SysCon 2013 SysML & RequirementsPascal Roques
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in FrancePascal Roques
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Pascal Roques
 
Seminaire Borland UML (2003)
Seminaire Borland UML (2003)Seminaire Borland UML (2003)
Seminaire Borland UML (2003)Pascal Roques
 
Design Patterns (2003)
Design Patterns (2003)Design Patterns (2003)
Design Patterns (2003)Pascal Roques
 
Migrer vers le cloud grace au Model-Driven
Migrer vers le cloud grace au Model-DrivenMigrer vers le cloud grace au Model-Driven
Migrer vers le cloud grace au Model-DrivenPascal Roques
 
Xp Day2009 Modelisation Agile
Xp Day2009 Modelisation AgileXp Day2009 Modelisation Agile
Xp Day2009 Modelisation AgilePascal Roques
 

Plus de Pascal Roques (8)

SysCon 2013 SysML & Requirements
SysCon 2013 SysML & RequirementsSysCon 2013 SysML & Requirements
SysCon 2013 SysML & Requirements
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in France
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0
 
Seminaire Borland UML (2003)
Seminaire Borland UML (2003)Seminaire Borland UML (2003)
Seminaire Borland UML (2003)
 
Design Patterns (2003)
Design Patterns (2003)Design Patterns (2003)
Design Patterns (2003)
 
Migrer vers le cloud grace au Model-Driven
Migrer vers le cloud grace au Model-DrivenMigrer vers le cloud grace au Model-Driven
Migrer vers le cloud grace au Model-Driven
 
From SADT to SysML
From SADT to SysMLFrom SADT to SysML
From SADT to SysML
 
Xp Day2009 Modelisation Agile
Xp Day2009 Modelisation AgileXp Day2009 Modelisation Agile
Xp Day2009 Modelisation Agile
 

Modélisation métier (2004)

  • 1. 1001 Améliorer les spécifications logicielles grâce à la modélisation métier Pascal Roques Valtech Training
  • 2. Présentations • Intervenant : Pascal Roques • Formateur et consultant senior chez Valtech Training • Responsable de l’offre formation autour d’UML • Auteur de 3 ouvrages sur UML parus chez Eyrolles : UML 2 en action UML 2 par la pratique De l'analyse des besoins Études de cas et UML à la conception J2EE Modéliser un site e-commerce exercices corrigés
  • 3. Notre programme • 1. La problématique de la modélisation métier • 2. Comment modéliser les processus métier ? • 3. Comment modéliser les objets métier ? • 4. Le passage aux spécifications logicielles • Les diagrammes de la présentation ont été réalisés avec l’outil Together®
  • 4. 1 : La problématique de la modélisation métier
  • 5. Business Modeling (BM) • La modélisation du niveau métier consiste à représenter l’entreprise : ses processus, ses ressources et son organisation Modèle d’organisation Modèle des Modèle des ressources processus Entreprise
  • 6. Les objectifs du BM • Le BM peut avoir des objectifs très différents suivant le contexte • Principaux buts : • Réorganiser le S.I. • Préciser les besoins d’une application • Optimiser les systèmes informatiques existants • Préparer la mise en place d’un ERP • …
  • 7. Préciser les besoins d’un logiciel • Pallier au manque de définition du contexte métier lors du démarrage d’un projet informatique • Cahier des charges incomplet • Objectifs stratégiques de l’entreprise perdus de vue • Gérer les risques de mauvais ciblage du projet • Différence entre besoins réels et besoins exprimés • Manque de visibilité globale sur l’activité des utilisateurs • Tentation d’automatiser les pratiques en cours, sans profiter du potentiel de changement lié aux nouvelles technologies • Cette tâche amont est trop souvent négligée ! • Elle n’est en général pas budgétisée • Les experts métier sont peu disponibles
  • 8. BM orienté objet avec UML ? • UML est un standard de modélisation • Langage commun pour communiquer et capitaliser • Puissance de modélisation applicable à de multiples niveaux d’abstraction • Extensibilité intégrée au langage • UML est utilisé sur les projets informatiques • Couverture complète de tout le cycle de développement • En phase avec les nouvelles technologies • Continuité des concepts de bout en bout
  • 9. Les diagrammes d’UML • UML 1.5 propose 9 types de diagrammes : • Diagramme de cas d’utilisation Fonctionnel • Diagramme de classes • (Diagramme d’objets) DIAGRAMME DE CAS D'UTILISATION • Diagramme de séquence • (Diagramme de collaboration) Statique Dynamique • Diagramme d’activités DIAGRAMME DE CLASSES DIAGRAMME D'ÉTATS DIAGRAMME D'OBJETS DIAGRAMME D'ACTIVITÉ Diagramme d’états DIAGRAMME DE COMPOSANTS DIAGRAMME DE SÉQUENCE • DIAGRAMME DE DÉPLOIEMENT DIAGRAMME DE COLLABORATION • (Diagramme de composants) • (Diagramme de déploiement)
  • 10. UML pour le BM (1/2) • Nous privilégions 2 types de diagrammes : • Diagramme de classes Diagramme d’activités Client Chef d'atelier De man d e De R e p ar at ion concerne Demande reparation date description Verifier la demande [NOK] 1 V oit u r e 1 [OK] Prendre un RV modele Etablir un devis immatriculation donne lieu a Mecanicien kilometrage devis refuse devis accepte 0..1 Effectuer la reparation 1 1 De vis Verifier le vehicule 1 1 montant dateValidite Cle Cart e G r ise [OK] [NOK] numero immatriculation Payer la facture Livrer le vehicule
  • 11. UML pour le BM (2/2) • Nous utilisons 3 autres types de diagrammes : • Diagramme de cas d’utilisation • Diagramme de séquence Diagramme d’états
  • 12. La démarche de BM avec UML Identifier les acteurs et les processus métier De man d e De R e p ar at ion concerne date description 1 V oit u r e 1 modele immatriculation donne lieu a kilometrage 0..1 Décrire les Identifier et décrire les 1 1 De vis processus métier entités métier 1 1 montant dateValidite Client Cle Cart e G r ise Chef d'atelier numero immatriculation Demande reparation Client Verifier la demande Chef d'atelier Demande reparation [NOK] <<entity>> :De man d e De R e p ar at ion [OK] Verifier la demande Prendre un RV Etablir un devis Mecanicien [NOK] Prendre un RV Mecanicien devis refuse devis accepte [OK] Etablir un devis <<entity>> Effectuer la reparation :V oit u r e <<entity>> [a reparer] :De vis devis refuse devis accepte Verifier le vehicule [OK] [NOK] Consolider <<entity>> Effectuer la reparation Verifier le vehicule :V oit u r e <<entity>> [reparee] :Fac tu re [NOK] Payer la facture [OK] Livrer le vehicule Payer la facture <<entity>> :V oit u r e [a livrer] Livrer le vehicule
  • 13. 2 : Comment modéliser les processus métier ?
  • 14. Processus métier • Un processus métier modélise un service rendu par une organisation • On parle aussi de cas d'utilisation métier (“business use case”) Garage <<processus métier>> Réparer une voiture Client
  • 15. Types d’acteurs métier • Un acteur métier modélise une personne ou un rôle qui participe à au moins un processus métier • On peut distinguer : • Business Actor • Extérieur à l’entreprise : client, fournisseur… • Business Worker • Rôle interne à l’entreprise : mécanicien, chef d’atelier… • Case worker, internal worker
  • 16. Diagramme de cas d’utilisation • Le diagramme de cas d’utilisation UML permet de mettre en relation les acteurs et les processus métier • Très simple, synthétique Garage <<internal worker>> <<processus métier>> Mecanicien Reparer une voiture Client <<case worker>> Chef d'atelier
  • 17. Exemple plus complet <<processus support>> Acheter des pieces detachees Fournisseur <<case worker>> Fournisseur Chef d'atelier <<processus métier>> Reparer une voiture <<internal worker>> Mecanicien <<processus métier>> Vendre une voiture Client <<case worker>> Commercial <<processus métier>> Racheter une voiture d'occasion
  • 18. Plan type détaillé • Permet de décrire chaque processus métier dans ses moindres détails • Plan-type (Template) à définir par entreprise • Exemple : • Titre • Objectif • Précondition • Scénario nominal • Extensions • Postconditions • Risques • Etc.
  • 19. Exemple Titre : Réparer une voiture Pré-condition : L'atelier est en état de fonctionnement normal couvrant 80% de ses capacités de réparation avec son personnel présent et ses pièces détachées. Scénario nominal Le processus commence quand un client déclare vouloir faire réparer sa voiture à l'atelier. 1. Le client est accueilli par le chef d'atelier qui vérifie le rendez-vous déjà pris, ou bien planifie un rendez-vous (extension « Prendre rendez-vous »). 2. Le chef d'atelier demande les clés et la carte grise du véhicule au client. Il donne au client un temps approximatif nécessaire pour effectuer la réparation et lui soumet un devis. 3. Le client accepte le devis (Erreur 1 : le client refuse le devis). 4. Le chef d'atelier affecte un mécanicien (Alternative 1 : aucun mécanicien disponible). 5. Le mécanicien procède à la réparation (Alternative 2 : il manque une pièce). 6. Lorsque le véhicule est prêt, le chef d'atelier contrôle l'état du véhicule. 7. Si le véhicule est présentable, et lorsque le client est physiquement présent, il procède à la remise de la facture. 8. Le client va payer auprès du service comptabilité et présente la facture payée au chef d'atelier (Alternative 3 : défaut de paiement). 9. Le chef d’atelier livre la voiture au client qui récupère les clefs et la carte grise du véhicule. … Alternative 2 : S’il manque une pièce, le mécanicien informe le chef d’atelier qui passe une commande à un fournisseur référencé (extension : acheter des pièces détachées). … Post-condition : La facture est payée, le véhicule est rendu réparé et propre au client.
  • 20. Diagramme d’activités • Les briques de base • Activités • Transitions • Décisions • Début et fin(s) • Compléments • Fork/join • Swimlanes • Signaux
  • 21. Exemple Client Chef d'atelier Demande reparation Verifier la demande [NOK] [OK] Prendre un RV Etablir un devis Mecanicien devis refuse devis accepte Effectuer la reparation Verifier le vehicule [OK] [NOK] Payer la facture Livrer le vehicule
  • 22. Diagramme de séquence • Définition • Le diagramme de séquence représente les éléments intervenant dans un scénario ainsi que les messages dans leur ordre chronologique • Notation (très simple !) Temps
  • 23. Exemple • Pour la modélisation des processus métier, les participants sont des acteurs ou des workers
  • 24. 3 : Comment modéliser les objets métier ?
  • 25. Modèle objet « métier » • La 2è partie du modèle métier est constituée par le modèle objet • Business Object Model (BOM) • Alors que le modèle des processus décrit le « quoi », le modèle objet décrit le « comment » • Comment les business workers et les business entities sont reliés et collaborent pour réaliser les processus • Sous forme de diag. de classes UML • élémentaires • ou plus détaillés (planche suivante)
  • 26. Exemple de modèle objet métier <<organization unit>> B OM.Co mp t ab ilit e +Facture De man d e De R e p ar at io n concerne date description 1 <<organization unit>> V o it u r e 1 B OM.At e lie r +Voiture modele +DemandeDeReparation immatriculation donne lieu a +Devis kilometrage +Cle +CarteGrise 0..1 1 1 De vis 1 1 1 montant dateValidite Cle Cart e G r ise 0..1 numero immatriculation B O M.Co mp t ab ilit e .Fac tu re date montant description
  • 27. Diagramme d’activité - compléments • Object Flow • Une entité métier peut être en sortie d’une activité (produite) • ou en entrée d’une activité (utilisée) • Peut inclure l’état de l’objet entre crochets, si celui-ci évolue au fil du processus • Permet de faire le lien entre le modèle des processus et le modèle objet !
  • 28. Exemple consolidé Client Chef d'atelier Demande reparation <<entity>> :De man d e De R e p ar at ion Verifier la demande [NOK] Prendre un RV Mecanicien [OK] Etablir un devis <<entity>> :V oit u r e <<entity>> [a reparer] :De vis devis refuse devis accepte Effectuer la reparation <<entity>> Verifier le vehicule :V oit u r e <<entity>> [reparee] :Fac tu re [NOK] [OK] Payer la facture <<entity>> :V oit u r e [a livrer] Livrer le vehicule
  • 29. Diagramme d’états • Le diagramme d’états est une représentation du cycle de vie auquel doivent se conformer toutes les instances d’une classe donnée • C’est un diagramme très puissant, qui permet d’aller très loin dans la précision et la complétude de la description du comportement • Un diagramme d’états est forcément associé à une classe, mais toutes les classes n’en ont pas besoin
  • 30. Exemple : entité « Voiture »
  • 31. 4 : Le passage aux spécifications logicielles
  • 32. Liens avec les disciplines en aval… Business Modeling Business Rules, Business Use Case Model Business Object Model Requirements Analysis (& Design) Use Case Model Analysis Model
  • 33. Liens entre disciplines : détail • BPM (Business Process Model) • Les activités à informatiser des processus métier sont des cas d’utilisation candidats • Les acteurs (ou workers) métier concernés par ces activités deviennent naturellement des acteurs du système informatique • BOM (Business Object Model) • Les entités métier manipulées par les activités à informatiser deviennent des classes d’analyse (entités)
  • 34. Lien avec Requirements : exemple Client Chef d'atelier Demande reparation Verifier la demande Activités à [NOK] informatiser [OK] Prendre un RV Etablir un devis Mecanicien devis refuse devis accepte Effectuer la reparation Verifier le vehicule [OK] [NOK] Poste de travail du chef d'atelier Payer la facture Gerer un RV client Livrer le vehicule <<case worker>> Chef d’atelier Etablir un devis Chef d'atelier
  • 35. Lien avec l’analyse : exemple De man d e De R e p ar at io n concerne date Ajouter description « Client » ! 1 V o it u r e 1 modele Entités métier immatriculation donne lieu a kilometrage à informatiser 0..1 1 1 De vis 1 1 1 montant dateValidite Cle Cart e G r ise 0..1 numero immatriculation B O M.Co mp t ab ilit e .Fac tu re date montant description
  • 36. Pourquoi utiliser UML pour le BM ? • UML fournit un langage commun pour les analystes métier et les concepteurs • UML est visuel • UML décrit les processus métier à la fois structurellement et dynamiquement • UML vous aide à dériver de meilleures exigences système • UML est orienté objet
  • 37. Historique d’UML http://www.uml.org/ 03/2003 : révision 1.5 Industrialisation UML 1.5 11/1997 : adoption par l'OMG 09/1997 : révision 1.1 UML 1.1 01/1997 : soumission à l'OMG UML 1.0 Standardisation 06/1996 UML 0.9 Partenaires 10/1995 Unified Method 0.8 UML Unification 10/1994 Booch'93 + OMT-2 G. Booch J. Rumbaugh I. Jacobson Fragmentation Booch-91 OMT-1 OOSE
  • 38. Les diagrammes d’UML 2 • UML 2.0 propose 13 types de diagrammes : • Diagramme de cas d’utilisation • Diagramme de classes • Diagramme d’objets • Package diagram New ! • Composite structure diagram New ! • Interaction overview diagram New ! • Diagramme de séquence Modified ! • Diagramme de communication • Timing diagram New ! • Diagramme d’activité Modified ! • Diagramme d’états • Diagramme de composants Modified ! • Diagramme de déploiement
  • 39. Diagramme d’activité UML 2.0 • Le diagramme d’activité(s) a été notablement modifié • Voir la présentation sur UML 2.0 aujourd’hui ! • L’alignement avec d’autres formalismes de modélisation de processus devrait être plus facile … • Cf. www.bpmi.org • BPML : Business Process Modeling Language
  • 41. Merci Pensez à remettre votre fiche d’évaluation Pour me contacter … pascal.roques@gmail.com