Enhancing Software Reliability against Soft-Error using Minimum Redundancy on Critical Data

Full Text (PDF, 598KB), PP.21-30

Views: 0 Downloads: 0


Saeid A. Keshtgar 1,* Bahman B. Arasteh 1

1. Department of Computer Engineering, Tabriz Branch, Islamic Azad University, Tabriz, Iran

* Corresponding author.

DOI: https://doi.org/10.5815/ijcnis.2017.05.03

Received: 22 Aug. 2016 / Revised: 25 Jan. 2017 / Accepted: 11 Mar. 2017 / Published: 8 May 2017

Index Terms

Reliability, redundancy, failure, fault, error, performance overhead


Nowadays, software systems play remarkable roles in human life and software has become an indispensable aspect of modern society. Hence, regarding the high significance of software, establishing and maintaining software reliability is considered to be an essential issue so that error occurrence, failure and disaster can be prevented. Thus, the magnitude of errors in a program should be detected and identified and software reliability should be measured and investigated so as to prevent the spread of error. In line with this purpose, different methods have been proposed in the literature on software reliability; however, the majority of the proposed methods are inefficient and undesirable due to their high overhead, vulnerability, excessive redundancy and high data replication. The method introduced in this paper identifies vulnerable data of the program and uses class diagram and the proposed formula. Also, by applying minimum redundancy and duplication on 70% of the critical data of the program, the proposed method protects the program data. The evaluation of the operation of the propose method on program indicated that it can improve reliability, reduce efficiency overhead, redundancy and complexity.

Cite This Paper

Saeid A. Keshtgar, Bahman B. Arasteh, "Enhancing Software Reliability against Soft-Error using Minimum Redundancy on Critical Data", International Journal of Computer Network and Information Security(IJCNIS), Vol.9, No.5, pp. 21-30, 2017. DOI:10.5815/ijcnis.2017.05.03


