40 likes | 165 Views
ECE 453 – CS 447 – SE 465 Software Testing & Quality Assurance Case Studies Instructor Paulo Alencar. Overview. Safety Critical Application Embedded Real-Time Control Software used in the Transportation Industry
E N D
ECE 453 – CS 447 – SE 465 Software Testing & Quality AssuranceCase StudiesInstructorPaulo Alencar
Overview • Safety Critical Application • Embedded Real-Time Control Software used in the Transportation Industry • Comparison of normal testing in a company (functional testing) with testing based on the criterion of correlated active clause coverage (CACC, which is a variant of Modified Condition-Decision Coverage) • Guan, J., Offutt, J., Ammann, P., ISESE’06, I.S. Experimental Software Engineering, pp. 272-277, ACM Press, 2006
Main Results • Real-time Control Software – Written in C • (Name not provided due to company confidentiality requirements) • Thousands of lines of source code • 20 files, 90 functions • The software contains 70 predicates, 50 predicates with • one clause, 17 predicates with two, 3 predicates with three • Manual functional testing (MFT) used test cases derived from the • requirements specification • CACC was applied to the predicates in the program source
Main Results Comparison between faults Found by MFT and CACC: • CACC led to improved safety: • Timers are crucial factors; • some timing errors were • found – hard to find by MFT • Complicated logic can be • more effectively tested when • tests are based on • implementation; details are • omitted from spec. • Test time: CACC – less time • e.g., to check if it goes into • sleep mode after running in • a mode for 15 hours • MFT=15 hours; CACC=5 min.