VIGHUB: una Herramienta de Pronóstico Tecnológico basada en Minería de Repositorios de Software

Autores/as

  • Carlos Giovanny Hidalgo-Suarez Universidad del Valle - Research group GUIA. Cali, (Colombia)
  • Victor Andres Bucheli-Guerrero Universidad del Valle - Research group GUIA. Cali, (Colombia)
  • Hugo Armando Ordoñez-Eraso Universidad del Cauca - Research group GTI. Popayán, (Colombia)

DOI:

https://doi.org/10.17981/ingecuc.18.1.2022.07

Palabras clave:

Minería de Repositorios de Software, Vigilancia Tecnológica, Revisión del estado de la técnica, Mapas tecnológicos, GitHub

Resumen

Introducción: Académicos, desarrolladores y empresas enfocadas en el desarrollo tecnológico, buscan conocer lo que ya existe y lo que aún falta en este campo. Una de las formas que utilizan, es realizar revisiones sobre fuentes bibliográficas (estado del arte). En este sentido, se desarrolló una herramienta que permite identificar el estado actual de una tecnología de forma semi-automática.

Objetivo: Este artículo propone una herramienta que extrae información de repositorios alojados en GitHub. Analiza los datos utilizando técnicas computacionales y presenta los resultados a través de visualizaciones que identifican la evolución tecnológica del campo estudiado a través de los lenguajes de programación, principales, repositorios y organizaciones.

Metodología: Se utiliza un modelo basado en Repositorios de Software de Minería (MSR), el cual integra una arquitectura basada en microservicios utilizando diferentes lenguajes de programación, lo que permitió la construcción de la herramienta VigHub. El modelo se centra en cuatro aspectos: selección de un tema tecnológico, extracción de la fuente de datos, análisis de la información mediante técnicas computacionales y finalmente, se muestran los resultados a través de visualizaciones.

Resultados: Se dispuso la herramienta VigHub de manera online para realizar 3 casos de estudio. El primero en la academia, donde se identifico desde el año 2011 al 2021, las tecnologías, los lenguajes de programación, los usuarios y empresas interesadas en el desarrollo de VLE’s (Virtual Learning Environment). El segundo y tercero fueron ejecutados por empresas (ambiente industrial), que afirmaron que el uso de la herramienta VigHub, apoya tanto en el análisis de datos como en la identificación de resultados útiles.

Conclusiones: Contar con una herramienta que a partir de una sola consulta permite identificar parte del estado actual de una tecnología, podría ser una herramienta útil para académicos, desarrolladores y empresas, que ahorrarían recursos humanos, tiempo y posibles desarrollos repetidos---reutilización de código. La herramienta VigHub pretende apoyar en la construcción de un estado de arte. Sus resultados son complementarios al método tradicional. 

Descargas

Los datos de descargas todavía no están disponibles.

Citas

A. Peralta and F. P. Romero, “Decision making from knowledge obtained after previous behavior analysis. Practical implementation to project management of software development,” Revista Cintex, vol. 20, no. 2, p. 97, 2015, doi: 10.1016/j.procs.2016.09.255.

D. Güemes-Peña, C. López-Nozal, R. Marticorena-Sánchez, and J. Maudes-Raedo, “Emerging topics in mining software repositories,” Progress in Artificial Intelligence, vol. 7, no. 3, pp. 237–247, Sep. 2018, doi: 10.1007/s13748-018-0147-7.

O. Meqdadi, N. Alhindawi, J. Alsakran, A. Saifan, and H. Migdadi, “Mining software repositories for adaptive change commits using machine learning techniques,” Information and Software Technology, vol. 109, pp. 80–91, 2019, doi: 10.1016/j.infsof.2019.01.008.

M. Garriga, “Towards a taxonomy of microservices architectures,” Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 10729 LNCS, pp. 203–218, doi: 10.1007/978-3-319-74781-1_15.

