Metodologías ágiles para la gestión de proyectos y metodologías lean

Documento de Universidad sobre Metodologías ágiles para la gestión de proyectos y metodologías lean. El Pdf, de Informática, explora metodologías de desarrollo de software como Scrum, Kanban, Lean y DevOps, además de modelos de ciclo de vida tradicionales.

Ver más

43 páginas

1
37. Metodologías ágiles para la gestión de proyectos. Metodologías lean.
85. El ciclo de vida de los sistemas de información. Modelos del ciclo de vida.
87. Análisis funcional de sistemas, casos de uso e historias de usuario.
Metodologías de desarrollo de sistemas. Metodologías ágiles: Scrum y Kanban.
Contenido
1. METODOLOGÍAS .................................................................................................. 3
1.1. INTRODUCCIÓN ............................................................................................ 3
1.2. METODOLOGÍAS ESTRUCTURADAS .......................................................... 4
1.3. METODOLOGÍAS ORIENTADAS A OBJETOS .............................................. 5
1.4. METODOLOGÍAS ÁGILES ............................................................................. 6
1.4.1. SCRUM ....................................................................................................... 7
1.4.2. XP - EXTREME PROGRAMMING (PROGRAMACIÓN EXTREMA) .......... 11
1.4.3. FDD - FEATURE DRIVEN DEVELOPMENT ............................................. 12
1.4.4. TDD - TEST DRIVEN DEVELOPMENT .................................................... 13
1.4.5. BDD (Behavior Driven Development) ........................................................ 13
1.4.6. DDD .......................................................................................................... 13
1.4.7. Escalado Ágil ............................................................................................ 14
1.4.8. Dynamic Systems Development Method (DSDM) ..................................... 14
1.4.9. Crystal ....................................................................................................... 14
1.4.10. KANBAN ................................................................................................ 15
1.4.11. Ciclo de vida de un proyecto ágil ........................................................... 16
1.4.12. Historias de usuario ............................................................................... 17
1.4.13. LEAN ..................................................................................................... 18
1.4.14. DEVOPS ............................................................................................... 20
2. MODELOS DE CICLO DE VIDA .......................................................................... 22
2.1. LA EVOLUCIÓN DEL SOFTWARE Y LA CRISIS DEL SOFTWARE ............ 22
2.1.1. LA INGENIERÍA DEL SOFTWARE ........................................................... 23
2.2. CONCEPTO DE CICLO DE VIDA ................................................................ 25
2.3. EL MODELO DE CICLO DE VIDA CSICO O EN CASCADA .................... 26
2.4. MODELOS DE PROTOTIPADO ................................................................... 29
2.4.1. EL PROTOTIPADO CLÁSICO O MODELO DE CONSTRUCCIÓN DE
PROTOTIPOS ......................................................................................................... 30
2.4.2. EL PROTOTIPADO EVOLUTIVO.............................................................. 31
2
2.4.2.1. UN CASO DE PROTOTIPADO EVOLUTIVO: EL CICLO DE VIDA RAD.
31
2.4.3. EL MODELO DE DESARROLLO INCREMENTAL .................................... 32
2.5. EL MODELO DE CICLO DE VIDA EN ESPIRAL. ......................................... 33
2.6. MODELOS BASADOS EN TRANSFORMACIONES .................................... 36
2.6.1. EL MODELO DE TÉCNICAS DE CUARTA GENERACIÓN ...................... 37
2.6.2. EL MODELO DE TRANSFORMACIÓN DE McCLURE ............................. 38
2.7. CICLO DE VIDA CON REUTILIZACIÓN ....................................................... 39
2.8. OTROS MODELOS ...................................................................................... 40
2.8.1. EL PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE (PUDS) O
RUP. 40
2.8.2. MODELO DE MÉTODOS FORMALES ..................................................... 42

Visualiza gratis el PDF completo

Regístrate para acceder al documento completo y transformarlo con la IA.

Vista previa

METODOLOGÍAS

INTRODUCCIÓN A METODOLOGÍAS

