Sostenibilidad en proyectos Open Source: Bots al rescate

13/04/2023
Sostenibilidad en proyectos OSS Foto: Freepik.

Vivimos una profunda transformación dirigida a aprovechar al máximo las tecnologías digitales y su impacto cada vez mayor en la sociedad europea. El software es la infraestructura subyacente que impulsa esta transformación y, por lo tanto, es fundamental para las actividades diarias y la evolución futura de nuestra sociedad.

La mayoría del software crítico está construido como software de código abierto (Open Source Systems, OSS) o depende en gran medida de él. De hecho, es justo decir que OSS juega un papel significativo en la economía europea del software. 

La promesa de OSS es mejor calidad, mayor confiabilidad, más flexibilidad y menor coste. Sin embargo, adolece de problemas como la tragedia de los comunes: muchos usan OSS, pero muy pocos contribuyen. Dada esta situación, la estabilidad de nuestra infraestructura digital se encuentra en una situación arriesgada, donde el software se enfrenta a problemas de sostenibilidad que ponen en riesgo la transición digital.

La exploración y el estudio de soluciones para enfrentarse al problema de la sostenibilidad en los proyectos OSS forma parte de una de las líneas de investigación del grupo SOM Research Lab del IN3. En otros artículos hemos comentado nuestros avances en esta línea, como el estudio de la supervivencia en proyectos OSS o el análisis de fundaciones OSS, entre otros. En el marco de esta línea de investigación, en el grupo de investigación trabajamos en el proyecto Smart Bots for (Open Source) Software Development, concedido en la convocatoria de Proyectos de Transición Ecológica y Digital del Ministerio de Ciencia e Innovación; con el objetivo de explorar y plantear soluciones donde los bots ayuden al desarrollo sostenible de proyectos OSS.

Bots inteligentes para el desarrollo de proyectos OSS

La sostenibilidad en el desarrollo de proyectos OSS está directamente relacionada con la capacidad de contar con la ayuda necesaria para gestionar el software y, sobre todo, su comunidad. Sin embargo, contratar nuevos desarrolladores y miembros de la comunidad no es una tarea sencilla, no solo por la falta de profesionales para todos y cada uno de los proyectos OSS, sino también por los retos que implica su incorporación (onboarding, en inglés) en la comunidad. 

En el proyecto que estamos desarrollando proponemos la incorporación de redes de bots que puedan actuar bajo demanda en las diferentes áreas del proyecto. En concreto, su objetivo es transformar el desarrollo de software, proporcionando un marco para modelar, generar, personalizar, combinar y coordinar bots de software inteligentes para ayudar en todas las fases del desarrollo y mantenimiento de software.

En la práctica, los bots ayudarán en diferentes tipos de tareas del proyecto, desde las más repetitivas (pero relevantes) como la bienvenida a nuevos miembros de la comunidad o la revisión del formato de las contribuciones; a las más especializadas, como la validación del código o la aplicación del código de conducta del proyecto. De esta manera, la comunidad puede centrarse en aquellas tareas que requieran más esfuerzo intelectual y creativo.

Para alcanzar este objetivo, llevaremos a cabo diferentes tareas, que incluyen, entre otras: construir y entrenar modelos de aprendizaje automático (Machine Learning) a partir de datos históricos de proyectos OSS para dotar de “inteligencia” a los bots; definir lenguajes para construir y configurar los bots (a modo de patrones de comportamiento); o definir estrategias de colaboración entre bots eficientes (como si fueran indicaciones para orquestar el comportamiento de diferentes bots).

En la actualidad, estamos trabajando en la exploración y estudio de las plataformas de desarrollo de proyectos OSS para facilitar el despliegue de bots, así como su configuración. Nuestras primeras pruebas están siendo muy prometedoras y en cuanto tengamos resultados las reportaremos en este blog.

(Visited 99 times, 1 visits today)
Autor / Autora
Doctor en Ingeniería Informática por la Universidad de Murcia, profesor agregado de los Estudios de Informática, Multimedia y Telecomunicación, e investigador del grupo SOM Research Lab en el Internet Interdisciplinary Institute, ambos de la Universitat Oberta de Catalunya.
Comentarios
Deja un comentario