1. 民間航空機開発に適用される安全認証
航空機搭載の装備システムやエンジンにおける1980年代初頭からのソフトウェア使用の急増によって、業界全体で受け入れることが可能なガイドラインが必要になった。そして、DO-178B(Software Considerations in Airborne Systems and Equipment Certification)が、ソフトウェア開発ライフサイクルのガイドラインとして1992年にRTCA(Radio Technical Commission for Aeronautics:航空無線技術委員会)によって策定された。その後、約20年に渡る装備システムの開発経験、新しい開発手法と支援ツールの発展を考慮して、2011年にDO-178Cとして改訂、発行された。DO-178Cは、装備品開発メーカーだけでなく、認証機関(FAA、EASAなど)でも適用されている。
航空機搭載装備品は、ソフトウェアだけでなく、ハードウェア、そして装備品という1つのシステムでもある。DO-178Cの中で要求される開発対象のソフトウェアレベルは、その上位に位置する安全性評価プロセスで決定されたDAL(Development Assurance Level)を継承する。Fig. 1は、DO-178Cとその上位プロセス、DO-178Cをコアとしたソフトウェア開発手法、ツール認定の補足ガイドラインとの関係を示している。Table 1は、DALの分類を示している。故障時の安全性への影響が最も高いのはレベルAで、航空機が安全な飛行継続や着陸が不可能となる故障状態で、レベルEは、安全な飛行へ影響しない故障状態である。
レベル | 分類 -機体、乗務員、乗客への影響 |
A |
致命的-安全な飛行や着陸に要求されるクリティカルな機能の喪失になる故障状態 |
B |
危険/極めて深刻-高い乗務員負荷や物理的な困難によって、機体を操作する乗務員の能力を低下させる、負傷者が出るような故障状態 |
C |
重要-レベルBよりは影響が少なく、乗務員負荷が急激に増大し、乗務員・乗客が不快な状況になる故障状態 |
D |
軽微-機体の安全性が低下することはなく、乗務員が対応範囲内で遂行できる故障状態 |
E |
影響なし-安全性、機体の操縦、乗務員負荷に影響しない故障状態 |
Table 1 トップレベルのDALの割当て |
同じくDO-178Cの上位に位置するARP 4761(Guidelines and Methods for Conducting the Safety Assessment Process on Civil Airborne Systems and Equipment)は、ARP 4754Aのシステム開発プロセスを補う安全性評価手法のガイドラインである。システムの細分化・アーキテクチャ設計と安全性評価を繰り返して実施する。そして、細分化されたシステムから、最終的に、ハードウェアに割当てたシステム要件とソフトウェアに割当てたシステム要件を導出する。ハードウェアに割当てられた要件は、DO-254(Design Assurance Guidance for Airborne Electronic Hardware)に準拠したハードウェア開発プロセスの入力となる。下位のハードウェア開発プロセス(DO-254)とソフトウェア開発プロセス(DO-178C)は、ARP 4754Aに準拠して作成されたハードウェア要件、ソフトウェア要件が、正しく、かつ完全であることを前提にしている。機体メーカーと装備品メーカーとの境界に位置する情報なので、曖昧さを含まない、正しくかつ完全であることは重要である。
ソフトウェア開発プロセスでは、DO-178Cを中心ガイドラインとして、最新の開発手法(モデルベース開発、形式手法、オブジェクト指向)を適用する場合、これらの手法は、補足ガイドラインとして定義されている。実際のプロジェクトでは、DO-178Cと補足ガイドラインを用いて、テーラリングしたソフトウェアライフサイクルをプロジェクト計画で定義し、実施し、認証を取得している。