Introduccion a Ingenieria de software metodologias agiles

download Introduccion a Ingenieria de software metodologias agiles

of 8

description

introduccion a metodologias agiles de desarrollo de software

Transcript of Introduccion a Ingenieria de software metodologias agiles

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    1

    El principio (sin Ingeniera)

    1era. fila (de izq a der): Bill Gates, Andrea Lewis, MarlaWood, y Paul Allen. En el medio: Bob O'Rear, Bob Greenberg, Marc McDonald, and Gordon Letwin. Atrs: Steve Wood, Bob Wallace, and Jim Lane.

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    2

    Desarrollo gil de Software (Agile)

    Un compromiso til entre nada de proceso y demasiado proceso (Fowler, 2001)

    Manifiesto gil

    Individuos e interacciones por sobre procesos y herramientas

    Software funcionando por sobre documentacin detallada

    Colaboracin por sobre negociacin con el cliente

    Responder a cambios por sobre seguir un plan

    Declaracin de principios giles, los cuatro valores :

    2001, Kent Beck, Mike Beedle, Arievan Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas, 850+ signers

    http://www.agilemanifesto.org/iso/es/http://www.agilemanifesto.org/iso/es/http://www.agilemanifesto.org/iso/es/http://www.agilemanifesto.org/iso/es/http://www.agilealliance.org/

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    3

    Los 12 principios del Manifesto(I)

    1 - La prioridad es satisfacer al cliente a travs de releases tempranos y frecuentes

    2 - Recibir cambios de requerimientos, aun en etapas finales

    3 - Releases frecuentes (2 semanas a un mes)

    4 - Tcnicos y no tcnicos trabajando juntos TODO el proyecto

    5 - Hacer proyectos con individuos motivados

    6 - El medio de comunicacin por excelencia es cara a cara

    Los 12 principios del Manifesto(II)

    7 - La mejor mtrica de progreso es la cantidad de software funcionando

    8 - El ritmo de desarrollo es sostenible en el tiempo

    9 - Atencin continua a la excelencia tcnica

    10 - Simplicidad - Maximizacin del trabajo no hecho

    11 - Las mejores arquitecturas, diseos y requerimientos emergen de equipos auto-organizados

    12 - A intervalos regulares, el equipo evala su desempeo y ajusta la manera de trabajar

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    4

    Poniendo en prctica los 12 principios

    Elijan 3 principios y den ejemplos de como alcanzarlos. Que deberan implementar para poder alcanzarlos (tiempo 5 minutos)

    Un miembro del equipo comenta los resultados

    Seguimos estos principios:1. Nuestra mayor prioridad es satisfacer al cliente

    mediante la entrega temprana y continua de softwarecon valor.

    2. Aceptamos que los requisitos cambien, incluso en etapas tardas del desarrollo. Los procesos giles aprovechan el cambio para proporcionar ventaja competitiva al cliente.

    3. Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo ms corto posible.

    4. Los responsables de negocio y los desarrolladorestrabajamos juntos de forma cotidiana durante todoel proyecto.

    5. Los proyectos se desarrollan en torno a individuosmotivados. Hay que darles el entorno y el apoyo quenecesitan, y confiarles la ejecucin del trabajo.

    6. El mtodo ms eficiente y efectivo de comunicarinformacin al equipo de desarrollo y entre susmiembros es la conversacin cara a cara.

    7. El software funcionando es la medida principal deprogreso.

    8. Los procesos giles promueven el desarrollosostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.

    9. La atencin continua a la excelencia tcnica y albuen diseo mejora la Agilidad.

    10. La simplicidad, o el arte de maximizar la cantidad detrabajo no realizado, es esencial.

    11. Las mejores arquitecturas, requisitos y diseosemergen de equipos auto-organizados.

    12. A intervalos regulares el equipo reflexiona sobrecmo ser ms efectivo para a continuacin ajustar yperfeccionar su comportamiento en consecuencia.

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    5

    Definido vs. Emprico

    9

    Pero que significa gil?

    Balance entre ningn proceso y demasiado proceso. La diferencia inmediata es

    la exigencia de una menor cantidad de documentacin, sin embargo no es eso

    lo ms importante:

    Los mtodos giles son adaptables en lugar de predictivos.

    Los mtodos giles son orientados a la gente en lugar de orientados al

    proceso.

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    6

    Por qu ir a Agile?

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    7

    Y si vamos, donde vamos?

    http://stateofagile.versionone.com/

    Cuando Agile es aplicable?

    Agile da mejores resultados cuando los problemas a ser resueltos caen dentro del espacio Complex.

    El desarrollo de nuevos productos y Knowledge Worktienden a estar en el espacio Complex.

    Investigacin esta dentro de Anarchy

    Mantenimiento cae en Simple (siempre????)

  • UTN FRC - Ctedra de Ing. de Software julio de 2015

    8

    Ser gil no es ser indisciplinado.

    Entonces hacemos todo por pedacitos y somos agiles!!!?? NO!