Abstract
The refinement process of component designs is one of the basic building blocks for systematic component-based development. In this process, identifying inconsistent specifications of interactions among refined and refining components can be a critical issue for system safety and/or reliability.
To efficiently identify interaction inconsistencies, we have been developing a consistency checking framework integrated into the model-driven component-based development methodology Marmot, using model checking as a debugging tool. We introduce our notion of interaction consistency, propose a general framework for integrating the consistency checking mechanism into the refinement process, and demonstrate how the efficiency of identifying inconsistencies can be improved through abstractions.
A large portion of this work was performed while the author was with the Fraunhofer Institute for Experimental Software Engineering in Germany. This work has been partially supported by the KNU New Faculty Start-up Fund.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Less, A.: Elementary Tutorial for the PVS Specification and Verification System. Technical Report CSL-95-10, SRI International (August 1996)
Adamek, J., Plasil, F.: Component Composition Errors and Update Atomicity: Static Analysis. Journal of Software Maintenance and Evolution: Research and Practice (September 2005)
Atkinson, C., Bayer, J., Bunse, C.: Component-Based Product Line Engineering with UML. Addison-Wesley, Reading (2002)
Barros, T., Henrio, L., Madelaine, E.: Behavioural models for hierarchical components. In: Godefroid, P. (ed.) SPIN 2005. LNCS, vol. 3639, pp. 154–168. Springer, Heidelberg (2005)
Campbell, L., Cheng, B., McUmber, W., Stirewalt, R.E.K.: Automatically Detecting and Visualising Errors in UML Diagrams. Requirements Engineering 7, 264–287 (2002)
Cheung, S.C., Kramer, J.: Checking Safety Properties Using Compositional Reachability Analysis. ACM Transactions of Software Engineering Methodology (1999)
Clarke, E.M., Grumberg, O., Peled, D.: Model Checking. MIT Press, Cambridge (1999)
D’Souza, D.F., Wills, A.C.: Objects, Components, and Frameworks with UML: the Catalysis Approach. Addison-Wesley, Reading (1999)
Engels, G., Kuester, J.M., Groenwegen, L.: Consistent Interaction of Software Components. Journal of Integrated Design and Process Science 6(4), 2–22 (2003)
Eshuis, R., Wieringa, R.: A Real-Time Execution Semantics for UML Activity Diagrams. In: Fundamental Approaches to Software Engineering (April 2001)
Gallardo, M.M., Merido, P., Pimentel, E.: Debugging UML Designs with Model Checking. Journal of Object Technology 1(2) (2002)
Giannakopoulou, D., Pasareanu, C.S., Barringer, H.: Assumption Generation for Software Component Verification. In: 17th IEEE International Conference on Automated Software Engineering, pp. 3–12 (September 2002)
Hoare, C.A.R.: Communicating Sequential Processes. Prentice Hall, Englewood Cliffs (1985)
Holzmann, G.J.: The SPIN Model Checker: Primer and Reference Manual. Addison-Wesley, Reading (2003)
Kuester, J.M., Stehr, J.: Towards Explict Behavioral Consistency Concepts in the UML. In: Second International Workshop on Scenario and State Machines: Models, Algorithmes, and Tools (2003)
Latella, D., Majzik, I., Massink, M.: Automatic Verification of a Behavioral Subset of UML Statechart Diagrams Using the SPIN Model-Checker. Formal Aspects of Computing, 637–664 (1999)
Formal Systems Europe Ltd. Failures-Divergence-Refinement: FDR2 User Manual (1997)
McUmber, W.E., Cheng, B.: A General Framework for Formalizing UML with Formal Languages. In: Twenty-third International Conference on Sofware Engineering (2001)
OMEGA Project. Action Specification in OMEGA (2004), http://www-omega.imag.fr/doc/d1000092_5/ASv03-a4-public.pdf
Reussner, R.H., Poernomo, I., Schmidt, H.W.: Reasoning about Software Architectures with Contractually Specified Components. In: Component-Based Software Quality: Methods and Techniques, State-of-the-Art Survey (2003)
Selic, B., Gullekson, G., Ward, P.T.: Real-Time Object Oriented Modeling. John Wiley and Sons, Chichester (1994)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley, Reading (1999)
Van der Aalst, W.M.P., van Hee, K.M., van der Toorn, R.A.: Component-Based Software Architectures: A Framework Based on Inheritance of Behavior. Science of Computer Programming 42(2-3), 129–171 (2002)
Xie, F., Browne, J.C.: Verified Systems by Composition from Verified Components. In: Proceedings of Joint Conference ESEC/FSE (2003)
Zimmerova, B., Brim, L., Cerna, I., Varekova, P.: Component-Interaction Automata as a Verification-Oriented Component-Based System Specification. In: Workshop on Specification and Verification of Component-Based Systems (2005)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer Berlin Heidelberg
About this paper
Cite this paper
Choi, Y. (2007). Checking Interaction Consistency in MARMOT Component Refinements. In: van Leeuwen, J., Italiano, G.F., van der Hoek, W., Meinel, C., Sack, H., Plášil, F. (eds) SOFSEM 2007: Theory and Practice of Computer Science. SOFSEM 2007. Lecture Notes in Computer Science, vol 4362. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-69507-3_72
Download citation
DOI: https://doi.org/10.1007/978-3-540-69507-3_72
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-69506-6
Online ISBN: 978-3-540-69507-3
eBook Packages: Computer ScienceComputer Science (R0)