Investigation of Law Governed Interactions as a Mechanism to Provide Coordination Among Service Oriented Architectures, 10-R9877Printer Friendly Version
Inclusive Dates: 10/01/08 Current
Background - Enterprise information systems, both within government agencies and within businesses, are transitioning to service oriented architectures (SOA). This style of system architecture depends on loosely coupled, well-defined services that can be used in various ways to develop new capabilities. This project investigated whether law governed interaction (LGI)-based decision making can be effectively integrated into an SOA infrastructure to address the issues of scalability and independence. LGI is a distributed coordination and control mechanism that defines collaboration among a group of interacting entities based on a law or a set of laws. The law(s) can operate in a decentralized manner and are based on the state of the entities, as well as the information in the messages passed between entities.
Approach - The research included examining SOA infrastructure components, enumerating and examining proposed architectures for integrating an LGI-based decision-making capability into an SOA infrastructure, selecting a promising architecture, and implementing a basic prototype to facilitate evaluating the feasibility of integrating LGI-based decision-making capability into an SOA infrastructure and suitability of the selected architecture. The research focused initially on three primary tasks. The first was developing policies and laws implementing those policies for the selection of versions and instances of a known service within an SOA-based system. The second task was implementing an LGI-based capability to allow the creation of a law community based on the developed laws. And the third task was selecting and instantiating an SOA-based infrastructure into which the LGI capability could be integrated to investigate the ability to utilize LGI within an SOA-based infrastructure for selecting the "best" version and instance of a service.
Accomplishments - A set of policies was specified and a set of laws was written in Prolog and Java to implement the policies. A survey of potential SOA infrastructures was made, and an open source SOA infrastructure was selected. Access to the source code for the LGI infrastructure was obtained and an updated version of that infrastructure was integrated into the selected open source SOA infrastructure. The combined laws, LGI infrastructure and SOA infrastructure provide a demonstration of the distributed decision-making form of a best version and instance selection algorithm.