|
ABSTRACT
As software systems become more complex, the overall system structure—or software architecture—becomes a central design problem. An important step toward an engineering discipline of software is a formal basis for describing and analyzing these designs. In the article we present a formal approach to one aspect of architectural design: the interactions among components. The key idea is to define architectural connectors as explicit semantic entities. These are specified as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact. We illustrate how this scheme can be used to define a variety of common architectural connectors. We further provide a formal semantics and show how this leads to a system in which architectural compatibility can be checked in a way analogous to type-checking in programming languages.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
|
| |
3
|
|
| |
4
|
BURCH, J. R., CLARKE, E. M., MCMILLAN, K. L., DILL, D. L., AND HWANG, J. 1990. Symbolic model checking: 1020 states and beyond. In Proceedings of the 5th Annual IEEE Symposium on Logic in Computer Science. IEEE, New York.
|
| |
5
|
|
 |
6
|
|
| |
7
|
DARPA. 1990. Proceedings of the Workshop on Domain-Specific Software Architectures. Software Engineering Institute, Pittsburgh, Pa.
|
| |
8
|
G Estrin , R S Fenchel , R R Razouk , M K Vernon, SARA (system architects apprentice): modeling, analysis, and simulation support for design of concurrent systems, IEEE Transactions on Software Engineering, v.12 n.2, p.293-311, Feb. 1986
|
| |
9
|
FORMAL SYSTEMS. 1992. Failures Divergence Refinement: User Manual and Tutorial. 1.2~ ed. Formal Systems (Europe), Oxford, U.K.
|
| |
10
|
GARLAN, D., Ed. 1995. Proceedings of the 1st International Workshop on Architectures for Software Systems (Seattle, Wash., Apr.). Available as CMU Tech. Rep. CMU-CS-95-151. Apr.
|
| |
11
|
|
| |
12
|
GREEN, P. AND GRIFFIN, T. 1995. Specification for the RTIS HLA/RTI implementation. Tech. Rep. RTIS10951, The Real-Time Intelligent Systems Corp., Westborough, Mass., Oct.
|
| |
13
|
|
| |
14
|
|
| |
15
|
|
| |
16
|
|
| |
17
|
JACOB, J. 1989. Refinement of shared systems. In The Theory and Practice of Refinement, J. A. McDermid, Ed. Butterworths, London, U.K.
|
| |
18
|
|
| |
19
|
|
| |
20
|
LARSEN, K. G. AND MILNER, R. 1986. A complete protocol verification using relativized bisumulation. Tech. Rep. ECS-LFCS-86-13, Univ. of Edinburgh Laboratory for Foundations of Computer Science, Edinburgh, U.K.
|
| |
21
|
David C. Luckham , John J. Kenney , Larry M. Augustin , James Vera , Doug Bryan , Walter Mann, Specification and Analysis of System Architecture Using Rapide, IEEE Transactions on Software Engineering, v.21 n.4, p.336-355, April 1995
[doi> 10.1109/32.385971]
|
| |
22
|
LYNCH, N. A. AND TUTTLE, M.R. 1988. An introduction to input/output automata. Tech. Rep. MIT/LCS/TM-373, MIT Laboratory for Computer Science, Cambridge, Mass.
|
| |
23
|
|
| |
24
|
METTALA, E. AND GRAHAM, M.H. 1992. The domain-specific software architecture program. Tech. Rep. CMU/SEI-92-SR-9, Software Engineering Institute, Pittsburgh, Pa.
|
| |
25
|
|
 |
26
|
|
| |
27
|
|
| |
28
|
NII, H.P. 1986b. Blackboard systems. Part 2. AI Mag. 7, 4, 62-69.
|
| |
29
|
|
 |
30
|
|
| |
31
|
|
 |
32
|
|
| |
33
|
|
| |
34
|
|
| |
35
|
|
| |
36
|
SHAW, M. AND GARLAN, D. 1995. Formulations and formalisms in software architecture. In Computer Science Today: Recent Trends and Developments, J. van Leeuwen, Ed. Lecture Notes in Computer Science, vol. 1000. Springer-Verlag, Berlin.
|
| |
37
|
|
| |
38
|
Mary Shaw , Robert DeLine , Daniel V. Klein , Theodore L. Ross , David M. Young , Gregory Zelesnik, Abstractions for Software Architecture and Tools to Support Them, IEEE Transactions on Software Engineering, v.21 n.4, p.314-335, April 1995
[doi> 10.1109/32.385970]
|
 |
