Informatique > Méthodologies agiles > Extreme Programming (XP) >
Cartes CRC (Class Responsibility Collaborator)
Définition :
Les cartes CRC (Class Responsibility Collaborator) sont un outil de modélisation utilisé en méthodologie de développement agile, telle que l'Extreme Programming (XP). Elles permettent de définir les responsabilités des classes, les interactions entre les classes et les collaborations nécessaires pour mettre en œuvre une fonctionnalité spécifique dans un logiciel. Chaque carte CRC représente une classe du système et liste ses responsabilités, ainsi que ses collaborations avec d'autres classes. Cela aide à organiser et clarifier la conception logicielle et à favoriser une communication efficace au sein de l'équipe de développement.
Les cartes CRC : un outil clé en Extreme Programming (XP)
En méthodologies agiles telles que l'Extreme Programming (XP), les cartes CRC (Class Responsibility Collaborator) représentent un outil important pour conceptualiser et visualiser la conception logicielle d'un système. Elles permettent de définir les différentes classes d'un système, ainsi que leurs responsabilités et leurs collaborations.
Qu'est-ce qu'une carte CRC ?
Une carte CRC est une fiche informative se concentrant sur une classe en particulier. Elle est divisée en trois sections :
Classe : indique le nom de la classe et éventuellement sa description.
Responsabilités : liste les différentes tâches et actions que la classe est chargée d'effectuer.
Collaborateurs : énumère les autres classes avec lesquelles la classe en question interagit.
Comment utiliser les cartes CRC ?
Les cartes CRC sont généralement utilisées lors de sessions de brainstorming ou de conception collective. Chaque membre de l'équipe peut se voir attribuer une carte CRC à compléter pour une classe spécifique. En discutant et en comparant les différentes cartes CRC, l'équipe peut clarifier la conception du système et s'assurer que toutes les interactions entre les classes sont prises en compte.
En résumé, les cartes CRC sont un outil simple mais efficace pour organiser et structurer la conception logicielle en mettant l'accent sur les responsabilités et les collaborations des différentes classes d'un système.
Si vous souhaitez approfondir ce sujet, nous vous conseillons ces ouvrages.
Les sujets suivants pourraient également vous intéresser :