Code analyzer: herramienta de análisis de código para repositoriosg git

El presente reporte documenta el desarrollo de un proyecto de grado en Ingeniería de Sistemas y Computación que aborda la problemática de análisis de código en proyectos de software. Este proyecto tiene como objetivo principal proporcionar herramientas que permitan evaluar la calidad y la estructura...

Full description

Autores:
Castro Gonzaáez, Luis David de Jesús
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/69769
Acceso en línea:
http://hdl.handle.net/1992/69769
Palabra clave:
Visual Studio Code
Gitinspector
Desarrollo de software
Control de versiones
Análisis de código
Git
Integración continua
Colaboración en desarrollo de software
Repositorios locales y remotos
Software development
Version control
Code analysis
Continuous integration
Ingeniería
Rights
openAccess
License
Atribución 4.0 Internacional
id UNIANDES2_5e94c9a7229941431971834dbaff19de
oai_identifier_str oai:repositorio.uniandes.edu.co:1992/69769
network_acronym_str UNIANDES2
network_name_str Séneca: repositorio Uniandes
repository_id_str
dc.title.none.fl_str_mv Code analyzer: herramienta de análisis de código para repositoriosg git
dc.title.alternative.none.fl_str_mv Code analyzer: code analysis tool for git repositories
title Code analyzer: herramienta de análisis de código para repositoriosg git
spellingShingle Code analyzer: herramienta de análisis de código para repositoriosg git
Visual Studio Code
Gitinspector
Desarrollo de software
Control de versiones
Análisis de código
Git
Integración continua
Colaboración en desarrollo de software
Repositorios locales y remotos
Software development
Version control
Code analysis
Continuous integration
Ingeniería
title_short Code analyzer: herramienta de análisis de código para repositoriosg git
title_full Code analyzer: herramienta de análisis de código para repositoriosg git
title_fullStr Code analyzer: herramienta de análisis de código para repositoriosg git
title_full_unstemmed Code analyzer: herramienta de análisis de código para repositoriosg git
title_sort Code analyzer: herramienta de análisis de código para repositoriosg git
dc.creator.fl_str_mv Castro Gonzaáez, Luis David de Jesús
dc.contributor.advisor.none.fl_str_mv Bocanegra García, José Joaquín
Garcés Pernett, Kelly Johany
dc.contributor.author.none.fl_str_mv Castro Gonzaáez, Luis David de Jesús
dc.contributor.jury.none.fl_str_mv Bocanegra García, José Joaquín
dc.subject.keyword.none.fl_str_mv Visual Studio Code
Gitinspector
Desarrollo de software
Control de versiones
Análisis de código
Git
Integración continua
Colaboración en desarrollo de software
Repositorios locales y remotos
Software development
Version control
Code analysis
Continuous integration
topic Visual Studio Code
Gitinspector
Desarrollo de software
Control de versiones
Análisis de código
Git
Integración continua
Colaboración en desarrollo de software
Repositorios locales y remotos
Software development
Version control
Code analysis
Continuous integration
Ingeniería
dc.subject.themes.es_CO.fl_str_mv Ingeniería
description El presente reporte documenta el desarrollo de un proyecto de grado en Ingeniería de Sistemas y Computación que aborda la problemática de análisis de código en proyectos de software. Este proyecto tiene como objetivo principal proporcionar herramientas que permitan evaluar la calidad y la estructura del código en repositorios de control de versiones. La motivación detrás de este proyecto radica en la creciente importancia del mantenimiento y la colaboración en el desarrollo de software, lo cual demanda la necesidad de mantener un código de alta calidad. El problema a resolver se centra en la falta de herramientas eficaces para realizar un análisis exhaustivo del código en proyectos de software, lo cual dificulta la identificación temprana de posibles problemas y vulnerabilidades. Para abordar este problema, se desarrollaron dos extensiones para el entorno de desarrollo Visual Studio Code. Una versión local realiza el análisis directamente en la máquina del usuario, mientras que la versión remota utiliza un servidor para llevar a cabo el análisis y proporcionar informes detallados. Los resultados obtenidos demuestran que las extensiones son capaces de realizar un análisis preciso y detallado del código fuente, identificando métricas de calidad, áreas problemáticas y recomendaciones de mejora. La extensión remota, en particular, ofrece la ventaja de analizar repositorios remotos de manera eficiente, brindando informes que permiten a los desarrolladores tomar decisiones informadas para mejorar la calidad del código. Este reporte presenta el diseño, implementación y validación de las extensiones, así como su integración con un backend que facilita la clonación y el análisis de repositorios. Además, se discuten los resultados obtenidos y se sugieren direcciones futuras para la mejora continua de las herramientas desarrolladas.
publishDate 2023
dc.date.accessioned.none.fl_str_mv 2023-08-16T14:26:15Z
dc.date.available.none.fl_str_mv 2023-08-16T14:26:15Z
dc.date.issued.none.fl_str_mv 2023-06-02
dc.type.es_CO.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.es_CO.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 http://hdl.handle.net/1992/69769
dc.identifier.instname.es_CO.fl_str_mv instname:Universidad de los Andes
dc.identifier.reponame.es_CO.fl_str_mv reponame:Repositorio Institucional Séneca
dc.identifier.repourl.es_CO.fl_str_mv repourl:https://repositorio.uniandes.edu.co/
url http://hdl.handle.net/1992/69769
identifier_str_mv instname:Universidad de los Andes
reponame:Repositorio Institucional Séneca
repourl:https://repositorio.uniandes.edu.co/
dc.language.iso.es_CO.fl_str_mv spa
language spa
dc.relation.references.es_CO.fl_str_mv Vaishnavi, V., & Kuechler, W. (2015). Design Science Research Methods and Patterns: Innovating Information and Communication Technology (2nd ed.). CRC Press.
Peffers, K., Tuunanen, T., Rothenberger, M. A., & Chatterjee, S. (2007). A Design Science Research Methodology for Information Systems Research. Journal of Management
Apache Kibble. (s.f.). Apache Kibble Documentation. Recuperado el 25 de febrero de 2023, de https://kibble.apache.org/docs/documentation.html
Ejwa. (2022). Gitinspector Documentation. Recuperado de https://github.com/ejwa/gitinspector/wiki/Documentation
dc.rights.license.*.fl_str_mv Atribución 4.0 Internacional
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by/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 Atribución 4.0 Internacional
http://creativecommons.org/licenses/by/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.es_CO.fl_str_mv 12 páginas
dc.format.mimetype.es_CO.fl_str_mv application/pdf
dc.publisher.es_CO.fl_str_mv Universidad de los Andes
dc.publisher.program.es_CO.fl_str_mv Ingeniería de Sistemas y Computación
dc.publisher.faculty.es_CO.fl_str_mv Facultad de Ingeniería
dc.publisher.department.es_CO.fl_str_mv Departamento de Ingeniería Sistemas y Computación
institution Universidad de los Andes
bitstream.url.fl_str_mv https://repositorio.uniandes.edu.co/bitstreams/f7e862f6-6dfb-4f94-abe4-79ab8ac7bfc4/download
https://repositorio.uniandes.edu.co/bitstreams/6a2ae8c2-081f-448f-9c94-9e73e0b0aecf/download
https://repositorio.uniandes.edu.co/bitstreams/aece1095-bb8b-49b6-8043-241286f56328/download
https://repositorio.uniandes.edu.co/bitstreams/aaf75f7b-3d8b-4777-af69-a47915711bbe/download
https://repositorio.uniandes.edu.co/bitstreams/72346852-8ecd-499a-81f6-63ce381bc36a/download
https://repositorio.uniandes.edu.co/bitstreams/30ca4b1c-0961-45b1-9811-3de3b506f2b9/download
https://repositorio.uniandes.edu.co/bitstreams/b8ceb443-a8c4-46a8-99f7-2ec076867b63/download
https://repositorio.uniandes.edu.co/bitstreams/27918919-5284-4117-a2aa-bcf5aaca2fc7/download
bitstream.checksum.fl_str_mv 5aa5c691a1ffe97abd12c2966efcb8d6
046a1c29148beec52e42d62a4185fcc0
e9f88be98a70e7c11aac76e2a8c3cdf5
f4f02784400381f57593f6368f671f8d
49aa0c4a124883ecd5adb676438c840e
0175ea4a2d4caec4bbcc37e300941108
be613384cd6c659f9992f6d99a0dfe22
3a8d20a34c70cceea881abcfe37640f5
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_ 1812133979432681472
spelling Atribución 4.0 Internacionalhttp://creativecommons.org/licenses/by/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Bocanegra García, José Joaquínff9be4a9-b100-4b63-98d0-22dac3ae90c7600Garcés Pernett, Kelly Johanyvirtual::11415-1Castro Gonzaáez, Luis David de Jesúse7ee6dc4-f023-47ae-81c5-790e823a0119600Bocanegra García, José Joaquín2023-08-16T14:26:15Z2023-08-16T14:26:15Z2023-06-02http://hdl.handle.net/1992/69769instname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/El presente reporte documenta el desarrollo de un proyecto de grado en Ingeniería de Sistemas y Computación que aborda la problemática de análisis de código en proyectos de software. Este proyecto tiene como objetivo principal proporcionar herramientas que permitan evaluar la calidad y la estructura del código en repositorios de control de versiones. La motivación detrás de este proyecto radica en la creciente importancia del mantenimiento y la colaboración en el desarrollo de software, lo cual demanda la necesidad de mantener un código de alta calidad. El problema a resolver se centra en la falta de herramientas eficaces para realizar un análisis exhaustivo del código en proyectos de software, lo cual dificulta la identificación temprana de posibles problemas y vulnerabilidades. Para abordar este problema, se desarrollaron dos extensiones para el entorno de desarrollo Visual Studio Code. Una versión local realiza el análisis directamente en la máquina del usuario, mientras que la versión remota utiliza un servidor para llevar a cabo el análisis y proporcionar informes detallados. Los resultados obtenidos demuestran que las extensiones son capaces de realizar un análisis preciso y detallado del código fuente, identificando métricas de calidad, áreas problemáticas y recomendaciones de mejora. La extensión remota, en particular, ofrece la ventaja de analizar repositorios remotos de manera eficiente, brindando informes que permiten a los desarrolladores tomar decisiones informadas para mejorar la calidad del código. Este reporte presenta el diseño, implementación y validación de las extensiones, así como su integración con un backend que facilita la clonación y el análisis de repositorios. Además, se discuten los resultados obtenidos y se sugieren direcciones futuras para la mejora continua de las herramientas desarrolladas.Ingeniero de Sistemas y ComputaciónPregradoDesarrollo de Software12 páginasapplication/pdfspaUniversidad de los AndesIngeniería de Sistemas y ComputaciónFacultad de IngenieríaDepartamento de Ingeniería Sistemas y ComputaciónCode analyzer: herramienta de análisis de código para repositoriosg gitCode analyzer: code analysis tool for git repositoriesTrabajo de grado - Pregradoinfo:eu-repo/semantics/bachelorThesisinfo:eu-repo/semantics/acceptedVersionhttp://purl.org/coar/resource_type/c_7a1fTexthttp://purl.org/redcol/resource_type/TPVisual Studio CodeGitinspectorDesarrollo de softwareControl de versionesAnálisis de códigoGitIntegración continuaColaboración en desarrollo de softwareRepositorios locales y remotosSoftware developmentVersion controlCode analysisContinuous integrationIngenieríaVaishnavi, V., & Kuechler, W. (2015). Design Science Research Methods and Patterns: Innovating Information and Communication Technology (2nd ed.). CRC Press.Peffers, K., Tuunanen, T., Rothenberger, M. A., & Chatterjee, S. (2007). A Design Science Research Methodology for Information Systems Research. Journal of ManagementApache Kibble. (s.f.). Apache Kibble Documentation. Recuperado el 25 de febrero de 2023, de https://kibble.apache.org/docs/documentation.htmlEjwa. (2022). Gitinspector Documentation. Recuperado de https://github.com/ejwa/gitinspector/wiki/Documentation201720389Publicationab8c0b16-6781-46f2-8520-03295a94d16dvirtual::11415-1ab8c0b16-6781-46f2-8520-03295a94d16dvirtual::11415-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0001402558virtual::11415-1LICENSElicense.txtlicense.txttext/plain; charset=utf-81810https://repositorio.uniandes.edu.co/bitstreams/f7e862f6-6dfb-4f94-abe4-79ab8ac7bfc4/download5aa5c691a1ffe97abd12c2966efcb8d6MD59THUMBNAILCode Analyzer Herramienta de Análisis de Código para Repositorios Git.pdf.jpgCode Analyzer Herramienta de Análisis de Código para Repositorios Git.pdf.jpgIM Thumbnailimage/jpeg7025https://repositorio.uniandes.edu.co/bitstreams/6a2ae8c2-081f-448f-9c94-9e73e0b0aecf/download046a1c29148beec52e42d62a4185fcc0MD514Formato de autorización y entrega de tesistrabajo de grado.pdf.jpgFormato de autorización y entrega de tesistrabajo de grado.pdf.jpgIM Thumbnailimage/jpeg16293https://repositorio.uniandes.edu.co/bitstreams/aece1095-bb8b-49b6-8043-241286f56328/downloade9f88be98a70e7c11aac76e2a8c3cdf5MD516ORIGINALCode Analyzer Herramienta de Análisis de Código para Repositorios Git.pdfCode Analyzer Herramienta de Análisis de Código para Repositorios Git.pdfTrabajo de gradoapplication/pdf257057https://repositorio.uniandes.edu.co/bitstreams/aaf75f7b-3d8b-4777-af69-a47915711bbe/downloadf4f02784400381f57593f6368f671f8dMD58Formato de autorización y entrega de tesistrabajo de grado.pdfFormato de autorización y entrega de tesistrabajo de grado.pdfHIDEapplication/pdf317508https://repositorio.uniandes.edu.co/bitstreams/72346852-8ecd-499a-81f6-63ce381bc36a/download49aa0c4a124883ecd5adb676438c840eMD512CC-LICENSElicense_rdflicense_rdfapplication/rdf+xml; charset=utf-8908https://repositorio.uniandes.edu.co/bitstreams/30ca4b1c-0961-45b1-9811-3de3b506f2b9/download0175ea4a2d4caec4bbcc37e300941108MD510TEXTCode Analyzer Herramienta de Análisis de Código para Repositorios Git.pdf.txtCode Analyzer Herramienta de Análisis de Código para Repositorios Git.pdf.txtExtracted texttext/plain24987https://repositorio.uniandes.edu.co/bitstreams/b8ceb443-a8c4-46a8-99f7-2ec076867b63/downloadbe613384cd6c659f9992f6d99a0dfe22MD513Formato de autorización y entrega de tesistrabajo de grado.pdf.txtFormato de autorización y entrega de tesistrabajo de grado.pdf.txtExtracted texttext/plain1454https://repositorio.uniandes.edu.co/bitstreams/27918919-5284-4117-a2aa-bcf5aaca2fc7/download3a8d20a34c70cceea881abcfe37640f5MD5151992/69769oai:repositorio.uniandes.edu.co:1992/697692024-03-13 14:25:42.26http://creativecommons.org/licenses/by/4.0/restrictedhttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.coWW8sIGVuIG1pIGNhbGlkYWQgZGUgYXV0b3IgZGVsIHRyYWJham8gZGUgdGVzaXMsIG1vbm9ncmFmw61hIG8gdHJhYmFqbyBkZSBncmFkbywgaGFnbyBlbnRyZWdhIGRlbCBlamVtcGxhciByZXNwZWN0aXZvIHkgZGUgc3VzIGFuZXhvcyBkZSBzZXIgZWwgY2FzbywgZW4gZm9ybWF0byBkaWdpdGFsIHkvbyBlbGVjdHLDs25pY28geSBhdXRvcml6byBhIGxhIFVuaXZlcnNpZGFkIGRlIGxvcyBBbmRlcyBwYXJhIHF1ZSByZWFsaWNlIGxhIHB1YmxpY2FjacOzbiBlbiBlbCBTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIG8gZW4gY3VhbHF1aWVyIG90cm8gc2lzdGVtYSBvIGJhc2UgZGUgZGF0b3MgcHJvcGlvIG8gYWplbm8gYSBsYSBVbml2ZXJzaWRhZCB5IHBhcmEgcXVlIGVuIGxvcyB0w6lybWlub3MgZXN0YWJsZWNpZG9zIGVuIGxhIExleSAyMyBkZSAxOTgyLCBMZXkgNDQgZGUgMTk5MywgRGVjaXNpw7NuIEFuZGluYSAzNTEgZGUgMTk5MywgRGVjcmV0byA0NjAgZGUgMTk5NSB5IGRlbcOhcyBub3JtYXMgZ2VuZXJhbGVzIHNvYnJlIGxhIG1hdGVyaWEsIHV0aWxpY2UgZW4gdG9kYXMgc3VzIGZvcm1hcywgbG9zIGRlcmVjaG9zIHBhdHJpbW9uaWFsZXMgZGUgcmVwcm9kdWNjacOzbiwgY29tdW5pY2FjacOzbiBww7pibGljYSwgdHJhbnNmb3JtYWNpw7NuIHkgZGlzdHJpYnVjacOzbiAoYWxxdWlsZXIsIHByw6lzdGFtbyBww7pibGljbyBlIGltcG9ydGFjacOzbikgcXVlIG1lIGNvcnJlc3BvbmRlbiBjb21vIGNyZWFkb3IgZGUgbGEgb2JyYSBvYmpldG8gZGVsIHByZXNlbnRlIGRvY3VtZW50by4gIAoKCkxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgZW1pdGUgZW4gY2FsaWRhZCBkZSBhdXRvciBkZSBsYSBvYnJhIG9iamV0byBkZWwgcHJlc2VudGUgZG9jdW1lbnRvIHkgbm8gY29ycmVzcG9uZGUgYSBjZXNpw7NuIGRlIGRlcmVjaG9zLCBzaW5vIGEgbGEgYXV0b3JpemFjacOzbiBkZSB1c28gYWNhZMOpbWljbyBkZSBjb25mb3JtaWRhZCBjb24gbG8gYW50ZXJpb3JtZW50ZSBzZcOxYWxhZG8uIExhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gc2UgaGFjZSBleHRlbnNpdmEgbm8gc29sbyBhIGxhcyBmYWN1bHRhZGVzIHkgZGVyZWNob3MgZGUgdXNvIHNvYnJlIGxhIG9icmEgZW4gZm9ybWF0byBvIHNvcG9ydGUgbWF0ZXJpYWwsIHNpbm8gdGFtYmnDqW4gcGFyYSBmb3JtYXRvIGVsZWN0csOzbmljbywgeSBlbiBnZW5lcmFsIHBhcmEgY3VhbHF1aWVyIGZvcm1hdG8gY29ub2NpZG8gbyBwb3IgY29ub2Nlci4gCgoKRWwgYXV0b3IsIG1hbmlmaWVzdGEgcXVlIGxhIG9icmEgb2JqZXRvIGRlIGxhIHByZXNlbnRlIGF1dG9yaXphY2nDs24gZXMgb3JpZ2luYWwgeSBsYSByZWFsaXrDsyBzaW4gdmlvbGFyIG8gdXN1cnBhciBkZXJlY2hvcyBkZSBhdXRvciBkZSB0ZXJjZXJvcywgcG9yIGxvIHRhbnRvLCBsYSBvYnJhIGVzIGRlIHN1IGV4Y2x1c2l2YSBhdXRvcsOtYSB5IHRpZW5lIGxhIHRpdHVsYXJpZGFkIHNvYnJlIGxhIG1pc21hLiAKCgpFbiBjYXNvIGRlIHByZXNlbnRhcnNlIGN1YWxxdWllciByZWNsYW1hY2nDs24gbyBhY2Npw7NuIHBvciBwYXJ0ZSBkZSB1biB0ZXJjZXJvIGVuIGN1YW50byBhIGxvcyBkZXJlY2hvcyBkZSBhdXRvciBzb2JyZSBsYSBvYnJhIGVuIGN1ZXN0acOzbiwgZWwgYXV0b3IgYXN1bWlyw6EgdG9kYSBsYSByZXNwb25zYWJpbGlkYWQsIHkgc2FsZHLDoSBkZSBkZWZlbnNhIGRlIGxvcyBkZXJlY2hvcyBhcXXDrSBhdXRvcml6YWRvcywgcGFyYSB0b2RvcyBsb3MgZWZlY3RvcyBsYSBVbml2ZXJzaWRhZCBhY3TDumEgY29tbyB1biB0ZXJjZXJvIGRlIGJ1ZW5hIGZlLiAKCg==