M. Garriga and K. Bakshi, “Microservices-based software architecture and approaches,” in IEEE Aerospace Conference Proceedings, vol. 10729 LNCS, pp. 203–218. doi: 10.1007/978-3-319-74781-1_15.

Y. Islen San Juan and F. Romero Rodríguez, MANAGEMENT, EXTRACTION AND STORING SOURCES FOR TECHNOLOGICAL WATCH AND COMPETITIVE INTELLIGENCE. 2018.

M. A. Saied, A. Ouni, H. Sahraoui, R. G. Kula, K. Inoue, and D. Lo, “Improving reusability of software libraries through usage pattern mining,” Journal of Systems and Software, vol. 145, pp. 164–179, Nov. 2018, doi: 10.1016/j.jss.2018.08.032.

R. Dyer, H. A. Nguyen, H. Rajan, and T. N. Nguyen, “Boa: Ultra-large-scale software repository and source-code mining,” ACM Transactions on Software Engineering and Methodology, vol. 25, no. 1, 2015, doi: 10.1145/2803171.

F. Z. Sokol, M. F. Aniche, and M. A. Gerosa, “MetricMiner: Supporting researchers in mining software repositories,” 2013, pp. 142–146. doi: 10.1109/SCAM.2013.6648195.

C. Morais, P. Meirelles, and F. Kon, “Kalibro: an Extensible Multi-Language Source Code Analysisand Visualization Toolkit,” Universidade de Sao Paulo, 2009.

D. S. Chawla, “The unsung heroes of scientific software,” Nature, vol. 529, no. 7584, pp. 115–116, 2016, doi: 10.1038/529115a.

D. Spadini, M. Aniche, and A. Bacchelli, “PyDriller: Python framework for mining software repositories,” in Proceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering - ESEC/FSE 2018, New York, New York, USA, 2018, pp. 908–911. doi: 10.1145/3236024.3264598.

S. Dueñas, V. Cosentino, G. Robles, and J. M. Gonzalez-Barahona, “Perceval: software project data at your will,” in Proceedings of the 40th International Conference on Software Engineering: Companion Proceeedings, 2018, pp. 1–4.

F. A. Gonzalez. F. Restrepo-Calle, J.J. Ramírez-Echeverry, UNCODE: INTERACTIVE SYSTEM FOR LEARNING AND AUTOMATIC EVALUATION OF COMPUTER PROGRAMMING SKILLS. IATED Academy, 2018. doi: 10.21125/edulearn.2018.1632.

“La evaluación del impacto científico en las investigaciones educativas a través de un estudio de caso.” http://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=s1607-40412015000200007 (accessed Feb. 21, 2022).

A. Berges-Garcia, J. M. Meneses-Chaus, and J. F. Martinez-Ortega, “Methodology for evaluating functions and products for technology watch and competitive intelligence (TW/CI) and their implementation through web,” Profesional de la Informacion, pp. 103–113, 2016, doi: 10.3145/epi.2016.ene.10.

“spaCy · Industrial-strength Natural Language Processing in Python.” https://spacy.io/ (accessed Oct. 18, 2019).

G. Developer, Google Charts. 2018.

P. T. Goeser, F. G. Hamza-Lup, W. M. Johnson, and D. Scharfer, “VIEW: A Virtual Interactive Web-based Learning Environment for Engineering,” arXiv:1811.07463 [cs], Nov. 2018, Accessed: Feb. 21, 2022. [Online]. Available: http://arxiv.org/abs/1811.07463

WISE-Community, “WISE VLE” Mar. 18, 2018. [Online]. Available: https://github.com/WISE-Community/WISE-VLE–Deprecated–

F. Supriadi, M. Agreindra Helmiawan, Y. Yan Sofiyan, and A. Guntara, “A Model of Virtual Learning Environments Using Micro-Lecture, MOODLE, and SLOODLE,” in 2020 8th International Conference on Cyber and IT Service Management (CITSM), Oct. 2020, pp. 1–4. doi: 10.1109/CITSM50537.2020.9268785.

