Subject-oriented programming: a critique of pure objects
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Software architecture in practice
Software architecture in practice
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
DAOP-ADL: an architecture description language for dynamic component and aspect-based development
Proceedings of the 2nd international conference on Generative programming and component engineering
Integrating aspects in software architectures: PRISMA applied to robotic tele-operated systems
Information and Software Technology
DiaSim: A parameterized simulator for pervasive computing applications
PERCOM '09 Proceedings of the 2009 IEEE International Conference on Pervasive Computing and Communications
Hi-index | 0.00 |
The increasing size and complexity of distributed systems create a need to raise the level of abstraction for their development. This need becomes critical for pervasive computing where non-functional properties, such as security, must be guaranteed. Architecture description languages (ADLs) propose a promising approach to coping with the size and complexity of pervasive computing systems. A system is defined by a high-level description that may be used to produce a programming framework. However, non-functional properties are not specifically addressed by existing ADL works. To address this issue aspect-oriented programming is a well-proven technique to properly modularize non-functional concerns that can be dealt with by weaving dedicated code into a program. In this paper, we present DiaAspect, an aspect-oriented language for an ADL. ADLs are a key to our approach because they expose features enabling an accurate coordination of aspects. We demonstrate the expressiveness of DiaAspect with two examples of security policies in pervasive computing. We also show how, combining the knowledge of the architecture description with aspect code, improves aspect weaving in the implementation code.