Toward a method of object-oriented concurrent programming
Communications of the ACM
Communications of the ACM
The Essence of the Visitor Pattern
COMPSAC '98 Proceedings of the 22nd International Computer Software and Applications Conference
Deploying Distributed Objects on the Internet
Advances in Distributed Systems, Advanced Distributed Computing: From Algorithms to Systems
Incremental Replication for Mobility Support in OBIWAN
ICDCS '02 Proceedings of the 22 nd International Conference on Distributed Computing Systems (ICDCS'02)
Aspect-Oriented Programming with C# and .NET
ISORC '02 Proceedings of the Fifth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
A technique for constructing aspect weavers using a program transformation engine
Proceedings of the 3rd international conference on Aspect-oriented software development
Transaction Policies for Mobile Networks
POLICY '04 Proceedings of the Fifth IEEE International Workshop on Policies for Distributed Systems and Networks
Loosely-Coupled, Mobile Replication of Objects with Transactions
ICPADS '04 Proceedings of the Parallel and Distributed Systems, Tenth International Conference
PoliPer: policies for mobile and pervasive environments
ARM '04 Proceedings of the 3rd workshop on Adaptive and reflective middleware
Using aspects for integrating a middleware for dynamic adaptation
AOMD '05 Proceedings of the 1st workshop on Aspect oriented middleware development
Spoon: annotation-driven program transformation --- the AOP case
AOMD '05 Proceedings of the 1st workshop on Aspect oriented middleware development
Hi-index | 0.00 |
Developing a distributed application for mobile resource constrained devices is a difficult and error-prone task that requires awareness of several system-level details (e.g., fault-tolerance, ...).Several mobile middleware solutions addressing these issues have been proposed. However, they rely on either significant changes in application structure, extensions to the programming language syntax and semantics, domain specific languages, cumbersome development tools, or a combination of the above. The main disadvantages of these approaches are lack of transparency and reduced portability.In this paper we describe our work on enabling transparent integration between applications and middleware without changing application structure, extending the programming language or otherwise reducing portability. We used the OBIWAN middleware but our solutions are general. To achieve this goal we employ program analysis and transformation techniques for extending application code with hooks for calling middleware services. Application code extension is performed automatically at compile-time by a code extension tool integrated with the development environment tool set. We describe the implementation of our .NET and Java prototypes and discuss evaluation results.