As modern computing environments become more open, distributed and pervasive, the software we build for those dynamic environments will need to become more adaptable and adaptive....
Reactive systems are systems whose purpose is to maintain a certain desirable state of affairs in their environment, and include information systems, groupware, workflow systems,...
Multicast trees are used in a variety of applications, such as publish/subscribe systems or content distribution networks. Existing algorithms for ad-hoc networks typically produc...
The Advanced Teaching and Learning Academic Server (Atlas) is a software system that supports web-based learning. Students can register for courses, and can navigate through perso...
This paper describes Project Kittyhawk, an undertaking at IBM Research to explore the construction of a nextgeneration platform capable of hosting many simultaneous web-scale work...