Communication Abstractions for
Distributed Systems
Technische Universität Darmstadt, Germany,
July 22, 2003
As applications become increasingly distributed and networks provide more and more connection facilities, applications require more and more interconnections, thus communication takes a central part of modern systems. To tackle the communication issues, a lot of techniques and concepts have been developed in different research fields and some industrial solutions have been proposed. Over the last 15 years, the basic building blocks for distributed object systems have emerged: distributed objects, communicating with Remote Message Send (RMS), also known as Remote Method Invocation (RMI) or Location-Independent Invocation (LII). However, it has also become clear that while such abstractions are by themselves sufficient to expose the hard problems of distributed computing, they do not solve them.
Hence, since large applications parts have been underlined like databases systems or graphical user interface, the goal is to wonder, if can we say the same for the communication part of applications?
At the previous ECOOP workshops on The Next 701 Distributed Object Systems, we identified some of these problems (Security, Partial Failure, Guaranteeing Quality of Service, Run-time evolution, Meta-Object protocols, and Ordering of events) that are important concerns of any communication abstraction. Some Communication Abstractions were identified at ECOOP'2002 in Malaga such as Peer-to-peer abstract data structure, or publish/subscribe variants. The goal of this workshop is to work on the definition of new and good communication abstractions and on the distributed-specific features mentioned above.
We are interested in papers reporting practical experiences relating both benefits and obstacles in using communication abstractions in various application fields. The word "abstraction" should be understood as "higher level" not as "hidden and fuzzy things". Communication abstractions must be precise even if their implementation is hidden. The main questions are what are these abstractions, how are they specified and finally how to implement them. At previous year’s ECOOP workshops on The Next 701 Distributed Object Systems, we studied some problems inherent to distribution – Security, Partial Failure, Guaranteeing Quality of Service, Run-Time Evolution – and considered what tools an object system might supply to help address them – grouping objects into components, immutable objects, application-level protocols, reflection (both introspection and reification), and event-ordering.
This year participants are invited either to consider some of these issues and propose tools more deeply, or to make this list more complete by demonstrating common needs in other distributed applications.
Possible sub-topics include:
Communication abstractions from various origins including:
Architecture Description Languages (ADL), and especially connectors
UML collaboration as communication abstractions
UML collaboration refinement and implementation
Coordination techniques
Middleware services
Mediators
Glueware techniques
Communication abstraction in programming languages
Design Patterns for communication and distribution
Composition of protocols, customizable communication frameworks, (was micro-protocols)
Communication components
Security:
Authentication, authorization, privacy
Protection from malicious hackers
What can run where?
Application Services:
Mobility
Migration
Persistence
Other Communication Protocols (beyond RMS)
Publish & Subscribe
Data-centric computing, e.g., real-rate ows
Group-oriented communication
Tolerance of Partial Failures:
Transactions
Alternatives to transactions
Run-time Evolution:
of classes and interfaces
of persistent data
Meta-Object protocols, e.g., changing the meaning of message send
Ordering of events
Peer to peer computing
The goal is to define and refine abstractions that address some of these problems and other like them. What are the right abstractions, APIs, development methods, reasoning systems, and tools for building the next generation of Distributed Object Systems?
This workshop aims to foster discussion during the workshop and to avoid a mini-conference. Sessions of discussions and presentations will be grouped according to a list of selected issues raised by the position papers.
Position papers, not to exceed 6 pages in length , are solicited by April 25, 2003. Papers based on experience with the above issues are particularly welcome.
Please send positions papers electronically in PDF or Postscript format to Antoine.Beugnard@enst-bretagne.fr by 25th of April 2003. Notification of acceptance will be given by 17th of May.
A maximum of 20 participants will be selected on the basis of the submitted material. The number of participants per position paper is limited to 2.
Springer-Verlag will publish the ECOOP 2003 Ws Reader as an LNCS volume. This book will include a report for each workshop. The organizers will write the report, in collaboration with the participants of the workshop. The organizers should produce a report that provides a summary of the workshop with the major issues discussed and the conclusions of the working groups (if applicable). The report should also include the current research being carried out in the area and open research directions on the workshop themes.
Best positions papers will be proposed for publication in the online IEEE Distributed Systems Online.
Architecture Description Languages : C2-SADL,Acme,Rapide, ...
Communication components : Channel,Medium,InfoPipes, ...
Web Services/Web environments/B2B infrastructure
Coordination languages : Coordination Abstractions, FLO - explicit connectors, Linda, ...
Customizable Communication Frameworks : Cactus,Ensemble,Appia
Middleware CORBA, DCOM, .NET
Publish-subscribe and event services : JMS
Multi-agent interaction : FIPA, KQML, ...
Cooperative Objects : COO, ...
Software Composition Group : Piccola, COORDINA
UML Collaborations, Catalysis
...
ECOOP'2002 Concrete Communication Abstractions Of The Next 701 Distributed Object Systems
ECOOP’2001: The Next 700 Distributed Object Systems
ECOOP’2000: Distributed Objects Programming Paradigms
ECOOP’95 and ECOOP’96: CORBA
ECOOP’93: Object-Based Distributed Programming
Middleware 2003
Middleware 2001
2nd Int. Workshop on Engineering Distributed Objects (EDO 2000), November 2-3, 2000
Workshop on Compositional Software Architectures, Monterey, California, January 6-8, 1998
International Workshop on Component-based Software Engineering, Kyoto, Japan , April 25-26, 1998
Workshop on Software Composition (SC 2002), affiliated with ETAPS 2002, April 6 - 14, 2002
Workshop on Web-based Infrastructures and Coordination Architectures for Collaborative Enterprises, 20-22 June 2001, MIT, Cambridge, MA, USA.
International Workshop on Large-Scale Software Composition held in conjunction with DEXA'98, Vienna, 24-28 August, 1998 (one day workshop)
Middleware '98: IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing, 15-18 September, 1998
Cooperative Information Agents(CIA), September 6 - 8, 2001
Coordination Models, Languages and Applications (SAC), 10-14 March 2002
COORDINATION 2002, April 8-11, 2002
| Antoine Beugnard(Chair): antoine.beugnard@enst-bretagne.fr | ENST-Bretagne, Brest, France |
| Eric Jul (Co-chair) : eric@diku.dk | DIKU, University of Copenhagen, Copenhagen, Denmark |
| Monique Calisti | Whitestein Technologies AG, Switzerland |
| Laurence Duchien | Université de Lille, France |
| Ludger Fiege | Darmstadt University of Technology, Germany |
| Robert Filman | NASA Ames Research Center, USA |
| Jean-Marc Jézéquel | INRIA, France |
| Anne-Marie Kermarrec | Microsoft, UK |
| Salah Sadou | Valoria, Universit´e de Bretagne Sud, France |
Blackboard, paperboard, beamer and PC.
Note : Communication is considered here only among hardware or software entities, not among humans nor between human and computer.
last modified: feb, 7 2003