【基本情報技術者】科目Bの特徴とおすすめの勉強方法
基本情報技術者試験において、IT系未経験の場合に難関になりやすい科目B。
とくに科目Bの8割を占める「アルゴリズムとプログラミング」は、一番高いハードルともなり、基本情報技術者試験の本番とも言えます。
今回は、この科目Bについて、2023年の改訂の内容をふまえ、試験の特徴とおすすめの勉強方法を中心に解説していきたいと思います。
科目Aの特徴と勉強方法については、こちらの記事をご参照ください。
基本情報技術者の科目Bの特徴
合格点・試験時間・問題数
大まかな試験制度は、以下のようになります。
- 合格点:1,000満点中で600点以上(ただし、IRT方式で採点)
- 試験時間:100分
- 問題数:20問(全て解答が必要)
- 問題形式:文章読解(旧、午後試験よりも短め)
- 出題内容:「アルゴリズムとプログラミング(16問)」と「情報セキュリティ(4問)」
まず、合格点は6割です。ただし、IRT方式での採点であるため、事前に「1問○点」といったものが決定されておらず、試験後に全体の解答結果に基づいては配点が算出されます。これにより、試験による難易度の差が発生する事を防いでいますが、一方で6割正解しても、点数は6割に届かない事もあり得ますので注意が必要です(7割以上の正解を目指すと、安定して合格が狙えるようになってきます)。
また、問題数は20問で全て解答が必要です。文章読解問題ですので、1問あたりの試験時間は科目Aよりも長くなってきます(旧試験よりはかなり短いですが)。
また、出題内容が「アルゴリズムとプログラミング」と「情報セキュリティ」であることから、ストラテジ系やマネジメント系、データベースやネットワークなどの学習は、必要がありません。その分、「アルゴリズムとプログラミング」と「情報セキュリティ」に関する問題は科目Aでもしっかりと勉強しておくと、効率的な学習ができます。
2023年改定による変更点(難易度が大幅に下がった!)
2023年の改訂までの科目Bにあたる「午後試験」は、いくつかの大問の中から、選択して回答する形式で、全5分野に取り組む必要がありました。
一方、2023年の改訂後の「科目B」は、学習範囲が「アルゴリズムとプログラミング」と「情報セキュリティ」だけになっています(正確には「アルゴリズムとプログラミング」は、旧午後試験の「ソフトウェア開発」と「データ構造及びアルゴリズム」を統合した物なので、全部で3分野に相当)。つまり、全5分野の学習が必要だった勉強を、3分野分にまで減らすことができ、学習の負担が大きく下がりました。
また、シラバスの記載で「プログラム言語の種類,特徴,基本的な記述方法を修得」だったものが「プログラム言語の種類,特徴,基本的な記述方法を理解」に変更された事からも、難易度も下がっていると言えます。
事実、2020年秋試験以前の合格率が20%前後だったものが、2020年以降に「午前と午後別日で受験できる」状態になってから35~50%の間まで合格率が上昇し、2023年の改訂で「午前と午後別日で受験できない」状況に戻ったにも関わらず、合格率は2023年4月は56.39%、2023年5月は54.73%と、むしろ大きく上昇しました。
この事からも、2020年春までの基本情報技術者試験と比べ、遥かに容易に合格できる難易度の試験になったと考えられます。
基本情報技術者試験の科目Bの勉強方法は?
まずは科目Aからはじめる
科目Bの対策として、まずは科目Aから勉強を始める事をおすすめします。
というのも、科目Aの方が短文に対する選択問題であるため容易に勉強でき、また科目Aの知識が科目Bの問題を解く基礎知識になるからです。
この点は情報系の経験者でも同様です。とくに、経験者の場合は「アルゴリズムとプログラミング」を難なく解けてしまう可能性があり、むしろ試験範囲が広く、普段勉強や仕事で触れない知識が出題される科目Aでうっかり落ちる事もあり得るため、科目Aを安定させることから始めることを意識した方がいいです。
文章読解に慣れる(過去問演習が重要)
まずは、試験慣れしていない場合は、文章読解という形式に慣れる必要があります。
2023年の改訂前の午後試験(現科目B)と比較すれば、大幅に文章が短くなり、簡単な内容となったとはいえ、試験慣れしていない人が初見で挑めば面食らう可能性もあります。
また、文章読解の形式の問題に何度も挑むことによって、出題者がどうやって問題と解かせようとしているかといった「出題者の意図」が、パターンとして身についてきます。
そういった意味では、科目Bも科目Aと同様に過去問演習が重要になってきます。
ただし、科目Bについては過去問の流用は期待できません。論点が似ている出題は期待できますが、理解が不十分だと正解にはたどり着けない可能性が高いため、必ず過去問演習の際は「解き方を理解する」「問題文をどう読み解くべきだったかを確認する」といった点は注意しましょう。そうすることで、出題者の意図も自然と理解できるようになってきます。
情報セキュリティ
情報セキュリティは、全部で4問です。
全体の2割ではありますが、暗記問題や文章から読み解く力を問われる問題が多いため、文系やIT関連未経験者でも得点源にしやすい分野です。「アルゴリズムとプログラミング」が苦手な人は、できるだけ全問正解のつもりで挑むことをおすすめします。
対策は先にも述べた通り、まずは科目Aの過去問演習です。科目Aの過去問は、知識としては難易度が高いものもあり、科目Bの知識の基礎となります。
そして、科目Aでしっかりと知識を付けた上で、科目Bの過去問演習で出題者の意図を読み取れる「読解能力」が身に付ける事ができれば、情報セキュリティの分野については合格を目指せるようになってきます。3問以上の正解(75%以上の正答率)は、十分に目指せると思います。
アルゴリズムとプログラミング
「アルゴリズムとプログラミング」は全部で16問です。情報系未経験から挑むのであれば、最大の難関となります。
こちらも、基礎は科目Aで身に着け、読解能力は過去問演習で身に着けるという流れは「情報セキュリティ」と同じなのですが、疑似言語などを通してプログラミングの知識が問われてきます。そのため、プログラミングの動作の手続きを判断し、どのような結果が出力されるかを理解できるか(つまり、アルゴリズムがわかるか)がハードルとなります。
もちろん、基本情報技術者試験は即戦力というほどではないため、正直業務では全く歯が立たないようなレベルの理解力でも解答できてしまうのですが、未経験からしてみれば、そもそも疑似言語の読解が困難ということもあります。この点については、ネットで調べてもわからない・効率が悪いと判断したら、別途参考書を購入(または、その科目のみの講座を利用)する事をおすすめします
ちなみに、問題は全て同様の難易度という事は無く、簡単な問題と難しい問題が1/4ほど、残り半数が平均的な難易度です。どうしても理解不能な問題が出てきた場合は、後回しにして次の問題に取り組むようにしましょう。
IT関連経験者・未経験者ごとの勉強方法
科目Bの場合、IT関連の経験者と未経験者では、勉強方法は大きく変えた方がいいです。
IT関連経験者の場合
過去問や問題集の演習だけで十分合格できる可能性が高いです。
重要な「アルゴリズムとプログラミング」については、プログラミングの経験があれば読み解ける可能性が高く、プログラミングをほとんどやらなくなり2年が経過した私でも、解答は可能でした。仮に、直ぐには合格点に届かなくても、過去問の解説文などを読めば、合格に必要な理解が深まってくると思います。
ただし「IT関連だけどプログラミングはやっていない」という人は、過去問の解説文で理解できない部分もあるかもしれません。そういった場合は、「アルゴリズムとプログラミング」に特化したテキストを購入してもいいでしょう。
IT関連未経験者の場合
未経験の場合、「アルゴリズムとプログラミング」については過去問だけでは難しい人が多いかと思います。
「アルゴリズム・プログラミング」は全体の8割の出題となるため、仮に比較的簡単な問題を中心に6問正解できても、情報セキュリティとあわせて最大10問の正解です。これでは合格点に届かないため、苦手だからと言って「アルゴリズム・プログラミング」を捨てるわけにはいきません。せめて、高難易度問題以外はほぼ全て解答できるレベルが必要です。
とはいえ、過去問にもある程度の解説文があるため、過去問演習だけでも未経験から合格できてしまう人もいます。一度過去問演習を行い、解説が理解できなければ直ぐに専用のテキストなどを購入するといった流れでもいいでしょう。
ちなみに、出題されるプログラミングのレベルは、本物のプログラミングの入門書1冊よりは低いです。あくまで「試験に解答できる程度にプログラムが読めればOK」ですので、完璧は目指さない勉強にしましょう。
おすすめの参考書については、以下の記事にまとめてありますので、興味がある方は参考にしていただければ幸いです。
基本情報技術者試験の科目Bの裏技は?
ここからは科目Bの裏技について解説します。
科目Bはある程度の実力がないと合格基準に達しないため、あくまで実力での合格が必要です。裏技については、参考程度にご利用いただければ幸いです。
正解がわからない場合、難しそうなものを選ぶ
こちらは科目Aでも利用可能な裏技ですが、選択肢に計算式の様なものが登場した場合は、難しそうなものを選んだ方が正解率は高い印象です。
そもそも、あまりにも単純な式の場合「この式が正解か、実際に計算して確認してみよう」ということが容易にできます(可能であれば、実際に試験中にやった方がいいです)。
ですので、計算式は難しそう・複雑そうなものを選択した方が若干ながら正解率は高くなります。
とはいえ、余程簡単な出題でない限り、実際に計算して正解か試せてしまうタイプの問題はなかなか登場しないと思います。また、それができてしまう場合は、そもそも「実際に計算して試す」が問題の解き方になっている可能性もあります。
科目Aでよく見た正解の選択肢を選ぶ
科目Bの試験で求められる基礎知識は、科目Aで学習してきた内容が多く登場します。
そして不正解の選択肢の中には「本来、基本情報技術者試験で問われるレベルではない」ものも含まれています。
つまり、「科目Aで正解の選択肢が、科目Bでも正解となる可能性が若干高い」といえます。
もちろん選択肢の内容をしっかり理解し、正解・不正解を判断できることが最善ではありますが、全くわからないという状況に追い詰められたのであれば、少しでも正解率を上げるために利用できる方法です。
IT業界未経験なら、科目Bの対策はしっかりやろう
基本情報技術者試験は、IT業界では新入社員が求められる程度の難易度の試験です。
2023年の試験制度の改訂から、合格率は50%を超えており(昔は20~30%程度)、しっかり対策を立てて勉強を進めていけば、初心者でも十分合格できる試験といえます(昔は簿記3級より難しかったですが、今はむしろ合格率だけ見れば簡単です)。
それでも科目Bで出題される「アルゴリズムとプログラミング」のような分野については、IT関連の学習が未経験の場合は苦戦する可能性が高く、学習時間が想定よりも長くなってしまう可能性もあります。
予算の関係であえておすすめはしませんが、未経験からの受験を考えている場合は、予備校や通信講座などの利用も選択肢の一つとして考えておくといいでしょう。ちなみに、初心者で、基本情報技術者試験の全体的な学習をしたい場合、一番おすすめの講座は「スタディング」です。大手の予備校より低価格で、スマホでの学習を前提に教材が組み立てられているため、未経験からIT業界に入った社会人など、初心者かつ隙間時間で勉強が必要な人にはとくに効果的です。
スタディングの基本情報技術者試験の講座については、以下の記事でまとめました。基本は独学がおすすめですが、未経験から効率的に一発合格を狙いたい人であればおすすめできる内容です。