Prototype of a tool for automatic generation of commit messages for Java applications

dc.contributorAponte, Jairospa
dc.contributor.advisorLinares Vásquez, Mario (Thesis advisor)spa
dc.contributor.authorCortés Coy, Luis Fernandospa
dc.date.accessioned2019-06-29T14:25:02Zspa
dc.date.available2019-06-29T14:25:02Zspa
dc.date.issued2014spa
dc.description.abstractAlthough version control systems allow developers to describe and explain the rationale behind code changes in commit messages, the state of practice indicates that most of the time such commit messages are either very short or even empty. In fact, in a recent study of 23K+ Java projects it has been found that only 10% of the messages are descriptive and over 66% of those messages contained fewer words as compared to a typical English sentence. However, accurate and complete commit messages summarizing software changes are important to support a number of development and maintenance tasks. This thesis presents an approach, coined as ChangeScribe, which is designed to generate commit messages automatically from change sets. ChangeScribe generates natural language commit messages by taking into account commit stereotype, the type of changes (e.g., files rename, changes done only to property files), as well as the impact set of the underlying changes. This work presents the evaluation of ChangeScribe in an evaluative survey involving 23 developers in which the participants analyzed automatically generated commit messages from real changes and compared them with commit messages written by the original developers of six open source systems. The results demonstrate that automatically generated messages by ChangeScribe are preferred in about 62% of the cases for large commits, and about 54% for small commitsspa
dc.description.abstractResumen. Aunque los sistemas de control de versiones le permiten a los desarrolladores de software describir y explicar las razones por la cuales modificaron el código fuente utilizando un mensaje en el commit, en la práctica estos mensajes son muy cortos o incluso vacíos. De hecho, en recientes estudios de 23K+ de proyectos Java se ha encontrado que el 10% de los mensajes son descriptivos y alrededor del 66% de estos contienen pocas palabras comparado con el tamaño promedio de una oración escrita en el idioma inglés. Sin embargo, resumir los cambios en el software de una manera precisa y completa es muy importante para apoyar las tareas que se realizan en el desarrollo y mantenimiento de un software. Este trabajo presenta ChangeScribe un prototipo para generar mensajes de commit usando lenguaje natural y teniendo en cuenta el estereotipo del commit, el tipo de cambio (rename de un archivo, cambios a archivos de propiedades, etc ), y también el conjunto de impacto de los cambios realizados. De otro lado, presenta la evaluación de ChangeScribe en un estudio de usuarios que involucró 23 desarrolladores de software que analizaron los mensajes de commit generados automáticamente por ChangeScribe y los mensajes de commit escritos por los desarrolladores originales de seis sistemas open source. Los resultados demuestran que los mensajes generados de forma automática por ChangeScribe son preferidos en cerca del 62% de los casos en commits largos, y en cerca de 54% de los casos en commits cortos (pocas modificaciones).spa
dc.description.degreelevelMaestríaspa
dc.format.mimetypeapplication/pdfspa
dc.identifier.eprintshttp://bdigital.unal.edu.co/46795/spa
dc.identifier.urihttps://repositorio.unal.edu.co/handle/unal/52452
dc.language.isospaspa
dc.relation.ispartofUniversidad Nacional de Colombia Sede Bogotá Facultad de Ingeniería Departamento de Ingeniería de Sistemas e Industrialspa
dc.relation.ispartofDepartamento de Ingeniería de Sistemas e Industrialspa
dc.relation.referencesCortés Coy, Luis Fernando (2014) Prototype of a tool for automatic generation of commit messages for Java applications. Maestría thesis, Universidad Nacional de Colombia.spa
dc.rightsDerechos reservados - Universidad Nacional de Colombiaspa
dc.rights.accessrightsinfo:eu-repo/semantics/openAccessspa
dc.rights.licenseAtribución-NoComercial 4.0 Internacionalspa
dc.rights.urihttp://creativecommons.org/licenses/by-nc/4.0/spa
dc.subject.ddc0 Generalidades / Computer science, information and general worksspa
dc.subject.ddc62 Ingeniería y operaciones afines / Engineeringspa
dc.subject.proposalCommit messagespa
dc.subject.proposalSoftware summarizationspa
dc.subject.proposalCode changesspa
dc.subject.proposalMensaje de commitspa
dc.subject.proposalCambios al codigo fuentespa
dc.titlePrototype of a tool for automatic generation of commit messages for Java applicationsspa
dc.typeTrabajo de grado - Maestríaspa
dc.type.coarhttp://purl.org/coar/resource_type/c_bdccspa
dc.type.coarversionhttp://purl.org/coar/version/c_ab4af688f83e57aaspa
dc.type.contentTextspa
dc.type.driverinfo:eu-repo/semantics/masterThesisspa
dc.type.redcolhttp://purl.org/redcol/resource_type/TMspa
dc.type.versioninfo:eu-repo/semantics/acceptedVersionspa
oaire.accessrightshttp://purl.org/coar/access_right/c_abf2spa

Archivos

Bloque original

Mostrando 1 - 1 de 1
Cargando...
Miniatura
Nombre:
300398.2014.pdf
Tamaño:
1.42 MB
Formato:
Adobe Portable Document Format