39
|
Daniel M. Yellin , Robert E. Strom, Interfaces, protocols, and the semi-automatic construction of software adaptors, Proceedings of the ninth annual conference on Object-oriented programming systems, language, and applications, p.176-190, October 23-28, 1994, Portland, Oregon, United States
|
CITED BY 182
|
|
|
|
|
|
|
|
|
|
|
Nenad Medvidovic , David S. Rosenblum , Richard N. Taylor, A language and environment for architecture-based software development and evolution, Proceedings of the 21st international conference on Software engineering, p.44-53, May 16-22, 1999, Los Angeles, California, United States
|
|
|
|
|
|
Antonia Bertolino , Paola Inverardi , Henry Muccini, An explorative journey from architectural tests definition down to code tests execution, Proceedings of the 23rd International Conference on Software Engineering, p.211-220, May 12-19, 2001, Toronto, Ontario, Canada
|
|
|
|
|
|
Eric M. Dashofy , Nenad Medvidovic , Richard N. Taylor, Using off-the-shelf middleware to implement connectors in distributed software architectures, Proceedings of the 21st international conference on Software engineering, p.3-12, May 16-22, 1999, Los Angeles, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
Chrysanthos Dellarocas , Mark Klein , Howard Shrobe, An architecture for constructing self-evolving software systems, Proceedings of the third international workshop on Software architecture, p.29-32, November 01-05, 1998, Orlando, Florida, United States
|
|
|
|
|
|
|
|
|
Egidio Astesiano , Michel Bidoit , Hélène Kirchner , Bernd Krieg-Brückner , Peter D. Mosses , Donald Sannella , Andrzej Tarlecki, CASL: the common algebraic specification language, Theoretical Computer Science, v.286 n.2, p.153-196, 17 September 2002
|
|
|
|
|
|
Valérie Issarny , Titos Saridakis , Apostolos Zarras, Multi-view description of software architectures, Proceedings of the third international workshop on Software architecture, p.81-84, November 01-05, 1998, Orlando, Florida, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Jason E. Robbins , Nenad Medvidovic , David F. Redmiles , David S. Rosenblum, Integrating architecture description languages with a standard design method, Proceedings of the 20th international conference on Software engineering, p.209-218, April 19-25, 1998, Kyoto, Japan
|
|
|
|
|
|
|
|
|
David Rine , Nader Nada , Khaled Jaber, Using adapters to reduce interaction complexity in reusable component-based software development, Proceedings of the 1999 symposium on Software reusability, p.37-43, May 21-23, 1999, Los Angeles, California, United States
|
|
|
|
|
|
Thomas Genßler , Alexander Christoph , Michael Winter , Oscar Nierstrasz , Stéphane Ducasse , Roel Wuyts , Gabriela Arévalo , Bastiaan Schönhage , Peter Müller , Chris Stich, Components for embedded software: the PECOS approach, Proceedings of the 2002 international conference on Compilers, architecture, and synthesis for embedded systems, October 08-11, 2002, Grenoble, France
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
André van der Hoek , Dennis Heimbigner , Alexander L. Wolf, Versioned software architecture, Proceedings of the third international workshop on Software architecture, p.73-76, November 01-05, 1998, Orlando, Florida, United States
|
|
|
|
|
|
Sergey Melnik , Hector Garcia-Molina , Andreas Paepcke, A mediation infrastructure for digital library services, Proceedings of the fifth ACM conference on Digital libraries, p.123-132, June 02-07, 2000, San Antonio, Texas, United States
|
|
|
|
|
|
Dieter Fensel , Enrico Motta , Frank van Harmelen , V. Richard Benjamins , Monica Crubezy , Stefan Decker , Mauro Gaspari , Rix Groenboom , William Grosso , Mark Musen , Enric Plaza , Guus Schreiber , Rudi Studer , Bob Wielinga, The unified problem-solving method development language UPML, Knowledge and Information Systems, v.5 n.1, p.83-131, March 2003
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
John Hatcliff , Xinghua Deng , Matthew B. Dwyer , Georg Jung , Venkatesh Prasad Ranganath, Cadena: an integrated development, analysis, and verification environment for component-based systems, Proceedings of the 25th International Conference on Software Engineering, May 03-10, 2003, Portland, Oregon
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Jiri Adamek, Static analysis of component systems using behavior protocols, Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, October 26-30, 2003, Anaheim, CA, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Antonio Brogi , Javier Cámara , Carlos Canal , Javier Cubo , Ernesto Pimentel, Dynamic Contextual Adaptation, Electronic Notes in Theoretical Computer Science (ENTCS), v.175 n.2, p.81-95, June, 2007
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Francisco Heron Carvalho-Junior , Rafael Dueire Lins , Ricardo Cordeiro Corrês , Gisele Azevedo Araújo , Jefferson Carvalho Silva, On the design of abstract binding connectors for high performance computing component models, Proceedings of the 2007 symposium on Component and framework technology in high-performance and scientific computing, October 21-22, 2007, Montreal, Quebec, Canada
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Georg Jung , John Hatcliff, A type-centric framework for specifying heterogeneous, large-scale, component-oriented, architectures, Proceedings of the 6th international conference on Generative programming and component engineering, October 01-03, 2007, Salzburg, Austria
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Julien Mercadal , Nicolas Palix , Charles Consel , Julia L. Lawall, Pantaxou: a domain-specific language for developing safe coordination services, Proceedings of the 7th international conference on Generative programming and component engineering, October 19-23, 2008, Nashville, TN, USA
|
|
|
Ismael Bouassida Rodriguez , Karim Guennoun , Khalil Drira , Christophe Chassot , Mohamed Jmaiel, Implementing a rule-driven approach for architectural self configuration in collaborative activities using a graph rewriting formalism, Proceedings of the 5th international conference on Soft computing as transdisciplinary science and technology, October 28-31, 2008, Cergy-Pontoise, France
|
|
|
|
|
|
Ilie Şavga , Michael Rudolf , Sebastian Götz , Uwe Aßmann, Practical refactoring-based framework upgrade, Proceedings of the 7th international conference on Generative programming and component engineering, October 19-23, 2008, Nashville, TN, USA
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
REVIEW
"Markus Wolf : Reviewer"
Allen and Garlan present a formal approach to the description of
the architectural design of interacting components of a software system.
The intention of the approach is to extend traditional methods of
formalizing architectural design (Inter
more...
|