Anzeige

Unidad 1.2 B Metodos Agiles 1

CIO um LOREAL
13. Apr 2011
Anzeige

Más contenido relacionado

Anzeige

Unidad 1.2 B Metodos Agiles 1

  1. Taller de Software Métodos Ágiles Sergio Sánchez Rios Ingeniero en Informática
  2. ¿Qué es la Agilidad? Se podría pensar entonces que la Agilidad es solo saber adaptarse a los cambios, PERO ESTO NO ES ASI YA QUE SE DEBE TENER EN CUENTA LO MENCIONADO EN EL MANIFIESTO AGIL. La alianza ágil definió 12 principios para quienes quieren alcanzar la agilidad: 1.- Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software valioso. 2.- BIENVENIDOS los requisitos cambiantes, incluso en fases tardías del desarrollo. 3.- Entregar con frecuencia software en funcionamiento, desde un par de semanas hasta un par de meses, con preferencia en las escalas de tiempo más cortas.
  3. ¿Qué es la Agilidad? 4.- La gente de negocio y los desarrolladores deben trabajar juntos a diario a lo largo del proyecto. 5.- Construir proyectos alrededor de individuos motivados. Darles el ambiente y el soporte que necesitan, y confiar en ellos para obtener el trabajo realizado. 6.- El método más eficiente y efectivo de transmitir información hacia y dentro de un equipo de desarrollo es la conversación cara a cara. 7.- El software en funcionamiento es la medida primaría de progreso. 8.- Los procesos ágiles promueven el desarrollo sustentable. Los patrocinadores, desarrolladores y usuarios deben ser capaces de mantener un paso constante de manera indefinida. 9.- La atención continua a la excelencia técnica y al buen diseño mejora la agilidad.
  4. ¿Qué es la Agilidad? 10.- La simplicidad – el arte de maximizar la cantidad de trabajo no realizado – es esencial. 11.- Las mejores arquitecturas, los mejores requisitos, y los mejores diseños emergen de equipos autoorganizados. 12.- A intervalos regulares el equipo refleja la forma en que se puede volver más efectivo; entonces su comportamiento se ajusta y adecua en concordancia.
  5. Proceso Ágil El gran punto según lo mencionado anteriormente tiene que ver con lo impredecible , y la pregunta que nace es, ¿Cómo se maneja esto en un proceso?. La respuesta es generar procesos ágiles adaptables. Pero la adaptabilidad sin progreso logra muy poco. Por lo que es importante que un proceso ágil realice una adaptación incremental. Estos incrementos deben entregarse en cortos periodos para que la adaptación mantenga un buen ritmo con el cambio.
  6. Proceso Ágil Dichos Interesantes de Analizar Jim Highsmith “ Los metodólogos tradicionales son un conjunto de tipos que se arrastran en el lodo y que prefieren producir documentación que no fluye, en vez de un sistema de trabajo que cubra las necesidades del negocio”. “ Los metodólogos ligeros son un conjunto de intrusos informáticos que van a estar hay para dar una maldita sorpresa cuando intenten elevar sus juguetes al nivel de software de la empresa”.
  7. Proceso Ágil Factores Humanos Los factores humanos son uno de los puntos importantes para llevar acabo algún proceso de desarrollo ágil. Cockburn y Highmith señalan: “ El desarrollo ágil se centra en los talentos y las habilidades de los individuos , puesto que el proceso se ajusta a personas y equipos específicos”. Lo importante ES QUE EL PROCESO SE AJUSTA A LAS NECESIDADES DE LAS PERSONAS Y DEL EQUIPO, Y NO AL REVES.
  8. Proceso Ágil Factores Humanos Rasgos que deben poseer las personas que participen de un desarrollo ágil y el equipo mismo: Competencia: abarca un talento innato, habilidades especificas relacionadas con el software y un conocimiento general del proceso que el equipo a decidido aplicar. Enfoque Común: Todos los miembros del equipo deben enfocarse en una meta: entregar al cliente un incremento de trabajo de software dentro del tiempo establecido. Colaboración: La ingeniería de software incluye evaluar, analizar y usar información que se comunica al equipo de software; crear información que ayudara al equipo de desarrollo y al cliente a entender el trabajo, etc. Sin que exista colaboración esto es imposible.
  9. Proceso Ágil Factores Humanos Rasgos que deben poseer las personas que participen de un desarrollo ágil y el equipo mismo: Habilidad para la toma de decisiones: todo equipo de software debe tener la habilidad de controlar su propio destino. Autonomía y Autoridad. Capacidad de resolución de problemas confusos: Los gestores deben reconocer que el equipo de desarrollo enfrentará ambigüedades y sufrirá golpes de manera continua gracias a los cambios. Un problema que este resolviendo hoy no será el mismo que estaré resolviendo mañana. Confianza y Respeto mutuo: el equipo “debe unirse con tanta fuerza, que el todo sea mayor que la suma de las partes”.
  10. Modelos Ágiles Programación Extrema (PE) Los primeros trabajos sobre las ideas y los métodos asociados a Programación Extrema se realizaron en la década de los 80, el trabajo fundamental fue publicado en el año 1999 por Kent Beck. La PE utiliza como enfoque preferido la orientación a objetos.
  11. Modelos Ágiles Programación Extrema (PE) -Historias del Usuario Valores Criterios de las pruebas de iteración -plan de iteración -Diseño simple cartas CRC -Soluciones prototipos -Programación en Parejas -Integración Continua -Refactoring -Prueba de Unidad -Pruebas de Aceptación Lanzamiento Planeación Diseño Prueba Codificación
  12. Modelos Ágiles Programación Extrema (PE) Otra forma de verlo
  13. Modelos Ágiles Programación Extrema (PE) Diseño Ejemplo CRC:
  14. Modelos Ágiles Scrum El nombre SCRUM (MELE en español) se deriva de una jugada de rugby. Este es un modelo ágil de proceso que desarrollaron Jeff Sutherland y su equipo a principios de la década de los 90. Este proceso de desarrollo fue presentado a la OMG en el año 1995, y se han realizado algunos cambios, específicamente en el año 2001 por Schwaber y Beedle. La jugada de rugby a la cuál hace mención el nombre SCRUM se refiere al proceso de volver a poner la pelota en juego, esto lo realiza un conjunto de jugadores.
  15. Modelos Ágiles Scrum Aplicado al desarrollo de software, la definición se refiere a la técnica de organización y gestión usada para llevar acabo exitosamente proyectos de desarrollo de software en un ambiente caótico.
  16. Modelos Ágiles Scrum – Proceso
  17. Modelos Ágiles Scrum – Proceso Features (Características): son una lista que considera la prioridad de los requisitos o características de proyecto que proporcionan un valor comercial para el cliente. En cualquier minuto se pueden agregar requerimientos a las características. Sprint: consiste en unidades de trabajo que se requieren para satisfacer un requisito definido en las características en un periodo definido (lapso usual 30 días). Durante el sprint no se pueden introducir cambios a las características. Reuniones de Scrum: son reuniones cortas (por lo general de 15 minutos) y las realiza a diario el equipo de scrum.
  18. Bibliografía “ Apuntes Ingeniería de Software MTI”, Marcello Viscontti & Hernán Astudillo. “ Ingeniería de Software: Un enfoque práctico”, Roger S. Pressman, Sexta Edición, 2005. http://www.extremeprogramming.org/
Anzeige