Construction of Global Finite State Machine from Message Sequence Charts for Testing Task Interactions

태스크 상호작용 테스팅을 위한 MSC 명세로부터의 전체 유한 상태 기계 생성

  • 이남희 (한국과학기술원 전산학과) ;
  • 김태효 (한국과학기술원 전산학과) ;
  • 차성덕 (한국과학기술원 전산학과) ;
  • 신석종 ((주)삼성전자 CTO전략실 소프트웨어 센터) ;
  • 홍인표 ((주)삼성전자 CTO전략실 소프트웨어 센터) ;
  • Published : 2001.09.01

Abstract

Message Sequence Charts(MSC) has been used to describe the interactions of numerous concurrent tasks in telecommunication software. After the MSC specification is verified in requirement analysis phase, it can be used not only to synthesize state-based design models, but also to generate test sequences. Until now, the verification is accomplished by generating global state transition graph using the location information only. In this paper, we extend the condition statement of MSC to describe the activation condition of scenarios and the change of state variables, and propose an approach to construct global finite state machine (GFSM) using this information. The GFSM only includes feasible states and transitions of the system. We can generate the test sequences using the existing FSM-based test sequence generation technology.

MSC는 통산 소프트웨어에서의 병행 수행 테스크들 사이의 상호작용을 기술하기 위해서 많이 사용되어져 왔다. 요구사항 단계에서 검증된 MSC 명세는 상태 기반의 설계 모델을 합성하는데 사용될 수 있을 뿐만 아니라, 테스크 시퀀스 생성에 사용될 수도 있다. 지금까지는 MSC에 기술된 각 이벤트의 위치 정보만을 이용하여 전체 상태 그래프를 생성함으로써 검증을 수행하였다. 본 논문에서는 MSC의 조건문을 시나리오 활성화 조건과 상태 변경을 기술할 수 있도록 확장하고, 이를 이용하여 전체 상태 그래프를 생성함으로써 테스크 시퀀스 생성에 이용한다. 생성된 전체 상태 그래프인 GFSM은 시스템의 의미 있는 상태 정보와 가능한 메시지 시퀀스만을 가지게 된다. 생성된 GFSM에 기존인 FSM 기반의 테스팅 기법을 적용하여 테스크 시퀀스를 추출할 수 있다.

Keywords

References

  1. T. Katayama, E. Itoh, 2. Furukawa, and K. Ushijima. 'Test-case Generation for Concurrent Programs with the Testing Criteria Using Interaction Sequences,' In Asia-Pacific Software Engineering Conference (APSEC'99), 1999
  2. M. Kim, J. Shin, S.T. Chanson, and S. Kang. 'An Approach for Testing Asynchronous Communication Systems,' IEICE Transactions on Communications, pages 81-95, 1999
  3. Recommendation Z.120. 'Message Sequence Chart (MSC'96)'. Technical report, ITU-T, 1996
  4. Recommendation Z.120 Annex B. 'Formal Semantics of Message Sequence Charts,' Technical report, ITU-T, 1998
  5. P.B. Ladkin and S. Leue. 'Interpreting Message Flow Graphs,' Formal Aspects of Computing, 7(5):473--509, 1995 https://doi.org/10.1007/BF01211629
  6. B.M. Kim, H.S. Kim, and W.Y. Kim. 'Construction of Global State Transition Graph for Verifying Specification Written in Message Sequence Charts for Telecommunications Software,' IEICE Transactions on Information and Systems, pages 249-261, 2001
  7. P. Graubmann, E. Rudolph, and J. Grabowski. 'Towards a Petri Net based Semantics Definitions for Message Sequence Charts,' In Proceedings of the Sixth SDL Forum, 1993
  8. Prepublished Recommendation Z.120. 'Message Sequence Chart (MSC'2000)}. Technical report,' ITU-T, 1999
  9. R. Alur and M. Yannakakis. 'Model Checking of Message Sequence Charts,' In Proceedings of the Tenth International Conference on Concurrency Theory, pages 114-129, 1999
  10. ATSC T3/S13 Doc. 010. 'Data Broadcast Specification,' Technical report, ATSC, 1999
  11. ATSC Doc. N65. 'Program and System Information Protocol for Terrestrial Broadcast and Cable,' Technical report, ATSC, 1997
  12. C. Bourhfir, R. Dssouli, and E.M. Aboulhamid. 'Automatic Test Generation for EFSM-based Systems,' Technical report, University of Montreal, TR-1043, 1996
  13. T.S. Chow. 'Testing software design modeled by finite state machines,' IEEE Transactions on Software Engineering, 4:178-187, 1978 https://doi.org/10.1109/TSE.1978.231496
  14. O. Henniger and P. Neumann. 'Test case generation based on formal specifications in Estelle,' In Proceedings of the 1st IEEE International Workshop on Factory Communication Systems, 1995 https://doi.org/10.1109/WFCS.1995.482693
  15. Y.G. Kim, H.S. Hong, D.H. Bae, and S.D. Chao 'Test Cases Generation from UML State Diagrams,' lEE Proceedings - Software, 146:187--193, 1999 https://doi.org/10.1049/ip-sen:19990602
  16. I. Kruger, R. Grosu, P. Scholz, and M. Broy, 'From MSCs to Statecharts,' In Distributed and Parallel Embedded Systems, 1999
  17. J. Whittle and J. Schumann. 'Generating Statechart Designs from Scenarios,' In Interanational, Conference on Software Engineering (lCSE), 2000 https://doi.org/10.1109/ICSE.2000.870422
  18. Recommendation Z.100. 'SDL Methodology Guidelines,' Technical report, ITU-T, Geneva, 1992
  19. J. Grabowski. 'SDL and MSC Based Test Case Generation-An Overall View of the SAMSTAG Method,' Technical report, University of Berne, IAM-94-0005, 1994
  20. I.S. Chung, H.S. Kim, H.S. Bae, and B.S. Lee, 'Testing of Concurrent Programs based on Message Sequence Charts,' In International Symposium on Parallel and Distributed Software Engineering (PDSE'99), 1999 https://doi.org/10.1109/PDSE.1999.779740
  21. T. Budkowski and P. Dembinski. 'An Introduction to Estelle: a Specification Language for Distributed Systems,' Computer Networks and ISDN, 14(1), 1987 https://doi.org/10.1016/0169-7552(87)90084-5
  22. David Harel. 'Statecharts: A Visual Formalism for Complex Systems,' Sciences of Computer Programming, 8:231--274, 1987 https://doi.org/10.1016/0167-6423(87)90035-9
  23. R. Alur, G.J. Holzmann, and D. Peled. :'An Analyzer for Message Sequence Charts,' Software Concept and Tools, 17(2):70--77, 1996