2. 1968 Conceptos sobre la programación estructurada de DIJKSTRA
1974 Técnicas de programación estructurada de WARNIER y JACKSON
1975 Primeros conceptos sobre diseño estructurado de MYERS y YOURDON
1977 Primeros conceptos sobre análisis estructurado GANE y SARSON
1978 Análisis estructurado: DEMARCO y WEINBERG
Nace MERISE
1981 SSADM (versión inicial)
Information Engineering (versión inicial)
1985 Análisis y Diseño estructurado para sistemas de tiempo real de
WARD y MELLOR
1986 SSADM Versión 3
1987 Análisis y Diseño estructurado para sistemas de tiempo real de
HATLEY y PIRHBAY
1989 METRICA (versión inicial)
1990 SSADM Versión 4
1993 METRICA Versión 2
1995 METRICA Versión 2.1
3. ESTRUCTURA DE
DESARROLLO AGIL
Scrum es una metodología de
desarrollo muy simple, no se basa
en el seguimiento de un plan, sino
en la adaptación continua a las
circunstancias de la evolución del
proyecto.
Ing. Sonia Godoy Hortua 3
Es un modo de
desarrollo de
carácter adaptable
más que predictivo.
Orientado a las
personas más que a
los procesos.
Emplea la estructura
de desarrollo ágil
incremental basada
en iteraciones y
revisiones.
4. Ing. Sonia Godoy Hortua 4
INDIVIDUOS E
ITERACIONES
SOBRE PROCESOS Y
HERRAMIENTAS
SOFTWARE
FUNCIONANDO
SOBRE DOCUMENTACION
EXTENSIVA
COLABORACION CON
EL CLIENTE
SOBRE NEGOCIACIÓN
CONTRACTUAL
RESPUESTA ANTE EL
CAMBIO
SOBRE SEGUIR UN PLAN
6. Pila del producto: lista de
requisitos de usuario que se
origina con la visión inicial del
producto y va creciendo y
evolucionando durante el
desarrollo.
Pila del sprint: Lista de los
trabajos que debe realizar el
equipo durante el sprint para
generar el incremento
previsto.
Incremento: Resultado de
cada sprint
Ing. Sonia Godoy Hortua 6
9. ¿Qué es XP?
Metodología para un ágil desarrollo de software.
Programación basada en los deseos del cliente.
El equipo lo conforman los jefes de proyecto,
desarrolladores y el cliente.
Se rige por valores y principios.
10. PROGRAMACION EXTREMA
10
Ing.
Sonia
Godoy
Hortua
SCRUM
XP
CONTROL DE CODIGO FUENTE
METAFORAS
PROGRAMACIÓN EN PAREJAS
TRABAJO EN EQUIPO COMPLETO
INTEGRACIÓN CONTINUA
MEJORA DEL DISEÑO
NORMAS DE CODIFICACIÓN
EL CODIGO ES DE TODOS
PLANIFICACIÓN
TEST DEL CLIENTE
VERSIONES PEQUEÑAS
DISEÑO SIMPLE
RITMO SOSTENIBLE
11. CARACTERISTICAS DE XP
Comunicación: Crear
software requiere de
sistemas comunicados.
Simplicidad: Empezar con
lo necesario y requerido y
trabajar desde ahí.
Retroalimentacion: Del
sistema, del cliente, y del
equipo.
Valentia: Programa para
hoy y no para mañana.
Respeto: El equipo debe
trabajar como uno, sin
tomar decisiones
repentinas.
13. Características:
Proporciona una guía para las actividades de
un equipo de desarrollo.
Dirige las tareas de cada desarrollador por
separado y del equipo en conjunto.
Especifica los productos que deben
desarrollarse.
Ofrece criterios para el control, medición de los
productos y actividades del proyecto.
14. Las cuatro primeras fases (Inicio, elaboración,
construcción, transición) atraviesan cinco flujos de
trabajo que son conocidos como iteración:
Captura
de
requisitos
Análisis
Diseño
Implementación.
Prueba.
15. El RAD es un proceso de desarrollo de software,
desarrollado inicialmente por James Martin en 1980. El
método comprende el desarrollo iterativo, la construcción
de prototipos y el uso de utilidades CASE.
Tradicionalmente, el desarrollo rápido de aplicaciones
tiende a englobar también la usabilidad, utilidad y la
rapidez de ejecución
El Desarrollo Rápido de Aplicaciones (DRA) (Rapid Application
Development RAD) es un modelo de proceso del desarrollo del software
lineal secuencial que enfatiza un ciclo de desarrollo extremadamente
corto. DRA es una adaptación a “Alta velocidad” en el que se logra el
desarrollo rápido utilizando un enfoque de construcción basado en
componentes. Si se comprenden bien los requisitos y se limita el ámbito
del proyecto, el proceso DRA permite al equipo de desarrollo crear un
“sistema completamente funcional” dentro de periodos cortos de tiempo.
16. Modelado
de gestión
Modelado
de datos
Modelado
de procesos
Generación de
aplicaciones
Pruebas y
Volumen
De 60 a 90 días
Fases:
Ventajas de RAD
•Comprar puede ahorrar
dinero en comparación con
construir.
•Los entregables pueden ser
fácilmente trasladados a
otra plataforma.
•El desarrollo se realiza a un
nivel de abstracción mayor.
•Visibilidad temprana.
•Mayor flexibilidad.
•Menor codificación manual.
•Mayor involucramiento de
los usuarios.
•Posiblemente menos fallas.
•Posiblemente menor costo.
•Ciclos de desarrollo más
pequeños.
•Interfaz gráfica estándar.
17. Es un proceso de desarrollo de
software y junto con el Lenguaje
Unificado de Modelado (UML),
constituye la metodología estándar
más utilizada para el análisis,
implementación y documentación de
sistemas orientados a objetos. RUP
es una guía de cómo usar UML de la
forma más efectiva. RUP es un
refinamiento realizado por Rational
Software del más genérico Proceso
Unificado.
Es una forma disciplinada de asignar
tareas y responsabilidades en una
empresa de desarrollo (quién hace
qué, cuándo y cómo).
Es también un producto:
•Desarrollado y mantenido por
Rational.
•Actualizado constantemente para
tener en cuenta las mejores
prácticas de acuerdo con la
experiencia.
•Su objetivo principal es asegurar
la producción de software de
calidad dentro de plazos y
presupuestos predecibles. Dirigido
por casos de uso, centrado en la
arquitectura, iterativo (mini-
proyectos) e incremental
(versiones).
18. El Proceso Unificado Agil de Scott
Ambler o Agile Unified Process (AUP)
en inglés es una versión simplificada
del Proceso Unificado de Rational
(RUP). Este describe de una manera
simple y fácil de entender la forma de
desarrollar aplicaciones de software
de negocio usando técnicas ágiles y
conceptos que aún se mantienen
válidos en RUP. El AUP aplica
técnicas ágiles incluyendo Desarrollo
Dirigido por Pruebas (test driven
development – TDD), Modelado Agil,
Gestión de Cambios Agil, y
Refactorización de Base de Datos
para mejorar la productividad.
Notas del editor
Se comienza con la visión general del producto, especificando y dando detalle a las funcionalidades o partes que tienen mayor prioridad de desarrollo y que pueden llevarse a cabo en un periodo de tiempo breve (normalmente de 30 días).
Cada uno de estos periodos de desarrollo es una iteración que finaliza con la producción de un incremento operativo del producto.
Estas iteraciones son la base del desarrollo ágil, y Scrum gestiona su evolución a través de reuniones breves diarias en las que todo el
equipo revisa el trabajo realizado el día anterior y el previsto para el día siguiente.
Propietario del producto: El responsable de obtener el mayor valor de producto para los clientes, usuarios y resto de implicados.
Equipo de desarrollo: grupo o grupos de trabajo que desarrollan el producto.
Scrum Manager: gestor de los equipos que es responsable del funcionamiento de la metodología Scrum y de la productividad del equipo de desarrollo.