IEEE Transactions on Software Engineering
Dynamic layout of distributed applications in FarGo
Proceedings of the 21st international conference on Software engineering
Programming and Deploying Java Mobile Agents Aglets
Programming and Deploying Java Mobile Agents Aglets
Implementing distribution and persistence aspects with aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A Hands-On Look at Java Mobile Agents
IEEE Internet Computing
Proceedings of the 2nd international conference on Aspect-oriented software development
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Separation of Concerns in Mobile Agent Applications
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Chisel: A Policy-Driven, Context-Aware, Dynamic Adaptation Framework
POLICY '03 Proceedings of the 4th IEEE International Workshop on Policies for Distributed Systems and Networks
Policy-based Separation of Concerns for Dynamic Code Mobility Management
COMPSAC '03 Proceedings of the 27th Annual International Conference on Computer Software and Applications
Agents in object-oriented software engineering
Software—Practice & Experience - Research Articles
An adaptive object model with dynamic role binding
Proceedings of the 27th international conference on Software engineering
Concurrency and Computation: Practice & Experience - Middleware for Grid Computing
Composing design patterns: a scalability study of aspect-oriented programming
Proceedings of the 5th international conference on Aspect-oriented software development
Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study
ICSM '06 Proceedings of the 22nd IEEE International Conference on Software Maintenance
Exceptions and aspects: the devil is in the details
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
A modular implementation framework for code mobility
Mobility '06 Proceedings of the 3rd international conference on Mobile technology, applications & systems
Aspectizing exception handling: a quantitative study
Advanced Topics in Exception Handling Techniques
Modularizing design patterns with aspects: a quantitative study
Transactions on Aspect-Oriented Software Development I
Hi-index | 0.00 |
Mobile agents have come forward as a technique for tackling the complexity of open distributed applications. However, the pervasive nature of code mobility implies that it cannot be modularized using only object-oriented (OO) concepts. In fact, developers frequently evidence the presence of mobility scattering in their system's modules. Despite these problems, they usually rely on OO application programming interfaces (APIs) offered by the mobility platforms. Such classical API-oriented designs suffer a number of architectural restrictions, and there is a pressing need for empowering developers with an architectural framework supporting a flexible incorporation of code mobility in the agent applications. This work presents an aspect-oriented software architecture, called ArchM, ensuring that code mobility has an enhanced modularization and variability in agent systems, and is straightforwardly introduced in otherwise stationary agents. It addresses OO APIs' restrictions and is independent of specific platforms and applications. An ArchM implementation also overcomes fine-grained problems related to mobility tangling and scattering at the implementation level. The usefulness and usability of ArchM are assessed within the context of two case studies and through its composition with two mobility platforms. Copyright © 2008 John Wiley & Sons, Ltd.