Aspect-oriented programming: Introduction
Communications of the ACM
The C++ Programming Language, Third Edition
The C++ Programming Language, Third Edition
AspectC++: an aspect-oriented extension to the C++ programming language
CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
Computer
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
A Simple and Practical Approach to Unit Testing: The JML and JUnit Way
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Eos: instance-level aspects for integrated system design
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Hi-index | 0.00 |
In object-oriented software development, UML artefacts are used to illustrate and define the structure and the behaviour of the software system, while the semantics is usually described in a formal or informal specification language. The specification often consists of sets of constraints defined over the software components. When implementing the model, the specification is taken into consideration by the implementor. Since a significant proportion of the implementation consists of human-generated code, errors may be introduced in the implementation model. To detect these errors, the specified constraints need to be checked in the implementation. In this paper, we present Limes, an imperative constraint implementation language, which adopts aspect-oriented programming to describe constraint checking in a non-invasive way. Limes can be used at the design level, and can add constraint checking to the implementation.