基本情報技術者試験出題の見直し(Python追加)

Pocket

ネットニュース等でも話題になっているFEの出題範囲見直しについて考えてみました。

久々の大幅変更ですね。

特にAIやPythonといったワードが注目されたのだと思いますが、折しもCOBOLの廃止が厚労省の毎月勤労統計不正問題でCOBOL技術者の減少について言及されたタイミングと重なったことで、耳目を集めたのでしょう。

今回の記事は以下の内容です。
————————————-
①変更概要
②変更内容について
③試験への影響その1(言語)
②試験への影響その2(配点)
②試験への影響その3(その他)
③所感

————————————-

①変更概要
さしあたり話題になっている午後問題の変更は以下です。

※詳しくは「プレス発表 基本情報技術者試験における出題を見直し」参照

②変更内容について
今回の変更は「Python追加」、「COBOL廃止」だけではありません。よく読むと以下のように変更されることが分かります。

(1)午後問題のプログラム言語の変更(2020年春試験から)
→ COBOL廃止、Python追加
(2)午後問題の配点見直し(2020年春試験から)
→ セキュリティ(12点→20点)、アルゴリズム(20点→25点)、言語(20点→25点)、他(48点→30点)
(3)午後問題の回答数見直し(2020年春試験から)
→ 7問(必須2問+選択5問)→5問(必須2問+選択3問)
(4)午前試験の出題範囲見直し(2019年秋試験から)
→ 理数能力を問う問題の増加

今回注目されたのは「Python追加」と「COBOLの廃止」ですが、この件自体はさほど試験として影響はないとみています。最も大きな変更は配点でしょう。

以降、それぞれの変更点について記します。

③試験への影響その1(言語)
まずCOBOLの廃止については、この言語に拘る人数も少ないと思われますので影響は軽微でしょう。

Pythonの追加についても、さほど奇抜な出題にはならないと睨んでいます。なぜなら他の言語問題と難易度や目的を同じくする必要があるからです。

Javaはオブジェクト指向特化の問題ではなく、コレクションやクラスの基礎的な記述の習得で解答できます。表計算もマクロを使ったアルゴリズム能力を求める内容になっています。

ですのでPythonも同様、アルゴリズム的な問題になると推測します。必要な知識は基本的な記述法や辞書、リスト、タプルといったデータ型の扱いに留まるのではないでしょうか。

穿って考えても、午前の理数問題増加の影響で行列や方程式を使った出題ぐらいかなと思っています。特定のライブラリに依存する問題やtensorflow、kerasなどの機械学習は出題されないでしょう。

大穴で機械学習オンリーの出題という可能性もありますが、その場合は公式に発表されるはずです。

Pythonについては2019年10月に言語仕様、シラバス(知識・技能の細目)、サンプル問題が公開されるようなので、公式情報を待ちます。

④試験への影響その2(配点)
私としてはこれが一番影響が大きいと思っています。

アルゴリズム能力に依存する問題が40点→50点と大幅増加しており、プログラミング能力がなければ合格できない試験になりました。
(「アルゴリズム(問8):20点→25点」、「言語(問9~13):20点→25点」)

今までは配点40点のうち、1、2問正解できれば合格できる見込みがありました。今回の配点では1、2問正解するだけでは残りが50点しかなくなり、合格の60点に到達できなくなります。

つまりアルゴリズム回避の以下パターンでは合格できなくなります。
(変更前)その他問題×90%+アルゴリズム×10%+言語(表計算の文章問題)×20%
問1~7(12点×5問)×90%+問8(20点)×10%+問13(20点)×20%=60点
(変更後)その他問題×90%+アルゴリズム×10%+言語(表計算の文章問題)×20%
問1(20点)×90%+問2~5(30点)×90%+問6(25点)×10%+問11(25点)×20%=52.5点

基本情報技術者試験はITエンジニアを広く受け入れる、IT系の登竜門的な資格という認識だったのですが……。プログラマはいいとして、サーバーエンジニアやネットワークエンジニア、設計者などに厳しい変更ですね。

とはいえ技術を知らなくても文章題を読解能力で読み解き合格できていたのもどうかと思うので、妥当ではあるのでしょう。

情報セキュリティが12点→20点になった点については配点こそ大きいものの、さほど影響はないでしょう。元々学習必須の分野でしたし、覚えるべきことも限定されています。

⑤試験への影響その3(その他)
さて、残りの変更点についてです。

問題数の変更は、配点の次に大きく影響してくるでしょう。

