Adaptez votre diagramme aux changements de besoins de votre client

Mettez à jour votre diagramme de cas d'utilisation

Le problÚme avec les clients, c'est qu'ils changent constamment d'avis. Nos bibliothécaires n'échappent pas à cette rÚgle.

AprĂšs quelques Ă©changes, vous vous rendez compte qu'ils ne sont pas 100 % satisfaits. Apparemment, quand un livre n'est pas disponible, les usagers se plaignent de devoir vĂ©rifier rĂ©guliĂšrement s'il l'est Ă  nouveau. Et mĂȘme s'ils le cherchent depuis des semaines, il suffit que quelqu'un ait un peu de chance, et passe juste devant eux. Ce qui agace d'autant plus les bibliothĂ©caires quand ce mĂȘme titre est particuliĂšrement demandĂ©. Ils souhaiteraient donc augmenter l'amende pour les livres populaires rendus en retard et faire en sorte que les usagers puissent mettre un livre de cĂŽtĂ©.

Franchement, ils n'auraient pas pu nous le dire avant ??? đŸ€Šâ€â™€ïž

Un petit conseil si vous voulez garder votre calme dans ce métier : autant vous y habituer tout de suite, les clients sont comme ça. Il y a toujours de nouveaux éléments à prendre en compte. Mais essayons de relativiser ; au final, il n'y a que deux nouvelles fonctionnalités à prendre en compte :

  • mettre un livre de cĂŽtĂ© ;

  • augmenter l'amende pour un livre populaire.

ConcrĂštement, quelles sont les implications pour vous ? C'est simple : vous devez mettre Ă  jour votre documentation !

Tout d'abord, il va falloir déterminer si vous avez affaire à un cas d'utilisation totalement nouveau ou à une modification d'un cas d'utilisation existant. L'idée de mettre un livre de cÎté n'est reliée à aucun cas d'utilisation précédent. Vous devez donc reprendre votre diagramme et y ajouter un ovale.

Image représentant le diagramme de cas d'utilisation mis à jour
Diagramme de cas d'utilisation mis Ă  jour

Vous avez vu comme c'est simple ? C'est bien lĂ  toute la puissance du Domain-Driven Design : sa capacitĂ© d'adaptation ! 😎

Mettez à jour votre diagramme de classes

À prĂ©sent, nous devons crĂ©er une description du nouveau cas d'utilisation. Cela nous permettra de repĂ©rer s'il faut ajouter de nouvelles classes ou de nouveaux attributs. Voici la description du nouveau cas d'utilisation : 

  • l'utilisateur recherche un livre ;

  • le systĂšme affiche les informations relatives au livre :

    • notamment le fait qu'il est actuellement empruntĂ© par un autre usager ;

  • l'utilisateur sĂ©lectionne l'option Mettre de cĂŽtĂ© ;

  • le programme demande les coordonnĂ©es de l'usager ;

  • l'utilisateur saisit le nom de l'usager ou son identifiant Ă  la bibliothĂšque ;

  • le programme confirme l'existence de l'usager ;

  • le programme ajoute l'identifiant de l'usager Ă  la liste des exemplaires mis de cĂŽtĂ© du livre.

Les nouveaux noms ont été mis en gras. Vous pouvez créer un diagramme de classes pour montrer les  nouveaux concepts et ceux déjà en lien avec ce cas d'utilisation :

Image représentant le diagramme de classe de la bibliothÚque mis à jour
Diagramme de classe mis Ă  jour

IntĂ©ressons-nous un peu au nouveau diagramme. 🧐 Les Ă©lĂ©ments suivants ont Ă©tĂ© ajoutĂ©s :

  • une classe Liste des exemplaires mis de cĂŽtĂ©, qui est reliĂ©e Ă  la classe Livre. Un livre ne peut figurer qu'une fois sur la liste des exemplaires mis de cĂŽtĂ©. Par contre, cette liste peut comporter de nombreux livres ;

  • une relation entre la classe Usager et la classe Liste des exemplaires mis de cĂŽtĂ©. Un usager ne peut ĂȘtre qu'une fois sur la liste des exemplaires mis de cĂŽtĂ©. Par contre, cette derniĂšre peut comporter de nombreux usagers ;

  • des attributs pour la classe Usager : nom et prĂ©nom de l'usager, ainsi qu'un identifiant unique.

