Metodologías agiles
-
Upload
loreeleeii -
Category
Business
-
view
128 -
download
1
Transcript of Metodologías agiles
UNITEC 1
DIRECCIÓN DE PROYECTOS
TEMA 4
AGILE PROJECT MANAGEMENT
UNITEC 2
Las principales causas de los fracasos de
los proyectos
Separación de objetivos y negocios
Separación de negocios y tecnología
Carencia de lenguaje y proceso comunes
Falla al comunicar y actuar como equipo
Procesos que son inflexibles a los cambios
“Cuando un proyecto falla rara vez
es por cuestiones técnicas”
Jim Johnson , The Standish Group
UNITEC 3
¿Qué es la Agilidad? Es una Cultura basada en
Principios
Valores
Prácticas
¿En que nos enfocamos?
La creación constante de valor en un entorno incierto
a partir del aprendizaje colaborativo entre las
personas
Clientes, desarrolladores, usuarios, expertos.
UNITEC 4
Desarrollo ágil: El proyecto se desglosa en iteraciones de tiempo
relativamente cortas. Desde las primeras iteraciones, el énfasis es
producir funcionalidad operativa real, a pesar de que la nueva versión de
software puede no siempre coincidir con la realización de un incremento.
En los primeros incrementos, es posible usar un enfoque de bala
trazadora, en la cual una pieza de funcionalidad es desarrollada en una
forma consistente con el enfoque y la arquitectura de desarrollo
pretendida. La funcionalidad se extiende desde la interfaz de usuario, a
través de las capas intermedias, hasta los datos almacenados y de
regreso. Una vez que se ha obtenido confianza en la pretendida
arquitectura, el foco en las iteraciones posteriores se cambia a entregar la
funcionalidad con el mayor rendimiento sobre la inversión.
UNITEC 5
Objetivos de la gestión ágil
Valor La gestión ágil es necesaria en mercados rápidos. Su objetivo es dar el mayor valor posible al producto; y en el mercado en el que trabaja, este valor es directamente proporcional a la respuesta que pueda ofrecer en: Innovación. Flexibilidad.
Reducción de tiempo de desarrollo Las estrategias son: Solapamiento de las fases de desarrollo y entrega temprana de los primeros incrementos funcionales de producto (partes que con mayor urgencia necesita el cliente) para lanzar la primera versión de producto.
Agilidad Capacidad para adaptar el curso del desarrollo a la evolución de los requisitos y a las circunstancias del entorno.
Fiabilidad La gestión ágil no tiene un carácter predictivo o de anticipación. No conoce de antemano el detalle del producto o servicio que va a desarrollar; por eso su objetivo no es la fiabilidad en el cumplimiento de los planes, sino en el valor del resultado y el tiempo de salida al mercado.
UNITEC 6
En 2001, Kent Beck y otros autores de enfoques similares proponen
los Principios Ágiles
1. La capacidad de respuesta al cambio, sobre el seguimiento de un plan.
2. Los Productos que funcionan frente a especificaciones y
documentaciones innecesarias.
3. La colaboración con el cliente frente a la negociación contractual.
4. A las personas y su interacción por encima de los procesos y las
herramientas.
Principios ágiles 2001
UNITEC 7
Software Craftmanship http://manifesto.softwarecraftmanship.org/
Manifiesto sale a la luz Marzo de 2009
Busca devolver la excelencia técnica al rango de pilar del
movimiento ágil.
Manifiesto ágil 2009
No sólo
Individuos e interacciones
Sino que
Una comunidad de
profesionales
Software funcional Software bien hecho
Colaboración con el cliente Sociedades productivas
Responder al cambio Constantemente agregar
valor
UNITEC 8
Metodologías Ágiles Metodologías Tradicionales
Basadas en heurísticas provenientes de prácticas de
producción de código
Basadas en normas provenientes de estándares seguidos
por el entorno de desarrollo
Especialmente preparados para cambios durante el proyecto
Cierta resistencia a los cambios
Impuestas internamente (por el equipo) Impuestas externamente
Proceso menos controlado, con pocos principios Proceso mucho más controlado, con numerosas
políticas/normas
No existe contrato tradicional o al menos es bastante flexible
Existe un contrato prefijado
El cliente es parte del equipo de desarrollo El cliente interactúa con el equipo de desarrollo mediante
reuniones
Grupos pequeños (<10 integrantes) y trabajando en el mismo
sitio
Grupos grandes y posiblemente distribuidos
Pocos artefactos Más artefactos
Pocos roles Más roles
Menos énfasis en la arquitectura del software La arquitectura del software es esencial y se expresa
mediante modelos
Diferencias entre metodologías
UNITEC 9
Características comunes
Los procesos de desarrollo ágil tienen un número de características
comunes:
El uso de pequeños subproyectos o iteraciones subordinadas de caja
de tiempo al final del cual se entrega la funcionalidad desarrollada.
Cada iteración forma la base para planificar la siguiente iteración.
Volver a planificar el proyecto al final de cada iteración ( a lo que se ha
llamado un “Sprint” en Scrum) incluyendo los requerimientos de
nuevas prioridades, identificando cualquier nuevo requerimiento y
determinando en cual versión de funcionalidad debe ser
implementada.
Confianza relativamente mayor en comparación con los métodos
tradicionales sobre conocimiento tácito
UNITEC 10
Características comunes (cont…)
Una fuerte influencia sobre los mecanismos para diseminar
efectivamente los conocimientos tácitos y promover el trabajo en
equipo. De ahí que, los equipos son mantenidos pequeño en tamaño,
incluyendo tanto representantes de negocios como representantes
técnicos los cuales están ubicados físicamente juntos., Reuniones de
equipos diariamente pero con estrictos límites de tiempo.
Al menos algunos de los métodos ágiles , estipulan una programación
en pareja (dos personas codifican la misma parte del sistema) como
un medio de compartir los conocimientos y como una verificación de
calidad.
Un cambio en la función/rol del gerente de proyecto, desde una
función primordialmente dedicada a la planificación del proyecto ,
asignando tareas y monitoreando el progreso hacia la de un
facilitador y defensor. La responsabilidad de planificar y controlar es
delegada a los miembros del equipo.
UNITEC 11
Estructura del desarrollo ágil
El esquema de desarrollo está formado por cinco fases:
1. Concepto
2. Especulación
3. Exploración
4. Revisión
5. Cierre
UNITEC 12
Principales modelos de gestión ágil AD - Agile Database Techniques
AM - Agile Modeling
ASD - Adaptive Software Development
AUP - Agile Unified Process
Crystal
FDD - Feature Driven Development
DSDM - Dynamic Systems Development Method
Lean Software Development
Scrum
TDD - Test-Driven Design
XBreed
XP - eXtreme Programming
Se encuentran agrupadas en la
organización Agile Alliance
(www.agilealliance.org) para
promocionar y difundir su
conocimiento.
UNITEC 13
Principales modelos de gestión ágil
MÉTODOS QUE SE CENTRAN EN LA GESTIÓN DE
PROYECTOS
ASD - Adaptive Software Development
AUP - Agile Unified Process
Crystal
DSDM - Dynamic Systems Development Method
Scrum
XBreed