Está en la página 1de 26

Mtodos de desarrollo gil

Anlisis de sistemas II Jerry Mauricio Vargas Carballo Juan Manuel Otarola 2012

Que es la gilidad?
Son estrategias de desarrollo de software que promueven prcticas que son adaptativas en vez de predictivas, centradas en la gente o en los equipos, iterativas orientadas hacia prestaciones y hacia la entrega, de comunicacin intensiva, y que requieren que el negocio se involucre en forma directa. Combina adems una filosofa y un conjunto de directrices de desarrollo. La filosofa busca la satisfaccin del cliente y la entrega temprana de software incremental; equipos de proyecto pequeos y con alta motivacin; mtodos informales; un mnimo de productos de trabajo de la ingeniera del software; y un simplicidad general del desarrollo.

Que es un proceso gil?


Cualquier proceso gil refiere tres suposiciones claves : Resulta difcil predecir cuales requisitos del software persistirn y cuales cambiaran. De igual forma , es difcil presagiar como cambiaran las prioridades del cliente mientras se ejecuta el proyectos.

Para muchos tipos de Software , el diseo y la construccin estn intercaladas. Esto es ambas actividades se deben realizar de forma conjunta, de modo que los modelos de diseo sean probados conforme se crean. Resulta difcil predecir cuando el diseo se necesita antes de que la construccin se utilice para probar el diseo.

El anlisis, diseo y la construccin no son predecibles (desde el punto de vista de la planeacin ), lo que seria deseable

12 PRINCIPIOS DEL MANIFIESTO DE DESARROLLO GIL


1. Nuestra principal prioridad es satisfacer al cliente a travs de la entrega temprana y continua de software de valor. 2. Son bienvenidos los requisitos cambiantes, incluso si llegan tarde al desarrollo. Los procesos giles se doblegan al cambio como ventaja competitiva para el cliente. 3. Entregar con frecuencia software que funcione, en periodos de un par de semanas hasta un par de meses, con preferencia en los periodos breves. 4. Las personas del negocio y los desarrolladores deben trabajar juntos de forma cotidiana a travs del proyecto. 5. Construccin de proyectos en torno a individuos motivados, dndoles la oportunidad y el respaldo que necesitan y procurndoles confianza para que realicen la tarea. 6. La forma ms eficiente y efectiva de comunicar informacin de ida y vuelta dentro de un equipo de desarrollo es mediante la conversacin cara a cara. 7. El software que funciona es la principal medida del progreso.

8. Los procesos giles promueven el desarrollo sostenido. Los patrocinadores, desarrolladores y usuarios deben mantener un ritmo constante de forma indefinida. 9. La atencin continua a la excelencia tcnica enaltece la agilidad. 10. La simplicidad como arte de maximizar la cantidad de trabajo que no se hace, es esencial. 11. Las mejores arquitecturas, requisitos y diseos emergen de equipos que se auto-organizan.
12. En intervalos regulares, el equipo reflexiona sobre la forma de ser ms efectivo y ajusta su conducta en consecuencia.

Polticas del desarrollo gil

Modelos de procesos giles


Programacin extrema (XP)

Naci en 1996.

Ken Beck fundador de la metodologa de XP.

Proyecto C3 de DaimlerChrysler.
Identific que era lo simple y lo difcil al momento de programar

Qu es XP?

Metodologa para un gil desarrollo de software.

Programacin basada en los deseos del cliente.

El equipo lo conforman los jefes de proyecto, desarrolladores y el cliente.

Se rige por valores y principios

Factores humanos EN EL XP
Competencia Capacidad de resolucin a problemas confusos

Enfoque comn

Confianza y respeto mutuo

Colaboracin

Organizacin propia
Habilidad para la toma de desiciones

Valores de XP
Comunicacin: Crear software requiere de sistemas comunicados. Simplicidad: Empezar con lo necesario y requerido y trabajar desde ah. Retroalimentacin: Del sistema, del cliente, y del equipo.

Valenta: Programa para hoy y no para maana. Respeto: El equipo debe trabajar como uno, sin hacer decisiones repentinas.

Actividades del XP

Codificacin: La parte mas importante de XP.

Pruebas: Nunca se puede estar seguro de algo hasta haberlo probado.

