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. Las personas y las interacciones antes que los procesos y las herramientas.
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. El software funcional antes que la documentación completa
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. La colaboración con los clientes antes que la negociación del contrato
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 a los cambios antes que seguir un plan.
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
Es fácil que las tareas se pierdan en la locura de su trabajo diario. Lo que necesita es una forma más óptima y visual de realizar un seguimiento y administrar las tareas.
Potencie a su equipo con la vista de tablero en Smartsheet, una solución de seguimiento de tareas fácil de usar que garantiza una priorización de tareas sin problemas, una visibilidad mejorada de los proyectos y una colaboración ágil sin esfuerzo.
Ya sea que administre proyectos, optimice las cargas de trabajo o realice un seguimiento de las tareas pendientes, la vista de tablero ayuda a eliminar las reuniones de estado innecesarias al permitir que los miembros del equipo realicen un seguimiento del progreso del proyecto, las tareas completadas y el próximo trabajo con tarjetas de tareas.
Descubra las tarjetas intuitivas para arrastrar y soltar, la colaboración en tiempo real y el anidamiento de tarjetas organizativas que impulsan a su organización a adaptarse y entregar con mayor eficacia.
Obtenga más información sobre la vista de tablero en Smartsheet.