EJEMPLIFICAR 3 PRACTICAS DE XP

EJEMPLIFICAR 3 PRACTICAS DE XP

TDD (Desarrollo Dirigido por Pruebas)

1. Se presenta la situación en la que un equipo de desarrollo propone elaborar una aplicación móvil, en este caso una calculadora que tenga las cuatro operaciones básicas (suma, resta, multiplicación y división), el cliente escribe sus historias de usuario.
2. Primeramente, se pide realizar la funcionalidad de la Suma, El equipo se pone de acuerdo con el cliente de que el criterio de aceptación seria que, si se introducen dos números enteros en la calculadora y si se pulsa en la operación de la suma, se muestra el resultado en pantalla.
3. Partiendo de ese criterio se comienza a definir el funcionamiento del algoritmo de suma, es decir el criterio de aceptación se convierte en una prueba concreta, ejemplo si se introduce un 3 y un 6 devuelve un 9. (Éste punto es el más importante del TDD ya que primero se escribe como debería funcionar el programa y una vez se lo tenga claro, recién se pasa a codificarlo).
4. Se piensa que para cubrir la prueba se necesitan Clases(Calculadora) y métodos o funciones (“Suma ()”). Sin embargo, en este caso, si se intenta pasar esta prueba les dará error ya que todavía no se codificó la funcionalidad.
5. Posteriormente el equipo pasa a codificar la clase y sus funciones, lo cual será sencillo porque ya saben exactamente cómo se va a comportar.
6. A continuación, se ejecuta la prueba y el equipo ya tendría el código funcionando y la prueba superada.
7. Una vez ya funcionando, el equipo pasa a refactorizar (modificar para mejorar su estructura interna) y a eliminar el código duplicado sin alterar la funcionalidad que ofrece el desarrollo externamente.
8. El equipo realiza pruebas a la funcionalidad luego de la refactorización, ya que es importante realizarlo por si se les olvidó algo.
9. Una vez concluidos los test el equipo regresa al punto 3, pero con pruebas más complicadas y también se debería repetir el proceso, como por ejemplo el siguiente criterio solicita que el algoritmo permita sumar números decimales, y así sucesivamente.

INTEGRACIÓN CONTINUA

Ésta práctica se basará en el ejemplo anterior acerca del desarrollo de una aplicación móvil que es una calculadora con las cuatro operaciones básicas.

Para ejemplificar esta práctica se tiene que, a medida que el equipo vaya completando las tareas o el desarrollo de las demás funcionalidades de la calculadora, el código resultante debe integrarse con la construcción actual, para ello el código debe pasar todas las pruebas unitarias.

En caso de haberse encontrado algún problema, lo deben resolver inmediatamente, una vez pasadas las pruebas el equipo sube el nuevo código al sistema de control de versiones.

Y para que el equipo tenga un mayor control sobre el proyecto, las integraciones de las funcionalidades como también la calidad del mismo es esencial el desarrollo de un proceso disciplinado y automatizado, es por eso que el equipo dispone de una maquina separada que corre un proceso 24/7 que se dedique a construir y probar el sistema de forma interrumpida, y cada vez que falla la integración, el equipo tomó la medida de avisar o enviar un correo al último desarrollador que ha subido un cambio al servidor.

PAIR PROGRAMMING

Para este ejemplo se tomará como caso de estudio un proyecto para el control de registros del área de parqueo de la universidad del valle, en el cual el equipo de desarrollo tuvo una reunión con el represéntate del área de parqueo, en la cual se definieron los requerimientos y necesidades del proyecto, posteriormente el equipo de desarrollo se dividió en parejas para poder desarrollar las tareas. De manera que cada pareja debe trabajar en el mismo código de la tarea que se le asigno, para lo cual deben sentarse juntos a escribir el código, uno debe escribirlo y el otro debe supervisarlo en tiempo real, a medida que vayan desarrollando deben debatir acerca de los problemas, encontrando soluciones e ideas creativas para el desarrollo, sin embargo, para esta práctica se deben establecer roles, el primero es piloto que se encarga de escribir el código y el copiloto se encarga de supervisar el código, estos roles serán intercambiados en las parejas en tiempos cortos para evitar una brecha de jerarquía, también se necesita que para las parejas de desarrollo el espacio de trabajo cuente con dos teclados, monitores y ratones, ya que cada miembro de la pareja debe contar con su propio dispositivo para que se muestre la misma información para la pareja de desarrollo.

Mediante esta práctica el equipo de desarrollo garantizara una alta calidad de software para el área de parqueo de la universidad del valle.

BIBLIOGRAFÍA

Comentarios

Entradas populares