Coordinating action systems

  • Eric J. Hedman
  • Joost N. Kok
  • Kaisa Sere
Regular Papers
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1282)


We develop an action systems based approach that supports the separation of design of the functional or computation aspects of a system under construction from the coordination and synchronization issues. The computation aspects are modelled as nondeterministic actions that work in parallel with the coordination actions, which impose some control on this nondeterministic part. We define a special form of action systems that models this type of coordination activity. Certain forms of real time scheduling and coordination as well as exception handling are shown to be special cases of our approach. We show how the coordinators can be stepwise brought about from a high-level specification of the target system and how the reasoning about their behaviours is carried out separately from the computation aspects of the system within the refinement calculus.


Action System Composition Operator Parallel Composition Exception Handler Tuple Space 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    G. Agha. Actors: A Model of Concurrent Computation in Distributed Systems. MIT Press, Los Alamos, California, 1986.Google Scholar
  2. 2.
    R. J. R. Back. On the Correctness of Refinement Steps in Program Development. PhD thesis, Department of Computer Science, University of Helsinki, Helsinki, Finland, 1978. Report A-1978-4.Google Scholar
  3. 3.
    R. J. R. Back. Refinement calculus, part II: Parallel and reactive programs. In J. W. de Bakker, W.-P. de Roever, and G. Rozenberg, editors, Stepwise Refinement of Distributed Systems: Models, Formalisms, Correctness. Proceedings. 1989, volume 430 of Lecture Notes in Computer Science. Springer-Verlag, 1990.Google Scholar
  4. 4.
    R. J. R. Back and R. Kurki-Suonio. Decentralization of process nets with centralized control. In Proc. of the 2nd ACM SIGACT-SIGOPS Symp. on Principles of Distributed Computing, pages 131–142, 1983.Google Scholar
  5. 5.
    R.J.R. Back and K. Sere. Stepwise refinement of action systems. Structured Programming, 12:17–30, 1991.Google Scholar
  6. 6.
    R. J. R. Back and K. Sere. From modular systems to action systems. Proc. of Formal Methods Europe'94, Spain, October 1994. Lecture Notes in Computer Science. Springer-Verlag, 1994.Google Scholar
  7. 7.
    R. J. R. Back and J. von Wright. Trace Refinement of Action Systems In B. Jonsson, J. Parrow, editors, CONCUR '94: Concurrency Theory. Proceedings. 1994, volume 836 of Lecture Notes in Computer Science, pages 367–384. Springer-Verlag, 1994Google Scholar
  8. 8.
    J.-P. Banâtre and D. Le Métayer. Programming by multiset transformation. Communications of the ACM, 36(1):98–111, January 1993.CrossRefGoogle Scholar
  9. 9.
    N. Carriero and D. Gelernter. Coordination languages and their significance. Communications of the ACM, 35(2):97–107, February 1992.CrossRefGoogle Scholar
  10. 10.
    K. Chandy and J. Misra. Parallel Program Design: A Foundation. Addison-Wesley, 1988.Google Scholar
  11. 11.
    M. Chaudron and E. de Jong. Towards a Compositional Method for Coordinating Gamma Programs. In [12].Google Scholar
  12. 12.
    P. Ciancarini and C. Hankin, editors. Coordination'96: Coordination Languages and Models, volume 1061 of Lecture Notes in Computer Science. Springer-Verlag, 1996.Google Scholar
  13. 13.
    H.C. Cunningham and G.C. Roman. A Unity-style programming logic for a shared dataspace language. IEEE Transactions on Parallel and Distributed Systems, 1(3):365–376, July 1990.CrossRefGoogle Scholar
  14. 14.
    E. W. Dijkstra. A Discipline of Programming. Prentice-Hall International, 1976.Google Scholar
  15. 15.
    H. J. M. Goeman, J. N. Kok, K. Sere, and R. T. Udink. Coordination in the Impunity Framework. In [12].Google Scholar
  16. 16.
    H. J. M. Goeman, J. N. Kok, K. Sere, and R. T. Udink. Coordination in the Imp unity Framework. TUCS Technical Report No 50, October 1996. Turku, Finland.Google Scholar
  17. 17.
    C. C. Morgan. The specification statement. ACM Transactions on Programming Languages and Systems, 10(3):403–419, July 1988.CrossRefGoogle Scholar
  18. 18.
    J. M. Morris. A theoretical basis for stepwise refinement and the programming calculus. Science of Computer Programming, 9:287–306, 1987.CrossRefGoogle Scholar
  19. 19.
    S. Ren and G. Agha. A Modular Approach for Programming Distributed Real-Time Systems. In Hand-Out, European Educational Forum, School on Embedded Systems, November 1996, Veldhoven, NL.Google Scholar
  20. 20.
    E. Sekerinski and K. Sere. A theory of prioritizing composition. The Computer Journal. To appear.Google Scholar
  21. 21.
    R.T. Udink. Program Refinement in unity-like Environments. PhD Thesis, Utrecht University, September 1995Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1997

Authors and Affiliations

  • Eric J. Hedman
    • 1
  • Joost N. Kok
    • 2
  • Kaisa Sere
    • 1
  1. 1.Turku Centre for Computer Science Department of Computer ScienceÅbo Akademi UniversityÅboFinland
  2. 2.Department of Computer ScienceLeiden UniversityRA LeidenThe Netherlands

Personalised recommendations