Architectural issues detection and visualization in the continuous integration pipeline

El uso de una arquitectura de referencia de software limita las posibles desviaciones y errores en la implementación de proyectos de software, ya que el código debe seguir reglas predefinidas que los desarrolladores deben respetar para garantizar la calidad. Sin embargo, cuando se introduce un nuevo...

Full description

Autores:
Mendoza Arrieta, Camilo Andrés
Tipo de recurso:
Fecha de publicación:
2020
Institución:
Universidad de los Andes
Repositorio:
Séneca: repositorio Uniandes
Idioma:
eng
OAI Identifier:
oai:repositorio.uniandes.edu.co:1992/43832
Acceso en línea:
http://hdl.handle.net/1992/43832
Palabra clave:
Arquitectura de software
Ingeniería
Rights
openAccess
License
http://creativecommons.org/licenses/by-nc-nd/4.0/
id UNIANDES2_caec843c641b13c5502079e543931532
oai_identifier_str oai:repositorio.uniandes.edu.co:1992/43832
network_acronym_str UNIANDES2
network_name_str Séneca: repositorio Uniandes
repository_id_str
dc.title.es_CO.fl_str_mv Architectural issues detection and visualization in the continuous integration pipeline
title Architectural issues detection and visualization in the continuous integration pipeline
spellingShingle Architectural issues detection and visualization in the continuous integration pipeline
Arquitectura de software
Ingeniería
title_short Architectural issues detection and visualization in the continuous integration pipeline
title_full Architectural issues detection and visualization in the continuous integration pipeline
title_fullStr Architectural issues detection and visualization in the continuous integration pipeline
title_full_unstemmed Architectural issues detection and visualization in the continuous integration pipeline
title_sort Architectural issues detection and visualization in the continuous integration pipeline
dc.creator.fl_str_mv Mendoza Arrieta, Camilo Andrés
dc.contributor.advisor.none.fl_str_mv Garcés Pernett, Kelly Johany
dc.contributor.author.none.fl_str_mv Mendoza Arrieta, Camilo Andrés
dc.contributor.jury.none.fl_str_mv Casallas Gutiérrez, Rubby
Correal Torres, Darío Ernesto
Parra Acevedo, Carlos Andrés
dc.subject.armarc.es_CO.fl_str_mv Arquitectura de software
topic Arquitectura de software
Ingeniería
dc.subject.themes.none.fl_str_mv Ingeniería
description El uso de una arquitectura de referencia de software limita las posibles desviaciones y errores en la implementación de proyectos de software, ya que el código debe seguir reglas predefinidas que los desarrolladores deben respetar para garantizar la calidad. Sin embargo, cuando se introduce un nuevo código a los proyectos, se pueden violar estas reglas. Como resultado, los proyectos introducen erosión arquitectónica, malos olores o incluso errores que pueden ser difíciles de encontrar. Esta tesis propone un enfoque para revisar el cumplimiento de las reglas predefinidas que asignan las decisiones arquitectónicas al código. Durante el proceso de integración continua, el análisis automático lanza una advertencia para cada infracción de las reglas. Los desarrolladores pueden analizar y corregir problemas, y rastrear/visualizar mejoras, o la falta de ellas, a través del tiempo. Los arquitectos pueden visualizar los posibles conocimientos perdidos en los proyectos y la evolución y el estado de los proyectos. Presentamos un experimento de validación llevado a cabo en el contexto de un curso de Desarrollo de Software y un proyecto industrial.
publishDate 2020
dc.date.accessioned.none.fl_str_mv 2020-09-03T14:16:28Z
dc.date.available.none.fl_str_mv 2020-09-03T14:16:28Z
dc.date.issued.es_CO.fl_str_mv 2020
dc.type.spa.fl_str_mv Trabajo de grado - Maestría
dc.type.coarversion.fl_str_mv http://purl.org/coar/version/c_970fb48d4fbd8a85
dc.type.driver.spa.fl_str_mv info:eu-repo/semantics/masterThesis
dc.type.content.spa.fl_str_mv Text
dc.type.redcol.spa.fl_str_mv http://purl.org/redcol/resource_type/TM
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/1992/43832
dc.identifier.pdf.none.fl_str_mv u831118.pdf
dc.identifier.instname.spa.fl_str_mv instname:Universidad de los Andes
dc.identifier.reponame.spa.fl_str_mv reponame:Repositorio Institucional Séneca
dc.identifier.repourl.spa.fl_str_mv repourl:https://repositorio.uniandes.edu.co/
url http://hdl.handle.net/1992/43832
identifier_str_mv u831118.pdf
instname:Universidad de los Andes
reponame:Repositorio Institucional Séneca
repourl:https://repositorio.uniandes.edu.co/
dc.language.iso.es_CO.fl_str_mv eng
language eng
dc.rights.uri.*.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
dc.rights.accessrights.spa.fl_str_mv info:eu-repo/semantics/openAccess
dc.rights.coar.spa.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
http://purl.org/coar/access_right/c_abf2
eu_rights_str_mv openAccess
dc.format.extent.es_CO.fl_str_mv 79 hojas
dc.format.mimetype.es_CO.fl_str_mv application/pdf
dc.publisher.es_CO.fl_str_mv Uniandes
dc.publisher.program.es_CO.fl_str_mv Maestría en Ingeniería de Software
dc.publisher.faculty.es_CO.fl_str_mv Facultad de Ingeniería
dc.publisher.department.es_CO.fl_str_mv Departamento de Ingeniería de Sistemas y Computación
dc.source.es_CO.fl_str_mv instname:Universidad de los Andes
reponame:Repositorio Institucional Séneca
instname_str Universidad de los Andes
institution Universidad de los Andes
reponame_str Repositorio Institucional Séneca
collection Repositorio Institucional Séneca
bitstream.url.fl_str_mv https://repositorio.uniandes.edu.co/bitstreams/9c6e9e28-8210-4e96-82fa-0e6ec386e551/download
https://repositorio.uniandes.edu.co/bitstreams/ec4a9f04-e055-4990-a40e-bf3bf308004c/download
https://repositorio.uniandes.edu.co/bitstreams/b9b8e7d7-f230-4752-8fd2-07cb92d8d108/download
bitstream.checksum.fl_str_mv 6f9eacc02ccd2ec1e50afbc1a91da827
68df69a1641357f296f5c9c8cb366290
99fb710a7854a7f173335169b994682f
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositorio institucional Séneca
repository.mail.fl_str_mv adminrepositorio@uniandes.edu.co
_version_ 1831927850205184000
spelling Al consultar y hacer uso de este recurso, está aceptando las condiciones de uso establecidas por los autores.http://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccesshttp://purl.org/coar/access_right/c_abf2Garcés Pernett, Kelly Johanyvirtual::17777-1Mendoza Arrieta, Camilo Andrés914bdece-4f91-434b-9963-5103f446e6d7400Casallas Gutiérrez, RubbyCorreal Torres, Darío ErnestoParra Acevedo, Carlos Andrés2020-09-03T14:16:28Z2020-09-03T14:16:28Z2020http://hdl.handle.net/1992/43832u831118.pdfinstname:Universidad de los Andesreponame:Repositorio Institucional Sénecarepourl:https://repositorio.uniandes.edu.co/El uso de una arquitectura de referencia de software limita las posibles desviaciones y errores en la implementación de proyectos de software, ya que el código debe seguir reglas predefinidas que los desarrolladores deben respetar para garantizar la calidad. Sin embargo, cuando se introduce un nuevo código a los proyectos, se pueden violar estas reglas. Como resultado, los proyectos introducen erosión arquitectónica, malos olores o incluso errores que pueden ser difíciles de encontrar. Esta tesis propone un enfoque para revisar el cumplimiento de las reglas predefinidas que asignan las decisiones arquitectónicas al código. Durante el proceso de integración continua, el análisis automático lanza una advertencia para cada infracción de las reglas. Los desarrolladores pueden analizar y corregir problemas, y rastrear/visualizar mejoras, o la falta de ellas, a través del tiempo. Los arquitectos pueden visualizar los posibles conocimientos perdidos en los proyectos y la evolución y el estado de los proyectos. Presentamos un experimento de validación llevado a cabo en el contexto de un curso de Desarrollo de Software y un proyecto industrial.The use of a software reference architecture limits possible deviations and errors in the implementation of software projects, as the code must follow predefined rules that developers must respect to guarantee quality. However, when introducing new code to projects these rules can be violated. As a result, architectural erosion, bad smells, or even bugs that can be difficult to find are introduced to the projects. This thesis proposes an approach for reviewing compliance to predefined rules that map architectural decisions to code. During the continuous integration process, the automatic analysis raises an issue for each rule violation. Developers can analyze and correct issues, and trace/visualize improvements, or lack thereof, through time. Architects can visualize posible knowledge los in projects and the evolution and state of the projects. We present a validation experiment carried out in the context of a Software Development course and an industrial project.Magíster en Ingeniería de SoftwareMaestría79 hojasapplication/pdfengUniandesMaestría en Ingeniería de SoftwareFacultad de IngenieríaDepartamento de Ingeniería de Sistemas y Computacióninstname:Universidad de los Andesreponame:Repositorio Institucional SénecaArchitectural issues detection and visualization in the continuous integration pipelineTrabajo de grado - Maestríainfo:eu-repo/semantics/masterThesishttp://purl.org/coar/version/c_970fb48d4fbd8a85Texthttp://purl.org/redcol/resource_type/TMArquitectura de softwareIngenieríaPublicationab8c0b16-6781-46f2-8520-03295a94d16dvirtual::17777-1ab8c0b16-6781-46f2-8520-03295a94d16dvirtual::17777-1https://scienti.minciencias.gov.co/cvlac/visualizador/generarCurriculoCv.do?cod_rh=0001402558virtual::17777-1ORIGINALu831118.pdfapplication/pdf2708556https://repositorio.uniandes.edu.co/bitstreams/9c6e9e28-8210-4e96-82fa-0e6ec386e551/download6f9eacc02ccd2ec1e50afbc1a91da827MD51TEXTu831118.pdf.txtu831118.pdf.txtExtracted texttext/plain127183https://repositorio.uniandes.edu.co/bitstreams/ec4a9f04-e055-4990-a40e-bf3bf308004c/download68df69a1641357f296f5c9c8cb366290MD54THUMBNAILu831118.pdf.jpgu831118.pdf.jpgIM Thumbnailimage/jpeg7852https://repositorio.uniandes.edu.co/bitstreams/b9b8e7d7-f230-4752-8fd2-07cb92d8d108/download99fb710a7854a7f173335169b994682fMD551992/43832oai:repositorio.uniandes.edu.co:1992/438322024-03-13 16:06:45.16http://creativecommons.org/licenses/by-nc-nd/4.0/open.accesshttps://repositorio.uniandes.edu.coRepositorio institucional Sénecaadminrepositorio@uniandes.edu.co