基本情報処理技術者試験(FE)は、IPA(独立行政法人情報処理推進機構)が主催する国家試験です。筆者が学生の頃は、第2種情報処理技術者試験と呼ばれていました。
基本情報処理技術者試験は、近年ではDX(デジタルトランスフォーメーション)を背景に注目を集めているデジタルIT人材の登竜門と言える試験となっています。
この記事では、筆者が基本情報処理技術者試験に合格した勉強方法を紹介します。
基本情報処理技術者試験合格までのロードマップ
筆者は、高校卒業後コンピュータの専門学校を卒業し、システムエンジニアを経てベンチャー企業でCIO。その後、独立起業してITコンサルを行ってきたため、基本情報処理技術者試験の合格までの時間は、初学者に比べるとメチャクチャ少なかったハズです。
とは言え、IT業界でバリバリ仕事をしていたのは2000年代初頭まで。その後は、システムエンジニアではなくCIOやITコンサルとして、ITを活用した経営課題の解決を仕事にしています。そのため、基礎知識は20年ほど前に習得した情報のままで、最近の情報はさっぱりという状態でした。
では、一体どうやって合格したのかロードマップを紹介していきます。
ひたすら過去問を解く
筆者の考え方は、習うより慣れろ!がベースなので、兎に角、問題を解きまくって覚えるという方法で勉強しました。
幸い、無料で基本情報処理技術者試験の過去問を解きまくれるWebサイトがあるので、めちゃくちゃお世話になりました。
筆者がひたすら過去問を解きまくったWebサイトはコチラ→「基本情報技術者試験ドットコム」
平成16年春期から令和元年秋期までの午前問題をランダムに出題してくれるWebサイトです。しかも、簡単な解説までついているので、スキマ時間の勉強にはもってこい。
苦手分野を集中的にインプット
過去問を解いていると、自分が苦手は分野がハッキリと分かってきます。筆者の場合、離散数学・システム開発技術・ソフトウェア開発管理技術の正答率が低いという状況でした。
ちなみに、離散数学とはWikipediaによると
原則として離散的な(言い換えると連続でない、とびとびの)対象を扱う数学のことである。有限数学または離散数理と呼ばれることもある。
Wikipedia
と紹介されています。
これだけでは良くわからないので、例題を出すと
問)8ビットの値の全ビットを反転する操作はどれか。
ア)16進表記 00 のビット列と排他論理和をとる。
基本情報処理技術者試験 令和元年秋期 問2
イ)16進表記 00 のビット列と論理和をとる。
ウ)16進表記 FF のビット列と排他的論理和をとる。
エ)16進表記 FF のビット列と論理和をとる。
という感じです。
専門学校時代に勉強して以来、久しく見ていなかったので結構戸惑いましたwww。
システム開発技術・ソフトウェア開発管理技術は、今まで経験したことがないため何となく出題される問題の雰囲気で解答していたので致し方ないところ。つまり、未経験領域はさっぱりダメという事です。
インプットのポイント1.インプットは過去問サイトに解説で
今回、基本情報処理技術者試験の合格に向けたインプット(特に科目A)は、前述した過去問の解説文です。
前述の過去問サイトでは、出題分野を選択してランダム出題が可能なので、苦手分野の問題をひたすら解きまくりました。その際、実際に紙を使って計算して、分かったつもりにならないように意識しました。
特に、離散数学は手を動かして解き方をしっかりと身に付けておかないと、正答できないので繰り返し何度も解きました。
インプットのポイント2.図に書き起こす
過去問サイトでは、問題と解答の他に、問題の解説が記載されています。その解説を読むだけでも良いのですが、最近さっぱり記憶力が落ちてきているので、ノートやマインドマップにまとめました。
インプットした情報を、ノートやマインドマップにアウトプットする事で、整理されて理解力が増します。また、記憶の定着にも一役買っていることは間違いないでしょう。
インプットのポイント3.スキマ時間にインプット
筆者の場合、日中は仕事があり、夜は他の勉強もしたいのでなるべく日中の空いている時間をインプットに使いました。移動時間は休憩時間、食事時間など少しでもスマホが触れる時間があれば、過去問サイトで過去問を解き、間違った問題をノートやマインドマップに纏める。
このおかげで、毎日1時間以上は勉強時間に充てられてと思います。
午後問題(科目B)対策はしっかりと
さて、基本情報処理技術者試験には科目Aと科目Bの2つの試験があります。CBTに変わり名称が変更されました。以前の名称は、科目Aが午前問題、科目Bが午後問題。どちらの試験も、過去問サイトで勉強していれば点が取れるわけではありません。
科目A(午前試験)に関しては、過去問サイトでひたすら問題を解きまくっていれば、自然に合格点が取れるようになります。しかしながら、科目B(午後試験)は過去問サイトでは対策ができないのです。
科目B(午後試験)は、疑似言語によるアルゴリズムの選択問題です。
例えば、こんな問題が出題されます。
問 次の記述中の「 」に入れる正しい答えを回答群の中から選べ。
プログラムを実行すると、「 」と出力される。
[プログラム]
基本情報技術者試験(科目B試験)サンプル問題(20問)セット(問題)
整数型: x ← 1
整数型: y ← 2
整数型: z ← 3
x ← y
y ← z
z ← x
yの値 と zの値 をこの順にコンマで区切り出力する
解答群
ア 1,2 イ 1,3 ウ 2,1 エ 2,3 オ 3,1 カ 3,2
疑似言語と言っても、文法が難しいわけでもなく、基本的な文法だけで出題されます。また、アルゴリズムも上から順番にしっかりと追いかけていけば正答にたどり着くことは難しくありません。但し、日ごろからプログラミングしている人なら・・・。
つまり、日ごろからプログラミングをしていな人にとっては、正答にたどり着くことは可能ですが、想像以上に時間がかかってしまう可能性があります。筆者は、日ごろからプログラミングを行っていないため、科目Bの問題を解くのには想像以上に時間を要してしまいました。
科目Bの対策としては、科目B対策の書籍を購入して解いておくのオススメです。ちなみに、筆者が購入したのがコチラ。
基本情報処理技術者試験合格までの勉強時間
前述した通り、筆者はIT系の仕事をしてきたこともあり、それなりに知識が残っていたため勉強時間は少なかったです。
実際に勉強した時間は、20時間もしていないハズ。
スキマ時間に過去問サイトで過去問を5問くらい解いて、科目Bの練習問題を1日1~2問解いていたくらいです。勉強期間は1週間ほど。
過去問サイトでの正答率は約75%位でした。100%正答しなくても合格はできるのは安心材料ではないでしょうか。
まとめ)基本情報処理技術者試験(FE)に合格した勉強方法
基本情報処理技術者試験は、新卒でIT系企業に入社するなら入社前には合格しておきたい国家資格です。筆者が学生の頃、第2種情報処理技術者試験と呼ばれていた頃と比べると、難易度も下がっているように感じます。
特に、試験領域が3分野に分かれているので、苦手分野があったとしても残りの分野でカバーできるので、理系の人でなくても1ヶ月も勉強すれば合格できるくらいのレベル感となっています。
今回、筆者が合格した勉強方法は
- 過去問サイトで過去問を解く
- 苦手分野は集中的にインプットとアウトプット
- 科目B対策
です。
特に時間をかけたのが、科目B対策。
日ごろから、プログラミングに触れていないとアルゴリズムは簡単だとしても、値を追いかけられなくなるので注意が必要。科目Bは、どの変数にどんな値kが入るのかをしっかり追えることができれば超簡単。逆に言えば、変数に入っている値を追いかけられないと正答にたどり着けません。
科目Bを勉強するときは、変数と値がどう変化するかをしっかり追えるようなメモの取り方を身に付けてください。