IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  Collaboration  >  

Fluid Sync

A Java framework that facilitates the development of collaborative and multi-device applications. (This is an ETTK technology).


Date Posted: September 29, 2005
This is an ettk technology.
OverviewRequirements Download FAQs Forum Reviews

What is Fluid Sync?

Fluid Sync is a JavaTM library for application developers who want to add multi-user collaboration or multi-device capabilities to their application. Applications become "fluid" in the sense that a running application can be spread to a new device. A new instance is created with the exact same application state. Initially, it remains coupled to the first instance: User changes in one become immediately visible in the other. When an instance becomes disconnected from the network, there is still a full copy of the application data available, and the user can continue interacting with the application. When the user reconnects, changes are reconciled with other instances.

Fluid Sync can be used in three main application areas:

  • Multi-device applications: Several devices may be temporarily coupled to behave as one single device (for example, a mobile and a stationary device).
  • Mitigation of the effects of variable connectivity: Applications on mobile devices can exploit full or intermittent connectivity or operate in disconnected operation -- all in a seamless fashion.
  • Collaboration: Multi-person applications enable several users to collaborate on a shared document in synchronous mode (at the same time) or in asynchronous mode (at different times) without the user having to switch the application.

How does it work?

With Fluid Sync, each device has a copy of the application and a replica of the application state that a real-time synchronization protocol keeps consistent. The replicas are only weakly consistent (not strongly consistent, as with traditional database systems); this weak consistency makes it possible for Fluid Sync to cope with intermittent connectivity or periods of disconnection. The degree of consistency is, in fact, proportional to the degree of network connectivity.

This technology is part of the Emerging Technologies Toolkit (ETTK), a special collection of emerging technologies from IBM's software development and research labs.


About the technology author(s):
Daniela Bourges-Waldegg has been a research staff member at the IBM Zurich Research Laboratory since January 1999, specializing in mobile computing. She holds Ph.D. and M.S. degrees in computer science from Université de Rennes 1, France, and a B.S. degree in electrical engineering from the Metropolitan Autonomous University of Mexico City.

Yann Duponchel received an M.S. in telecommunication engineering from the Ecole Nationale Supérieure des Télécommunications de Bretagne, France, in 1998. In the same year, he joined the IBM Zurich Research Laboratory to work on packet-based telephone systems. Mr. Duponchel's research interests include new communication protocols, distributed systems, artificial intelligence, and object-oriented programming.

Marcel Graf has been a research staff member at the IBM Zurich Research Laboratory since 1996, working on projects in the area of distributed computing, such as Voice Over IP, service creation for "telcos," and multi-device applications in ubiquitous computing. He received Ph.D. and M.S. degrees in electrical engineering from the University of Stuttgart, Germany.

Michael Moser joined the IBM Zurich Research Laboratory as a research staff member in 1992, working in different areas such as high speed networks, protocol and data conversion, Web applications, distributed and mobile computing, data synchronization, and event correlation. He received Ph.D. and M.S. degrees in electrical engineering from ETH (Swiss Federal Institute of Technology) in Zürich, Switzerland.

Download now Download now
View demo View demo

Related technologies

For platform(s):
Java

For topics:
Emerging Technologies Toolkit (ETTK), model-view-controller (MVC), real time, replication, synchronization, ubiquitous computing, mobile devices


Related resources

jStart can supply assistance in deploying a solution or prototype at your business using this ETTK technology

 

    About IBM Privacy Contact