あなたは午後試験のソフトウェア設計の問題において、
流れ図に関する問題が多いという特徴を知っていますか?
またソフトウェア設計の問題には、
レコードに関する問題が多いという特徴もあります。
そこで今回は、基本情報技術者試験における午後試験のソフトウェア設計の問題に、どのような傾向があるのか。
そしてどのようなキーワードが出題されやすいのかというポイントを紹介します。
ちなみにソフトウェア設計の問題は、流れ図に関する問題が多い点から、午後試験の難関アルゴリズムの前哨戦として、勉強を始めても良いかも知れません。
またなかなか難しい問題が揃っているため、アルゴリズムのウォーミングアップとしても使えると思います。

ソフトウェア設計の問題って、流れ図に関する問題が多いんだ

そうだな。加えて流れ図(フローチャート)に関する問題は、アルゴリズムとの関連性が深いな

上手く利用できれば勉強の効率化に繋がるね
・流れ図の問題は高確率で出題される

ソフトウェア設計の勉強をする際には、
流れ図(フローチャート)に関する問題が高確率で出題される
という特徴を覚えておきましょう。
流れ図(フローチャート)に関する問題が出題されたのは、平成21年から平成30年までにおいて、20回中8回。
実に40%もの確率で、流れ図(フローチャート)に関する問題が出題されています。
ちなみに流れ図(フローチャート)を使った問題では、
- 処理や分岐条件の穴埋め
- テストデータに関する内容
といった問題が出題されるようです。
例えば、平成30年秋期では以下のような流れ図を使った問題が出題されました。

出典:平成30年秋期 午後試験 問5より抜粋
他にもテストデータに関しては、以下のような問題も。

出典:平成30年秋期 午後試験 問5より抜粋
ただ流れ図(フローチャート)に関する問題やテストデータに関する問題は、流れ図(フローチャート)を使っているというだけで、同じような問題は出題されません。
それぞれ問題の内容は別物と言えるため、
単純な暗記だけでは解答できないというポイントを頭に入れておきましょう。
ちなみに勉強方法としては、
- アルゴリズムで使われたプログラムも読んでみる
- プログラムをフローチャートに書き起こす
といった勉強がおススメです。
またプログラムをどれだけ読んでいるかという経験も重要になります。

流れ図(フローチャート)に関する問題の出題頻度は分かったけど、問題の難易度はどうなの?

自分の頭で処理を考えて、内容を当てはめていく必要があるから、結構難しいといった印象だ。

じゃあ知識より、どれだけプログラムを読んでいるか、問題文を読み解く力があるかという能力が要求されるんだね
・レコードに関する問題も出題頻度が高い
注文ID | 注文日時 | 価格 | 個数 | 注文者 | 到着日時 |
---|---|---|---|---|---|
A1000101 | 2020-04-01 | 500,000 | 50 | 田中義男 | 2020-04-30 |
A1000102 | 2020-04-02 | 950,000 | 100 | 鈴木太郎 | 2020-05-06 |
B1000101 | 2020-04-03 | 55,000 | 5 | 安藤紗枝 | 2020-04-07 |
B1000102 | 2020-04-03 | 33,000 | 3 | 元木美奈 | 2020-04-07 |
ソフトウェア設計の問題においては、
上記のようなレコードに関する問題も出題頻度が高いという点も覚えておきましょう。
レコードに関する問題の出題頻度は、平成21年から平成30年までにおいて、
全20回中12回。
ソフトウェア設計問題の中では、一番出題頻度が高い問題とも言えます。
ただレコードというキーワードだけが登場して、解答に直接関わらないパターンもあるため注意が必要です。
またレコードに関する問題では、
- レコードの内容を問う問題
- レコード内容の抽出
- レコードの並び順
- レコードの項目に関する問題
以上のような内容を含んだ問題が出題されます。
例えば以下の問題は、テスト用のレコードがどのタイミングで処理されたか? という内容を問う問題となっていました。



