Especificação modular de restrições arquiteturais
Carregando...
Arquivos
Data
Autor(es)
Título da Revista
ISSN da Revista
Título de Volume
Editor
Universidade Federal de Minas Gerais
Descrição
Tipo
Dissertação de mestrado
Título alternativo
Primeiro orientador
Membros da banca
Ricardo Terra Nunes Bueno Villela
Ingrid Oliveira de Nunes
Mariza Andrade da Silva Bigonha
Ingrid Oliveira de Nunes
Mariza Andrade da Silva Bigonha
Resumo
Ao longo de sua evolução, sistemas de software tendem a gradualmente perder o alinhamento entre código e arquitetura, dando origem a um fenômeno conhecido como erosão arquitetural. DCL (Dependency Constraint Language) é uma linguagem de domínio específico que permite definir regras arquiteturais que devem ser obedecidas na implementação de um sistema. Neste trabalho, apresenta-se uma extensão de DCL com recursos para especificação reusável, modular e hierárquica de módulos. Essa extensão---chamada DCL 2.0--- foi avaliada em um sistema de grande porte do setor público do Estado de Minas Gerais. Nessa avaliação, foi possível detectar 771 violações arquiteturais, sendo que 74% somente puderam ser observadas devido aos recursos propostos em DCL 2.0.
Abstract
After years of continuous evolution, it is usual to observe misalignments between code and architecture, leading to a phenomenon known as architectural erosion. DCL (Dependency Constraint Language) is a domain-specific language allowing the specification of architectural rules that must be followed by a system implementation. In this master dissertation, we present an extension of DCL---called DCL 2.0---that provides features supporting the hierarchicaldefinition of modular and reusable architectural rules. We use DCL 2.0 to define architectural rules for a real-world system, maintained by a major public software company from Minas Gerais. We detect 771 architectural violations in this system, which 74% could only be detected due to the new features proposed by DCL 2.0.
Assunto
Computação, Engenharia de software, Software Arquitetura, Software Validação
Palavras-chave
Arquitetura de Software, Conformidade arquitetural, DCL, Erosão arquitetural