基本情報技術者試験「モジュール設計」の問題
あるモジュールが、単一の機能を実現するためにだけ必要な処理だけで構成され、内部の各処理が一つの目的に向かって強く関連している。この凝集の度合いとして最も適切なものはどれか。
ア暗号化モジュール
イ論理的凝集
ウ機能的凝集
エ暗合的凝集(偶発的凝集)
正解
ウ.機能的凝集
機能的凝集は、モジュール内の処理がただ一つの機能の実現だけのために存在し、相互に強く関連する状態で、凝集度が最も高い最良の設計である。設問の『単一機能のために必要な処理だけ』『一つの目的に向かう』記述に正確に合致する。
?選択肢ごとの解説
ア ×暗号化モジュールは具体的な機能の名称であって凝集度の種類を表す用語ではなく、設問が問う凝集の度合いの分類に該当しない。
イ ×論理的凝集は似た種類の処理を引数で切り替えてまとめた状態で、単一機能に絞り込まれた機能的凝集より凝集度が低い。
ウ ○機能的凝集は、モジュール内の処理がただ一つの機能の実現だけのために存在し、相互に強く関連する状態で、凝集度が最も高い最良の設計である。設問の『単一機能のために必要な処理だけ』『一つの目的に向かう』記述に正確に合致する。
エ ×偶発的凝集は関連のない処理をたまたま寄せ集めた最も低い凝集であり、目的に強く関連するという設問条件と正反対である。
✎くわしく
凝集度は高いほど望ましく、弱い順に偶発<論理<時間<手続<連絡<逐次<機能と並ぶ。機能的凝集は単一機能に特化し、保守時の影響範囲が読みやすい理想形である。論理的凝集は『暗号化と復号をフラグで切替』のように一見まとまるが目的が分かれており劣る。設計では凝集度を上げ結合度を下げる、が一貫した指針である。
✓本番での押さえどころ
試験のコツ
『単一機能』『一つの目的に強く関連』とあれば最高位の機能的凝集と判断する。
覚え方
凝集度は『偶発(最悪)…機能(最良)』の並びを固定し、一つの仕事に集中=機能的凝集と結びつける。
よくある誤り
論理的凝集と機能的凝集を取り違えやすい。一つの機能に絞られていれば機能的、似た処理をフラグで束ねていれば論理的である。
開発技術の他の問題
アジャイル開発の手法であるスクラムにおいて、スプリントごとに動作するソフトウェアを開発チームが実際に作り上げ、その成果物をプ…ソフトウェアのテストにおいて、プログラムの内部構造には着目せず、入力に対する出力が仕様どおりであるかを検証する手法を採用した…あるシステムのファンクションポイント(FP)を見積もったところ、未調整FPは200であった。技術的複雑度を表す調整係数が0.…ソフトウェアの企画から開発・運用・保守・廃棄までの各活動について、取得者と供給者が同じ言葉で役割や作業範囲を取り決められるよ…ある開発プロジェクトでは、要件定義・設計・実装・テストの各工程を上流から下流へ順に進め、前工程の成果物を承認してから次工程へ…開発対象を複数の部分に分け、各部分について計画・リスク分析・開発・評価の活動を繰り返し、評価のたびにリスクを見極めながら少し…
この問題を、AIの8-ways解説つきで。
無料ではじめる →基本情報技術者試験の演習を、一問ごとに「なぜ」まで。まずは無料で。
ukamiru 過去問 · 基本情報技術者試験 · fe-a2-0021