Use este identificador para citar ou linkar para este item: http://hdl.handle.net/1843/ESBF-9K5QBB
Tipo: Dissertação de Mestrado
Título: Remodularization analysis using semantic clustering
Autor(es): Gustavo Jansen de Souza Santos
Primeiro Orientador: Marco Tulio de Oliveira Valente
Primeiro membro da banca : Eduardo Magno Lages Figueiredo
Segundo membro da banca: Marcelo de Almeida Maia
Resumo: Durante a evolução de software, sua estrutura inevitavelmente se torna mais difícil de manter, a menos que um esforço explícito de manutenção seja feito para melhorá-la. No intuito de resolver esse problema, a recomendação comum consiste em organizar a estrutura do software em módulos. Esse processo é geralmente realizado através daotimização de valores de métricas estruturais de coesão e acoplamento, por exemplo. No entanto, trabalhos recentes começam a questionar a utilidade de métricas estruturais. Mais especificamente, essas métricas não expressam integralmente a melhoria na arquitetura resultante de um processo de manutenção. Nesta dissertação de mestrado, éseguida metodologia existente para avaliar métricas de software considerando remodularizações reais, ou seja, cuja manutenção foi realizada pelos arquitetos do software. Foi utilizado um conjunto de métricas que consideram similaridade textual entre artefatos de software, chamadas métricas conceituais. Para realizar essa tarefa, foi relatado um experimento sobre o uso de Agrupamento Semântico (Semantic Clustering) para avaliar remodularizações de software. Agrupamento Semântico é uma abordagem que se baseia em recuperação de informação e técnicas de agrupamento para extrair conjuntos de classes similares de acordo com seus vocabulários. Foi reportada a adaptação que realizou-se nessa técnica e esta adaptação foi avaliada usando seis remodularizações de quatro sistemas de software. Observou-se que Agrupamento Semântico e métricasconceituais podem ser usados para expressar e explicar a intenção dos arquitetors ao realizar operações de modularização recorrentes, como decomposição de módulos.
Abstract: As software evolves, its structure inevitably gets harder to understand and maintain, unless explicit effort is done to improve it. To tackle this problem, the common recommendation consists in organizing the software structure into modules. This process is often performed by optimizing the value of cohesion and coupling metrics, for example.However, recent work question the usefulness of structural metrics. More specifically, structural metrics do not seem to fully express the architectural improvement resulted from software maintenance. In this master dissertation, we follow an existing methodology to assess software metrics regarding real remodularization cases, i.e., in whichthe maintenance was performed by the softwares architects. We use a set of recently proposed metrics, called conceptual metrics, which consider textual similarity between software artifacts. To accomplish this task, we report an experiment on using Semantic Clustering to evaluate software remodularizations. Semantic Clustering is an approach that relies on information retrieval and clustering techniques to extract sets of similar classes in a system according to their vocabularies. In fact, we adapted Semantic Clustering to support remodularization analysis. We then evaluate our adaptation using six real-world remodularizations of four software systems. As a result, we conclude that Semantic Clustering and conceptual metrics can be used to express and explain the intention of architects when performing common modularization operations, suchas module decomposition.
Assunto: Software Reutilização
Computação
Engenharia de software
Idioma: Inglês
Editor: Universidade Federal de Minas Gerais
Sigla da Instituição: UFMG
Tipo de Acesso: Acesso Aberto
URI: http://hdl.handle.net/1843/ESBF-9K5QBB
Data do documento: 23-Jan-2014
Aparece nas coleções:Dissertações de Mestrado

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
gustavojansen.pdf1.76 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.