C'est bien beau. Mais qu'en est-il des amendes doublées quand le livre emprunté est populaire ?

Eh bien, pas la peine de faire un travail supplémentaire pour ce cas-là, et de l'ajouter au diagramme : il s'agit juste d'une extension du cas d'utilisation "Infliger une amende aux usagers". En revanche, vous devrez ajouter une définition expliquant ce qu'est un livre populaire dans le modÚle de domaine, car c'est un nouveau concept. Dans ce cas, ajoutez « Livre populaire » à la classe Livre :

Image représentant la classe
La nouvelle classe "Livre"

Mon diagramme ne ressemble plus du tout Ă  ce que j'avais avant. Mais
 mais
 ça veut dire que je m'Ă©tais trompĂ© ? đŸ„ș

Non, cela signifie simplement que le programme change de comportement, il s'adapte aux besoins de vos clients. Il est essentiel de tenir votre modÚle à jour. Vous n'avez pas envie qu'un nouveau concept vous échappe. Si vous prenez la (trÚs) mauvaise habitude de ne pas mettre à jour votre modÚle, vous allez retomber dans l'approche « le programme d'abord, les besoins clients ensuite ».

DÚs que de nouvelles idées sont lancées, il faut adapter votre modÚle de domaine. Pour cela, il vous faudra souvent ajouter de nouvelles classes et de nouveaux attributs, ou encore déplacer un attribut d'une classe à une autre. 

đŸ‘©â€đŸ”Ź EntraĂźnez-vous ! 

Parfois, vous devez modifier votre documentation pour intégrer de nouvelles idées, et parfois non ! Dans notre exercice, je vais mettre votre capacité à prendre la bonne décision à rude épreuve, mais je suis sûre que vous allez trÚs bien vous en tirer !

Au fil de vos discussions avec vos bibliothécaires, vous découvrez qu'un livre populaire est un livre qu'au moins trois usagers ont demandé de mettre de cÎté en une semaine. Alors, faut-il modifier votre documentation pour intégrer cette définition ? Ou bien ce n'est pas nécessaire ?

Nous avions déjà représenté le concept de livre populaire. La maniÚre dont est déterminée sa popularité peut changer au fil du temps, mais l'idée de popularité ne change pas. Vous ne devez donc pas modifier votre diagramme !

Cela peut paraßtre compliqué, mais souvenez-vous que la logique métier ne doit pas figurer sur un diagramme de classes. Bien sûr, votre code devra parcourir la liste des livres mis de cÎté et déterminer si certains d'entre eux apparaissent au moins trois fois, mais comme il s'agit de logique métier, cela n'apparaßt pas sur notre diagramme de classes.

En résumé

  • Les diagrammes de cas d'utilisation et les diagrammes de classes s'adaptent aux besoins changeants des clients. 

  • Quand un client demande des modifications, les Ă©tapes Ă  suivre pour adapter le diagramme sont les suivantes :

    • crĂ©er les descriptions des nouveaux cas d'utilisation ;

    • rĂ©pĂ©ter le processus de recherche des classes et des attributs ;

    • si nĂ©cessaire, modifier le modĂšle existant afin d'intĂ©grer les nouvelles idĂ©es.

Dans le chapitre suivant, nous Ă©tudierons comment crĂ©er des catĂ©gories Ă  partir de ces classes, et la maniĂšre de les mettre en Ɠuvre dans le code.

Et si vous obteniez un diplĂŽme OpenClassrooms ?
  • Formations jusqu’à 100 % financĂ©es
  • Date de dĂ©but flexible
  • Projets professionnalisants
  • Mentorat individuel
Trouvez la formation et le financement faits pour vous