当ブログでは、「応用情報技術者(AP)」の内容について重点的に扱っていましたが、昨年取得した基本情報技術者(FE)についても難易度や勉強法を紹介しておきたいと思います。
基本情報技術者試験の難易度は?

IPAによると、基本情報技術者は技術レベル2に相当するようです。
レベル1「ITパスポート」 > レベル2「基本情報技術者」 > レベル3「応用情報技術者」
ITパスポートが簡単に取得できるのに対して、基本情報技術者は桁違いに難しいです。
ITパスポートは、業界経験がない方や学生さんでも勉強すればわかる問題がほとんどです。しかし、基本情報については情報系の学生や実務経験者でないとかなり難しい内容となります。
基数計算や論理演算などの数学的な知識に加えて、ネットワーク・データベース・セキュリティの知識、経営・マネジメント系の知識・プログラミング言語を用いたプログラミング全般の知識が必要であり、ちょっとやそっとでは合格できません。
IT業界未経験から基本情報技術者を取得してIT業界へ入りたい方は、かなりの勉強が必要となります。
未経験から基本情報を取得した私のスペック

- 最終学歴は工業系の高校卒(情報処理科ではない)
- 数学が大の苦手(学校のテストは常に30点以下)
- パソコンは日常的に使うがプログラミング経験無し
- IT業界での実務経験無し
このような状態です。実務経験については、勉強をしている段階でIT業界で働けることになったので、少しは身につきました。
しかし、働いていたのはネットワーク監視や評価の現場であったため、プログラミングとは無縁な現場。
一度は業界を離れましたが、2015年からはソフトウェアベンダーのサポート部門で働いています。
実際に試験を受けた結果
- H20春(2008年) ・・・午前【×】、午後(Java選択)【○】
- H20秋(2008年) ・・・午前【○】、午後(COBOL選択)【×】
- H27秋(2015年) ・・・午前【○】、午後(Java選択)【×】
- H28春(2016年) ・・・午前【○】、午後(Java選択)【×】
- H28秋(2016年) ・・・午前【○】、午後(表計算選択)【○】
かなり落ちてるな…よくよく考えたら一発目で午前に受かってれば一発合格だったのか。しかし、当時は午前問題の知識が浅く、テクノロジ問題にも全然慣れていなかったので午前が×な結果に・・・
ちょうどSJC-P(Javaプログラマ)の試験に合格したばっかりだったので、午後のプログラム言語についてはそれほど苦戦せず合格点を取ることができました。
2回目の午後試験でCOBOLを選択しているのは、ちょうど就職試験を受けに行く先がCOBOLでの開発をやっているとのことだったので、習得のために勉強しましたがダメでした。そして就職試験もダメでした…
半端な知識で問題を選択するよりは、得意なものを磨き続けた方が良いという事例です。
その後、業界を離れて久々の受験となりましたが、Javaの知識は定着していなく、厳しい結果に…最終的に表計算の選択で何とか合格となりました。
このように、色々グズグズであっても合格することはできます。
プログラミング未経験からの勉強時間は?
記録していないため、合計○○時間!とは書けませんが、半年間の勉強期間で合格できれば御の字です。
勉強については、試験前に集中してやるよりも、1日1〜2時間を継続してやる方が良いです。(休日は少し多めに)
また、会社の昼休みや通勤電車内でも本を読んで勉強するなど、時間を有効に使う必要があります。
それくらいの気概で勉強を始めていたのですが、なかなか集中力が続かず現実逃避気味でした。
これだけ試験に落ちた私が言うのも何ですが、半年間しっかりスケジュール管理をしてきちんと勉強すれば、未経験でも半年で合格できると思います。
効果的な勉強方法や午後問題の選択については次項で紹介します。
効果的な勉強方法

