La importancia de la metodología Agile en los proyectos de las startups

Las startups deben escalar de manera orgánica para lograr ser exitosas. Esa es la razón por la que las metodologías ágiles se han popularizado entre esas empresas.  

¿Por qué? Porque la metodología Agile contempla una serie de principios:  

  • Iterativo, incremental, evolutivo: Todo proyecto se beneficiará si minimiza la planificación y el diseño prematuro, y opta por un desarrollo en iteraciones cortas que permita generar resultados contrastables y validables.
  • Involucremos a todos: Que todos los interesados sean parte del día a día del proceso permite agregar valor de los expertos en el negocio.
  • Listos para el cambio: Los ciclos de feedback continuos permiten validar constantemente los avances y ajustar ante eventuales desaciertos.

¿Qué es MVM?

¿Cuántas veces las startups se enfrentan al deseo o a la necesidad de expandirse hacia nuevos mercados, desarrollar un nuevo producto o llegar a un nuevo nicho? Todo esto haciendo una gran inversión de dinero, esfuerzo y recursos pero sin mucho tiempo para esperar resultados.

¿Y cuántas veces, una vez superada esa dicotomía inversión-tiempo, nos enfrentamos a otro tipo de desafíos?:

  • Datos que no están listos para que los científicos de datos los trabajen.
  • No podemos incorporar nuevas ideas sin evitar una reingeniería.
  • Contar con profesionales con las aptitudes correctas es díficil o costoso.
  • Debemos considerar los datos para tomar decisiones y no contamos con la experiencia o el conocimiento para hacerlo.
  • Nos resulta difícil superar la fase de exploración para empezar a observar resultados concretos.

Estas son algunas de las dificultades que deben enfrentar las startups de datos. Es por ello que, ante esta necesidad, surge una solución: una nueva metodología de desarrollo ágil llamada MVM (Minimum Viable Model).

En pocas palabras podemos definir a MVM como una metodología que apunta a empezar con lo “mínimo” e ir agregando complejidad a medida que vamos obteniendo resultados

De esta manera, se puede encarar cualquier desafío que surja, sin temer al estancamiento y llegando a conclusiones que nos permitan crecer de una manera cost effective.

Las fases de MVM

Ahora bien, ¿cómo desagregamos esta metodología para comprenderla?
Para poder llevar a cabo un desarrollo usando MVM se definen los siguientes pasos:

Alpha MVM

Aquí se dará el puntapié inicial a cualquier problema, pues en esta fase se releva correctamente el problema que es presentado, para poder trabajar en la transformación de hipótesis de alto nivel, en una serie de tareas bien concretas que definirán el kick-off.

Con la metodología agile estaremos listos para diversificar una solución, si ésta no alcanza los objetivos deseados.

A través de técnicas de exploración se busca entender los datos con los que contamos, analizando calidad, cantidad, faltantes, desbalances, etc. 

Las conclusiones de esta primera exploración son compartidas y contrastadas en sucesivas reuniones, en conjunto con aquellos que tienen un mayor conocimiento del negocio, para luego comenzar con la generación y validación de hipótesis concluidas.

A partir de las hipótesis, los expertos en ciencia de datos seleccionarán los algoritmos más acordes a los objetivos, hipótesis validadas y datos disponibles.

Una vez definidos los algoritmos, comienza la tarea de reingeniería de atributos. Se aplican técnicas para solucionar los problemas existentes en los datos: completar faltantes, eliminar duplicados o aquellos  que no aportan nueva información, uniformizar los valores, etc.

Finalmente, se desarrolla un primer modelo de Machine Learning/Inteligencia Artificial para ofrecer un primer approach como solución al problema previamente relevado. 

En esta etapa se separan los datos pre-procesados en set de entrenamiento (se utiliza para entrenar el modelo de aprendizaje) y set de testing (para validar que los datos no hayan generado un sesgo y evitar un modelo mediocre). 

El output de esta etapa es un primer modelo junto a la medición de la performance del mismo y el análisis de factibilidad de la solución aplicada al requerimiento.

Una vez generados los resultados, se entregan en un formato legible y validable (CSV, JSON).

Beta MVM

En esta fase se implementa el modelo generado en la fase previa en el ambiente productivo y se validan los resultados generados en la etapa anterior junto al negocio con el fin de chequear las hipótesis que fueron surgiendo y verificar si la solución propuesta cumple con los requerimientos y necesidades del problema relevado en la fase de Alpha MVM. 

En esta etapa la integración e implementación no es completa, no se cubre la automatización de todos los procesos, la creación de alarmas y monitores ni tampoco lo necesario para la retroalimentación y reentrenamiento de los modelos.

El objetivo principal es tener una primera validación muy rápida de la solución en el ambiente productivo, sin entrar en detalles y particularidades. 

