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].

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 ).