Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas.
Autor(a) principal: | |
---|---|
Data de Publicação: | 2015 |
Tipo de documento: | Tese |
Idioma: | por |
Título da fonte: | Biblioteca Digital de Teses e Dissertações da UFCG |
Texto Completo: | http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606 |
Resumo: | Identificadores e comentários de um código fonte constituem o vocabulário de software. Pesquisas apontam vocabulários como uma fonte valorosa de informação sobre o projeto. Para entender a natureza e o potencial dos vocabulários, desenvolvemos um ferramental capaz de extraí-los a partir de código fonte. Explorando os dados estatisticamente, identificamos duas propriedades de vocabulários: tamanho, expresso como função de potência de LOC (Lines-Of-Code); e a repetição de seus termos, que se ajusta a uma distribuição log-normal. Vocabulários, bem como suas propriedades e operações foram formalizadas baseadas no conceito de multisets. O ferramental de extração e a formalização viabilizaram cooperações científicas sobre a utilidade de vocabulário sem atividades de manutenção. Esse conhecimento acumulado revelou que vocabulário pouco foi explorado como insumo à modelagem de conhecimento de código. Desenvolvemos então uma abordagem para identificar especialistas de código cujo conhecimento é definido pela similaridade existente entre vocabulários das entidades e dos desenvolvedores. Comparamos a precisão e cobertura da nossa abordagem com de duas outras: baseada em commits e baseada em percentual de LOC modificadas. Os resultados apontam que para indicar um único especialista, top-1, a nossa abordagem tem uma precisão menor, entre 29.9% e 10% que as abordagens de baseline. Já para indicar mais de um desenvolvedor especialista, até top-3, a nossa abordagem tem uma acurácia melhor de até 18.7% em relação as de baseline. Identificamos também que o conhecimento definido por similaridade quando combinado com um modelo baseado em autoria aumenta a capacidade de identificar especialistas, no R2 do modelo, em mais de 4 pontos percentuais. Concluímos que além de poder ser utilizado de forma isolada para modelar conhecimento de código e assim identificar especialistas, o vocabulário pode ser um componente adicional a modelos de conhecimento baseados em autoria e propriedade, já que capturam aspectos diferentes dos existentes nesse modelos. |
id |
UFCG_986b7f57b2d84c421421fb3e5433233d |
---|---|
oai_identifier_str |
oai:localhost:riufcg/606 |
network_acronym_str |
UFCG |
network_name_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
repository_id_str |
4851 |
spelling |
GUERRERO, Dalton Dario Serey.GUERRERO, D. D. S.http://lattes.cnpq.br/2050632960242405FIGUEIREDO, Jorge césar Abrantes de.FIGUEIREDO, J. C. A.http://lattes.cnpq.br/1424808046858622KULESZA, Uira.MARINHO, Leandro Balby.MASSONI, Tiago Lima.BITTENCOURT, Renato almeida.SANTOS,http://lattes.cnpq.br/1246085373474860SANTOS, Katyusco de Farias.Identificadores e comentários de um código fonte constituem o vocabulário de software. Pesquisas apontam vocabulários como uma fonte valorosa de informação sobre o projeto. Para entender a natureza e o potencial dos vocabulários, desenvolvemos um ferramental capaz de extraí-los a partir de código fonte. Explorando os dados estatisticamente, identificamos duas propriedades de vocabulários: tamanho, expresso como função de potência de LOC (Lines-Of-Code); e a repetição de seus termos, que se ajusta a uma distribuição log-normal. Vocabulários, bem como suas propriedades e operações foram formalizadas baseadas no conceito de multisets. O ferramental de extração e a formalização viabilizaram cooperações científicas sobre a utilidade de vocabulário sem atividades de manutenção. Esse conhecimento acumulado revelou que vocabulário pouco foi explorado como insumo à modelagem de conhecimento de código. Desenvolvemos então uma abordagem para identificar especialistas de código cujo conhecimento é definido pela similaridade existente entre vocabulários das entidades e dos desenvolvedores. Comparamos a precisão e cobertura da nossa abordagem com de duas outras: baseada em commits e baseada em percentual de LOC modificadas. Os resultados apontam que para indicar um único especialista, top-1, a nossa abordagem tem uma precisão menor, entre 29.9% e 10% que as abordagens de baseline. Já para indicar mais de um desenvolvedor especialista, até top-3, a nossa abordagem tem uma acurácia melhor de até 18.7% em relação as de baseline. Identificamos também que o conhecimento definido por similaridade quando combinado com um modelo baseado em autoria aumenta a capacidade de identificar especialistas, no R2 do modelo, em mais de 4 pontos percentuais. Concluímos que além de poder ser utilizado de forma isolada para modelar conhecimento de código e assim identificar especialistas, o vocabulário pode ser um componente adicional a modelos de conhecimento baseados em autoria e propriedade, já que capturam aspectos diferentes dos existentes nesse modelos.Identifiers and comments from a source code are the software vocabulary. Research point vocabularies as a valuable source of information about the project. To understand we developed a tool that extract them from source code. Exploring the data statistically, we identify two vocabularies properties: vocabulary size, that is a power function of LOC (Lines-Of-Code) and the repetition of vocabulary terms that fits alog-normal distribution. Vocabulary as well as their properties and operations were formalized based on the concept of multisets. Extraction tool and formalization made possible scientific cooperation on usage of vocabulary in maintenance activities. This accumulated knowledge has shown that vocabulary was not explored as an input to code knowledge. Then we developed a code experts identification approach whose knowledge is defined by existing similarity between entities and developers vocabularies. We compared precision and recall with two baseline approaches: based on commits and based on percentage of modified LOC.The results show that to indicate a single specialist, top-1, our approach has alower precision, between 29.9% and 10%,than baseline approaches. More than one specialist-developer, up to top-3, our approach has better accuracy of up to 18.7% over those of the baselines. We also identify that the knowledge defined by similarity when combined with an authorship model enhances the ability to identify experts, R2 of the model, by more than 4 points. We conclude that vocabulary can be solely used to expertise, and thus identify experts. In addition, vocabulary can be an additional component for models based on authorship and ownership, since it captures different aspects from ones existing in these models.Submitted by Johnny Rodrigues (johnnyrodrigues@ufcg.edu.br) on 2018-05-08T16:28:56Z No. of bitstreams: 1 KATYUSCO DE FARIAS SANTOS - DISSERTAÇÃO PPGCC 2015..pdf: 6449694 bytes, checksum: 9e1346ec6a91417520be4a04624afaa1 (MD5)Made available in DSpace on 2018-05-08T16:28:56Z (GMT). No. of bitstreams: 1 KATYUSCO DE FARIAS SANTOS - DISSERTAÇÃO PPGCC 2015..pdf: 6449694 bytes, checksum: 9e1346ec6a91417520be4a04624afaa1 (MD5) Previous issue date: 2015-02-28Universidade Federal de Campina GrandePÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃOUFCGBrasilCentro de Engenharia Elétrica e Informática - CEEICiência da Computação.Vocabulário de SoftwareEspecialista de CódigoCódigo-FonteSoftware VocabularySource CodeCode SpecialistVocabulário de Código-FonteMedidas de ExpertiseModelo Degree-Of-Knowledge DOKInvestigação sobre uso de vocabulário de código-fonte para identificação de especialistas.Research on the use of source code vocabulary to identify specialists.2015-02-282018-05-08T16:28:56Z2018-05-082018-05-08T16:28:56Zhttp://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606SANTOS, Katyusco de Farias. Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. 2015. 156 f. (Tese de Doutorado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2015. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisporinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFCGinstname:Universidade Federal de Campina Grande (UFCG)instacron:UFCGORIGINALKATYUSCO DE FARIAS SANTOS - DISSERTAÇÃO PPGCC 2015..pdfKATYUSCO DE FARIAS SANTOS - DISSERTAÇÃO PPGCC 2015..pdfapplication/pdf2066219http://dspace.sti.ufcg.edu.br:8080/xmlui/bitstream/riufcg/606/3/KATYUSCO+DE+FARIAS+SANTOS+-+DISSERTA%C3%87%C3%83O+PPGCC+2015..pdfb8bc72663c6ecbe4c6e703c13860c33eMD53LICENSElicense.txtlicense.txttext/plain; charset=utf-81748http://dspace.sti.ufcg.edu.br:8080/xmlui/bitstream/riufcg/606/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52riufcg/6062022-03-14 17:27:22.231oai:localhost:riufcg/606Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Biblioteca Digital de Teses e Dissertaçõeshttp://bdtd.ufcg.edu.br/PUBhttp://dspace.sti.ufcg.edu.br:8080/oai/requestbdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.bropendoar:48512024-07-01T09:55:03.366117Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG)false |
dc.title.pt_BR.fl_str_mv |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
dc.title.alternative.pt_BR.fl_str_mv |
Research on the use of source code vocabulary to identify specialists. |
title |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
spellingShingle |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. SANTOS, Katyusco de Farias. Ciência da Computação. Vocabulário de Software Especialista de Código Código-Fonte Software Vocabulary Source Code Code Specialist Vocabulário de Código-Fonte Medidas de Expertise Modelo Degree-Of-Knowledge DOK |
title_short |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
title_full |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
title_fullStr |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
title_full_unstemmed |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
title_sort |
Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. |
author |
SANTOS, Katyusco de Farias. |
author_facet |
SANTOS, Katyusco de Farias. |
author_role |
author |
dc.contributor.advisor2ID.pt_BR.fl_str_mv |
FIGUEIREDO, J. C. A. |
dc.contributor.advisor1.fl_str_mv |
GUERRERO, Dalton Dario Serey. |
dc.contributor.advisor1ID.fl_str_mv |
GUERRERO, D. D. S. |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/2050632960242405 |
dc.contributor.advisor2.fl_str_mv |
FIGUEIREDO, Jorge césar Abrantes de. |
dc.contributor.advisor2Lattes.fl_str_mv |
http://lattes.cnpq.br/1424808046858622 |
dc.contributor.referee1.fl_str_mv |
KULESZA, Uira. |
dc.contributor.referee2.fl_str_mv |
MARINHO, Leandro Balby. |
dc.contributor.referee3.fl_str_mv |
MASSONI, Tiago Lima. |
dc.contributor.referee4.fl_str_mv |
BITTENCOURT, Renato almeida. |
dc.contributor.authorID.fl_str_mv |
SANTOS, |
dc.contributor.authorLattes.fl_str_mv |
http://lattes.cnpq.br/1246085373474860 |
dc.contributor.author.fl_str_mv |
SANTOS, Katyusco de Farias. |
contributor_str_mv |
GUERRERO, Dalton Dario Serey. FIGUEIREDO, Jorge césar Abrantes de. KULESZA, Uira. MARINHO, Leandro Balby. MASSONI, Tiago Lima. BITTENCOURT, Renato almeida. |
dc.subject.cnpq.fl_str_mv |
Ciência da Computação. |
topic |
Ciência da Computação. Vocabulário de Software Especialista de Código Código-Fonte Software Vocabulary Source Code Code Specialist Vocabulário de Código-Fonte Medidas de Expertise Modelo Degree-Of-Knowledge DOK |
dc.subject.por.fl_str_mv |
Vocabulário de Software Especialista de Código Código-Fonte Software Vocabulary Source Code Code Specialist Vocabulário de Código-Fonte Medidas de Expertise Modelo Degree-Of-Knowledge DOK |
description |
Identificadores e comentários de um código fonte constituem o vocabulário de software. Pesquisas apontam vocabulários como uma fonte valorosa de informação sobre o projeto. Para entender a natureza e o potencial dos vocabulários, desenvolvemos um ferramental capaz de extraí-los a partir de código fonte. Explorando os dados estatisticamente, identificamos duas propriedades de vocabulários: tamanho, expresso como função de potência de LOC (Lines-Of-Code); e a repetição de seus termos, que se ajusta a uma distribuição log-normal. Vocabulários, bem como suas propriedades e operações foram formalizadas baseadas no conceito de multisets. O ferramental de extração e a formalização viabilizaram cooperações científicas sobre a utilidade de vocabulário sem atividades de manutenção. Esse conhecimento acumulado revelou que vocabulário pouco foi explorado como insumo à modelagem de conhecimento de código. Desenvolvemos então uma abordagem para identificar especialistas de código cujo conhecimento é definido pela similaridade existente entre vocabulários das entidades e dos desenvolvedores. Comparamos a precisão e cobertura da nossa abordagem com de duas outras: baseada em commits e baseada em percentual de LOC modificadas. Os resultados apontam que para indicar um único especialista, top-1, a nossa abordagem tem uma precisão menor, entre 29.9% e 10% que as abordagens de baseline. Já para indicar mais de um desenvolvedor especialista, até top-3, a nossa abordagem tem uma acurácia melhor de até 18.7% em relação as de baseline. Identificamos também que o conhecimento definido por similaridade quando combinado com um modelo baseado em autoria aumenta a capacidade de identificar especialistas, no R2 do modelo, em mais de 4 pontos percentuais. Concluímos que além de poder ser utilizado de forma isolada para modelar conhecimento de código e assim identificar especialistas, o vocabulário pode ser um componente adicional a modelos de conhecimento baseados em autoria e propriedade, já que capturam aspectos diferentes dos existentes nesse modelos. |
publishDate |
2015 |
dc.date.issued.fl_str_mv |
2015-02-28 |
dc.date.accessioned.fl_str_mv |
2018-05-08T16:28:56Z |
dc.date.available.fl_str_mv |
2018-05-08 2018-05-08T16:28:56Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/doctoralThesis |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606 |
dc.identifier.citation.fl_str_mv |
SANTOS, Katyusco de Farias. Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. 2015. 156 f. (Tese de Doutorado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2015. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606 |
url |
http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606 |
identifier_str_mv |
SANTOS, Katyusco de Farias. Investigação sobre uso de vocabulário de código-fonte para identificação de especialistas. 2015. 156 f. (Tese de Doutorado em Ciência da Computação) Programa de Pós-graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande - Paraíba - Brasil, 2015. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/606 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Campina Grande |
dc.publisher.program.fl_str_mv |
PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO |
dc.publisher.initials.fl_str_mv |
UFCG |
dc.publisher.country.fl_str_mv |
Brasil |
dc.publisher.department.fl_str_mv |
Centro de Engenharia Elétrica e Informática - CEEI |
publisher.none.fl_str_mv |
Universidade Federal de Campina Grande |
dc.source.none.fl_str_mv |
reponame:Biblioteca Digital de Teses e Dissertações da UFCG instname:Universidade Federal de Campina Grande (UFCG) instacron:UFCG |
instname_str |
Universidade Federal de Campina Grande (UFCG) |
instacron_str |
UFCG |
institution |
UFCG |
reponame_str |
Biblioteca Digital de Teses e Dissertações da UFCG |
collection |
Biblioteca Digital de Teses e Dissertações da UFCG |
bitstream.url.fl_str_mv |
http://dspace.sti.ufcg.edu.br:8080/xmlui/bitstream/riufcg/606/3/KATYUSCO+DE+FARIAS+SANTOS+-+DISSERTA%C3%87%C3%83O+PPGCC+2015..pdf http://dspace.sti.ufcg.edu.br:8080/xmlui/bitstream/riufcg/606/2/license.txt |
bitstream.checksum.fl_str_mv |
b8bc72663c6ecbe4c6e703c13860c33e 8a4605be74aa9ea9d79846c1fba20a33 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Biblioteca Digital de Teses e Dissertações da UFCG - Universidade Federal de Campina Grande (UFCG) |
repository.mail.fl_str_mv |
bdtd@setor.ufcg.edu.br || bdtd@setor.ufcg.edu.br |
_version_ |
1803396512482328576 |