You are on page 1of 8

MODELOS AGILES

NOMBRE AUTOR AO

MODELO PROGRAMACION EXTREMA (XP) Kent Beck 1996 Es una metodologa que permita lograr un cdigo sin errores, con alta funcionabilidad, manteniendo a cliente al tanto del proyecto y en plazos de tiempo cmodos, siempre han sido objetivos ideales que en todo proyecto se pretende alcanzar. La Metodologa de Programacin Extrema (XP) propone la manera de alcanzar esos objetivos

CONCEPTO

ESQUEMA

El juego de la planificacin. Hay una comunicacin frecuente el cliente y los programadores. El equipo tcnico realiza una estimacin del esfuerzo requerido para la implementacin de las historias de usuario y los clientes deciden sobre el mbito y tiempo de las entregas y de cada iteracin. Entregas pequeas . Producir rpidamente versiones del sistema que sean operativas, aunque no cuenten con toda la funcionalidad del sistema. Esta versin ya constituye un resultado de valor para el negocio. Una entrega no debera tardar ms 3 meses. Metfora. El sistema es definido mediante una metfora o un conjunto de metforas compartidas por el cliente y el equipo de desarrollo. Una metfora es una historia compartida que describe cmo debera funcionar el sistema (conjunto de nombres que acten como vocabulario para hablar sobre el dominio del problema , ayudando a la nomenclatura de clases y mtodos del sistema). Diseo simple . Se debe disear la solucin ms simple que pueda funcionar y ser implementada en un momento determinado del proyecto. Pruebas . La produccin de cdigo est dirigida por las pruebas unitarias. stas son son establecidas por el cliente antes de escribirse el cdigo y son ejecutadas constantemente ante cada modificacin del sistema. Refactorizacin (Refactoring). Es una actividad constante de reestructuracin del cdigo con el objetivo de remover duplicacin de cdigo, mejorar su legibilidad, simplificarlo y hacerlo ms flexible para facilitar los posteriores cambios. Se mejora la estructura interna del cdigo sin alterar su comportamiento externo . Programacin en parejas . Toda la produccin de cdigo debe realizarse con trabajo en parejas de programadores. Esto conlleva ventajas implcitas (menor tasa de errores, mejor diseo, mayor satisfaccin de los programadores, ). Propiedad colectiva del cdigo. Cualquier programador puede cambiar cualquier parte del cdigo en cualquier momento.

Integracin continua. Cada pieza de cdigo es integrada en el sistema una vez que est lista. As, el sistema puede llegar a ser integrado y construido varias veces en un mismo da . 40 horas por semana. Se debe trabajar un mximo de 40 horas por semana. No se trabajan horas extras en dos semanas seguidas. Si esto ocurre, probablemente est ocurriendo un problema que debe corregirse. El trabajo extra desmotiva al equipo. Cliente in-situ. El cliente tiene que estar presente y disponible todo el tiempo para el equipo. ste es uno de los principales factores de xito del proyecto XP. El cliente conduce constantemente el trabajo hacia lo que aportar mayor valor de negocio y los programadores pueden resolver de manera inmediata cualquier duda asociada. La comunicacin oral es ms efectiva que la escrita. Estndares de programacin. XP enfatiza que la comunicacin de los programadores es a travs del cdigo, con lo cual es indispensable que se sigan ciertos estndares de programacin para mantener el cdigo legible.

VENTAJAS

DESVENTAJAS

Programacin organizada. Menor taza de errores. Satisfaccin del programador. Solucin de errores de programas Versiones nuevas Implementa una forma de trabajo donde se adapte fcilmente a las circunstancias Es recomendable emplearlo solo en proyectos a corto plazo Altas comisiones en caso de fallar Imposible prever todo antes de programar Demasiado costoso e innecesario

APLICACIONES

NOMBRE AUTOR AO CONCEPTO

MODELO CRYSTAL Alistair Cockburn.

