Historia del Manifiesto Agile
El Manifiesto Agile y los Doce Principios del Software Agile fueron las consecuencias de la frustración del sector en la década de 1990. La gran demora entre los requisitos del negocio (las aplicaciones y funciones que pedían los clientes) y la entrega de tecnología que respondía a esas necesidades llevó a la cancelación de muchos proyectos. Los negocios, los requerimientos y los requisitos de los clientes cambiaron durante este tiempo de demora, y el producto final no cumplió con las necesidades actuales de ese momento. Los modelos de desarrollo de software de la época, dirigidos por el modelo en cascada, no satisfacían la demanda de velocidad y no aprovechaban la rapidez con la que el software podía modificarse.
En el año 2000, un grupo de diecisiete "líderes de pensamiento", entre ellos Jon Kern, Kent Beck, Ward Cunningham, Arie van Bennekum y Alistair Cockburn, se reunieron primero en un complejo turístico en Oregon y más tarde, en 2001, en The Lodge en el centro de esquí Snowbird en Utah. Fue en la segunda reunión en la que se escribieron formalmente el Manifiesto de Agile y los Doce Principios. El Manifiesto dice:
"Estamos descubriendo mejores formas de desarrollar
software al hacerlo y ayudar a que otros lo hagan.
A través de este trabajo hemos llegado a valorar:
"las personas e interacciones sobre los procesos y las herramientas:
el software funcional sobre la documentación completa
; colaboración con los clientes sobre la negociación del contrato; y
responder al cambio sobre el seguimiento de un plan".
"Es decir, si bien hay valor en los elementos
de la derecha, valoramos más los elementos de la izquierda".
Para encontrar una amplia selección de plantillas Agile gratuitas para su próximo proyecto Agile, visite Las mejores plantillas de gestión de proyectos Agile en Excel.
Cuatro valores del Manifiesto Agile
El Manifiesto Agile se compone de cuatro valores fundamentales y 12 principios de apoyo que lideran el enfoque Agile para el desarrollo de software. Cada metodología Agile aplica los cuatro valores de diferentes maneras, pero todos dependen de ellos para guiar el desarrollo y la entrega de software funcional de alta calidad.
1. Individuos e interacciones sobre procesos y herramientas
El primer valor del Manifiesto Agile es "Individuos e interacciones sobre procesos y herramientas". Valorar a las personas más que los procesos o las herramientas es fácil de entender porque son las personas las que responden a las necesidades del negocio e impulsan el proceso de desarrollo. Si el proceso o las herramientas impulsan el desarrollo, el equipo responde menos al cambio y es menos probable que satisfaga las necesidades de los clientes. La comunicación es un ejemplo de la diferencia entre valorar a las personas frente al proceso. En el caso de las personas, la comunicación es fluida y ocurre cuando surge una necesidad. En el caso del proceso, la comunicación está programada y requiere contenidos específicos.
2. Software de trabajo sobre la documentación completa
Históricamente, se dedicaron enormes cantidades de tiempo a documentar el producto para el desarrollo y la entrega final. Especificaciones técnicas, requisitos técnicos, folleto técnico, documentos de diseño de interfaz, planes de prueba, planes de documentación y aprobaciones necesarias para cada uno. La lista era extensa y fue causa de grandes demoras en el desarrollo. Agile no elimina la documentación, pero la optimiza en un formulario que le brinda al desarrollador lo que se necesita para hacer el trabajo sin quedar atascado en detalles. Los requisitos de Agile para documentos, como historias de usuario, son suficientes para que un desarrollador de software comience la tarea de crear una nueva función.
El Manifiesto Agile valora la documentación, pero valora más el software que funciona.
3. Colaboración del cliente sobre la negociación del contrato
La negociación es el período en el que el cliente y el gerente de productos trabajan sobre los detalles de una entrega, con puntos a lo largo del camino en los que pueden renegociarse. La colaboración es algo completamente distinto. Con modelos de desarrollo como el modelo de cascada, los clientes negocian los requisitos del producto, a menudo con gran detalle, antes de que comience cualquier trabajo. Esto significaba que el cliente participaba del proceso de desarrollo antes de que éste comenzara y después de que se completara, pero no durante el proceso. El Manifiesto Agile describe a un cliente comprometido y que colabora durante todo el proceso de desarrollo, haciendo. Esto facilita mucho el desarrollo para satisfacer sus necesidades del cliente. Los métodos Agile pueden incluir al cliente a intervalos para demostraciones periódicas, pero un proyecto sencillamente podría tener un usuario final como una parte diaria del equipo y asistir a todas las reuniones, garantizando que el producto satisfaga las necesidades empresariales del cliente.
4. Responder al cambio por encima de seguir un plan
El desarrollo de software tradicional consideraba el cambio como un gasto, por lo que debía evitarse. La intención era desarrollar planes detallados y elaborados, con un conjunto definido de funciones y con todo, generalmente, teniendo una prioridad tan alta como todo lo demás, y con una gran cantidad de dependencias en la entrega en un orden determinado para que el equipo pueda trabajar en la siguiente pieza del rompecabezas.
Con Agile, la brevedad de una iteración significa que las prioridades pueden cambiarse de la iteración a iteración y pueden agregarse nuevas funciones en la siguiente iteración. La visión de Agile es que los cambios siempre mejoran un proyecto; los cambios aportan un valor adicional.
Tal vez nada ilustre mejor el enfoque positivo de Agile para el cambio que el concepto de adaptación del método, definido en un método de desarrollo de sistemas de información Agile en uso como: "Un proceso o una capacidad en los que los agentes humanos determinan un enfoque de desarrollo del sistema para una situación específica del proyecto a través de cambios receptivos e interacciones dinámicas entre contextos, intenciones y fragmentos de métodos".Las metodologías Agile permiten al equipo Agile modificar el proceso y hacerlo que se ajuste al equipo, en lugar de que sea al revés.
Los Doce Principios del Manifiesto Agile
Los Doce Principios son los principios rectores de las metodologías que se incluyen bajo el título "El movimiento Agile". Describen una cultura en la que el cambio es bienvenido y el trabajo se enfoca en el cliente. También demuestran la intención del movimiento, tal como la describe Alistair Cockburn, uno de los signatarios del Manifiesto Agile, que es alinear el desarrollo con las necesidades del negocio.
Los Doce Principios del desarrollo Agile incluyen:
- Satisfacción del cliente a través de la entrega temprana y continua de software: los clientes son más felices cuando reciben software de trabajo a intervalos regulares, en lugar de esperar períodos prolongados entre las versiones.
- Adaptarse a los cambios en los requisitos a lo largo del proceso de desarrollo: la capacidad de evitar retrasos cuando cambia un requisito o una solicitud de funciones.
- Entrega frecuente de software de trabajo: Scrum se adapta a este principio, ya que el equipo trabaja en sprints de software o iteraciones que garantizan la entrega regular de software funcional.
- Colaboración entre las partes interesadas del negocio y los desarrolladores a lo largo del proyecto : se toman mejores decisiones cuando el negocio y el equipo técnico están alineados.
- Apoyar, confiar y motivar a las personas involucradas: es más probable que los equipos motivados entreguen su mejor trabajo que los equipos insatisfechos.
- Permitir las interacciones cara a cara: la comunicación tiene más éxito cuando los equipos de desarrollo están ubicados en el mismo lugar.
- El software funcional es la medida principal del progreso: entregar software funcional al cliente es el factor final que mide el progreso.
- Procesos Agile para respaldar un ritmo de desarrollo coherente: los equipos establecen una velocidad repetible y mantenible a la que pueden entregar software funcional, y lo repiten con cada publicación.
- La atención a los detalles técnicos y al diseño mejoran la agilidad : las habilidades adecuadas y un buen diseño garantizan que el equipo pueda mantener el ritmo, mejorar constantemente el producto y mantener el cambio.
- Simplicidad: desarrolle lo suficiente para hacer el trabajo en este momento.
- Los equipos autorganizados fomentan grandes arquitecturas, requisitos y diseños: miembros del equipo calificados y motivados que tienen poder de toma de decisiones, se apoderan, se comunican con regularidad con otros miembros del equipo y comparten ideas que ofrecen productos de calidad.
- Reflexiones regulares sobre cómo ser más efectivos : la mejora personal, la mejora de procesos, el avance de las habilidades y las técnicas ayudan a los miembros del equipo a trabajar de manera más eficiente.
La intención de Agile es alinear el desarrollo con las necesidades del negocio, y el éxito de Agile es evidente. Los proyectos Agile se centran en el cliente y fomentan la orientación y la participación de los clientes. Como resultado, Agile ha crecido hasta convertirse en una visión general del desarrollo de software en toda la industria del software y una industria por sí misma.
Utilice Smartsheet para empezar con Agile
Smartsheet es una herramienta de gestión de proyectos y tareas basada en hojas de cálculo con sólidas funciones de colaboración y comunicación que son fundamentales para la gestión de proyectos Agile. Puede realizar actualizaciones en tiempo real y alertar a su equipo sobre los nuevos cambios, y compartir su plan con las partes interesadas internas y externas para aumentar la transparencia y mantener a todos en sintonía.
Dado que Smartsheet está basado en la nube, puede realizar un seguimiento de los requisitos del proyecto, acceder a documentos, crear cronogramas y enviar alertas desde prácticamente cualquier lugar. Elija entre una amplia gama de vistas inteligentes (cuadrícula, calendario, Gantt, paneles) para gestionar los proyectos de la manera que desee. Además, gracias a nuestra vista más nueva, la Vista de tarjeta, los equipos disponen de una forma más visual de trabajar, comunicarse y colaborar en Smartsheet. La Vista de tarjeta le permite centrar la atención con tarjetas enriquecidas, ofrecer perspectiva con vistas flexibles y priorizar y ajustar el trabajo de manera más visual. Ejecute las tareas y cambie el estado del trabajo arrastrando y soltando las tarjetas en carriles para compartir inmediatamente los cambios con todo el equipo.