dc.contributorBorba, Paulo Henrique Monteiro
dc.creatorCosta Neto, Alberto
dc.date2013-09-03T17:34:21Z
dc.date2013-09-03T17:34:21Z
dc.date2010-03-05
dc.date.accessioned2023-09-28T23:02:53Z
dc.date.available2023-09-28T23:02:53Z
dc.identifierCOSTA NETO, A. Specifying design rules in aspect-oriented systems. 2010. 137 f. Tese (Doutorado em Ciência da Computação)-Centro de Informática, Universidade Federal de Pernambuco, Recife, 2010. Disponível em: <twiki.cin.ufpe.br/twiki/pub/SPG/GenteAreaThesis/acn-thesis-final.pdf>. Acesso em: 3 set. 2013.
dc.identifierhttps://ri.ufs.br/handle/riufs/699
dc.identifier.urihttps://repositorioslatinoamericanos.uchile.cl/handle/2250/9083224
dc.descriptionProgramação Orientada a Aspectos é conhecida como uma técnica para modularização de interesses transversais. Entretanto, construções que visam apoiar a modularidade transversal podem quebrar a modularidade de classe. Como consequência, os desenvolvedores de classes enfrentam problemas de modificabilidade, desenvolvimento em paralelo e entendimento, porque precisam estar conscientes da implementação dos aspectos sempre que forem desenvolver ou dar manutenção em uma classe. Ao mesmo tempo, aspectos são vulneráveis a mudanças nas classes, já que não existe um contrato especificando os pontos de interação entre estes elementos. Estes problemas podem ser mitigados através de Regras de Projeto entre classes e aspectos. Nós apresentamos uma linguagem para especificação de Regras de Projeto (LSD) e exploramos seus benefícios desde as fases iniciais do processo de desenvolvimento, especialmente com o objetivo de dar apoio ao desenvolvimento modular de classes e aspectos. Nós discutimos como nossa linguagem melhora a modularidade transversal sem quebrar a modularidade de classe. Além disso, especificamos a semântica da linguagem em Alloy. A linguagem é implementada através de uma extensão do abc (AspectBench Compiler), tornando mais fácil expressar e checar muitas das Regras de Projeto encontradas em sistemas Orientados a Aspectos. Nós avaliamos LSD usando o sistema Health Watcher como estudo de caso e comparamos com abordagens existentes._________________________________________________________________________________________ ABSTRACT: Aspect-Oriented Programming is known as a technique for modularizing crosscutting concerns. However, constructs aimed to support crosscutting modularity might actually break class modularity. As a consequence, class developers face changeability, parallel development and comprehensibility problems, because they must be aware of aspects whenever they develop or maintain a class. At the same time, aspects are vulnerable to changes in classes, since there is no contract specifying the points of interaction amongst these elements. These problems can be mitigated by using adequate Design Rules between classes and aspects. We present a Design Rule specification language (LSD) and explore its benefits since the initial phases of the development process, specially with the aim of supporting modular development of classes and aspects. We discuss how our language improves crosscutting modularity without breaking class modularity. Besides, we specify the language semantics in Alloy. The language is implemented through an extension of abc (AspectBench Compiler), making it easy to express and check most of the Design Rules found in Aspect-Oriented systems. We evaluate the language using the Health Watcher system as case study and compare it with existent approaches.
dc.formatapplication/pdf
dc.languageen
dc.subjectProgramação orientada a aspectos
dc.subjectRegras de projeto
dc.subjectModularidade
dc.titleSpecifying design rules in aspect-oriented systems
dc.typeTese


Este ítem pertenece a la siguiente institución