Aller au contenu
Read this post in: de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW
Home » UML » Un guide complet sur la modélisation des cas d’utilisation

Un guide complet sur la modélisation des cas d’utilisation

Qu’est-ce que la modélisation des cas d’utilisation ?

Il s’agit d’une technique utilisée dans le développement logiciel et l’ingénierie des systèmes pour décrire les exigences fonctionnelles d’un système. Elle se concentre sur la compréhension et la documentation de la manière dont un système devrait fonctionner du point de vue des utilisateurs finaux. En essence, elle aide à répondre à la question : « Que doit faire le système pour répondre aux besoins et objectifs de ses utilisateurs ? »

What is Use Case Diagram?

Concepts clés de la modélisation des cas d’utilisation

Exigences fonctionnelles: Les exigences fonctionnelles sont les fonctionnalités, actions et comportements qu’un système doit posséder pour remplir son objectif. La modélisation des cas d’utilisation se concentre principalement sur la définition et la capture de ces exigences de manière structurée.

Point de vue de l’utilisateur final: La modélisation des cas d’utilisation commence par examiner le système du point de vue des personnes ou entités (appelées « acteurs ») qui interagiront avec lui. Il est essentiel de comprendre comment ces acteurs utiliseront le système pour atteindre leurs objectifs ou accomplir leurs tâches.

Interactions: La modélisation des cas d’utilisation met l’accent sur la capture des interactions entre ces utilisateurs finaux (acteurs) et le système. Il ne s’agit pas seulement de ce que le système fait en isolation ; il s’agit de la manière dont il répond aux actions ou aux demandes des utilisateurs.

Les bases des cas d’utilisation :

  • Un cas d’utilisation est une description de la manière dont un système interagit avec une ou plusieurs entités externes, appelées acteurs, pour atteindre un objectif spécifique.
  • Un cas d’utilisation peut être rédigé sous forme textuelle ou diagrammatique, selon le niveau de détail et de complexité requis.
  • Un cas d’utilisation doit capturer les aspects essentiels et pertinents de l’interaction, tels que les préconditions, les postconditions, le flux principal, les flux alternatifs et les exceptions.

Qu’est-ce qu’un diagramme de cas d’utilisation ?

Un diagramme de cas d’utilisation est une représentation graphique utilisée dans la modélisation des cas d’utilisation pour visualiser et communiquer ces interactions et relations. Dans un diagramme de cas d’utilisation, les acteurs sont généralement représentés par des figures en traits, et les cas d’utilisation (fonctionnalités ou caractéristiques spécifiques) par des ovales ou des rectangles. Des lignes et des flèches relient les acteurs aux cas d’utilisation, montrant la manière dont ils interagissent.

 

    • Acteurs: Ce sont les entités ou utilisateurs en dehors du système qui interagissent avec lui. Ils peuvent être des personnes, d’autres systèmes ou même des périphériques matériels externes. Chaque acteur a des rôles ou responsabilités spécifiques au sein du système.
    • Cas d’utilisation: Les cas d’utilisation représentent des fonctionnalités ou processus spécifiques que le système peut réaliser pour répondre aux besoins des acteurs. Chaque cas d’utilisation a généralement un nom et une description, ce qui aide à comprendre ce qu’il réalise.
    • Relations: Les lignes et flèches reliant les acteurs et les cas d’utilisation dans le diagramme montrent la manière dont les acteurs interagissent avec le système à travers ces cas d’utilisation. Différents types de relations, tels que les relations d’association, d’extension et d’inclusion, peuvent être utilisés pour préciser la nature de ces interactions.

