OPTIMAL VERSION SEQUENCING IN FAULT-TOLERANT PROGRAMS
This paper considers software systems consisting of fault-tolerant components. These components are built from functionally equivalent but independently developed versions characterized by different reliability and execution times. Because of resource constraints, the number of versions that can run simultaneously is limited. The expected system execution time and its reliability (defined as probability of obtaining the correct output within a specified time) strictly depends on the sequence of versions execution. Different sequences can provide either maximal system reliability or minimal expected execution time. An optimization procedure is suggested for finding such sequences. The procedure is based on an algorithm for determining system execution time distribution that uses the moment generating function approach and on the genetic algorithm. Both N-version programming and the recovery block scheme are considered within a universal model. An illustrated example is presented.
Fault-tolerant programming, performance, reliability, expected execution time, optimization, genetic algorithm
In order to set up a list of libraries that you have access to,
you must first login
or sign up.
Then set up a personal list of libraries from your profile page by
clicking on your user name at the top right of any screen.