Please use this identifier to cite or link to this item:
http://hdl.handle.net/1843/ESBF-9Q3HZK
Type: | Tese de Doutorado |
Title: | Mining architectural violations from version history |
Authors: | Cristiano Amaral Maffort |
First Advisor: | Marco Tulio de Oliveira Valente |
First Co-advisor: | Mariza Andrade da Silva Bigonha |
First Referee: | Mariza Andrade da Silva Bigonha |
Second Referee: | Alessandro Fabricio Garcia |
Third Referee: | Claudia Maria Lima Werner |
metadata.dc.contributor.referee4: | Eduardo Magno Lages Figueiredo |
metadata.dc.contributor.referee5: | Ricardo Terra Nunes Bueno Villela |
Abstract: | Vericação de conformidade arquitetural é uma atividade chave para controle da qualidade de sistemas de software, tendo como ob jetivo central revelar diferenças entre aarquitetura concreta e a arquitetura planejada de um sistema. Entretanto, esp ecicar a arquitetura de um software p o de ser uma tarefa difícil, já que ela deve ser realizadap or um esp ecialista no sistema, o qual deve ter um profundo entendimento sobre ele. Nesta tese de doutorado, prop õ e-se uma nova ab ordagem para vericação de conformidade arquitetural baseada na combinação de técnicas de análise estática e histórica decó digo fonte. Para isso, a ab ordagem prop osta utiliza atualmente quatro heurísticas para detectar ausências e divergências presentes no có digo fonte de sistemas orientados por ob jetos. A ab ordagem prop osta tamb ém inclui um pro cesso iterativo para vericação de conformidade arquitetural, o qual foi utilizado para avaliar a arquiteturade dois sistemas de informação de grande p orte, para os quais a ab ordagem prop osta foi capaz de identicar 539 violaçõ es, com precisão de 62,7% e 53,8%. Além disso, a também foram avaliados dois sistemas open-source, para os quais foram identicadas344 violaçõ es, com precisão de 51,2% e 59,2%. Nesta tese de doutorado apresenta-se tamb ém um estudo exploratório da apli-cação de uma técnica de mineração de dados, chamada mineração de itens frequentes, a qual é utilizada para detectar padrõ es arquiteturais a partir de informaçõ es estáticas e históricas extraídas do có digo fonte. A ab ordagem prop osta utiliza os padrões arquiteturais detectados para selecionar ausências e divergências no có digo fonte de sistemas. Avaliou-se a ab ordagem prop osta em um sistema de informação de grande porte, para o qual foram detectadas 137 violaçõ es arquiteturais, com precisão global de 41,2%. |
Abstract: | Software architecture conformance is a key software quality control activity that aims to reveal the progressive gap normally observed between concrete and planned software architectures. However, formally specifying software architectures is not a trivial task, as it must be done by an expert on the system under analysis. In this thesis, we present an approach for architecture conformance based on a combination of static and historical source code analysis. The proposed approach relies on four heuristics for detecting both absences (something expected was not found) and divergences (something prohibited was found) in source code based architectures. We also present an architecture conformance process based on the proposed approach. We followed this process to evaluate the architecture of two industrial-strength information systems, when 539 architectural violations were detected, with an overall precision of 62.7% and 53.8%. We also evaluated our approach in two open-source systems, when 345 architectural violations were detected, achieving an overall precision of 53.3% and 59.2%. Additionally, this thesis presents an exploratory study on the application of a data mining technique called frequent itemset mining, which was used to detect architectural patterns using static and historical information extracted from source code. Furthermore, the detected architectural patterns are used to identify absences and divergences in the code. We evaluated the proposed approach in an industrialstrength information system, founding 137 architectural violations, with an overall precision of 41.2%. |
Subject: | Computação Engenharia de software Software Verificação |
language: | Inglês |
Publisher: | Universidade Federal de Minas Gerais |
Publisher Initials: | UFMG |
Rights: | Acesso Aberto |
URI: | http://hdl.handle.net/1843/ESBF-9Q3HZK |
Issue Date: | 9-Oct-2014 |
Appears in Collections: | Teses de Doutorado |
Files in This Item:
File | Description | Size | Format | |
---|---|---|---|---|
cristianomaffort.pdf | 5.12 MB | Adobe PDF | View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.