Transcript Modélisation Objet
Modélisation Objet Introduction
Catherine Barry 2004-2005
Bibliographie
Ce cours a été construit à partir de la bibliographie suivante : - MERISE et UML Pour la modélisation des systèmes d’information de Joseph Gabay éditions DUNOD - Modélisation objet avec UML de Pierre-Alain Muller et Nathalie Gaertner éditions EYROLLES -UML par la pratique, cours et exercices java et C++ de Pascal Roques éditions EYROLLES. - site http://uml.free.fr/ UML en français
Introduction
Dans le cheminement de la pensée qui va de la naissance d’un projet informatique jusqu’à son terme on distingue trois grandes étapes : - La première prend la décision de développer un logiciel ou non au sein de l’entreprise.
- La seconde est l’élaboration proprement dite du logiciel.
- la troisième est la phase de maintenance du logiciel construit.
Ces activités sont mises en œuvre suivant des stratégies diverses et parfois complexes requérant des compétences variées dans de nombreux domaines de l’informatique.
Génie logiciel (Software Engineering)
Génie logiciel
Génie Logiciel
(Software Engineering) = Science de l'ingénierie du logiciel - " l’application pratique de la connaissance scientifique dans la conception et l’élaboration de programmes informatiques et de la documentation associée nécessaire pour les développer, les mettre en oeuvre et les maintenir " (B. W. Boehm, 1976) - activités de conception et de mise en oeuvre des produits et des procédures tendant à rationaliser la production du logiciel et son suivi (Arrêté ministériel du 30-12-83)
Cycle de vie du logiciel pour la seconde étape
Le développement d’un logiciel se fait suivant un cycle appelé cycle de vie du logiciel .
Le cycle de vie est décomposé en phases de développement : - Spécification des besoins (15% du temps) - Conception générale (10% du temps) - Conception détaillée (25% du temps) - Codage et Tests unitaires (15% du temps) - Tests des modules (5% du temps) - Intégration du logiciel (20% du temps) - Système – Test (10% du temps) Ces phases sont échelonnées dans le temps.
Une phase se termine par la remise d’un (ou plusieurs) document(s).
Cycle de vie d’un logiciel en V
Spécifications Conception générale Conception détaillée Système-Test Intégration Test des modules Codage test unitaires Les premières phases permettent de décomposer l’ensemble du projet pour simplifier la phase de codage.
Les phases suivantes recomposent l’ensemble du logiciel en le testant du détail vers l’ensemble.
Cycle de vie d’un logiciel (1)
Spécification, cahier des charges ou analyse : Ensemble des activités consistant à définir de manière précise, complète et cohérente ce dont l’utilisateur a besoin.
Conception générale ou préliminaire : Ensemble des activités conduisant à l’élaboration du logiciel.
Conception détaillée : Ensemble des activités consistant à détailler les résultats de la conception préliminaire, tant sur le plan algorithmique que sur celui de la structure des données, jusqu’à un niveau suffisant pour permettre le codage.
Codage : Activité permettant de traduire le résultat de la conception détaillée en un programme à l’aide d’un langage de programmation donné.
Cycle de vie d’un logiciel (2)
Test unitaires : Activité ayant pour but de vérifier, pour chaque composant pris isolément, que tous les chemins logiques sont parcourus au moins une fois, que la plage de validité des données d’entrée et de sortie a été explorée, que les résultats sont conformes au dossier de conception détaillée.
Intégration : Activité consistant à assembler progressivement les composants du logiciel identifiés lors de la conception préliminaire et contrôlés lors des tests unitaires.
Système-Test ou Validation : Activité conduisant à s’assurer, essentiellement au moyen de tests, qu’un logiciel est conforme au dossier de spécification du logiciel
Typologie des méthodes d’informatisation
Méthodes cartésiennes : SADT, approche fonctionnelle programmation structurée (Langages C, Pascal, …) Méthode systémique : MERISE construction de systèmes d’informations avec gestion de bases de données relationnelles Méthode à objets (utilisation de UML) Programmation objets
Programmation Orientée Objet Le concept d’objet
La POO est fondée sur le concept d’objets, à savoir une association des données et des procédures (appelées méthodes) agissant sur ces données;
Méthodes + Données = Objets
Objet 1
nom
: Barry
prénom
: Catherine
compte
: Objet2 entier
solde
() { retourner (compte.solde());}
débite
(Entier x) {compte.débite(Entier x)}; Objet 2
numéro
: 1234AZ12
solde
: 1200
débite
(entier x) {solde = solde-x;}
Programmation Orientée Objet Le concept de classe
Les classes permettent de décrire la structure et le comportement d’un ensemble d’objets Classe : Personne
nom
: Chaîne de caractères
prénom
: Chaîne de caractères
compte
: Compte entier
solde
() { retourner (compte.solde());}
débite
(Entier x) {compte.débite(Entier x)}; Classe : Compte
numéro
: chaîne de caractères
solde
: Entier
débite
(entier x) {solde = solde-x;} Est une instance de Objet 1
nom
: Barry
prénom
: Catherine
compte
: Objet2 entier
solde
() { retourner (compte.solde());}
débite
(Entier x) {compte.débite(Entier x)}; Est une instance de Objet 2
numéro
: 1234AZ12
solde
: 1200
débite
(valeur x) {solde = solde-x;}
Programmation Orientée Objet pure
Cette association est plus qu’une simple juxtaposition !
POO « pure » = encapsulation des données
Il n’est pas possible d’agir directement sur les données d’un objet; il est nécessaire de passer par l’intermédiaire de ses méthodes qui jouent ainsi le rôle d’interface obligatoire
Vocabulaire
l’objet : l’appel d’une méthode est en fait l’envoi d’un message à
Cycle de vie pour construire un logiciel basée sur la programmation objet
Afin de mieux maîtriser l’élaboration d’un programme objet, il faut que les phases d’analyse et de conception soient réalisées selon le paradigme objet.
La phase d’analyse va aider à identifier les objets métiers autrement dit les objets et les classes reconnaissables par l’utilisateur du logiciel.
La phase de conception va : – Compléter la définition des classes (type de propriétés, suppression de propriétés car leur valeur peut être calculée à partir d’autres propriétés, etc…) – Définir le contenu des méthodes – Spécifier des classes utilisés lors de la construction de la solution du logiciel et donc non connu par l’utilisateur La notion d’objet durant la phase d’analyse est définie comme :
Objet = Etat + comportement + identité
Etat d’un objet
L’état regroupe les valeurs instantanées de toutes les propriétés d’un objet.
Propriétés de l’objet Une voiture Couleur : bleu Masse : 979 kg Puissance : 12CV Modélisation en UML Une voiture Contenu du réservoir = 30 litres Après un parcours de 100 km Une voiture Contenu du réservoir = 20 litres MONDE REEL
Le comportement d’un objet
Le comportement d’un objet regroupe toutes les compétences de ce dernier et décrit ses actions et ses réactions.
Chaque atome de comportement est appelé opération.
Les opérations d’un objet sont déclenchées suite à une stimulation externe, représentée sous la forme d’un message envoyé par un autre objet.
Manger B A Dormir C L’objet A demande à l’objet B de manger (stimulation).
L’objet B répond à cette stimulation par le déclenchement de l’opération « manger ». Cela sous-entend donc qu’il possède la faculté de manger.
L’objet B demande à l’objet C de dormir (stimulation). L’objet B répond à cette stimulation par le déclenchement de l’opération « dormir ». Cela sous-entend donc que l’objet C est capable de dormir.
Le comportement et les attributs sont liés
Un état « synthèse » d’un objet résulte d’une synthèse de ses propriétés et de son comportement Cet état est indiqué entre crochets.
un avion [En vol] Atterrir une tour de contrôle États de synthèse de l’objet « un avion » synthétisant les valeurs de ses propriétés Décoller un avion [Au sol]
L’identité
En plus de son état, un objet possède une identité qui caractérise son existence propre. L’identité permet de distinguer tout objet de façon non ambiguë, et cela indépendamment de son état.
une personne Nom : « Paul » Âge : 10 une personne Nom : « Paul » Âge : 10 Deux objets différents malgré des valeurs d’attributs identiques
Le concept de message
L’unité de communication entre objets est le message. Le message est le support d’une relation de communication qui relie, de façon dynamique, les objets qui ont été séparés par le processus de décomposition.
Message B Message A Objet1 Objet2 Message C Message E Objet3 Message D Objet4
Représentation des interactions entre les objets Le diagramme de collaboration
Le diagramme de collaboration constitue une autre représentation de l’interaction entre objets qui met plus l’accent sur les relations entre un ensemble d’objets et les messages échangés Ces diagrammes sont particulièrement indiqués pour la phase exploratoire qui correspond à la recherche d’objets.
Exemple : La direction régionale 1: création d’une agence une agence 4: agence créée 3: création d’un personnel réalisé 2: création d’un personnel de l’agence un personnel Remarque : un message peut posséder des paramètres et renvoyer un résultat.
Représentation des interactions entre les objets Le diagramme de séquence (1)
Les diagrammes de séquence montrent à peu près les mêmes informations que les diagrammes de collaborations, mais l’accent est mis sur la communication, au détriment de la structure spatiale.
A B C M1 M2 M3 M4 M5
Représentation des interactions entre les objets Le diagramme de séquence (2)
La direction régionale Une agence Un personnel 1: création d’une agence 2: création d’un personnel de l’agence 4: agence créée 3: création d’un personnel réalisé Ces messages ne sont pas obligatoires
Représentation des interactions entre les objets Le diagramme de séquence (3)
Durant la phase d’analyse, il est fréquent de commencer par représenter les principaux objets du domaine dans les diagrammes de collaboration, puis une fois les objets bien identifiés, de passer aux diagrammes de séquence pour la représentation des interactions dans toute leur complexité.
Les classes : la démarche d’abstraction
L’abstraction est la faculté des être humains qui consiste à concentrer la réflexion et l’attention sur un élément d’une représentation ou d’une notion en négligeant tous les autres.
La démarche d’abstraction procède de l’identification des caractéristiques communes à un ensemble d’éléments, puis de la description condensée de ces caractéristiques dans ce qu’il est convenu d’appeler une classe.
La démarche d’abstraction est arbitraire : elle se définit par rapport à un point de vue. Ainsi un objet du monde réel peut être vu au travers d’abstractions différentes.
Par conséquent, il est important de déterminer les critères pertinents dans le domaine d’application considéré.
La classe = un ensemble d’objets
La classe décrit le domaine de définition d’un ensemble d’objets.
Chaque objet appartient à une classe.
Les généralités sont contenues dans la classe et les particularités sont contenus dans les objets.
Classe A Instance de Objet A1 ObjetA1 : Classe A
Description d’une classe
Une classe possède des propriétés et des opérations.
Ces propriétés et ces opérations décrivent les objets appartenant à cette classe.
Motocyclette Couleur Cylindrée Vitesse maximale Démarrer() Accélérer() Freiner() Propriétés ou partie statique Opérations ou partie dynamique
Description d’une classe : remarque
Lorsqu’un objet O1 envoie un message M à l’objet O2, cela implique que l’objet O2 possède une opération permettant de répondre au message M.
En fait, le message M et l’opération Op forment un tout.
L’objet O1 demande à l’objet O2 d’exécuter l’opération Op, on parle alors de message. Dés la réception du message, l’objet O2 exécute l’opération Op .
O1 accéler O1 : Motocyclette accéler ()
Les relations entre les classes
Les liens qui relient les objets peuvent être vus de manière abstraite dans le monde des classes : à chaque famille de liens entre objets correspond une relation entre les classes de ces mêmes objets.
De même que les objets sont des instances des classes, les liens entre objets sont des instances des relations entre classes.
Classe A Une association Classe B Instance A Un lien Instance B Un diagramme de classe correspond à un ensemble de classes avec leurs associations.
L’association
L’association exprime une connexion sémantique bidirectionnelle entre classes Université Une association Etudiant Amiens:Université Pierre : Etudiant Jean : Etudiant Rouen:Université Pauline : Etudiant Les instances d’un association sont des tuples des instances liées par cette association.
Chaque valeur de tuple doit être unique; cela signifie que deux instances ne sont jamais reliées par plusieurs liens instances de la même association.
Classe association
Les associations peuvent être elle mêmes des objets, appelées classe association.
Enregistrement numéro modèle numéro série code garantie Produit Garantie Une classe association peut être associée à d’autres classes Edition parution Éditeur auteur livre
Clarification de la nature d’une association par une forme verbale /nominale
Pour améliorer la lisibilité des diagrammes, il est possible de décorer l’association d’une forme verbale.
Héberge Université Etudiant Université Etudie dans Etudiant Il est possible de préciser le rôle des classes intervenant dans une association : un nom de rôle peut être spécifié à chaque extrémité d’une association Etudiant Université Personne Employeur Enseignant
Valeurs de multiplicités
Chaque extrémité d’une association peut porter une information de multiplicité qui précise le nombre d’instances qui participent à la relation.
Les valeurs de multiplicités conventionnelles sont : 1 0..1
N..M
* 0..* 1..* Un et un seul Zéro ou un De M à N (entiers naturels) De zéro à plusieurs De zéro à plusieurs D’un à plusieurs
Valeurs de multiplicités : exemple
1 Université 0..1
Employeur Etudiant * Personne * Enseignant Une université donnée regroupe de nombreuses personnes; certaines jouent le rôle d’étudiant, d’autres le rôle d’enseignant. Un étudiant donné appartient à une seule université, un enseignant donné peut être en activité ou non.
Valeurs de multiplicités : autres exemples multiplicité
possède Personnalité 1 0..n
Etre humain est de Religion 1 0..n
Croyants né de Mère 1 0..n
Enfant Canton 1 Rattachée à 1..n
Ville
Valeurs de multiplicités : au plus un
concierge de Personne 0..1
Permis de conduire 0..1
possède 0..n
1 Immeuble Personne Homme Pays 0..1
marié à 0..1
capitale de 1 0..1
Femme Ville
Valeurs de multiplicités : plusieurs
Nationalité 1..n
possède 0..n
Personne Auteurs 0..* Pays 1 écrit par 1..* Livres situé dans 0;;n Monuments
Arité des associations (1)
La plupart des associations sont dites binaires car elles relient deux classes.
Des arités supérieures peuvent cependant exister. Salle Etudiant Enseignant Zodiaque Ville Personne
Arité des associations (2)
Généralement, les associations n-aires peuvent se représenter en promouvant l’association au rang de classe et en ajoutant une contrainte qui exprime que les multiples branches de l’association s’instancient toutes simultanément, en un même lien.
Salle Enseignant Etudiant Cours début Dans cet exemple, la contrainte est exprimée au moyen d’un stéréotype fin qui précise que la classe Cours réalise une association ternaire
Arité des associations (3)
Nous pouvons également représenter une association ternaire au moyen d’une classe stéréotypée Salle Etudiant « Association ternaire » Cours début fin Enseignant Comme pour les associations binaires, il est possible de nommer les extrémités d’une association n-aire pour décrire le rôle des classes dans l’association.
La difficulté de trouver un nom différent pour chaque extrémité d’une association n-aire est souvent le signe d’une association d’arité inférieure.
Arité des associations (4)
Zodiaque chinois Personne Ville signe ascendant Zodiaque
Valeurs de multiplicités : Expression d’une contrainte (1)
Lorsque la valeur maximale de multiplicité est supérieure à 1, les éléments associés à cette multiplicité peuvent être ordonnées ou non. Par défaut, si aucune information supplémentaire est spécifiée, ils sont non ordonnés.
File d’attente 1 * {ordonné} Personne Nous pouvons indiquer que deux associations sont exclusives. Ainsi, lors d’un vol un employé ne peut être à la fois pilote et co-pilote.
pilote
Employé {ou exclusif}
copilote
Vol
Valeurs de multiplicités : Expression d’une contrainte (2)
Nous pouvons indiquer d’une association est un sous-ensemble d’une autre association. Ainsi, les personnes présentant un article lors d’une conférence est obligatoirement un des auteurs de l’article.
Personne
auteur
{sous ensemble}
conférencier
Article
Valeurs de multiplicités : diagramme de classes et modèle d’objets
Diagramme d’objets Diagramme de classes Homme 1 Bras 2 1 1 Tête :Homme :Bras :Bras :Tête Professeur 1 * Elève :Professeur :Elève
L’agrégation (1)
L’agrégation est une forme particulière d’association qui exprime un couplage fort entre classes.
L’agrégation favorise la propagation des valeurs de propriétés et des opérations de l’agrégat.
Automobile Moteur Transmission
L’agrégation (2)
L’agrégation peut notamment (mais pas nécessairement) exprimer : - qu’une classe (un élément) fait partie d’une autre (l’agrégat) - qu’un changement d’état d’une classe, entraîne un changement d’état d’une autre - qu’une action sur une classe, entraîne une action sur une autre.
A un même moment, une instance d’élément agrégé peut être liée à plusieurs instances d’autres classes (l’élément agrégé peut être partagé).
Une instance d’élément agrégé peut exister sans agrégat (et inversement) : les cycles de vies de l’agrégat et de ses éléments agrégés peuvent être indépendants.
L’agrégation (3)
Titre 0..1
Ici, on exprime qu’un fichier peut être attaché à un mail (ou à plusieurs, ou même à aucun) et qu’un mail peut (ou non) attacher (contenir une copie) un ou plusieurs fichiers. Destinataire 1..n
* 1 E-mail 1 * attache * Fichier Texte 0..1
La composition
La composition est une forme d’agrégation avec un couplage plus important. Ce couplage de composition indique que les composants ne sont pas partageables et que le destruction de l’agrégat entraîne la destruction des composants agrégés.
Composite 1 * Composant Composite Composant *
La composition : exemple
Voiture teinte Couleur 1 1 moteur Convertisseur d’énergie 4 roues Pneumatique
La généralisation
La généralisation consiste à factoriser les éléments communs (propriétés, opérations, contraintes) d’un ensemble de classes dans une classe plus générale appelée superclasse.
Animal Carnivore Herbivore Lion Mouton Lapin La généralisation ne porte aucun nom particulier, elle signifie toujours
est un
ou
est une sorte de
.
L’héritage
Le terme héritage fait référence au mécanisme de partage des propriétés et opérations utilisant la relation de généralisation.
L’héritage est la transmission de caractéristiques à ses descendants.
Classe A Classe B B est une classe dérivée de A (B est un A) : la classe B hérite des propriétés et opérations de la classe A.
Une instance d’une classe est instance de tous les ancêtres de sa classe, elle hérite de toutes les propriétés, toutes les opérations et de toutes les contraintes de ses classes ancêtres
L’héritage :exemple
Livre auteur nombre de pages Livre pour les enfants fourchette des âges Livre pour l’enseignement discipline niveau Un livre pour enfant possède les propriétés suivantes : auteur nombre de pages fourchette des âges
Spécialisation suivant différents critères
Une classe peut être spécialisée selon plusieurs critères à la fois.
Chaque critère de la généralisation est indiqué dans le diagramme en associant un discriminant à la relation de généralisation.
Lorsque les flèches sont agrégées, le discriminant apparaît une seule fois.
Véhicule A voile Motorisation A moteur Milieu Terrestre Marin
Généralisation multiple
Les classes peuvent avoir plusieurs superclasses; dans ce cas, la généralisation est dite multiple et plusieurs flèches de la sous-classe vers les différentes superclasses.
Les superclasses n’ont pas nécessairement un ancêtre commun.
Tapis Véhicule Terrestre Aérien Tapis volant
Exemple de construction de diagramme de classes : gestion technique de documents (1)
Énoncé : Nous cherchons à représenter le diagramme de classes d’une gestion technique de documents.
Chaque document est composé d’un ou plusieurs feuillets.
Un feuillet comporte du texte et des objets géométriques qui constituent deux types d’objets graphiques supportant des opérations de type : sélectionner, copier, couper, coller, déplacer Nous considérons les quatre objets géométriques suivants : cercle, ellipse, carré, rectangle.
Il est demandé d’utiliser les propriétés de la généralisation et la spécialisation afin de représenter au mieux ces objets géométriques.
Exemple de construction de diagramme de classe : gestion technique de documents (2)
L’analyse de la première partie de l’énoncé nous permet d’en déduire un début de diagramme de classe : Document Nom Ouvrir ( ) Fermer ( ) 1..* Feuillet Nom Ouvrir ( ) Fermer ( ) 1..* Objet graphique Nom Copier ( ) Coller ( ) Couper ( ) Déplacer ( ) Objet géométrique Dessiner ( ) Objet Texte texte écrire ( )
Exemple de construction de diagramme de classe : gestion technique de documents (3)
L’analyse de la deuxième partie nécessite des regroupements.
Pour cela examinons les définitions de cercle, ellipse, carré et rectangle.
Définition du dictionnaire « Le petit Robert » Carré : quadrilatère dont tous les cotés sont égaux et tous les angles droits.
Quadrilatère : Polygone à quatre cotés : carré, losange, parallélogramme, rectangle, trapèze Polygone : Figure plane formée par une ligne polygonale fermée.
Polygonal : Qui a plusieurs angles et plusieurs cotés.
Rectangle : - Parallélogramme à un angle droit. Le carré est un rectangle - (cour.) Figure à quatre angles droits dont les cotés sont égaux deux à deux.
Exemple de construction de diagramme de classe : gestion technique de documents (4)
Parallélogramme : quadrilatère dont les cotés opposés sont deux à deux parallèles.
Cercle : Courbe plane fermée dont tous les points sont à égale distance R (rayon) d’un centre Ellipse : Courbe plane fermée dont chaque point est tel que la somme de ses distances à deux points fixes (foyers) est constante.
(courbe plane fermée) cercle Centre Rayon Dessiner ( ) Rond ellipse Foyer1 Foyer2 Dessiner ( ) Objet graphique Nom Copier ( ) Coller ( ) Couper ( ) Déplacer ( ) polygone quadrilatère parallélogramme 3..* coté 2..* angle coté 4 4 angle rectangle carré 4 Angle droit
Diagramme des cas d’utilisation (1)
Afin de construire le diagramme de classes, pour la gestion technique des documents, nous avons utilisé le dictionnaire. Lors de la construction de logiciel, nous devons discuter avec les utilisateurs afin de connaître leur besoin (phase spécification des besoins).
Les diagrammes de cas d’utilisation constituent un moyen de recueillir et de décrire ces besoins.
Tout système peut être décrit par un certain nombre de cas d’utilisation correspondant aux besoins exprimés par l’ensemble des utilisateurs.
système utilisateur 1 utilisateur 2 .
.
.
utilisateur x
Diagramme des cas d’utilisation (2)
A chaque utilisateur correspondra un certain nombre de cas d’utilisation du système. L’ensemble de ces cas d’utilisation se représente sous forme d’un diagramme.
Chaque cas d’utilisation doit être décrit sous forme textuelle afin de bien identifier les traitements à réaliser par le système en vue de la satisfaction du besoin exprimé par l’acteur.
Chaque cas d’utilisation produit un ou plusieurs résultats.
Le travail d’identification des cas d’utilisation suppose que les acteurs eux-mêmes soient déjà connus ou doivent l’être complètement à la fin de l’opération de description.
Acteur
Un acteur représente un rôle joué par une entité externe (utilisateur humain, dispositif matériel ou autre système) qui interagit directement avec le système étudié.
Un acteur peut consulter et/ou modifier directement l’état du système, en émettant et/ou en recevant des messages susceptibles d’être porteurs de données.
Comment les identifier ?
Les acteurs candidats sont systématiquement : - les utilisateurs humains directs - les autres systèmes connexes qui interagissent aussi directement avec le système étudié.
Remarque : Une même personne physique peut se comporter en autant d’acteurs différents que le nombre de rôles qu’elle joue vis-à-vis du système Exemple : L’administrateur d’un système de messagerie peut être aussi utilisateur de cette même messagerie. Il sera considéré, en tant qu’acteur du système, dans le rôle d’administrateur d’une part et dans celui d’utilisateur d’autre part.
Représentation graphique d’un acteur
<
Cas d’utilisation (1)
Un cas d’utilisation (« use case ») représente un ensemble de séquences d’actions qui sont réalisées par le système et qui produisent un résultat observable intéressant pour un acteur particulier.
Chaque cas d’utilisation spécifie un comportement attendu du système considéré comme un tout, sans imposer le mode de réalisation de ce comportement. Il permet de décrire ce que le futur système devra faire, sans spécifier comment il le fera.
Comment les identifier ?
L’objectif est le suivant : l’ensemble des cas d’utilisation doit décrire exhaustivement les exigences fonctionnelles du systèmes. Chaque cas d’utilisation correspond donc à une fonction métier du système, selon le point de vue d’un de ses acteurs.
Cas d’utilisation (2)
Pour chaque acteur, il convient de : - rechercher les différentes intentions métier avec lesquelles il utilise le système, - déterminer dans le cahier des charges les services fonctionnels attendus du système.
Comment les analyser ?
Pour détailler la dynamique du cas d’utilisation, la procédure la plus évidente consiste à recenser de façon textuelle toutes les interactions entre les acteurs et le système. Le cas d’utilisation doit avoir un début et une fin clairement identifiés. Il faut également préciser les variantes possibles, telles que les différents cas nominaux, les cas alternatifs, les cas d’erreurs, tout en essayant d’ordonner séquentiellement les descriptions, afin d’améliorer leur lisibilité.
Représentation d’un cas d’utilisation
<
Cas d’utilisation : exemple 1
GESTION D’UNE BIBLIOTHEQUE Réaliser une inscription Etudiant Emprunter un livre Approvisionner ouvrages(s) Hôtesse Consulter le catalogue Faire inventaire Bibliothécaire
Cas d’utilisation : exemple 2
GAB Retirer de l’argent Porteur de CB Recharger le distributeur Consulter le solde Récupérer les cartes avalées Opérateur de maintenance Déposer du numéraire Client de la banque Déposer des chèques Récupérer les chèques déposés