Submitted by Kleber Silva (kleberbs@ufba.br) on 2017-06-01T20:31:21Z
No. of bitstreams: 1
PDF - Tese.pdf: 3701924 bytes, checksum: 3dc861b1466bb1ab4f6727b3e26ad2f6 (MD5) / Approved for entry into archive by Vanessa Reis (vanessa.jamile@ufba.br) on 2017-06-07T11:34:57Z (GMT) No. of bitstreams: 1
PDF - Tese.pdf: 3701924 bytes, checksum: 3dc861b1466bb1ab4f6727b3e26ad2f6 (MD5) / Made available in DSpace on 2017-06-07T11:34:57Z (GMT). No. of bitstreams: 1
PDF - Tese.pdf: 3701924 bytes, checksum: 3dc861b1466bb1ab4f6727b3e26ad2f6 (MD5) / Coesão tem sido reconhecida como um importante atributo de qualidade em design de software ao longo de décadas. Coesão é definida como o grau em que um módulo está focado em um único interesse do software. Entretanto, medir coesão não é trivial, pois é difícil capturar os interesses realizados por módulos de software. Métricas de coesão bem conhecidas dependem da estrutura do código fonte, pois elas avaliam como métodos dentro de um módulo acessam atributos em comum. No entanto, coesão nem sempre é bem representada pela estrutura internade módulos. Há situações em que métricas de coesão estrutural falham em representar a coesão de módulos de software. Sabendo desta limitação, pesquisadores têm proposto métricas de coesão conceitual, que consistem em formas alternativas de medição de coesão baseadas em quais interesses cada módulo realiza. Entretanto, falta evidência empírica para compreender como métricas de coesão conceitual se encaixam entre diversas métricas de coesão estrutural que têm sido propostas e bem estabelecidas nas últimas décadas e incorporadas em ferramentas de medição de software em escala industrial. Neste contexto, realizamos uma série de estudos empíricos a fim de explicar coesão conceitual como uma diferente forma de medir coesão quando comparada com coesão estrutural convencional. De modo geral, nossa pesquisa envolveu oitenta desenvolvedores de software de nove países, assim como seis sistemas de médio a grande porte, com código aberto e amplamente utilizados na indústria por diversos anos, incluindo um conjunto de aproximadamente trinta mil revisões no código fonte. Como resultado, nós pudemos explicar que coesão conceitual é ortogonal a coesão estrutural, por representar uma dimensão adicional na medição de coesão. Nós encontramos também que tal dimensão adicional é mais próxima de como desenvolvedores raciocinam sobre coesão de módulos e que coesão conceitual é um potencial indicador de propensão a mudança. Mais ainda, através de um estudo adicional, nós demonstramos e explicamos que a seleção de uma estratégia de mapeamento de interesses não deve ser negligenciada, pois isso impacta significativamente nos resultados de medição de coesão conceitual. Entre as estratégias estudadas, o mapeamento manual leva a melhores resultados. Entretanto, como isso requer muito esforço, uma das estratégias de mapeamento automático investigadas pode também ser considerada quando a estratégia manual não é viável. Nós disponibilizamos na web todos os nossos dados e materiais de estudo, incluindo um novo mapeamento manual de interesses sobre um sistema real, e três extensões de ferramenta para computar uma métrica de coesão conceitual. Esses materiais podem ser utilizados ou estendidos por pesquisadores em estudos futuros. Em resumo, nossos resultados podem ser diretamente usados por engenheiros de software quando estiverem planejando ou executando medição de coesão em suas tarefas e quando estiverem construindo ferramentas de medição para ambientes de desenvolvimento. De forma geral, isto justifica esforço adicional para continuar melhorando as tecnologias e o corpo de conhecimento sobre medição de coesão.
Identifer | oai:union.ndltd.org:IBICT/oai:192.168.11:11:ri/22845 |
Date | 03 August 2015 |
Creators | Silva, Bruno Carreiro da |
Contributors | Sant’Anna, Cláudio Nogueira, Sant’Anna, Cláudio Nogueira, Mendonça Neto, Manoel Gomes de, Bittencourt, Roberto Almeida, Valente, Marco Tulio de Oliveira, Massoni, Tiago Lima, Apolinário Júnior, Antonio Lopes |
Publisher | Instituto de Matemática, Programa Multiinstitucional de Pós-graduação em Ciência da Computação, UFBA-UNIFACS-UEFS, IM, brasil |
Source Sets | IBICT Brazilian ETDs |
Language | English |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/doctoralThesis |
Source | reponame:Repositório Institucional da UFBA, instname:Universidade Federal da Bahia, instacron:UFBA |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0022 seconds