Filosofía del desarrollo ágil

El desarrollo ágil es un método de desarrollo gradual, iterativo y centrado en el ser humano. En el desarrollo ágil, la construcción de un proyecto de software se divide en múltiples subproyectos, y los resultados de cada subproyecto han sido probados y tienen las características de integración y operación.

En otras palabras, un proyecto grande se divide en múltiples proyectos pequeños que están interrelacionados pero que también pueden ejecutarse de forma independiente y completarse por separado. Durante este proceso, el software siempre está en un estado utilizable.

Clasificación de los modelos de desarrollo ágil

Agile es una mentalidad y es un conjunto de valores y principios. Agile es una forma de pensar y actuar. Agile tiene que ver con ciclos cortos, entrega iterativa e incremental, fallar rápidamente, obtener retroalimentación, entregar valor comercial a los clientes de manera temprana y sobre personas, colaboración e interacción. Agile es una mentalidad que tiene que ver con la transparencia, la inspección y la adaptación. Agile, sin embargo, no consiste en  roles , eventos o  artefactos . Es una mentalidad. Por ejemplo,  Scrum  es uno de los marcos ampliamente utilizados bajo el paraguas Agile, que puede ayudarlo a volverse más ágil; sin embargo, hay muchos más marcos dentro del movimiento Agile, como Kanban, XP, Crystal y muchos más, como se muestra en la figura. debajo:

  • XP Programación Extrema (Programación extrema)
  • MELÉ
  • Kanban
  • Inclinarse
  • método de cristal
  • Método de desarrollo de sistemas dinámicos

Entre ellos, XP y SCRUM son los más populares.

Melé

Scrum es un marco dentro del cual las personas pueden abordar problemas adaptativos complejos, mientras entregan productiva y creativamente productos del mayor valor posible. Se utiliza para gestionar proyectos de software y desarrollo de productos o aplicaciones. Su enfoque está en una estrategia de desarrollo de productos adaptable donde un equipo multifuncional trabaja como una unidad para alcanzar una meta común dentro de 2 a 4 semanas ( Sprint ). Consiste en una colección de valores, artefactos, roles, ceremonias, reglas y mejores prácticas.

Marco Scrum

Inclinarse

Lean se originó con el Sistema de producción de Toyota, o TPS, que revolucionó la fabricación de bienes físicos en las décadas de 1950, 1960 y más allá. Lean mantiene su dominio en la fabricación, pero también ha encontrado nuevas aplicaciones en el trabajo del conocimiento, ayudando a las empresas de todas las industrias a  eliminar el desperdicio, mejorar los procesos e impulsar la innovación . El desarrollo de software es una aplicación natural de la metodología Lean porque, al igual que la fabricación, generalmente sigue un proceso definido, tiene algunas condiciones definidas de aceptación y da como resultado la entrega de valor tangible. Los conceptos clave que guían toda la práctica de la metodología Lean, a los que llamamos Pilares de Lean. Ellos son:

  • Mejora continua
  • Respeto por la gente
  • Liderazgo ligero

Kanban

Kanban es un método de gestión de flujo de trabajo altamente visual que es popular entre los equipos Lean. De hecho, el 83 % de los equipos que practican Lean utilizan Kanban para visualizar y gestionar activamente la creación de productos con énfasis en la entrega continua, sin sobrecargar al equipo de desarrollo. Al igual que Scrum, Kanban es un proceso diseñado para ayudar a los equipos a trabajar juntos de manera más efectiva.

Kanban se basa en 3 principios básicos:

  • Visualice lo que hará hoy (flujo de trabajo): ver todos los elementos dentro del contexto de cada uno puede ser muy informativo
  • Limite la cantidad de trabajo en curso (WIP): esto ayuda a equilibrar el enfoque basado en el flujo para que los equipos no comiencen y se comprometan con demasiado trabajo a la vez.
  • Flujo mejorado: cuando algo está terminado, el siguiente elemento de mayor prioridad del trabajo pendiente se pone en juego.

Kanban promueve la colaboración continua y fomenta el aprendizaje y la mejora activos y continuos al definir el mejor flujo de trabajo de equipo posible.

Método de desarrollo de sistemas dinámicos (DSDM)

DSDM es un marco que se compone de ocho principios, un ciclo de vida y productos, roles y responsabilidades y varias técnicas de mejores prácticas. Estos apuntalan y respaldan una filosofía de brindar beneficios comerciales alineados estratégicamente lo antes posible para brindar a una organización el mejor retorno de la inversión (ROI) posible.