Se trata de un conjunto de metodologas para el desarrollo de software caracterizadas por estar centradas en las personas que componen el equipo y la reduccin al mximo del nmero de artefactos producidos. El desarrollo de software se considera un juego cooperativo de invencin y comunicacin, limitado por los recursos a utilizar. El equipo de desarrollo es un factor clave, por lo que se deben invertir esfuerzos en mejorar sus habilidades y destrezas, as como tener polticas de trabajo en equipo definidas. Estas polticas dependern del tamao del equipo, establecindose una clasificacin por colores, por ejemplo Crystal Clear (3 a 8 miembros) y Crystal Orange (25 a 50 miembros).

ESQUEMA VENTAJAS

1. Mayor flexibilidad. 2. Menor codificacin manual. 3. Mayor involucramiento de los usuarios. 4. Posiblemente menos fallas.

DESVENTAJAS

1. Progreso ms difcil de medir. 2. Menos eficiente. 3. Menor precisin cientfica.

APLICACIONES

NOMBRE AUTOR AO CONCEPTO

MODELO SCRUN Ken Schwaber, Jeff Sutherland y Mike Beedle.

Define un marco para la gestin de proyectos, que se ha utilizado con xito durante los ltimos 10 aos. Est especialmente indicada para proyectos con un rpido cambio de requisitos. Susprincipales caractersticas se pueden resumir en dos. El desarrollo de software se realiza mediante iteraciones, denominadas sprints, con una duracin de 30 das. El resultado de cada sprint es un incremento ejecutable que se muestra al cliente. La segunda caracterstica importante son las reuniones a lo largo proyecto, entre ellas destaca la reunin diaria de 15 minutos del equipo de desarrollo para coordinacin e integracin.

ESQUEMA PLANIFICACIN DE LA ITERACIN El primer da de la iteracin se realiza la reunin de planificacin de la iteracin. Tiene dos partes: 1. Seleccin de requisitos (4 horas mximo). El cliente presenta al equipo la lista de requisitos priorizada del producto o proyecto. El equipo pregunta al cliente las dudas que surgen y selecciona los requisitos ms prioritarios que se compromete a completar en la iteracin, de manera que puedan ser entregados si el cliente lo solicita. 2. Planificacin de la iteracin (4 horas mximo). El equipo elabora la lista de tareas de la iteracin necesarias para desarrollar los requisitos a que se ha comprometido. La estimacin de esfuerzo se hace de manera conjunta y los miembros del equipo se auto asignan las tareas.

EJECUCIN DE LA ITERACION Cada da el equipo realiza una reunin de sincronizacin (15 minutos mximos). Cada miembro del equipo inspecciona el trabajo que el resto est realizando (dependencias entre tareas, progreso hacia el objetivo de la iteracin, obstculos que pueden impedir este objetivo) para poder hacer las adaptaciones necesarias que permitan cumplir con el compromiso adquirido. En la reunin cada miembro del equipo responde a tres preguntas:

Qu he hecho desde la ltima reunin de sincronizacin? Qu voy a hacer a partir de este momento? Qu impedimentos tengo o voy a tener?

Durante la iteracin el Facilitador se encarga de que el equipo pueda cumplir con su compromiso y de que no se merme su productividad.

Elimina los obstculos que el equipo no puede resolver por s mismo. Protege al equipo de interrupciones externas que puedan afectar su compromiso o su productividad.

INSPECCIN Y ADAPTACIN El ltimo da de la iteracin se realiza la reunin de revisin de la iteracin. Tiene dos partes: 1. Demostracin (4 horas mximo). El equipo presenta al cliente los requisitos completados en la iteracin, en forma de incremento de producto preparado para ser entregado con el mnimo esfuerzo. En funcin de los resultados mostrados y de los cambios que haya habido en el contexto del proyecto, el cliente realiza las adaptaciones necesarias de manera objetiva, ya desde la primera iteracin, re planificando el proyecto. 2. Retrospectiva (4 horas mximo). El equipo analiza cmo ha sido su manera de trabajar y cules son los problemas que podran impedirle progresar adecuadamente, mejorando de manera continua su productividad. El Facilitador se encargar de ir eliminando los obstculos identificados.

