En la búsqueda de entregar cada vez mayor valor a nuestros clientes, en Cognus hemos optado por trabajar con una metodología de desarrollo ágil de ciclos cortos e incrementales basados en los principios de gestión de proyectos: Scrum. Esta consiste en ciclos cortos o sprints de 2 a 4 semanas de duración, donde en cada uno se busca entregar una funcionalidad adicional. Para ello cada sprint incluye los siguientes pasos:
De esta forma el equipo de desarrollo va agregando valor incrementalmente en la medida que se van agregando componentes al proyecto hasta alcanzar la completitud de los requerimientos.
Si hay una constante dentro de la mayoría de los proyectos de desarrollo, es que los requerimientos están en constante cambio. Si ayer era importante el datamart que entregaba un reporte comparativo de las estrategias de crecimiento de la cadena, hoy los reportes diarios de crisis son primera prioridad. Nuestra metodología acepta esta realidad de que los requerimientos cambiantes son parte de la naturaleza del mundo de los negocios. Para ello la metodología Scrum permite permutar y priorizar los distintos requermientos entre cada sprint. Como parte del equipo Scrum existe un Product Owner, quien es justamente el que vela por darle la flexibilidad al prodcuto al priorizar los requerimientos.
Es así como el equipo se mantiene enfocado en los KPIs de más alto valor, construyéndolos de principio a fin de manera incremental y continuamente compartiendo su trabajo con los tomadores de decisión y usuarios finales para obtener su retroalimentación. La metodología permite aumentar el ROI del proyecto al:
Reducir la inversión inicial requerida para lanzar el proyecto al rápidamente entregar componentes tangibles a los usuarios finales, en vez de invertir fuertemente en modelamiento y arquitectura.
Acelerar la disponibilidad de información, al presentar indicadores de manera incremental, inicialmente de alto nivel y luego en la medida que los requerimientos se van refinando, hacia información más granulada.
Trabajar de manera iterativa con los usuarios finales para comprender sus requerimientos e ir priorizando el trabajo de manera que los requerimientos de más alto valor y ROI sean resueltos primero.
¿Cómo se aplica esta metodología a Business Intelligence? Una metodología de desarrollo ágil, como Scrum, se aplica muy bien para BI al entregar vistas analíticas relevantes en una fracción del tiempo que tomaría realizar el proyecto completo. Para ello, los distintos datamarts que apoyan a las vistas analíticas deseadas, deben ser desarrolladas de manera incremental. Las tablas de dimensiones, por ejemplo, pueden ser muy pequeñas y sólo contener lo mínimo para hacer la vista deseada. Luego en iteraciones (sprints) futuras se pueden ir agregando columnas y dimensiones nuevas. Finalmente solo se hacen los reportes deseados. Esto se puede lograr en un par de semanas, mientras que un proyecto completo de datawarehouse puede no entregar ninguna vista que agregue valor en hasta varios meses adentrado en el proyecto.
Una clave importante para poder hacer estas iteraciones cortas de desarrollo de vistas analíticas, es tener una plataforma que permita soportar construcciones de este tipo de manera flexible. En este sentido Pentaho es un gran aliado, ya que su herramienta de integración de datos (ETL) Pentaho Data Integration, es única en su flexibilidad y facilidad de desarrollo, el cual incluye un repositorio de las transformaciones, que registra todas las modificaciones que estas van teniendo en el tiempo. Así también las herrramientas de Reporting de Pentaho permiten en muy pocos pasos diseñar reportes estándares y poderosos.
En conjunto, Pentaho y el desarrollo ágil de business intelligence, han permitido que Cognus entregue soluciones analíticas potentes de manera consistente y en un mínimo de tiempo.