【基本情報技術者】午後試験でおすすめの選択科目と勉強方法

3月 19, 2019基本情報技術者試験

基本情報技術者試験において、難関になりやすい午後試験。問題の取捨選択も必要で、効率的な学習方法ができるかが合格への鍵となります。

また、IT関連未経験の方にとっては、午後試験の「アルゴリズム」と「ソフトウェア設計(プログラム)」は一番高いハードルともなり、基本情報技術者試験の本番とも言えます。

今回は、この午後試験について、

  • おすすめの科目の選択方法
  • 午後試験の対策方法

を中心に解説していきたいと思います。

午後試験の特徴と対策については、こちらの記事をご参照ください。

また、午後試験の制度については、以下の記事をご参照ください。

目次

基本情報技術者(午後試験)の問2~問5でおすすめの選択科目

結論から書くと「人によるので、絶対的な選択肢方法はない」と考えてください。

1つの方法として「マネジメント系は4科目から1つしか出題されないから、テクノロジ系に絞る」という方法があります。ただ「マネジメント系は出題形式に慣れれば、午前問題の知識で合格ラインを突破しやすい」のも事実。つまり、得意・不得意にある程度の影響は受けます

また、応用情報技術者試験を視野に入れている人、実際に仕事をするまでまだ学生をしている人、既に働いて1年経過している人など、試験後のビジョンによって「何を勉強しておきたいか?」という目的が変わってきます

その上で、いくつかの視点からおすすめの選択科目についてまとめます。

万人向けで合格優先の方法:テクノロジ系から3問を選んで学習する

万人向けで合格優先の場合、問2~問5でおすすめの選択方法は、テクノロジ系から3問を選んで、学習することです。

これはほぼ鉄板です。理由は単純で「テクノロジ系4科目から3問が出題され、選択するのは2問だから」です。テクノロジ系を3問勉強しておけば、確実に勉強した内の2問に挑めます。

一方、テクノロジ系を2問しか学習しなかった場合、最悪勉強した内容が1問しか出題されません。これをカバーするためには、マネジメント系で4科目学習する必要があり、負荷が大きくなります

未経験の場合、テクノロジ系の方が苦手という人も多いかと思いますが、出題内容は「文章読解」や「単純に覚えたか、覚えていないか」というレベルが中心です。よほどマネジメント系に特化していない限りは、未経験の人でもテクノロジ系3問を選択した方が効果的だと思います

もちろん、マネジメント系が得意であれば勉強してもかまいません。出題形式に慣れれば、午前の知識だけで合格ラインを突破できる可能性は十分あります。ただ、その場合でも「テクノロジ系3問+マネジメント系の得意科目」とすることを私はおすすめします。

短期合格の賭け:テクノロジ系から2問選択する

ギャンブルになりますが、どうしても時間が確保できない人は、テクノロジ系から2問だけ選択するという手段も私は有効だと考えています

というのも、マネジメント・ストラテジ系は、午前試験の知識で合格ラインを突破できる可能性があるため、学習した1問が出題されなかった場合に、残りの1問をマネジメント・ストラテジ系に逃げるという最終手段がとれるからです。

ただ、もちろん選んだ2問に出題されないものがあれば、それだけ合格率は落ちます。そのリスクを覚悟できる人だけの方法です。

テクノロジ系(問2~問4)の科目の選択方法

午前問題に慣れてから、午後問題を一度解いて、一番苦手なものを捨てる

基本方針は「一番苦手な1科目を捨てる」ことです

ただ、未経験では得意・不得意もわからないと思いますので、おすすめの方法としては、午前問題である程度点数が取れたあたりで(数回分の過去問で、正解率60%に手が届き始めるくらい)、テクノロジ4科目の過去問を実際に解いてみる方法。その手ごたえから、自分と試験の相性が見えてきますので、実際に解いて一番苦手意識が強かった1科目を捨てます

ただし、後述しますが「データベース」と「ネットワーク」はやや午前知識では対応しにくい問題が出題される傾向があります。「データベース」と「ネットワーク」が他の科目と大差なければ、むしろ相性が良いと判断してもいいでしょう。

難易度を考えると「データベース」か「ネットワーク」が高め。だが、メリットもある

「データベース」と「ネットワーク」は、午前試験の知識だけでは対応しにくいレベルの問題が出題されやすいです。未経験から学び、どうしても理解ができないという人であれば、捨てる判断をするのもいいかとは思います。

ただし「データベース」と「ネットワーク」には以下のメリットがあるため、無理ない範囲であれば学習をおすすめします

  • データベース出題傾向が安定している。応用情報も同様なので、応用情報まで勉強する人にもおすすめ
  • ネットワーク必須科目のセキュリティと相性が良く、相乗効果が狙える