Escuchar: Escuchar los requisitos del cliente acerca del sistema a crear.

Diseo: Crear una estructura del diseo para evitar problemas.

Modelos de procesos giles

Desarrollo adaptativo DAS

El desarrollo adaptativo de software (DAS) lo propuso Jim Highsmith 1998 como una tcnica para construir software y sistemas complejos. El DAS se enfoca en la colaboracin humana y la organizacin propia del equipo. Highsmith define un ciclo de vida del DAS en la cual esta definido en tres etapas .

Los grupos DAS aprenden de 3 formas

Grupos enfocados : Usuarios finales o clientes retroalimentan sobre los incrementos que se entregan.

Revisiones tcnicas formales : El equipo DAS revisa los componentes del Software desarrollado mientras mejoran su calidad y su aprendizaje.

Post Mortem : Equipo DAS realiza un anlisis introspectivo de su desempeo durante el proceso una vez culminado.

Ciclo de vida del software Desarrollo adaptativo DAS

Modelos de procesos giles


Mtodo de desarrollo de sistemas dinmicos (MDSD) Considerada como la primera metodologa gil, es de naturaleza iterativa e incremental. Est orientada a combatir los principios de la crisis del software, permitiendo la construccin de sistemas introduciendo restricciones de tiempo, presentando prototipos incrementales dentro de un ambiente de proyecto controlado. Mtodo que provee un framework para el desarrollo gil cumpliendo con las caractersticas de la metodologa gil: 1. Implicacin constante del usuario.

2. Desarrollo iterativo e incremental.

3. Desarrollo de sistema ajustado a tiempos y presupuesto.

4. En MDSD los proyectos son limitados en tiempo y recursos, por lo que se fomenta la utilizacin del Desarrollo Rpido de Aplicaciones, y en algunos casos integra contenidos de otros mtodos giles como Programacin extrema (XP).

Mtodo de desarrollo de sistemas dinmicos (MDSD) Ventajas :


DSDM solo requiere que cada paso del desarrollo se complete lo suficiente como para que empiece el siguiente paso. De este modo una nueva iteracin del proyecto puede comenzar sin tener que esperar a que la previa se complete enteramente. Y con cada nueva iteracin el sistema se mejora incrementalmente. Recurdese que las necesidades del negocio cambian constantemente y a cualquier ritmo con el tiempo.

La entrega del proyecto debera ser a tiempo, respetando presupuestos y con buena calidad.

Ambas tcnicas de Desarrollo y Gestin de los proyectos estn incluidas en DSDM.

La Evaluacin de riesgos debiera centrarse en entregar funcin de negocio, no en el proceso de construccin.

Mtodo de desarrollo de sistemas dinamicos (MDSD)


Fases
Fase del pre-proyecto: fase del ciclo de vida del proyecto, y fase del post-proyecto. La fase del ciclo de vida del proyecto se subdivide en 5 etapas: estudio de viabilidad,

estudio de la empresa,

iteracin del modelo funcional,

diseo e iteracin de la estructura

implementacin.

PRINCIPIOS PARA LA CREACIN DE MDSD


Involucrar al usuario El equipo del proyecto debe tener poder de decisin Entrega frecuente de productos Entregar un sistema que satisface las actuales necesidades del negocio. El desarrollo jerrquico e incremental. Cambios durante el desarrollo son reversibles. Alcance de alto nivel de los requerimientos son la base. Las pruebas son realizadas durante el ciclo de vida del proyecto. Comunicacin y cooperacion entre todas las partes interesadas en el proyecto. Ningun sistema es construido al primer intento.

Mtodo MEl
Mel(trmino derivado de una jugada de rugby) es un modelo gil de proceso que desarrollaron Jeff Sutherland y su equipo a principios de la dcada de 1990. En aos recientes, Schwaber y Beedle [SCH01] han presentado el desarrollo posterior de los mtodos de mel.

Los principios de la mel [ADM96] son consistentes con el manifiesto gil.

1. Los equipos de trabajo pequeos estn organizados para "maximizar la comunicacin, minimizar los gastos generales y maximizar el hecho de compartir conocimiento tcito e informal". 2. El proceso debe adaptarse a los cambios tcnicos y de negocios "para asegurar que se produzca el mejor producto posible".

