Gonzalo Romo Cancino

miércoles, 19 de agosto de 2009

Para Equipos Pequeños de Desarrollo de Software

Cada vez que viajo por Chile y en ocasiones al extranjero, ya sea por amor, estudios o por trabajo, aprovecho de ampliar mi punto de vista e interiorizarme acerca la situación en que esos lugares se encuentran con respecto a dos temas de mi interés, el Rugby y el Desarrollo de Software local. Para conocer el rugby lugareño trato de presenciar algún torneo, pero hay una experiencia que te impone la realidad rugbystica local sin piedad, que es entrenar con algún equipo oriundo, haaa recuerdo mi esfuerzo sobrehumano por terminar el entrenamiento sin desmayarme ni poner cara de cansancio en Argentina con un equipo de San Luis, y solo para que no digan que el chileno arrugó. Para hacerme un panorama y aprender del desarrollo de software local, es más simple, si voy por trabajo es muy probable que conozca gente que trabaje con la informática, si voy por estudio en plan de investigación agendo una entrevista con algún docente de la universidad del lugar, es sorprendente la buena disposición con que te cuentan sus experiencias.Reuniendo todas esas experiencias con la mía, es que he notado un patrón común en el inicio de las empresas de desarrollo por lo menos en Latinoamérica. (Seguro que muchos ya lo han notado) que es el que comparto a continuación.

En Latinoamérica la mayoría de las empresas de desarrollo empiezan con dos o tres integrantes, y generalmente comienzan como consecuencia de la adjudicación de algún proyecto para un cliente que es más que una empresa pequeña, pues se ha visto en la necesidad de apoyar sus procesos o parte de estos con alguna tecnología informática, pero no es lo suficientemente grande para pagar a una empresa desarrolladora consolidada y con todas las certificaciones habidas y por haber, por ende lo mas probable es que sea una empresa en crecimiento.

Como este también era el caso mío y de mi socio laboral de entonces, nos encontrábamos en una constante búsqueda de herramientas para mejorar la gestión de los proyectos que íbamos asumiendo en medio del caos. Para lograrlo investigamos casos de empresas de desarrollo cercanas, las distintas Metodologías de desarrollo y gestión de proyectos y como acomodarlas a nuestro contexto y nos planteamos un objetivo, que mas tarde sirviera de ayuda para nuestros compañeros (aún estaba en la universidad), Amigos y quien se encontrara en la misma situación que nosotros, este es:

"Integrar metodologías ágiles en el contexto de pequeños grupos de trabajo a cargo del desarrollo de productos de software en y para empresas en formación o crecimiento."

Para Cumplir este objetivo se debió:

Analizar las distintas Metodologías Ágiles, las características que las diferencian de las metodologías conocidas como tradicionales.

Establecer una selección de prácticas ágiles a utilizar en un equipo de trabajo pequeño y personalizarlas según el contexto.

Implementar la integración de prácticas ágiles seleccionadas en un proyecto real.
Las Practicas seleccionadas fueron principalmente de Scrum para la gestión y de XP para el desarrollo.

El Proyecto real en donde las implementamos primeramente fue el sistema de gestión de Fibromasa Ltda. En los módulos de recepción y compra de materia prima, de venta de producto y de pagos a proveedores.

El proyecto comenzo para Forestal el convento, pero en medio del desarrollo del sistema la empresa fue comprada por Fibromasa Ltda, una empresa más grande, y con nuevos procesos de negocio, lo que produjo que los cambios de requerimientos cambiaran prácticamente todos los días, haciendo de este un proyecto ideal para implementar practicas ágiles.

No se trató de una aplicación rigurosa y literal de Scrum con XP, sino del enriquecimiento de las prácticas para el proyecto Fibromasa al incorporar y adaptar estas prácticas. En próximos artículos detallare la experiencia de implementar estas practicas en la gestión y el desarrollo, los inconvenientes y ventajas, los fracasos, éxitos y los por menores del proyecto.