Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2245276.2231981acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Symbolic execution of UML-RT State Machines

Published: 26 March 2012 Publication History
  • Get Citation Alerts
  • Abstract

    UML-RT is one of the languages used in the industrial practice of the model-driven development (MDD). The language is a proper profile of UML 2 and it uses UML-RT State Machines to model behavior of systems. This paper presents a technique for a symbolic execution of these machines, which introduces modular treatment of action code. This feature clearly separates the symbolic execution of the state machine itself from the symbolic execution of its action code and thus facilitates support of different action languages. The separation is achieved via a formalization of UML-RT State Machines in which functions are used to represent the result of the symbolic execution of the action code. Key parts of the technique are formalized and its implementation is presented. An example is used to illustrate different analyses including reachability, invariant checking, output analysis and test case generation.

    References

    [1]
    Choco Solver http://www.emn.fr/x-info/choco-solver/doku.php?id=about.
    [2]
    IBM Rational Rhapsody Architect, Version 7.5.3. http://www-01.ibm.com/software/rational/products/rhapsody/swarchitect/.
    [3]
    IBM Rational Software Architect, RealTime Edition, Version 7.5.5. http://publib.boulder.ibm.com/infocenter/rsarthlp/v7r5m1/.
    [4]
    Scade Suite (Esterel Technologies) http://www.esterel-technologies.com/products/scade-suite/.
    [5]
    Unified Modeling Language (UML 2.0) Superstructure. http://www.uml.org/.
    [6]
    S. Anand, P. Godefroid, and N. Tillmann. Demand-driven compositional symbolic execution. In TACAS 2008 (LNCS 4963).
    [7]
    M. Balser, S. Baumler, A. Knapp, W. Reif, and A. Thums. Interactive verification of UML state machines. In ICFEM 2004 (LNCS 3308).
    [8]
    E. Brinksma and J. Tretmans. Testing transition systems: An annotated bibliography. In Summer School on Modeling and Verification of Parallel Processes (MOVEP'00).
    [9]
    S. Burmester, H. Giese, M. Hirsch, and D. Schilling. Incremental design and formal verification with UML/RT in the FUJABA real-time tool suite. In SVERTS2004 (part of UML2004).
    [10]
    P. Coward. Symbolic execution systems-a review. Software Eng. J., 3(6): 229--239, 1988.
    [11]
    L. Frantzen, J. Tretmans, and T. Willemse. Test generation based on symbolic specifications. In FATES 2004 (LNCS 3395).
    [12]
    H. Giese, M. Tichy, S. Burmester, W. Schäfer, and S. Flake. Towards the Compositional Verification of Real-Time UML Designs. In ESEC/FSE 2003.
    [13]
    S. Gnesi, D. Latella, and M. Massink. Formal test-case generation for UML statecharts. In ICECCS 2004.
    [14]
    P. Godefroid. Compositional dynamic test generation. In POPL '07.
    [15]
    F. Ipate and M. Holcombe. Generating test sets from non-deterministic stream X-machines. Formal Aspects of Computing, 12(6): 443--58, 2000.
    [16]
    T. Jeron. Symbolic Model-based Test Selection. ENTCS, 240: 167--184, 2009.
    [17]
    J. King. Symbolic execution and program testing. Communications of the ACM, 19(7): 385--94, 1976.
    [18]
    N. H. Lee and S. D. Cha. Generating test sequence using symbolic execution for event-driven real-time systems. Microproc. and Microsys., 27(10): 523--31, 2003.
    [19]
    S. Leue, A. Stefanescu, and W. Wei. An AsmL Semantics for Dynamic Structures and Run Time Schedulability in UML-RT. In TOOLS '2008.
    [20]
    P. Mehlitz. Trust your model - verifying aerospace system models with Java pathfinder. In IEEE Aerospace Conference, 2008.
    [21]
    S. Merz and C. Rauh. Model checking timed UML state machines and collaborations. In FTRTFT2002, pages 395--414.
    [22]
    OMG. Action Language for Foundational UML (Alf), 2010. ptc/2010-10-05.
    [23]
    C. Pasareanu and W. Visser. A survey of new trends in symbolic execution for software testing and analysis. J. on Software Tools for Technology Transfer (STTT), 11: 339--353, 2009.
    [24]
    N. Rapin. Symbolic execution based model checking of open systems with unbounded variables. In Tests and Proofs (LNCS 5668), 2009.
    [25]
    M. Saaltink and I. Meisels. Using SPIN to analyse RoseRT models. Technical report, ORA Canada, 1999.
    [26]
    T. Schäfer, A. Knapp, and S. Merz. Model checking UML state machines and collaborations. ENTCS, 55(3): pp. 1--13, 2001.
    [27]
    B. Selic. Using UML for modeling complex real time systems. In ACM SIGPLAN Workshop LCTES 1998 (LNCS 1474), 1998.
    [28]
    V. Sperschneider and G. Antoniou. Logic: a foundation for computer science. Addison-Wesley, 1991.
    [29]
    A. Thums, G. Schellhorn, F. Ortmeier, and W. Reif. Interactive Verification of Statecharts. In INT 2004 (LNCS 3147).
    [30]
    A. Tomb, G. Brat, and W. Visser. Variably interprocedural program analysis for runtime error detection. In ISSTA '07, 2007.
    [31]
    T. Weigert, F. Weil, and K. Marth. Experiences in deploying model-driven engineering. In SDL 2007.
    [32]
    K. Zurowska and J. Dingel. SAUML: a Tool for Symbolic Analysis of UML-RT Models. In ASE 2011 - Tool Demonstrations.

    Cited By

    View all
    • (2021)Model Translation from Papyrus-RT into the nuXmv Model CheckerSoftware Engineering and Formal Methods. SEFM 2020 Collocated Workshops10.1007/978-3-030-67220-1_1(3-20)Online publication date: 17-Jan-2021
    • (2019)Concolic testing for models of state-based systemsProceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3338906.3338908(4-15)Online publication date: 12-Aug-2019
    • (2019)mCUTEProceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2019.00132(1182-1185)Online publication date: 10-Nov-2019
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SAC '12: Proceedings of the 27th Annual ACM Symposium on Applied Computing
    March 2012
    2179 pages
    ISBN:9781450308571
    DOI:10.1145/2245276
    • Conference Chairs:
    • Sascha Ossowski,
    • Paola Lecca
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 26 March 2012

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. UML-RT
    2. model analysis
    3. symbolic execution
    4. test case generation

    Qualifiers

    • Research-article

    Conference

    SAC 2012
    Sponsor:
    SAC 2012: ACM Symposium on Applied Computing
    March 26 - 30, 2012
    Trento, Italy

    Acceptance Rates

    SAC '12 Paper Acceptance Rate 270 of 1,056 submissions, 26%;
    Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 27 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2021)Model Translation from Papyrus-RT into the nuXmv Model CheckerSoftware Engineering and Formal Methods. SEFM 2020 Collocated Workshops10.1007/978-3-030-67220-1_1(3-20)Online publication date: 17-Jan-2021
    • (2019)Concolic testing for models of state-based systemsProceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3338906.3338908(4-15)Online publication date: 12-Aug-2019
    • (2019)mCUTEProceedings of the 34th IEEE/ACM International Conference on Automated Software Engineering10.1109/ASE.2019.00132(1182-1185)Online publication date: 10-Nov-2019
    • (2018)Slicing UML-based Models of Real-time Embedded SystemsProceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3239372.3239407(346-356)Online publication date: 14-Oct-2018
    • (2018)Property-Aware Unit Testing of UML-RT Models in the Context of MDEModelling Foundations and Applications10.1007/978-3-319-92997-2_10(147-163)Online publication date: 29-May-2018
    • (2017)Symbolic execution for realizability-checking of scenario-based specificationsProceedings of the ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems10.1109/MODELS.2017.35(312-322)Online publication date: 17-Sep-2017
    • (2015)Incremental symbolic execution of evolving state machinesProceedings of the 18th International Conference on Model Driven Engineering Languages and Systems10.5555/3351736.3351743(14-23)Online publication date: 30-Sep-2015
    • (2015)Incremental symbolic execution of evolving state machines2015 ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MODELS)10.1109/MODELS.2015.7338231(14-23)Online publication date: Sep-2015
    • (2015)Co-Evolution of Model-Based Tests for Industrial Automotive Software2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST)10.1109/ICST.2015.7102613(1-2)Online publication date: Apr-2015
    • (2015)Using Fuzzy Logic and Symbolic Execution to Prioritize UML-RT Test Cases2015 IEEE 8th International Conference on Software Testing, Verification and Validation (ICST)10.1109/ICST.2015.7102610(1-10)Online publication date: Apr-2015
    • Show More Cited By

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media