Abstract
Modeling the dependencies between provided and required services within a software component is necessary for several reasons, such as automated component adaptation and architectural dependency analysis. Parametric contracts for software components specify such dependencies and were successfully used for automated protocol adaptation and quality of service prediction. In this paper, a novel model for parametric contracts based on graph grammars is presented and a first definition of the compositionality of parametric contracts is given. Compared to the previously used finite state machine based formalism, the graph grammar formalism allows a more elegant formulation of parametric contract applications and considerably simpler implementations.
Chapter PDF
Similar content being viewed by others
References
Aho, A.V., Ullman, J.D.: The Theory of Parsing, Translation, and Compiling. In: Parsing, vol. I. Prentice-Hall, Englewood Cliffs (1972)
de Alfaro, L., Henzinger, T.A.: Interface automata. In: Gruhn, V. (ed.) Proceedings of the Joint 8th European Software Engeneering Conference and 9th ACM SIGSOFT Symposium on the Foundation of Software Engeneering (ESEC/FSE 2001), September 10–14. Software Engineering Notes, vol. 26(5), pp. 109–120. ACM Press, New York (2001)
Drewes, F., Hoffmann, B., Plump, D.: Hierarchical graph transformation. Journal of Computer and System Sciences 64, 249–283 (2002)
Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.): Handbook of Graph Grammars and Computing by Graph Transformation: Applications, Languages and Tools, vol. 2. World Scientific, Singapore (1999)
Ehrig, H., Kreowski, H.-J., Montanari, U., Rozenberg, G. (eds.): Handbook of Graph Grammars and Computing by Graph Transformation: Concurrency, Parallelism, and Distribution, vol. 3. World Scientific, Singapore (1999)
Habel, A. (ed.): Hyperedge Replacement: Grammars and Languages. LNCS, vol. 643. Springer, Heidelberg (1992)
Habel, A.: Hypergraph grammars: Transformational and algorithmic aspects. Journal of Information Processing and Cybernetics EIK 28, 241–277 (1992)
Habel, A., Müller, J., Plump, D.: Double-pushout graph transformation revisited. Mathematical Structures in Computer Science 11(5), 637–688 (2001)
Holzmann, G.J.: Design and Validation of Computer Protocols. Prentice Hall, Englewood Cliffs (1991)
Hunzelmann, G.: Generierung von Protokollinformation für Softwarekomponentenschnittstellen aus annotiertem Java-Code. Diplomarbeit, Fakultät für Informatik, Universität Karlsruhe (TH), Germany (April 2001)
Meyer, B.: Applying Design by Contract. IEEE Computer 25(10), 40–51 (1992)
Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice Hall, Englewood Cliffs (1997)
Nierstrasz, O.: Regular types for active objects. In: Proceedings of the 8th ACM onference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA 1993), October. ACM SIGPLAN Notices, vol. 28(10), pp. 1–15 (1993)
Reussner, R.H.: Parametrisierte Verträge zur Protokolladaption bei Software- Komponenten. Logos Verlag, Berlin (2001)
Reussner, R.H.: Automatic Component Protocol Adaptation with the CoCoNut Tool Suite. Future Generation Computer Systems 19, 627–639 (2003)
Reussner, R.H., Poernomo, I.H., Schmidt, H.W.: Reasoning on software architectures with contractually specified components. In: Cechich, A., Piattini, M., Vallecillo, A. (eds.) Component-Based Software Quality. LNCS, vol. 2693, pp. 287–325. Springer, Heidelberg (2003)
Rozenberg, G. (ed.): Handbook of Graph Grammars and Computing by Graph Transformation: Foundations, vol. 1. World Scientific, Singapore (1997)
Stafford, J.A., Wolf, A.L., Caporuscio, M.: The application of dependence analysis to software architecture descriptions. In: Bernardo, M., Inverardi, P. (eds.) SFM 2003. LNCS, vol. 2804, pp. 52–62. Springer, Heidelberg (2003)
Vallecillo, A., Hernández, J., Troya, J.M.: Object interoperability. In: Moreira, A.M.D., Demeyer, S. (eds.) ECOOP 1999 Workshops. LNCS, vol. 1743, pp. 1–21. Springer, Heidelberg (1999)
Yellin, D., Strom, R.: Protocol Specifications and Component Adaptors. ACM Transactions on Programming Languages and Systems 19(2), 292–333 (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Reussner, R.H., Happe, J., Habel, A. (2005). Modelling Parametric Contracts and the State Space of Composite Components by Graph Grammars. In: Cerioli, M. (eds) Fundamental Approaches to Software Engineering. FASE 2005. Lecture Notes in Computer Science, vol 3442. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31984-9_7
Download citation
DOI: https://doi.org/10.1007/978-3-540-31984-9_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25420-1
Online ISBN: 978-3-540-31984-9
eBook Packages: Computer ScienceComputer Science (R0)