Lecture Notes in Computer Science Edited by G. Goos, J. Hartmanis and J. van Leeuwen 1282 Advisory Board: W. Brauer D. Gries J. Stoer
David Garlan Daniel Le M6tayer (Eds.) Coordination Languages and Models Second International Conference COORDINATION '97 Berlin, Germany, September 1-3, 1997 Proceedings Springer
Series Editors Gerhard Goos, Karlsruhe University, Germany Juris Hartmanis, Cornell University, NY, USA Jan van Leeuwen, Utrecht University, The Netherlands Volume Editors David Garlan Carnegie Mellon University, Computer Science Department 5000 Forbes Avenue, Pittsburgh, PA 15213-3891, USA E-mail: gartan@cs.cmu.edu Daniel Le Mrtayer IRISA -- Campus universitaire de Beaulieu F-35042 Rennes Cedex, France E-mail: lemetayer@irisa.fr Cataloging-in-Publication data applied for Die Deutsche Bibliothek - CIP-Einheitsaufnahme Coordination languages and models : second international conference, coordination '97, Berlin, Germany, September 1-3, 1997 ; proceedings / [Second International Conference on Coordination Models and Languages]. David Garlan ; Daniel LeMrtayer (ed.). - Berlin ; Heidelberg ; New York ; Barcelona ; Budapest ; Hong Kong ; London ; Milan ; Paris ; Santa Clara ; Singapore ; Tokyo : Springer, 1997 ISBN 3-540-63383-9 CR Subject Classification (1991): D.1.3, C.2.4,E1.2, D.2.4 ISSN 0302-9743 ISBN 3-540-63383-9 Springer-Verlag Berlin Heidelberg New York This work is subject to copyright. All rights are reserved, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting, reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965, in its current version, and permission for use must always be obtained from Springer -Verlag. Violations are liable for prosecution under the German Copyright Law. Springer-Verlag Berlin Heidelberg 1997 Printed in Germany Typesetting: Camera-ready by author SPIN 10547787 06/3142-5 4 3 2 1 0 Printed on acid-flee paper
Foreword This volume contains the papers selected for presentation at the second International Conference on Coordination Models and Languages (COORDINATION'97), held in Berlin, September 1-3, 1997. COORDINATION was held previously in Cesena (Italy) in 1996, and, given the strong interest of the research community, we expect it to become a regular event. COORDINATION is devoted to an emerging class of languages and models, which have been variously termed "coordination languages", "configuration languages", and "architectural description languages". Such formalisms provide a clean separation between individual software components and their interaction in the overall software organization. This separation makes large applications more tractable, supports global analysis, and enhances reuse of software. The scope of the conference ranges from theoretical aspects of coordination to languages for coordination and their applications. In response to the call for papers, 69 papers were submitted to COORDINA- TION'97, from which 19 regular papers were accepted. Six additional papers were selected as short papers, to be presented at a poster session. Two extra papers that focus on a specific case study proposed by Edwin de Jong (Signaal) are also included in the proceedings. These papers were selected by Edwin de Jong, Jean-Marc Andreoli (Xerox), and Marc Bourgois (Eurocontrol), with the approval of the conference programme committee. This year's program featured invited talks by Nicholas Carriero, Jeff Kramer, and Doug Lea; summaries of their talks are also included in this volume. In addition, three members of the programme committee agreed to give state-ofthe-art reports: Paolo Ciancarini, Oscar Nierstrasz, and Dewayne Perry. We would like to thank all the contributors, the members of the programme committee, and other paper reviewers. We would like to thank the local arrangements chairpersons Bernd Mahr and Robert Tolksdorf for effectively organizing and publicizing the conference. We are also grateful to Isabelle Ballon for her assistance in processing the referees' reports and preparing the final version of the proceedings. The following organizations provided sponsorship and support for the conference: Sun Microsystems GmbH, Deutschland; JF Lehmanns, Berlin; Deutsche Forschungsgemeinschaft DFG, IKV e V; Berlin; IFV I+K, Berlin. The conference was also supported by the EU-funded working group COORDINA. June 1997 David Garlan and Daniel Le M6tayer
vi Programme Committee David Garlan (CMU, USA), co-chair Daniel Le M@tayer (INRIA, FR), co-chair Jaco de Bakker (CWI, NL) Maarten Boasson (Signaal, NL) Luca Cardelli (Digital, USA) Paolo Ciancarini (Bologna, IT) Susan Graham (Berkeley, USA) Chris Hankin (London, UK) Philippe Kruchten (Rational Soft., CN) Ugo Montanari (Pisa, IT) Mark Moriconi (SRI, USA) Oscar Nierstrasz (Berne, CH) Dewayne Perry (Bell Labs, USA) Antdnio Porto (Lisbon, P) James Purtilo (Maryland, USA) David Schmidt (KSU, USA) Peter Wegner (Brown, USA) Alexander L. Wolf (Colorado, USA) Organizing Committee Bernd Mahr, co-chair Robert Tolksdorf, co-chair TU Berlin Markus Andrezak Christel Hecht Andreas Knoche List of Referees Cecilia Mascolo Frank van Breugel Stelvio Cimato Juan Carlos Cruz Rocco de Nicola Roberto Amadio David Rossi Jose Legatheaux Martins Marco Pistore Franz Achermann Paolo Ancilotti Farhad Arbab Gianluigi Ferrari Roberto Gorrieri Didier Buchs Jetty Kleijn Theo Dirk Meijler Gianluigi Zavattaro Marco Kesseler Gian Luca Cattani Juergen Menden Tamar Richner Kees Middelburg Jan Rutten Pedros Medeiros Luis Caires Wiebe van der Hoek Carla Simone Antonio Brogi Stephane Ducasse Wil van der Aalst Alessandro Fabbri Luis Monteiro Francesca Rossi Ian Stark Paola Inverardi Marcello M. Bonsangue Gioia Ristori Mauro Gaspari Roberto Segala
Co e s Invited Papers From weaving threads to untangling the web: A view of coordination from Linda's perspective R. Bjornson, N. Carriero, D. Gelernter (Yale University, New Haven)... 1 Exposing the skeleton in the coordination closet J. Kramer, J. Magee (Imperial College, London)... 18 Design for open systems in Java D. Lea (SUNY, Oswego)... 32 Regular Papers Checking assumptions in component dynamics at the architectural level P. Inverardi (Universit' di l'aquila), A. L. Wolf (University of Colorado, Boulder), D. Yankelevieh (Universidad de Buenos Aires)... 46 Security benefits from software architecture C. Bidan, V. Issarny (Irisa/INRIA, Rennes)... 64 Regulated coordination in open distributed systems N.H. Minsky, V. Ungureanu (Rutgers University, New Brunswick)... 81 Debugging distributed applications using a coordination architecture P.A. Olivier (University of Amsterdam)... 98 Coordinating durative actions L Nunes, J. L. Fiadeiro (University of Lisbon), W. M. Turski (Warsaw University)... 115 Communication-passing style for coordination languages S. Jagannathan (NEC Research Institute, Princeton)... 131
viii Software architecture for large control systems: A case study description E. de Jong (Signaat, HengeIo)... 150 Evaluation of software architectures for a control system: A case study S. Stuurman, J. van Katwijk (Delft University of Technology)... 157 Modeling railway control systems using graph grammars: A case study A. A. Holzbaeher, M. Pgrin, M. Siidholt (Irisa, Rennes)... 172 On what Linda is: Formal description of Linda as a reactive system D. Gelernter, L. Zuck (Yale University, New Haven)... 187 Three semantics of the output operation for generative communication N. Busi (Universit' di Siena), R. Gorrieri, G. Zavattaro (Universit' di Bologna)... 205 Coordinating mobile agents via blackboards and access rights R. De Nicola (Universit' di Firenze), G. L. Ferrari (Universit' di Pisa), R. Pugliese (Universit' di Firenze)... 220 Modeling coordination via asynchronous communication A. Brogi (Universit' di Pisa), J.-M. Jacquet (Faeultds Universitaires de Namur)... 238 Partial order and SOS semantics for linear constraint programs E. Best (Carl-von-Ossietzky-UniversitSt Oldenburg), F.S. de Boer (Universiteit Utrecht), C. Palamidessi (Universit' di Genova)... 256 Programmable coordination Media E. Denti, A. Natali, A. Omicini (Universit' di Bologna)... 274 Safer tuple spaces R. van der Goot (Erasmus University of Rotterdam), J. Schaeffer (University of Alberta), G. V. Wilson (Visible Decisions, Canada)... 289
Ix Coordinating actions systems E. J. Hedman (.~bo Academi University), J. N. Kok (Leiden University), K. Sere (/tbo Academi University)... 302 Approximating UNITY J. Dingel (Carnegie Mellon University)... 320 Mobile UNITY coordination constructs applied to packet forwarding for mobile hosts P. J. McCann, G.-C. Roman (Washington University, Saint Louis)... 338 From layer to layer: Object-oriented protocol refinement in Kannel K. GranS, J. Paakki (University of Helsinki)... 355 An asynchronous model of locality, failure, and process mobility R. M. Amadio (LIM MarseiUe)... 374 A component calculus for modeling the Olan configuration language J.-Y. Vion-Dury (Rank Xerox, Grenoble), L. Bellissard, V. Marangozov (INRIA Rhones-Alpes)... 392 Short Papers A coordination model for distributed object systems M. Buffo (University of Geneva), D. Buchs (Swiss Federal Institute of Technology)... 410 Coordination patterns for parallel computing B. Freisleben, T. Kielmann (University of Siegen)... 414 Concurrent MetateM as a coordination language A. KeUett, M. Fisher (Manchester Metropolitan University)... 418 Control-based coordination of human and other activities in cooperative information systems G. A. Papadopoulos (University of Cyprus), F. Arbab (CWI, Amsterdam) 422
Using asynchronous tuple-space access primitives (BONITA primitives) for process co-ordination A. Rowstron (University of Cambridge)... 426 Berlinda: An object-oriented platform for implementing coordination languages in Java R. Tolksdorf (Teehnische Universitdt Berlin)... 430 Author Index... 435