Phase d’InceptionLes acteurs Les acteurs représentent un rôle, et non pas une personne. Acteurs humains ou système informatique pré-existant qui s’interface avec notre système Cais s ier Client Manager (from Us e Cas e View) (from Us e Case View) (from Us e Cas e View) Salarié Ad m inis trateur (from Use Cas e View) (from Use Cas e View)Module UML les acteurs de l'application Page :101 M. Omar EL BEGGAR
Phase d’InceptionLe diagramme de contexte Définit les interactions entre les acteurs et le système. gérer un retour d'article éditer un ticket enregistrer un produit enregistrer une quantité gérer un paiement : Client : Caissier retourner un article gérer le catalogue payer un achat initialiser les caisses editer des rapports m agas in : Manager se connecter définir les droits des usagers : Salarié : AdministrateurModule UML Diagramm e de contexte du magasin Page : 102 M. Omar EL BEGGAR
Phase d’InceptionLes intentions d’acteur On regroupe les exigences en ‘intentions d’acteur’ enchaînement de fonctions qui rend un service complet à un acteur Référence Fonction Intention Acteurs d'acteur Manager R1 Modifier le prix d'un produit Gérer le catalogue Manager Client, Caissier R13 Entrer un produit au catalogue Gérer le catalogue Salarié Manager R14 Supprimer un produit du Gérer le catalogue Administrateur Client, Caissier catalogue Page : 103 R16 Initialiser la caisse Initialiser la caisse R5 Retourner une marchandise Retourner un article R10 Se connecter à la caisse Se connecter R11 Se connecter en gérant Se connecter R8 Éditer un rapport succinct Éditer un rapport R9 Éditer un rapport détaillé Éditer un rapport R12 Définir les droits des usagers Définir les profils R7 Éditer un ticket de vente Effectuer un achat R6 Payer l'achat Effectuer un achat R2 Calculer le total d'une vente Effectuer un achat R3 Rentrer une quantité par Effectuer un achat article R15 Enregistrer un produit à la Effectuer un achat caisse R4 Calculer le sous total d'un Effectuer un achat produitModule UML M. Omar EL BEGGAR
Phase d’InceptionLe diagramme des Uses-Cases Un use case est une intention d'acteur enchaînement de fonctions qui rend un service complet à un acteur Effectuer un achat Client Retourner un article Se connecter Cais s ier les flêches unidirectionnelles indiquent un lien principal, c'est à dire l'acteur principal du use case. Gérer le catalogue Salarié Manager Initialiser la caisse Editer un rapportModule UML a d m in i s tra te ur Définir les profils Page : 104 M. Omar EL BEGGAR
Phase d’InceptionDescription de haut niveau des Uses-Cases Description textuelle assez succinte Sert à borner le Use-Case, et notamment à définir : l’évènement déclencheur du Use-Case (quand il commence), la terminaison du Use-Case (quand il finit) Le rôle du Use-Case (enchaînement sommaire des opérations du Use-Case)Nom du Use Case: Effectuer un achatActeur principal: ClientActeurs secondaires: CaissierÉvénement déclencheur du Use Case: Un client arrive à la caisse avec ses achatsRôle du Use Case: Le caissier passe tous les articles, fait la note, et encaisse le paiement.Terminaison du Use Case: Le client a payé et a ramassé tous ses articles.Module UML M. Omar EL BEGGAR Page : 105
Phase d’AnalysisEffectuer une description détaillée (de bas niveau) desUses-Cases concernés par l’itération : Identifier les différents scénarios Eventuellement représenter ces scénarios sous forme de diagramme d’activité Représenter les enchainements d’opérations Lister les différents cas d’anomalies et d’exceptionReprésenter chaque scénario sous forme d’undiagramme de séquence (boîte noire)Faire un diagramme de classe par use case traitéElaborer les contrats d’opérations (impact de chaqueopération sur les classes de notre système)Eventuellement, élaborer un diagramme d’état pour lesModule UML classes complexes M. Omar EL BEGGAR Page : 106
Phase d’AnalysisDescription de bas niveau des Uses-Cases Liste d’éventuels scénarios différents Identification des pré-conditions nécessaires au bon fonctionnement du Use-Case Les pré conditions nécessaires au fonctionnement du use case: La caisse est allumée et initialisée. Un caissier est connecté à la caisse Représentation des scénarios dans un diagramme d’activité s upprim er un détruire la référence article s ais ir le code vérifier le code s ais ir et valider le prix m odifier le prix d'un article s ais ir les infos du produit vérifier le code enregistrer le produitModule UML ajouter un Page : 107 article réalis ation d'un diagram me d'activité ( ici ce n'es t pas la norm e UML car la version M. Omar EL BEGGARde rose utilisée ne supporte pas les diagrammes d'activité ). Ce schém a a été cons truit à partir d'un diagram m e d'état.
Phase d’AnalysisDescription de bas niveau des Uses-Cases Description des échanges entre le système et les acteurs ainsi que la chronologie et l'enchaînement des actions, dans le cas nominal (cas idéal) Identification des cas d’erreurs et des exceptionsModule UML M. Omar EL BEGGAR Page : 108
Phase d’AnalysisDescription de bas niveau des Uses-Cases Actions du client Actions du caissier Réponses du système1) Le client arrive à la 2) Le caissier enregistre 3) Le système détermine lecaisse avec les articles chaque article. prix de l'article, lesqu'il désire acheter. informations sur l'article et 4) Le caissier indique la fin ajoute ces informations à la7) Le client donne au de vente quand il n'y a plus transaction en cours. Ilcaissier une somme d'article. affiche ces informations surd'argent supérieure ou 6) Le caissier annonce au l'écran du client et duégale à la somme client le montant total. caissier.demandée. 8) Le caissier enregistre la 5) Le système calcule et somme donnée par le affiche le montant total de14) le client s'en va avec client. l'achat.les articles qu'il a achetés. 9) Le système calcule la somme à rendre au client. 10) Le caissier encaisse la 11) Le système enregistre somme remise par le client la vente effectuée et rend la monnaie au client. 12) Le système édite le ticket de caisse 13) Le caissier donne le ticket de caisse au clientModule UML M. Omar EL BEGGAR Page : 109
Phase d’AnalysisDiagrammes de séquence ‘boîte noire’ Pour chaque scénario Uniquement le cas nominal (cas idéal) échanges entre les acteurs utilisateurs du système informatique et le système proprement dit. Les ‘flèches qui rentrent’ dans le système sont des opérations Faire apparaître les paramètres On commence à voir apparaître des interfaces graphiques fonctionnellesModule UML M. Omar EL BEGGAR Page : 110
Phase d’AnalysisDiagrammes de séquence ‘boîte noire’ : Caissier système inform atique : magasin pour chaque article enregistrer un article ( code ) description et prix article si code référencé dénom brer ( quantité ) sous total = prix * quantité si quantité > 1 fin de vente ( ) plus d'article prix total payer ( somme ) monnaie ticket ici la réponse est asynchroneModule UML M. Omar EL BEGGAR Page : 111
Phase d’AnalysisDiagramme de classe d’analyse Pour chaque Use-Case but de ce diagramme : clarifier le domaine métier Seules apparaissent les classes métier. Les méthodes ne sont pas représentées Démarche : Identifier les classes métier Etablir des associations –associations, héritage, composition, agrégation…) entre ces classes Mettre des multiplicités Placer des attributsModule UML M. Omar EL BEGGAR Page : 112
Phase d’AnalysisDiagramme de classe d’analyse caissier 0..1 catalogue utilise 1 0..1 connait 1 caisse contient Paiement payée par 1 somme : réel 1 effectue 0..1 1 1 vente date : Date heure : Heure génère 1 ticket 1 1 comprend 1..* ligne de vente quantité : entier le prix ou la 0..* 0..* somme devraient concerne se donner par 1 article rapport à une description : text monnaie... M. Omar EL BEGGAR prix : réel code : codebarreModule UML Page : 113
Phase d’AnalysisDiagramme de classe d’analyse Le diagramme de classe d’analyse va nous aider à élaborer le MCD (se poser la question : quelles vont être les classes métier persistantes?) Donc en parallèle (cela ne fait pas partie d’UML, mais cela fait partie intégrante de l’analyse du projet), il faut élaborer le Modèle conceptuel des données, et en déduire le MLD.Module UML M. Omar EL BEGGAR Page : 114
Phase d’AnalysisLes contrats d’opérations Pour chaque opération (message entrant dans notre système) : Décrit, de manière textuelle, l’impact de chaque opération sur le système Objets créés Objets supprimés Associations créées Associations supprimées Attributs modifiés Attributs affichés. Bonne pratique : forme ‘has-been’Module UML On entr’ouvre la boite noire….. Page : 115 M. Omar EL BEGGAR
Phase d’AnalysisLes contrats d’opérations Exemple : Enregistrer un article. • Nom: enregistrer un article (cecode). • Responsabilités: enregistrer un article lors d'une vente, et l'ajoute à la vente en cours. • Exigences: R15 pour le use case effectuer un achat. • Notes: Si l'article est le premier de la vente, il débute la vente. Si le code cecode n'est pas référencé dans le • Pré conditions: catalogue, un message d'erreur est envoyé au caissier. • Post conditions: Il y a un article correspondant au code donné. Il y a un caissier à la caisse. Si c'est le premier article de la vente, il faut qu'un objet vente ait été créé et associé à la caisse. Une ligne de vente (ldv) a été créée. Elle a été associée à une description d'article correspondant au code cecode. La ligne de vente ldv a été associée à la vente. Le prix et la description de l'article ont été affichés. L'attribut quantité a été mis à 1.Module UML M. Omar EL BEGGAR Page : 116
Phase d’AnalysisDiagramme d’état Le diagramme d’état peut être fait éventuellement pour détailler un objet complexe (cycle de vie de l’objet) nouvel article arrivée article / création vente démarrer caisse attente traitem ent un article do afficher en boucle bonjour entry: afficher prix + description abandon / détruire vente entrée quantité/afficher quantité et sous total ticket rem is / historiser vente abandon / détruire vente arréter caisse fin vente / afficher total attente paiement im pression en cours somm e saisie / afficher monnaie Page : 117 entry : lancer im pressionModule UML M. Omar EL BEGGAR
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117