Buscar

 

RI UFLA (Universidade Federal de Lavras) >
DCC - Departamento de Ciência da Computação >
DCC - Programa de Pós-graduação >
DCC - Ciência da Computação - Mestrado (Dissertações) >

Por favor, utilize esse identificador para citar este item ou usar como link: http://repositorio.ufla.br/jspui/handle/1/12830

Título: Uma abordagem para reestruturação de sistemas de software orientados a objetos utilizando medidas de acoplamento e coesão
Título Alternativo: An approach to restructure object oriented software using software metrics of coupling and cohesion
Autor(es): Santos, Danilo Batista dos
Lattes: http://buscatextual.cnpq.br/buscatextual/visualizacv.do?id=K4315608E6
Orientador: Costa, Heitor Augustus Xavier
Membro da banca: Resende, Antônio Maria Pereira de
Membro da banca: Parreira Junior, Paulo Afonso
Membro da banca: Viana, Matheus Carvalho
Membro da banca: Dias, Diego Roberto Colombo
Assunto: Software – Qualidade
Reestruturação de software
Medidas de software
Software – Quality
Software restructuring
Software measures
Data de Defesa: 27-Jan-2017
Data de publicação: 5-Mai-2017
Referência: SANTOS, D. B. dos. Uma abordagem para reestruturação de sistemas de software orientados a objetos utilizando medidas de acoplamento e coesão. 2017. 132 p. Dissertação (Mestrado em Ciência da Computação)-Universidade Federal de Lavras, Lavras, 2017.
Resumo: Desde as fases iniciais do desenvolvimento do sistema de software, uma das principais preocupações é com a qualidade desses sistemas. Para alcançar esse objetivo, esses sistemas devem evoluir constantemente para atender às necessidades dos usuários e do ambiente em que está inserido - lei da mudança contínua. Por isso, são conduzidas manutenções para corrigir, adicionar ou adaptar funções no sistema. Entretanto, se essas manutenções forem conduzidas em discordância com os padrões de projeto empregados e às melhores práticas de programação, o sistema se tornará progressivamente mais acoplado e menos coeso, sendo menos modularizado e degradando a sua qualidade interna. Para agir na contracorrente dessa degradação, neste trabalho, é apresentada uma Abordagem para Reestruturar Sistemas de Software (ARS), por meio da movimentação de classes entre pacotes, para gerar sistemas com melhor qualidade interna, mais coesos e menos acoplados, tornando-os mais modulares e manuteníveis. Para alcançar esse objetivo, ARS apresenta um conjunto de passos bem definidos para realizar a reestruturação, utilizando medidas de software para determinar o estado do sistema e heurísticas desenvolvidas para tomar decisões ao longo da reestruturação. ARS também é apoiada pela heurística Simulated Annealing, para evitar a subjetividade humana e aumentar as chances de sucesso da sua aplicação. O resultado da avaliação de ARS revela sua capacidade de aprimorar a qualidade estrutural de sistemas de software, pois essa abordagem é capaz de melhorar os valores das sete medidas de software utilizadas de forma estatisticamente significativa e reduzir a quantidade de dependências entre seus pacotes, gerando sistemas mais modulares e manuteníveis. Em outra avaliação, ARS foi comparada com outras abordagens existentes, indicando que ARS é mais eficiente do que elas. Esse resultado foi obtido por meio de um teste multivariado de médias, que comprovou que as estruturas sugeridas por ARS apresentaram maior ganho aos valores das medidas de software utilizadas e, consequentemente, melhor estrutura interna que as demais abordagens. Portanto, a aplicação de ARS é capaz de aprimorar a qualidade estrutural do sistema, agindo na contracorrente da degradação da qualidade ocasionada pelas manutenções mal planejadas. Desse modo, ARS possibilita que futuras manutenções sejam realizadas com menos dificuldade, reduzindo os recursos e esforços empregados na sua condução.
Abstract: Since the early stages of software development, one of the main concerns is that it has quality. To achieve this goal, software must constantly evolve to meet the needs of users and the environment in which it is embedded - law of continuous change. Therefore, maintenance is conducted to correct, add or adapt features in the software. However, if such maintenance is conducted in disagreement with the design standards employed and best programming practices, the software will become progressively more coupled and less cohesive, becoming less modularized, and degrading its internal quality. In order to act in the countercurrent of this degradation, this work presents an approach to restructuring software (ARS) through the movement of classes between packages, to generate software with better internal quality, more cohesive and less coupled, making them more modular and maintainable. To achieve this goal, the ARS presents a set of well-defined steps to carry out the restructuring process. In this process software measures are used to determine the state of the software and heuristics to make decisions throughout the restructuring. This approach is also supported by the Simulated Annealing heuristic, to avoid human subjectivity and increase the chances of successful application of ARS. The result of the evaluation of ARS reveals its ability to improve the structural quality of the software. This improvement was proven, since this approach is able to improve the values of the seven measures of software used in a statistically significant way and to reduce the amount of dependencies between its packages, generating more modular and maintainable software. In another evaluation, ARS was compared to other approaches, indicating that ARS is more efficient than them. This result was obtained through a multivariate test of means, which proved that the structures suggested by ARS presented greater gain to the values of the software measures used and, consequently, a better internal structure than the other approaches. Therefore, the application of ARS is able to improve the structural quality of the software, acting in the countercurrent of the degradation of its quality caused by the badly planned maintenance. In this way, ARS makes possible for future maintenance to be carried out with less difficulty, reducing the resources and efforts used to drive it.
URI: http://repositorio.ufla.br/jspui/handle/1/12830
Publicador: Universidade Federal de Lavras
Idioma: por
Aparece nas coleções: DCC - Ciência da Computação - Mestrado (Dissertações)

Arquivos neste Item:

Arquivo Descrição TamanhoFormato
DISSERTAÇÃO_Uma abordagem para reestruturação de sistemas de software orientados a objetos ....pdf3,63 MBAdobe PDFVer/abrir

Itens protegidos por copyright, com todos os direitos reservados, Salvo indicação em contrário.


Mostrar estatísticas

 


DSpace Software Copyright © 2002-2007 MIT and Hewlett-Packard - Feedback