37. Metodologías ágiles para la gestión de proyectos. Metodologías lean. 85. El ciclo de vida de los sistemas de información. Modelos del ciclo de vida. 5 87. Análisis funcional de sistemas, casos de uso e historias de usuario. Metodologías de desarrollo de sistemas. Metodologías ágiles: Scrum y Kanban.

Contenido 1. METODOLOGÍAS 3 1.1. INTRODUCCIÓN 3 1.2. METODOLOGÍAS ESTRUCTURADAS 4 1.3. METODOLOGÍAS ORIENTADAS A OBJETOS 5 1.4 METODOLOGÍAS ÁGILES 6 1.4.1. SCRUM 7 1.4.2. XP - EXTREME PROGRAMMING (PROGRAMACIÓN EXTREMA) 11 1.4.3. FDD - FEATURE DRIVEN DEVELOPMENT 12 1.4.4. TDD - TEST DRIVEN DEVELOPMENT 13 1.4.5. BDD (Behavior Driven Development) 13 1.4.6. DDD 13 1.4.7. Escalado Ágil 14 1.4.8. Dynamic Systems Development Method (DSDM) 14 1.4.9. Crystal 14 1.4.10. KANBAN 15 1.4.11. Ciclo de vida de un proyecto ágil 16 1.4.12. Historias de usuario 17 1.4.13. LEAN 18 1.4.14. DEVOPS 20 2. MODELOS DE CICLO DE VIDA 22 2.1. LA EVOLUCIÓN DEL SOFTWARE Y LA CRISIS DEL SOFTWARE 22 2.1.1. LA INGENIERÍA DEL SOFTWARE 23 2.2 CONCEPTO DE CICLO DE VIDA 25 2.3. EL MODELO DE CICLO DE VIDA CLÁSICO O EN CASCADA 26 2.4. MODELOS DE PROTOTIPADO 29 2.4.1. EL PROTOTIPADO CLÁSICO O MODELO DE CONSTRUCCIÓN DE PROTOTIPOS. 30 2.4.2. EL PROTOTIPADO EVOLUTIVO 31 12.4.2.1. UN CASO DE PROTOTIPADO EVOLUTIVO: EL CICLO DE VIDA RAD. 31 2.4.3. EL MODELO DE DESARROLLO INCREMENTAL 32 2.5. EL MODELO DE CICLO DE VIDA EN ESPIRAL. 33 2.6. MODELOS BASADOS EN TRANSFORMACIONES 36 2.6.1. EL MODELO DE TÉCNICAS DE CUARTA GENERACIÓN 37 2.6.2. EL MODELO DE TRANSFORMACIÓN DE MCCLURE 38 2.7. CICLO DE VIDA CON REUTILIZACIÓN 39 2.8. OTROS MODELOS 40 2.8.1. EL PROCESO UNIFICADO DE DESARROLLO DE SOFTWARE (PUDS) O RUP. 40 2.8.2. MODELO DE MÉTODOS FORMALES 42 21. METODOLOGÍAS 1.1. INTRODUCCIÓN

  • Existen multiples definiciones del concepto de metodología, todas son parecidas, y en el fondo hacen referencia a los mismos conceptos. Una posible definición es:

    • Metodología: Conjunto de procedimientos, metodos o técnicas y herramientas y un soporte documental que ayuda a los desarrolladores a realizar nuevo software.
    • Define un conjunto de procedimientos integrados orientados a alcanzar una meta común, que es la de desarrollar el software de una manera sistemática.
    • Define la secuencia en que deben aplicarse esos procedimientos, los productos intermedios y finales que se deben generar, la información de la que se parte, técnicas a aplicar, controles de calidad, etc.
  • Los componentes principales son:

    • Un conjunto de procedimientos: son los pasos que hay que dar para construir el software. Estos procedimientos son los elementos que unen a las técnicas y las herramientas. Los procedimientos definen: La secuencia en que se aplican las técnicas · Los productos que se deben obtener . Los controles . Las Directrices
    • Los métodos o técnicas que indican cómo se debe construir el software. incluye los siguientes elementos: " Descripciones del Modelo del Sistema · Reglas: · Recomendaciones: . Guías de Proceso
    • Las herramientas permiten la automatización de los métodos o técnicas mediante ordenador.
  • Requisitos de una Metodología:

    • Documentada
    • Repetible
    • Enseñable
    • Basada en Técnicas Probadas
    • Validada
    • Apropiada.
  • Características de las Metodologías: Existencia de reglas predefinidas, Cobertura total del ciclo de desarrollo del sistema, Verificaciones intermedias, Planificación y Control, Comunicación efectiva, Utilización sobre un abanico amplio de proyectos, Fácil formación, Documentación, Herramientas CASE, Debe contener actividades que mejoren el proceso de desarrollo, Soporte de la reutilización de software

