¿Qué es Agile?

A lo largo de las décadas, las empresas de todo el mundo han adoptado diferentes marcos y metodologías de gestión de proyectos que, en su opinión, se adaptan mejor a la naturaleza del trabajo que realizan.

Ya sea TI, atención médica, bienes de consumo de rápido movimiento, electrónica o automóviles, las organizaciones de todos los dominios adoptan marcos que les permiten lograr sus objetivos organizacionales y satisfacer mejor las necesidades de sus clientes.

Mucho antes del nacimiento del término ‘Agile’, se seguían varias prácticas de gestión de proyectos como Waterfall, Kanban y XP. Sin embargo, hubo una gran insatisfacción con la rigidez de algunas de estas prácticas.

A lo largo de los años, académicos y líderes de la industria comenzaron a discutir la necesidad de procesos que les dieran más flexibilidad y les permitieran enviar el software a tiempo.

Después de mucha planificación, diecisiete líderes innovadores de la industria, muchos de ellos de la comunidad de software, se reunieron en febrero de 2001 en el famoso Snowbird Ski Retreat en las montañas Wasatch de Utah, EE. UU.

Este pequeño retiro de tres días terminó dando forma a gran parte del software que se imagina, crea y entrega, y probablemente incluso cómo funciona el mundo.

¿De qué se trata la Metodología Ágil?

Agile es una mentalidad, una metodología que proporciona diferentes marcos que funcionan de manera iterativa e incremental para llegar a una solución. La metodología Agile se enfoca en crear una alfombra roja, un camino fluido para que los equipos trabajen y brinden resultados excepcionales para satisfacer las necesidades del cliente. . Durante las últimas dos décadas, la metodología Agile ha dominado la industria de TI a lo grande.

La metodología Agile no solo está enfocada en el cliente, sino que también ayuda a los equipos a escalar, aprender y crecer. Hubo un tiempo en que las organizaciones pensaban en Agile como una varita de cuento de hadas, algo que podía solucionar mágicamente todos sus problemas. Afortunadamente, con mucha ayuda de los líderes ágiles, el polvo de hadas encantado ahora se ha evaporado. La gente ahora entiende que, de hecho, se necesita mucho esfuerzo, conciencia, entrenamiento y dedicación para solucionar problemas a través de Agile. Como cualquier otro método, Agile también lleva tiempo, pero si se aplica en su verdadero sentido, los resultados pueden ser muy satisfactorios.

La poción mágica: Valores y principios ágiles

Con la acuñación del término ‘Agile’, se sentaron sus bases, la hermosa verdad sobre cómo avanzar y cumplir con las reglas y valores de Agile. En el retiro de Snowbird, los diecisiete líderes elaboraron un manifiesto. El Manifiesto Ágil es único entre los manifiestos típicos en que no declara verdades evidentes. Más bien, compara: valoramos esto más que aquello.

En Snowbird, los líderes comenzaron a exponer lo que tenían en común y cuando compararon cómo hacían su trabajo, se sorprendieron de las cosas que eran iguales. Continuaron para finalizar las cuatro líneas del manifiesto que forma la columna vertebral de todos los marcos que se encuentran bajo el paraguas Agile. Cada línea tiene un significado profundo asociado y te sorprenderá su relevancia generalizada en todos los dominios.

Entonces, ¿qué es el manifiesto ágil? El preámbulo dice: “Estamos descubriendo mejores formas de desarrollar software haciéndolo y ayudando a otros a hacerlo”.

El documento concluye que “si bien hay valor en los artículos de la derecha, valoramos más los artículos de la izquierda”.

Aunque las palabras pueden interpretarse de manera diferente, la esencia básica es esta: poner a las personas por encima del proceso . Concéntrese en hacer software que funcione , no documentos sobre ese software. Trabaje con su cliente en lugar de pelear por un contrato. Y en el camino, *estar abierto al cambio.*

Con los cuatro valores centrales anteriores, los autores también idearon doce principios que ayudan a los equipos a comprender y adoptar Agile como su forma de trabajar. Incluso si los equipos aún tienen que aprender a usar cualquiera de los marcos o cómo trabajar en torno a las ceremonias, si entienden y adoptan los cuatro valores y los doce principios, la batalla está ganada.

