Tarjetas crc
Las tarjetas CRC (clase, responsabilidad y colaboración) son una metodología para el diseño de software orientado por objetos creada por Kent Beck y Ward Cunningham.
• Es una técnica para la representación de sistemas OO, para pensar en objetos.
• Son un puente de comunicación entre diferentes participantes.
• Principales desventajas: lentitud y roces.
• Serecomienda un grupo de trabajo con representantes de las distintas partes.
• Tamaño recomendable de cinco a seis personas: variedad de estilos y no demasiadas divagaciones.
• Recomendación de equipo: 1 ó 2 usuarios, 2 analistas, 1 diseñador y 1 moderador.
• La lluvia de ideas es una buena práctica para sugerir cómo rellenar las tarjetas
• Permite ver las clases como algo más quedepositorio de datos, sino conocer el comportamiento de cada una en un alto nivel.
CRC:
1. Todas las ideas son buenas, no censura.
2. Pensar rápido, la meditación después.
3. Cada miembro debe tener un turno, sin presiones.
4. Aligerar la situación, pausas para los roces.
http://es.wikipedia.org/wiki/Tarjetas_CRC
A fines de la década de 1980, uno de los centros más grandes detecnología de objetos era el laboratorio de investigación de Tektronix, en Portland, Oregon, Estados Unidos. Este laboratorio tenía algunos de los principales usuarios de Smalltalk y muchas de las ideas clave de la tecnología de objetos se desarrollaron allí. Dos de sus programadores renombrados de Smalltalk eran Ward Cunningham y Kent Beck.
Tanto Cunningham como Beck estaban y siguen preocupadospor cómo enseñar los profundos conocimientos de Smalltalk que habían logrado. De esta pregunta sobre cómo enseñar objetos surgió la sencilla técnica de las tarjetas de Clase-Responsabilidad-Colaboración (CRC).
En lugar de utilizar diagramas para desarrollar modelos, como lo hacían la mayoría de los metodólogos, Cunningham y Beck representaron las clases en tarjetas 4 x 6 [pulgadas]. Y en lugar deindicar atributos y métodos en las tarjetas, escribieron responsabilidades.
Ahora bien, ¿qué es una responsabilidad? En realidad es una descripción de alto nivel del propósito de una clase. La idea es tratar de eliminar la descripción de pedazos de datos y procesos y, en cambio, captar el propósito de la clase en unas cuantas frases. El que se haya seleccionado una tarjeta es deliberado. No sepermite escribir más de lo que cabe en una tarjeta (véase la figura 4-4).
|Nombre de la Clase : Pedido |
|Responsabilidad |Colaboración |
|Revisa si hay elementos en existencia |Línea de pedido |
|Determina precio |Línea de pedido |
|Revisa siel pago es válido |Cliente |
|Despacha a la dirección de entrega | |
Figura 4-4 Tarjeta de Clase-Responsabilidad-Colaboración (CRC)
La segunda C se refiere a los colaboradores. Con cada responsabilidad se indica cuáles son las otras clases con las que se tiene que trabajar para cumplida. Esto da cierta idea sobre losvínculos entre las clases, siempre a alto nivel.
Uno de los principales beneficios de las tarjetas de CRC es que alientan la disertación animada entre los desarrolladores. Son especialmente eficaces cuando se está en medio de un caso de uso para ver cómo lo van a implementar las clases. Los desarrolladores escogen tarjetas a medida que cada clase colabora en el caso de uso. Conforme se van formandoideas sobre las responsabilidades, se pueden escribir en las tarjetas. Es importante pensar en las responsabilidades, ya que evita pensar en las clases como simples depositarias de datos, y ayuda a que el equipo se centre en comprender el comportamiento de alto nivel de cada clase.
Un error común que veo que comete la gente es generar largas listas de responsabilidades de bajo nivel. Este...
Regístrate para leer el documento completo.