{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,3]],"date-time":"2026-04-03T05:31:46Z","timestamp":1775194306944,"version":"3.50.1"},"publisher-location":"Berlin, Heidelberg","reference-count":56,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783540559634","type":"print"},{"value":"9783540473305","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[1992]]},"DOI":"10.1007\/3-540-55963-9_38","type":"book-chapter","created":{"date-parts":[[2012,2,26]],"date-time":"2012-02-26T10:48:05Z","timestamp":1330253285000},"page":"23-43","source":"Crossref","is-referenced-by-count":14,"title":["Experience with a course on architectures for software systems"],"prefix":"10.1007","author":[{"given":"David","family":"Garlan","sequence":"first","affiliation":[]},{"given":"Mary","family":"Shaw","sequence":"additional","affiliation":[]},{"given":"Chris","family":"Okasaki","sequence":"additional","affiliation":[]},{"given":"Curtis M.","family":"Scott","sequence":"additional","affiliation":[]},{"given":"Roy F.","family":"Swonger","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2005,7,11]]},"reference":[{"key":"4_CR1","unstructured":"Robert Allen and David Garlan. A formal approach to software architectures. Submitted for publication, January 1992."},{"issue":"1","key":"4_CR2","doi-asserted-by":"crossref","first-page":"49","DOI":"10.1145\/103162.103164","volume":"23","author":"G. R. Andrews","year":"1991","unstructured":"Gregory R. Andrews. Paradigms for process interaction in distributed programs. ACM Computing Surveys, 23(1):49\u201390, March 1991.","journal-title":"ACM Computing Surveys"},{"key":"4_CR3","unstructured":"Maurice J. Bach. The Design of the UNIX Operating System, chapter 5.12, pages 111\u2013119. Software Series. Prentice-Hall, 1986."},{"issue":"12","key":"4_CR4","doi-asserted-by":"crossref","first-page":"859","DOI":"10.1002\/spe.4380171202","volume":"17","author":"J. M. Bishop","year":"1987","unstructured":"J. M. Bishop, S. R. Adams, and D. J. Pritchard. Distributing concurrent Ada programs by source translation. Software\u2014Practice and Experience, 17(12):859\u2013884, December 1987.","journal-title":"Software\u2014Practice and Experience"},{"key":"4_CR5","unstructured":"Judy M. Bishop. Ada profile charts in software development. Journal of Pascal, Ada and Modula-2, 8(2), October 1987."},{"key":"4_CR6","volume-title":"Technical Report TR-91-22","author":"D. Batory","year":"1991","unstructured":"Don Batory and Sean O'Malley. The design and implementation of hierarchical software systems using reusable components. Technical Report TR-91-22, Department of Computer Science, University of Texas, Austin, June 1991."},{"issue":"2","key":"4_CR7","doi-asserted-by":"crossref","first-page":"211","DOI":"10.1109\/TSE.1986.6312937","volume":"SE-12","author":"G. Booch","year":"1986","unstructured":"Grady Booch. Object-oriented development. IEEE Transactions on Software Engineering, SE-12(2):211\u2013221, February 1986.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"4_CR8","volume-title":"Software Components with Ada: Structures, Tools and Subsystems","author":"G. Booch","year":"1987","unstructured":"Grady Booch. Software Components with Ada: Structures, Tools and Subsystems. Benjamin\/Cummings, Menlo Park, CA, 1987."},{"key":"4_CR9","first-page":"19","volume-title":"Programming at the processor-memory-switch level","author":"M. R. Barbacci","year":"1988","unstructured":"M. R. Barbacci, C. B. Weinstock, and J. M. Wing. Programming at the processor-memory-switch level. In Proceedings of the 10th International Conference on Software Engineering, pages 19\u201328, Singapore, April 1988. IEEE Computer Society Press."},{"key":"4_CR10","doi-asserted-by":"crossref","first-page":"143","DOI":"10.1145\/126551.126566","volume-title":"Proceedings of TRI-Ada'91","author":"Doubleday","year":"1991","unstructured":"Doubleday et al. Building distributed Ada applications from specifications and functional components. In Proceedings of TRI-Ada'91, pages 143\u2013154, San Jose, CA, October 1991. ACM Press."},{"issue":"2","key":"4_CR11","doi-asserted-by":"crossref","first-page":"80","DOI":"10.1109\/TSE.1976.233534","volume":"SE-2","author":"F. DeRemer","year":"1976","unstructured":"Frank DeRemer and Hans H. Kron. Programming-in-the-large versus programming-in-the-small. IEEE Transactions on Software Engineering, SE-2(2):80\u201386, June 1976.","journal-title":"IEEE Transactions on Software Engineering"},{"key":"4_CR12","unstructured":"Proceedings of the Workshop on Domain-Specific Software Architectures, July 1990."},{"key":"4_CR13","volume-title":"Technical Report HPL-SEG-TN-90-11","author":"A. Earl","year":"1990","unstructured":"Anthony Earl. A reference model for computer assisted software engineering environment frameworks. Technical Report HPL-SEG-TN-90-11, Hewlett Packard Laboratories, Bristol, England, August 1990."},{"key":"4_CR14","doi-asserted-by":"crossref","unstructured":"Bill Flinn and ib Holm Sorensen. CAVIAR: A Case Study in Specification. Prentice Hall International, 1987.","DOI":"10.1007\/978-4-431-68051-2_8"},{"key":"4_CR15","unstructured":"Gary Fisher. Application portability profile-APP-The U.S. Government's open system environment profile. US Department of Commerce, April 1991. National Technical Information Service Special Report, 500-187."},{"issue":"3","key":"4_CR16","doi-asserted-by":"crossref","first-page":"21","DOI":"10.1109\/MS.1985.230697","volume":"2","author":"M. Fridrich","year":"1985","unstructured":"Marek Fridrich and William Older. Helix: The architecture of the XMS distributed file system. IEEE Software, 2(3):21\u201329, May 1985.","journal-title":"IEEE Software"},{"key":"4_CR17","series-title":"LNCS 428","volume-title":"VDM'90: VDM and Z \u2014 Formal Methods in Software Development","author":"D. Garlan","year":"1990","unstructured":"David Garlan and Norman Delisle. Formal specifications as reusable frameworks. In VDM'90: VDM and Z \u2014 Formal Methods in Software Development, Kiel, Germany, 1990. Springer-Verlag, LNCS 428."},{"key":"4_CR18","unstructured":"David Garlan, Gail E. Kaiser, and David Notkin. On the criteria to be used in composing tools into systems. Technical Report 88-08-09, Department of Computer Science, University of Washington, August 1988."},{"key":"4_CR19","doi-asserted-by":"crossref","unstructured":"David Garlan and David Notkin. Formalizing design spaces: Implicit invocation mechanisms. In VDM'91: Formal Software Development Methods, pages 31\u201344. Springer-Verlag, LNCS 551, October 1991.","DOI":"10.1007\/3-540-54834-3_5"},{"key":"4_CR20","unstructured":"MIF Working Group. Master: A prototech module interconnection formalism. Draft of December 1991, 1991."},{"key":"4_CR21","unstructured":"Robert Harper et al. Introduction to Standard ML. Technical report, Laboratory for Foundations of Computer Science, Computer Science Department, University of Edinburgh, March 1988."},{"key":"4_CR22","unstructured":"A. Nico Habermann, David Garlan, and David Notkin. Generation of integrated task-specific software environments. In Richard F. Rashid, editor, CMU Computer Science: A 25th Commemorative, Anthology Series, pages 69\u201398. ACM Press, 1991."},{"key":"4_CR23","doi-asserted-by":"crossref","unstructured":"Iain Houston and Steve King. Experiences and results from the use of Z in IBM. In VDM'91: Formal Software Development Methods, number 551 in Lecture Notes in Computer Science, pages 588\u2013595. Springer-Verlag, October 1991.","DOI":"10.1007\/3-540-54834-3_34"},{"key":"4_CR24","doi-asserted-by":"crossref","unstructured":"Barbara Hayes-Roth. Architectural foundations for real-time performance in intelligent agents. The Journal of Real-Time Systems, Kluwer Academic Publishers, 2:99\u2013125, 1990.","DOI":"10.1007\/BF01840468"},{"key":"4_CR25","first-page":"1","volume":"8","author":"J. D. Ichbiah","year":"1983","unstructured":"J. D. Ichbiah et al. Rationale for the design of the Ada programming language. SIGPLAN Notices, 14(16 (Part B)):8:1\u201316, 13:1\u201321, June 1983. Chapters 8 (Modules) and 13 (Generic Program Units).","journal-title":"SIGPLAN Notices, 14(16 (Part B))"},{"key":"4_CR26","first-page":"15","volume-title":"UNIX Programmer's Supplementary Documents, volume PS1","author":"S. C. Johnson","year":"1986","unstructured":"Stephen C. Johnson. YACC: yet another compiler-compiler. In UNIX Programmer's Supplementary Documents, volume PS1, pages 15:1\u201333. University of California, Berkeley, 1986."},{"issue":"1","key":"4_CR27","doi-asserted-by":"crossref","first-page":"11","DOI":"10.1109\/MS.1984.233391","volume":"1","author":"B. W. Lampson","year":"1984","unstructured":"Butler W. Lampson. Hints for computer system design. IEEE Software, 1(1):11\u201328, January 1984.","journal-title":"IEEE Software"},{"key":"4_CR28","unstructured":"Thomas G. Lane. A design space and design rules for user interface software architecture. Technical Report CMU\/SEI-90-TR-22 ESD-90-TR-223, Carnegie Mellon University, Software Engineering Institute, November 1990."},{"issue":"6","key":"4_CR29","doi-asserted-by":"crossref","first-page":"70","DOI":"10.1109\/MS.1987.232095","volume":"4","author":"M. A. Linton","year":"1987","unstructured":"Mark A. Linton. Distributed management of a software database. IEEE Software, 4(6):70\u201376, November 1987.","journal-title":"IEEE Software"},{"key":"4_CR30","unstructured":"Hugh C. Lauer and Edwin H. Satterthwaite. Impact of MESA on system design. In Proceedings of the Third International Conference on Software Engineering, pages 174\u2013175. IEEE Computer Society Press, May 1979."},{"key":"4_CR31","first-page":"16","volume-title":"UNIX Programmer's Supplementary Documents, vol. PS1","author":"M. E. Lesk","year":"1986","unstructured":"M. E. Lesk and E. Schmidt. LEX\u2014a lexical analyzer generator. In UNIX Programmer's Supplementary Documents, vol. PS1, pages 16:1\u201313. University of California, Berkeley, 1986."},{"issue":"3","key":"4_CR32","first-page":"38","volume":"7","author":"H. P. Nii","year":"1986","unstructured":"H. Penny Nii. Blackboard systems Part 1: The blackboard model of problem solving and the evolution of blackboard architectures. AI Magazine, 7(3):38\u201353, Summer 1986. Reprinted with corrections by AI Magazine.","journal-title":"AI Magazine"},{"issue":"4","key":"4_CR33","first-page":"82","volume":"7","author":"H. P. Nii","year":"1986","unstructured":"H. Penny Nii. Blackboard systems Part 2: Blackboard application systems and a knowledge engineering perspective. AI Magazine, 7(4):82\u2013107, August 1986. Reprinted with corrections by AI Magazine.","journal-title":"AI Magazine"},{"issue":"12","key":"4_CR34","doi-asserted-by":"crossref","first-page":"1053","DOI":"10.1145\/361598.361623","volume":"15","author":"D. L. Parnas","year":"1972","unstructured":"D. L. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15(12):1053\u20131058, December 1972.","journal-title":"Communications of the ACM"},{"issue":"3","key":"4_CR35","doi-asserted-by":"crossref","first-page":"61","DOI":"10.1109\/MS.1985.230703","volume":"2","author":"M. C. Paulk","year":"1985","unstructured":"Mark C. Paulk. The arc network: A case study. IEEE Software, 2(3):61\u201369, May 1985.","journal-title":"IEEE Software"},{"issue":"3","key":"4_CR36","doi-asserted-by":"crossref","first-page":"259","DOI":"10.1109\/TSE.1985.232209","volume":"SE-11","author":"D. L. Parnas","year":"1985","unstructured":"David L. Parnas, Paul C. Clements, and David M. Weiss. The modular structure of complex systems. IEEE Transactions on Software Engineering, SE-11(3):259\u2013266, March 1985.","journal-title":"IEEE Transactions on Software Engineering"},{"issue":"4","key":"4_CR37","doi-asserted-by":"crossref","first-page":"307","DOI":"10.1016\/0164-1212(86)90002-6","volume":"6","author":"R. Prieto-Diaz","year":"1986","unstructured":"Ruben Prieto-Diaz and James M. Neighbors. Module interconnection languages. The Journal of Systems and Software, 6(4):307\u2013334, November 1986.","journal-title":"The Journal of Systems and Software"},{"key":"4_CR38","first-page":"61","volume-title":"Software interconnection models","author":"D. E. Perry","year":"1987","unstructured":"Dewayne E. Perry. Software interconnection models. In Proceedings of the Ninth International Conference on Software Engineering, pages 61\u201368, Monterey, CA, March 1987. IEEE Computer Society Press."},{"key":"4_CR39","unstructured":"Dewayne E. Perry and Alexander L. Wolf. Software architecture. Submitted for publication, January 1991."},{"key":"4_CR40","unstructured":"Sridhar A. Raghavan and Donald R. Chand. Applications generators & fourth generation languages. Technical Report TR-86-02, Wang Institute and Bentley College, February 1986."},{"key":"4_CR41","unstructured":"Alfred Z. Spector et al. Camelot: A distributed transaction facility for Mach and the Internet \u2014 an interim report. Technical Report CMU-CS-87-129, Carnegie Mellon University, June 1987."},{"key":"4_CR42","doi-asserted-by":"crossref","unstructured":"V. Seshadri et al. Semantic analysis in a concurrent compiler. In Proceedings of ACM SIGPLAN '88 Conference on Programming Language Design and Implementation. ACM SIGPLAN Notices, 1988.","DOI":"10.1145\/53990.54013"},{"issue":"2","key":"4_CR43","doi-asserted-by":"crossref","first-page":"79","DOI":"10.1145\/22949.24053","volume":"5","author":"R. W. Scheifler","year":"1986","unstructured":"Robert W. Scheifler and Jim Gettys. The X window system. ACM Transactions on Graphics, 5(2):79\u2013109, April 1986.","journal-title":"ACM Transactions on Graphics"},{"key":"4_CR44","doi-asserted-by":"crossref","unstructured":"Lui Sha and John B. Goodenough. Real-time scheduling theory and Ada. Computer, pages 53\u201362, April 1990.","DOI":"10.1109\/2.55469"},{"key":"4_CR45","unstructured":"Mary Shaw. What can we specify? Questions in the domains of software specifications. In Proceedings of the Third International Workshop on Software Specification and Design, pages 214\u2013215. IEEE Computer Society Press, August 1985."},{"key":"4_CR46","unstructured":"Mary Shaw. Elements of a design language for software architecture. Unpublished position paper, 1990."},{"key":"4_CR47","doi-asserted-by":"crossref","unstructured":"Mary Shaw. Toward higher-level abstractions for software systems. In Data & Knowledge Engineering, volume 5, pages 119\u2013128. Elsevier Science Publishers B.V., North Holland, 1990.","DOI":"10.1016\/0169-023X(90)90008-2"},{"key":"4_CR48","doi-asserted-by":"crossref","unstructured":"Mary Shaw. Heterogeneous design idioms for software architecture. In Proceedings of the Sixth International Workshop on Software Specification and Design, IEEE Computer Society, Software Engineering Notes, pages 158\u2013165, Como, Italy, October 25\u201326 1991.","DOI":"10.1109\/IWSSD.1991.213065"},{"key":"4_CR49","unstructured":"J. Michael Spivey. The Fuzz Manual. Computing Science Consultancy, 2 Willow Close, Garsington, Oxford OX9 9AN, UK, 1988."},{"key":"4_CR50","unstructured":"J. M. Spivey. The Z Notation: A Reference Manual. Prentice Hall, 1989."},{"issue":"1","key":"4_CR51","doi-asserted-by":"crossref","first-page":"40","DOI":"10.1049\/sej.1989.0006","volume":"4","author":"J.M. Spivey","year":"1989","unstructured":"J.M. Spivey. An introduction to Z and formal specification. Software Engineering Journal, 4(1):40\u201350, January 1989.","journal-title":"Software Engineering Journal"},{"key":"4_CR52","doi-asserted-by":"crossref","unstructured":"Steven A. Shafer, Anthony Stentz, and Charles E. Thorpe. An architecture for sensor fursion in a mobile robot. In Proceedings of the IEEE International Conference on Robotics and Automation, pages 2002\u20132010, San Franciso, CA, April 1986.","DOI":"10.1109\/ROBOT.1986.1087440"},{"issue":"10","key":"4_CR53","doi-asserted-by":"crossref","first-page":"10","DOI":"10.1109\/2.7053","volume":"21","author":"J. A. Stankovic","year":"1988","unstructured":"John A. Stankovic. Misconceptions about real-time computing. Computer, Vol.21(10):10\u201319, October 1988.","journal-title":"Computer"},{"issue":"4","key":"4_CR54","doi-asserted-by":"crossref","first-page":"453","DOI":"10.1145\/356859.356864","volume":"13","author":"A. S. Tannenbaum","year":"1981","unstructured":"Andrew S. Tannenbaum. Network protocols. ACM Computing Surveys, 13(4):453\u2013489, December 1981.","journal-title":"ACM Computing Surveys"},{"issue":"9","key":"4_CR55","doi-asserted-by":"crossref","first-page":"104","DOI":"10.1145\/83880.84526","volume":"33","author":"R. J. Wirfs-Brock","year":"1990","unstructured":"Rebecca J. Wirfs-Brock and Ralph E. Johnson. Surveying current research in object-oriented design. Communications of the ACM, 33(9):104\u2013124, September 1990.","journal-title":"Communications of the ACM"},{"issue":"3","key":"4_CR56","doi-asserted-by":"crossref","first-page":"212","DOI":"10.1109\/32.75412","volume":"17","author":"P. Zave","year":"1991","unstructured":"Pamela Zave. An insider's evaluation of PAISLey. IEEE Transactions on Software Engineering, 17(3):212\u2013225, March 1991.","journal-title":"IEEE Transactions on Software Engineering"}],"container-title":["Lecture Notes in Computer Science","Software Engineering Education"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/3-540-55963-9_38.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,3,21]],"date-time":"2025-03-21T21:44:53Z","timestamp":1742593493000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/3-540-55963-9_38"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1992]]},"ISBN":["9783540559634","9783540473305"],"references-count":56,"URL":"https:\/\/doi.org\/10.1007\/3-540-55963-9_38","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[1992]]}}}