Affiliation:
1. University of Texas at San Antonio
2. University of California, San Diego
Abstract
Programmers employ crosscutting concepts, such as design patterns and other programming idioms, when their design ideas cannot be efficiently or effectively modularized in the underlying programming language. As a result, implementations of these crosscutting concepts can be hard to change even when the code is well structured.In this article, we describe Arcum, a system that supports the modular maintenance of crosscutting concepts. Arcum can be used to both check essential constraints of crosscutting concepts and to substitute crosscutting concept implementations with alternative implementations. Arcum is complementary to existing refactoring systems that focus on meaning-preserving program transformations at the programming-language-semantics level, because Arcum focuses on transformations at the conceptual level.We present the underpinnings of the Arcum approach and show how Arcum can be used to address several classical software engineering problems.
Funder
Division of Computing and Communication Foundations
Publisher
Association for Computing Machinery (ACM)
Reference87 articles.
1. Abiteboul S. Hull R. and Vianu V. 1995. Foundations of Databases. Addison-Wesley Boston MA. Abiteboul S. Hull R. and Vianu V. 1995. Foundations of Databases. Addison-Wesley Boston MA.
2. The method of attributes for data flow analysis
3. The method of attributes for data flow analysis