Comment réaliser la modélisation des cas d’utilisation ?

  1. Pour comprendre un cas d’utilisation, vous devez identifier les acteurs et les cas d’utilisation impliqués dans le système.
    Un acteur est une entité externe qui joue un rôle dans l’interaction avec le système. Un acteur peut être une personne, un autre système ou un événement temporel.
  2. Un cas d’utilisation est un ensemble de scénarios qui décrivent la manière dont le système et l’acteur collaborent pour atteindre un objectif commun1. Un scénario est une séquence d’étapes qui décrit ce qui se produit dans une situation spécifique1.
    Acteurs dans la modélisation des cas d’utilisation :
  3. Les acteurs sont représentés par des figures en traits dans un diagramme de cas d’utilisation.
    Les acteurs peuvent avoir des relations de généralisation, qui indiquent qu’un acteur hérite des caractéristiques et comportements d’un autre acteur. Par exemple, un acteur Étudiant peut être une généralisation d’un acteur Étudiant de premier cycle et d’un acteur Étudiant diplômé.
  4. Les acteurs peuvent également avoir des relations d’association, qui indiquent qu’un acteur est impliqué dans un cas d’utilisation. Par exemple, un acteur Enseignant peut être associé à un cas d’utilisation Attribution de notes.

Relations entre les acteurs et les cas d’utilisation :

Use Case Diagram - Website _ Structuring use cases with extend and ...

  • Les cas d’utilisation peuvent avoir inclure des relations, qui indiquent qu’un cas d’utilisation intègre le comportement d’un autre cas d’utilisation dans son exécution normale. Par exemple, un cas d’utilisation de connexion peut être inclus par de nombreux autres cas d’utilisation nécessitant une authentification.
    • Une relation d’inclusion est une dépendance entre deux cas d’utilisation, où un cas d’utilisation (le cas de base) intègre le comportement d’un autre cas d’utilisation (le cas inclus) dans son exécution normale.
    • Une relation d’inclusion est représentée par une flèche pointillée avec le stéréotype «inclure» du cas de base vers le cas inclus.
    • Une relation d’inclusion peut être utilisée pour réutiliser des fonctionnalités communes, simplifier des cas d’utilisation complexes ou abstraire les détails de bas niveau
  • Les cas d’utilisation peuvent également avoir étendre des relations, qui indiquent qu’un cas d’utilisation ajoute un comportement facultatif ou exceptionnel à un autre cas d’utilisation sous certaines conditions. Par exemple, un cas d’utilisation d’annulation de réservation peut étendre un cas d’utilisation de réservation si l’utilisateur décide d’annuler sa réservation.
    • Une relation d’étendue est une dépendance entre deux cas d’utilisation, où un cas d’utilisation (l’extension) ajoute un comportement facultatif ou exceptionnel à un autre cas d’utilisation (le cas de base) sous certaines conditions.
    • Une relation d’étendue est représentée par une flèche pointillée avec le stéréotype «étendre» de l’extension vers le cas de base.
    • Une relation d’étendue peut avoir un point d’extension, qui est un emplacement dans le cas d’utilisation de base où l’extension peut être insérée.
    • Un point d’extension peut être étiqueté par un nom et une condition

Création de cas d’utilisation efficaces :

  • Détermination des limites du système :
    • Une limite du système est une boîte qui entoure les cas d’utilisation et montre le périmètre du système.
    • Une limite du système aide à distinguer ce qui se trouve à l’intérieur du système (les cas d’utilisation) et ce qui se trouve à l’extérieur du système (les acteurs).
    • Une limite du système doit être clairement étiquetée avec le nom du système et sa version1.
  • Définition des objectifs et des scénarios de cas d’utilisation:
    • Un objectif de cas d’utilisation est une déclaration qui résume ce que le cas d’utilisation réalise pour l’acteur.
    • Un objectif de cas d’utilisation doit être spécifique, mesurable, réalisable, pertinent et testable.
    • Un scénario de cas d’utilisation est une séquence d’étapes qui décrit comment l’acteur et le système interagissent pour atteindre l’objectif.
    • Un scénario de cas d’utilisation doit être complet, cohérent, réaliste et traçable.
  • Rédaction de descriptions claires et concises de cas d’utilisation:
    • Une description de cas d’utilisation est un document textuel qui fournit des détails supplémentaires sur le cas d’utilisation, tels que les préconditions, les postconditions, le flux principal, les flux alternatifs et les exceptions.
    • Une description de cas d’utilisation doit être claire et concise, en utilisant un langage simple et précis, en évitant le jargon et l’ambiguïté, et en suivant un format cohérent.
    • Une description de cas d’utilisation doit également être cohérente et complète, couvrant tous les scénarios possibles, résultats et variations, et répondant à toutes les exigences pertinentes.
  • Modèles de cas d’utilisation et documentation:
    • Un modèle de cas d’utilisation est un format normalisé qui aide à organiser et à présenter les informations relatives au cas d’utilisation de manière cohérente et structurée.
    • Un modèle de cas d’utilisation peut inclure diverses sections, telles que le nom du cas d’utilisation, l’ID, l’objectif, les acteurs, la priorité, les hypothèses, les préconditions, les postconditions, le flux principal, les flux alternatifs, les exceptions, etc.
    • Une documentation de cas d’utilisation est une collection de cas d’utilisation qui décrit la fonctionnalité du système sous différents angles.
    • Une documentation de cas d’utilisation peut être utilisée à diverses fins, telles que la communication, la validation, la vérification, les tests, la maintenance, etc.

