Framework of a software reliability engineering tool

Abstract
The usage of commercial off-the-shelf (COTS) software modules in a large, complex software development project has well-known advantages (e.g. reduced development time and reduced cost). However, many such designs remain ill-understood in terms of end-to-end, overall reliability and assurance of the software system. Since the COTS components may not have been designed with assurance attributes in mind, a COTS module integrated system may fail to provide high end-to-end assurance. In applications that require timing, reliability and security guarantees, the usage of COTS software components can therefore mandate an analysis of the assurance attributes. The users of such systems may desire to predict the effect of the occurrence of an event on the reliability of other events in the system, and in general carry out an end-to-end analysis of the software system assurance. In this paper, we evaluate the causality, reliability and the overall performance aspects of large-scale software using a reverse engineering approach. The proposed code analysis approach can evaluate whether the COTS software meets the user-specified individual/group reliability constraints or not. In the case of reliability violation, our proposed approach can identify the modules of the software that may require re-design. The underlying idea is to merge event probabilities, event dependencies and fault propagation to calculate the occurrence probabilities of every event in the system.

This publication has 6 references indexed in Scilit: