PROMON: a profile monitor of software applications

Software techniques can be efficiently used to increase the dependability of safety-critical applications. Many approaches are based on information redundancy to prevent data and code corruption during the software execution. This paper presents PROMON, a C++ library that exploits a new methodology based on the concept of "Programming by Contract" to detect system malfunctions. Resorting to assertions, pre- and post-conditions, and marginal programmer interventions, PROMON-based applications can reach high level of dependability

[1]  Jeffrey M. Voas,et al.  Putting assertions in their place , 1994, Proceedings of 1994 IEEE International Symposium on Software Reliability Engineering.

[2]  Volker Strumpen,et al.  Portable and fault-tolerant software systems , 1998, IEEE Micro.

[3]  Johan Karlsson,et al.  Two software techniques for on-line error detection , 1992, [1992] Digest of Papers. FTCS-22: The Twenty-Second International Symposium on Fault-Tolerant Computing.

[4]  R. Hinterding Representation, constraint satisfaction and the knapsack problem , 1999, Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406).

[5]  Federico Faccio,et al.  First Evaluation of the Single Event Upset (SEU) Risk for Electronics in the CMS Experiment , 1998 .

[6]  David S. Rosenblum A Practical Approach to Programming With Assertions , 1995, IEEE Trans. Software Eng..

[7]  Alfredo Benso,et al.  A C/C++ source-to-source compiler for dependable applications , 2000, Proceeding International Conference on Dependable Systems and Networks. DSN 2000.

[8]  Walter J. Price A benchmark tutorial , 1989, IEEE Micro.

[9]  Edward J. McCluskey,et al.  Software-implemented EDAC protection against SEUs , 2000, IEEE Trans. Reliab..

[10]  Henrique Madeira,et al.  Experimental evaluation of the fail-silent behaviour in programs with consistency checks , 1996, Proceedings of Annual Symposium on Fault Tolerant Computing.

[11]  James M. Bieman,et al.  Improving software testability with assertion insertion , 1994, Proceedings., International Test Conference.

[12]  Alfredo Benso,et al.  Data criticality estimation in software applications , 2003, International Test Conference, 2003. Proceedings. ITC 2003..

[13]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[14]  David J. Lu Watchdog Processors and Structural Integrity Checking , 1982, IEEE Transactions on Computers.

[15]  Barry W. Johnson,et al.  An algorithm based fault tolerance technique for safety-critical applications , 1997, Annual Reliability and Maintainability Symposium.