Meilleures pratiques pour la modélisation des cas d’utilisation :

  • Certaines meilleures pratiques pour la modélisation des cas d’utilisation sont :
    • Identifier les acteurs clés et leurs objectifs, et les impliquer dans le processus de développement des cas d’utilisation
    • Utiliser une approche en haut vers le bas approche pour identifier et prioriser les cas d’utilisation les plus importants
    • Utiliser une convention de nommage qui est cohérente, significative et descriptive pour les cas d’utilisation et les acteurs
    • Utiliser des diagrammes et des descriptions textuelles pour se compléter et fournir différents niveaux de détail
    • Utiliser des relations telles que étendre, inclure et généralisation pour montrer les dépendances et les similarités entre les cas d’utilisation
    • Revoir et valider les cas d’utilisation avec les parties prenantes et s’assurer qu’ils sont alignés avec les exigences du système

Modélisation des cas d’utilisation à l’aide d’un modèle de cas d’utilisation

Description du problème : Système de bibliothèque universitaire

Le système de bibliothèque universitaire fait face à une série de défis opérationnels qui affectent son efficacité et la qualité du service qu’il fournit aux étudiants, aux enseignants et au personnel. Ces défis incluent :

  1. Procédures manuelles de prêt et de retour: La bibliothèque dépend de procédures papier pour le prêt, le retour et le suivi des dates de retour des livres. Cette approche manuelle est sujette aux erreurs, entraînant des incohérences dans la tenue des dossiers et des conflits occasionnels entre le personnel de la bibliothèque et les usagers.
  2. Gestion des stocks: Le système actuel de gestion de la vaste collection de livres et de matériel de la bibliothèque est obsolète. L’absence d’un système efficace de gestion des stocks rend difficile la localisation des articles spécifiques, entraînant de la frustration chez les usagers de la bibliothèque et des retards inutiles.
  3. Suivi des frais de retard: Le suivi et la collecte des frais de retard pour les livres en retard sont des tâches difficiles. Le personnel de la bibliothèque ne dispose pas d’un système automatisé pour surveiller les dates d’échéance et évaluer précisément les pénalités. Cela entraîne une perte de revenus et des inconvenients pour les usagers.
  4. Gestion des comptes utilisateurs: Les comptes utilisateurs, y compris la délivrance et la gestion des cartes de bibliothèque, reposent sur des procédures manuelles. Cela entraîne des retards dans la mise à disposition des ressources de la bibliothèque aux nouveaux étudiants et des difficultés à mettre à jour les informations des utilisateurs existants.
  5. Accessibilité limitée: Le système actuel de la bibliothèque ne permet pas aux usagers d’accéder en ligne pour rechercher des livres, réserver des ouvrages ou renouveler des prêts à distance. Cette limitation nuit à la commodité et à l’accessibilité que les étudiants et les enseignants modernes attendent.
  6. Répartition inefficace des ressources: Le personnel de la bibliothèque fait souvent face à des difficultés pour optimiser la répartition des ressources, telles que les livres, les revues et les espaces d’étude. L’absence de données en temps réel et d’analyses rend difficile la prise de décisions éclairées concernant la répartition des ressources.
  7. Écarts de communication: Il existe un écart de communication entre le personnel de la bibliothèque et les usagers. Les usagers sont souvent au courant des politiques de la bibliothèque, des nouveautés ou des changements d’horaires, ce qui entraîne des malentendus et de la frustration.
  8. Problèmes de sécurité: Le système de la bibliothèque manque de mesures de sécurité adéquates pour protéger les données des utilisateurs et prévenir le vol ou l’accès non autorisé aux ressources de la bibliothèque.

Ces défis contribuent collectivement à une expérience de bibliothèque sous-optimale tant pour le personnel que pour les usagers. Résoudre ces problèmes et moderniser le système de bibliothèque universitaire est essentiel pour offrir des services efficaces, améliorer la satisfaction des utilisateurs et renforcer l’expérience académique globale au sein de la communauté universitaire.

Voici une liste des cas d’utilisation potentiels pour le système de bibliothèque universitaire, basée sur la description du problème fournie :

  1. Inscription des utilisateurs et gestion des comptes:
    • Créer un compte utilisateur
    • Mettre à jour les informations de l’utilisateur
    • Supprimer un compte utilisateur
    • Délivrer des cartes de bibliothèque
  2. Gestion des livres:
    • Ajouter de nouveaux livres au stock
    • Mettre à jour les informations sur le livre
    • Retirer des livres du stock
    • Rechercher des livres
    • Vérifier la disponibilité des livres
    • Réserver des livres
    • Renouveler les livres empruntés
    • Traiter les retours de livres
  3. Gestion des inventaires:
    • Cataloguer et classer les livres
    • Gérer les exemplaires de livres
    • Suivre l’emplacement des livres
    • Reconciliation des inventaires
  4. Gestion des frais de retard:
    • Calculer les frais de retard
    • Aviser les utilisateurs des livres en retard
    • Accepter les paiements des frais de retard
  5. Accès en ligne et recherche:
    • Rechercher des livres en ligne
    • Réserver des livres
    • Demander la livraison de livres
    • Renouveler les livres en ligne
  6. Répartition des ressources et réservation:
    • Réserver des espaces d’étude
    • Allouer des matériaux d’étude (par exemple, livres en réserve)
    • Gérer les réservations d’espaces d’étude
  7. Communication:
    • Aviser les utilisateurs des politiques de la bibliothèque
    • Annoncer les nouveaux arrivages
    • Fournir des informations sur les heures d’ouverture
  8. Sécurité:
    • Authentification et autorisation des utilisateurs
    • Sécurité et confidentialité des données
  9. Rapports et analyses:
    • Générer des rapports d’utilisation
    • Analyser les tendances de prêt
    • Prédire la demande pour des matériaux spécifiques
  10. Services de prêt entre bibliothèques:
    • Demander des matériaux à d’autres bibliothèques
    • Gérer les demandes de prêt entre bibliothèques
  11. Gestion du personnel de la bibliothèque:
    • Authentification et autorisation du personnel
    • Formation et intégration
    • Planification du personnel
  12. Services d’accessibilité:
    • Fournir des services aux utilisateurs ayant des besoins spéciaux (par exemple, matériaux en braille)
    • Support technologique d’assistance
  13. Réservation et retrait de ressources:
    • Réserver du matériel audiovisuel
    • Retirer du matériel
  14. Recommandations de ressources de bibliothèque:
    • Suggérer des livres et des ressources en fonction des préférences de l’utilisateur
  15. Actions de sensibilisation et ateliers de la bibliothèque:
    • Organiser et promouvoir les ateliers et événements de la bibliothèque

Ces cas d’utilisation candidats couvrent un large éventail de fonctionnalités qui répondent aux problèmes identifiés dans la description du problème. Ils servent de base à une analyse, une conception et un développement ultérieurs du système de bibliothèque universitaire afin d’améliorer son efficacité et la satisfaction des utilisateurs. Les cas d’utilisation spécifiques à prioriser et à mettre en œuvre dépendront des exigences du système et des besoins des parties prenantes.

Modèle de cas d’utilisation :

