今回解いてみたIT試験の過去問は、情報システム開発分野(もしくは、組み込みシステム分野)になります。IPAの平成16年春ソフトウェア開発技術者(現・応用情報技術者)午後1問2で、自動販売機の内部処理の設計がテーマになってます。自動販売機の内部処理をクラス図とシーケンス図でモデリングしています。
平成16年春ソフトウェア開発技術者午後1問2( 情報システム開発 )
(引用ここから。解答を入れるための空欄の形式など一部改変があります。)
問2 オブジェクト指向分析に関する次の記述を読んで,設問1~3に答えよ。
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2004h16_1/
A君は缶飲料自動販売機のシステムを開発することになった。最初に,簡単なシナリオを記述し,そのシナリオを基にしてUML (Unified Modeling Language)のクラス図とシーケンス図を使って,システムのモデリングを行うことにした。
シナリオ:
缶飲料を購入する顧客は,自動販売機に対して入金口から入金する。入金されたお 金は,自動販売機内のレジスタに入れられる。レジスタには,今までの売上も含めたお金が蓄えられている。自動販売機は,入金されるたびに,入金総額をインジケ 一タに表示する。入金総額が缶飲料の価格に達すると,自動販売機は価格に達した 缶飲料に対応する購入可能ランプを点灯する。顧客は自分が購入したい缶飲料のラ ンプが点灯するまで,自動販売機に入金する。購入したい缶飲料のランプが点灯し,顧客がその缶飲料を購入するためのボタンを押すと,自動販売機は選択された缶飲料を商品口に置き,購入可能ランプを消灯し,インジケータの表示を0にする。つり銭がある場合には,レジスタから必要な金額のつり銭を出し,返却金口に戻す。
A君はこのシナリオを基に,初期モデルのクラス図(図1) とシーケンス図(図2) を作成した。
2004h16h_sw_pm1_qs.pdf
設問1
https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2004h16_1/
図1のクラス図に,入金総額をインジケータに表示する操作を加えたい。どのクラスに加えるのが適切か。クラス名を答えよ。
設問2
図2中の[ア], [イ]に入れる適切な操作名を答えよ。
設問3
A 君が図1のクラス図を見直したところ,入金部が複数の機能をもっていると考え各機能ごとにクラスを割り当てることにして図1, 2 を修正した。修正したクラス図とシーケンス図がそれぞれ図3,4である。また,図4のシーケンス図では,操作に必要な引数を記入することにした。ここで図4では,既に自動販売機 に100 円投入されている状態で,更に100 円投入して120 円の缶飲料を購入する場合を表しており,必要に応じて,オブジェクト間のメッセージとともに渡される引数も示している。
図3, 4中の[ウ]~[サ]に入れる適切な字句を答えよ。
2004h16h_sw_pm1_qs.pdf
(引用ここまで)
解答と解説については、「2」のページに記載しています。