Exercice 2.2 : Identifier les classes

Dans cet exercice, vous identifiez les principaux objets qui constituent le système PiggyBank. Vous pouvez décrire ces objets sous la forme de classes, car les classes UML constituent un canevas commode pour la description des attributs et des relations d'un objet. Vous pouvez découvrir les principaux objets PiggyBank en en mettant en évidence tous les noms dans la documentation des exigences du projet. Vous pouvez regrouper les noms communs dans une liste que vous identifierez ensuite comme une classe du type entité, contrôleur ou limite. Ces classes créent les diagrammes de domaine qui constituent alors la fondation du modèle de conception.

L'un des principaux résultats produits par le modèle d'analyse est le modèle de domaine. Le modèle de domaine tente de modéliser la structure statique de l'application en modélisant les principaux acteurs et les principales entités qui participent aux tâches fonctionnelles. Il se compose d'un ou plusieurs diagrammes de classes de base, dont chacun décrit le nom de la classe assorti d'un ou deux attributs principaux décrivant le comportement de ladite classe. Les diagrammes de domaine sont les esquisses du système.

Avant de créer votre diagramme de domaine, vous devez identifier les classes principales du système PiggyBank qui sont décrites dans la documentation des cas d'utilisation du projet. En règle générale, cette phase est itérative car il peut s'avérer difficile d'identifier et de modéliser la structure correcte d'un système avant d'avoir compris la manière dont les parties du système interagissent entre elles. Vous créez la liste des objets pendant l'analyse de la documentation des cas d'utilisation, puis vous modifiez cette liste en ajoutant, supprimant ou réorganisant des classes lors de l'élaboration du modèle dynamique du système. Dans le présent tutoriel, les classes principales qui sont décrites dans les documents d'exigences ont été identifiées pour vous.

Pour identifier les principaux objets PiggyBank, vous devez commencer par analyser la documentation des cas d'utilisation et par répertorier tous les noms que vous y rencontrez. Cette liste fournit la base des éléments d'entités, de contrôleurs et de limites qui constituent le diagramme de domaine. La liste suivante contient la totalité des noms qui sont décrits dans la documentation des cas d'utilisation PiggyBank :

  • Customer
  • Account
  • Owner
  • Customer ID
  • Account number
  • Account balance
  • Credit account number
  • Debit account number
  • Amount
  • Check
  • Check reference
  • Check amount
  • Amount to credit
  • CityBank account
  • Transfer

Vous pouvez affiner la liste en éliminant les noms qui représentent des instances d'objets, des objets qui sont des attributs d'autres objets, des objets en double ou en rapport, et tout autre objet représentant une part non significative du système. Ne perdez pas de vue qu'il s'agit d'un processus itératif. Dans la réalité de votre travail, vous auriez à affiner cette liste au fur et à mesure que vous complétez votre modèle de domaine et que vous commencez à modéliser les éléments dynamiques de votre modèle d'analyse. Voici la liste affinée pour notre tutoriel :

  • Customer
  • Account
  • Check
  • Transfer

Ces quatre classes constituent la base du modèle de domaine. Il y a toutes les chances que les objets de cette liste affinée soient des classes d'entités, car les classes d'entités sont fréquemment les plus faciles à découvrir. Les autres classes, qui sont des instances ou des attributs de ces classes, décrivent les détails des classes principales et renseignent sur les relations existant entre elles.

Application aux classes des stéréotypes RUP

Une fois la liste des classes identifiée, vous pouvez les organiser en fonction de leur comportement en appliquant des stéréotypes. Les stéréotypes généralisent les objets en les organisant selon leurs ressemblances de traits ou de fonctionnalités. Les stéréotypes d'analyse RUP® décrivent le comportement des classes en les rangeant dans l'une de ces trois catégories : entité, limite ou contrôleur. Ces classes stéréotypées peuvent vous servir à créer des diagrammes de domaine pour votre système. Le tableau suivant décrit les éléments RUP d'analyse :

Elément Description
Elément RUP d'analyse : classe de limite

Les classes de limites décrivent les interfaces entre le système et les acteurs. S'il s'agit d'acteurs humains, il est fréquent que les classes de limites décrivent les interfaces logicielles ou matérielles qui accèdent au système. S'il s'agit de systèmes, des ordinateurs, par exemple, ou d'autres applications, les classes de limites représentent fréquemment des interfaces logicielles, des API par exemple.

Elément RUP d'analyse : classe de contrôle

Les classes de contrôle contiennent l'implémentation des règles et de la logique métier. Elles sont volontairement masquées par abstraction à l'utilisateur et ne sont accessibles qu'aux seules classes de limites. Elles interagissent avec une ou plusieurs classes d'entités.

Elément RUP d'analyse : classe d'entité

Les classes d'entités capturent les données du système.

L'application à votre liste de classes de ces stéréotypes de base aide à mieux comprendre la structure et la fonctionnalité d'un système. En organisant vos classes selon leur fonction, vous pouvez commencer à distinguer ce qui relève du domaine de votre système et ce qui touche aux détails de l'implémentation. Vous pourrez utiliser ces stéréotypes pour créer des diagrammes de domaine et de séquence dans les exercices qui suivent.

Vous pouvez passer maintenant à l'exercice 2.3 : Créer le diagramme de modèle de domaine PiggyBank

Conditions d'utilisation | Commentaires
(C) Copyright IBM Corporation 2004, 2005. All Rights Reserved.