3. El proceso produce incrementos frecuentes de software "los cuales se pueden inspeccionar, ajustar, probar, documentar y construir". 4. El trabajo de desarrollo y la gente que lo realiza estn divididos en "particiones o paquetes de bajo acoplamiento". 5. Conforme se construye el producto se realizan pruebas y documentacin constantes

6. Los procesos de mel proporcionan la "capacidad de declarar un producto como 'realizado' siempre que esto se requiera (porque la competencia acaba de hacer un lanzamiento, porque la compaa necesita el dinero, porque el usuario/cliente necesita las funciones, porque ya se est en el momento en que se prometi..."

Diagrama del flujo de proceso de laMEl

Patrones de proceso de softwareMEL

Retrasos: Lista de prioridades de proyecto que proporcionan un valor comercial para el cliente.

Demostracin: Se entrega el incremento de software al cliente de forma que ste demuestre y evale la funcionalidad implementada.

Sprint : Unidades de trabajo que se requieren satisfacer un requisito definido en los retrasos de un periodo predefinido (Usualmente 30 das)

Reuniones de mel: Son reuniones cortas (por lo general de 15 minutos) y las realiza a diario el equipo de mel. Existen tres preguntas que se hacen en esta Qu hiciste desde la ltima reunin?Cules obstculos encontraste?Qu esperas lograr para la siguiente reunin del equipo?

Mtodo gil CRISTAL


La familia cristal de los mtodos giles fue creada por Alistair Cockburn y Jim Highsmithcon el fin de lograr un enfoque de desarrollo de software que coloca un premio en la manejabilidad. Para alcanzar la manejabilidad, ambos definieron un conjunto de metodologas, cada una de ellas con elementos esenciales comunes a todas; funciones, patrones de proceso, productos de trabajo y practicas nicas en cada una de ellas. El objetivo es permitir que los equipos giles seleccionen el miembro de la familia cristal ms apropiado para su proyecto y ambiente.

METODO GIL : Desarrollo conducido por caractersticas


Es un modelo de proceso prctico para la ingeniera del software orientada a objetos. En el contexto del desarrollo conducido por caractersticas una caracterstica es una funcin valuada por el cliente que puede implementarse en dos semanas o menos.

Beneficios de la definicin de caractersticas

Los usuarios las describen con mayor facilidad, entienden como se relacionan con otras y pueden revisarlas de una mejor manera. Se pueden organizar en un agrupamiento jerrquico relacionado. El equipo desarrolla caractersticas operativas cada dos semanas. Como las caractersticas son pequeas, sus diseos y representaciones de cdigo son ms fciles de inspeccionar. La jerarqua de caractersticas gua la planeacin del proyecto, la elaboracin del programa y su rastreo

Actividades de colaboracin modelo DCC

MODELO GIL (MA)


Es una tecnologa avanzada en la prctica para el modelado efectivo de los sistemas basados en software. Es una coleccin de valores, principios y prcticas para el modelado de software que puede aplicarse en un proyecto de desarrollo de software de manera efectiva y ligera.

Principios responsables de que el modelado gil sea nico :

Modelar con un propsito Usar mltiples modelos Viajar ligero El contenido es ms importante que la presentacin Conocer los modelos y las herramientas conque se crea Adaptar en forma local

Bibliografa

Pressman, Roger S. (2006). Ingeniera del software. Un enfoque prctico. Sexta Edicin. Editorial Mc Graw Hill. Mxico. Alvarado Zamora, Jorge. (2010). Gua de Estudio Anlisis de Sistemas II. Versin digital, disponible en la Moodle. Corrales Snchez, Gian Carlo. (2012). Orientacin para el curso Anlisis de Sistemas II. EUNED. Obtenido el 26 de marzo del 2012 ,desdehttp://es.scribd.com/doc/8235133/Herramientas-tecnologicas Obtenido el 27 de marzo del 2012 ,desde http://www.programacion.com/articulo/la_nueva_metodologia_219/5 Obtenido el 27 de marzo del 2012 ,desde http://www.slideshare.net/edgarespinoza/programacion-extrema.

También podría gustarte