Voici le modèle de cas d’utilisation et un exemple pour emprunter un livre dans une bibliothèque universitaire, sous forme de tableau :

Nom du cas d’utilisation Emprunter un livre
Identifiant du cas d’utilisation UC001
Acteur principal Étudiant
Acteurs secondaires Bibliothécaire, Système de gestion des inventaires de livres
Préconditions – L’étudiant possède une carte de bibliothèque valide.
– Le livre est disponible dans l’inventaire de la bibliothèque.
Postconditions – Le livre est marqué comme emprunté dans le système.
– L’étudiant a le livre en sa possession.
Flux principal 1. Description : L’étudiant souhaite emprunter un
livre de la bibliothèque universitaire.
2. Actions de l’acteur :
– L’étudiant présente sa carte de bibliothèque au
bibliothécaire.
– Le bibliothécaire scanne la carte de bibliothèque pour
vérifier sa validité.
– L’étudiant fournit le titre ou le ISBN du
livre qu’il souhaite emprunter.
– Le bibliothécaire recherche dans le catalogue de la bibliothèque
le livre.
– Le bibliothécaire confirme la disponibilité du livre.
– Le bibliothécaire enregistre le prêt du livre à l’
étudiant.
– L’étudiant prend le livre et quitte la
bibliothèque.
3. Actions du système :
– Le système valide la carte de bibliothèque.
– Le système met à jour le statut du livre en
« prêté ».
– Le système enregistre la date de retour prévue pour le prêt du livre
emprunt.
– Le système génère un reçu pour la
transaction.
4. Flux alternatifs :
– Si la carte de bibliothèque de l’étudiant est invalide, le
bibliothécaire informe l’étudiant, et le cas d’utilisation se termine.
– Si le livre demandé n’est pas disponible, le
bibliothécaire informe l’étudiant, et le cas d’utilisation se termine.
Extensions – Si l’étudiant a des livres en retard, une notification
est envoyé à l’étudiant.
– Si l’étudiant souhaite renouveler le livre, il peut
demander un renouvellement via le site web de la bibliothèque.
Exigences spéciales – Le système doit disposer d’une base de données sécurisée de
titulaires de cartes de bibliothèque.
– Les dates d’échéance et les frais de retard doivent être calculés et
appliqués par le système.

Exemple de cas d’utilisation : Emprunter un livre à la bibliothèque universitaire

Nom du cas d’utilisation Emprunter un livre
Identifiant du cas d’utilisation UC001
Acteur principal Étudiant
Acteurs secondaires Bibliothécaire, système de gestion des livres
Préconditions – L’étudiant possède une carte de bibliothèque valide.
– Le livre est disponible dans l’inventaire de la bibliothèque.
Postconditions – Le livre est marqué comme emprunté dans le système.
– L’étudiant a le livre en sa possession.
Flux principal 1. Description : L’étudiant souhaite emprunter un
livre de la bibliothèque universitaire.
2. Actions de l’acteur :
– L’étudiant présente sa carte de bibliothèque au
bibliothécaire.
– Le bibliothécaire scanne la carte de bibliothèque pour
vérifier sa validité.
– L’étudiant fournit le titre ou le ISBN du
livre qu’il souhaite emprunter.
– Le bibliothécaire recherche dans le catalogue de la bibliothèque
le livre.
– Le bibliothécaire confirme la disponibilité du livre.
– Le bibliothécaire enregistre le prêt du livre à l’
étudiant.
– L’étudiant prend le livre et quitte la
bibliothèque.
3. Actions du système :
– Le système valide la carte de bibliothèque.
– Le système met à jour le statut du livre en
« prêté ».
– Le système enregistre la date de retour du prêt du livre
emprunt.
– Le système génère un reçu pour la
transaction.
4. Flux alternatifs :
– Si la carte de bibliothèque de l’étudiant est invalide, le
bibliothécaire informe l’étudiant, et le cas d’utilisation se termine.
– Si le livre demandé n’est pas disponible, le
bibliothécaire informe l’étudiant, et le cas d’utilisation se termine.
Extensions – Si l’étudiant a des livres en retard, une notification
est envoyée à l’étudiant.
– Si l’étudiant souhaite renouveler le livre, il peut
demander un renouvellement via le site web de la bibliothèque.
Exigences spéciales – Le système doit disposer d’une base de données sécurisée de
titulaires de cartes de bibliothèque.
– Les dates d’échéance et les frais de retard doivent être calculés et
appliqués par le système.

