10
INGENIERIA DEL SOFTWARE TRABAJO Nº 2 – METODOLOGÍAS ÁGILES INTEGRANTES: PEJERREY BRAVO, JORGE ALFREDO PEREZ GONZALEZ ELMER ALEX AGUILAR ZAPANA, HUMBERTO GUEVARA TARRILLO, JOHNY

Trabajo nº2 ing sw

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Trabajo nº2   ing sw

INGENIERIA DEL SOFTWARE

TRABAJO Nº 2 – METODOLOGÍAS ÁGILES

INTEGRANTES:PEJERREY BRAVO, JORGE ALFREDO

PEREZ GONZALEZ ELMER ALEXAGUILAR ZAPANA, HUMBERTO

GUEVARA TARRILLO, JOHNY

Page 2: Trabajo nº2   ing sw

XP SCRUM MSF CRYSTALCREADOR / AUTOR

Kent Beck Jeff SutherlandKen Schwaber

Microsoft Alistair Cockbum

AÑO 1999 1995 1994 1990

HISTORIA Sus raíces yacen en la comunidad de Smalltalk.Formulada por Kent Beck, autor del primer libro sobre la materia, Extreme Programming Explained: Embrace Change (1999)

Surge e n 1986, de un artículo de la Harvard Business Review titulado “The New New Product Development Game” de Hirotaka Takeuchi e Ikujiro Nonaka, a partir de ahí Ken Schwaber y Jeff Sutherland formalizan elProceso Scrum en 1995

MSF es el resultado de las experiencias de diferentes áreas de Microsoft con proyectos exitosos.

Creada por una persona en particular Alistair Cockburn el cuál la creó en base al análisis de distintos proyectos de desarrollo de SW y su propia experiencia

CARÁCTERIS. MAS IMPORTANTES

Pruebas unitarias, refabricación, programación en pares, comunicación entre usuarios y desarrolladores, retroalimentación

Define un conjunto de prácticas y roles.Método iterativo e incremental que enfatiza prácticas y valores de project management por sobre las demás disciplinas del desarrollo.

AdaptableEscalableFlexibleTecnología Agnóstica

Metodología ágil con énfasis en modelo de ciclosManeja iteraciones cortas con feedback frecuente por parte de losusuarios/clientes

CUADRO COMPARATIVO METODOLOGIAS ÁGILES

Page 3: Trabajo nº2   ing sw

XP SCRUM MSF CRYSTALETAPAS / FASES

1. Planificación de proyectos

2. Diseño3. Codificación4. Pruebas

1. Pre-Juego: Planeamiento

2. Pre-Juego: Montaje (Staging)

3. Juego o Desarrollo.

4. Pos-Juego: Liberación.

1. Visión2. Planificación3. Desarrollo4. Estabilización5. Despliegue o

implementación

1. Entrega frecuente

2. Comunicación osmótica

3. Mejora reflexiva4. Seguridad

personal5. Foco.6. Fácil acceso a

usuarios expertos

7. Ambiente técnico con prueba automatizada,

PALABRAS O TERMINOLOGIA

Refactorización (Refactoring). Es una actividad constante de reestructuración del código con el objetivo de remover duplicación decódigo, mejorar su legibilidad, simplificarlo y hacerlo más flexible parafacilitar los posteriores cambiosCliente in-situ. El cliente tiene que estar presente y disponible

Product Backlog, contiene todos losrequerimientos funcionales y no funcionales que deberá satisfacer el sistema.Features, casos de uso.Sprint, iteracionesScrum Master, Lider de Proyecto

Un punto de visión, para proveer la guía requerida para tomar decisiones. Un conjunto de puntos de referencia, para realizar un seguimiento efectivo de los procesosCapacidad de reutilización, conocimiento previo en forma estructurada y consistente en un ambiente tecnológico flexible

ScrumMaster, que mantiene los procesos y trabaja de forma similar al director de proyecto.ProductOwner, que representa a los stakeholders (clientes externos o internos)Team que incluye a los desarrolladores

CUADRO COMPARATIVO METODOLOGIAS ÁGILES

Page 4: Trabajo nº2   ing sw

Define el marco para desarrollar un proceso de producción

de software. Nace en 1994 con el objetivo de crear una

metodología RAD unificada. Sus principales características

son: es un proceso iterativo e incremental y el equipo de

desarrollo y el usuario trabajan juntos. Propone cinco fases:

