変数の命名規則やコメントの書き方など,プログラムの標準的な記述方式を定める目的として,適切なものはどれか。
平成22年度 秋期 ITパスポート試験 問43
この問題の解説と、これまでの解答の記録です。
問 43
不正解ア
いつ、どのようなテストを行うかを明確にするのはテスト計画 (テスト仕様書) の役割であり、コーディング標準の目的ではない。コーディング標準はコードの書き方を統一するルールで、テストの実施時期や種類には言及しない。標準に従うと結果的に不具合が減ることはあっても、それはテスト計画とは別の話である。
不正解イ
仕様書はコードを作成する前の上流工程の成果物であり、その品質を高めるのはレビューや標準的な文書テンプレートなど別の施策の役目である。コーディング標準が適用されるのはコードを書く段階以降なので、すでに出来上がっている仕様書の品質を向上させることはできない。適用対象の工程が食い違っている。
- ウ
正解 正解は ウ。変数の命名規則やコメントの書き方などを定めたものをコーディング標準 (コーディング規約) といい、その最大の目的はソフトウェアコードの保守性 (maintainability) を高めることである。プログラムは書いて終わりではなく、その後に不具合修正や機能追加が続き、担当者も交代していく。書き方が人によってばらばらだと、他人 (数か月後の本人も含む) がコードを読み解くのに時間がかかり、誤解による修正ミスも起きやすい。記述方式を統一しておけば、変数名を見ただけで用途が推測でき、コメントから処理の意図が読み取れるため、可読性が上がり、結果として修正・改良にかかる手間とリスクが下がる。この「読みやすい ⇒ 直しやすい」という効果が保守性の向上であり、ウ が目的として適切である。
不正解エ
データベース設計の品質を高めるのは、正規化やデータモデリング、テーブル・項目の命名基準といったデータベース設計に関する標準の役割である。本問が挙げているのは変数の命名規則やコメントの書き方、つまりプログラム記述に関するルールであり、対象がデータベース設計ではない。
- コーディング標準 (コーディング規約) = 変数の命名規則、コメントの書き方、字下げなど、プログラムの記述方式を統一するルール。目的はコードの可読性を高め、ソフトウェアの保守性 (修正・改良のしやすさ) を向上させることにある。
- 標準・規約の問題は「どの工程の、何を対象にした標準か」で切り分ける。テスト計画=テスト工程、仕様書の品質=上流の設計・要件工程、データベース設計標準=DB 設計、コーディング標準=プログラム作成工程のコードそのもの。