Inteligencia Artificial

Scrum en productos de IA

La Inteligencia Artificial tiene relevancia en muchos ámbitos, al igual que Scrum. En este post profundizamos en el uso de Scrum en productos de IA.

Publicado el 09 de Febrero de 2022
Compartir
Tabla de contenidos

IA en la industria

En el contexto actual, la inteligencia artificial está tomando un papel preponderante en la gestión de los procesos de las organizaciones, fundamentalmente en la gestión de los datos generados por el negocio, y de esta forma tomar decisiones de forma oportuna y eficiente, así como también poder prever escenarios futuros y estar preparados para actuar en consecuencia, este auge de la IA en industria, como lo profundiza este artículo sobre servicios de IT e Inteligencia Artificial, motivado a que cada vez se requieren más y mejores herramientas para enfrentar los retos de la transformación digital de las empresas y para la gestión del alto volumen de datos que se genera cada día, además de los otros procesos donde los desarrollos en IA pueden ayudar.

El incremento de demanda de herramientas de IA, en distintos campos de la industria ha provocado un crecimiento también de la oferta de empresas de software, y mercado competitivo y dinámico, de cambios constantes y donde las empresas de distintos tamaños compiten por satisfacer las necesidades de sus clientes, esto ha provocado que la gestión del desarrollo también deba adaptarse a un modelo donde se requiere entregar valor al cliente de forma regular y además, es necesario la adaptación constante, con el fin de que las necesidades de los clientes sean satisfechas de forma oportuna y efectiva.

Agilidad

La agilidad apareció hace ya varios años en el mundo del desarrollo, buscando una nueva forma de hacer las cosas, una mejor manera de hacer las cosas como lo dice el manifiesto ágil y que se fundamenta en cuatro valores:

Individuos e interacciones sobre procesos y herramientas
Software funcionando sobre documentación extensiva
Colaboración con el cliente sobre negociación contractual
Respuesta ante el cambio sobre seguir un plan

Se valoran más los elementos de izquierda por encima de los de la derecha, y esto genera un tema de discusión interesante, ya que en ambientes basados en microgestión, los procesos, las herramientas, la documentación detallada y extensiva juegan un papel preponderante, muchas veces por encima de los individuos, porque se piensa que es la mejor forma de llevar el proyecto a su fin, y puede ser, en algunos contextos, pero en otros, donde la complejidad y la incertidumbre son altas y se requiere una constante adaptación hay que tener cuidado en poner el foco en el lugar incorrecto.

El desarrollo tradicional, las metodologías utilizadas para la gestión de proyectos, se enfocan en procesos, herramientas, documentación, planes muy bien elaborados, elementos valiosos y que permiten llevar a buen fin distintos tipos de proyectos en el mundo de IT.

Sin embargo, en el mundo cambiante actual, el valorar a los individuos y sus interacciones, el software funcionando, la colaboración constante con el cliente y la respuesta al cambio, permite entregar valor en intervalos de iteración más cortos.

Puede darse la pregunta, ¿estos valores ágiles tienen muchos años, no son obsoletos?

No lo están, estos valores, están cada vez más vigentes en la actualidad, los valores buscan que los procesos se centren en las personas, en la colaboración y en la entrega de valor constante, adaptándose a las necesidades que emergen constantemente en el entorno.

Imagen 0 en Scrum en productos de IA

Scrum e IA

Scrum, como lo conocemos, es un marco de trabajo para el desarrollo de productos complejos, es como lo define la guía de Scrum un marco fácil de entender pero difícil de aplicar, el marco brinda un conjunto de pilares, valores, artefactos, eventos y responsabilidades que permite la gestión de productos de diversos tipos, no solo de software, Scrum es abierto y dentro del marco se pueden utilizar herramientas, prácticas e incluso metodologías que contribuyan a mejorar la efectividad del marco.

