2016年11月17日木曜日

[平成28年度秋] 午後 問5 解説

[問題文・解答]


平成28年度10月に実施された基本情報技術者試験の午後試験の問題・解答はIPA公式ページからダウンロード出来ます。(以下リンク)

[問題概要]


この問題は、選択問題で問2〜問7のうち4問を選択する必要があります。
問題の題材は、レンタル業務システムの設計です。
レンタル業務システムのオブジェクト指向設計においてUMLを用いたクラス図やシーケンス図で表現する方法について問われます。専門知識が無いと、解答は厳しい問題です。



[設問1]


a) (ア)延滞日数や(イ)延滞料金は貸出時には必要ない情報です。
(ウ)貸出期間は貸出クラスで管理される情報となり正解です。
(エ)貸出料金はレンタル商品ごとに貸出明細クラスで管理されています。
(オ)登録年月日は、会員情報クラスで管理する情報です。

b) P.21の貸出して順⑥に「レンタル業務システムは、貸し出すレンタル商品ごとに貸出明細番号を割り当てて貸出明細の情報として登録する。…貸出明細とレンタル商品を関連付けて、レンタル商品の貸出可否状態を"貸出中"にする」とあり、1つの貸出明細に対して、1つのレンタル商品が割り当てられることが分かります。よって、b2は1になります。
一方、P.22に返却手順④として「レンタル業務システムは、貸出明細に関連づけたレンタル商品の貸出可否状態を"貸出可"にする。同時に貸出明細と会員情報の内容を更新する」とあることから、返却時には貸出明細とレンタル商品の関連付けが解除されると想定されます。従って、1つのレンタル商品は貸出中ならば1つの貸出明細に関連付けられ、貸出中で無ければ貸出明細と関連付けられないため、b1には0..1が当てはまります。
以上より、「ウ」が正解です。

[答] a) ウ b) ウ

[設問2]


c) P.21の貸出し手順④で「返却予定年月日は貸出期間と本日日付から自動計算する」とあることから、返却予定年月日の算出には貸出期間と本日日付が使用されます。

d) P.21の貸出し手順④で「貸出料金はレンタル商品の種類ごとに貸出期間によって設定されている単価から、…自動計算する」とあり、貸出料金はレンタル商品の種類と貸出期間で決まることが分かります。図4のシーケンス図では貸出処理クラスは商品情報クラスに貸出料金を要求しています。この時、商品情報クラスは貸出期間が情報として必要となるため、(ア)貸出期間が正解です。

[答] c) エ d) ア

[設問3]


インヘリタンス:既に定義されているクラスを基に拡張や変更を加えた新しいクラスを定義する事。もとのクラスをスーパークラス、新たに定義したクラスをサブクラスと呼ぶ。

ポリモーフィズム:あるクラスを継承して定義された複数のサブクラスがある時、クラスによって同一のメソッドで異なる処理が行われる性質。

カプセル化:オブジェクト内部のデータや振る舞いを外部から隠蔽すること。

e1) CDクラス、DVDクラス、書籍クラスは商品情報クラスを特化して定義されているため、商品情報クラスをインヘリタンスしています。

e2) 貸出情報クラスは、商品情報クラスをインヘリタンスした各クラスの違いを意識せずに同一のメソッドで必要な処理を行う事が出来、この性質はポリモーフィズムと呼びます。

以上より、「イ」が正解です。

[答] e) イ

上記の解説は問題と解答を元に自分なりの考え方を記述しており、間違っている部分もあるかと思いますので、ご了承願います。また、誤りについては正しい考え方をご指摘・ご教授頂けると助かります。

0 件のコメント:

コメントを投稿