DSDM es una metodología que prioriza el cronograma y la calidad sobre la funcionalidad, que fija el costo, la calidad y el tiempo al inicio y utiliza el método de priorización MoSCoW, que divide un proyecto en cuatro tipos diferentes de requisitos:

  • debe tener (M)
  • debería haber (S)
  • Podría tener ©
  • no tendré (W)

Hay ocho principios que sustentan DSDM Atern. Estos principios dirigen al equipo en la actitud que deben tomar y la mentalidad que deben adoptar para cumplir de manera consistente.

  1. Enfócate en la necesidad del negocio
  2. entregar a tiempo
  3. Colaborar
  4. Nunca comprometa la calidad
  5. Construir gradualmente a partir de cimientos firmes
  6. Desarrollar iterativamente
  7. Comunicarse de manera continua y clara.
  8. Demostrar control

Programación extrema

La programación extrema  (XP), originalmente descrita por Kent Beck, se ha convertido en una de las metodologías ágiles más populares y controvertidas. XP es un enfoque disciplinado para entregar software de alta calidad de forma rápida y continua. Su objetivo es mejorar la calidad del software y la capacidad de respuesta frente a los requisitos cambiantes de los clientes. Promueve una alta participación del cliente, bucles de retroalimentación rápidos, pruebas continuas, planificación continua y trabajo en equipo cercano para entregar software funcional a intervalos muy frecuentes, generalmente cada 1 a 3 semanas.

Programación extrema explicada

¿Cuáles son los valores clave de los métodos ágiles?

El término “Ágil” fue acuñado en 2001 en el Manifiesto Ágil. El manifiesto se propuso establecer principios para guiar un mejor enfoque del desarrollo de software. El Manifiesto Ágil consta de 4 valores importantes. La forma de leer el Manifiesto Ágil no es que los elementos del lado derecho ya no tengan valor, sino que el movimiento Ágil valora más los elementos del lado izquierdo.

Hay cuatro valores clave que son los componentes básicos de cada componente en un enfoque Agile. Enfatizan un cambio en el énfasis de las prácticas y los procesos a las personas y la colaboración.

Estos cuatro valores informan las mejores prácticas ágiles, centrándose en la flexibilidad para que los equipos puedan trabajar mejor juntos para realizar tareas. Las prácticas ágiles elevan la importancia del objetivo final a lo largo del proceso. Si las personas pueden trabajar bien juntas, adaptarse a los nuevos cambios y producir, no importa mucho cómo lo hagan.

12 mejores prácticas

Complementando el Manifiesto Ágil, Agile Alliance también ha definido un conjunto de 12 principios subyacentes, que brindan orientación y una explicación más detallada además del Manifiesto Ágil:

Desarrollo ágil: 12 mejores prácticas
  1. Nuestra máxima prioridad es satisfacer al cliente mediante la entrega temprana y continua de software valioso.
  2. Da la bienvenida a los requisitos cambiantes, incluso al final del desarrollo. Los procesos ágiles aprovechan el cambio para la ventaja competitiva del cliente.
  3. Entregue software que funcione con frecuencia, desde un par de semanas hasta un par de meses, con preferencia a la escala de tiempo más corta.
  4. Los empresarios y los desarrolladores deben trabajar juntos a diario durante todo el proyecto.
  5. Construir proyectos en torno a personas motivadas. Bríndeles el entorno y el apoyo que necesitan, y confíe en ellos para hacer el trabajo.
  6. El método más eficiente y efectivo para transmitir información a un equipo de desarrollo y dentro de él es una conversación cara a cara.
  7. El software que funciona es la medida principal del progreso.
  8. Los procesos ágiles promueven el desarrollo sostenible.
  9. Los patrocinadores, desarrolladores y usuarios deberían poder mantener un ritmo constante indefinidamente.
  10. La atención continua a la excelencia técnica y el buen diseño mejoran la agilidad.
  11. La simplicidad, el arte de maximizar la cantidad de trabajo no realizado, es esencial.
  12. Las mejores arquitecturas, requisitos y diseños surgen de equipos autoorganizados. A intervalos regulares, el equipo reflexiona sobre cómo volverse más efectivo, luego sintoniza y ajusta su comportamiento en consecuencia.

Resumen

Agile Development es una de las grandes palabras de moda de la industria del desarrollo de software, que es una forma diferente de gestionar proyectos de desarrollo de software. Más que un método de desarrollo de software específico, es un término general para un conjunto de métodos y prácticas basados ​​en los valores y principios expresados ​​en el Manifiesto Ágil. Las soluciones evolucionan a través de la colaboración entre equipos multifuncionales autoorganizados que utilizan las prácticas adecuadas para su contexto.

Lectura de desarrollo ágil

Dejar una contestacion

Tu dirección de correo electrónico no será publicada.