Knowm, “Proprioceptron,” 2012. https://github.com/knowm/Proprioceptron

Yjwong, “com.nuscomputing.ivlelapi,” 2012. https://github.com/yjwong/com.nuscomputing.ivlelapi

40thieves, “WikiVLE,” 2012. https://github.com/40thieves/WikiVLE

Jbittencourt, “massinha,” 2012. https://github.com/jbittencourt/massinha

Conel, “moodle-1.9,” 2012. https://github.com/conel/moodle-1.9

Elkuku, “JDevAndLearn,” 2012. https://github.com/elkuku/JDevAndLearn

Champiewebfolio, “CloudPod,” 2013. https://github.com/champiewebfolio/CloudPod

RheoDesign, “AAVS-Beijing,” 2013. https://github.com/RheoDesign/AAVS-Beijing

Roxolan, “vlemean,” 2015. https://github.com/roxolan/vlemean

luistp001, “LT-Autograder.” Jan. 08, 2021. [Online]. Available: https://github.com/luistp001/LT-Autograder

StephenBergeron, “RubySoup,” 2014. https://github.com/StephenBergeron/RubySoup

Deepapanwar, “vle,” 2015. https://github.com/deepapanwar/vle

Soyjun, “Implement-ODR-protocol,” 2015. https://github.com/SOYJUN/Implement-ODR-protocol

Brukmoon, “eduqo-vle,” 2015. https://github.com/Brukmoon/eduqo-vle

Sykonba, “PeerReviewSystem,” 2015. https://github.com/Sykonba/PeerReviewSystem

DavidStCox, “nlp-vle,” 2016. https://github.com/DavidStCox/nlp-vle

Lumeng, “univ-washington-machine-learning-python-virtualenv,” 2016. https://github.com/lumeng/univ-washington-machine-learning-python-virtualenv

Blosm-org, “blosm-core,” 2017. https://github.com/blosm-org/blosm-core

Cvgokhale, “Course-Completion-Rate-Prediction,” 2017. https://github.com/cvgokhale/Course-Completion-Rate-Prediction

Victor-iyiola, “navigating-a-virtual-world-using-dynamic-programming,” 2017. https://github.com/victor-iyiola/navigating-a-virtual-world-using-dynamic-programming

Charvi5, “VirtualLearning-Analysis-Classification,” 2018. https://github.com/charvi5/VirtualLearning-Analysis-Classification

Viniciusvec, “hackops,” 2018. https://github.com/viniciusvec/hackops

Fernando24164, “breakfast_docker,” 2018. https://github.com/fernando24164/breakfast_docker

pupilfirst, “pupilfirst.” Mar. 22, 2021. [Online]. Available: https://github.com/pupilfirst/pupilfirst

tparisi, “LearningVirtualReality.” Mar. 22, 2021. [Online]. Available: https://github.com/tparisi/LearningVirtualReality

Aayushi15061997, “Reinforcement_Learning_ThompsonSampling,” 2018. https://github.com/aayushi15061997/Reinforcement_Learning_ThompsonSampling

The-Dank-Network, “TDVLE-API,” 2018. https://github.com/The-Dank-Network/TDVLE-API

C. G. Hidalgo Suarez, V. A. Bucheli, F. Restrepo-Calle, and F. A. Gonzalez, “A strategy based on technological maps for the identification of the state-of-the-art techniques in software development projects: Virtual judge projects as a case study,” in Communications in Computer and Information Science, 2018, vol. 885, pp. 338–354. doi: 10.1007/978-3-319-98998-3_27.

Publicado

2022-05-19

Cómo citar

Hidalgo-Suarez, C. G., Bucheli-Guerrero , V. A. ., & Ordoñez-Eraso , H. A. (2022). VIGHUB: una Herramienta de Pronóstico Tecnológico basada en Minería de Repositorios de Software. INGE CUC, 18(1). https://doi.org/10.17981/ingecuc.18.1.2022.07

Número

Sección

Artículos