“Desarrollo Ágil”
“Desarrollo Ágil”
“Desarrollo Ágil”
“Desarrollo Ágil”
Simulación de Sistemas Simulación de Sistemas Simulación de Sistemas Simulación de Sistemas
No es necesario elegir entre agilidad e
No es necesario elegir entre agilidad e ingeniería del software.ingeniería del software. En lugar de ello, se puede definir un enfoque de ingeniería de En lugar de ello, se puede definir un enfoque de ingeniería de
software que sea ágil. software que sea ágil.
Contenido
Contenido
1. Desarrollo Ágil.
1.1 ¿Qué es la Agilidad?
1.2 ¿Qué es un proceso Ágil?
1.2.1 Las Políticas de Desarrollo Ágil. 1.2.2 Factores Humanos.
1.3 Modelos giles de Proceso. 1.3.1 Programación Extrema.
1.3.2 Desarrollo Adaptativo de Software.
1.3.3 Método de Desarrollo de Sistemas Dinámicos. 1.3.4 Melé.
1.3.5 Cristal.
1.3.6 Desarrollo Conducido por Características. 1.3.7 Modelado Ágil.
1. Desarrollo Ágil
1. Desarrollo Ágil
¿Qué es? ¿Quién lo hace? ¿Cómo puedo estar seguro de que lo he hecho correctamente? ¿Por qué es importante? ¿Cuáles son los pasos? ¿Cuál es el producto obtenido?
1.1 ¿Qué es la Agilidad?
1.1 ¿Qué es la Agilidad?
Es más que una respuesta efectiva al cambio.
Cliente Dueño de Producto
Buen trabajo
Principios
1. Satisfacer al cliente mediante la entrega temprana y continua de software valioso.
2. La estructura de los procesos ágiles cambia para la ventaja competitiva del cliente.
3. La gente de negocios y los desarrolladores deben trabajar juntos a diario a lo largo del proyecto.
1.2 ¿Qué es un proceso Ágil?
1.2 ¿Qué es un proceso Ágil?
1. Resulta difícil predecir cuáles requisitos del software persistirán y cuáles cambiarán.
Cualquier proceso ágil de software se caracteriza de una manera que refiere tres suposiciones clave acerca de la mayoría de los proyectos de software.
2. Para muchos tipos de software, el diseño y la construcción están intercalados. Esto es, ambas actividades se deben realizar de manera conjunta, de modo que los modelos de diseño sean probados conforme se crean.
3. El análisis, el diseño y la construcción no son predecibles, lo que sería deseable.
1.2.1 Las Políticas de Desarrollo
1.2.1 Las Políticas de Desarrollo
Ágil
Ágil
1.2.2 Factores Humanos
1.2.2 Factores Humanos
Competencia Enfoque común Habilidad para la o a orac n Capacidad de resolución de problemas confusos toma de decisionesConfianza y respeto mutuo
1.3 Modelos Ágiles de Proceso
1.3 Modelos Ágiles de Proceso
La historia de la ingeniería de software está llena de decenas de descriptores y metodologías, métodos de modelado y notaciones, herramientas y tecnologías obsoletas.
Manifiesto Ágil
El desarrollo de software ágil hace referencia a un grupo de metodologías de desarrollo de software que se basan en principios y valores similares recogidos en el Manifiesto Ágil.
1.3.1 Programación Extrema
1.3.1 Programación Extrema
Utilizado en proyectos de corto tiempo y grupo reducido
1.3.2 Desarrollo Adaptativo de
1.3.2 Desarrollo Adaptativo de
Software
Software
Es una técnica para construir software y sistemas complejos, incluye 3 fases: especulación, colaboración y aprendizaje, cada una de estas fases se unen entre si para llevar a cabo diversas funciones, pero en si estas funciones son para sacar adelante un proyecto de software de manera rápida, y trabajando en equipo, para que en un futuro , obtengamos un software eficiente.
Permite la construcción de Sistemas con restricción de tiempo, realizando prototipos incrementales en un amiente de proyecto controlado.
1.3.3 Métodos de Desarrollo de
1.3.3 Métodos de Desarrollo de
Sistemas Dinámicos
Sistemas Dinámicos
DSDM consiste en 3 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,
•Iteración del modelo funcional,
•Diseño e iteración de la estructura, e •Implementación.
1.3.4 Melé
1.3.4 Melé
Proceso ágil que se puede usar para gestionar y controlar desarrollos complejos de software y productos usando prácticas iterativas e incrementales.
Una parte muy importante de Scrum son las reuniones que se realizan durante cada una de las iteraciones. Hay distintos tipos:
• crum ar o: ca a a uran e a erac n, ene ugar una reun n de estado del proyecto. A esta reunión se le domina Scrum.
• Reunión de planificación de iteración (sprint): se lleva a cabo al principio del ciclo de
la iteración.
• Reunión de revisión de iteración: al final del ciclo de la iteración. • Iteración retrospectiva: al final del ciclo de la iteración
Crystal Clear está pensado para aplicarse a equipos pequeños de 6 a 8 desarrolladores ubicados en el mismo sitio, trabajando en sistemas que no son críticos.
La variante Crystal Clear se enfoca en las capacidades del equipo de desarrollo, no de procesos o artefactos.
1.3.5 Cristal
1.3.5 Cristal
• Seguridad en el desenlace del proyecto.
• Eficiencia en el desarrollo.
• Habitabilidad de las reglas (el equipo se siente cómodo con ellas). son:
1.3.6 Desarrollo Conducido por
1.3.6 Desarrollo Conducido por
Características
Características
Es un modelo de proceso práctico para la ingeniería del software orientada a objetivos. Es aplicado en proyectos de software de tamaño moderado y grande. Para la metodología una característica es una función validad por el cliente y que puede ser implementada en dos o menos semanas.
El modelado ágil es una colección de valores, principios y practicas para el modelado de software que puede aplicarse en un proyecto de desarrollo de software de una manera efectiva y ligera.
•Modelar con un propósito
1.3.7 Modelado Ágil
1.3.7 Modelado Ágil
•Usar múltiples modelos • Viajar ligero
•El contenido es mas importante que la representación •Conocer los modelos y las herramientas con que se crean •Adaptar en forma local
Conclusiones
Conclusiones
℘La importancia de la organización propia de los
equipos.
Una filosofía ágil para la ingeniería de software se relaciona con cuanto aspectos clave:
℘Comunicación y colaboración entre los miembros
del equipo.
℘Reconocimiento de que el cambio representa una
oportunidad.
℘Especial cuidado en la entrega rápida del software