令和3年度 秋期 応用情報技術者試験 午前 問48
テクノロジ/開発技術図は,ある図形描画ツールのクラス図の一部である。新たな形状や線種で図形を描画する機能の追加を容易にするために,リファクタリング“継承の分割”を行った。変更後のクラス図はどれか。

出典:令和3年度 秋期 応用情報技術者試験 午前 問48
- アクラス図ア
- イクラス図イ
- ウクラス図ウ
- エクラス図エ
正解:ウ
解説
リファクタリング“継承の分割”は,一つの継承階層が「形状」と「線種」という二つの異なる観点の仕事を担っている場合に,階層を観点ごとに分割し,一方を継承階層として残し他方を委譲(関連)に置き換える手法です。ウの図は,図形の継承階層(三角形・四角形)と線種の継承階層(太線・細線)を分け,図形から線種への関連で結んでおり,新たな形状や線種の追加が容易になります。
選択肢ごとの解説
- ア誤り。アは形状と線種の全組合せをクラスとして列挙しており,形状や線種を追加するたびに組合せの数だけクラスが増えてしまいます。
- イ誤り。イは太線の図形という別階層を設けて関連で結んでいますが,形状と線種の観点が分離されておらず,組合せの増加に対応できません。
- ウ正しい。図形の階層と線種の階層を分割し,図形と線種を関連で結ぶことによって,新たな形状や線種の追加が容易になります。
- エ誤り。エは太線クラスが太線の三角形・四角形の下位に位置するなど継承関係が不自然で,観点の分割になっていません。