Analizador de código como extensión de Visual Studio Code

En este artículo, presentamos una herramienta de apoyo al proceso de desarrollo de software en forma de una extensión para Visual Studio Code, diseñada para facilitar el análisis de código y la atribución de autoría. Esta herramienta utiliza una arquitectura remota para llevar a cabo un análisis det...

Full description

Autores:
Bedoya De la Cruz, Felipe
Tipo de recurso:
Trabajo de grado de pregrado
Fecha de publicación:
2023
Institución:
Universidad de los Andes
Repositorio:
Séneca: repositorio Uniandes
Idioma:
spa
OAI Identifier:
oai:repositorio.uniandes.edu.co:1992/73216
Acceso en línea:
https://hdl.handle.net/1992/73216
Palabra clave:
Git
SonarQube
Análisis
Extensión
Visual Studio Code
Ingeniería
Rights
openAccess
License
Attribution-NonCommercial 4.0 International
id UNIANDES2_f5ba5d3ce0acadeaa636f512169cadbf
oai_identifier_str oai:repositorio.uniandes.edu.co:1992/73216
network_acronym_str UNIANDES2
network_name_str Séneca: repositorio Uniandes
repository_id_str
dc.title.spa.fl_str_mv Analizador de código como extensión de Visual Studio Code
title Analizador de código como extensión de Visual Studio Code
spellingShingle Analizador de código como extensión de Visual Studio Code
Git
SonarQube
Análisis
Extensión
Visual Studio Code
Ingeniería
title_short Analizador de código como extensión de Visual Studio Code
title_full Analizador de código como extensión de Visual Studio Code
title_fullStr Analizador de código como extensión de Visual Studio Code
title_full_unstemmed Analizador de código como extensión de Visual Studio Code
title_sort Analizador de código como extensión de Visual Studio Code
dc.creator.fl_str_mv Bedoya De la Cruz, Felipe
dc.contributor.advisor.none.fl_str_mv Bocanegra García, José Joaquín
dc.contributor.author.none.fl_str_mv Bedoya De la Cruz, Felipe
dc.subject.keyword.spa.fl_str_mv Git
SonarQube
Análisis
Extensión
topic Git
SonarQube
Análisis
Extensión
Visual Studio Code
Ingeniería
dc.subject.keyword.eng.fl_str_mv Visual Studio Code
dc.subject.themes.spa.fl_str_mv Ingeniería
description En este artículo, presentamos una herramienta de apoyo al proceso de desarrollo de software en forma de una extensión para Visual Studio Code, diseñada para facilitar el análisis de código y la atribución de autoría. Esta herramienta utiliza una arquitectura remota para llevar a cabo un análisis detallado de repositorios de código y aprovecha las capacidades de SonarQube y GitInspector para identificar problemas y presentar métricas de código. El artículo tiene como objetivo explorar las contribuciones de este desarrollo original, proporcionar una visión general de herramientas similares existentes y exponer los resultados de la herramienta en términos de usabilidad y eficacia con una prueba orientada a desarrolladores.
publishDate 2023
dc.date.issued.none.fl_str_mv 2023-12-20
dc.date.accessioned.none.fl_str_mv 2024-01-12T20:45:49Z
dc.date.available.none.fl_str_mv 2024-01-12T20:45:49Z
dc.type.none.fl_str_mv Trabajo de grado - Pregrado
dc.type.driver.none.fl_str_mv info:eu-repo/semantics/bachelorThesis
dc.type.version.none.fl_str_mv info:eu-repo/semantics/acceptedVersion
dc.type.coar.none.fl_str_mv http://purl.org/coar/resource_type/c_7a1f
dc.type.content.none.fl_str_mv Text
dc.type.redcol.none.fl_str_mv http://purl.org/redcol/resource_type/TP
format http://purl.org/coar/resource_type/c_7a1f
status_str acceptedVersion
dc.identifier.uri.none.fl_str_mv https://hdl.handle.net/1992/73216
dc.identifier.instname.none.fl_str_mv instname:Universidad de los Andes
dc.identifier.reponame.none.fl_str_mv reponame:Repositorio Institucional Séneca
dc.identifier.repourl.none.fl_str_mv repourl:https://repositorio.uniandes.edu.co/
url https://hdl.handle.net/1992/73216
identifier_str_mv instname:Universidad de los Andes
reponame:Repositorio Institucional Séneca
repourl:https://repositorio.uniandes.edu.co/
dc.language.iso.none.fl_str_mv spa
language spa
dc.relation.references.none.fl_str_mv [1] Waldenberg, A. (2020, octubre 19). gitinspector: A statistical analysis tool for git repositories. [GitHub repository]. https://github.com/ejwa/gitinspector
[2] Waldenberg, A. (2015, diciembre 13). Documentation. [GitHub repository wiki]. https://github.com/ejwa/gitinspector/wiki/Documentation
[3] SonarQube. (n.d.). SonarQube 9.9 LTS. [Online]. Available: https://www.sonarqube.org
[4] Sonarqube. SonarQube 9.9 LTS Documentation. (n.d.). https://docs.sonarsource.com/sonarqube/latest/
[5] SonarSource. (2023, agosto 4). SonarScanner 5.0.1 – SonarQube Docs. [https://docs.sonarsource.com/sonarqube/9.9/analyzing-source-code/scanners/sonarscanner/]
[6] Docker. (n.d.). Get started with Docker | Docker Docs. [Online]. Available: https://docs.docker.com/get-started/: https://docs.docker.com/get-started/.
[7] Keypup. (n.d.). Keypup: Software Dev. Analytics to Accelerate Delivery. Recuperado noviembre 27, 2023, from https://www.keypup.io/
[8] GitClear. (n.d.). GitClear: The first Developer-Friendly Analytics tool. Recuperado noviembre 27, 2023, from https://www.gitclear.com/
[9] Aguiar, V. (2023, July 21). Analyzing Git Activity with Gitstats. [Medium]. Retrieved November 27, 2023, from https://medium.com/geekculture/analyzing-git-activity-with-gitstats-159f75719bab
[10] Keen. (2017, octubre 16). keen/github-analytics. [GitHub repository]. Retrieved November 27, 2023, from https://github.com/keen/github-analytics: https://github.com/keen/github-analytics
[11] Juanjo. (2022, septiembre 20). SonarCloud: Mejora el código con SAST. [Platzi Blog]. Retrieved November 27, 2023, from https://platzi.com/blog/sonarcloud-mejora-codigo-sast/: https://platzi.com/blog/sonarcloud-mejora-codigo-sast/
[12] Hernández, M. (2021, enero 26). ¿Qué es Linting y ESLint? ¿Cómo empezar?. freeCodeCamp.org. Recuperado noviembre 27, 2023, from https://www.freecodecamp.org/espanol/news/que-es-linting-y-eslint/
[13] Bedoya, F (2023, diciembre 4). Prueba guiada remota [Imagen digital]
[14] Bedoya, F (2023, diciembre 4). Gráfica de líneas de resultados [Imagen digital]
dc.rights.en.fl_str_mv Attribution-NonCommercial 4.0 International
dc.rights.uri.none.fl_str_mv http://creativecommons.org/licenses/by-nc/4.0/
dc.rights.accessrights.none.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.none.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv Attribution-NonCommercial 4.0 International
http://creativecommons.org/licenses/by-nc/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.none.fl_str_mv 4843 palabras
dc.format.mimetype.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidad de los Andes
dc.publisher.program.none.fl_str_mv Ingeniería de Sistemas y Computación
dc.publisher.faculty.none.fl_str_mv Facultad de Ingeniería
dc.publisher.department.none.fl_str_mv Departamento de Ingeniería Sistemas y Computación
publisher.none.fl_str_mv Universidad de los Andes
institution Universidad de los Andes
bitstream.url.fl_str_mv https://repositorio.uniandes.edu.co/bitstreams/dde72c1e-885b-472c-810f-a100db07d211/download
https://repositorio.uniandes.edu.co/bitstreams/389fed91-680f-4e92-b999-5423985dd74a/download
https://repositorio.uniandes.edu.co/bitstreams/283f507d-adbe-4cf7-bb6b-bd3b6f141da6/download
https://repositorio.uniandes.edu.co/bitstreams/d522a2ab-51f5-4cf9-94aa-9cb9b6cbf283/download
https://repositorio.uniandes.edu.co/bitstreams/12e5c40e-5f7e-4573-b363-bfb406bcd065/download
https://repositorio.uniandes.edu.co/bitstreams/dc87ba39-6bb6-4eba-bd71-bbac23a28d84/download
https://repositorio.uniandes.edu.co/bitstreams/02ffb3b3-288b-4c9a-a11f-7e81b4e84170/download
https://repositorio.uniandes.edu.co/bitstreams/9c6e508f-49c0-473b-a1f4-5e059db7d156/download
bitstream.checksum.fl_str_mv 24013099e9e6abb1575dc6ce0855efd5
ee1638dd7d73854c22f9385e92bf6416
2d597d886ff6489a32e4396a634cc2b2
ae9e573a68e7f92501b6913cc846c39f
087a604efc83676db5f72992e2387382
45bdbe806f534d07e4afd28a2aab14f8
ebf6a747cabbea3aff7928053143fdf7
6e2587d94f7e9b5a877bdb17bd7d6fae
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositorio institucional Séneca
repository.mail.fl_str_mv adminrepositorio@uniandes.edu.co
_version_ 1808390385262657536
spelling Bocanegra García, José JoaquínBedoya De la Cruz, Felipe2024-01-12T20:45:49Z2024-01-12T20:45:49Z2023-12-20https://hdl.handle.net/1992/73216instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/En este artículo, presentamos una herramienta de apoyo al proceso de desarrollo de software en forma de una extensión para Visual Studio Code, diseñada para facilitar el análisis de código y la atribución de autoría. Esta herramienta utiliza una arquitectura remota para llevar a cabo un análisis detallado de repositorios de código y aprovecha las capacidades de SonarQube y GitInspector para identificar problemas y presentar métricas de código. El artículo tiene como objetivo explorar las contribuciones de este desarrollo original, proporcionar una visión general de herramientas similares existentes y exponer los resultados de la herramienta en términos de usabilidad y eficacia con una prueba orientada a desarrolladores.Ingeniero de Sistemas y ComputaciónPregrado4843 palabrasapplication/pdfspaUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería Sistemas y ComputaciónAttribution-NonCommercial 4.0 Internationalhttp://creativecommons.org/licenses/by-nc/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Analizador de código como extensión de Visual Studio CodeTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPGitSonarQubeAnálisisExtensiónVisual Studio CodeIngeniería[1] Waldenberg, A. (2020, octubre 19). gitinspector: A statistical analysis tool for git repositories. [GitHub repository]. https://github.com/ejwa/gitinspector[2] Waldenberg, A. (2015, diciembre 13). Documentation. [GitHub repository wiki]. https://github.com/ejwa/gitinspector/wiki/Documentation[3] SonarQube. (n.d.). SonarQube 9.9 LTS. [Online]. Available: https://www.sonarqube.org[4] Sonarqube. SonarQube 9.9 LTS Documentation. (n.d.). https://docs.sonarsource.com/sonarqube/latest/[5] SonarSource. (2023, agosto 4). SonarScanner 5.0.1 – SonarQube Docs. [https://docs.sonarsource.com/sonarqube/9.9/analyzing-source-code/scanners/sonarscanner/][6] Docker. (n.d.). Get started with Docker | Docker Docs. [Online]. Available: https://docs.docker.com/get-started/: https://docs.docker.com/get-started/.[7] Keypup. (n.d.). Keypup: Software Dev. Analytics to Accelerate Delivery. Recuperado noviembre 27, 2023, from https://www.keypup.io/[8] GitClear. (n.d.). GitClear: The first Developer-Friendly Analytics tool. Recuperado noviembre 27, 2023, from https://www.gitclear.com/[9] Aguiar, V. (2023, July 21). Analyzing Git Activity with Gitstats. [Medium]. Retrieved November 27, 2023, from https://medium.com/geekculture/analyzing-git-activity-with-gitstats-159f75719bab[10] Keen. (2017, octubre 16). keen/github-analytics. [GitHub repository]. Retrieved November 27, 2023, from https://github.com/keen/github-analytics: https://github.com/keen/github-analytics[11] Juanjo. (2022, septiembre 20). SonarCloud: Mejora el código con SAST. [Platzi Blog]. Retrieved November 27, 2023, from https://platzi.com/blog/sonarcloud-mejora-codigo-sast/: https://platzi.com/blog/sonarcloud-mejora-codigo-sast/[12] Hernández, M. (2021, enero 26). ¿Qué es Linting y ESLint? ¿Cómo empezar?. freeCodeCamp.org. Recuperado noviembre 27, 2023, from https://www.freecodecamp.org/espanol/news/que-es-linting-y-eslint/[13] Bedoya, F (2023, diciembre 4). Prueba guiada remota [Imagen digital][14] Bedoya, F (2023, diciembre 4). Gráfica de líneas de resultados [Imagen digital]201921898PublicationCC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8914https://repositorio.uniandes.edu.co/bitstreams/dde72c1e-885b-472c-810f-a100db07d211/download24013099e9e6abb1575dc6ce0855efd5MD51ORIGINALAnalizador de código como extensión de Visual Studio Code.pdfAnalizador de código como extensión de Visual Studio Code.pdfapplication/pdf1180592https://repositorio.uniandes.edu.co/bitstreams/389fed91-680f-4e92-b999-5423985dd74a/downloadee1638dd7d73854c22f9385e92bf6416MD52autorizacion tesis_signed.pdfautorizacion tesis_signed.pdfHIDEapplication/pdf439203https://repositorio.uniandes.edu.co/bitstreams/283f507d-adbe-4cf7-bb6b-bd3b6f141da6/download2d597d886ff6489a32e4396a634cc2b2MD54LICENSElicense.txtlicense.txttext/plain; charset=utf-82535https://repositorio.uniandes.edu.co/bitstreams/d522a2ab-51f5-4cf9-94aa-9cb9b6cbf283/downloadae9e573a68e7f92501b6913cc846c39fMD53TEXTAnalizador de código como extensión de Visual Studio Code.pdf.txtAnalizador de código como extensión de Visual Studio Code.pdf.txtExtracted texttext/plain37260https://repositorio.uniandes.edu.co/bitstreams/12e5c40e-5f7e-4573-b363-bfb406bcd065/download087a604efc83676db5f72992e2387382MD55autorizacion tesis_signed.pdf.txtautorizacion tesis_signed.pdf.txtExtracted texttext/plain1969https://repositorio.uniandes.edu.co/bitstreams/dc87ba39-6bb6-4eba-bd71-bbac23a28d84/download45bdbe806f534d07e4afd28a2aab14f8MD57THUMBNAILAnalizador de código como extensión de Visual Studio Code.pdf.jpgAnalizador de código como extensión de Visual Studio Code.pdf.jpgGenerated Thumbnailimage/jpeg8370https://repositorio.uniandes.edu.co/bitstreams/02ffb3b3-288b-4c9a-a11f-7e81b4e84170/downloadebf6a747cabbea3aff7928053143fdf7MD56autorizacion tesis_signed.pdf.jpgautorizacion tesis_signed.pdf.jpgGenerated Thumbnailimage/jpeg10992https://repositorio.uniandes.edu.co/bitstreams/9c6e508f-49c0-473b-a1f4-5e059db7d156/download6e2587d94f7e9b5a877bdb17bd7d6faeMD581992/73216oai:repositorio.uniandes.edu.co:1992/732162024-01-13 03:07:19.046http://creativecommons.org/licenses/by-nc/4.0/Attribution-NonCommercial 4.0 Internationalopen.accesshttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coPGgzPjxzdHJvbmc+RGVzY2FyZ28gZGUgUmVzcG9uc2FiaWxpZGFkIC0gTGljZW5jaWEgZGUgQXV0b3JpemFjacOzbjwvc3Ryb25nPjwvaDM+CjxwPjxzdHJvbmc+UG9yIGZhdm9yIGxlZXIgYXRlbnRhbWVudGUgZXN0ZSBkb2N1bWVudG8gcXVlIHBlcm1pdGUgYWwgUmVwb3NpdG9yaW8gSW5zdGl0dWNpb25hbCBTw6luZWNhIHJlcHJvZHVjaXIgeSBkaXN0cmlidWlyIGxvcyByZWN1cnNvcyBkZSBpbmZvcm1hY2nDs24gZGVwb3NpdGFkb3MgbWVkaWFudGUgbGEgYXV0b3JpemFjacOzbiBkZSBsb3Mgc2lndWllbnRlcyB0w6lybWlub3M6PC9zdHJvbmc+PC9wPgo8cD5Db25jZWRhIGxhIGxpY2VuY2lhIGRlIGRlcMOzc2l0byBlc3TDoW5kYXIgc2VsZWNjaW9uYW5kbyBsYSBvcGNpw7NuIDxzdHJvbmc+J0FjZXB0YXIgbG9zIHTDqXJtaW5vcyBhbnRlcmlvcm1lbnRlIGRlc2NyaXRvcyc8L3N0cm9uZz4geSBjb250aW51YXIgZWwgcHJvY2VzbyBkZSBlbnbDrW8gbWVkaWFudGUgZWwgYm90w7NuIDxzdHJvbmc+J1NpZ3VpZW50ZScuPC9zdHJvbmc+PC9wPgo8aHI+CjxwPllvLCBlbiBtaSBjYWxpZGFkIGRlIGF1dG9yIGRlbCB0cmFiYWpvIGRlIHRlc2lzLCBtb25vZ3JhZsOtYSBvIHRyYWJham8gZGUgZ3JhZG8sIGhhZ28gZW50cmVnYSBkZWwgZWplbXBsYXIgcmVzcGVjdGl2byB5IGRlIHN1cyBhbmV4b3MgZGUgc2VyIGVsIGNhc28sIGVuIGZvcm1hdG8gZGlnaXRhbCB5L28gZWxlY3Ryw7NuaWNvIHkgYXV0b3Jpem8gYSBsYSBVbml2ZXJzaWRhZCBkZSBsb3MgQW5kZXMgcGFyYSBxdWUgcmVhbGljZSBsYSBwdWJsaWNhY2nDs24gZW4gZWwgU2lzdGVtYSBkZSBCaWJsaW90ZWNhcyBvIGVuIGN1YWxxdWllciBvdHJvIHNpc3RlbWEgbyBiYXNlIGRlIGRhdG9zIHByb3BpbyBvIGFqZW5vIGEgbGEgVW5pdmVyc2lkYWQgeSBwYXJhIHF1ZSBlbiBsb3MgdMOpcm1pbm9zIGVzdGFibGVjaWRvcyBlbiBsYSBMZXkgMjMgZGUgMTk4MiwgTGV5IDQ0IGRlIDE5OTMsIERlY2lzacOzbiBBbmRpbmEgMzUxIGRlIDE5OTMsIERlY3JldG8gNDYwIGRlIDE5OTUgeSBkZW3DoXMgbm9ybWFzIGdlbmVyYWxlcyBzb2JyZSBsYSBtYXRlcmlhLCB1dGlsaWNlIGVuIHRvZGFzIHN1cyBmb3JtYXMsIGxvcyBkZXJlY2hvcyBwYXRyaW1vbmlhbGVzIGRlIHJlcHJvZHVjY2nDs24sIGNvbXVuaWNhY2nDs24gcMO6YmxpY2EsIHRyYW5zZm9ybWFjacOzbiB5IGRpc3RyaWJ1Y2nDs24gKGFscXVpbGVyLCBwcsOpc3RhbW8gcMO6YmxpY28gZSBpbXBvcnRhY2nDs24pIHF1ZSBtZSBjb3JyZXNwb25kZW4gY29tbyBjcmVhZG9yIGRlIGxhIG9icmEgb2JqZXRvIGRlbCBwcmVzZW50ZSBkb2N1bWVudG8uPC9wPgo8cD5MYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGVtaXRlIGVuIGNhbGlkYWQgZGUgYXV0b3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50byB5IG5vIGNvcnJlc3BvbmRlIGEgY2VzacOzbiBkZSBkZXJlY2hvcywgc2lubyBhIGxhIGF1dG9yaXphY2nDs24gZGUgdXNvIGFjYWTDqW1pY28gZGUgY29uZm9ybWlkYWQgY29uIGxvIGFudGVyaW9ybWVudGUgc2XDsWFsYWRvLiBMYSBwcmVzZW50ZSBhdXRvcml6YWNpw7NuIHNlIGhhY2UgZXh0ZW5zaXZhIG5vIHNvbG8gYSBsYXMgZmFjdWx0YWRlcyB5IGRlcmVjaG9zIGRlIHVzbyBzb2JyZSBsYSBvYnJhIGVuIGZvcm1hdG8gbyBzb3BvcnRlIG1hdGVyaWFsLCBzaW5vIHRhbWJpw6luIHBhcmEgZm9ybWF0byBlbGVjdHLDs25pY28sIHkgZW4gZ2VuZXJhbCBwYXJhIGN1YWxxdWllciBmb3JtYXRvIGNvbm9jaWRvIG8gcG9yIGNvbm9jZXIuPC9wPgo8cD5FbCBhdXRvciwgbWFuaWZpZXN0YSBxdWUgbGEgb2JyYSBvYmpldG8gZGUgbGEgcHJlc2VudGUgYXV0b3JpemFjacOzbiBlcyBvcmlnaW5hbCB5IGxhIHJlYWxpesOzIHNpbiB2aW9sYXIgbyB1c3VycGFyIGRlcmVjaG9zIGRlIGF1dG9yIGRlIHRlcmNlcm9zLCBwb3IgbG8gdGFudG8sIGxhIG9icmEgZXMgZGUgc3UgZXhjbHVzaXZhIGF1dG9yw61hIHkgdGllbmUgbGEgdGl0dWxhcmlkYWQgc29icmUgbGEgbWlzbWEuPC9wPgo8cD5FbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLjwvcD4KPHA+U2kgdGllbmUgYWxndW5hIGR1ZGEgc29icmUgbGEgbGljZW5jaWEsIHBvciBmYXZvciwgY29udGFjdGUgY29uIGVsIDxhIGhyZWY9Im1haWx0bzpiaWJsaW90ZWNhQHVuaWFuZGVzLmVkdS5jbyIgdGFyZ2V0PSJfYmxhbmsiPkFkbWluaXN0cmFkb3IgZGVsIFNpc3RlbWEuPC9hPjwvcD4K