今までの午後問題は「ハードウェア」と「ソフトウェア」のどちらかが出題されない可能性と「データベース」が出題されない可能性を考えて勉強する必要がありました。

今回の変更により勉強しても出題されない可能性のある分野が一気に増えました。

特に文章が読めれば正解できる系統の「プロジェクトマネジメント」、「サービスマネジメント」、「システム戦略」、「経営戦略・企業と法務」に関しては全て合わせて1問しか出題されません。

確かにIT入門から経営者の観点でITを学ぶ必要性は薄いですよね……それにしても随分と思いきった変更だと感じます。

反対に「ソフトウェア」、「ハードウェア」、「データベース」、「ネットワーク」、「ソフトウェア設計」の5分野からは3問出題されます。

技術を重視している点が見受けられます。こちらは各分野とも、今まで通りしっかりと勉強しておく必要があるでしょう。

そしてもう1点、記載が小さくあまり話題になっていませんが午前問題の出題範囲見直しが公表されています。こちらは2019年秋試験からとなっており、だいぶ近い時期です。

原文では「理数能力を重視し、線形代数、確率・統計等、数学に関する出題比率を向上」とあります。

確率や数学系の問題は今までも出題されていましたし、線形代数は行列とベクトル程度と思われます。

高校で行列を教えなくなったようなので、若い人は行列と積、転置、連立方程式との関係ぐらいは押さえておいた方が良いかもしれません。

⑥所感
まず基本情報技術者試験は完全にプログラミング能力が必須の試験になりました。

プログラミング能力は大事です。元々IPA試験で唯一、基本情報だけでプログラミング能力が必須とされるのは疑問でしたし、応用情報では選択問題なので回避できる仕様です。スペシャリスト区分にプログラマ関係のものが欲しいなとは思っていました。

ですが、万人に求めるにはレベルが高すぎないかなとも思うのです。

基本情報のアルゴリズムの問題は、プログラマから見てもそれなりに難易度が高いです。

それこそ日常的にプログラミングしている人やアルゴリズム大好き人間でないと正答率を上げるのは難しいようなトレース(処理を追いかけること)に重点が置かれています。

全てのIPA試験の入り口となる基本情報でそれを必須とするのはどうなんでしょうかね。

とはいえプログラマ特化の試験を新設するのは問題を準備するコスト等の関係で難しいでしょうし、基本情報とは別の基礎試験を用意すると折角のネームバリューが損なわれる可能性もあるから、仕方ないのかなとは思いますが。

反面、最近の動向を取り入れる傾向は素晴らしいと感じています。

応用情報でもここ数年、流行りの技術に関連するテーマが増えていました。
・H30秋:jenkins→CI(継続的インテグレーション)
・H30春:クラウド→クラウドサービス
・H29秋:RESTful→WebAPI
・H29秋:Openflow→SDN(Software Design Network)
・H29春:スクラム開発→アジャイル開発

大勢を占める技術が中々取り入れられない国内の事情において、IT系を代表する試験が率先して最新技術動向に反応してくれるのは嬉しいと感じます。日本のIT業界は開発者の技能が高くても活躍できないケースが多いですから……。

というわけで、最後はIT業界に対するただの感想です。

そもそも日本のIT業界は海外スタイルの技術が導入し辛い現状があります。私も現場を離れて久しいですが、漏れてくる声を聴く限りは未だ悪しき文化が幅を利かせているように感じます。
・前例主義に拘泥しすぎる管理者
→新しい技術の導入を阻み、効率化を阻害する。
・顧客と営業の責任の押し付け合い
→顧客の信頼を損ねる。少しでも利益を大きく見せようとごまかす受注者と、少しでも安く発注しようとする顧客のやり取りで欺瞞に満ちた会議から生まれた仕様が開発を主導する。
・顧客のIT能力と意識の低さ
→開発チームと協力してより良いものを作るためには顧客側の協力が必須。にも関わらずよく分からないから責任ごと受注側に丸投げする。または不信感から本音が聞けない。
・下請け構造1
→伝言ゲームのように顧客の要件を歪め、不要な機能が実装されることなどざらにある。しかも直接話ができても、顧客のIT能力と意欲の低さの問題が付きまとう。
・下請け構造2
→管理のしやすさだけを重視する。最新技術や効率化、よりよいものを作る必要はなく、ただうまく枠に収まってくれる人数とそれなりの技術者だけを求める。技術者は育たず、やりがいや意欲も失われていく。

最近は大手側で新しい技術を取り入れる話が聞こえてくるようになりました。

人手不足も幸いして、今後上記のような悪しき文化が滅びていくことを期待しています。

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です