PhD Theses in Experimental Software Engineering, Band 70
Hrsg.: Frank Bomarius, Peter Liggesmeyer, Dieter Rombach; Fraunhofer IESE, Kaiserslautern
2021, 196 S., num. illus. and tab., Softcover
Scientists and practitioners have developed approaches for testing sequential software. However, there is a gap in the current state of the art regarding the understanding and formulation of a general approach for testing concurrent software, especially in domains that limit concurrency, such as the domain of embedded software systems. Consequently, testing approaches fail to separate faulty and correct behavior of such software, leading to many false warnings. Besides, as there exist no appropriate code coverage criteria for concurrent software, existing approaches can miss some concurrency faults. This dissertation presents a generalized model of an approach for finding concurrency bugs, based on a systematic literature review. By comparing the generalized model and architectural drivers in embedded systems, this work identifies key reasons why the existing approaches report too many false warnings when testing embedded concurrent software. For these challenges, this work offers solutions in terms of enhancements to: i) the existing analysis algorithms, ii) the execution tracing techniques, and iii) coverage of concurrent software interleavings.