TY - GEN
T1 - From nondeterministic UML protocol statemachines to class contracts
AU - Porres, Ivan
AU - Rauf, Irum
PY - 2010
Y1 - 2010
N2 - A UML protocol state machine describes a behavioral interface for a class as a number of states and transitions between states triggered by method calls. In this paper, we present an approach to generate behavioral class interfaces in the form of class contracts from UML protocol state machines. The generated contracts can be used for documentation, test case generation, test case oracle, and as run-time assertions and thus help to test and validate the implementation of a class against its interface. We formalize protocol state machines with its structure and semantics for generating class contracts. The state invariants of the source and target states are considered along with the pre- and post-conditions of the transitions. Different types of transitions like simple, join, fork, high-level, and self transitions are supported, as well as non-deterministic behavior. The approach is supported by a tool to generate automatically the contracts from UML models.
AB - A UML protocol state machine describes a behavioral interface for a class as a number of states and transitions between states triggered by method calls. In this paper, we present an approach to generate behavioral class interfaces in the form of class contracts from UML protocol state machines. The generated contracts can be used for documentation, test case generation, test case oracle, and as run-time assertions and thus help to test and validate the implementation of a class against its interface. We formalize protocol state machines with its structure and semantics for generating class contracts. The state invariants of the source and target states are considered along with the pre- and post-conditions of the transitions. Different types of transitions like simple, join, fork, high-level, and self transitions are supported, as well as non-deterministic behavior. The approach is supported by a tool to generate automatically the contracts from UML models.
UR - https://www.scopus.com/pages/publications/77954552742
U2 - 10.1109/ICST.2010.62
DO - 10.1109/ICST.2010.62
M3 - Conference proceeding
AN - SCOPUS:77954552742
SN - 9780769539904
T3 - ICST 2010 - 3rd International Conference on Software Testing, Verification and Validation
SP - 107
EP - 116
BT - ICST 2010 - 3rd International Conference on Software Testing, Verification and Validation
T2 - 3rd International Conference on Software Testing, Verification and Validation, ICST 2010
Y2 - 7 April 2010 through 9 April 2010
ER -