BISCUITS: Bidirectional Information Systems for
Collaborative, Updatable, Interoperable, and Trusted Sharing


Purpose and Background

Big data processing is now widely employed in all aspects of our lives. Usually, parts or copies of a huge amount of data are stored in separate locations, and is infeasible to be collected and processed in a centralized manner, as it would be exceedingly inefficient to transfer them over the network. We therefore need new software foundations based on which big data can be efficiently analyzed and shared in a distributed way.

A highly relevant research area is bidirectional transformations, which provide a reliable mechanism for data synchronization. The study of bidirectional transformations originates from the long-standing problem of view updating in databases, and has led to a rich collection of bidirectional languages with new programming models tailored for data synchronization. Despite the potential in solving practical synchronization problems including data interoperability, bidirectional technologies are not widely employed yet, and most applications of bidirectional transformations remain only proof of concept.

In this research, we aim to further develop bidirectional technologies to make them more reliable, scalable, and efficient, so as to establish solid foundations for integration, sharing, and interoperability of autonomic distributed big data.

interoperability.png


Research Method

We will build on our previous research on bidirectional transformations to achieve the following three goals:

  1. “To further develop bidirectional transformation technologies”, to enable modular development, static analysis and automatic verification, strong debugging mechanism, and learning support for large-scale, reliable, and systematic construction of bidirectional applications.
  2. “To build a new foundation with bidirectional transformations”, which will feature a novel view-passing model that can achieve efficient asynchronous parallel data processing and facilitate interoperability of autonomic distributed data.
  3. “To construct practical applications of bidirectional transformations”, solving real-world problems using the view-passing model.

Expected Research Achievements and Scientific Significance

The unique contribution of this research is that we will push the scalability and reliability of bidirectional transformations to the limit, and be able to demonstrate its practical values using real-world applications about interoperability of autonomic distributed data.

This research continues our leading work on practical bidirectional transformations (e.g., bidirectional languages designed to offer full programmability), and is a groundbreaking step in solving important real-world problems using bidirectional transformations. By developing a system for autonomic distributed big data, we will eliminate the problem of centralized management in the current cloud-based computing environments, and provide a new methodology of distributed computing.


Publications Relevant to the Project

H-S. Ko, T. Zan, Z. Hu, BiGUL: A Formally Verified Core Language for Putback-Based Bidirectional Programming, ACM PEPM 2016.

S. Hidaka, Z. Hu, K. Inaba, H. Kato, K. Nakano, K. Matsuda, Bidirectionalizing Graph Transformations, ACM ICFP 2010.


Software

Dejima Prototype (Paper: Making View Update Strategies Programmable)