The fluid computing middleware: Bringing application fluidity to the mobile internet
Abstract
The Fluid Computing middleware allows application data to flow, as a liquid, between devices. The middleware, based on the Model-View-Controller design pattern, transforms a collection of devices into a cooperative platform and provides application programmers with appropriate abstractions to use generic data management services, such as data replication and synchronization of arbitrary data structures. Relieved from managing this underlying complexity, programmers can focus on developing new application functionality. In particular, they can program applications that seamlessly transition between devices and connectivity degrees, by relying on the Fluid real-time optimistic replication mechanism. By shifting the focus from the network and devices to the data, Fluid Computing enables new interaction paradigms, where users can access and manipulate their data from any of their devices transparently. Applications, then, become multidevice - a characteristic that can be applied to both single-user and collaboration scenarios.