[1]D. J. Lu, “Watchdog Processor and Structural Integrity Checking” , IEEE Transaction on Computers, vol. C-31, No. 7, pp. 681-685, July 1982..
[2]J. H. Patel et al., “Concurrent Error Detection in ALUs by Recomputing with Shifted Operands”, IEEE Transaction on Computers, vol. C-31, No. 7, pp. 589-595, July 1982.
[3]K. H. Huang, J. A. Abraham, Algorithm-Based Fault Tolerance for Matrix Operations, IEEE Trans. Computers, vol. 33, pp. 518-528, Dec 1984.
[4]David L.Parnas, A. John van Schouwen, and Shu Po Kwan, Evaluation of safety-Critical Software Communications of the ACM, Vol. 33, No. 6, pp. 636 – 648 , June 1990.
[5]K. Wilken, J.P. Shen, “Continuous Signature Monitoring: Low-Cost Concurrent-Detection of Processor Control errors”, IEEE Transaction on Computer Aided Design, vol. 9, NO. 6, pp. 629-641, June 1990.
[6]H. Madeira, J. G. Silva, “On-line Signature Leraning and Checking”, Dependable Computing for Critical Applications 2, Springer-Verlag, pp. 395-420, 1992.
[7]T. Goradia, Dynamic Impact Analysis: A Cost-Effective Technique to Enforce Error-Propagation, ISSTA 1993.
[8]Jean-Claude Laprie, Dependability of Computer Systems: Concepts, Limits, Improvements, pp 3,4, 1995.
[9]Y. M. Hsu et al., “Time redundancy for error detecting neural networks”, Proc. IEEE Int. Conf. on Wafer Scale Integration, pp. 111-121, Jan. 1995.
[10]Barry W. Johnson, An Introduction to the Design and Analysis of Fault-TolerantSystems, in Fault-Tolerant Computer System Design, Dhiraj K. Pradhan,Prentice Hall, Inc., pp. 1 – 87, 1996.
[11]A. M. Amendola, A. Benso, F. Corno, L. Impagliazzo, P. Marmo, P. Prinetto, M. Rebaudengo, M. SonzaReorda, Fault Behavior Observation of a Microprocessor System through a VHDL Simulation-Based Faukt Injection Experiment, EURO-VHDL’96, Geneva(CH), pp. 536-541, September 1996.
[12]J. G. Silva, J. Carreira, H. Madeira, D. Costa, F. Mreira, Experimental Assessment of Parallel System, Proc. FTCS-26, Sendaj(J), pp. 415-424, 1996.
[13]M. ZenhaRela, H. Madeira, J. G. Silva, Experimental Evalution of the Fail-Silent Behavior in Programs with Consistency Checks, Proc. FTCS-26, Sendaj(J), pp. 394-403, 1996.
[14]Roger S. Pressman, Software Engineering: A Practitioner,s Approach, The McGraw-Hill Companies, Inc., 1997.
[15]V. Strumpen, Portableand Fault-Tolerant Software System, IEEE Micro, pp. 22-32, September-October 1998.
[16]V. Strumpen, Portable and Fault-Tolerant Software Systems, IEEE Micro, pp. 22-32, September-October 1998.
[17]J. Voas and K. Miller, The Avalanche Paradigm: An Experimental Software Programming Technique for Improving Fault Tolerance, Proc. of ECBS, 1999.
[18]M. Rebaudengo, M. Sonza Reoda, M. Torchiano, M. Violante, Soft-error Detection through Software Fault-Tolerance techniques, DFT’99: IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems, November 1-3, New Mexico, USA, pp. 210-218, Albuquerque- 1999.
[19]W Torres-Pomales, Software Fault Tolerance: A tutorial, pp6, 2000.
[20]A.Benso, S.Chiusano, L.Tagliaferri, A C/C++ Source-to-Source Compiler for Dependable Applications, Politecnico di Torino, Dipartimento di Automatica e informatica, pp71-78, 2000.
[21]Lui Sha, Using Simplicity to Control Complexity, University of Illinois at Urbana-Champaign, pp 20, 2001.
[22]Laura, L.P.Software Fault Tolerance Techniques and Implementation. Boston London: Artech House, pp 1,3,9-12 , 2001.
[23]A. Benso, S. Carlo, G. Natale, L. Tagliaferri, and P. Prinetto, Validation of a Software Dependability Tool via Fault Injection Experiments, 7th Intl. On-Line Testing Workshop, 2001.
[24]M. Ernst, J. Cockrell, W. Griswold, and D. Notkin, Dynamically Discovering Likely Program Invariants to Support Program Evolution, IEEE Trans. on Software Engineering, 27(2), 2001.
[25]M. Hiller, A. Jhumka, and N. Suri, On the Placement of Software Mechanisms for Detection of Data Errors, Proc. Intl. Conference on Dependable Systems and Networks (DSN), 2002.
[26]A. Benso, S. Di Carlo, G. Di Natale, P. Prinetto, L. Tagliaferri, Data Criticality Estimation in Software Applications, Politecnico di Torino, Dipartimento di Automatica e Informatica, Corso DucaDegli Abruzzi 24, I-10129, Torino, Italy, pp 802-810,2003.
[27]A. Benso, S. Di Carlo, G. Di Natale, P. Prinetto, L. Tagliaferri, Data Criticality Estimation in Software Applications, Politecnico di Torino, Dipartimento di Automatica e Informatica, Corso Duca Degli Abruzzi 24, I-10129, Torino, Italy, pp 802-810, 2003.
[28]Shubhendu S. Mukherjee, Joel Emer, Steven K. Reinhardt, The Soft Error Problem: An Architectural Perspective, pp 1-5, 2005.
[29]S. Narayanan, S. Son, M. Kandemir, and F. Li, Using Loop Invariants to Fight Soft Errors in Data Caches, Proc. Asia and South Pacific Design Automation Conference (ASP-DAC'05), 2005.
[30]KarthikPattabiraman, ZbigniewKalbarczyk, and Ravishankar K. Iyer, Application Based Metrics for Strategic Placement of Detectors, Center for Reliable and High-Performance Computing, Coordinated Sciences Laboratory, University of Illinois at Urbana-Champaign, pp 1-8, 2005.
[31]Eduardo Valido-Cabrera, Software reliability methods, Technical University of Madrid, 2006, pp 1-2, 12.
[32]S. Pontarelli, M. Ottavi, A. Salsano, Error Detection and Correction in Content Addressable Memories, Rome, ITALY, pp 423, 2010.
[33]Gurpreet Kaur, Kailash Bahl, Software Reliability, Metrics, Reliability Improvement Using Agile Process, 2014, pp 143-146.