Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Manifiesto ágil
El manifiesto ágil surgió en una reunión realizada por expertos del área de desarrollo de
software en febrero del 2001 con el motivo de mejorar las técnicas y procesos que se
utilizaban para el desarrollo de software ya que las metodologías tradicionales resultaban
muy rígidas y dependientes de procesos definidos previos al comienzo del proyecto.
Como resultado de esta reunión se definieron los 4 postulados conocidos como Manifiesto
Ágil
Individuos e interacciones sobre procesos y herramientas
En las metodologías tradicionales se suele armar el entorno de trabajo primero para que
luego el equipo de trabajo se adapte a trabajar en él. Esto por lo general no es mejor
opción, en las metodologías ágiles se intenta crear el equipo de trabajo y que este arme
sus procesos según sus necesidades.
Esto se debe a que se entiende que las personas son el factor más importante a la hora de
realizar un proyecto de software y que construir un buen equipo de trabajo es más
importante que los procesos rígidos.
Software funcionando sobre documentación extensiva
La idea de esta consigna es no realizar documentación a menos que sea muy necesaria
para su funcionamiento o para la toma de decisiones.
La documentación extensiva no suele dar gran valor de forma directa para el cliente ni una
medida real de avance del proyecto.
Por este motivo se intenta crear solamente la documentación que sea necesaria y que ésta
sea corta y se centre en lo esencial.
Colaboración con el cliente sobre negociación contractual
La constante interacción y colaboración entre el cliente y el equipo es de vital
importancia para que se logren los objetivos del proyecto y de que estos estén lo más
alineados que sea posible a las expectativas, posiblemente cambiantes, de los cliente.
Respuesta ante el cambio sobre seguir un plan
En los proyectos de desarrollo, como también se da en otros casos, los entornos son muy
cambiantes (cambian los equipos, las tecnologías o los requisitos) por lo que tiene mayor
importancia la capacidad del equipo a adaptarse a estos cambios que la de seguir una
planificación estricta.
Infografía 2
Las metodologías ágiles tienen como punto fuerte la adaptación a cualquier cambio en
un proyecto para aumentar sus posibilidades de éxito.
RETROALIMENTACIÓN
Principio de pruebas: lo primero que se debe hacer es
establecer un período de pruebas de aceptación del
programa, en el cual se definirán las entradas y salidas del
sistema. Básicamente se define lo que debe hacer el
software desarrollado. Como si fuese una caja negra.
Planificación: el cliente (o su representante) escribirá sus
necesidades para definir concretamente las actividades que
el sistema debe realizar. En esta fase se creará un
documento que contendrá historias de usuario que forman
el plan de liberación, el cual define los tiempos de entrega
de la aplicación para poder recibir feedback por parte del
cliente.
Cliente in-situ: el cliente (o su representante) deberá
formar parte del equipo de desarrollo. Se le dará poder
para determinar los requisitos de la aplicación, definir la
funcionalidad y dar prioridad a determinadas cosas. Gracias
a esto, habrá una fuerte interacción con los programadores,
disminuyendo así el tiempo de comunicación y la cantidad
de documentación a redactar. El cliente estará con el
equipo durante todo el proceso de desarrollo del
proyecto.
Pair-programming: este punto junto con el anterior son los
más radicales de esta metodología. Consiste en escribir
código en parejas compartiendo una sola máquina.
Según los experimentos ya realizados sobre este método, se
producen mejores y más consistentes aplicaciones a igual o
menor coste.
Entendimiento compartido
Diseño simple: el mejor programa será aquel que cumpla
con los requisitos y sea más simple. Es importante
proporcionar un software que cubra las necesidades de un
cliente. Ni más ni menos.
Metáfora: expresa la visión evolutiva del proyecto y define
los objetivos del sistema mediante una historia.
Propiedad colectiva del código: el código tiene propiedad
compartida. Nadie es propietario de nada, ni siquiera de lo
que ha desarrollado. Todos los programadores son "dueños"
de todo el código. Según esta metodología, cuantos más
programadores haya trabajando en una parte de código,
menos errores tendrá.
Estándar de programación: define las reglas para escribir
y documentar código, además de cómo se comunican las
diferentes piezas de código desarrolladas por diferentes
equipos. El objetivo de esto es que parezca que el código ha
sido escrito por una única persona.