Los proyectos que involucran IA y cualquiera de sus ramas, son ejecutados bajo distintas metodologías como por ejemplo: CRISP-DM utilizada para llevar a cabo proyectos de minería de datos, y que definen todas las fases a seguir en proyectos de este tipo, o KDD, por sus siglas en inglés, que plantea un proceso para el descubrimiento de conocimiento o MASINA, una metodología que permite modelar sistemas basados en agentes inteligentes, esto son solo algunos ejemplos de metodologías de desarrollo donde se definen las fases de forma detallada que permiten diseñar, modelar, construir e implementar este tipo de aplicaciones.

En este momento donde surge la pregunta, sí existen las metodologías que definen el camino para construir estos proyectos, ¿por qué usar frameworks ágiles como Scrum?.

Trataremos en las siguientes líneas responder esta pregunta. El uso de frameworks ágiles como Scrum para el desarrollo de productos de IA es un tema interesante, el que existan metodologías bien definidas no excluye que se pueda utilizar un marco de trabajo que ayude a la entrega temprana y constante de valor hacia los clientes que consumen este tipo de desarrollos: un modelo de análisis de datos, una aplicación con IA, un dashboard inteligente, etc. Scrum no va orientado hacia un tipo de software en particular, Scrum está orientado hacia productos complejos, y los productos de IA, son eso, productos complejos.

Entonces, ¿cómo se pueden llevar a cabo proyectos -productos- de IA usando Scrum?

Lo primero, es analizar el contexto del desarrollo que se desea hacer, tomando en cuenta la complejidad, situación en el mercado, competencia, necesidad del cliente, definir el valor a entregar, básicamente, ¿por qué y para qué es necesario este producto?.

Sí luego de este análisis se tiene que el producto es complejo, existe competencia, el cliente requiere entregas regulares y en intervalos de tiempo corto, es posible que Scrum pueda ayudar a su desarrollo, en este punto, no se está tomando en cuenta las metodologías mencionadas anteriormente, sino que se discute sobre la forma de trabajo, en cómo el equipo colaborará para construir producto.

Lo segundo, es conformar un equipo con las habilidades necesarias para llevar adelante el producto, esto es algo natural para cualquier proceso de desarrollo, y en el caso de productos de IA, los perfiles especializados trabajarán en un solo equipo, existirán responsabilidades del mismo y el equipo será responsable de todos los aspectos relacionados al mismo, tanto técnicos como de negocio, esto permite que los miembros del equipo estén con un mismo objetivo, que no sientan que pertenecen a distintas áreas o departamentos, que no se lleve a cabo el trabajo por capas, y que cada uno “trate de hacer su trabajo” de forma individual, el tener un equipo consolidado permitirá que el foco sea el mismo.

Lo tercero, es seleccionar la metodología de desarrollo para productos de IA que mejor se adapte a lo que el cliente requiere, de esta forma se podrán establecer las fases en las que se desarrollará y definir los incrementos esperados del producto en cada sprint, y como se pueden adaptar estas fases a Scrum, la clave es dividir cada fase dentro de los sprint y seleccionar el timebox de sprint que mejor se adapte a estas fases, es importante aquí que cada final dé sprint dé como resultado un incremento, que se pueda discutir con el cliente y se obtenga feedback sobre el avance hacia el product goal.

Para finalizar, Scrum está pensado para productos complejos y entregas de valor constantes, Scrum no va a funcionar para todo, y la primera decisión es sí es bueno para lo que se quiere hacer y sí en realidad permitirá alcanzar el objetivo, no es usar Scrum u otro framework ágil solo por moda, es usarlo cuando realmente las condiciones estén dadas para ello, y el producto cumpla ciertas condiciones de complejidad e incertidumbre, así como también que el cliente esté dispuesto a conocer el framework y profundizar en su uso, para que la colaboración sea adecuada.


Compartir este post

También te puede interesar...

Tecnología

Inteligencia artificial: Qué es y su aplicación en el sector IT

04 Agosto 2021 Angel Eduardo Gil Pérez
Scrum técnico

Curso de Scrum técnico

2 horas y 22 minutos · Empresas

Aprende con nosotros qué es Scrum, cuál es su filosofía y las herramientas que utilizamos en la gestión de proyectos Agile. Además, será objetivo del …

  • Gestión de Proyectos y Estrategia
Artículos
Ver todos