ECOOP'2004 Workshop on
WS 7 :
Communication
Abstractions for
Distributed
Systems
Oslo,
Norway
June 14, 2004
|
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 |
|
duchien@lifl.fr |
Université
de Lille, France |
|
fiege@gkec.tu-darmstadt.de |
Darmstadt
University of Technology, Germany |
|
rfilman@arc.nasa.gov |
NASA
Ames Research Center, USA |
|
salah.sadou@iu-vannes.fr |
Valoria,
Université de Bretagne Sud, France |
Abstract
Applications
have become increasingly distributed. Distribution complicates systems
building
and exacerbates problems such as dealing with failure, and providing
security,
quality of service, reliability, and manageability.
System development is eased by abstraction and modeling. How to model distributed systems? Distributed systems can be understood as communicating objects. To tackle the problems of building distributed systems, it is useful to focus on the abstract issues of inter-component communication. Examples of distributed communication mechanisms include messaging systems, remote procedure calls, distributed objects, peer-to-peer and publish-and-subscribe. Within any such paradigm, there are many opportunities for specialized and detailed engineering decisions. While mechanisms such as these are a good foundation for dealing with the problems of distribution, there remain many issues about how to mold these ideas to deal with the problems of real systems.
At
the previous ECOOP workshops, we identified some problems (security,
privacy,
partial failure, guaranteeing quality of service, run-time evolution,
meta-object protocols, and ordering of events) that are important
concerns of
any communication abstraction. The goal of this workshop is to contrast
and
compare communication abstractions for distributed systems.
Participants will
be asked to submit a position paper on some aspect of communication
abstractions for distributed systems. To focus the group’s discussion,
this
year we consider the distributed aerospace information problem,
described in
the call-for-papers. Prospective participants are requested to relate
their
contribution to some facet of that that problem. The workshop itself
will
consist of short presentations, discussion of those presentations, and
division
into smaller topic study groups.
Call for participation
We are interested in papers reporting practical experiences relating
both benefits
and obstacles in using communication abstractions. The word abstraction
should be understood as “higher level.” (Communications should also be
understood as communications among machines, not human-machine
interface.) The
main questions are what are the possible abstractions, what are their
properties, how to implement them. At previous ECOOP workshops (Communication
Abstractions for Distributed Systems (2003) and The Next 701
Distributed
Object Systems (2002)) we studied some problems inherent to
distribution,
such as security, partial failure, guaranteeing quality of service,
run-time
evolution, and considered what tools an object system might supply to
help
address them. Technologies included grouping objects into components,
immutable
objects, application-level protocols, reflection (both introspection
and
reification), and event-ordering.
This year, to help increase the coherence of the discussion, we prefer position papers that speak to the distributed information issues of modernizing Airspace Systems (http://www.nas-architecture.faa.gov/Tutorials/NAS101.cfm). In 25 years, we'd like to have every aircraft, counter, terminal, baggage carousel, control tower and gate networked so that information generated by any of these is conveyed to other interested parties. That is, if a plane flies over the Alps and experiences turbulence, then that turbulence information should be communicated to other pilots on the same path. If the turbulence has slowed down the plane's arrival, then the gates and baggage carousels, connecting flights, automobile rentals of the passengers, etc. all bear notification and perhaps rescheduling. Someone studying patterns of Alpian turbulence should find the data in her database, though not with the same alacrity as a pilot flying from Paris to Milan.
Important ilities that proposed organizations need to deal with are efficiency (you can't tell everyone everything), maintainability (you can't turn off the air system), evolvability (you don't know all the future applications of the data), scalability (this is a big system), reliability (for obvious reasons), quality of service (getting important information to its destinations quickly and deferring the unimportant) and security (all the issues of keeping fake messages out of the system, and also federated security: airlines may be willing to share some information with the governing authorities and the respective airplane manufacturers, but not with each other).
More generically, possible topics for communication abstractions include:
Communication abstractions themselves, such as synchronous and asynchronous messages, publish-and-subscribe, peer-to-peer, and group and broadcast communications, and parts of communication abstractions, such as coordination, mobility, migration, persistence, security, privacy and reliability techniques.
Embodiments of communication abstractions, such as middleware services, mediation, glueware, communications-centric programming languages, communication frameworks, and communication components, such as run-time system and protocol evolution.
Dealing with failure in communications and communicants, including transactions and recovery mechanisms.
Semantic issues of communications, such as ordering of events.
Conceptual organizations for communications, such as design patterns for communication and distribution, and composition mechanisms for protocols.
Our
long-term 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. The
workshop is
not a mini-conference. Position papers, not to exceed 6 pages in
length, are
solicited by April 5, 2004. Papers based on experience with the above
issues
are particularly welcome.
Please
send positions
papers electronically in PDF or Postscript format to Eric Jul at eric@diku.dk and Antoine.Beugnard@enst-bretagne.fr
by April 5, 2004. Notification of acceptance will be given by April 26.
A maximum
of 20
participants will be selected on the basis of the submitted material.
Submitted
position papers should include a 100 word abstract and a set of
relevant
keywords. The number of participants per position paper is limited to
2.
Springer-Verlag
will
publish the ECOOP 2004 Workshop Reader as an Lecture Notes in Computer
Science 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
will
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
will also include the current research being carried out in the area
and open
research directions on the workshop themes.
April 5,
2004 Positions
papers deadline
April 26,
2004
Notification of acceptance
May 7, 2004 ECOOP 2004 early registration deadline
Some Related Works
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
...
Other Relevant Workshops
ECOOP
2003 Communication Abstractions for Distributed Systems
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
http://middleware2003.inf.puc-rio.br
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
last modified: feb 29, 2004