Loading ...
Sorry, an error occurred while loading the content.

[extremeprogramming] CRC cards

Expand Messages
  • Michael Mason
    Hi all, I m new to all of this stuff, but in the XP book several mentions are made of CRC cards. However, the glossary doesn t tell me what these things are.
    Message 1 of 4 , Feb 1, 2000
    • 0 Attachment
      Hi all,

      I'm new to all of this stuff, but in the XP book several mentions are
      made of CRC cards. However, the glossary doesn't tell me what these
      things are. Could anyone enlighten me?

      Cheers,
      Mike.
    • Gareth Reeves
      http://www.c2.com/cgi/wiki?CrcCards ... From: mgm@decisionsoft.com [mailto:mgm@decisionsoft.com] Sent: Tuesday, February 01, 2000 9:55 AM To:
      Message 2 of 4 , Feb 1, 2000
      • 0 Attachment
        http://www.c2.com/cgi/wiki?CrcCards

        -----Original Message-----
        From: mgm@... [mailto:mgm@...]
        Sent: Tuesday, February 01, 2000 9:55 AM
        To: extremeprogramming@egroups.com
        Subject: [extremeprogramming] CRC cards


        Hi all,

        I'm new to all of this stuff, but in the XP book several mentions are
        made of CRC cards. However, the glossary doesn't tell me what these
        things are. Could anyone enlighten me?

        Cheers,
        Mike.

        ------------------------------------------------------------------------
        To Post a message, send it to: extremeprogramming@...
        To Unsubscribe, send a blank message to:
        extremeprogramming-unsubscribe@...

        ------------------------------------------------------------------------
        GET A NEXTCARD VISA, in 30 seconds! Get rates as low as 2.9%
        Intro or 9.9% Fixed APR and no hidden fees. Apply NOW!
        http://click.egroups.com/1/915/0/_/263270/_/949420517/

        eGroups.com Home: http://www.egroups.com/group/extremeprogramming/
        http://www.egroups.com - Simplifying group communications
      • Don Wells
        From: Michael Mason ... CRC cards are just cards. 3x5, 5x8 what ever you find to be a good size will do. The idea is that a card can
        Message 3 of 4 , Feb 1, 2000
        • 0 Attachment
          From: Michael Mason <mgm@...>
          >I'm new to all of this stuff, but in the XP book several mentions are
          >made of CRC cards. However, the glossary doesn't tell me what these
          >things are. Could anyone enlighten me?

          CRC cards are just cards. 3x5, 5x8 what ever you find to be a good size
          will do. The idea is that a card can be a physical representation of an
          object. The importance of CRC cards, in my opinion, is that they activate
          the right hemisphere of your brain. That is the part of your brain
          responsible for spacial relationships. Now you may think about your problem
          in terms of objects and their relationships instead of trying to design a
          procedural solution (left hemisphere) using little bits and pieces of code
          that are just too hard to keep track of.

          How you use them varies. The traditional method is to have one card for
          each class that you are contemplating. You then role play the classes
          following messages around through the system. As each message is sent from
          card to card you write down on the cards what message or responsibility a
          card (class) has. You also write down which other cards (collaborating
          classes) messages are sent to.

          The way I use them is to represent instances of classes with cards as well.
          I sometimes will write the class of the instance on the card, usually just
          the first time I introduce it, then the rest will be blank. Off to the side
          I might assemble a little class hierarchy so everyone can see it, usually
          not. I like to use five colors of cards. One for each major object type in
          my system. Related objects use the same color. (If I need more than four I
          need to consider if all those objects are needed.) I then pick up cards and
          move them about as they communicate with each other. I stage a little drama
          where the cards are the actors and they move about talking to each other.
          An object which is composed of other objects will have those objects tucked
          under it slightly forming a little group. To represent objects passing
          objects I take a card and move it from on top of one object to on top of
          another. I represent a collection of objects by grabbing a little stack of
          cards and laying them on the table. Etc., etc., etc.

          Don Wells
        • DesRues, Kevin
          I used the CRC card method in the design of a mobile piece. They helped a tremendous amount in defining the responsibilities and the interplay of the classes.
          Message 4 of 4 , Feb 1, 2000
          • 0 Attachment
            RE: [extremeprogramming] Re: CRC cards

            I used the CRC card method in the design of a mobile piece. They helped a tremendous amount in defining the responsibilities and the interplay of the classes. And they are pleasantly low tech and transportable. However, I didn't go so far as to dramatize the classes as it is hard enough to get the group to talk sometimes much less act out classes.

            If you need a reference (a decent one), try "The CRC Card Book", by David Bellin and Susan Suchman Simone (publ: Addison-Wesley, ISBN 0-201-89535-8).

            Kevin DesRues

            -----Original Message-----
            From: Don Wells [mailto:jdonwells@...]
            Sent: 2000, February, 01 1:57 PM
            To: extremeprogramming@egroups.com
            Subject: [extremeprogramming] Re: CRC cards


            From: Michael Mason <mgm@...>
            >I'm new to all of this stuff, but in the XP book several mentions are
            >made of CRC cards. However, the glossary doesn't tell me what these
            >things are. Could anyone enlighten me?

            CRC cards are just cards.  3x5, 5x8 what ever you find to be a good size
            will do.  The idea is that a card can be a physical representation of an
            object.  The importance of CRC cards, in my opinion, is that they activate
            the right hemisphere of your brain.  That is the part of your brain
            responsible for spacial relationships.  Now you may think about your problem
            in terms of objects and their relationships instead of trying to design a
            procedural solution (left hemisphere) using little bits and pieces of code
            that are just too hard to keep track of.

            How you use them varies.  The traditional method is to have one card for
            each class that you are contemplating.  You then role play the classes
            following messages around through the system.  As each message is sent from
            card to card you write down on the cards what message or responsibility a
            card (class) has.  You also write down which other cards (collaborating
            classes) messages are sent to.

            The way I use them is to represent instances of classes with cards as well.
            I sometimes will write the class of the instance on the card, usually just
            the first time I introduce it, then the rest will be blank.  Off to the side
            I might assemble a little class hierarchy so everyone can see it, usually
            not.  I like to use five colors of cards.  One for each major object type in
            my system.  Related objects use the same color.  (If I need more than four I
            need to consider if all those objects are needed.)  I then pick up cards and
            move them about as they communicate with each other.  I stage a little drama
            where the cards are the actors and they move about talking to each other.
            An object which is composed of other objects will have those objects tucked
            under it slightly forming a little group.  To represent objects passing
            objects I take a card and move it from on top of one object to on top of
            another.  I represent a collection of objects by grabbing a little stack of
            cards and laying them on the table.  Etc., etc., etc.

            Don Wells


            ------------------------------------------------------------------------
            To Post a message, send it to:   extremeprogramming@...
            To Unsubscribe, send a blank message to: extremeprogramming-unsubscribe@...

            ------------------------------------------------------------------------
            GET A NEXTCARD VISA, in 30 seconds!  Get rates as low as 2.9%
            Intro or 9.9% Fixed APR and no hidden fees.  Apply NOW!
            http://click.egroups.com/1/915/0/_/263270/_/949431751/

            -- Easily schedule meetings and events using the group calendar!
            -- http://www.egroups.com/cal?listname=extremeprogramming&m=1


          Your message has been successfully submitted and would be delivered to recipients shortly.