VENTAJAS

Programacin organizada. Menor taza de errores.

Satisfaccin del programador.

DESVENTAJAS

Es recomendable emplearlo solo en proyectos a corto plazo. Altas comisiones en caso de fallar.

APLICACIONES }

NOMBRE AUTOR AO CONCEPTO

MODELO RAD James Martin 1980 Define un marco para la gestin de proyectos, que se ha utilizado con xito durante los ltimos 10 aos. Est especialmente indicada para proyectos con un rpido cambio de requisitos. Susprincipales caractersticas se pueden resumir en dos. El desarrollo de software se realiza mediante iteraciones, denominadas sprints, con una duracin de 30 das. El resultado de cada sprint es un incremento ejecutable que se muestra al cliente. La segunda caracterstica importante son las reuniones a lo largo proyecto, entre ellas destaca la reunin diaria de 15 minutos del equipo de desarrollo para coordinacin e integracin. Etapa de planificacin de los requisitos: Esta etapa requiere que usuarios con un vasto conocimiento de los procesos de la compaa determinen cuales sern las funciones del sistema. Debe darse una discusin estructurada sobre los problemas de la compaa que necesitan solucin. Por lo general esta etapa se completa rpidamente cuando se crean equipos que envuelven usuarios y ejecutivos con un conocimiento amplio sobre las necesidades de la institucin la planificacin de los requisitos se da en modalidad de taller conocido como Junta de Planificacin de Requisitos (JRP por sus siglas en ingls).

ESQUEMA

Etapa de diseo: Esta consiste de un anlisis detallado de las actividades de la compaa en relacin al sistema propuesto. Los usuarios participan activamente en talleres bajo la tutela de profesionales de la informtica. En ellos descomponen funciones y definen entidades asociadas con el sistema. Una vez se completa el anlisis se crean los diagramas que definen las alteraciones entre los procesos y la data. Al

finalizar el anlisis se traza el diseo del sistema. Se desarrollan los procedimientos y los esquemas de pantallas. Los prototipos de procedimientos crticos se construyen y se repasan y el plan para implementar el sistema se prepara.

Construccin: En la etapa de construccin el equipo de desarrolladores trabajando de cerca con los usuarios finaliza el diseo y la construccin del sistema. La construccin de la aplicacin consiste de una serie de pasos donde los usuarios tienen la oportunidad de afirmar los requisitos y repasar los resultados. Las pruebas al sistema se llevan a cabo durante esta etapa. Tambin se crea la documentacin y las instrucciones necesarias para manejar la nueva aplicacin, rutinas y procedimientos para operar el sistema.

Implementacin: Esta etapa envuelve la instalacin del nuevo producto y el manejo del cambio del viejo al nuevo sistema. Se hacen pruebas comprensivas y se adiestran los usuarios. Los cambios organizacionales y la operacin del nuevo sistema se hacen en paralelo con el viejo sistema hasta que el nuevo se establezca completamente. VENTAJAS

5. Comprar puede ahorrar dinero en comparacin con construir. 6. Los entregables pueden ser facilmente trasladados a otra plataforma. 7. El desarrollo se realiza a un nivel de abstraccin mayor. 8. Visibilidad temprana. 9. Mayor flexibilidad. 10. Menor codificacin manual. 11. Mayor involucramiento de los usuarios. 12. Posiblemente menos fallas. 13. Posiblemente menor costo. 14. Ciclos de desarrollo ms pequeos.

DESVENTAJAS

4. Comprar puede ser ms caro que construir. 5. Costo de herramientas integradas y equipo necesario. 6. Progreso ms difcil de medir. 7. Menos eficiente.

8. Menor precisin cientfica. 9. Riesgo de revertirse a las prcticas sin control de antao. 10. Ms fallas (por sndrome de "codificar a lo bestia"). 11. Prototipos pueden no escalar, un problema maysculo. 12. Funciones reducidas (por "timeboxing"). 13. Dependencia en componentes de terceros: funcionalidad de ms o de menos, problemas legales.

APLICACIONES

You might also like