Cartes CRC

méthode de conception du logiciel

Les cartes CRC (classe, responsabilité, collaborateurs) sont un outil de conception d'architecture logicielle.

Principes modifier

Il s'agit de simples fiches bristol qui contiennent le nom de la classe, ses responsabilités (les informations qu'elle connait, les actions qu'elle réalise…) et ses collaborateurs (les classes avec lesquelles elle interagit).

Lors d'une réunion les participants manipulent les cartes pour simuler les interactions entre les classes du système lorsqu'il est soumis à cas d'utilisation.

Historique modifier

Ward Cunningham a inventé les cartes CRC en s'inspirant d'une application de documentation d'architecture logicielle sous hypercard [(note 1)]. Il les a présentées avec Kent Beck lors de la conférence OOPSLA de 1989[1].

Usages modifier

Les cartes CRC font partie des bonnes pratiques préconisées par la méthode extreme programming[2]

Critiques modifier

Une séance CRC laisse peu de traces de documentation.

Voir aussi modifier

Notes et références modifier

note 1.  On peut noter que c'est cette même application hypercard qui a servi d'inspiration pour l'invention du wiki[3].

  1. « CRC Card / », sur riff.org (consulté le ).
  2. Don Wells, « CRC Cards », sur extremeprogramming.org (consulté le ).
  3. « Wiki Wiki Hyper Card », sur c2.com via Wikiwix (consulté le ).