Separation of Crosscutting Concerns at the Design Level: An Extension to the UML Metamodel

Author(s):  
Adam Przybylek
Author(s):  
Otávio Augusto Lazzarini Lemos ◽  
Daniel Carnio Junqueira ◽  
Marco Aurélio Graciotto Silva ◽  
Renata Pontin de Mattos Fortes ◽  
John Stamey

Author(s):  
Bruna Brandão ◽  
Flávia Santoro ◽  
Leonardo Azevedo

In business process models, elements can be scattered (repeated) within different processes, making it difficult to handle changes, analyze process for improvements, or check crosscutting impacts. These scattered elements are named as Aspects. Similar to the aspect-oriented paradigm in programming languages, in BPM, aspect handling has the goal to modularize the crosscutting concerns spread across the models. This process modularization facilitates the management of the process (reuse, maintenance and understanding). The current approaches for aspect identification are made manually; thus, resulting in the problem of subjectivity and lack of systematization. This paper proposes a method to automatically identify aspects in business process from its event logs. The method is based on mining techniques and it aims to solve the problem of the subjectivity identification made by specialists. The initial results from a preliminary evaluation showed evidences that the method identified correctly the aspects present in the process model.


Author(s):  
Tom Mens ◽  
Ragnhild Van Der Straeten ◽  
Jocelyn Simmonds

As the standard for object-oriented analysis and design, the UML (Unified Modeling Language) metamodel, as well as contemporary CASE (Computer-Aided Software Engineering) tools, must provide adequate and integrated support for all essential aspects of software evolution. This includes version control, traceability, impact analysis, change propagation, inconsistency management, and model refactorings. This chapter focuses on the latter two aspects, and shows how tool support for these aspects can be provided. First, we extend the UML metamodel with support for versioning. Second, we make a classification of the possible inconsistencies of UML design models. Finally, we use the formalism of description logics, a decidable fragment of first-order predicate logic, to express logic rules that can detect and resolve these inconsistencies. We also show how the logic rules are used to propose model refactorings. As a proof of concept, we report on the results of initial experiments with a prototype tool we developed for this approach.


Author(s):  
Esteban S. Abait ◽  
Santiago A. Vidal ◽  
Claudia A. Marcos ◽  
Sandra I. Casas ◽  
Albert A. Osiris Sofia

Aspect-Oriented Software Development (AOSD) aims at solving the problem of encapsulating crosscutting concerns, which orthogonally crosscut the components of a system, in units called aspects. This encapsulation improves the modularization of a system and in consequence its maintenance and evolution. In this work, the authors propose a systematic process for the migration of object-oriented systems to aspect-oriented ones. This migration is achieved in two main phases: crosscutting concern identification (aspect mining) and code transformation (aspect refactoring). The aspect mining phase is based on dynamic analysis and association rules to identify potential crosscutting concerns. The aspect refactoring phase, on the other hand, uses inference rules to identify the refactoring that can be applied. The whole process is described and its application on a real system is assessed.


Sign in / Sign up

Export Citation Format

Share Document