Skip to main content

Exposing the skeleton in the coordination closet

  • Invited Papers
  • Conference paper
  • First Online:
Coordination Languages and Models (COORDINATION 1997)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1282))

Included in the following conference series:

Abstract

One of the ways in which we cope with large and complex systems is to abstract away some of the detail, considering them at an architectural level as compositions of interacting components. To this end, the variously termed Coordination, Configuration and Architectural Description Languages (ADL) facilitate description, comprehension and reasoning at that level, providing a clean separation between individual component behaviour and their interaction in a software architecture. However, in the search to provide sufficient detail for reasoning, analysis or construction, many approaches are in danger of obscuring the essential structural aspect of the architecture, thereby losing the benefit of abstraction. In this paper we argue for the use of a concise and simple language explicitly designed for describing architectural structures. This can be used to provide the "skeleton" upon which to add the particular details of concern when necessary. Systems described in this way have an explicit and exposed skeleton which, being shared, helps to maintain consistency between the various elaborated views. To illustrate our approach, we use the Darwin architectural description language and the Tracta approach for compositional reachability analysis.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Allen R. and Garlan D., Formalizing Architectural Connection, (Proc. of 16th International Conference on Software Engineering (ICSE 16), Sorrento, May 1994, 71–80.

    Google Scholar 

  2. Barbacci M. et al, Durra: a structure description language for developing distributed applications, IEE Software Engineering Journal, Vol. 8, No. 2, March 1993, pp83–94.

    Google Scholar 

  3. Cheung S.C. and Kramer J., Context Constraints for Compositional Reachability Analysis, ACM Transactions on Software Engineering Methodology TOSEM, 5 (4), (1996), 334–377.

    Article  Google Scholar 

  4. Cheung S.C. and Kramer J., Checking Subsystem Safety Properties in Compositional Reachability Analysis, (Proc. of 18th IEEE Int. Conf. on Software Engineering (ICSE-18), Berlin, 1996), 144–154.

    Google Scholar 

  5. Cheung S.C., Giannakopoulou D., and Kramer J., Verification of Liveness Properties using Compositional Reachability Analysis, accepted for (6th European Software Engineering Conference / 5th ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC/FSE 97), Zurich, Sept. 1997).

    Google Scholar 

  6. Dijkstra E.W., The Humble Programmer, Comms. Of the ACM, 15, 10, 859–866, Oct. 1972.

    Article  Google Scholar 

  7. Giannakopoulou D., Kramer J. and Cheung S.C., TRACTA: An Environment for Analysing the Behaviour of Distributed Systems, (Proc. of 1st ACM SIGPLAN Workshop on Automatic Analysis of Software (AAS `97)), Paris, January 1997, 113–126.

    Google Scholar 

  8. Garlan D. and Perry D.E., Introduction to the Special Issue on Software Architecture, IEEE Transactions on Software Engineering, 21 (4), April 1995, pp 269–274.

    Google Scholar 

  9. Goldman, K.J., The Programmers' Playground: I/O Abstraction for UserConfigurable Distributed Applications, IEEE Trans. on Software Eng., SE 21 (9), (1995), 735–746.

    Google Scholar 

  10. Graves, H., Lockheed Environment for Automatic Programming, Proc. of KBSE 91, 6th IEEE Knowledge Based Software Engineering Conference, 1991, pp 68–76.

    Google Scholar 

  11. Hoare, C.A.R., Communicating Sequential Processes, Prentice-Hall, Englewood Cliffs, N.J., 1985.

    Google Scholar 

  12. Kramer J., Magee J. and Sloman M.S. A Software Architecture for Distributed Computer Control Systems, Automatica, 20, (1984), 93–102.

    Article  Google Scholar 

  13. Kramer J. and Magee J., Dynamic Configuration for Distributed Systems, IEEE Trans. on Software Eng., SE-11 (4), (1985), 424–436.

    Google Scholar 

  14. Kramer J. Magee J. and Ng K., Graphical Configuration Programming, IEEE Computer, 22 (10), (1989), 53–65.

    Google Scholar 

  15. Kramer J., Magee J. and Finkelstein A., A Constructive Approach to the Design of Distributed Systems, (Proc. 10th IEEE Int. Conf on Distributed Computing Systems, Paris, 1990), 580–587.

    Google Scholar 

  16. Kramer J. and Magee J., The Evolving Philosophers Problem: Dynamic Change Management, IEEE Trans. on Software Eng., SE-16 (11), (1990), 1293–1306.

    Article  Google Scholar 

  17. Kramer J., Configuration Programming-A Framework for the Development of Distributable Systems, (Proc. of IEEE Int. Conf. on Computer Systems and Software Engineering (CompEuro 90), Tel-Aviv, Israel, 1990), 374–384.

    Google Scholar 

  18. Kramer J., Exoskeletal Software, (Proc. of 16th IEEE Int. Conf. on Software Engineering (ICSE-16), Sorrento, 1994), 366.

    Google Scholar 

  19. Kruchten P.B., The 4+1 Model of Architecture, IEEE Software, 12 (6), Nov. 1995, pp 42–50.

    Article  Google Scholar 

  20. Luckham D.C. et al., Specification and Analysis of Software Architecture using Rapide, IEEE Transactions on Software Engineering, 21(4), April 1995, pp 336–355.

    Article  Google Scholar 

  21. Magee J., Dulay N., Eisenbach S., Kramer J., Specifying Distributed Software Architectures, (Proc. of 5th European Software Engineering Conference (ESEC `95), Sitges, September 1995), LNCS 989, (Springer-Verlag), 1995, 137–153.

    Google Scholar 

  22. Magee J., Dulay N. and Kramer J., Regis: A Constructive Development Environment for Distributed Programs, Distributed Systems Engineering Journal, 1 (5), Special Issue on Configurable Distributed Systems, (1994), 304–312.

    Article  Google Scholar 

  23. Magee J., Kramer J., and Sloman M.S., Constructing Distributed Systems in Conic, tIEEE Trans. on Software Eng., SE-15 (6), (1989), 663–675.

    Article  Google Scholar 

  24. Magee J. and Kramer J., Dynamic Structure in Software Architectures, (Proc. of 4th ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE 4), San Francisco, October 1996), SEN, Vol.21, No.6, November 1996, 3–14.

    Google Scholar 

  25. Magee J., Tseng A., Kramer J., Composing Distributed Objects in CORBA, (Third International Symposium on Autonomous Decentralized Systems (ISADS 97), Berlin, Germany, April 9–11, 1997.

    Google Scholar 

  26. Ng K., Kramer J. and Magee J., Automated Support for the Design of Distributed Software Architectures, Journal of Automated Software Engineering (JASE), 3 (3/4), Special Issue on CASE-95, (1996), 26I–284.

    Google Scholar 

  27. Purtilo J.M., The POLYLITH Software Bus, ACM Transactions on Programming Languages, 16(l), January 1994, pp 151–174.

    Article  Google Scholar 

  28. Shaw M., et al., Abstractions for Software Architecture and Tools to Support Them, IEEE Transactions on Software Engineering, 21 (4), April 1995, pp 314–335.

    Article  Google Scholar 

  29. Shaw M., Comparing Architectural Design Styles IEEE Software, 12 (6), Nov. 1995, pp 27–41.

    Article  Google Scholar 

  30. Taylor R. et al, A Component-and Message-based Architectural Style for GUI Software, IEEE Transactions on Software Engineering, 22(6), June 1996, pp 390–406.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

David Garlan Daniel Le Métayer

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kramer, J., Magee, J. (1997). Exposing the skeleton in the coordination closet. In: Garlan, D., Le Métayer, D. (eds) Coordination Languages and Models. COORDINATION 1997. Lecture Notes in Computer Science, vol 1282. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63383-9_70

Download citation

  • DOI: https://doi.org/10.1007/3-540-63383-9_70

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63383-9

  • Online ISBN: 978-3-540-69527-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics