Socio-technical analysis of the robot operating system ecosystem for fostering participation in knowledge sharing activities
Professor Advisor
dc.contributor.advisor
Simmonds Wagemann, Jocelyn
Professor Advisor
dc.contributor.advisor
Robbes, Romain
Professor Advisor
dc.contributor.advisor
Fabry, Johan
Author
dc.contributor.author
Estefo Carrasco, Pablo Ignacio
Associate professor
dc.contributor.other
Mens, Tom
Associate professor
dc.contributor.other
Ochoa Delorenzi, Sergio
Associate professor
dc.contributor.other
Sandoval Alcocer, Juan
Admission date
dc.date.accessioned
2023-05-31T20:02:32Z
Available date
dc.date.available
2023-05-31T20:02:32Z
Publication date
dc.date.issued
2023
Identifier
dc.identifier.other
10.58011/ht4z-mz91
Identifier
dc.identifier.uri
https://repositorio.uchile.cl/handle/2250/193957
Abstract
dc.description.abstract
El desarrollo de software para robots presenta desafíos particulares: amplia variedad de disciplinas involucradas (ingeniería de software, ciencia de datos, mecatrónica, etc.) y uso de hardware heterogéneo (diferentes actuadores y sensores). La comunidad de robótica ha llegado al uso de Middleware para robótica como una solución al manejo de la complejidad del programar robots. Estas tecnologías consisten en una capa de abstracción entre el sistema operativo y las aplicaciones. Existen varios middlewares pero el más popular hoy es el Robot Operating System (ROS). Aun cuando existe una participativa comunidad detrás del éxito de ROS, existen muy pocos estudios respecto a ROS como un ecosistema de software.
En esta tesis presentamos un estudio en profundidad del ecosistema de ROS y propusimos un método para identificar miembros de la comunidad calificados para compartir conocimiento. Primero hicimos un estudio inicial sobre un artefacto de software propio de ROS: los ROS launch files. Estos son archivos de configuración usados para hacer el despliegue de procesos de un programa robótico. Encontramos suficiente evidencia para afirmar que un gran porcentaje de los paquetes de ROS presenta duplicación de código en sus launch files.
Posteriormente, indagamos aún más en la forma en que los usuarios interactúan con el middleware y en la comunidad en sí. Para esto hicimos un estudio de campo que combinaba aspectos cualitativos y cuantitativos. Los resultados nos permitieron destilar los cinco principales cuellos de botella en las dinámicas de colaboración del ecosistema ROS. Entre ellas destacan la falta de tiempo y la existencia de paquetes abandonados. Junto con esto, proponemos cinco recomendaciones para sobrellevar estos cuellos de botella, entre ellos destaca: Recomendar Oportunidades de Contribución.
Finalmente, nos enfocamos en esta última recomendación y presentamos un sistema de recomendación de usuarios calificados para responder preguntas en la plataforma de preguntas y respuestas (Q&A) ROS Answers. La idea principal fue distribuír la carga de trabajo recomendando usuarios con poca participación. A través de tres preguntas se probó la eficacia del método: saber si recomienda a los usuarios que contestaron correctamente la pregunta, saber si recomienda usuarios calificados y saber si ayuda a distribuir mejor la carga de trabajo.
Los resultados del trabajo realizado nos permiten concluir que el estudio de artefactos de software sí permite detectar problemas en el ecosistema, que los cuellos de botella en las contribuciones se pueden atribuir a problemas socio-técnicos, y que un sistema de recomendación basado en tags puede ser insuficiente para recomendar usuarios calificados que redistribuya la carga de trabajo en plataformas Q&A de robótica.
es_ES
Patrocinador
dc.description.sponsorship
ANID/CONICYT a través de la beca CONICYT PCHA/Doctorado Nacional 2015/21150762
es_ES
Lenguage
dc.language.iso
en
es_ES
Publisher
dc.publisher
Universidad de Chile
es_ES
Type of license
dc.rights
Attribution-NonCommercial-NoDerivs 3.0 United States