平成23年度 秋期 基本情報技術者試験 午前 問45
テクノロジ/開発技術モジュール設計書を基にモジュール強度を評価した。適切な評価はどれか。 〔モジュール設計書(抜粋)〕 上位モジュールから渡される処理コードに対応した処理をする。処理コードが"I"のときは挿入処理,処理コードが"U"のときは更新処理,処理コードが"D"のときは削除処理である。
出典:平成23年度 秋期 基本情報技術者試験 午前 問45
- アこれは"暗合的強度"のモジュールである。モジュール内の機能間に特別な関係はなく,むしろ他のモジュールとの強い関係性をもつ可能性が高いので,モジュール分割をやり直した方がよい。
- イこれは"情報的強度"のモジュールである。同一の情報を扱う複数の機能を,一つのモジュールにまとめている。モジュール内に各処理の入口点を設けているので,制御の結びつきがなく,これ以上のモジュール分割は不要である。
- ウこれは"連絡的強度"のモジュールである。モジュール内でデータの受渡し又は参照を行いながら,複数の機能を逐次的に実行している。再度見直しを図り,必要に応じて更にモジュール分割を行った方がよい。
- エこれは"論理的強度"のモジュールである。関連した幾つかの機能を含み,パラメタによっていずれかの機能を選択して実行している。現状では大きな問題となっていないとしても,仕様変更に伴うパラメタの変更による影響を最小限に抑えるために,機能ごとにモジュールを分割するか,機能ごとの入口点を設ける方がよい。
正解:エ
解説
モジュール設計書によると,このモジュールは処理コード(I,U,D)というパラメタの値によって,挿入・更新・削除という異なる複数の機能のいずれかを選択して実行しています。これは「論理的強度」の典型的な特徴であり,パラメタによる分岐は,仕様変更時に影響が波及しやすいため,機能ごとにモジュールを分割するか,機能ごとに独立した入口点を設ける改善が望まれます。
選択肢ごとの解説
- ア誤り。暗合的強度は,機能間に関連性がなくたまたま一つにまとめられたモジュールを指しますが,このモジュールは処理コードという共通の要素で関連付けられており,暗合的強度ではありません。
- イ誤り。情報的強度は,同一データ構造を扱う複数の機能を,それぞれ独立した入口点を持つ形でまとめたモジュールを指しますが,このモジュールは処理コードによる分岐で機能を選択しており,該当しません。
- ウ誤り。連絡的強度は,モジュール内でデータの受渡しをしながら複数機能を逐次実行するものを指しますが,このモジュールは処理コードによる条件分岐で機能を選択しており,逐次実行ではありません。
- エ正しい。処理コードというパラメタによって関連した複数の機能(挿入・更新・削除)のいずれかを選択して実行しており,これは論理的強度のモジュールの典型例です。