En Febrero del 2001 un puñado de las más influyentes mentes de la ingenieria de software moderna se reunierón en un resort en Utah y discutierón durante 3 días la necesidad de adoptar mecanismos más ágiles para el desarrollo de software. 17 fuerón los signatarios originales de lo que hoy se conoce como el "Agile Manifesto". A esa reunión asistierón representantes de varias metodologias en uso al momento (DSDM, Scrum, XP, Desarrollo adaptivo, entre otras). Las conclusiones resultado de este "mind-meld" quedarón plasmadas en una declaración de principios que a la fecha establece la base para desarrollar software exitosamente de forma rápida y que da valor a los que pagan el software.
En Noviembre del 2007 y resultado de la imperiosa necesidad de arreglar un proyecto de desarrollo quebrado descubri Scrum [1]. De aplicar con un buen grado de exito la metodologia de Schwaber y Sutherland, nos vimos gradualmente necesitando más y mejores prácticas. Scrum nos enseño que el tradicional metodo de la cascada es una falacia que jamas debio ver visto la luz del día y menos aún haber sido impartida a millones de aprendices de programación. Tuvimos que aprender de nuestros fracasos.
Sin embargo, y los mismos creadores lo indican, Scrum solo ofrece un marco de trabajo que garantiza el exito de un proyecto de desarrollo de software (como si esto fuera poca cosa). Adicionalmente se necesitan de forma integral prácticas y disciplinas que nos ayuden a escribir mejor código, de más calidad y con menos "pulgas". Extreme Programming (XP) consolida estas prácticas, las documenta y las integra en una metodología que por si sola ofrece grandes beneficios para programadores y clientes por igual.
El estudio de estas prácticas ágiles me ha llevado a conocer partes de otras metodolologías que cuando se aplican de forma integral y en cualquier medida resultan en un cambio dramatico en las formas de hacer las cosas alrededor de la programación, un cambio que trae como consecuencia mayor productividad y calidad en el desarrollo y lo que es más importante: verdadero valor y respuesta ágil a las necesidades de los consumidores del software.
Los franceses acuñarón en 1976 el termino "Telematiqué" para referirse a la convergencia de las disciplinas relacionadas con la computación y las comunicaciones. Por otro lado la Informática se refiere a la disciplina que estudia el tratamiento automatizado de la información por medio de ordenadores y la mecamática se refiere al estudio de los fierros sobre los cuales se implementan las soluciones informaticas.
En este orden de ideas podemos entonces sugerir que la "Agilmática" es la disciplina que se encarga del estudio, desarrollo y promoción de prácticas y metodologías ágiles aplicadas al desarrollo de productos de software.
Alistair Cockburn sugiere que el desarrollo de software no es naturalmente una rama de la ingenieria y sugiere la necesidad de reemplazar el termino "Ingeniera de Software" [2].
En el idioma ingles se usa el termino "Agility" o "Agile software development" para referise al conjunto de metodos y prácticas ágiles, creo que podemos encontrar un término más apropiado. Asi entonces dejo a su consideración lo siguiente...
Agilmática: La disciplina de la informática que se encarga del desarrollo, estudio y promoción de prácticas y metodologías ágiles aplicadas de forma integral, profesional y sostenida al desarrollo exitoso de productos de software mediante una gestión iterativa del trabajo alrededor de ese desarrollo.
Mario Estrella
Aprendiz de Agilmática.
Referencias
1. Mike Cohn, 2005; Do_It_Yourself_Oct05 - StickyMinds.com
(http://www.mountaingoatsoftware.com/system/article/file/17/Do_It_Yourself_Oct05.pdf)
2. Cockburn, 2004; The end of software engineering and the start of economic-cooperative gaming
(http://www.comsis.fon.bg.ac.yu/ComSIS/Volume01/InvitedPapers/AlistairCockburn.htm)


