¿Qué es el desarrollo ágil? » SEI Blog
¿Qué es el desarrollo ágil?
Esta es una traducción del post What is Agile? » SEI Blog por Stephany Bellomo, Senior Member of the Technical Staff, Acquisition Support Program.
-------------------------------------------------------------------------------------------------
Si se hace la pregunta, "¿Qué es Ágil?" seguramente se obtendrán muchas respuestas diferentes. Esto se debe a que no existe una definición formal universalmente aceptada para Agile. Para hacer las cosas peor, se llevan a cabo debates acerca de lo DEBE SER el desarrollo Ágil de software. Cualquiera sea el caso, cuanso de lanza la pregunta, "¿Qué es Ágil?" la apuesta más segura es adherirse a lo que popularmente se acepta como Ágil, y la gente generalmente está de acuerdo en tres elementos clave de Ágile, que vistos en conjunto describen lo que es el método Ágil de desarrollo de software, así como el enfoque del desarrollo de software. En este post -el primero de una serie acerca de los métodos Ágiles - explico los fundamentos de los métodos Ágiles y cómo lo implementan los desarrolladores.
Los tres elementos de los métodos Ágiles son:
- El Manifiesto Ágil
- Los 12 principios Ágiles
- Los métodos Ágiles. Ej. Scrum, Extreme Programming (XP), etc.
El Manifiesto Ágil es es efectivamente la carta de la comunidad Ágil. Fue creado en el curso de un fin de semana en el 2001 por 17 líderes del pensamiento de software quienes discutieron de manera conjunta su frustación sobre los enfoques que prevalecían en el desarrollo de software. En una palabra, ellos sentían que se hacía mucho énfasis en el proceso de software y su documentación, minimizando la importancia del trabajo de desarrollo de software. El resultado de esta reunión fue la creación el Manifiesto Ágil, el cual fue firmado por todos estos líderes, y puesto en la web como una carta guía para joven comunidad Ágil. Los temas clave en el Manifiesto Ágil eran los individuos y las interacciones sobre los procesos y herramientas, software funcional sobre la documentación comprensiva, colaboración con el cliente sobre negociación de contratos, y respuesta al cambio sobre el seguimiento de un plan de trabajo. Los 12 Principios Ágiles fueron creados después del manifiesto continuando sobre la misma línea de ideales. Los principios cubren un amplio rango de tópicos y explican cómo los desarrolladores Ágiles deben reesponder en una variedad de circunstancias. Aquí están los primeros principios como una pequeña muestra:
- Nuestra prioridad más alta es satisfacer al cliente a través de un desarrollo de software valioso de manera temprana y continua.
- Los cambios de los requerimientos son bienvenidos, incluso de manera tardía durante el desarrollo. Los procesos Ágiles aprovechan el cambio como una ventaja competitiva del cliente.
- La gente de negocios y los desarrolladores deben trabajar juntos diariamente a través del proyecto.
El primer y segundo elemento son intencionalmente generales y vagos (¿Qué se debe esperar de los principios?). El tercer elemento, los métodos Ágiles, es donde las cosas se vuelven un poco más concretas. Hay muchos métodos ágiles y cada uno enfatiza aspectos diferentes de Agile. Por ejemplo, el método ágil Scrum tiene un énfasis fuerte en la administración de software (reuniones de equipo a diario y un ciclo de vida basado en el sprint). La idea es elegir los métodos que mejor se adapten a nuestras espectativas, por ejemplo: prácticas efectivas de lideréo en equipos pequeños, incremento de la eficiencia y reducir el desperdicio, y conductas de intregración continua y estrategias de pruebas. Una visión general de las metodologías comunes puede ser encontrada en www.versionone.com/Agile101/Methodologies.asp.
Esto concluye mi breve resumen de algunos elementos clave de Agile. Cerraré este post compartiendo una definición informal de Agile tomada del sitio web Agile Modeling. Me gusta esta definición porque de manera concisa encarna el espíritu del desarrollo de software Ágil:
Agile es un enfoque del desarrollo de software iterativo e incremental (evolutivo) que se lleva a cabo de manera altamente colaborativa por equipos autónomos y auto-organizados, con ceremonias "justo lo necesario", que produce soluciones de gran calidad, con un costeo efectivo y en un tiempo que cumple con las necesidades cambiantes de las partes interesadas
---------------------------------------------------------------------------------------------------------------------
Comentarios
Publicar un comentario