• DocumentCode
    3406750
  • Title

    Building dependable software for critical applications: multi-version software versus one good version

  • Author

    Townend, Paul ; Xu, Jie ; Munro, Malcolm

  • Author_Institution
    Dept. of Comput. Sci., Durham Univ., UK
  • fYear
    2001
  • fDate
    2001
  • Firstpage
    103
  • Lastpage
    110
  • Abstract
    An increasing range of industries have a growing dependence on software based systems, many of which are safety-critical, real-time applications that require extremely high dependability. Multi-version programming has been proposed as a method for increasing the overall dependability of such systems. We describe an experiment to establish whether or not the multi-version method can offer increased dependability over the traditional single-version development approach when given the same level of resources. Three programs were developed independently to control a real-time, safety-critical system, and were put together to form a decentralized multi-version system. Three functionally equivalent single-version systems. were also implemented, each using the same amount of development resources as the combined resources of the multi-version system. The analytic results from this experiment show that 1) a single-version system is much more dependable than any individual version of the multi-version system, and 2) despite the poor quality of individual versions, the multi-version method still results in a safer system than the single-version solution. It is evident that regarding the single-version method as a "seem-to-be" safer design decision for critical applications is not generally justifiable. We conclude by describing plans for a follow up study based on our initial findings
  • Keywords
    configuration management; real-time systems; safety-critical software; software fault tolerance; critical applications; decentralized multi-version system; dependable software; design decision; development resources; functionally equivalent single-version systems; high dependability; multi-version method; multi-version programming; real-time safety-critical system; safety-critical real-time applications; software based systems; Application software; Computer industry; Computer science; Control systems; Costs; Embedded software; Embedded system; Software engineering; Software safety; Software systems;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Object-Oriented Real-Time Dependable Systems, 2001. Proceedings. Sixth International Workshop on
  • Conference_Location
    Rome
  • ISSN
    1530-1443
  • Print_ISBN
    0-7695-1068-X
  • Type

    conf

  • DOI
    10.1109/WORDS.2001.945120
  • Filename
    945120