非常に高い信頼性が求められ、入力、出力ともに組合せが多く、機械的に結果を照合できる。そして、コストもなんとか確保できる。鉄道の自動改札機の運賃計算で同じ仕様から別チームで2つのプログラムを開発して、それぞれの結果を照合しているそうです。Tech-onの記事(10の40乗通りの運賃パターンにどう対応する?---オムロンの自動改札機用組み込みソフト)として掲載されています。 2つのチームで、異なる方針で実装すれば、両方のプログラムで誤った結果を出力する可能性は減りますし、記事のような極めて大量の入力、出力の組合せがある場合には、確認が自動化できることによるメリットが大きそうです。 ただし、改札機の実機ではCPU、メモリ等のリソースが限定的であるため、極めて大量の入力データを限られた時間で検証することが難しくなります。そこで、エミュレータの上でも動く実機プログラムと実装方針が異なるプログラムをP