Metodologías Ágiles en el Desarrollo de Software.

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Metodologías Ágiles en el Desarrollo de Software. por Mind Map: Metodologías Ágiles en el Desarrollo de Software.

1. De este existen distintas variables que son:

1.1. Modelo de Cascada

1.1.1. este se define como:

1.1.1.1. También es llamado ciclo de vida clásico, este modelo ejecuta las diferentes etapas de desarrollo de forma secuencial iniciando por el levantamiento de requisitos y continuando ordenadamente con planeación, modelado, construcción del software, pruebas y despliegue.

1.1.1.1.1. esta tiene dos características

1.2. Prototipado

1.2.1. Se de define como:

1.2.1.1. Es importante tener en cuenta que la construcción del prototipo debe ser rápida y permitir destruirse para luego crear nuevos prototipos basados en la realimentación que el cliente proporcione.

1.3. Modelo incremental

1.3.1. Se define como:

1.3.1.1. consiste en ir generando incrementos de la funcionalidad del software haciendo entregas de funcionalidades específicas de la plataforma, conforme transcurre el tiempo.

1.4. Modelo en espiral

1.4.1. Este se define como:

1.4.1.1. El modelo fue creado por Barry Boehm; él lo define como “un generador de modelo de proceso, impulsado por el riesgo, que se usa para guiar la ingeniería concurrente con participantes múltiples de sistemas intensivos en software.

2. Se puede definir como:

2.1. Se definen las metodologías de software, como los marcos que permiten la estructuración, planificación y control de los proyectos de software

3. Tenemos otra definición que es es:

3.1. Gestión o Metodologías Ágiles

3.1.1. En febrero de 2001, tras una reunión celebrada en Utah-EEUU, nace el término “ágil” aplicado al desarrollo de software. En esta reunión participan un grupo de 17 expertos de la industria del software, incluyendo algunos de los creadores o impulsores de metodologías de software. Su objetivo fue esbozar los valores y principios que deberían permitir a los equipos desarrollar software rápidamente y respondiendo a los cambios que puedan surgir a lo largo del proyecto

3.1.2. Se pretendía ofrecer una alternativa a los procesos de desarrollo de software tradicionales, caracterizados por ser rígidos y dirigidos por la documentación que se genera en cada una de las actividades desarrolladas.

3.1.3. Tras esta reunión se creó The Agile Alliance, una organización, sin ánimo de lucro, dedicada a promover los conceptos relacionados con el desarrollo ágil de software y ayudar a las organizaciones para que adopten dichos conceptos

3.1.3.1. El punto de partida es fue el Manifiesto Ágil:

3.1.3.1.1. Según el Manifiesto se valora:

4. Tenemos otro tema que es:

4.1. PROGRAMACIÓN EXTREMA (EXTREAM PROGRAMMING, XP)

4.1.1. esta es:

4.1.1.1. Es una metodología ágil centrada en potenciar las relaciones interpersonales como clave para el éxito en desarrollo de software, promoviendo el trabajo en equipo, preocupándose por el aprendizaje de los desarrolladores, y propiciando un buen clima de trabajo. XP se basa en realimentación continua entre el cliente y el equipo de desarrollo, comunicación fluida entre todos los participantes, simplicidad en las soluciones implementadas y coraje para enfrentar los cambios. XP se define como especialmente adecuada para proyectos con requisitos imprecisos y muy cambiantes, y donde existe un alto riesgo técnico.

4.1.1.1.1. Tenmos los Roles XP

5. Después tenemos otras metodologías ágiles:

5.1. estas son:

5.1.1. 1. SCRUM

5.1.1.1. Desarrollada por Ken Schwaber, Jeff Sutherland y Mike Beedle. Define un marco para la gestión de proyectos, que se ha utilizado con éxito durante los últimos 10 años. Está especialmente indicada para proyectos con un rápido cambio de requisitos. Sus principales características se pueden resumir en dos. El desarrollo de software se realiza mediante interacciones, denominadas sprints, con una duración de 30 días. El resultado de cada sprint es un incremento ejecutable que se muestra al cliente.

5.1.2. 2. Crystal Methodologies

5.1.2.1. Se trata de un conjunto de metodologías para el desarrollo de software caracterizadas por estar centradas en las personas que componen el equipo y la reducción al máximo del número de artefactos producidos. Han sido desarrolladas por Alistair Cockburn. El desarrollo de software se considera un juego cooperativo de invención y comunicación, limitado por los recursos a utilizar. El equipo de desarrollo es un factor clave, por lo que se deben invertir esfuerzos en mejorar sus habilidades y destrezas, así como tener políticas de trabajo en equipo definidas.

5.1.3. 3. Dynamic Systems Development Method

5.1.3.1. 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.

5.1.4. 4. Adaptive Software Development

5.1.4.1. 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

5.1.5. 5. Feature -Driven Development

5.1.5.1. Define un proceso iterativo que consta de 5 pasos. Las interacciones 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.

5.1.6. 6. Lean Development

5.1.6.1. 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.