|Authors||S. Di Alesio, S. Nejati, L. Briand and A. Gotlieb|
|Title||Combining Genetic Algorithms and Constraint Programming to Support Stress Testing of Task Deadlines|
|Afilliation||Software Engineering, The Certus Centre (SFI), Software Engineering|
|Publication Type||Journal Article|
|Year of Publication||2015|
|Journal||ACM Transactions on Software Engineering and Methodology (TOSEM)|
Tasks in Real Time Embedded Systems (RTES) are often subject to hard deadlines, that constrain how quickly the system must react to external inputs. These inputs and their timing vary in a large domain depending on the environment state, and can never be fully predicted prior to system execution. Therefore, approaches for stress testing must be developed to uncover possible deadline misses of tasks for different input arrival times. In this paper, we describe stress test case generation as a search problem over the space of task arrival times. Speciﬁcally, we search for worst case scenarios maximizing deadline misses where each scenario characterizes a test case. In order to scale our search to large industrial-size problems, we combine two state-of-the-art search strategies, namely Genetic Algorithms (GA) and Constraint Programming (CP). Our experimental results show that, in comparison with GA and CP in isolation, GA+CP achieves nearly the same effectiveness as CP and the same efﬁciency and solution diversity as GA, thus combining the advantages of the two strategies. In light of these results, we conclude that a combined GA+CP approach to stress testing is more likely to scale to large and complex systems.