• DocumentCode
    1762334
  • Title

    Verifying Protocol Conformance Using Software Model Checking for the Model-Driven Development of Embedded Systems

  • Author

    Moffett, Y. ; Dingel, J. ; Beaulieu, A.

  • Author_Institution
    CF 18 Avionics Syst. Eng., Dept. of Nat. Defense, Ottawa, ON, Canada
  • Volume
    39
  • Issue
    9
  • fYear
    2013
  • fDate
    Sept. 2013
  • Firstpage
    1307
  • Lastpage
    13256
  • Abstract
    To facilitate modular development, the use of state machines has been proposed to specify the protocol (i.e., the sequence of messages) that each port of a component can engage in. The protocol conformance checking problem consists of determining whether the actual behavior of a component conforms to the protocol specifications on its ports. In this paper, we consider this problem in the context of the model-driven development (MDD) of embedded systems based on UML 2, in which UML 2 state machines are used to specify component behavior. We provide a definition of conformance which slightly extends those found in the literature and reduce the conformance check to a state space exploration. We describe a tool implementing the approach using the Java PathFinder software model checker and the MDD tool IBM Rational RoseRT, discuss its application to three case studies, and show how the tool repeatedly allowed us to find unexpected conformance errors with encouraging performance. We conclude that the approach is promising for supporting the modular development of embedded components in the context of industrial applications of MDD.
  • Keywords
    Unified Modeling Language; embedded systems; formal verification; object-oriented programming; IBM Rational RoseRT MDD tool; Java PathFinder software model checker; MDD industrial application; UML 2 state machines; Unified Modeling Language; embedded system; model-driven development; protocol conformance checking problem; protocol conformance verification; software model checking; state space exploration; Context; Java; Ports (Computers); Protocols; Safety; Software; Unified modeling language; Component-based software engineering; behavioral interface specifications; formal specification and verification; model-driven development; software model checking; software modeling;
  • fLanguage
    English
  • Journal_Title
    Software Engineering, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0098-5589
  • Type

    jour

  • DOI
    10.1109/TSE.2013.14
  • Filename
    6482140