狒々山
狒々山
ネットワークに関しては、難易度がCCNA並という声もありますが、ネスペの試験対策の一環で解いた限りでは、そこまでは難しくないかなと思います(というか、最近のCCNAがアソシエイトレベルとしては難しすぎ……)。

勉強のやり易さだけ考えれば「ソフトウェア・ハードウェア」以外を選ぶ

実は、テクノロジ4科目の内「ソフトウェア・ハードウェア」については、昔は分離していました。

それを合わせたから勉強量が2倍……とは思いませんが、過去問演習のやり易さが違ってきます。結局、安心感を得ようと思ったら、勉強量が増えてしまう可能性はあります。

他の科目であれば、何も考えずに過去問を利用できるので、どの科目も差を感じないという人であれば「データベース」「ネットワーク」「ソフトウェア設計」の3科目をおすすめします。

テクノロジ系(問2~問4)の個別の特徴とおすすめのパターン

念のためですが、簡単に各科目の特徴をまとめます。

ソフトウェア・ハードウェア

元は「ソフトウェア」と「ハードウェア」に分かれていて、午前問題の知識で点数稼ぎしやすい科目でした。個人的には、一つの科目にまとめられてしまった原因が、それではないかと疑ってます。

特にハードウェアの「論理回路」「A/D変換器」は、午前知識レベルで点を取りやすく、解答も速攻で終わるため、点数稼ぎには最適です。午前問題の知識だけで他の科目より明らかに点が取れている場合、選択することをおすすめします。

データベース

出題傾向がかなり絞られていて、「SQLの知識がしっかり身に付いているか?」が点数に直結します。過去問の類似問題も多いため、SQLに抵抗感がない人であれば間違いなくおすすめです。ただ、求められる知識水準が若干高めな印象はあります

ちなみに、応用情報もデータベースはパターンが似たものが多く、データベースを選択する人が多いです。応用情報まで視野に入れている場合、データベースを勉強することをおすすめします。

狒々山
狒々山
私はSQLを大学でも仕事でも学びませんでしたが、基本情報、応用情報で利用しました。ただ、使わないと忘れやすいです……。

ネットワーク

必須科目のセキュリティとの相乗効果が狙えるため、苦手意識がなければ選択することをおすすめします。

一方、問われる知識や、知識の応用のレベルについてはやや高めと感じる人が多いです。他の科目はなんだかんだで文章読解的な要素が多いですが、知識をしっかり理解しているかが問われる印象です。苦手意識が強い人は避けましょう。

ソフトウェア設計

ソフトウェア設計は、一番万人向けでおすすめできるかなと思います。選択している人も多い印象です。

フローチャートとUMLの読み取りがしっかりできるかが、高得点の鍵です。この二分野が苦手な人はソフトウェア設計を捨てましょう

マネジメント・ストラテジ系(問5)の科目の選択方法

マネジメント・ストラテジ系(プロジェクトマネジメント、サービスマネジメント、システム戦略、経営戦略・企業と法務)は、基本的にはあえて勉強する必要はないかと思います。

もしも勉強する場合は「全科目をまとめて、1科目分程度の勉強量にする」という前提で勉強しておくのがおすすめです。もしも、全科目をストラテジ系1科目分だけ勉強してしまうと、時間がかかり過ぎます。

また、過去問の傾向から、難易度の上下が激しい分野です。基本的には午前試験の知識で合格ラインを突破しやすいと考えられますが、若干ギャンブル性がある科目と考え、結局はテクノロジ系3科目を勉強した方が安定することは確かです。

基本情報技術者(午後試験)のソフトウェア開発(問7~問11)でおすすめの選択方法

問7~問11の「ソフトウェア開発」のおすすめの選択方法については、以下のように考えて良いと思います。

ソフトウェア開発のおすすめ科目

  • 既に学習中・学習予定のプログラミング言語があるなら「学習中・予定の言語
  • プログラミング未経験で、合格優先なら「表計算
  • プログラミング未経験だけど、プログラミングを将来役立てたいなら「Python

当たり前ですが、ソフトウェア開発については、自分が学習したことのある分野を選択することが一番有利です。ただし、学習が不十分であったり、全く学習経験が無い場合は表計算を選択するのがおすすめです。アセンブラ言語も覚えることが少なくて学習しやすいですが、参考書の充実度から考えて、表計算の方がいいでしょう。

