N-version programming approach with implicit safety guarantee for complex dynamic system stabilization applications

Nadir Subasi*, Ufuk Guner, Ilker Ustoglu

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

4 Citations (Scopus)


Safety-critical systems are widely used in many sectors to prevent fatal accidents and prevent loss of life, damage of property, or deterioration of the environment. Implementation of software safety standards as part of the development of safety-critical software is generally considered an essential element of any safety program. Therefore, it has become more critical to produce highly reliable software to meet the safety requirements established by functional safety standards, such as IEC 61508, ISO 26262, and EN 50128. IEC 61508 supports well-known safety mechanisms such as design diversity like N-version (multi-version) programming. N-version (multi-version) programming is a method where multiple functionally equivalent programs are independently developed from the same software specifications. N-version (multi-version) programming is particularly an effective approach to increase the quality of software in a safety-critical system. In this paper, one of the well-known and widely used algorithms in the field of N-version (multi-version) programming, the majority voting algorithm, has been modified with an online stability checker where the decisions of the voter are judged against the stability of the underlying system. The plant where all the theoretical results are implemented is a tilt-rotor system with the proposed N-version (multi-version) programming–based controller. The experimental results show that the modified majority voter-based N-version (multi-version) programming controller provides more reliable control of the plant.

Original languageEnglish
Pages (from-to)269-278
Number of pages10
JournalMeasurement and Control
Issue number3-4
Publication statusPublished - Mar 2021

Bibliographical note

Publisher Copyright:
© The Author(s) 2020.


  • dual tilt-rotor system
  • fault-tolerant systems
  • N-version programming
  • proportional control
  • Safety-critical software


Dive into the research topics of 'N-version programming approach with implicit safety guarantee for complex dynamic system stabilization applications'. Together they form a unique fingerprint.

Cite this