University of Ulm
Computer Science
Verteilte Systeme/Distributed Systems
Projects   |   Publications   |   Teaching   |   Persons Search   |   Intranet

Current Position
University of Ulm
Computer Science
Distributed Systems Lab
Middleware Core

Additional Topics
Project Description
Team and Contact
Student Projects

Middleware Core


(currently under construction)

Distributed applications face far more restrictions imposed by bad or varying system conditions than local applications. Thus nonfunctional properties or quality-of-service aspects become more important. For coping with scarce resources or other system restrictions, applications need to know what their clients expect and to dynamically decide on how the application's functionality is implemented best.

We assume that distributed applications are built using distributed objects which communicate with one another. The AspectIX middleware now supports adaptable and QoS-aware distributed objects. The clients of an object can express their requirements in terms of quality or nonfunctional properties. The object can issue a guarantee for fulfilling the requirements. The object implementation will consider the current system conditions, the current state of sub-ordinate objects acting as service provider, and the clients' requirements for realizing its functionality. If an object can no longer hold its issued guarantees it may adapt itself and eventually revoke guarantees. This in turn may cause clients to adapt to the new condition.

AspectIX is designed to be CORBA-compliant. Thus, ordinary CORBA objects can be hosted on an AspectIX ORB, and remote CORBA objects can be accessed from AspectIX. As only for some special objects of an application the mentioned requirements may be actually necessary an application can be partially developed as pure CORBA application and only some dedicated objects are treated as AspectIX objects.

Inside of an AspectIX object multiple quality implementations may support the nonfunctional requirements expressed by a client. As often the functional object implementation has to interact with the quality implementations, object development is not an easy task. AspectIX supports object developement by a developement environment that can almost automatically integrate quality implementations with functional code. The developement environment is based on techniques known from aspect-oriented programming.

To address especially scalability, AspectIX introduces the notion of policy-enabled systems. Strategic decisions are mapped to policy rules and mechanisms which have to be strictly separated from each other. A policy decision engine considers rules from object developers, application and domain administrator, and users to find a decision that has to be executed by the object. With allowing external entities to influence object-internal decisions in a controlled way, we gain administrative scalability. Additionally, the strict separation of policies and mechanisms supports reuse and facilitates maintenance and system management.

As AspectIX objects are fragmented, i.e., different parts of the same object reside on different locations, we investigate how our architecture can be used in the context of traditional mobile agents. It turns out that agents based on AspectIX objects can be more flexible than traditional agents. Especially, large agents can be built which is hardly possible with monolithic agents, as the migration costs become too high. This research is carried out in a sub-project called FOMAS

Related Publications

Hans P. Reiser, Franz J. Hauck, Rüdiger Kapitza, Andreas I. Schmied: Integrating fragmented objects into a CORBA environment. Proc. of the Net.ObjectDays (Erfurt, Germany, Sep. 22-25, 2003), pp. 264-272 (c) Net.ObjectDays 2003 c/o tranSIT GmbH[PDF][PDF]

Franz J. Hauck, Ulrich Becker, Martin Geier, Erich Meier, Uwe Rastofer, Martin Steckermeier: AspectIX: a quality-aware, object-based middleware architecture. Proc. of the 3rd IFIP Int. Conf. on Distrib. Appl. and Interoperable Sys. - DAIS (Krakow, Poland, Sep. 17-19, 2001). Kluver, 2001. [PDF][PDF]

See also: complete list of AspectIX-related publications

Copyright © 2007 Distributed Systems Lab · Uni Ulm Imprint