Skip to main content

Modelling architectures for dynamic systems

  • Chapter
Programming Methodology

Part of the book series: Monographs in Computer Science ((MCS))

Abstract

A dynamic system is one that changes its configuration as it runs. It is a system into which we can drop new components that then cooperate with the existing ones. We are concerned with formally defining architectures for such systems and with realistically validating designs for applications that run on those architectures. We describe a generic architecture based on the familiar registry services of CORBA, DCOM and Jini. We illustrate this architecture by formally describing a simple point-of-sale system built according to this architecture. We then look at the sorts of global properties that a designer of applications would wish a robust system to have and discuss variations on the architecture which make validation of applications more practical.

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

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 149.00
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abramsky, S and G McCusker. Game Semanticssee http// dcs.ed.ac.uk/abramsky

    Google Scholar 

  2. R. J. Allen and D. Garlan, A Formal Basis For Architectural ConnectionACM transactions on Software Engineering and Methodology July 97.

    Google Scholar 

  3. R. J. Allen, Remi Douence, and David Garlan, Specifying Dynamism in Software Architectures Workshop of Foundations of Component Based Systems,Zurich, 1997, see http://www.cs.iastate.edu/leavens/FoCBS/index.html

    Google Scholar 

  4. M. Boman, J.A. Bubenko, P. Johannesson, and B Wangler, Conceptual Modelling, Prentice Hall, 1997.

    Google Scholar 

  5. Luca Cardelli, Abstractions for Mobile Computation. Microsoft Research Technical Report MSR-TR-98–34 available at research.microsoft.com.

    Google Scholar 

  6. E. M. Clarke et al. Model Checking and Abstraction, ACM Transactions on Programming Languages and Systems, Sept. 94.

    Google Scholar 

  7. J. Conway. On Numbers and Games, Academic Press, 1976.

    Google Scholar 

  8. A. Dickman. Designing Applications with MSMQ, Addison Wesley, 1998.

    Google Scholar 

  9. M. Fowler. UML Distilled - Applying the standard Object Modelling language, Addison Wesley, 1997.

    Google Scholar 

  10. David Garlan et al. Architectural Mismatch, or, why it’s hard to build systems out of existing parts. ICSE, 179–185, 1995.

    Google Scholar 

  11. A. Gravell and P. Henderson. Executing formal specifications need not be harmful, Software Engineering Journal, vol. 11, num 2., IEE, 1996.

    Article  Google Scholar 

  12. David N. Gray et al. Modern Languages and Microsoft’s Component Object Model. Communications of the ACM, Vol 41, No 5, 55–65, 1998.

    Article  Google Scholar 

  13. O. Grumberg and D. Long. Model Checking and Modular Verification, ACM Transactions on Programming Languages and Systems, 843–871, May 1994.

    Google Scholar 

  14. M. Heimdahl and N. Leveson. Completeness and Consistency in hierarchical state-based requirements, IEEE Transactions on Software Enginerring, 22 (6): 363–377, 1996.

    Article  Google Scholar 

  15. P. Henderson and G. D. Pratten. POSD - A Notation for Presenting Complex Systems of Processes, Proceedings of the First IEEE International Conference on Engineering of Complex Systems, IEEE Computer Society Press, 1995.

    Google Scholar 

  16. Peter Henderson. Laws for Dynamic Systems, International Conference on Software Re-Use (ICSR 98), Victoria, Canada, June 1998, IEEE Computer Society Press.

    Google Scholar 

  17. Peter Henderson. ARC: A language and a tool for system level architecture modelling, July 1999, see http://www.ecs.soton.ac.uk/ ph/arc.htm

    Google Scholar 

  18. Peter Henderson and Bob Walters. System Design Validation using Formal Models, Proceedings 10th IEEE Conference on Rapid System Prototyping, RSP’99, IEEE Computer Society Press, 1999.

    Google Scholar 

  19. Peter Henderson and Bob Walters. Component Based systems as an aid to Design Validation, Proceedings 14th IEEE Conference on Automated Software Engineering, ASE’99, IEEE Computer Society Press, 1999.

    Google Scholar 

  20. C. A. R. Hoare. How did Software get to be so reliable without proof? Keynote address at the 18th International Conference on Software Engineering. IEEE ComputerSociety Press, 1996. See also http://www.comlab.ox.ac.uk/oucl/users/tony.hoare/publications.html.

    Google Scholar 

  21. G. J. Holtzmann. The Model Checker SPIN, IEEE Transactions on Software Engineering, Vol 23, No 5, 279–295, 1997.

    Article  Google Scholar 

  22. D. Jackson. Alloy: A lightweight Object Modelling Notation, available at http://sdg.lcs.mit.edu/ dnj/abstracts.html, July 1999.

    Google Scholar 

  23. R. Kurki-Suoni. Component and Interface Refinement in Closed-System Specifications, Proceedings of World Congress on Fornal Methods, Toulouse, September 1999, LNCS 1709, 134–154.

    Google Scholar 

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

    Article  Google Scholar 

  25. D. C. Luckham and J. Vera. An event-based architecture definition language, IEEE Transactions on Software Engineering, 21 (9): 717–734, September 1995.

    Article  Google Scholar 

  26. D. C. Luckham. Rapide: A language and toolset for simulation of distributed systems by partial orderings of events, http://pavg.stanford.edu.

    Google Scholar 

  27. J. Magee and J. Kramer. Dynamic Structure in Software Architecture, Proceeedings of the ACM Conference on Foundations of Software Engineering, Software Engineering Notes, 21 (6): 3–14, IEEE Computer Society Press, 1996.

    Google Scholar 

  28. J. Magee, N. Dulay, S. Eisenbach, and J. Kramer. Specifying Distributed Software Architectures, Proceedings of 5th European Software Engineering Conference (ESEC 95), Sitges, Spain, LNCS 989, 137–154, September 1995.

    Google Scholar 

  29. J. Magee and J. Kramer. Concurrency: State Models and Java Programs, Wiley, 1999.

    MATH  Google Scholar 

  30. Object Management Group. Common Object Request Broker: Architecture Specification, http://www.omg.com.

    Google Scholar 

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

    Article  Google Scholar 

  32. M. Shaw and D. Garlan. Software Architecture - Perspectives on an emerging discipline. Prentice Hall, 1996.

    Google Scholar 

  33. K. Sullivan J. C. Knight. Experience Assessing an Architectural Approach to Large Scale Reuse, Proceedings of ICSE-18,1996 IEEE Computer Society Press.

    Google Scholar 

  34. K. Sullivan, J. Socha, and M. Marchukov. Using Formal Methods to Reason about Architectural Standards, 19th International Conference on Software Engineering, Boston, IEEE Computer Press, 1997.

    Google Scholar 

  35. Sun Microsystems. Jini Software Simplifies Network Computing, available at www.sun.com/jini.

    Google Scholar 

  36. D. Wile. AML: an Architecture Meta-Language, Proceedings ASE 1999,IEEE Computer Society Press, pp 183–190.

    Google Scholar 

Download references

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer Science+Business Media New York

About this chapter

Cite this chapter

Henderson, P. (2003). Modelling architectures for dynamic systems. In: McIver, A., Morgan, C. (eds) Programming Methodology. Monographs in Computer Science. Springer, New York, NY. https://doi.org/10.1007/978-0-387-21798-7_8

Download citation

  • DOI: https://doi.org/10.1007/978-0-387-21798-7_8

  • Publisher Name: Springer, New York, NY

  • Print ISBN: 978-1-4419-2964-8

  • Online ISBN: 978-0-387-21798-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics