CRC Cards

De productpatterns_wiki
Saltar a: navegación, buscar

Spanish.jpg Español

Box-In.png
Entries

  • Requirements specification.

Box-Out.png
Exit

  • CRC cards.

Star.png
Solution

process-descending-24px.png
Process

CRC Cards1.png

time-24px.png
Development time

    • To acquire the necessary knowledge to develop the software product: 6 hours.
    • To create the Product Pattern: 2 days.
    • To apply the Product Pattern: 4 hours.

video-24px.png
Explanatory Video

    • Not applicable

bricks.png
Related Patterns

Search-32px.png
Quality Controllers

  • None

template.png
Templates

tool.png
Support Tools

start-flag.png
Initial Context

It has the requirements specification document, and taking as a starting point, it is desired to create a representation of responsibilities and collaborations for each existing class.

end-flag.png
Result Context

It has a structure of the total set of classes in the system, assigning responsibilities for each class.

cloud.png
Problem

It is desired to create a representation of how a software system works from the user's perspective. The graphical representation will be using a unified modeling language icons, defining the meaning of each class by responsibilities and collaborations. It aims to understand the behavior of each class at a high level.

forces.png
Restricciones (Forces)

  • System Type: It applies to all types of systems.
  • Characteristics of organizations: This pattern can be used in existing projects in any company.
  • Type of system to be developed: This product can be used in projects in which user requirements are changing.
  • Type of Customer: It must exist or be achieved, the target area development business being involved in achieving it.
  • Programming Paradigm: OO (Object Oriented).

roles.png
Roles

  • Analyst
  • Customer
  • Project Manager
  • System Users

lightbulb.png
Lessons Learned

  • Utility: CRC cards can be used to simulate scenarios, distributing a CRC card for each team member.
  • Brainstorming is a good practice to suggest how to fill the cards.
  • Generally classes are self-sufficient and self-contained, so there may be a liability without a collaboration partner.

award.png
Capability Level

  • Not applicable

Options.png
Basic Knowledge and Skills

board-24px.png
Knowledge

  • Definition of software requirements (functional and non-functional).
  • Intermediate knowledge of UML.
  • Know how to obtain data on how it really work.
  • Accustomed to using a particular paradigm.
  • OO system representation

help-24px.png
Abilities

  • Capacity of abstraction.
  • Capacity of Analysis.
  • Holistic or systemic view of problems.

Information-Sources.png
Information Resources

  • Fowler, M. (2004). UML distilled: a brief guide to the standard object modelling language.' Addison-Wesley.
  • Artículo original sobre Tarjetas Crc (Beck y Cunningham 1989) en la Web