Abstract
In UML-RT, capsules communicate via protocols which connect capsule ports. Protocol State Machines (PSMs) allow the description of the legal message sequences of a port and are potentially very useful for the modular development and verification of systems. However, it is unclear how exactly conformance of a capsule to its PSMs should be defined and how this can be checked automatically. In this paper, we provide a definition of protocol conformance and show how software model checking can be used to check protocol conformance automatically. We describe the design and implementation of a tool that checks the conformance of a capsule with Java action code with respect to the PSMs of all its ports. The results of the validation of the tool on three case studies are summarized.
Work supported by NSERC, IBM Canada and Malina Software.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Ball, T., Cook, B., Levin, V., Rajamani, S.K.: SLAM and Static Driver Verifier: Technology Transfer of Formal Methods inside Microsoft. In: Boiten, E.A., Derrick, J., Smith, G.P. (eds.) IFM 2004. LNCS, vol. 2999, pp. 1–20. Springer, Heidelberg (2004)
Engels, G., Küster, J.M., Heckel, R., Groenewegen, L.: A Methodology for Specifying and Analyzing Consistency of Object-Oriented Behavioral Models. In: ESEC/FSE 2001, Vienna, Austria, pp. 186–195 (2001)
Engels, G., Küster, J., Heckel, R., Lohmann, M.: Model-Based Verification and Validation of Properties. ENTCS 82(7), 133–150 (2003)
Fähndrich, M., Aiken, M., Hawblitzel, C., Hodson, O., Hunt, G., Larus, J., Levi, S.: Language Support for Fast and Reliable Message-Based Communication in Singularity OS. In: EuroSys, pp. 177–190 (2006)
Giese, H., Tichy, M., Burmester, S., Flake, S.: Towards the Compositional Verification of Real-Time UML Designs. In: ESEC/FSE 2003, pp. 38–47 (2003)
Giordano, L., Martelli, A.: Verifying Agent Conformance with Protocols Specified in a Temporal Action Logic. In: Artif. Intelligence and Human-Oriented Computing, pp. 145–156 (2007)
Honda, K., Vasconcelos, V., Kubo, M.: Language Primitives and Type Discipline for Structured Communication-Based Programming. In: Programming Languages and Systems, pp. 33–37 (1998)
Hunt, G., Larus, J.: Singularity: Rethinking the Software Stack. SIGOPS Oper. Syst. Rev. 41(2), 37–49 (2007)
Jhala, R., Majumdar, R.: Software model checking. ACM Comput. Surv. 41(4), 1–54 (2009)
Moffett, Y.: UML-RT Protocol Conformance Verification through Exhaustive Exploration - From Theory to Implementation. MSc thesis, Royal Military College of Canada (2010), http://www.cs.queensu.ca/~dingel/moffettMSc.pdf
Nierstrasz, O.: Regular Types for Active Objects. SIGPLAN Not. 28(10), 1–15 (1993)
Object Management Group. UML 2.0 Superstructure Specification. Technical report, OMG (August 2005)
Saaltink, M.: Using SPIN to analyse ROOM models. Technical Report TR-99-5537-02, ORA Canada (1999)
Saaltink, M., Meisels, I.: Using SPIN to analyse RoseRT models. Technical Report TR-99-5537-03, ORA Canada (October 1999)
Schäfer, T., Knapp, A., Merz, S.: Model Checking UML State Machines and Collaborations. ENTCS 55, 1–13 (2004)
Selic, B.: Using UML for Modeling Complex Real-Time Systems. In: Languages, Compilers, and Tools for Embedded Systems, pp. 250–260 (1998)
Selic, B.: Personal communication (January 2011)
Selic, B., Gullekson, G., Ward, P.: Real-Time Object-Oriented Modeling. Wiley, Chichester (1994)
Shigo, O., Okawa, A., Kato, D.: Constructing Behavioral State Machine using Interface Protocol Specification. In: APSEC 2006, pp. 191–198 (2006)
Stengel, A., Bultan, T.: Analyzing Singularity Channel Contracts. In: 18th Intern. Symp. on Softw. Testing and Analysis (ISSTA 2008). ACM, New York (2009)
Tran, V., Hashimoto, H., Tanabe, Y., Hagiya, M.: Verification of Java Programs under Fairness Assumption. In: 25th Conf. of Japan Society for Softw. Sci. and Techn. (2008)
Visser, W., Havelund, K., Brat, G., Park, S., Lerda, F.: Model Checking Programs. Autom. Softw. Eng. 10(2), 203–232 (2003)
Whittaker, P., Goldsmith, M., Macolini, K., Teitelbaum, T.: Model checking UML-RT protocols. In: Workshop on Formal Design Techniques for Real-Time UML, York, UK (November 2000)
Witkowski, T., Blanc, N., Kroening, D., Weissenbacher, G.: Model Checking Concurrent Linux Device Drivers. In: Intern. Conf. on Autom. Soft. Eng. (ASE 2007). ACM, New York (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Moffett, Y., Beaulieu, A., Dingel, J. (2011). Verifying UML-RT Protocol Conformance Using Model Checking. In: Whittle, J., Clark, T., Kühne, T. (eds) Model Driven Engineering Languages and Systems. MODELS 2011. Lecture Notes in Computer Science, vol 6981. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-24485-8_30
Download citation
DOI: https://doi.org/10.1007/978-3-642-24485-8_30
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-24484-1
Online ISBN: 978-3-642-24485-8
eBook Packages: Computer ScienceComputer Science (R0)