Rational design of distributed applications

  • Thierry Cattel
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 550)


Although numerous distributed programming facilities have been developed, the lack of methodologics to support the design of distributed applications makes the task of designers very difficult. The aim of our work is to contribute to the design of complete distributed applications, stressing first and foremost the quality of the final systems. To reach this goal we propose a software development environment based on a three-phased approach : analysis, design and construction. We will focus on the design and construction phases so as to define the architecture of the application, and to propose an implementation on a technical environment based on a distributed application model including the virtual node concept. Our approach uses the VDM formal method to support the design phase and the Conic distributed language and environment as the target for the implementation.


Distributed application programming in the large reliability formal specification refinement virtual node module port communication 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    M. Accetta, R. Baun, W. Bolosky et al.: Mach: a new kernel foundation for Unix development; Proceedings of the Summer Usenix Conf., Atlanta, July, 1986.Google Scholar
  2. [2]
    C. Atkinson, A. Di Maio: From DIADEM to DRAGOON; Distributed Ada Symposium, Southampton, December 1989.Google Scholar
  3. [3]
    G. Berry, L. Cosserat: The synchronous programming language ESTEREL and its mathematical semantics; INRIA research report Nℴ327, 1987.Google Scholar
  4. [4]
    P. Borras, D. Clément, T. Despeyroux et al.: CENTAUR: The system; Proc. of SIGSOFT88 third annual symposium on sotfware development environments, Boston, 1988Google Scholar
  5. [5]
    A. Billionnet, M.C. Costa, A. Sutter: Les problèmes de placement dans les systèmes distribués; Techniques et sciences informatiques Vol. 8, Nℴ4, p.-307–337, 1989.Google Scholar
  6. [6]
    R. Bloomfield, P. Froome, B. Monahan: Specbox: a toolkit for BSI-VDM; Adelard, internal report, February 1989.Google Scholar
  7. [7]
    J. Barwisi, D. Kaplan, H.J. Reisler et al.: The lambda calculus, its syntax and semantics; North Holland, 1984.Google Scholar
  8. [8]
    J. Despeyroux: Theo: an interactive proof development system; INRIA research report Nℴ116, 1990.Google Scholar
  9. [9]
    D. Colnet, D. Léonard, G. Masini et al.: Les langages à objets; Interéditions, Paris, 1989.Google Scholar
  10. [10]
    M.C. Eglin, J. Julliand, G.-R. Perrin: Compiling Equations in Asynchronous Communicating Processes; Fourth ISMM/IASTED International Conference on PARALLEL & DISTRIBUTED COMPUTING & SYSTEMS, Washington, U.S.A., 8–11 October 1991.Google Scholar
  11. [11]
    M.S. Feather: A survey of classification of some program transformation approaches and techniques; Program specification and transformation, p.165–195, Elsevier science publishers, Holland, 1987.Google Scholar
  12. [12]
    J.P. Finance, N. Lévy, J. Souquières et al.: SACSO: un environnement d'aide à la spécification; Techniques et Science Informatiques, Vol.9, Nℴ3, p. 245–261, 1990.Google Scholar
  13. [13]
    C.B. Jones: Systematic Software Development Using VDM; Prentice Hall International, 1990 (second edition).Google Scholar
  14. [14]
    C.B. Jones, R.C. Shaw: Case Studies in Systematic Software Development Using VDM; Prentice Hall International, 1990.Google Scholar
  15. [15]
    G. Kahn: Natural Semantics; Proc. of STACS'87, LNCS 247,1987.Google Scholar
  16. [16]
    J. Krammer, J. Magee, K. Ng: Graphical configuration programming; IEEE Computer, 1989.Google Scholar
  17. [17]
    J. Kramer, J. Magee, M. Sloman: Constructing distributed systems in CONIC; IEEE transactions on software engineering, Vol. 15, Nℴ 6, June 1989, p. 663–675.Google Scholar
  18. [18]
    J. Kramer, J. Magee, M. Sloman: Managing evolutions in distributed systems; Software Engineering Journal, November 1989, p. 321–329.Google Scholar
  19. [19]
    C. Lafontaine, Y. Ledru, P.Y. Schobbens: An experiment in formal software development: using the B theorem prover on a VDM case study; Proc. 12th Int. Conf. on Software Engineering, IEEE Computer society press, 1990.Google Scholar
  20. [20]
    Y. Ledru, P.Y. Schobbens: Applying VDM to large developments; Proc. ACM SIGSOFT Int. Workshop on Formal methods in software development, p. 55–58, Napa, May 1990.Google Scholar
  21. [21]
    B. Meyer: Object-oriented Software Construction; Prentice Hall, 1988.Google Scholar
  22. [22]
    M.Mühlhäuser: Software engineering in distributed systems — Approaches and issues; Proc. of Phoenix conf. on computers and communications, Scottsdale, March 1990.Google Scholar
  23. [23]
    P.Clauss, G.R.Perrin: Synthesis of process arrays; CONPAR'88, Manchester, Cambridge University Press 88, September 1988.Google Scholar
  24. [24]
    M. Rozier, V. Abrossimov, F. Armand et al.: Chorus Distributed Operating Systems; Chorus systèmes, technical report 88-7.5, 1988.Google Scholar
  25. [25]
    RAISE overview; RAISE/CRI/DOC/9/V2, Computer ressources international, denmark, June 1990.Google Scholar
  26. [26]
    J.M. Spivey: The Z notation; Prentice Hall, 1989.Google Scholar
  27. [27]
    A.S. Tanenbaum, R.V. Renesse, H. VanStaveren et al.: Experiences with the AMOEBA distributed operating system; Communications of the ACM Vol. 33, Nℴ12, December 1990.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Thierry Cattel
    • 1
    • 2
  1. 1.Digital Equipement, Centre Technique Europe SarlFerney-Voltaire
  2. 2.Laboratoire d'Informatique, URA CNRS 822Université de Franche-ComtéBesanÇon cedexFrance

Personalised recommendations