A Comparison of Static Analysis and Evolutionary Testing for the Verification of Timing Constraints

  • Authors:
  • Joachim Wegener;Frank Mueller

  • Affiliations:
  • DaimlerChrysler AG, Research and Technology, Alt-Moabit 96a, 10559 Berlin, Germany joachim.wegener@daimlerchrysler.com;Department of Computer Science, North Carolina State University, Raleigh, NC 27695-8206 mueller@cs.ncsu.edu

  • Venue:
  • Real-Time Systems
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper contrasts two methods to verify timing constraints of real-time applications. The method of static analysis predicts the worst-case and best-case execution times of a task’s code by analyzing execution paths and simulating processor characteristics without ever executing the program or requiring the program’s input. Evolutionary testing is an iterative testing procedure, which approximates the extreme execution times within several generations. By executing the test object dynamically and measuring the execution times the inputs are guided yielding gradually tighter predictions of the extreme execution times. We examined both approaches on a number of real world examples. The results show that static analysis and evolutionary testing are complementary methods, which together provide upper and lower bounds for both worst-case and best-case execution times.