Design by Contract to improve Software Vigilance

Yves Le Traon 1 Benoit Baudry 1 Jean-Marc Jézéquel 1
1 TRISKELL - Reliable and efficient component based software engineering
IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, Inria Rennes – Bretagne Atlantique
Abstract : Design by Contract is a lightweight technique for embedding elements of formal specification (such as invariants, pre- and post-conditions) into an object-oriented design. When contracts are made executable, they can play the role of embedded, on-line oracles. Executable contracts allow components to be responsive to erroneous states, and thus may help in detecting and locating faults. In this paper, we define Vigilance as the degree to which a program is able to detect an erroneous state at runtime. Diagnosability represents the effort needed to locate a fault once it has been detected. In order to estimate the benefit of using Design by Contract, we formalize both notions of Vigilance and Diagnosability as software quality measures. The main steps of measure elaboration are given, from informal definitions of the factors to be measured to the mathematical model of the measures. As is the standard in this domain, the parameters are then fixed through actual measures, based on a mutation analysis in our case. Several measures are presented that reveal and estimate the contribution of contracts to the overall quality of a system in terms of vigilance and diagnosability.
Type de document :
Article dans une revue
IEEE Transactions on Software Engineering, Institute of Electrical and Electronics Engineers, 2006, 32 (8), pp.571--586
Liste complète des métadonnées

Littérature citée [39 références]  Voir  Masquer  Télécharger
Contributeur : Didier Vojtisek <>
Soumis le : vendredi 3 décembre 2010 - 15:06:28
Dernière modification le : vendredi 16 novembre 2018 - 01:23:30
Document(s) archivé(s) le : vendredi 4 mars 2011 - 03:45:42


Fichiers éditeurs autorisés sur une archive ouverte


  • HAL Id : inria-00542784, version 1


Yves Le Traon, Benoit Baudry, Jean-Marc Jézéquel. Design by Contract to improve Software Vigilance. IEEE Transactions on Software Engineering, Institute of Electrical and Electronics Engineers, 2006, 32 (8), pp.571--586. 〈inria-00542784〉



Consultations de la notice


Téléchargements de fichiers