- -

Development and Implementation of Static Analysis Tools to Improve Code Quality

RiuNet: Repositorio Institucional de la Universidad Politécnica de Valencia

Compartir/Enviar a

Citas

Estadísticas

  • Estadisticas de Uso

Development and Implementation of Static Analysis Tools to Improve Code Quality

Mostrar el registro sencillo del ítem

Ficheros en el ítem

dc.contributor.advisor Pelechano Ferragud, Vicente es_ES
dc.contributor.author Martí Martín, Ignacio Luis es_ES
dc.date.accessioned 2024-10-17T15:58:00Z
dc.date.available 2024-10-17T15:58:00Z
dc.date.created 2024-09-19
dc.date.issued 2024-10-17 es_ES
dc.identifier.uri http://hdl.handle.net/10251/210476
dc.description.abstract [CA] Este Treball de Fi de Grau, que es desenvolupa en l'àmbit de pràctiques en l'empresa Medtronic, consistix en l'automatització de regles i guies de codi (guidelines). La seua intenció principal és mantindre uns estàndards de qualitat i consistència en el codi i estalviar valuosos recursos en la fase de testing i assegurament de qualitat, ja que el nombre de regles a comprovar en les revisions de codi serà molt de menor. Per a això, s'utilitzaran ferramentes existents com Clang-tidy, Clang-format, Coverity o diversos compiladors, investigant la seua documentació i implementant els arxius de configuració i les integracions en el sistema necessàries per al seu funcionament. Una vegada finalitzada esta solució, els desenvolupadors podran comprovar localment, abans de compartir el codi, el compliment d'estes regles i guies de codi tant mitjançant una extensió en el seu entorn de desenvolupament favorit, com mitjançant un script executable. Per a cobrir les regles que no poden ser verificades amb solucions existents, es desenvoluparà una solució interna, escrita en Python. Este programa s'integrarà com a comprovació addicional realitzada pel sistema de control de versions prèvia a la pujada de codi, utilitzant el procediment conegut com a Integració Contínua. Gràcies a este treball, un gran percentatge de regles, prèviament no forçades i que havien de ser comprovades manualment, quedarà automatitzat. Este enfocament no sols optimitza recursos en testing i assegurament de qualitat, sinó que també millora l'eficiència dels desenvolupadors en validar el compliment de normatives abans de les revisions de codi. es_ES
dc.description.abstract [ES] Este Trabajo de Fin de Grado, que se desarrolla en el ámbito de prácticas en la empresa Medtronic, consiste en la automatización de reglas y guías de código (guidelines). Su intención principal es mantener unos estándares de calidad y consistencia en el código y ahorrar valiosos recursos en la fase de testing y aseguramiento de calidad, puesto que el número de reglas a comprobar en las revisiones de código será mucho menor. Para ello, se utilizarán herramientas existentes como Clang-tidy, Clang-format, Coverity o varios compiladores, investigando su documentación e implementando los archivos de configuración y las integraciones en el sistema necesarias para su funcionamiento. Una vez finalizada esta solución, los desarrolladores podrán comprobar localmente, antes de compartir el código, el cumplimiento de estas reglas y guías de código tanto mediante una extensión en su entorno de desarrollo favorito, como mediante un script ejecutable. Para cubrir las reglas que no pueden ser verificadas con soluciones existentes, se desarrollará una solución interna, escrita en Python. Este programa se integrará como comprobación adicional realizada por el sistema de control de versiones previa a la subida de código, utilizando el procedimiento conocido como Integración Continua. Gracias a este trabajo, un gran porcentaje de reglas, previamente no forzadas y que debían ser comprobadas manualmente, quedará automatizado. Este enfoque no solo optimiza recursos en testing y aseguramiento de calidad, sino que también mejora la eficiencia de los desarrolladores al validar el cumplimiento de normativas antes de las revisiones de código. es_ES
dc.description.abstract [EN] This Final Degree Thesis, which is developed in the context of an internship at the company Medtronic, consists of the automation of rules and coding guidelines. Its main intention is to maintain quality standards and consistency in the code and save valuable resources in the testing and quality assurance phase, since the number of rules to check in code reviews will be much smaller. For this purpose, existing tools such as Clang-tidy, Clang-format, Coverity or various compilers will be used, researching their documentation and implementing the configuration files and system integrations required for their operation. Once this solution is completed, developers will be able to check locally, before sharing the code, the compliance with these rules and code guidelines either through an extension in their favorite development environment or through an executable script. To cover rules that cannot be checked with existing solutions, an internal solution, written in Python, will be developed. This program will be integrated as an additional check performed by the version control system prior to code upload, using the procedure known as Continuous Integration. Thanks to this work, a large percentage of rules, previously unforced and that had to be checked manually, will be automated. This approach not only optimizes resources in testing and quality assurance, but also improves developer efficiency by validating compliance before code reviews. es_ES
dc.format.extent 82 es_ES
dc.language Inglés es_ES
dc.publisher Universitat Politècnica de València es_ES
dc.rights Reserva de todos los derechos es_ES
dc.subject Regles de codi es_ES
dc.subject Automatización es_ES
dc.subject Reglas de código es_ES
dc.subject Análisis estático es_ES
dc.subject Mejora de la calidad del código es_ES
dc.subject Clang es_ES
dc.subject Python es_ES
dc.subject Ahorro de recursos es_ES
dc.subject Automation es_ES
dc.subject Code rules es_ES
dc.subject Static analysis es_ES
dc.subject Code quality improvement es_ES
dc.subject Resource saving es_ES
dc.subject Automatització es_ES
dc.subject Anàlisi estàtic es_ES
dc.subject Millora de qualitat de codi es_ES
dc.subject Estalvi de recursos es_ES
dc.subject.classification LENGUAJES Y SISTEMAS INFORMATICOS es_ES
dc.subject.other Grado en Ingeniería Informática-Grau en Enginyeria Informàtica es_ES
dc.title Development and Implementation of Static Analysis Tools to Improve Code Quality es_ES
dc.title.alternative Desenvolupament i implementació d'eines d'anàlisi estàtica per a la millora de la qualitat del codi es_ES
dc.title.alternative Desarrollo e implementación de herramientas de análisis estático para mejorar la calidad del código es_ES
dc.type Proyecto/Trabajo fin de carrera/grado es_ES
dc.rights.accessRights Cerrado es_ES
dc.contributor.affiliation Universitat Politècnica de València. Departamento de Sistemas Informáticos y Computación - Departament de Sistemes Informàtics i Computació es_ES
dc.contributor.affiliation Universitat Politècnica de València. Escola Tècnica Superior d'Enginyeria Informàtica es_ES
dc.description.bibliographicCitation Martí Martín, IL. (2024). Development and Implementation of Static Analysis Tools to Improve Code Quality. Universitat Politècnica de València. http://hdl.handle.net/10251/210476 es_ES
dc.description.accrualMethod TFGM es_ES
dc.relation.pasarela TFGM\165621 es_ES


Este ítem aparece en la(s) siguiente(s) colección(ones)

Mostrar el registro sencillo del ítem