Advertisement

NSA’s MISSI Reference Architecture – Moving from Prose to Precise Specifications

  • Sigurd Meldal
  • David C. Luckham
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1526)

Abstract

We discuss the definition and modeling of reference of architectures, and the notion of conformance. NSA’s MISSI (Multilevel Information System Security Initiative) security reference architecture is used as an illustrative example.

We demonstrate that an ADL should have not only the capability to specify interfaces, connections, and operational constraints, but also to specify how it is related (Or conforms) with other architectures or to implementations. A reference architecture such as MISSI is defined in Rapide [14] as a set of hierarchical interface connection architectures [17]. Each Rapide interface connection architecture serves as a reference architecture – an abstract architecture that allows a number of different implementations, but which enforces a common structure and communication rules. The hierarchical reference architecture defines the MISSI policies at different levels and identifies standard components, communication patterns and policies common to MISSI compliant networks of computer systems.

keywords and Phrases

Software architectures security conformance reference architecture software engineering specification testing 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Allen, R., Garlan, D.: Formalizing architectural connection. In: Proceedings of the Sixteenth International Conference on Software Engineering. IEEE Computer Society Press, Los Alamitos (1994)Google Scholar
  2. 2.
    Allen, R.J.: A Formal Approach to Software Architecture, Ph.D. Thesis, Carnegie Mellon University, Technical Report Number CMU-CS-97-144 (May 1997)Google Scholar
  3. 3.
    Batory, D., Geraci, B.J.: Composition Validation and Subjectivity in GenVoca Generators. IEEE Transactions on Software Engineering (special issue on Software Reuse), 67–82 (February 1997)Google Scholar
  4. 4.
    Boehm, B.W.: Software Process Architectures. In: Proceedings of the First International Workshop on Architectures for Software Systems, Seattle, WA (1995); published as CMU-CS-TR-95-151Google Scholar
  5. 5.
    Ellis, W.J., et al.: Toward a Recommended Practice for Architectural Description. In: Proceedings 2nd IEEE International Conference on Engineering of Complex Computer Systems, Montreal, Canada (1996)Google Scholar
  6. 6.
    Englehart, M., Jackson, M.: ControlH: A Specification Language and Code Generator for Real-Time N&C Applications. Honeywell Technology Center (1993)Google Scholar
  7. 7.
    Garlan, D., Shaw, M.: An Introduction to Software Architecture, vol. I. World Scientific Publishing Company, Singapore (1993)Google Scholar
  8. 8.
    Garlan, D., Wang, Z.: A Case Study in Software Architecture Interchange (March 1998) (submitted for publication)Google Scholar
  9. 9.
    Garlan, D.: Research directions in software architectures. ACM Computing Surveys 27(2), 257–261 (1995)CrossRefGoogle Scholar
  10. 10.
    Garlan, D., Monroe, R.T., Wile, D.: Acme: An Architecture Description Interchange Language. In: Proceedings of CASCON 1997 (November 1997)Google Scholar
  11. 11.
    Gennart, B.A., Luckham, D.C.: Validating Discrete Event Simulations Using Pattern Mappings. In: Proceedings of the 29th Design Automation Conference (DAC), pp. 414–419. IEEE Computer Society Press, Los Alamitos (1992)Google Scholar
  12. 12.
    Hinchey, M.G., Jarvis, S.A.: Concurrent Systems: Formal Development in CSP. McGraw-Hill International Series in Software Engineering, New York (1995)Google Scholar
  13. 13.
    Johnson, D.R., Saydjari, F.F., Van Tassel, J.P.: MISSI security Policy: A Formal Approach. R2SPO Technical Report R2SPO-TR001-95, NSA/Central Security Service (July 1995)Google Scholar
  14. 14.
    Luckham, D.C., Vera, J.: An event-based architecture definition language. IEEE Transactions on Software Engineering 21(3), 253–265 (1993)Google Scholar
  15. 15.
    Luckham, D.C.: Programming with Specifications: An Introduction to ANNA, A Language for Specifying Ada Programs. Texts and Monographs in Computer Science. Springer, Heidelberg (1990)zbMATHGoogle Scholar
  16. 16.
    Luckham, D.C.: Rapide: A Language and Toolset for Simulation of Distributed Systems by Partial Orderings of Events. In: DIMACS Partial Order Methods Workshop IV. Princeton University, Princeton (1996)Google Scholar
  17. 17.
    Luckham, D.C., Vera, J., Meldal, S.: Key Concepts in Architecture Definition Languages. Submitted to the CACM; Also published as technical report CSL-TR-95-674, Stanford University (1996)Google Scholar
  18. 18.
    Meldal, S.: Supporting architecture mappings in concurrent systems design. In: Proceedings of the Australian Software Engineering Conference. IREE, Australia (May 1990)Google Scholar
  19. 19.
    Meszaros, G.: Software Architecture in BNR. In: Proceedings of the First International Workshop on Architectures for Software Systems, Seattle, WA (1995); published as CMU- CS-TR-95-151Google Scholar
  20. 20.
    Milner, R.: Operational and Algebraic Semantics of Concurrent Processes. In: Handbook of Theoretical Computer Science, vol. B. Elsevier Science Publishers and MIT Press (1990)Google Scholar
  21. 21.
    Milner, R.: Communication and Concurrency. Prentice Hall, Englewood Cliffs (1995)Google Scholar
  22. 22.
    Mitchell, J.C., Meldal, S., Madhav, N.: An Extension of Standard ML Modules with Sub-typing and Inheritance. In: Proceedings of the 18th ACM Symp. on the Principles of Programming Languages, pp. 270–278. ACM Press, New York (1991); Also published as Technical Report CSL-TR-91-472, Computer Systems Laboratory, Stanford UniversityGoogle Scholar
  23. 23.
    Monroe, R.T., Garlan, D.: Style Based Reuse for Software Architectures. In: Proceedings of the 1996 International Conference on Software Reuse (April 1996)Google Scholar
  24. 24.
    Moriconi, M., Qian, X.: Correctness and composition of software architectures. In: Proceedings of ACM SIGSOFT 1994: Symposium on Foundations of Software Engineering, New Orleans, LA (December 1994)Google Scholar
  25. 25.
    PAVG: The Rapide Architecture Description Language Reference Manual, http://pavg.stanford.edu/rapide/lrms/architectures.ps
  26. 26.
    PAVG: The Rapide Constraint Language Reference Manual (in preparation) Google Scholar
  27. 27.
    PAVG: Rapide Examples (in preparation) Google Scholar
  28. 28.
    PAVG: The Rapide Pattern Language Reference Manual, http://pavg.stanford.edu/rapide/lrms/patterns.ps
  29. 29.
    PAVG: POVapartial order browser, http://pavg.stanford.edu/rapide/tools-release.html
  30. 30.
    PAVG: Raptoranimating architecture models, http://pavg.stanford.edu/rapide/tools-release.html
  31. 31.
    PAVG: Rapide toolset information, http://pavg.stanford.edu/rapide/tools.html
  32. 32.
    Perry, D., Wolf., A.L.: Foundations for the Study of Software Architecture. ACM Software Engineering Notes 17(4) (October 1992)Google Scholar
  33. 33.
    Pratt, V.R.: Modeling concurrency with partial orders. International Journal of Parallel Programming 15(1), 33–71 (1986)zbMATHCrossRefMathSciNetGoogle Scholar
  34. 34.
    Santoro, A., Park, W.: SPARC-V9 architecture specification with Rapide. Technical report CSL, Stanford University (to appear)Google Scholar
  35. 35.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  36. 36.
    Shaw, M., DeLine, R., Zelesnik, G.: Abstractions and Implementations for Architectural Connections. In: Proceedings of the 3rd International Conference on Configurable Distributed Systems (May 1996)Google Scholar
  37. 37.
    Solderitsch, J., Wickman, G., Kweder, D., Horton, H.: An Architecture and Generator for an Army IEW Domain. In: Software Technology Conference (1995)Google Scholar
  38. 38.
    Soni, D., Nord, R.L., Hofmeister, C.: Software Architecture in Industrial Applications. In: Proceedings of the 17th International Conference in Software Engineering. ACM, New York (1995)Google Scholar
  39. 39.
    van Glabbeek, R.: Comparative Concurrency Semantics and Refinement of Actions, PhD Thesis, Vrije Universiteit te Amsterdam, Centrum voor Wiskunde en Informatica (May 1990)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Sigurd Meldal
    • 1
  • David C. Luckham
    • 2
  1. 1.Computer Science DepartmentCalPoly 
  2. 2.Computer Systems LaboratoryStanford University 

Personalised recommendations