Please use this identifier to cite or link to this item:
Title: Slicing Technique for Test Path Generation in Concurrent Programs
Authors: Arora, Vinay
Supervisor: Bhatia, Rajesh
Singh, Maninder
Issue Date: 31-Oct-2017
Abstract: A system is concurrent if it includes a number of execution flows that can progress simultaneously, and interact with each other. In this era of technology the concurrent systems are common in various application domains, viz. segregation of input-output processing from the back-end computation using multithreaded paradigm, client-server communication model having client-side and server-side computations, coordination among a large number of computing nodes in peer-to-peer services, etc. Synchronized implementation of the multiple execution flows in the concurrent software systems leads to new problems and introduces new design and verification challenges. This research work is a modest attempt to investigate in the domain of testing concurrent programs by classifying it into eight categories, viz. (i) reachability testing, (ii) structural testing, (iii) model-based testing, (iv) mutation-based testing, (v) slicing-based testing, (vi) formal method-based testing, (vii) random testing, and (viii) search-based testing. The following data/findings have been synthesized from the various research articles to form the basis of this work: (1) the approaches for testing concurrent programs; (2) the parameters for classifying various approaches into different categories; (3) the algorithms/techniques proposed or available under a particular approach for testing concurrent program; (4) the graphical representations used under a particular technique; (5) the test tools, prototypes and APIs proposed or available in this area; and (6) the subject systems or user programs used for testing concurrent programs. The present study further investigates the problems of generating test scenarios from UML activity diagram using two bio-inspired algorithms, viz. amoeboid algorithm, and orientation-based ant colony algorithm. The first approach, based on the application of amoeboid organism algorithm, motivates to find out scenarios for concurrent section in an activity diagram. A similarity lies between the tubular veins like structure of Physarum Polycephalum and the test scenarios that might be generated by incremental traversal over the edges present in the similar tree type structure representing the permutations under fork-join node. Flux movements in Physarum Polycephalum generate articulated paths from the source node (root node) to sink node (leaf node). The second approach, based on the application of ant colony algorithm, helps to generate the scenarios from a concurrent section of an activity diagram. A similarity exists between the pheromone-based path traversal by the ants from their nest to food source. The test paths that might be produced by traversing the edges present in the tree structure depicting the permutations under concurrency construct. In simple Ant Colony Optimization (ACO) approach, next hop node is decided by pheromone intensity along the edge between the current node and tentative next node. The issue arises when initial pheromone intensity along every edge between the current node and the nodes belonging to the set of probable next nodes is the same. Therefore, the ant cannot select the initial edge of the feasible path with bigger probability. An orientation factor has been introduced while computing the probability of selecting the next hop. Orientation-based ACO considers pheromone intensity as well as the angular factor between the current node and the next node. Simulations have been performed using eight subject systems taken from the LINDHOLMEN data-set, four models, two each for both the proposed approaches, taken from real life student projects and five synthetic models. Null hypothesis significance testing (NHST) has been used as an inferential statistical method for deciding whether a well-specified hypothesis, identified as the null hypothesis, is to be regarded as true for a population from which a given set of data has been obtained by random sampling. The results obtained have been validated through statistical analysis which demonstrates that the proposed approaches are better than the existing ACO and Genetic Algorithm (GA) by a number of feasible test scenarios generated.
Appears in Collections:Doctoral Theses@CSED

Files in This Item:
File Description SizeFormat 
4958.pdf7.3 MBAdobe PDFView/Open

Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.