Ces tableaux ci-dessus présentent le modèle de cas d’utilisation et un exemple de manière structurée et organisée, facilitant la lecture et la compréhension des éléments clés du cas d’utilisation.

Granularité des cas d’utilisation

Définition de la granularité des cas d’utilisation: La granularité des cas d’utilisation fait référence au degré de détail et d’organisation dans les spécifications des cas d’utilisation. Elle décrit essentiellement à quel point vous divisez finement la fonctionnalité d’un système lors de la documentation des cas d’utilisation. En termes simples, il s’agit de la quantité ou de la quantité réduite de décomposition d’un cas d’utilisation en parties ou étapes plus petites.

Importance de la granularité des cas d’utilisation:

  1. Amélioration de la communication: La granularité des cas d’utilisation joue un rôle essentiel dans l’amélioration de la communication entre les différents intervenants impliqués dans un projet logiciel, tels que les analystes métier, les développeurs, les testeurs et les utilisateurs finaux. Lorsque les cas d’utilisation sont bien définis et correctement granulés, chacun peut mieux comprendre la fonctionnalité et les exigences du système.
  2. Planification du projet: Le niveau de granularité des cas d’utilisation influence la planification du projet. Des cas d’utilisation plus petits et plus précis facilitent l’estimation du temps et des efforts nécessaires pour les tâches de développement. Cela aide les gestionnaires de projet à établir des calendriers de projet plus précis et une répartition des ressources plus efficace.
  3. Clarté et précision: Obtenir le bon niveau de granularité garantit que les cas d’utilisation sont clairs et précis. Si les cas d’utilisation sont trop généraux et abstraits, ils peuvent manquer de détails nécessaires pour un développement efficace. À l’inverse, des cas d’utilisation trop détaillés peuvent devenir difficiles à gérer et encombrants.

Exemple: Illustrons la granularité des cas d’utilisation à l’aide d’un exemple lié à la fonctionnalité « Inscription d’utilisateur » dans une application de commerce électronique :

  • Haute granularité: Un seul cas d’utilisation intitulé « Inscription d’utilisateur » couvre l’ensemble du processus d’inscription, du début à la fin. Il inclut chaque étape, comme la saisie des informations personnelles, la création d’un mot de passe, la confirmation du mot de passe et l’envoi du formulaire d’inscription.
  • Granularité moyenne: Les cas d’utilisation sont divisés en parties plus petites et plus ciblées. Par exemple, « Saisir les informations personnelles », « Créer un mot de passe » et « Soumettre l’inscription » pourraient être des cas d’utilisation distincts. Chacun d’eux se concentre sur un aspect spécifique de l’inscription d’utilisateur.
  • Faible granularité: Le niveau le plus bas de granularité pourrait impliquer la décomposition des actions au sein d’une seule étape. Par exemple, « Saisir les informations personnelles » pourrait être décomposé davantage en « Saisir le prénom », « Saisir le nom », « Saisir l’adresse e-mail », et ainsi de suite.

Le niveau de granularité approprié dépend des exigences du projet et des besoins spécifiques des parties prenantes. Trouver le bon équilibre est essentiel pour garantir que les cas d’utilisation soient compréhensibles, gérables et efficaces pour transmettre la fonctionnalité du système à toutes les parties impliquées.

Dans son livre « Écrire des cas d’utilisation efficaces », Alastair Cockburn propose une analogie simple pour nous aider à visualiser les différents niveaux d’atteinte des objectifs. Il suggère de penser à ces niveaux à l’aide de l’analogie de la mer

Different levels of details of use case

Références :

  1. Qu’est-ce qu’un diagramme de cas d’utilisation ? (visual-paradigm.com)
  2. Qu’est-ce qu’une spécification de cas d’utilisation ?

 

Laisser un commentaire