El objetivo de esta práctica es de familiarizarse con el sistema de control de versiones que vamos a utilizar para almacenar el código de nuestro proyecto. Esta familiarización es necesaria para poder realizar el paso 7 del script visto en la práctica anterior.
El sistema de control de versiones que usaremos se llama Subversión y está disponible gratuitamente:
Existe un libro gratuito acerca de subversión que se sugiere leer:
Subversión es un sistema cliente-servidor. El servidor contiene la base de datos de artefactos (repositorio) y es necesario instalar un cliente en toda máquina donde se desee trabajar con el código del repositorio. Existen múltiples clientes, que incluyen:
A continuación vamos a instalar el cliente Subclipse en nuestro Eclipse. Esto sólo es necesario realizarlo una vez. Para hacerlo sigue los pasos ilustrados en el tutorial siguiente:
HACER: Si tu eclipse no tiene instalado subclipse, instalaselo.
Una vez que nuestro cliente ha sido instalado, podemos acceder al repositorio (el servidor) y subir nuestro código.
Donde X corresponde al número de tu equipo. El password te será proporcionado por el profesor.
El tutorial siguiente muestra cómo hacerlo:
HACER: Dentro del directorio de tu equipo, crea y sube un proyecto pero no lo llames trunk sino que ponle otro nombre (como por ejemplo tu matricula). El trunk será para el proyecto del equipo.
Ya hemos aprendido a conectar un proyecto al repositorio. Ahora veremos cómo se realizan los checkouts y cómo se manejan los conflictos. Observa el siguiente tutorial:
HACER: Con el proyecto que subiste anteriormente, realiza los mismos pasos que el tutorial para que te familiarices con los conceptos.
Ahora que tu y tu equipo se han familiarizado con subversión, ya pueden completar las partes que están en negritas dentro del script de desarrollo en fase de construcción:
| Propósito | Guiar a un desarrollador en la actividad de implementar una parte del sistema | |
|---|---|---|
| Criterios de entrada | - Documento de diseño de la arquitectura que presenta la estructuración del sistema en módulos así como el detalle de su mapeo a la tecnología específica - Plan de iteración - Entorno de desarrollo puesto en pie - Copia local actualizada del código del repositorio |
|
| Paso | Actividades | Descripción |
| 1 | Escoger módulo | - Escoger el módulo a implementar de acuerdo a lo definido en el plan de iteración |
| 2 | Revisar especificación externa de módulo | - Revisar que la información en el documento de arquitectura relativa a responsabilidad y comunicación del módulo así como su mapeo a la tecnología de implementación estén completos y sean comprendidos en su totalidad |
| 3 | Realizar el diseño detallado del módulo | - Diseñar la estructura interna del módulo (atributos, lógica de métodos (por ejemplo usando pseudocódigo), invocaciones a otros modulos (por ejemplo con diagramas de secuencia) |
| 4 | Codificar el módulo | - Escribir el código del módulo siguiendo las reglas definidas en la sección 4.2 del documento de arquitectura - Documentar el código siguiendo algún estándar (por ejemplo Javadoc) |
| 5 | Probar el módulo | - Definir uno o más casos de prueba (ver templete en el portal) buscando verificar que el módulo satisface la especificación externa y los requerimientos - Crear un código de prueba que ejecute los casos de prueba |
| 6 | Incorporar módulo a estructura del proyecto | - De acuerdo a la información definida en la sección 4.3 del documento de arquitectura |
| 7 | Subir módulo al repositorio | - Realizar un “commit” del código (módulo y pruebas) al repositorio |
| Criterios de salida | - Se tiene el código documentado de un módulo y un código de prueba del módulo en el repositorio. - El módulo ha pasado las pruebas exitosamente |
|