上の項目で挙げたように、試験前にガッツリ勉強する方よりも1日1〜2時間程度の勉強を継続する方が効果的です。
週に1日くらいは休んでも問題ないです。これくらいのペースでやった方が続きが気になり、より勉強する気が起きます。
試験勉強は過去問を中心にやりましょう。わからなかったところを教科書で勉強する方式です。
教科書からのインプット学習もよいですが、範囲が膨大なのと、内容を一つ一つ覚えても実際に問題として出題される形式はやや異なるため、「問題」に慣れることを最優先しましょう。
最初は、午前試験の勉強を集中してやる方が良いです。過去10年分くらいの問題で、解いたことがない年度のものでも7,8割程度得点できるように頑張りましょう。
私はn進数の知識すら皆無だったので、なぜ「5」が2進数では「101」?って感じでした。16進数では「10」が「A」とか本当に意味不明です。
↑こんなレベルからでも合格できます。安心してください(笑)
同じ問題が繰り返されることも多いので、数をやれば慣れてきます。まずは午前の過去問対策です!2〜3ヶ月での対策を目指しましょう!
午後問題の選択
午後問題については、プログラミング経験がなければ無理せず表計算を選択しましょう。
実際にExcelを扱う上でも役に立って良いです。
基本情報技術者受験と同時にプログラミング言語を学びたい方は好きな言語を選択しましょう。汎用性の高いJavaとC言語がオススメです。
これらの言語を選んだ場合は、表計算よりももう少し勉強時間が必要だと思ってください。
午後問題 問2〜7の選択
午後問題の問1は、必須問題の「情報セキュリティ」です。これは午前試験と同様に過去問を繰り返し解いて覚えましょう。
問2〜7の問題は、6問出題中4問選択です。出題される問題は以下からランダムに出ます
- ハードウェア
- ソフトウェア
- ネットワーク
- データベース
- ソフトウェア設計
- プロジェクトマネジメント/サービスマネジメント
- システム戦略/経営戦略・企業と法務
この中から4つ選択します。いずれも午前レベルよりやや応用的な知識が必要となります。
おすすめはデータベースです。SQL文の穴埋め問題がほとんどで、午前のデータベース問題の知識を確固たるものにするためにも覚えておくと良いです。
私が合格時に選択したのは「ソフトウェア」「データベース」「プロジェクトマネジメント」「経営戦略・企業と法務」です。
必須のアルゴリズム問題
問8は必須の「データ構造及びアルゴリズム」問題

これは見ただけでアレルギー発症の方も多いのではないでしょうか…しかしこちらは配点も高く選択を避けることができないため、繰り返し解いて練習する必要があります。
特に、配列を使った問題がほとんどなので、配列の扱いをしっかり覚えることですね。
たとえば、配列の途中にデータを挿入する場合は、最後尾の配列の添字に+1していって、後ろにずらしてからデータを挿入するなどの動きです。
また、「i>0」の場合と「i>=0」の場合は全く違う結果となること、前判定と後判定の違い、分岐処理と繰り返し処理の違いなども見落とさずにしっかりトレースしましょう。
私もこのあたりのミスでとんでもない実行結果になってしまい、結構ハマりました。慣れてくるとパズルのようで楽しいです。
最終のプログラミング言語
最初にもプログラム未経験であれば表計算がおすすめと書きましたが、アルゴリズム問題の疑似言語がわからないとマクロの問題が解けません。
そのため、アルゴリズムをしっかり勉強してから、表計算の勉強に入った方が良いです。
ITパスポートの表計算問題よりはかなり入り込んだ問題となります。絶対参照と相対参照の違い、そのほか関数の仕様などもしっかり理解した上で試験を受ける必要があります。(関数は暗記しなくても問題用紙に仕様が書かれています)
アルゴリズム問題に時間を使いすぎると、プログラミング問題を解く時間がなくなりバタバタします。同じくらいの時間配分ができるように心がけましょう。
どうしても合格できないときは?

何度も受験して合格できないときは「向いてないのか…」と自信を無くすことになります。
どうしても受からないときは、下位のITパスポート試験に挑戦してみるのも良いです。実際に私も基本情報がダメで、iパスを2週間くらい勉強して受験したところ、9割ほどの正答率で合格できました。
知識が不足しているのではなく、思考力が基本情報に合格できるレベルに達していないのだなと思ったので、再度勉強することで合格することができました。
また、応用情報技術者についても、基本情報より上位の資格ですが文章の問題が多くアルゴリズム問題を避けることもできます。
決して難易度が基本情報 < 応用情報というわけではないので、基本情報の数学的な問題が苦手であれば応用情報にシフトするのも良いかもしれません(午前問題は同じような問題のため、午前は合格レベルに達している必要あり)
別の試験を視野に入れることも検討してみましょう。
まとめ:諦めなければ合格できる
基本情報技術者をはじめとする情報処理試験には、年齢制限や回数制限はありません。
そのため挑戦する気さえあれば何度でも受験することができます。受からなかったときは「能力が足りなかった」と捉えて、合格レベルに達することができるように頑張りましょう!
諦めなければ必ず合格できます!持っていると就職だけでなく実際のIT業界での実務にも役立ちますので積極的に取得したいですね。それでは^^
コメントを残す