Como resultado de esta etapa podrían surgir dos posibles escenarios:

  • Realizar cambios o crear una nueva hipótesis de la inicial, para generar un nuevo modelo viable y tratar de probar si esta nueva hipótesis es verdadera.
  • Preservar la hipótesis anterior cambiando el enfoque de los experimentos, para validar si las hipótesis siguen siendo válidas.

Lean MVM

Esta es la fase final, se integra en forma completa la solución final con los sistemas de tu startup. 

La incorporación de nueva información, para generar una solución más completa e integral, resulta importante en esta fase. 

Aquí se testearán nuevamente los experimentos realizados y se validarán sus consecuencias, de modo de generar un producto listo para ser completamente integrado en tu startup y acoplado como un servicio, implementado con algunas de las tecnologías más comunes como Docker o a través de una Web API, según sean las necesidades.

A su vez se implementan monitores, alarmas y todo tipo de controles que sean necesarios.

La importancia del Lean Discovery

Esta etapa es crucial para el éxito del proyecto y la misma se debe realizar conjuntamente con los expertos del negocio.

Entender correctamente el problema llevará al desarrollo de una solución apropiada y acorde. La priorización y definición del alcance de cada una de las iteraciones es clave para poder priorizar las necesidades de los interesados y atacarlas de tal modo que el valor agregado pueda ser acoplado a tu startup. 

Esto generará un impacto visible, sin la necesidad de encarar un mega proyecto con un alto costo en recursos y tiempo y con el riesgo de que el mismo quede estancado en un conjunto de hipótesis aisladas.

¿Con quiénes debo contar para empezar un MVM?

Para encarar cualquier proyecto de MVM desde tu startup es necesario partir de un problema orientado a datos, por lo que contar con fuentes de información que estén relacionadas con el problema que haya surgido desde el negocio es vital. Una vez disponibles las fuentes, se encara este proceso con un equipo preparado para tal fin

En una etapa inicial de Alpha MVM, los interesados trabajarán con un scrum master, encargado de definir, con ayuda del data scientist, el alcance de las iteraciones y cómo escalarlas para obtener resultados parciales semana a semana, estableciendo sesiones de validación de avances. 

El data scientist, por su parte, aportará su experiencia en análisis de datos y sus conocimientos en la normalización de los mismos; a su vez, seleccionará y aplicará los primeros modelos y algoritmos de machine learning e inteligencia artificial.

De continuar por una solución más integradora, y llegando a una iteración Beta MVM, deberá sumarse la experiencia del data engineer, cuyo rol es integrar el proceso de Big Data a una infraestructura externa (la de la startup), teniendo en cuenta diferentes cuestiones y garantizando que los procesos y la información respondan de la manera correcta para cumplir con los requerimientos del proyecto.

En el caso de buscar una solución más completa, se requerirá el aporte de dos expertos más: un data architect y un analyst QA.

El data architect se encarga de ordenar los datos cuando surgen nuevas hipótesis, que requieren aumentar el modelo de datos que describe el negocio. 

Para garantizar una solución completamente integrada con tu startup, será relevante contar con la experiencia de un analyst QA. Este profesional rastreará en los resultados potenciales errores para mejorar el servicio.

¿Cuánto vale un MVM?

La inversión a realizar parte de los 8K USD para el caso del servicio Alpha MVM y el mismo está estimado en un mes de trabajo. 

En el caso de querer ampliar la fase Alpha MVM a una solución Beta MVM de 4 sprints, se necesita adicionar 1 meses y medio de trabajo aproximadamente y 12K USD a la inversión inicial.

Finalmente, si lo que se busca es la puesta en productivo del modelo e integrarlo en forma completa a los sistemas de la startup, lo que se necesita es un Lean MVM. Para ello se requiere adicionar un mes y medio de trabajo aproximadamente y 12K USD de inversión.

¿Qué obtengo del MVM?

Del MVM podrás obtener una solución de Machine Learning que nace de un problema de datos y que irá agregando complejidad gradualmente, con el fin de hacerlo crecer de manera ágil y orgánica

Se logrará una solución integral que pueda cumplir con tus metas y ser incorporada a tu plataforma, para aumentar el valor agregado de tus productos y servicios.

En 7Puentes tenemos 11 años de experiencia encarando este tipo de proyectos en diversas industrias:

  • Retail & e-commerce
  • Agribusiness
  • Internet startups
  • Fintechs, banca, blockchain
  • Telecomunicaciones
  • Gubernamentales, fundaciones
  • Noticias, entretenimiento
  • Salud y seguridad

Esto lo hemos logrado año a año gracias al excelente equipo de expertos que integran 7Puentes: ingenieros, científicos de datos, project managers, desarrolladores y analistas de QA.

¿Qué estás esperando para hacer crecer tu startup hasta donde ni siquiera puedas imaginarlo?