Back to Search Start Over

Testing for concurrency in UML diagrams

Authors :
Rajeev Kumar
Mahesh Shirole
Source :
ACM SIGSOFT Software Engineering Notes. 37:1-8
Publication Year :
2012
Publisher :
Association for Computing Machinery (ACM), 2012.

Abstract

Concurrent programming is increasingly being used in many applications with the advent of multi-cores. The necessary support for execution of multi-threading is getting richer. Notwithstanding, a concurrent program may behave nondeterministically, it may result in different outputs with the same input in different runs. The aim of this study is to generate test sequences for concurrency from unified modelling language (UML) behavioral models such as sequence and activity diagrams. Generating exhaustive test cases for all concurrent interleaving sequences is exponential in size. Therefore, it is necessary to find adequate test cases in presence of concurrency to uncover errors due to, e.g., data race, synchronization and deadlocks. In order to generate adequate test cases a novel search algorithm, which we call concurrent queue search (CQS) is proposed. The CQS handles random nature of concurrent tasks. To generate test scenarios, a sequence diagram is converted into an activity diagram. An activity diagram encapsulates sequential, conditional, iterative and concurrent ows of the control. By the experimental results, it was observed that test sequences generated by CQS algorithm are superior as compared to DFS and BFS search algorithms.

Details

ISSN :
01635948
Volume :
37
Database :
OpenAIRE
Journal :
ACM SIGSOFT Software Engineering Notes
Accession number :
edsair.doi...........3383532b495b97a0f40b1d06606d66aa