We have been discussing data sharing among autonomous independent sites in the distributed system to meet various demands for application. Among them the need for collaborative data sharing has attracted attention in many fields where not only the owner of the original data but the receiver can update that shared data. The BCDS Agent is a new building unit for configuring such systems with scalability and versatility. It rests on the novel feature of bidirectional programming which encourages us to take the compositional approach in developing the distributed system with data consistency.
We present the key issue on designing the BCDS Agent with some examples.