A DISTRIBUTED AND ANONYMOUS KNOWLEDGE SHARING APPROACH TO SOFTWARE INTEROPERATION

Citation
N. Singh et al., A DISTRIBUTED AND ANONYMOUS KNOWLEDGE SHARING APPROACH TO SOFTWARE INTEROPERATION, International journal of intelligent and cooperative information systems, 4(4), 1995, pp. 339-367
Citations number
25
Categorie Soggetti
Computer Science Information Systems
ISSN journal
02182157
Volume
4
Issue
4
Year of publication
1995
Pages
339 - 367
Database
ISI
SICI code
0218-2157(1995)4:4<339:ADAAKS>2.0.ZU;2-G
Abstract
The support for automatic interoperation of software components can re duce cost and provide greater functionality. This paper describes a no vel approach to software interoperation based on specification sharing . Software components, called agents, provide machine processable desc riptions of their capabilities and needs. Agents can be realized in di fferent programming languages, and they can run in different processes on different machines. In addition, agents can be dynamic - at run ti me agents can join the system or leave. The system uses the declarativ e agent specifications to automatically coordinate their interoperatio n. The architecture supports anonymous interoperation of agents, where each agent has the illusion that the capabilities of all the other ag ents are provided directly by the system. The distinctive feature of t his approach is the expressiveness of the declarative specification la nguage, which enables sophisticated agent interoperation, e.g. decompo sing complex requests into a collection of simpler requests, and trans lating between the interface of a requesting agent and the interface o f an agent that can service the request. The agent-based interoperatio n scheme relies on a shared vocabulary, and it is our thesis that more effective software interoperation is made possible by agreeing to a s hared declarative vocabulary, than by agreeing to procedural interface specifications that do not address the semantics of the software comp onent (e.g. object interface specifications in an object-oriented prog ramming environment).