Segundo Hito: Integración continua

Descripción

El principal objetivo de este hito del proyecto es añadir integración continua al mismo. Los tres subobjetivos son aprender cómo describir la versión del lenguaje de programación que se usa y sus dependencias, elección de un sistema y sitio para integración continua y configuración de la misma.

Prerrequisitos

Haber alcanzado el 80% de los objetivos del tema introductorio tras haber realizado los ejercicios propuestos.

Descripción

En sistemas de desarrollo ágil el desarrollador tiene que asegurar que el código pasa todos los tests antes de ser desplegado o simplemente incorporado a la rama master. Para ello se escriben una serie de tests que se ejecutan automáticamente al añadir o modificar código. Estos tests tienen el fin obvio de asegurar la calidad del mismo, pero también en un entorno de desarrollo colaborativo permiten integrar código fácilmente asegurándose de que no se rompa nada. Si no está testeado, está roto, es el lema del desarrollador.

Preparar un proyecto para integración continua implica varias cosas

Esta fase de integración continua es esencial para el posterior despliegue en un PaaS o IaaS sobre el que se probarán técnicas de despliegue continuo.

#Entrega de la práctica

Se tendrá que haber actualizado el repositorio que se usara en los hitos anteriores y añadir al fichero de este hito el nombre del proyecto, el autor y un enlace al mismo y hacer un pull request.

En la documentación de este hito, que se integrará como el resto en el README.md de la documentación del proyecto, se explicará por qué se ha elegido el sistema de test y de integración continua. Se recuerda que la rama master debe incluir solamente documentación sobre el proyecto. Si se quiere incluir material adicional externo al proyecto, pero que puede ser útil para complementar la entrega de la práctica, se aconseja que se haga una rama con el nombre del hito, por ejemplo hito2 y se indique en la entrega de la práctica con un enlace a la misma. Como a estas alturas quizás se convierta en algo inconveniente tanta rama, quizás sea lo mejor simplemente fusionar la documentación de todos los hitos en una sola rama documentation o directamente en gh-pages.

#Valoración

Se recuerda que es prerrequisito haber llevado a cabo el 80% de los objetivos del tema correspondiente de la asignatura y del resto de las sesiones hasta el momento de la entrega. En caso contrario no se evaluará este hito del proyecto. Como es habitual, se recuerda al alumno que no se trata simplemente de marcar las cosas que se tienen que hacer para este hito, sino que al proyecto en esta etapa refleje que se ha entendido correctamente el concepto de un proyecto integrado de forma continua.

Si se cumplen los requisitos, la puntuación será:

Si la integración continua no funciona la práctica estará suspensa en cualquier caso, aunque se hayan configurado correctamente las herramientas de construcción.