Assume-guarantee testing

  • Authors:
  • Colin Blundell;Dimitra Giannakopoulou;Corina S. Pǎsǎreanu

  • Affiliations:
  • University of Pennsylvania, Philadelphia, PA;RIACS/NASA Ames, NASA Ames Research Center, Moffett Field, CA;QSS/NASA Ames, NASA Ames Research Center, Moffett Field, CA

  • Venue:
  • SAVCBS '05 Proceedings of the 2005 conference on Specification and verification of component-based systems
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Verification techniques for component-based systems should ideally be able to predict properties of the assembled system through analysis of individual components before assembly. This work introduces such a modular technique in the context of testing. Assume-guarantee testing relies on the (automated) decomposition of key system-level requirements into local component requirements at design time. Developers can verify the local requirements by checking components in isolation; failed checks may indicate violations of system requirements, while valid traces from different components compose via the assume-guarantee proof rule to potentially provide system coverage. These local requirements also form the foundation of a technique for efficient predictive testing of assembled systems: given a correct system run, this technique can predict violations by alternative system runs without constructing those runs. We discuss the application of our approach to testing a multi-threaded NASA application, where we treat threads as components.