Agilidad una forma de gestión y ejecución de proyectos software
Quiero daros la
bienvenida a mi blog con este primer artículo sobre un asunto que
está muy en boga, la agilidad.
Hace mucho mucho
tiempo estoy involucrada en el mundo de desarrollo de software. De la
utilidad del software en nuestros días nadie duda, no tenemos más
que mirar a nuestro alrededor para darnos cuenta que el software
forma parte de nuestras vidas. Hay software en la mayoría de los
aparatos que utilizamos, en nuestros coches, en nuestros teléfonos.
Los organismos públicos ponen software a nuestra disposición para
ayudarnos a hacer la declaración de la renta, hacer reclamaciones,
obtener nuestra vida laboral y otras muchas cosas más. También
otras organizaciones construyen software para nosotros: los bancos,
los hospitales, los colegios, las tiendas, los operadores
telefónicos, etc. Por todo esto, disponer de formas de trabajo que
ayuden a construir software de calidad es fundamental.
En 1968 se terminó
de impulsar una nueva ingeniería, la del Software. A partir de ese
momento, empezó una profesión cuyos entresijos no han parado de
cambiar. El motivo de tanto cambio es que en una nueva disciplina
como esta, hay mucho que equivocarse, aprender y rectificar. Y en
ello estamos.
En esta entrada
quiero hablaros de agilidad. Desde hace tres años estoy colaborando
con Estratecno
que tiene una larga tradición en el campo de la gestión de
proyectos y está especializada en métodos Ágiles. Cuando descubrí
en un curso de Estratecno el método Scrum de desarrollo de software,
pensé "¿Cómo no nos habíamos dado cuenta antes de todo
esto?". Hasta ese momento yo ya había aplicado buenas
prácticas, métodos frente a metodologías y metodologías ligeras
para el proceso de desarrollo. La agilidad para mí vino a poner la
guinda del pastel.
La agilidad tiene
el espíritu adecuado para conseguir que un equipo de personas que
está construyendo un producto software, sean capaces de obtener un
producto de calidad y que realmente se adapta a las necesidades del
cliente/usuario. Las personas y el equipo que forman tiene una enorme
importancia. Desarrollar software a menudo es difícil e incluso muy
difícil y esto da muchos quebraderos de cabeza. No es sencillo para
un desarrollador estar siempre en las mejores condiciones físicas,
mentales y anímicas que le permitan idear y elaborar algoritmos bien
diseñados, operativos y fáciles de mantener. Es un trabajo
meticuloso y en el que es importante estar al día en muchos
aspectos. Por todo esto, cuando se desarrolla software es importante
no sentirse sólo, es decir trabajar en equipo. Esto el método ágil
Scrum lo potencia al máximo.
Llevo comprobando
estos últimos tres años que la agilidad a ayudado a mejorar muchos
departamentos de tecnologías de la información. Desde que en 1995
Ken Schwaber formalizase Scrum para la industria de desarrollo de
software, son muchas las grandes compañías que han adoptado el
método. Frente a los métodos predictivos, Scrum aporta grandes
novedades. Como oí decir a Rafael Sabbagh de Scrum Alliance en una
formación en Madrid, los promotores de un producto software a menudo
no saben lo que quieren, aunque crean que sí lo saben. Realmente los
requisitos de usuario no son más que una hipótesis de lo que
quieren. Partiendo de esta premisa los métodos predictivos no pueden
funcionar bien y por eso está aquí Scrum, para mejorar la
ingeniería del software. No se trata de olvidar la historia
anterior, sino de mejorar la actual. Muchas grandes e importantes
organizaciones están haciendo uso de esta forma de trabajo y
beneficiándose de sus ventajas.
Os invito a que
profundicéis es este tema, por ejemplo de la mano de mi colega
Alexander Menzinsky http://scrum.menzinsky.com/.
Hasta el próximo
artículo.
Marisa Afuera