Coordinating Distributed Objects


Book Description

Coordinating Distributed Objects presents a novel object-oriented methodology to simplify the construction of distributed software systems. The methodology is based on a programming construct, called synchronizer, that allows the coordination of distributed application components to be programmed in a modular fashion and at a high level of abstraction. The methodology offers new insight into the problem of coordination in distributed systems and can be applied to a broad spectrum of distributed software systems such as process control, multimedia, and groupware. Current methodologies for developing distributed applications do not adequately address the complexity of coordinating application components. The coherence between asynchronous application components, for instance, is usually implemented by explicitly programming a large number of messages and the responses to them. The synchronizer construct, however, implements coordination as abstract and reusable coordination constraints, and thereby reduces code size and complexity by an order of magnitude. Synchronizers offer other attractions as well: they maintain procedural abstraction, data encapsulation, and inherent concurrency. Overall, they allow coordination to be expressed at a level of abstraction that is much closer to the mental model of code developers.




Coordinating Distributed Objects


Book Description

Coordinating Distributed Objects presents a novel object-oriented methodology to simplify the construction of distributed software systems. The methodology is based on a programming construct, called synchronizer, that allows the coordination of distributed application components to be programmed in a modular fashion and at a high level of abstraction. The methodology offers new insight into the problem of coordination in distributed systems and can be applied to a broad spectrum of distributed software systems such as process control, multimedia, and groupware. Current methodologies for developing distributed applications do not adequately address the complexity of coordinating application components. The coherence between asynchronous application components, for instance, is usually implemented by explicitly programming a large number of messages and the responses to them. The synchronizer construct, however, implements coordination as abstract and reusable coordination constraints, and thereby reduces code size and complexity by an order of magnitude. Synchronizers offer other attractions as well: they maintain procedural abstraction, data encapsulation, and inherent concurrency. Overall, they allow coordination to be expressed at a level of abstraction that is much closer to the mental model of code developers.










Objective Coordination in Multi-Agent System Engineering


Book Description

Based on a suitably defined coordination model distinguishing between objective (inter-agent) coordination and subjective (intra-agent) coordination, this book addresses the engineering of multi-agent systems and thus contributes to closing the gap between research and applications in agent technology. After reviewing the state of the art, the author introduces the general coordination model ECM and the corresponding object-oriented coordination language STL++. The practicability of ECM/STL++ is illustrated by the simulation of a particular collective robotics application and the automation of an e-commerce trading system. Situated at the intersection of behavior-based artificial intelligence and concurrent and distributed systems, this monograph is of relevance to the agent R&D community approaching agent technology from the distributed artificial intelligence point of view as well as for the distributed systems community.




Coordination Models and Languages


Book Description

This book constitutes the refereed proceedings of the 15th International Conference on Coordination Models and Languages, COORDINATION 2013, held in Firenze, Italy, in June 2013, within the 8th International Federated Conference on Distributed Computing Techniques (DisCoTec 2013). The 17 revised full papers presented were carefully reviewed and selected from 42 submissions. The papers cover a wide range of topics including coordination of social collaboration processes, coordination of mobile systems in peer-to-peer and ad-hoc networks, programming and reasoning about distributed and concurrent software, types, contracts, synchronization, coordination patterns, and families of distributed systems.




Internet Process Coordination


Book Description

Papers collected here, from a December 2001 workshop held at the University of Central Florida, examine topics related to process coordination and ubiquitous computing. Papers on coordination models discuss areas such as space-based coordination and open distributed systems, global virtual data stru




Coordination Technology for Collaborative Applications


Book Description

This book concentrates on the relationships between coordination technology and business application requirements, introducing general elements of a cooperative infrastructure that allows for collaborative applications.




Internet Process Coordination


Book Description

Papers collected here, from a December 2001 workshop held at the University of Central Florida, examine topics related to process coordination and ubiquitous computing. Papers on coordination models discuss areas such as space-based coordination and open distributed systems, global virtual data stru




Distributed Object Architectures with CORBA


Book Description

Distributed Object Architectures with CORBA is a guide to designing software comprised of distributed components. While it is based on OMG's Common Object Request Broker Architecture (CORBA) standard, the principles also apply to architecture built with other technology (such as Microsoft's DCOM). As ORB products evolve to incorporate new additions to CORBA, the knowledge and experience required to build stable and scalable systems is not widespread. With this volume the reader can develop the skills and knowledge that are necessary for building such systems. The book assumes a familiarity with object-oriented concepts and the basics of CORBA. Software developers who are new to building systems with CORBA-based technologies will find this a useful guide to effective development.