Metodología vs Ciclo de Vida

3- Metodología vs Ciclo de Vida

  • Metodología: Define los pasos, detalla los productos, técnicas y métodos que hay que seguir para construir el sistema software.
  • Ciclo de Vida o Modelo de Proceso: Define las etapas y actividades genéricas por las que pasa el desarrollo de un sistema software. (ciclo de vida en cascada, en espiral, etc.)

Clasificación de las Metodologías

  • Clasificación de las Metodologías SSADM Estructuradas Merise Orientadas a Función Orientadas a proceso Metricav3

  • OOAD BOOCH Metodologías de Desarrollo Software Orientadas a Objetos OMT Rumbaugh RUP OOSE Jacobson

  • SCRUM XP Metodologías Ágiles FDD Kanban 11

METODOLOGÍAS ESTRUCTURADAS

1.2. METODOLOGÍAS ESTRUCTURADAS

  • Las metodologías estructuradas proponen la creación de modelos del sistema que representan:

    • Los Procesos que se realizan en el sistema, es decir, que transformaciones se realizan.
    • Los Flujos de datos, es decir, como fluyen los datos entre los procesos del sistema.
    • La Estructura de los Datos, que atributos componen los datos y que relaciones tienen unos datos con otros.
  • Todas estas metodologías se apoyan en un enfoque Top-Down mediante el cual se parte del problema como un todo y mediante la subdivisión de cada problema en subproblemas más pequeños se va bajando en el nivel de abstracción hasta llegar al nivel inferior de detalle.
  • La diferencia principal entre las metodologías estructuradas es el objeto sobre el que se centran a la hora de construir el sistema, es decir, si se centran en el proceso (metodologías orientadas al proceso) o se centran en los datos (metodologías orientadas a datos).

Metodologías Estructuradas Orientadas a Procesos

4- METODOLOGÍAS ESTRUCTURADAS ORIENTADAS A PROCESOS

  • Estas metodologías se basan en el modelo básico de entrada / proceso / salida, centrándose principalmente en la parte del proceso, es decir, lo que el sistema hace y cómo procesa la entrada para generar la salida.

  • La especificación del sistema se basa en describirlo en función de: . Diagramas de Flujo de Datos · Diccionario de Datos · Especificaciones de Procesos

Metodologías Estructuradas Orientadas a Datos

  • METODOLOGÍAS ESTRUCTURADAS ORIENTADAS A DATOS

    • Establecen modelos de sistemas que se basan en una organización y un acceso ideales a los datos del sistema, independientemente de cómo se utilicen estos datos para satisfacer las necesidades de información (salidas). Las metodologías orientadas a estructura de datos representan los requisitos del software orientandolos hacia la estructura de datos, en vez del flujo de datos.
    • Existen dos tipos de metodologías orientadas a datos, en función de si los datos con los que tratan son o no jerárquicos: Orientadas a Datos Jerárquicos . Orientadas a Datos no Jerarquicos

METODOLOGÍAS ORIENTADAS A OBJETOS

1.3. METODOLOGÍAS ORIENTADAS A OBJETOS

  • Algunos ejemplos de metodologías orientadas a objetos son:

    • OMT de Jim Rumbaugh.
    • OOAD (Object-Oriented Analysis and Design) de Grady Booch.
    • OOSE (Object-Oriented Software Engineering) de Jackobson.
    • RUP (Rational Unified Process), que se puede considerar una evolución de las tres anteriores, más el respaldo de los organismos de estandarización y el mercado.