estudio viabilidad,estudio del negocio, modelado funcional,

diseño y construcción, y finalmente implementación.

Las tres últimas son iterativas, además de existir

realimentación a todas las fases.

OTRAS METODOLOGÍAS ÁGILES

DYNAMIC SYSTEMS DEVELOPMENT METHOD

(DSDM)

Page 5: Trabajo nº2   ing sw

Su impulsor es Jim Highsmith.

Sus principales características son: iterativo, orientado a los

componentes software más que a las tareas y tolerante a los

cambios. El ciclo de vida que propone tiene tres fases esenciales:

especulación, colaboración y aprendizaje. En la primera de ellas

se inicia el proyecto y se planifican las características del

software; en la segunda desarrollan las características y

finalmente en la tercera se revisa su calidad, y se entrega al

cliente. La revisión de los componentes sirve para aprender de los

errores y volver a iniciar el ciclo de desarrollo.

ADAPTIVE SOFTWARE DEVELOPMENT (ASD)

Page 6: Trabajo nº2   ing sw

Define un proceso iterativo que consta de 5

pasos. Las iteraciones son cortas (hasta 2

semanas). Se centra en las fases de diseño e

implementación del sistema partiendo de una

lista de características que debe reunir el

software.

Sus impulsores son Jeff De Luca y Peter Coad.

FEATURE -DRIVEN DEVELOPMENT (FDD)

Page 7: Trabajo nº2   ing sw

Definida por Bob Charette.s a partir de su experiencia en

proyectos con la industria japonesa del automóvil en los

años 80 y utilizada en numerosos proyectos de

telecomunicaciones en Europa. En LD, los cambios se

consideran riesgos, pero si se anejan adecuadamente se

pueden convertir en oportunidades que mejoren la

productividad del cliente.

Su principal característica es introducir un mecanismo para

implementar dichos cambios.

LEAN DEVELOPMENT (LD)

Page 8: Trabajo nº2   ing sw

EL MANIFIESTO ÁGIL En 2001, Kent Beck (Extreme Programming) convocó a 17

críticos de modelos de desarrollo de software en Salt Lake City. Se discutieron los métodos emergentes que surgían como

alternativa a los métodos tradicionales: demasiadopesados.

Se acuñó el término “metodologías ágiles”. Se concluyó la reunión generando el documento conocido

como el Manifiesto Ágil, el cual expone a cuatropostulados y una serie de principios asociados.

Son técnicas y procesos para desarrollar software que se ha puesto al descubierto y mejores métodos para desarrollar software, haciéndolo y ayudando a otros a que lo hagan. Con este trabajo hemos llegado a valorar:

Page 9: Trabajo nº2   ing sw

VALORES MANIFIESTO ÁGIL Valorar a las personas y su interacción, por encima de los procesos y las

herramientas: procesos de calidad con personas y relaciones mediocres no

daran buenos resultados.

Valorar el software que funciona, por encima de la documentación

exhaustiva: la documentación es necesaria dado que permiten la

transferencia del conocimiento, pero su redacción debe limitarse a aquello

que aporte valor directo al producto/servicio.

Valorar la colaboración con el cliente, por encima de la negociación

contractual: si bien son necesarios, los contratos no aportan valor a los

productos/servicios. Las metodologías ágiles integran al cliente en el proyecto

y mantienen como objetivo aportar el mayor valor posible en cada iteración.

Valorar la respuesta al cambio, por encima del seguimiento de un plan:

Anticipación y adaptación enfrente de planificación y control.

Page 10: Trabajo nº2   ing sw

A partir de los 4 valores básicos se pueden extraer diversos principios que

matizan la filosofía detrás de la gestión ágil:

La principal prioridad es satisfacer al cliente mediante entregas tempranas

y continuas de valor: periodos de 15 a 60 días.

Los requisitos cambiantes son bienvenidos.

Integración de los conocedores del negocio en el propio proyecto.

La motivación y el talento son aspectos clave, por tanto la confianza y el

apoyo al equipo humano es fundamental.

Potenciar las conversaciones en persona por encima de la comunicación

escrita.

El producto funcional (p.ej. software operativo) es la principal medida del

progreso: centrar el interés en el grado de finalización funcional o el

tiempo previsto de finalización, no en el tiempo transcurrido contra el

planificado.

PRINCIPIOS MANIFIESTO ÁGIL