Font Size: a A A

A nonhomogeneous Poisson process software reliability growth model for N-version programming systems

Posted on:2002-12-13Degree:Ph.DType:Dissertation
University:Rutgers The State University of New Jersey - New BrunswickCandidate:Teng, XiaolinFull Text:PDF
GTID:1468390011492942Subject:Engineering
Abstract/Summary:
N-version programming (NVP) is a software generalization of the N-modular-redundancy (NMR) approach used in hardware fault tolerance. To enhance the software reliability, N versions are developed independently and executed simultaneously (i.e., in parallel). A voter is used to collect the output from each software version, and then determine the “correct” or best output if one exists by a voting mechanism.; This dissertation aims to advance the theories and methods of software reliability for NVP systems and achieves two major goals:; First, it establishes a general framework for non-homogeneous Poisson process (NHPP) software reliability models. Based on this general framework, it further establishes a unified software reliability model with random field environments. This unified model covers both the constant testing environment and the random operation environments. A software cost model based on the unified reliability model is also developed. This cost model considers not only the time to remove faults during the in-house testing, cost of removing faults during the beta testing, risk cost due to software failure, but also the benefits from the reliable executions of the software during the beta testing and the field operation. To our knowledge, our cost model is the first model that considers the random field environments, and also the first model that considers the cost of the beta testing in the field environment. We provide the optimal release policies in which the net gain of software development process is maximized. This cost model can help people to determine whether the safety goals are achieved, and when to stop testing the software and release it to beta testing users and to end-users.; Second, this dissertation establishes a NHPP software reliability growth model for the N-Version programming system. By separating all software faults in NVP systems into several different categories based on NHPP, we establish a reliability growth model for NVP fault-tolerant systems. This research also gives a method to estimate the parameters involved in this model.
Keywords/Search Tags:Software, Model, NVP, Programming, Systems, Beta testing, Process
Related items