Estos son los doce principios establecidos en el Manifiesto Ágil:

  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. Los patrocinadores, desarrolladores y usuarios deberían poder mantener un ritmo constante indefinidamente.
  9. La atención continua a la excelencia técnica y al buen diseño mejora la agilidad.
  10. La sencillez, el arte de maximizar la cantidad de trabajo no realizado, es fundamental.
  11. Las mejores arquitecturas, requisitos y diseños surgen de equipos autoorganizados.
  12. A intervalos regulares, el equipo reflexiona sobre cómo volverse más efectivo, luego sintoniza y ajusta su comportamiento en consecuencia.

¿Cuáles son las diversas Metodologías Ágiles?

Bajo el paraguas ágil general, muchos marcos operan y atienden a diferentes industrias y necesidades del mercado. Veamos algunos de los marcos ágiles más utilizados:

Scrum

Scrum es una forma incremental e iterativa de trabajar en un marco de tiempo para resolver problemas adaptativos complejos. Es un enfoque ampliamente utilizado según el 14º Informe Anual de Version One y tiene el 58% de la cuota de mercado total en términos de adopción del marco.

Kanban

Es un concepto de un sistema de programación para la fabricación ajustada y la fabricación justo a tiempo. Derivado de una palabra japonesa, significa un letrero o el tablero físico con carriles para rastrear la actividad. Este sistema ayuda a mejorar y optimizar el flujo de elementos de trabajo. 

XP (programación extrema)

Originada por Kent Beck, Extreme Programming es una metodología de desarrollo de software concebida para mejorar la calidad del producto y su capacidad para ajustarse adecuadamente a las necesidades cambiantes de las partes interesadas. Es un conjunto de prácticas de ingeniería.

FDD (desarrollo basado en características)

Está centrado en el cliente, iterativo e incremental, para ofrecer resultados de software tangibles con frecuencia y de manera eficiente. FDD en Agile fomenta la generación de informes de estado en todos los niveles, lo que ayuda a realizar un seguimiento del progreso y los resultados.

DSDM (método de desarrollo de sistema dinámico)

Ha sido desarrollado para trabajar en los problemas habituales a los que se enfrentan los proyectos como la entrega tardía, los sobrecostos o la no aceptación del resultado final por parte de los clientes. Es un enfoque basado en Agile que es colaborativo y flexible, sin dejar de estar atento a alcanzar los objetivos y mantener el nivel adecuado de excelencia y consistencia.

Scrum es un marco de gestión de proyectos ágil que gira en torno a un enfoque incremental e iterativo en el que la atención se centra en la entrega de incrementos en un marco de tiempo. Scrum apoya el enfoque colaborativo de trabajar hacia una solución y se basa en el Manifiesto y los principios ágiles. El marco Scrum se compone de:

Tres roles

Scrum Master, equipo de desarrollo y propietario del producto

Eventos Scrum

Sprint Planning, Daily Standup, Sprint Review y Sprint Retrospective.

Artefactos

Product Backlog, Sprint Backlog, Task-Board, Burndown charts, Sprint Goal

Agile vs. Scrum: similitudes y diferencias

Si bien Agile proporciona un paraguas para diferentes marcos que comparten valores y principios comunes según lo prescrito por el Manifiesto Agile, Scrum es un subconjunto de Agile y ha heredado la base y las creencias de su superconjunto.

Mejores prácticas en Agile

Aunque Agile tiene ciertos principios y valores para definir cómo deben funcionar los equipos, también es necesario adherirse a las mejores prácticas para obtener la mejor implementación de la metodología. Éstos son algunos de ellos:

Entregar en Incrementos

Incrementar ayuda a los equipos y las partes interesadas a mantener el control del desarrollo paso a paso. Descubren y refinan el trabajo pendiente a medida que avanzan en lugar de crear un enorme trabajo pendiente por adelantado como ocurría tradicionalmente. 

Interacciones frecuentes

La comunicación es la clave del éxito. Cuanto más colaborativamente trabaje el equipo junto con el cliente, mayor será la satisfacción en ambos extremos. Esto ayuda a cumplir con los requisitos esperados y una mayor claridad en la próxima tarea.

Reflexión

Es fundamental hacer una introspección como individuo y retrospectar como equipo para ver cómo están funcionando y qué se puede mejorar para hacerlo mucho mejor.

Mejores prácticas en Scrum

Con el uso extensivo de Scrum, las organizaciones ahora tienen sus propias historias de éxito junto con un paquete de aprendizaje sobre lo que salió bien y dónde tuvieron que luchar.

Este camino pavimentado para expandir la lista de mejores prácticas que uno puede seguir para mantenerse al día con el marco. Para enumerar algunos:

Guión

Ten un guión gráfico en vivo, deja que el equipo actualice sus entregas. El Scrum Master puede ayudar al equipo a comprender el valor que pueden obtener de él.

Eventos Productivos

Cíñete a la agenda de las ceremonias de scrum, haz que esté enmarcado en el tiempo

Planificación de capacidad

Planifica tu sprint según la capacidad disponible para que los equipos no se sobrecarguen.

Bloqueadores

Hacer que los impedimentos sean muy visibles para todas las partes interesadas y la dirección.

Gestión de la cartera de pedidos

Administre de manera efectiva el trabajo pendiente, tanto como sea posible, refine y priorice.

Atmósfera Fuerte

Cree un entorno colaborativo saludable donde las personas puedan expresar sus preocupaciones.

Mejora

Mejorar continuamente la forma en que el equipo interactúa y se comunica con los clientes.

Refleja tu trabajo

Sea transparente y honesto con las métricas y los gráficos de trabajo en equipo

Siga los valores de scrum

Realmente ayudan a largo plazo.

Relacionado

❌ React Native, crear aplicación como Netflix con Mario Díez

[no_toc] [expand title="Índice del Vídeotutorial"] 1. FlatList Horizontal 2. Componente Swiper 3. Menú Animado y Header 4. FlatList Grid 5. Más Flexbox, Tabs y Linear gradiantes 6. Reproductor de Vídeo 7. Share API 8. Animatable Header y NativeEvents 9. React Navigation 10. Header Múltiple con Animated 11. Modal con React Navigation 12. React Navigation con Redux 13. Servidor NodeJS con MongoDB para React Native 14. Conectando ¡SEGUIR LEYENDO!

❌ React Native con Mario Díez

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Instalación 2. Introducción 3. Props y State 4. Fetch Data 5. ListView 6. Fech Data 2 7. Navigator IOS 8. Navigator 9. Flexbox 10. PropTypes 11. TabBarIOS 12. Formularios 13. AsyncStorage 14. Recorriendo Arrays con Map 15. Notificaciones Push 16. Notificaciones Push desde NodeJS 17. Barra de Búsqueda en ListView 18. Utilización de CameraRoll 19. Children o Props 20. Diferenciar ¡SEGUIR LEYENDO!

❌ React Native con Iván B. Trujillo

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Primeros Pasos 2. Componentes, Botones y Alertas 3. Pantalla de Login, Navegador y Vistas 4. Navegación por Pestañas 5. Peticiones a API y ListView 6. Vista Detalles y Paso de Propiedades a Componente Hijo [/expand] [yotuwp type="playlist" id="PLuzQ5Ac_9_cI-ukaElfIFKXyhLsADBiJe" ] [expand title="Creador"] Editor del blog de Medium: Canarias JS [/expand]

❌ Javascript con Píldoras Informáticas

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Presentación. Vídeo 1 2. Introducción. Vídeo 2 3. Sintaxis Básica I. Ubicación del código. Vídeo 3 4. Sintaxis Básica II. Estructuras Básicas. Vídeo 4 5. Sintaxis Básica III. Operadores Básicos. Vídeo 5 6. Sintaxis Básica IV. Operadores y prompt. Vídeo 6 7. Sintaxis Básica V Arrays, Matrices, Arreglos. Vídeo 7 8. Sintaxis Básica V. Arrays, Matrices, Arreglos II. Vídeo 8 ¡SEGUIR LEYENDO!

❌ Javascript con Falcon Masters

[no_toc] [expand title="Índice del Vídeotutorial"] 1. Introducción 2. Variables 3. Tipos de Dato 4. Arreglos 5. Metodos y propiedades para los Arreglos 6. Condicionales 7. Ciclo Fo 8. Ciclo While 9. Funciones 10. Ejercicio con Funciones y Formularios 11. Scope de Javascript (ámbito de las variables) 12. Metodos y propiedades para Cadenas de Texto 13. Introducción al DOM (Document Object Model) 14. Creando Nodos del DOM ¡SEGUIR LEYENDO!

Deja un comentario