Flexible fault tolerance in distributed enterprise communities. (17th January 2013) - Ionescu, Mihail
We are witnessing the birth of the digital enterprise, in which many of the enterprise operations will be performed by independent software programs or by programs acting on behalf of humans. The agents are complex software entities, that should be able to maintain a state that survives failures. The classic solution is to use a relational database (such as Oracle), possibly replicated, to save the states of the agents in a manner that can survive failures and implement the communal invariants inside the database. In this paper we present a flexible, yet robust framework in which the interactions of the agents that work in a given community are governed by a given law that is enforced in a distributed manner. We provide several options to handle failures maintaining the consistency of the states. The implementation is based on the distributed coordination and control mechanism called Law-Governed Interaction (LGI).