METODOLOGÍAS ÁGILES

51.4. METODOLOGÍAS ÁGILES

Comparativa Metodologías Tradicionales y Ágiles

Metodologías tradicionales Metodologías ágiles Orientadas a la planificación Orientadas al aprendizaje Comunicación con el cliente poco frecuente Frecuente comunicación con el cliente Proyectos grandes entregados de una sola vez (típicamente de 9-12 meses) Proyectos cortos enfocadas en las prioridades de negocio (típicamente de 3-6 meses) Requisitos definidos por adelantado Requisitos que evolucionan durante el proyecto Desarrollo en distintas fases con entregables entre ellas Entregas de código funcionando en iteraciones cortas (tipicamente 2-4 semanas) Desarrollo por capas: presentación, negocio, interfaces, etc. Desarrollo de funcionalidad de extremo a extremo en iteraciones La integración de las capas ocurre al final de la construcción Integración continua Las pruebas se realizan al final Las pruebas se realizan durante la iteración, tanto pruebas unitarias como funcionales Alto coste del cambio Bajo coste del cambio

Principios del Manifiesto Ágil

  • Principios del Manifiesto Ágil

    • 1. Nuestra principal prioridad es satisfacer al cliente a través de la entrega temprana y continua de software de valor.
    • 2. Son bienvenidos los requisitos cambiantes, incluso si llegan tarde al desarrollo. Los procesos ágiles se doblegan al cambio como ventaja competitiva para el cliente.
    • 3. Entregar con frecuencia software que funcione, en periodos de un par de semanas hasta un par de meses, con preferencia en los periodos breves.
    • 4. Las personas del negocio y los desarrolladores deben trabajar juntos de forma cotidiana a través del proyecto.
    • 5. Construcción de proyectos en torno a individuos motivados, dándoles la oportunidad y el respaldo que necesitan y procurándoles confianza para que realicen la tarea.
    • 6. La forma más eficiente y efectiva de comunicar información de ida y vuelta dentro de un equipo de desarrollo es mediante la conversación cara a cara.
    • 7. El software que funciona es la principal medida del progreso.

6o 8. Los procesos ágiles promueven el desarrollo sostenido. Los patrocinadores, desarrolladores y usuarios deben mantener un ritmo constante de forma indefinida. o 9. La atención continua a la excelencia técnica enaltece la agilidad. o 10. La simplicidad como arte de maximizar la cantidad de trabajo que no se hace, es esencial. o 11. Las mejores arquitecturas, requisitos y diseños emergen de equipos que se auto-organizan. o 12. En intervalos regulares, el equipo reflexiona sobre la forma de ser más efectivo y ajusta su conducta en consecuencia.

SCRUM

1.4.1. SCRUM

  • Scrum es un marco de trabajo para la gestión y desarrollo de software basada en un proceso iterativo e incremental utilizado comunmente en entornos basados en el desarrollo ágil de software.
  • En Scrum se realizan entregas parciales y regulares del producto final, priorizadas por el beneficio que aportan al receptor del proyecto.
  • Por ello, Scrum está especialmente indicado para proyectos en entornos complejos, donde se necesita obtener resultados pronto, donde los requisitos son cambiantes o poco definidos, donde la innovación, la competitividad, la flexibilidad y la productividad son fundamentales.
  • Scrum tambien se utiliza para resolver situaciones en que no se está entregando al cliente lo que necesita, cuando las entregas se alargan demasiado, los costes se disparan o la calidad no es aceptable, cuando se necesita capacidad de reacción ante la competencia, cuando la moral de los equipos es baja y la rotación alta, cuando es necesario identificar y solucionar ineficiencias sistemáticamente o cuando se quiere trabajar utilizando un proceso especializado en el desarrollo de producto.

7

¿Non has encontrado lo que buscabas?

Explora otros temas en la Algor library o crea directamente tus materiales con la IA.