学習の水準としては、出題される内容のプログラム全体を記述できる力は全く必要ありません。出題されるレベルのプログラムを一から作成する必要があれば、その難易度は応用情報以上です。これを知らずに学習を進めると、必要以上にソフトウェア開発の学習時間が長くなってしまいます。ですので、過去問を繰り返し解きながら、「問題のどこを理解すればいいか?」「プログラムの読み解く必要のない部分は?」というコツをおさえることを意識して学習をすすめるようにしましょう。

ちなみに、未経験だけど、プログラミングを将来役立てたい人に「Python」がおすすめの理由は以下の通りです。

  • Pythonは仕事の需要が比較的多い
  • Pythonは記述が読みやすく、簡略的なので、初心者の学習に向いている(実際、大学などで学習に使われる)

未経験者が最も受験する「表計算」の対策方法については、以下の記事にまとめておきました。興味がある方は参考にしてください。

必須問題のセキュリティとアルゴリズムについて

情報セキュリティ

情報セキュリティは解答必須の分野です。社会的にも今後重視されていく分野でしょう。

日本におけるセキュリティ関連の人材不足は深刻です。また「情報セキュリティマネジメント試験」「CISSP」「CISM」など、情報セキュリティに関する資格は多数あり、国際的にも需要が増加しています。基本情報技術者試験においても、2020年春試験からの情報セキュリティに対する配点が増加し、試験においてセキュリティ分野が重視されていることは確実です。

また、情報セキュリティは暗記問題や文章から読み解く力を問われる問題が多いため、文系やIT関連未経験者でも得点源にしやすい分野です。アルゴリズムやプログラミング関連の問題が苦手な人は、ここで8割程度の得点を取れるようしっかり対策しておきたいところです。

データ構造及びアルゴリズム

必須分野の2つ目である「データ構造及びアルゴリズム」については、IT関連の経験者に有利な内容であり、未経験者の多くが苦手とする分野です。

苦手であれば、無理して高得点を狙う必要はありませんが、全体の25%の配点となっているため、ここで大きく点を失うと不合格の可能性が高まります。苦手でも50%程度の点数が取れるように対策をすすめることをおすすめします。

基本情報技術者試験の午後試験の勉強法は?

午前試験の対策から開始し、午後試験へと移行する

午前試験と午後試験の勉強を並行して実施しても問題ありませんが、効率的な勉強方法は「最初に午前試験をメインに学習し、徐々に午後試験に重点をおいていく」という方法です。

午後試験で問われる基礎知識は、午前試験で登場した知識で多くをカバーできます。ですので、午前試験の小問で知識を身につけてから午後試験の大問を解いていく方が効率的です。

もしも短期合格を目指す場合(1ヶ月程度)は、試験になれる意味も含めて午後試験対策も並行して進める必要があるかと思いますが、十分な勉強時間が確保できるのであれば、まずは午前試験の対策から進めていくといいでしょう。

過去問で対策は有効か?

午後試験では、午前試験のような過去問の流用はありません。

しかし、それでも過去問を繰り返し解くことはとても重要です。とくにアルゴリズムやソフトウェア開発(プログラミング)に関する出題については、出題形式に慣れることで、回答にかかる時間を大幅に短縮できます

遅くても受験1ヶ月以上前に過去問を解き、「どういった出題形式になっているか」「問題文のどこを読めば解答ができるか」といったところを把握しておくといいでしょう。

IT関連経験者・未経験者ごとの勉強方法

午後試験の場合、IT関連の経験者と未経験者では、勉強方法は大きく変えた方がいいです。

午後(IT関連経験者の場合)

過去問や問題集の演習だけで十分合格できる可能性が高いです

ソフトウェア開発については、普段から利用しているプログラミング言語をそのまま利用しやすいと思います。もし、普段利用している言語が選択できない場合、個別にテキストの購入を検討してもいいですが、一度プログラミングの経験があるのなら、過去問+ネットサーフィンでも通用する可能性は高いです。

ただし「IT関連だけどプログラミングはやっていない」という人は、個別にプログラミングや表計算のテキストを購入することをおすすめします

午後(IT関連未経験者の場合)

未経験の場合、アルゴリズムとプログラミングについては過去問だけでは難しい人が多いかと思います。この2点については解説の詳しい問題集や、テキストを購入し、じっくり学習を進めた方が確実です。

「アルゴリズム・プログラミングは捨てる」と最初から割切ってしまう方法もありますが、これはあまりおすすめしません。とくに2020年春試験以降はこの二つの分野で50点を占めるため、これらの分野を捨ててしまうと合格点に達しない可能性が高いと思います。苦手分野も5割程度を目指して勉強すると良いでしょう

ちなみに、プログラミングについては、入門書1冊程度があれば試験に解答できるレベルに達します(試験に登場するプログラムが記述できるレベルには達しにくいと思いますが、そこまでやる勉強する必要は全くありません)。あくまで「試験に解答できる程度にプログラムが読めればOK」ですので、完璧は目指さない勉強にしましょう。

