Ada reusable software components for teaching distributed systems

  • Yvon Kermarrec
  • Laurent Pautet
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 750)


This paper presents our experience in developing a toolset for distributed applications in Ada in an educational environment. Our students are trained to become top level engineers in the telecommunications domain. Their curriculum is quite broad and computer science is only one subject among others. We are aware that most of them will consider a computer as an ordinary tool. Moreover, their education is twofold: on the one hand, they must be taught the foundations in order to deal with complex situations, on the other hand, they must train and develop their practical skills. We believe software components to be an interesting solution for these students as they can use them as building blocks to produce complex systems and these components emphasize software engineering benefits.


Software Component Mutual Exclusion Logical Clock Logical Ring High Level Component 
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. Andrews and F. Schneider. Concepts and notations for concurrent programming. ACM computing surveys, 15(1):3–44, 1983.CrossRefGoogle Scholar
  2. 2.
    H. Bal, J. Steiner, and A. Tanenbaum. Programming languages for distributed computing systems. ACM computing surveys, 21(3):260–322, september 1989.CrossRefGoogle Scholar
  3. 3.
    G. Booch. Software engineering with Ada. Benjamin-Cummings Publishing Company, 1983.Google Scholar
  4. 4.
    R. Buhr. System design with Ada. Prentice Hall, 1984.Google Scholar
  5. 5.
    CIFO working group. Asynchronous co-operation mechanisms (with reference memory model). Catalog of Interface Features and Options for Ada run time environment, july 1991. Realease 3.0.Google Scholar
  6. 6.
    E.W. Dijkstra. Self-stabilizing systems in spite of distributed control. Communication of ACM, 17(11):643–644, November 1974.CrossRefGoogle Scholar
  7. 7.
    ExTRA working group. Proposed draft standard for real-time Ada extensions, december 1991. specific Input/Output chapter, release 1.0, version 1.0.Google Scholar
  8. 8.
    M. Hillman. A network programming package in Eiffel. In Jean Bezivin et al., editor, TOOLS 2 Proceedings of the Second International Conference, pages 541–551, Paris, France, 1990.Google Scholar
  9. 9.
    K. Johnson, E. Simmons, and F. Stluka. Ada quality and style: guidelines for professional programmers. Software Productivity Consortium, 1991.Google Scholar
  10. 10.
    Y. Kermarrec and L. Pautet. Ada communication components for distributed and real time applications. In Proceedings of the TRI Ada 92 conference, Orlando, Florida, November 1992. ACM SigAda.Google Scholar
  11. 11.
    Y. Kermarrec and L. Pautet. A distributed shared virtual memory for Ada 83 and Ada 9X applications. In Proceedings of the TRI Ada 93 conference, Seattle, Washington, September 1993. ACM SigAda.Google Scholar
  12. 12.
    Y. Kermarrec and R. Rannou. Simulation experiments with Ada. In Proceedings of the 19th Modeling and Simulation Conference, Pittsburg, May 1988. IEEE, ISA and SCS.Google Scholar
  13. 13.
    L. Lamport. Time, clocks and the ordering of events in a distributed system. Communication of ACM, 21(7):558–565, July 1978.CrossRefGoogle Scholar
  14. 14.
    K. Li and P. Hudak. Memory coherence in shared virtual memory systems. ACM transactions on computer systems, 7(4):321–359, november 1989.CrossRefGoogle Scholar
  15. 15.
    M. Raynal. Distributed algorithms and protocols. John Wiley, 1988.Google Scholar
  16. 16.
    W. Richard Stevens. Unix network programming. Prentice Hall Software series, 1990.Google Scholar
  17. 17.
    K. Thompson. Unix implementation. Bell System Technical Journal, 57(6):1–10, 1978.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1993

Authors and Affiliations

  • Yvon Kermarrec
    • 1
  • Laurent Pautet
    • 2
  1. 1.ENST de BretagneBrest CedexFrance
  2. 2.Dassault ElectroniqueSaint CloudFrance

Personalised recommendations