Basis Path Analysis for Testing Complex System of Systems

Abstract In Systems of Systems (SoS), a major challenge is to determine how to design a test suite that will check that the complete SoS mission and objectives are achieved. Combinatorial strategies that test for every interface in the SoS are not always optimal due to their exponential nature, and given the mission of the SoS, not all the constituent systems might have to actually interact with each other. To overcome these problems, this paper proposes the use of Basis Path Testing, which is a white-box software testing technique that makes use of Graph Theory to analyse the complexity of a structured system by creating a control flow graph from each of the program's functions to design an optimal test suite. This test suite is a set of paths that traverse through the functions, which are assumed linearly independent and that can be used to create a test strategy that will exercise all of the program's functions at least once to verify and validate their functionality. By applying Basis Path Testing analysis to the constituent systems in a SoS, the tester can develop an optimal test suite that will guarantee that all possible independent paths, all possible logical decisions, and all their interfaces are executed at least once. This paper presents a SoS sample architecture and show how to generate a test suite using Basis Path Testing analysis.