出典:平成30年秋期 午後試験 問5より抜粋
他にもレコードと流れ図(フローチャート)に関する内容を同時に出題するといったパターンもあります。

レコードって、「構造体」なんて呼ばれている場合もあるよね

名前の呼び方が複数ある。情報処理の分野だと、よくあるパターンだな。

だから参考書なんかで、用語の横に他の名前書いてある場合や略語が書いてある場合は注意が必要だね
・クラス図とシーケンス図の知識は必須
・クラス図

・シーケンス図

ソフトウェア設計の問題を解く際には、上記のようなクラス図とシーケンス図に関する知識を身に付けておきましょう。
何故ならばどちらの内容も、出題率自体はそこまで高くはありませんが、
内容を知っていないと、図を読み取るまでに時間が掛かってしまうため注意が必要と言えるからです。
ちなみにクラス図とシーケンス図に関する問題は、
平成21から平成30年までの出題率
- クラス図の出題率は、20回中4回
- シーケンス図の出題率は、20回中3回
といった出題率、
- クラス図
属性や多重度を答える問題 - シーケンス図
処理内容を答える問題
が中心に出題されます。
またクラス図とシーケンス図が両方出題されるパターンもあるため念入りに勉強しておきましょう。

クラス図とシーケンス図は、内容を当てはめるだけで良い問題が多いけどね・・・

ただ内容を勘違いしやすい問題が多いのも、クラス図とシーケンス図の特徴だ。

あと時間が掛かる問題が多いといった特徴もあるね
・重要キーワード

では最後にソフトウェア設計において、最低限覚えておいた方が良い、重要キーワードを発表します。
- 流れ図(フローチャート)
- レコード
- レコード様式
- クラス図
- シーケンス図
- オブジェクト指向
- 主キー
- キー
- E-R図
- モジュール
- ホワイトボックステスト
- ブラックボックステスト
今回重要キーワードとして選んだ選考基準は、問題での登場回数、解答への関連回数といった内容になっています。
また重要キーワードとして挙げた用語に関しては、内容を網羅しておくようにしましょう。

ソフトウェアに関する用語ってこんなにいっぱいあるのか。覚えるのが大変そうだね

けど上で挙げた用語は、どれも用語の内容は単純で、暗記するだけなら難しくない。

むしろ図やフローチャートみたいに、書き方や使い方を知っているかが重要だね

だからソフトウェアを勉強する時は、用語の暗記よりも、
用語の内容を使って問題を解くといった勉強の方が重要だぞ
・ソフトウェア設計の出題率について

基本情報技術者試験では、
2020年の試験から午後試験における問題割合が、以下のように改正されます。

今回解説したソフトウェア設計に関しては、
- ハードウェア(ソフトウェアと統合されている可能性あり)
- ソフトウェア
- データベース
- ネットワーク
- ソフトウェア設計
といった5つの分野から、3つの分野に絞られて出題されます。
ちなみに試験改正前は、ソフトウェア設計は毎年出題されていた分野であるため、今後も高確率で出題されると思っておきましょう。

ソフトウェア設計を含むテクノロジ系の問題は、マネジメント系とストラテジ形に比べて、明らかに問題比率が高くなっているね

だから今後はテクノロジ系の勉強を重点的にするといった、スケジュール管理が重要になるかもな
まとめ
今回はソフトウェア設計問題の傾向と重要キーワードについて解説しました。
- 流れ図(フローチャート)の問題は高確率で出題される
- レコードに関する問題も出題頻度が高い
- クラス図とシーケンス図に関する知識は必須
- ソフトウェア設計の問題は、高い確率で出題されると考えて勉強する
ソフトウェア設計は、知識が必要なだけでなく、問題への慣れ、そして頭をひねるような問題が出題されます。
午後試験における問題の中でも、なかなか難しく、粒ぞろいな問題が多いため、念入りに勉強しておくようにしましょう。
コメント