Construction of global finite state machine for testing task interactions written in message sequence charts

Nam Hee Lee, Tai Hyo Kim, Sungdeok Cha

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Citations (Scopus)

Abstract

Integration testing of embedded software is difficult because such software tends to be large and complex; it is often structured as a set of tasks whose interaction patterns can be arbitrary and nondeterministic; it is subject to frequent changes while being tested; and testing period must be minimized since the product's life-time is short. In order to conduct integration testing in a cost-effective manner, it is essential that requirements are captured in precise notation and that test cases are automatically generated and executed whenever possible. In this paper, we demonstrate how to generate test cases from a set of Message Sequence Charts (MSCs) by constructing a semantically equivalent global finite state machine (GFSM). Test cases are expressed as a sequence of messages to be exchanged among various system entities. When transforming complex and hierarchical MSCs to a GFSM, state explosion problem is often encountered. When constructing a GFSM, we achieved significant reduction in the number of states and transitions by generating only the feasible sequences. Such reduction was possible because embedded software we used as the case study, digital TV application software, had known and well-defined initial state. We developed a graphical toolset to edit MSCs and automatically generate test cases. Users describe the required functionalities in scenarios, and test cases are automatically generated from the GFSM according to the state and transition coverage criteria. We applied the proposed approach to specify and test a substantial portion of embedded software running on a digital TV and were able to detect an error, previously unknown to the developers, that occurred due to a subtle race condition among tasks.

Original languageEnglish
Title of host publicationACM International Conference Proceeding Series
Pages369-376
Number of pages8
Volume27
DOIs
Publication statusPublished - 2002 Dec 1
Externally publishedYes
Event14th International Conference on Software Engineering and Knowledge Engineering, SEKE '02 - Ischia, Italy
Duration: 2002 Jul 152002 Jul 19

Other

Other14th International Conference on Software Engineering and Knowledge Engineering, SEKE '02
CountryItaly
CityIschia
Period02/7/1502/7/19

Fingerprint

Finite automata
Embedded software
Integration testing
Testing
Hazards and race conditions
Application programs
Explosions
Costs

Keywords

  • integration testing
  • message sequence charts
  • task interaction

ASJC Scopus subject areas

  • Computer Networks and Communications
  • Computer Vision and Pattern Recognition
  • Human-Computer Interaction
  • Software

Cite this

Lee, N. H., Kim, T. H., & Cha, S. (2002). Construction of global finite state machine for testing task interactions written in message sequence charts. In ACM International Conference Proceeding Series (Vol. 27, pp. 369-376) https://doi.org/10.1145/568760.568825

Construction of global finite state machine for testing task interactions written in message sequence charts. / Lee, Nam Hee; Kim, Tai Hyo; Cha, Sungdeok.

ACM International Conference Proceeding Series. Vol. 27 2002. p. 369-376.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Lee, NH, Kim, TH & Cha, S 2002, Construction of global finite state machine for testing task interactions written in message sequence charts. in ACM International Conference Proceeding Series. vol. 27, pp. 369-376, 14th International Conference on Software Engineering and Knowledge Engineering, SEKE '02, Ischia, Italy, 02/7/15. https://doi.org/10.1145/568760.568825
Lee, Nam Hee ; Kim, Tai Hyo ; Cha, Sungdeok. / Construction of global finite state machine for testing task interactions written in message sequence charts. ACM International Conference Proceeding Series. Vol. 27 2002. pp. 369-376
@inproceedings{36d319c992d54abfb81c8b8ab4ea4f26,
title = "Construction of global finite state machine for testing task interactions written in message sequence charts",
abstract = "Integration testing of embedded software is difficult because such software tends to be large and complex; it is often structured as a set of tasks whose interaction patterns can be arbitrary and nondeterministic; it is subject to frequent changes while being tested; and testing period must be minimized since the product's life-time is short. In order to conduct integration testing in a cost-effective manner, it is essential that requirements are captured in precise notation and that test cases are automatically generated and executed whenever possible. In this paper, we demonstrate how to generate test cases from a set of Message Sequence Charts (MSCs) by constructing a semantically equivalent global finite state machine (GFSM). Test cases are expressed as a sequence of messages to be exchanged among various system entities. When transforming complex and hierarchical MSCs to a GFSM, state explosion problem is often encountered. When constructing a GFSM, we achieved significant reduction in the number of states and transitions by generating only the feasible sequences. Such reduction was possible because embedded software we used as the case study, digital TV application software, had known and well-defined initial state. We developed a graphical toolset to edit MSCs and automatically generate test cases. Users describe the required functionalities in scenarios, and test cases are automatically generated from the GFSM according to the state and transition coverage criteria. We applied the proposed approach to specify and test a substantial portion of embedded software running on a digital TV and were able to detect an error, previously unknown to the developers, that occurred due to a subtle race condition among tasks.",
keywords = "integration testing, message sequence charts, task interaction",
author = "Lee, {Nam Hee} and Kim, {Tai Hyo} and Sungdeok Cha",
year = "2002",
month = "12",
day = "1",
doi = "10.1145/568760.568825",
language = "English",
isbn = "1581135564",
volume = "27",
pages = "369--376",
booktitle = "ACM International Conference Proceeding Series",

}

TY - GEN

T1 - Construction of global finite state machine for testing task interactions written in message sequence charts

AU - Lee, Nam Hee

AU - Kim, Tai Hyo

AU - Cha, Sungdeok

PY - 2002/12/1

Y1 - 2002/12/1

N2 - Integration testing of embedded software is difficult because such software tends to be large and complex; it is often structured as a set of tasks whose interaction patterns can be arbitrary and nondeterministic; it is subject to frequent changes while being tested; and testing period must be minimized since the product's life-time is short. In order to conduct integration testing in a cost-effective manner, it is essential that requirements are captured in precise notation and that test cases are automatically generated and executed whenever possible. In this paper, we demonstrate how to generate test cases from a set of Message Sequence Charts (MSCs) by constructing a semantically equivalent global finite state machine (GFSM). Test cases are expressed as a sequence of messages to be exchanged among various system entities. When transforming complex and hierarchical MSCs to a GFSM, state explosion problem is often encountered. When constructing a GFSM, we achieved significant reduction in the number of states and transitions by generating only the feasible sequences. Such reduction was possible because embedded software we used as the case study, digital TV application software, had known and well-defined initial state. We developed a graphical toolset to edit MSCs and automatically generate test cases. Users describe the required functionalities in scenarios, and test cases are automatically generated from the GFSM according to the state and transition coverage criteria. We applied the proposed approach to specify and test a substantial portion of embedded software running on a digital TV and were able to detect an error, previously unknown to the developers, that occurred due to a subtle race condition among tasks.

AB - Integration testing of embedded software is difficult because such software tends to be large and complex; it is often structured as a set of tasks whose interaction patterns can be arbitrary and nondeterministic; it is subject to frequent changes while being tested; and testing period must be minimized since the product's life-time is short. In order to conduct integration testing in a cost-effective manner, it is essential that requirements are captured in precise notation and that test cases are automatically generated and executed whenever possible. In this paper, we demonstrate how to generate test cases from a set of Message Sequence Charts (MSCs) by constructing a semantically equivalent global finite state machine (GFSM). Test cases are expressed as a sequence of messages to be exchanged among various system entities. When transforming complex and hierarchical MSCs to a GFSM, state explosion problem is often encountered. When constructing a GFSM, we achieved significant reduction in the number of states and transitions by generating only the feasible sequences. Such reduction was possible because embedded software we used as the case study, digital TV application software, had known and well-defined initial state. We developed a graphical toolset to edit MSCs and automatically generate test cases. Users describe the required functionalities in scenarios, and test cases are automatically generated from the GFSM according to the state and transition coverage criteria. We applied the proposed approach to specify and test a substantial portion of embedded software running on a digital TV and were able to detect an error, previously unknown to the developers, that occurred due to a subtle race condition among tasks.

KW - integration testing

KW - message sequence charts

KW - task interaction

UR - http://www.scopus.com/inward/record.url?scp=77953748304&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=77953748304&partnerID=8YFLogxK

U2 - 10.1145/568760.568825

DO - 10.1145/568760.568825

M3 - Conference contribution

SN - 1581135564

SN - 9781581135565

VL - 27

SP - 369

EP - 376

BT - ACM International Conference Proceeding Series

ER -