La paz
Tarea de Ingeniería |
Número Tarea: | Historia de Usuario (Nro. y Nombre): |
Nombre Tarea: |
Tipo de Tarea :Desarrollo / Corrección / Mejora / Otra (especificar) | Puntos Estimados: |
Fecha Inicio: | Fecha Fin: |
Programador Responsable: |
Descripción: |
Tarjetas CRC (Clase - Responsabilidad – Colaborador).
Estas tarjetas se dividen en tres secciones quecontienen la información del nombre de la clase, sus responsabilidades y sus colaboradores. En la siguiente figura se muestra cómo se distribuye esta información.
Tabla No.4. Modelo de tarjeta CRC, Tomado de [2]
Una clase es cualquier persona, cosa, evento, concepto, pantalla o reporte. Las responsabilidades de una clase son las cosas que conoce y las que realiza, sus atributos y métodos. Loscolaboradores de una clase son las demás clases con las que trabaja en conjunto para llevar a cabo sus responsabilidades.
En la práctica conviene tener pequeñas tarjetas de cartón, que se llenarán y que son mostradas al cliente, de manera que se pueda llegar a un acuerdo sobre la validez de las abstracciones propuestas.
Los pasos a seguir para llenar las tarjetas son los siguientes:
* Encontrarclases
* Encontrar responsabilidades
* Definir colaboradores
* Disponer las tarjetas
Para encontrar las clases debemos pensar qué cosas interactúan con el sistema (en nuestro caso el usuario), y qué cosas son parte del sistema, así como las pantallas útiles a la aplicación (un despliegue de datos, una entrada de parámetros y una pantalla general, entre otros). Una vez que las clasesprincipales han sido encontradas se procede a buscar los atributos y las responsabilidades, para esto se puede formular la pregunta ¿Qué sabe la clase? y ¿Qué hace la clase? Finalmente se buscan los colaboradores dentro de la lista de clases que se tenga.
http://www.monografias.com/trabajos51/programacion-extrema/programacion-extrema2.shtml
5. Software Libre y Programación Extrema
A lo largode las introducciones a la programación extrema y al software libre hemos visto como algunas de las prácticas de la programación extrema son intrínsecas al desarrollo del software libre. Por contra, existe otra serie de prácticas que son de difícil implantación o que generan serios interrogantes. Este apartado va a tratar sobre todo esto.
Antes de todo, es importante recordar que para Beck seestá haciendo programación extrema si y sólo si se siguen las doce prácticas, ninguna más ni ninguna menos [Beck][Jeffries3]. Fowler es más flexible en este sentido y prefiere hablar entonces de procesos influenciados por la programación extrema [Fowler2]. Vemos que mientras el software libre es muy flexible en cuanto a su modelo de desarrollo (como ya hemos visto con anterioridad, en realidad es unconcepto legal), la programación extrema consta de un conjunto conocido y cerrado de prácticas. Esta característica hará que consideremos invariante la programación extrema y veamos qué cosas son las que pueden ser interesantes para el desarrollo de software libre.
Como veremos, la programación extrema no puede ser implantada en su práctica totalidad por el desarrollo de software libre. Por eso,retomando las palabras de Fowler, veremos hasta qué punto se puede influenciar el software libre por los procesos de programación extrema.
5.1. Características intrínsecas de programación extrema en el software libre
En un párrafo anterior se ha comentado que el software libre sigue de por sí algunas prácticas de la programación extrema. Como son características ya adoptadas y ampliamenteconocidas, no nos detendremos mucho en ellas.
La más evidente de las prácticas comunes es probablemente la propiedad colectiva del código, característica esencial para la libertad del software. Al igual que en la programación extrema, para facilitar el trabajo conjunto, se siguen uno estándares de codificación que permiten una lectura rápida y simple del código, a la vez que independiza el código...
Regístrate para leer el documento completo.