ホーム > システムアーキテクト試験 > 2016年
システムアーキテクト試験 2016年 午前2 問09
組込みシステムの開発におけるソースコードの品質向上のために、C言語のコーディング規則をまとめたものはどれか。
ア:CSS
イ:GCC
ウ:MISRA-C(正解)
エ:SystemC
解説
組込みシステムの開発におけるソースコードの品質向上のために、C言語のコーディング規則をまとめたものはどれか【午前2 解説】
要点まとめ
- 結論:組込みシステムのC言語コード品質向上には「MISRA-C」が最適なコーディング規則である。
- 根拠:MISRA-Cは安全性・信頼性を重視し、組込み開発で広く採用されている標準規約だからである。
- 差がつくポイント:他選択肢はCSS(スタイルシート)、GCC(コンパイラ)、SystemC(ハードウェア記述言語)であり、コーディング規則ではない点を理解すること。
正解の理由
MISRA-Cは「Motor Industry Software Reliability Association」が策定したC言語のコーディング規則で、組込みシステムの安全性・信頼性を高めるために設計されています。特に自動車産業を中心に広く採用されており、バグや誤動作を防ぐための具体的なルールが多数定められています。これにより、ソースコードの品質向上と保守性の向上が期待できます。
よくある誤解
GCCはC言語のコンパイラであり、コーディング規則ではありません。CSSはウェブのスタイルシート言語であり、C言語とは無関係です。SystemCはハードウェア設計向けの言語で、ソフトウェアのコーディング規則ではありません。
解法ステップ
- 問題文から「C言語のコーディング規則」を探すことを確認する。
- 選択肢の意味を一つずつ確認する。
- CSSはウェブのスタイルシートであるため除外。
- GCCはコンパイラであり規則ではないため除外。
- SystemCはハードウェア記述言語であり除外。
- MISRA-Cが唯一のC言語コーディング規則であることを確認し、正解とする。
選択肢別の誤答解説
- ア: CSS
ウェブページの見た目を制御するスタイルシート言語であり、C言語のコーディング規則とは無関係です。 - イ: GCC
GNU Compiler Collectionの略で、C言語などのコンパイラです。規則ではなく、コードの品質向上には直接関係しません。 - ウ: MISRA-C
組込みシステム向けに策定されたC言語のコーディング規則で、品質向上に最適です。 - エ: SystemC
ハードウェア設計向けのC++ベースの記述言語であり、ソフトウェアのコーディング規則ではありません。
補足コラム
MISRA-Cは1998年に初版が発行され、その後も改訂が続けられています。組込みシステムの安全性が特に重要な自動車や航空機、医療機器などの分野で標準的に採用されており、違反すると重大なバグや事故につながるリスクがあるため、厳格な遵守が求められます。
FAQ
Q: MISRA-Cはどのようなルールが含まれていますか?
A: 例えば、未定義動作の禁止、ポインタの安全な使用、型の厳密な管理など、バグを防ぐための具体的なコーディングルールが含まれます。
A: 例えば、未定義動作の禁止、ポインタの安全な使用、型の厳密な管理など、バグを防ぐための具体的なコーディングルールが含まれます。
Q: GCCはなぜコーディング規則ではないのですか?
A: GCCはプログラムを機械語に変換するコンパイラであり、コードの書き方を規定する規則ではありません。
A: GCCはプログラムを機械語に変換するコンパイラであり、コードの書き方を規定する規則ではありません。
関連キーワード: MISRA-C, 組込みシステム, C言語コーディング規則, ソフトウェア品質, コーディングスタンダード