おすすめの参考書については、以下の記事にまとめてありますので、興味がある方は参考にしていただければ幸いです。

基本情報技術者試験の午後試験の裏技は?

ここからは午後試験の裏技について解説します。

午後試験はある程度の実力がないと合格基準に達しないため、あくまで実力での合格が必要です。裏技については、参考程度にご利用いただければ幸いです。

正解の計算式がわからない場合、難しそうなものを選ぶ

こちらは午前試験でも利用可能な裏技ですが、選択肢に計算式が登場した場合は、難しそうなものを選んだ方が正解率は高い印象です。

そもそも、あまりにも単純な計算式の場合「この式で正解か、実際に計算して確認してみよう」ということが容易にできます(可能であれば、実際に試験中にやった方がいいです)。

ですので、計算式は難しそう・複雑そうなものを選択した方が若干ながら正解率は高くなります。

午前対策よく見た正解の選択肢を選ぶ

午後の試験で求められる基礎知識は、午前で学習してきた内容が多く登場します。

そして不正解の選択肢の中には「本来、基本情報技術者試験で問われるレベルではない」ものも含まれています

つまり、午前で正解の選択肢が、午後でも正解となる可能性が若干高い」といえます

もちろん選択肢の内容をしっかり理解し、正解・不正解を判断できることが最善ではありますが、全くわからないという状況に追い詰められたのであれば、少しでも正解率を上げるために利用できる方法です。

試験時間は午後試験だけ気にしておく

基本情報技術者試験は、午前・午後ともに150分ですが、時間的な余裕は全く異なります。

午前試験は見直しをやっても時間があまることは十分あり得ますが、午後試験は慣れていないと、試験時間が足りないこともあり得る試験です

最後まで解答できる自信がない人は、直前の時期の学習で、自分の解答時間を把握し、時間配分や解答する問題の順番についても戦略を立てておきましょう。

IT業界未経験なら、午後試験対策はしっかりやろう

基本情報技術者試験は、IT業界では新入社員が求められる程度の難易度の試験です。合格率は20~30%程度で推移しており(2020年秋試験以降、50%程度まで上昇しています、誰でも簡単な試験とまではいえませんが、しっかり対策を立てて勉強を進めていけば、初心者でも十分合格できる試験といえます。

それでも午後試験で出題される「アルゴリズム」や「ソフトウェア開発」のような分野については、IT関連の学習が未経験の場合は苦戦する可能性が高く、学習時間が想定よりも長くなってしまう可能性もあります。

予算の関係であえておすすめはしませんが、未経験からの受験を考えている場合は、予備校や通信講座などの利用も選択肢の一つとして考えておくといいでしょう。

ちなみに、初心者で表計算を選択する場合は、一番おすすめの講座は「スタディングです。大手の予備校より低価格で、スマホでの学習を前提に教材が組み立てられているため、未経験からIT業界に入った社会人など、初心者かつ隙間時間で勉強が必要な人にはとくに効果的です。

スタディングの基本情報技術者試験の講座については、以下の記事でまとめました。基本は独学がおすすめですが、未経験から効率的に一発合格を狙いたい人であればおすすめできます。

午後試験の出題内容について

最後に、念のため基本情報技術者試験の午後試験の出題内容についてまとめておきます。

午後試験の出題内容

午後試験の出題内容は以下の通りです。

問番号分野
(T:テクノロジ、S:ストラテジ、M:マネジメント)
選択方法配点
出題数回答数
問1T情報セキュリティ1問必須20点
問2~4Tハードウェア・ソフトウェア、データベース、ネットワーク、ソフトウェア設計4分野から3問出題2問各15点
問5M・Sプロジェクトマネジメント、サービスマネジメント、システム戦略、経営戦略・企業と法務4分野から1問出題
問6Tデータ構造及びアルゴリズム1問必須25点
問7~11Tソフトウェア開発
(C、Java、Python、アセンブラ言語、表計算ソフト)
5問1問25点
合計11問5問100点

出題される問題を簡単にまとめると、以下の4つのブロックにわけて考えることができます。

  1. 情報セキュリティ(必須)
  2. 選択問題(問2~5について、4問から2問を選択して解く)
  3. データ構造とアルゴリズム(必須)
  4. 選択問題(ソフトウェア開発の5問から、1問を選択して解く)

選択問題については、試験本番で選択した問題のみ解答すればいいので、選択しない問題を事前に捨ててしまった方が遙かに効率が上がります(特にソフトウェア開発の全ての言語に対応するのは、現実的な試験対策ではありません)。