El Manifiesto Ágil fue firmado en 2001 y contempla alternativas a las metodologías tradicionales para el desarrollo de software.
Valores del Manifiesto Ágil
En el Manifiesto Ágil se plantean mejores formas para el desarrollo de software y se definen los siguientes principios:
Individuos e interacciones sobre procesos y herramientas. La forma como las personas que participan en el proceso de desarrollo interactúan entre sí (usuario final, cliente, desarrolladores, equipos de trabajo).
Software funcionando sobre documentación extensiva. El objetivo es que el cliente cuente con software funcionando y perciba un beneficio concreto frente a la inversión.
Colaboración con el cliente sobre negociación contractual. Es importante generar una relación de confianza con el cliente.
Respuesta ante el cambio sobre seguir un plan. Es fundamental ser receptivos al cambio para hacer los ajustes pertinentes y dar respuestas oportunas.
👆🏻 Esto quiere decir que, aunque se valora cada aspecto, las metodologías ágiles sugieren centrar la atención principalmente en aquellos que están resaltados en negrita.
12 principios ágiles
1. Satisfacción al cliente. La prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor.
2. Cambios. Los cambios son bienvenidos en cualquier etapa del proyecto. Los procesos ágiles aprovechan el cambio para adaptarse a las necesidades del negocio y para proporcionar ventaja competitiva al cliente.
3. Software funcional. Entrega de software funcional en un periodo corto (entre dos semanas y dos meses).
4. Colaboración. Los responsables del negocio y los desarrolladores trabajan juntos durante todo el proyecto. La colaboración facilita la comunicación del equipo de trabajo con el cliente y esto también beneficia al usuario final del producto.
5. Individuos motivados. El éxito de los proyectos está determinado, en gran medida, por individuos que se sienten motivados. Se debe garantizar un buen entorno de trabajo y dar al equipo independencia para tomar decisiones y ejecutar las actividades relacionadas con el proyecto.
6. Comunicación cara a cara. Es el método más eficiente y efectivo de comunicar información al equipo.
7. Progreso. El software funcionando es la principal medida de progreso.
8. Desarrollo sostenible. El ritmo de desarrollo debe ser constante a lo largo de las iteraciones.
9. Mejora continua. Está determinada por la excelencia técnica y el buen diseño a lo largo del proceso, en cada una de las iteraciones, el equipo puede identificar fácilmente qué hizo bien y qué puede mejorar.
10. Simplicidad. El arte de maximizar la cantidad de trabajo no realizado es esencial. Se deben contemplar requerimientos bien definidos y un alcance claro para aprovechar al máximo los resultados de las tareas ejecutadas.
11. Autoorganización. Las mejores arquitecturas, requisitos y diseños emergen de equipos autoorganizados.
12. Autoevaluación. El equipo tiene la capacidad de ajustar y perfeccionar su comportamiento.
Contribución creada con los aportes de: sebastianquiroz y Dadiana Milena López Vargas
Aportes 178
Preguntas 26
Ordenar por:
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
1. Satisfacción al cliente: Entrega de valor al cliente. 2. Cambios: Cambios son bienvenidos. Mientras mas rápido se acepten los cambios. 3. Software funcional: Software que pueda ser usado por el cliente y en periodos cortos de tiempo. 4. Colaboración: Como interactuas y te comunicas con el cliente. 5. Individuos motivados: Dar un buen entorno, independencia y autoridad de tomar sus propias decisiones. 6. Comunicación cara a cara: Método mas eficiente, estar con el cliente y leer su lenguaje corporal. 7. Progreso: El software funcionando es la medida principal de progreso. 8. Desarrollo sostenible: El desarrollo a lo largo del proceso sea constante en cada una de las iteraciones. 9. Mejora continua: Como son iterativas se puede ver que se hizo bien y que se puede mejorar para la próxima iteración. 10. Simplicidad: Priorizar y hacer el trabajo que esta bien definido en ese preciso momento. 11. Auto-organización: Que el equipo sea capas de tomar sus propias decisiones. 12. Auto-evaluación: Que el equipo sea capaz de ajustar y perfeccionar su comportamiento para mejorar.
1. Satisfacción al cliente: Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software
con valor.
2. Cambios: Aceptamos que los requisitos cambien, incluso en etapas
tardías del desarrollo. Los procesos Ágiles aprovechan
el cambio para proporcionar ventaja competitiva al
cliente.
3. Software funcional: Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al periodo de tiempo más corto posible.
4. Colaboradores: Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo
el proyecto.
5. Individuos motivados: Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que
necesitan, y confiarles la ejecución del trabajo.
6. Comunicación cara a cara: El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus
miembros es la conversación cara a cara.
7. Progreso: El software funcionando es la medida principal de
progreso.
8. Desarrollo sostenible: Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios
debemos ser capaces de mantener un ritmo constante
de forma indefinida.
9. Mejora continua: La atención continua a la excelencia técnica y al
buen diseño mejora la Agilidad.
10. Simplicidad: La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.
11. Auto-organización: Las mejores arquitecturas, requisitos y diseños
emergen de equipos auto-organizados.
12. Auto- aprendizaje: A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y
perfeccionar su comportamiento en consecuencia.
Os expongo mis apuntes con la intención de que resulten útiles ^^
Individuos e interacciones crean un producto / servicio en colaboración con el cliente que responde a una necesidad o demanda del cambio.
**Individuos e interacciones **sobre procesos y herramientas. Software funcionando sobre documentación extensiva. Colaboración con el cliente sobre negociación contractual. Respuesta ante el cambio sobre seguir un plan.
Satisfacción al cliente.
Entregas tempranas y continuas de software con valor.
Cambios
Los cambios son bienvenidos en cualquier etapa del proyecto.
Software funcional
Se entrega frecuentemente en periodos cortos de tiempo.
Colaboración
Negocio y desarrolladores / equipo trabajamos juntos.
Individuos motivados
Se deben dar un buen entorno y confianza al equipo de desarrollo.
Comunicación cara a cara
Es el método más eficiente y efectivo de comunicación con el equipo.
Progreso
El software funcional es la principal medida de progreso.
Desarrollo sostenible
El ritmo de desarrollo debe ser constante de forma indefinida.
Mejora continua
A través de excelencia técnica y buen diseño.
Simplicidad
El arte de maximizar la cantidad de trabajo no realizado es esencial.
Autoorganización
Las mejores arquitecturas, requisitos y diseños emergen de equipos autoorganizados.
12 Autoevaluación
El equipo es capaz de ajustar y perfeccionar su comportamiento.
Personalmente me encantó el principio de la simplicidad. Sobre todo en entornos de desarrollo rápido, muchas veces los desarrolladores se estresan pues desarrollan cosas que no terminan siendo utilizadas. Si solo desarrollamos aquellas cosas que hacen parte del plan del trabajo y están estructuradas adecuadamente, evitamos esa frustración y nos aseguramos de lograr los objetivos planteados.
Aquí esta el manifesto completo
Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A través de este trabajo hemos aprendido a valorar: Individuos e interacciones sobre procesos y herramientas Software funcionando sobre documentación extensiva Colaboración con el cliente sobre negociación contractual Respuesta ante el cambio sobre seguir un plan
Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda.
Los 12 principios son los siguientes:
Nuestra principal prioridad es satisfacer al cliente a través de la entrega temprana y continua de software con valor.
Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.
Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia al período de tiempo más corto posible.
Los responsables del negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto.
Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.
El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara.
El software funcionando es la medida principal de progreso.
Los procesos ágiles promueven el desarrollo sostenido. Los promotores, desarrolladores y usuarios debemos mantener un ritmo constante de forma indefinida.
La atención continua a la excelencia técnica y al buen diseño mejora la agilidad.
La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.
Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.
A intervalos regulares, el equipo reflexiona sobre cómo ser más efectivo para, a continuación, ajustar y perfeccionar su comportamiento en consecuencia.
Nuestro principal objetivo es que el cliente tenga software funcionando.
La forma en la que las personas participan en las interacciones de desarrollo y cómo interactúan entre sí, va a ser más valorado que el proceso y las herramientas.
Es muy importante tener una colaboración con el cliente día a día, para generar confianza.
Los 12 principios de Agile
1- Satisfacción al cliente, entregas tempranas y continuas que entreguen valor
2-Cambios, los cambios se aceptan rápidamente en cualquier proceso, ya que nos podremos adaptar rápidamente al entorno del negocio
3-Software funcional, aportamos valor con cada iteración, entregando funcionalidad en el software
4-Colaboración, como vamos estar en comunicación y trabajando con el cliente
5-Individuos motivados, es importante tener un equipo motivado, el equipo toma sus propias decisiones a partir del objetivo final
6-Comunicación cara a cara, es preferible comunicarse en persona, estar con el cliente
7-Progreso, la entrega del software funcional va a ser la medida de progreso
8-Desarrollo sostenible, el desarrollo a lo largo de las iteraciones sea constante
9-Mejora continua, aprender que hicimos bien y que podemos mejorar
10- Simplicidad, no empezar una tarea si no está bien definida
11- Autoorganización, el equipo decide por si mismo como hacer las cosas
12-Autoevaluación, el equipo busca como mejorar
Satisfacción al cliente: Entregas tempranas y continuas de software con valor. Entregas rápidas iteraciones rápidas. El cliente ve el valor del trabajo y el usuario se beneficia del feedback.
Cambios: Los cambios son bienvenidos en cualquier etapa del proyecto. El inicio o puede ser al final, entre más rápido aceptemos los cambios más rápido encajamos con el modelo de negocio.
Software funcional: Se entrega frecuentemente en periodos de tiempos cortos.
Colaboración: Negocio y desarrolladores trabajamos juntos. Colaboración con el cliente. Oración con el usuario que va usar el producto.
Individuos motivados: Se debe dar un buen entorno y confianza al equipo de desarrollo.
Comunicación cara a cara: Es el método más eficiente efectivo de comunicación con el equipo.
Progreso: El software funcional es la medida principal de progreso.
Desarrollo sostenible: El ritmo de desarrollo debe ser constante y de forma indefinida. Equipo de desarrollo debe integrar todo el tiempo para tener un producto cada vez mejor.
Mejora continua: A través de excelencia técnica y buen diseño. Metodologíaogí iterativas
Simplicidad: El arte de maximizar la cantidad de trabajo no realizado es esencial.
Autoorganización: Las mejores arquitecturas, requisitos y diseños emergen de equipos autoorganizados.
Evaluación: El equipo es capaz de ajustar y perfeccionar su comportamiento.
con todo respeto pero no comparto mucho ahora el segundo y el sexto principio del manifiesto ágil, debido a las siguientes razones:
los cambios siempre son bienvenidos pero no deberían ser tan tardíos después que se acordaron implementar unos requerimientos de tal manera, ¿se imaginan cambiar todo cuando todo está marchando muy bien o cuando se está terminando el proyecto?
con respecto a la comunicación cara a cara desde mi perspectiva veo que ahora es casi imposible de forma presencial hacerlo por la pandemia (incluso siguiendo las medidas de bioseguridad), entonces debemos adaptarnos utilizando nuevas tecnologías para realizar esta comunicación efectiva por medio de videoconferencias o videollamadas aprovechando las herramientas virtuales que tenemos en la actualidad sin importar el lugar ni el momento
Entendido y comprendido. Es muy importante comprender estos principios
Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros
Satisfacción al cliente: Entregas tempranas y continuas de software con valor.
Cambios: Los cambios son bienvenidos en cualquier parte del proyecto.
Software funcional: Se entrega frecuentemente en periodos de tiempos cortos.
Colaboración: Negocios y desarrolladores trabajamos juntos
Individuos motivados: se debe dar un buen entorno y confianza al equipo de desarrollo
Comunicación cara a cara: Es el método más eficiente y efectivo de comunicación con el equipo.
Progreso: El software funcionando es la medida principal del progreso.
Desarrollo sostenible: el ritmo de desarrollo debe ser constante de forma indefinida
Mejora continua: a través de la excelencia técnica y buen diseño
Simplicidad: el arte de maximizar la cantidad de trabajo no realizado es esencial
Autoorganizacion: las mejores arquitecturas, requisitos y diseño emergen de equipos autoorganizados.
Autoevaluacion: el equipo es capaz de ajustar y perfeccionar su comportamiento.
Se me hace posible que en un futuro a mediano plazo, el principio de “Comunicación cara a cara” va a evolucionar con algunas adecuaciones, agregando la comunicación remota, pero con algunas nuevas características. Quizás ya no será tan fácil esconder los shorts y las chanclas en un Zoom 😁
Con respecto al punto de comunicación cara a cara, quisiera pensar que puede estar abierto a que haya comunicación por vías remotas cuando hayan distancias largas o estas puedan hacerse con facilidades como homeoffice.
Humanizar en una era digital es lo más teso pero es el camino para mantener el enfoque que son las personas:
Individuos e interacciones sobre procesos y herramientas Software funcionando sobre documentación extensiva Colaboración con el cliente sobre negociación contractual Respuesta ante el cambio sobre seguir un plan
Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A través de este trabajo hemos
aprendido a valorar:
Individuos e interacciones sobre procesos y herramientas Software funcionando sobre documentación extensiva Colaboración con el cliente sobre negociación contractual Respuesta ante el cambio sobre seguir un plan
Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda.
La colaboraciòn con el cliente es la clave del manifiesto agil. Basicamente la interaccion entre los individuos (cliente y equipo scrum) es la base para entregar un software funcionando y que brinde satisfaccion a toda las partes involucradas, Ya lo que son procesos, documentos, burocracia queda en un segundo plano.
Principio 1: Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continuada de software con valor
Principio 2: Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.
Principio 3: Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia por periodos de tiempo lo más corto posibles.
Principio 4: Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto
Principio 5: Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.
Principio 6: El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara
Principio 7: El software funcionando es la principal medida progreso
Principio 8: Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.
Principio 9: La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad
Principio 10: La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.
Principio 11: Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.
Principio 12: A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.
Interesante porque cuando se habla de cambios se supone que no son los propios de la improvisación o el capricho. El principio de simplicidad llama a trabajar sobre lo definido y si hay un cambio sobre lo definido entonces es algo que debe valer la pena.
El agilismo está enfocado en las personas, sus interacciones, la autogestión, organización y el software funcional.
Las formas de trabajo tradicional están enfocadas en reuniones, procesos, documentación, responsables y dolientes
Principios agiles:
11. Autoorganizcion: Las mejores arquitecturas, requisistos y disenos emergen de equiposautoorganizados.
12. Autoevaluacion: El equipo es capaz de ajustar y perfeccionar su comportamiento.
Individuos e interacciones sobre procesos y herramientas, La forma de como las personas que participan en el proceso de desarrollo interactúan entre si, esto es mas valorado que cualquier proceso y herramienta.
Software funcionando sobre documentación extensiva, Nuestro principal objetivo es que el cliente tenga software funcionando y el pueda verlo y pueda utilizarlo y sentir que esta inversión de tiempo y dinero le de un beneficio, y esto valora mucho mas que cualquier manual grueso de documentación, al cliente le gusta ver el software primero y conocemos al usuario
Colaboración con el cliente sobre la negociación, Es muy importante tener esa colaboración en el día a día, lo mas rápido posible, comencemos a interactuar con el cliente, generemos la relación de confianza con el cliente.
Respuesta ante el cambio sobre seguir un plan, Es muy importante tener un plan-objetivo “ hacia donde vamos a ir”, pero sabemos que las cosas van cambiando con el tiempo, así que es importante ser receptivos al cambio y poderlo implementar.
Importante aclaración sobre los principios ágiles, no se trata de que lo que se indica luego de “sobre” desaparece del mapa; sino que debemos tener en cuenta las prioridades en cada punto
Principios
Se valora a individuos e interacciones, esto será más valorado que cualquier proceso o herramientas. El cliente debe ver el software funcionando, que valora más que cualquier manual o documentación. Es muy importante tener colaboración con el cliente, no estar en contra de el en cualquier punto. La respuesta ante al cambio sobre seguir un plan nos ayuda a reaccionar a los cambios en el proyecto para poder implementar.
Satisfacción al cliente: entregar cambios constantemente al cliente para que vea e ir agregando valor.
Cambios: son aceptas en cualquier momento del desarrollo, tenemos que adaptarnos al entorno.
Software funcional: si entregamos software funcional a tiempo, el cliente estará satisfecho.
Colaboración: con el cliente y con el equipo.
Individuos motivados: dejar que el equipo tome sus decisiones para que estén cómodo en el desarrollo.
Comunicación cara a cara: favorece hablar con el cliente cara a cara, y leer su lenguaje corporal, no por mensajes.
Progreso: el software funcional es la principal medida de progreso. Escribir mucho código no es avance, ver algo funcionando sí.
Desarrollo sostenible: el equipo debe entregar la misma cantidad de producto durante las iteraciones
Mejora continua: el equipo tendrá tiempo de aprender que hizo bien o mal, e ir mejorando por cada iteración del proyecto.
Simplicidad: maximizar el trabajo no realizado es esencial, únicamente vamos a trabajar en las cosas que están bien definidas.
Autoorganización: el equipo debe decidir por sí mismo.
Autoevaluación: el equipo debe poder autoevaluarse para perfeccionar su comportamiento.
Una lección importante que nos dejó la pandemia y que, concuerda además con uno de los principios de las metodologías de desarrollo ágiles es la “necesidad de mantener los Individuos motivados”; no solo porque impulsa la faceta propositiva de cada individuo sino porque genera en el entorno de trabajo procesos mas sostenibles y mayor coordinación para el cumplimiento de los requerimientos o metas planteadas.
Comparto una imagen en la que se observan actitudes y aptitudes que incentivan este principio de la metodología.
Para la parte de cambios yo soy una persona que le gusta apegarse a un plan pero no le gutan lo cambios. Cuando conocí las metodologias ágiles, el profesor tenia la siguiente frase:
Un avión cambia su plan de vuelo, más de 1000 durante el viaje.
Y entonces entendi que por eso mis planes no siempre funcionaban porque no se adaptaban al cambio.
Importantes manifiestos, me gustaría encontrar la fórmula para controlar la “deuda técnica” que por liberar productos funcionales que cumplen con lo esperado por usuario no hemos visto algunos riesgos tecnológicos internos que pueden atentar el cronograma agil…Sin embargo retomando una idea que se comentó en la primera clase “la experiencia perfeccionará en el tiempo los productos entregados” . Entonces las primeras iniciativas estarán con algunos pormenores mejorando con las siguientes experiencias.
Les comparto un documento oficial que encontré donde esta el Manifiesto completo https://agilemanifesto.org/
De esta página puedo resaltar lo siguiente:
El manifiesto fue la respuesta una necesidad por enfocar más los esfuerzos en el desarrollo y funcionamiento del software que en la extenuante documentación y unificar los principios de diferentes metodologías tales como SCRUM, Extreme Programming y otras.
Se enfoca en:
Calidad: "Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor…"
Mejora continua: "A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia."
Autonomía: “Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.”
Definitivamente, mucho mas fluido, rapido y efectivo, la segunda modalidad del lanza,iento de monedas, la primera es mas lenta, y no se estructura tan bien, como la primera.
Satisfacción al cliente. La prioridad es satisfacer al cliente mediante la entrega temprana y continua de software con valor.
Cambios. Los cambios son bienvenidos en cualquier etapa del proyecto. Los procesos ágiles aprovechan el cambio para adaptarse a las necesidades del negocio y para proporcionar ventaja competitiva al cliente.
Software funcional. Entrega de software funcional en un periodo corto (entre dos semanas y dos meses).
Colaboración. Los responsables del negocio y los desarrolladores trabajan juntos durante todo el proyecto. La colaboración facilita la comunicación del equipo de trabajo con el cliente y esto también beneficia al usuario final del producto.
Individuos motivados. El éxito de los proyectos está determinado, en gran medida, por individuos que se sienten motivados. Se debe garantizar un buen entorno de trabajo y dar al equipo independencia para tomar decisiones y ejecutar las actividades relacionadas con el proyecto.
Comunicación cara a cara. Es el método más eficiente y efectivo de comunicar información al equipo.
Progreso. El software funcionando es la principal medida de progreso.
Desarrollo sostenible. El ritmo de desarrollo debe ser constante a lo largo de las iteraciones.
Mejora continua. Está determinada por la excelencia técnica y el buen diseño a lo largo del proceso, en cada una de las iteraciones, el equipo puede identificar fácilmente qué hizo bien y qué puede mejorar.
Simplicidad. El arte de maximizar la cantidad de trabajo no realizado es esencial. Se deben contemplar requerimientos bien definidos y un alcance claro para aprovechar al máximo los resultados de las tareas ejecutadas.
Autoorganización. Las mejores arquitecturas, requisitos y diseños emergen de equipos autoorganizados.
Autoevaluación. El equipo tiene la capacidad de ajustar y perfeccionar su comportamiento.
Me gusta el enfoque humano que tiene scrum es algo que siempre tenemos que priorizar sobre cualquier cosa, como bien sabemos nuestros equipos de trabajo/entornos/clientes lo conforman personas sin ello no hay trabajo 😉
Para mi el manifiesto lo que busca es volver a humanizar los procesos sistemáticos que se habían mecanizado durante años. Es decir, que los trabajos se hacen de forma tan robótica y siguiendo patrones preestablecidos que limitan en gran medida la capacidad del ser humano. Ahora aplicando las metodologías ágiles se logra una mejor interacción y colaboración con el cliente que desemboca en un software funcional que ha cambiado durante su desarrollo en respuesta a las diversas adversidades que salieron en el camino
Estamos descubriendo formas mejores de desarrollar software tanto por nuestra propia experiencia como ayudando a terceros. A través de este trabajo hemos aprendido a valorar:
Individuos e interacciones sobre procesos y herramientas
**++Software ++**funcionando sobre documentación extensiva
**++Colaboración ++**con el cliente sobre negociación contractual
**++Respuesta ++**ante el cambio sobre seguir un plan
Esto es, aunque valoramos los elementos de la derecha, valoramos más los de la izquierda.
Me quedo sonando la parte del desarrollo ágil que dice Al cliente le interesa ver el software funcionando, ya después con suerte vera la documentación, pues es cierto, con los proyectos que he manejado lo ultimo que miran es la documentación, pues si el software funciona no voltean ni haberla. Es mas ni la piden (pero igual hay que hacerla)
la pandemia hizo reevaluar muchas cosas.
y Scrum va a ser una de ellas , es importante que se incluya el trabajo remoto como un pilar fundamental en el framework.
Me está sorprendiendo tomar este curso, en realidad le di play para escucharlo mientras hago mi trabajo, pero en realidad está como para darle más atención
Me perece increíble que estas metodologías se centren en el individuo tanto a nivel de equipo, escuchando a cada integrante y dándoles libertad, como en la interacción con el cliente, poniéndolo en el centro del proceso de ideación y diseño. Con esto reduces drásticamente las probabilidades de que se genere retrabajo.
Está más qué perfecto para desarrollar esto en un ambiente laboral, desgraciadamente no se acerca a algo así, pero es genial poder saberlo para buscar estos métodos.
Individuos e interacciones > Procesos y herramientas Software funcionando > Documentación extensiva Colaboración con cliente > Negociación contractual Respuesta ante el cambio > Seguir un plan
Entregar rápido pero funcionando correctamente, no creo que por la presión de querer mostrar algo al cliente, le entregamos un modulo que funcione a medias y se lleve una mala impresión de los profesionales.
Como se suplanta el cara a cara con teletrabajo, bastará con video llamada cierto?
¿Cuáles son los principios de SCRUM?
Control empírico de procesos.
Auto-organización.
Colaboración.
Prioritización basada en valor.
Bloque de tiempo asignado.
Desarrollo interativo.
Los principios basicos de la metodologia AGILE consiste en:
1. software funcionando, nos da tranquilidad que se va avanzando
2. Colaboracion, poder aceptar cambios a las nuevas necesidades.
3. Equipos motivados, parte de la independencia que se otorga al equipo
4. Comunicación cara a cara, es eficiente, efectiva para entender el equipo
5. Progreso, el progreso se mide con el software funcionando
6. Desarrollo sostenible, el avance entre las iteraciones sea constante
Doce (12) principios de Agile:
1- SATISFACCION AL CLIENTE: Entregas tempranas y continuas de software con valor, le van a dar satisfacción al cliente. Mostrar al cliente avances periódicos con mejoras y nuevas funcionalidades que le sirven.
2- CAMBIOS: Los cambios son bienvenidos en cualquier etapa del proyecto, pueden ser al inicio, durante o al final del proyecto. Es importante entregar rápido para que el cliente sepa que se va avanzando y se va poder adaptar a los cambios que plantean las necesidades del negocio.
3- SOFTWARE FUNCIONAL: Se entrega frecuentemente en periodo de tiempos cortos, vamos a tener un cliente satisfecho.
4- COLABORACION: Negocio y desarrolladores trabajando juntos. Definir como vas a colaborar con tu cliente, como se va a interactuar con el cliente, como se va a estar en comunicación con el cliente, como el equipo de trabajo va a colaborar con el cliente y con el usuario final del producto.
5- INDIVIDUOS MOTIVADOS: Es importante tener a un equipo de trabajo motivado, dándole la independencia y la autoridad necesaria para tomar sus propias decisiones. Se le explica al equipo cual es el objetivo final del proyecto ó producto y el equipo decide cual es la mejor forma técnica de implementar, son los expertos. Se debe dar un buen entorno y confianza al equipo de desarrollo.
6- COMUNICACIÓN CARA A CARA: Se cuenta con gran cantidad de medios de comunicación (teléfono, video llamada, mensajes de texto, correo electrónico), siendo todas efectivas, no obstante , estar con el cliente cara a cara nos permite interpretar al cliente, ver que nos quiere decir, que no nos quiere decir, interacción de humano a humano. Es el método más eficiente y efectivo de comunicación con el equipo.
7- PROGRESO: El software funcionando es la medida principal de progreso. El cliente quiere ver algo funcionando.
8- DESARROLLO SOSTENIBLE: El ritmo de desarrollo a lo largo de todo el proceso y todas las iteraciones debe ser constante de forma indefinida, que el equipo pueda entregar la misma cantidad de producto a lo largo de estas iteraciones.
9- MEJORA CONTINUA: A través de excelencia técnica y buen diseño. A lo largo del proceso el equipo va a conocer que se hizo bien y que se puede mejorar.
10- SIMPLICIDAD: El arte de maximizar la cantidad de trabajo no realizado es esencial. Únicamente vamos a trabajar las cosas que se encuentran bien definidas en ese preciso instante.
11- AUTOORGANIZACION: Las mejores arquitecturas, requisitos y diseños, emergen de equipos autoorganizados. Equipo pueda decidir por sí mismo.
12- AUTOEVALUCION: El equipo es capaz de mejorar y autoajustar su comportamiento a lo largo de todo el proceso.
Seguimos estos principios:
Nuestra mayor prioridad es satisfacer al cliente
mediante la entrega temprana y continua de software
con valor.
Aceptamos que los requisitos cambien, incluso en etapas
tardías del desarrollo. Los procesos Ágiles aprovechan
el cambio para proporcionar ventaja competitiva al
cliente.
Entregamos software funcional frecuentemente, entre dos
semanas y dos meses, con preferencia al periodo de
tiempo más corto posible.
Los responsables de negocio y los desarrolladores
trabajamos juntos de forma cotidiana durante todo
el proyecto.
Los proyectos se desarrollan en torno a individuos
motivados. Hay que darles el entorno y el apoyo que
necesitan, y confiarles la ejecución del trabajo.
El método más eficiente y efectivo de comunicar
información al equipo de desarrollo y entre sus
miembros es la conversación cara a cara.
El software funcionando es la medida principal de
progreso.
Los procesos Ágiles promueven el desarrollo
sostenible. Los promotores, desarrolladores y usuarios
debemos ser capaces de mantener un ritmo constante
de forma indefinida.
La atención continua a la excelencia técnica y al
buen diseño mejora la Agilidad.
La simplicidad, o el arte de maximizar la cantidad de
trabajo no realizado, es esencial.
Las mejores arquitecturas, requisitos y diseños
emergen de equipos auto-organizados.
A intervalos regulares el equipo reflexiona sobre
cómo ser más efectivo para a continuación ajustar y
perfeccionar su comportamiento en consecuencia.
En la medida de lo posible que el equipo de desarrollo entienda completamente el resultado esperado por el cliente, podrá entregar soluciones simples que permitan satisfacer en primera instancia el requerimiento. Centrarse en el ¿Porqué? del requerimiento le da al equipo un objetivo en lugar de una especificación.
De igual manera, permitira que el equipo negocie cómo se resuelve ese problema, ya que a menudo hay diferentes formas de lograr un resultado, identificando entre una de esas formas la que conlleva menor cantidad de trabajo posible para lograr el resultado.
En pocas palabras, una solución simple a un requerimiento puede traducirse en menos lineas de código, menor posibilidad de código erroneo, mayor facilidad al momento de identificar problemas.
En la parte de Software funcional sobre documentación extensiva. Es importante mencionar que muchas personas piensan que porque sea metodoloia ágil no se tiene que documentar, sin embargo esto es un error, si se tiene que documentar para que tambien lo usuarios sepan como operar el software que les entregemos.
Hay una frase que dice
Si no esta documentado no esta hecho.
Por más intuitivo que hagamos el software siempre sera necesario la documentación para futuras consultas.
Satisfacción al cliente: Entregar rápido para que él cliente vea que se esta avanzando.
Cambios: Pueden ser al inicio o al final, pero entre más rápido nos adaptamos a los cambios más rápido nos adaptamos a las nuevas necesidades del entorno de negocio.
Software funcional: Si entregamos software funcional en cortos periodos de tiempo tenemos al cliente satisfecho
Colaboración: Como se colabora, como se comunica con el cliente y con el usuario final del producto
Individuos motivados: Mantener al equipo motivado, dándole la confianza y la autoridad de tomar sus propias decisiones, dejar que ellos decidan cual es la mejor forma de implementar no decirles como hacer las cosas ellos son los expertos programando
Comunicación cara a cara: Independientemente del modo en con el nos comuniquemos es importante estar frente a frente con el cliente para de esa forma leer su lenguaje corporal y saber que quiere y que no quiere decirnos
Progreso: Sí lo que estoy haciendo no lleva a algo funcional no estoy haciendo nada para el cliente
Desarrollo sostenible: Que se pueda entregar la misma cantidad de producto a lo largo de todas las iteraciones
Mejora continua: Con las iteraciones mostrar que se hizo bien para seguir haciéndolo y lo que se hizo mal mejorarlo
Simplicidad: Se debe trabajar en las cosas se tienen bien definida en ese momento y lo que no sabemos no lo trabajamos, porque no sabemos como puede cambiar el negocio
Autoorganización: Dejar que el equipo pueda decidir por si mismo como trabajar y como hacer las cosas
Autoevaluación: autoevaluarse para seguir mejorando
Los 12 principios ágiles son un conjunto de valores y prácticas que se han desarrollado para guiar el desarrollo de software y otros trabajos en el marco del enfoque ágil. Estos principios se basan en los valores del Manifiesto Ágil, que se centra en la entrega de valor y la flexibilidad a través de la entrega continua de trabajo de alta calidad.
Los 12 principios ágiles son:
• Satisfacer al cliente a través de la entrega temprana y continua de software valioso.
• Dar la bienvenida a los cambios de requisitos, incluso en etapas avanzadas del desarrollo.
• Entregar software funcionando con frecuencia, con un período de entrega de preferiblemente entre una semana y un mes.
• Colaborar con el cliente de manera activa y transparente.
• Construir proyectos alrededor de individuos motivados y brindarles el ambiente y el apoyo que necesitan.
• Utilizar la medida más simple posible para satisfacer los requisitos.
• Diseñar a través de la reflexión y el trabajo en equipo.
• Mantener una comunicación abierta y efectiva con todos los interesados.
• Medir el progreso en términos de trabajo completado.
• Mantener un enfoque en la excelencia técnica y en las buenas prácticas de desarrollo.
• Mantener un enfoque en la satisfacción del trabajador y en la motivación.
• Evaluar regularmente el proceso y hacer ajustes según sea necesario.
Colaboración con el cliente sobre negociación contractual. Es importante generar una relación de confianza con el cliente.
¿ Que pasa cuando los clientes ven al proveedor como un agente externo y se centran en el contrato o viceversa?.
En la realidad se requiere mucha madurez de parte de los clientes o de los proveedores para llegar a tener una relación de confianza de lo contrario es y será siempre un campo de batalla y ninguna metodología o marco lo resuelve.
La colaboración debe estar lo más rápido posible, la idea de estas iteraciones cortas es evaluar lo que se está desarrollando y poder ajustarse al cambio o en su defecto corregir lo que se está haciendo.
MANIFIESTO ÁGIL:
Estamos descubriendo formas eficientes para gestionar proyectos, individuos e interacciones con el cliente y respuesta al cambio sobre un plan
12 principios:
1. Satisfacción al cliente: entregas temprana de avance generando valor y satisfacción: se recomiendan 2 semanas de tiempo con software de valor
2. Cambios: se deben aceptar los cambios en entapas tempranas o lejanas del desarrollo para poderse adaptar al negocio o al proyecto
3. Software funcional: entregar entregas frecuentes del software en tiempos cortos para un cliente satisfecho
4. Colaboración: como se interactúa y se comunica con el cliente para un trabajo en conjunto con todos los actores: cliente, equipo de trabajo y usuario final del producto
5. Individuos motivados: tener un buen entorno y de confianza motivando al equipo de trabajo con independencia para toma de decisiones
6. Comunicación cara a cara: es la comunicación más efectiva para las metodologías ágiles. Es la forma de estar con el cliente y entender muy bien el producto o el cliente
7. Progreso: el software funcional es la forma de medir El Progreso. El cliente quiere ver las aplicaciones funcionando
8. Desarrollo sostenible: el ritmo de desarrollo debe ser constante de manera indefinida
9. Mejora continua: recurrente excelencia y buen diseño
10. Simplicidad: el arte de maximizar la cantidad de trabajo no realizado es esencial
11.
: el equipo puede decidir por si mismos cómo trabajar y quien hace las cosas
Autoevaluación: la capacidad del equipo de perfeccionar sus procesos así mismo
MANIFIESTO ÁGIL:
Estamos descubriendo formas eficientes para gestionar proyectos, individuos e interacciones con el cliente y respuesta al cambio sobre un plan
12 principios:
1. Satisfacción al cliente: entregas temprana de avance generando valor y satisfacción: se recomiendan 2 semanas de tiempo con software de valor
2. Cambios: se deben aceptar los cambios en entapas tempranas o lejanas del desarrollo para poderse adaptar al negocio o al proyecto
3. Software funcional: entregar entregas frecuentes del software en tiempos cortos para un cliente satisfecho
4. Colaboración: como se interactúa y se comunica con el cliente para un trabajo en conjunto con todos los actores: cliente, equipo de trabajo y usuario final del producto
5. Individuos motivados: tener un buen entorno y de confianza motivando al equipo de trabajo con independencia para toma de decisiones
6. Comunicación cara a cara: es la comunicación más efectiva para las metodologías ágiles. Es la forma de estar con el cliente y entender muy bien el producto o el cliente
7. Progreso: el software funcional es la forma de medir El Progreso. El cliente quiere ver las aplicaciones funcionando
8. Desarrollo sostenible: el ritmo de desarrollo debe ser constante de manera indefinida
9. Mejora continua: recurrente excelencia y buen diseño
10. Simplicidad: el arte de maximizar la cantidad de trabajo no realizado es esencial
11. Autoorganización: el equipo puede decidir por si mismos cómo trabajar y quien hace las cosas
Autoevaluación: la capacidad del equipo de perfeccionar sus procesos así mism
Me parece mal que diga el no tener en cuenta lo del contrato ya que si no se tiene algo concreto la entrega del proyecto a medida que el cliente comience agregar funciones al proyecto y eso implica mas tiempo mas horas de trabajo y crece el presupuesto
RESUMEN: Hay varios valores fundamentales que tiene la metodología Agile, en el que se destaca la independencia de las decisiones que puede tomar el equipo de trabajo para desarrollar los productos de forma ágil y continua. Se valora la entrega continúa y funcional de software para que el cliente pueda ver resultados funcionales en cada iteración del desarrollo del producto a lo largo del tiempo.
Principio 1: Nuestra mayor prioridad es satisfacer al cliente mediante la entrega temprana y continuada de software con valor
Principio 2: Aceptamos que los requisitos cambien, incluso en etapas tardías del desarrollo. Los procesos Ágiles aprovechan el cambio para proporcionar ventaja competitiva al cliente.
Principio 3: Entregamos software funcional frecuentemente, entre dos semanas y dos meses, con preferencia por periodos de tiempo lo más corto posibles.
Principio 4: Los responsables de negocio y los desarrolladores trabajamos juntos de forma cotidiana durante todo el proyecto
Principio 5: Los proyectos se desarrollan en torno a individuos motivados. Hay que darles el entorno y el apoyo que necesitan, y confiarles la ejecución del trabajo.
Principio 6: El método más eficiente y efectivo de comunicar información al equipo de desarrollo y entre sus miembros es la conversación cara a cara
Principio 7: El software funcionando es la principal medida progreso
Principio 8: Los procesos Ágiles promueven el desarrollo sostenible. Los promotores, desarrolladores y usuarios debemos ser capaces de mantener un ritmo constante de forma indefinida.
Principio 9: La atención continua a la excelencia técnica y al buen diseño mejora la Agilidad
Principio 10: La simplicidad, o el arte de maximizar la cantidad de trabajo no realizado, es esencial.
Principio 11: Las mejores arquitecturas, requisitos y diseños emergen de equipos auto-organizados.
Principio 12: A intervalos regulares el equipo reflexiona sobre cómo ser más efectivo para a continuación ajustar y perfeccionar su comportamiento en consecuencia.
Satisfacción al cliente: entregas tempranas y continuas con software de valor.
Cambios: los cambios son aceptados en cualquier etapa del proyecto.
Software funcional: Se entrega frecuentemente en periodos de tiempo cortos.
Colaboración: Negocio y desarrolladores trabajan juntos.
individuos motivados: se debe dar un buen entorno de confianza al equipo de desarrollo. Permitiéndoles la toma de decisiones para definir la mejor forma de trabajar.
Comunicación cara a cara: Es el método más eficiente y efectivo de comunicación con el equipo. (interacción de humano a humano.).
Progreso: Es el software funcionando es la medida principal de progreso.
Desarrollo sostenible: El ritmo de desarrollo debe ser constante de forma definida.
Mejora continua: A través de la excelencia técnica y buen diseño.
Simplicidad: El arte de maximizar la cantidad de trabajo no realizado es esencial. (Llevar a cabo solo lo que está bien definido por ambas partes).
Autoorganización: Las mejores arquitecturas, requisitos y diseño emergen de equipos autoorganizados.
Autoevaluación: El equipo es capaz de ajustar y perfeccionar su comportamiento.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?
o inicia sesión.