情報処理技術者試験・応用情報技術者(AP)の令和3年度春季解答を合わせながら、自分の解答を見つめ直す

応用情報技術者

  1. 前置き
  2. 全体結果
    1. 令和2年度秋季(前回)
    2. 令和3年度春季
  3. 午後の各大設問についての振り返り
    1. セキュリティ
      1. 2-1 本文中の[a]に入れる字句を回答群から選ぶ
      2. 3-1 DNSサーバに対するインシデントの再発防止対策を回答群から選ぶ
      3. 3-2 本文中の[b]に入れる字句を回答群から選ぶ
      4. 3-3 DNSサーバがインターネットからアクセスできる状態で想定されるサイバー攻撃を回答群から選ぶ
      5. 3-4 本文中の[c]に入れるサイバー攻撃の名称を答えよ
    2. プログラミング
      1. 1-2 クラスタ分析が図1のように完了したときにP1と同じクラスタに入る点をすべて答える
      2. 3-2 本文中の[キ]に入れる適切な式をTsとSumを使って答えよ なおSumはN-t個の全てのTsの和とする
    3. データベース
      1. 1 下線1について実現できない業務要件を40字以内で具体的に答えよ
      2. 2-1 本文中[a]に入れる適切な字句を解答群から選ぶ
      3. 2-2 図3の[b〜e]に入れる適切な関連や属性を答えよ
      4. 3-1 図4中の[f〜g]に入れる適切な字句を答えよ
      5. 3-2 図4のSQLを実行する頻度を2字以内で答えよ
      6. 4 本文中の下線2について、追加した集計表の主キーを答えよ
    4. 組込みシステム開発
      1. 1-2 本文中の[b]に入れる適切な数値を答えよ
      2. 2-2 決定した高速クロックの周波数はf0の何倍か答えよ
      3. 3-2 処理フローの図において、網掛け部の判定結果がYesとなるのは、音量がどのような場合か
    5. 情報システム開発
      1. 1-1 本文中の[a]に入れる適切な数値を答えよ
      2. 1-2 本文中の[b]に入れる適切な字句を答えよ
      3. 2-2 下線2について、プログラムの保守性が下がる理由を述べよ
  4. 全体的な午後問題の感想
  5. 今後の方針
  6. 最期に

前置き

お久しぶりです。

資格取得の勉強やら激動のプライベートを経て、1年ぶりにブログ再開の目途が立ったので再開しますのです。

いきなりですが表題の資格は2回目の挑戦ですが、また落ちてしまいました

まあ色々語りたいのですが、前回と違って今回は午後問題対策をしっかりと行っていたのにも関わらずの不合格だったので、自分を見つめ直しながら答え合わせをしていく過程をブログとして公開することにします。

全体結果

令和2年度秋季(前回)

ソフトウェア職場1年目での初受験。

勉強期間は約半年ほどで、半年の間に長男が生まれたり、賃貸から持ち家への引っ越しがあったりで寿命を削りながら勉強をしていました。

幸か不幸か業務がほぼテレワークだったおかげで、勉強時間は意外と確保(プライベート時間は壊滅)出来ました。

勉強初期(3か月間程度)は、職場の先輩から借りた「情報処理教科書 応用情報技術者 テキスト&問題集」の2019年度版を通読し、自分なりにWindowsのOneNoteを用いてまとめていました。

その後2か月間はひたすら応用情報技術者試験ドットコムさんで午前問題の過去問を解きまくり、教科書でまとめた身になっていない情報を試験勉強用の知識に落とし込んでいきました。

最後の1か月は、午後問題を午前と同じ過去問ドットコムにて、解いていました。

全体的な敗因は、午後問題対策にかける期間が短かったことと、午後問題における問題文の状況把握に時間がかかってしまっている点になります。

細かい点で行くと、

  1. プログラミング:午後問の傾向把握不足と焦りにより、穴埋め部分をJavascript風に書いてしまって大幅に減点している
  2. データベース:午前がギリギリ分かる程度の実力不足の状態で選択して、SQLで沈没
  3. 情報システム開発:「実務でアジャイルのスクラム開発やってるし」、と選択したものの経験半年程度では、単語はともかく記述に不安要素がたっぷりとのってしまった。

といったところです。

令和3年度春季

午後の点数に見覚えがありますね。

ソフトウェア職場での経験は1年を超えましたが、ずっと同じプロジェクトでクラウド開発のフロントエンドやってるので情報処理の資格とあんまり結び付いていません。勉強期間は前回の合否が発表された翌月(2021/1)~となります。3か月くらい

相変わらずほぼテレワークなので、勉強時間はまあまあ確保できていますが、子供が成長したので休日は散歩や買い物でほぼ潰れるようになったのと、平日は平日で会社の職場メンバーによる勉強会がほぼ開催されていた(毎日1時間。テーマは機械学習・AWS・テスト技法など多岐にわたる)ので、いうほど資格勉強はしていません。

勉強の方法としては、午前問題は前回ある程度仕上げている関係上、今回はほぼ午後対策に費やしました。

午前問題は5分10分のスキマ時間で、たまに過去問ドットコムの復習モード触るくらいだったので、トータルで3~4時間程度でしょうか。
流石に、試験2日前くらいから英略語(SVGとかCRMみたいなの)を中心にある程度はやりました。対策無しで75点だったので、まあまあ身になってきているという事でしょうか。あとは実務を積んで初見問題に難なく答えられるようになってこれば、高度試験の午前Ⅰを含めて安泰と言えそうです。

午後は、新たに参考書を一冊購入しました。界隈では緑本と呼ばれる「応用情報技術者 午後問題の重点対策」という本です。

ちゃんと午後問題をどのような傾向で対策をしていけばいいか解説されているので、実務経験が薄くても、問題文から回答が導きやすくなっています。
私の場合は、「セキュリティ(必須)」「プログラミング」「データベース」「ネットワーク」「組込みシステム開発」「情報システム開発」をこの本で対策しました。
が、結果は上記のように前回と同じ51点です。おかしいなぁ・・・

午後の各大設問についての振り返り

公式で出た解答を基に採点していきます。

SNSでもボヤきましたが、セキュリティとデータベースでコケていて、他の分野は7,8割程度なので、挽回に失敗した感じですね。

セキュリティ

設問3が地獄です。

特に痛いのは、設問文を複数回答と読み違えてしまった3-1です。

2-1 本文中の[a]に入れる字句を回答群から選ぶ

問題文章付近は、「OSは最新であったが、DNSソフトウェアのバージョンが古く、[a]を奪取されるおそれがあった」というものと「R社の権威DNSサーバのDNSソフトウェアの脆弱性を悪用した攻撃によって[a]が奪取された可能性が高いと考え~」というものがあります。

選択肢
ア:管理者権限
イ:シリアル番号
ウ:ディジタル証明書
エ:利用者パスワード

ディジタル証明書の秘密鍵と完全に勘違いしています。あとは、DNSサーバの仕組みをあまり理解していないので、何を盗まれると表の現象(時間外にログインされた形跡がある)が発生するのかわかっていません

3-1 DNSサーバに対するインシデントの再発防止対策を回答群から選ぶ

選択肢
ア:逆引きDNSレコードを設定する
イ:シリアル番号の桁数を増やす
ウ:ゾーン転送を禁止する
エ:定期的に脆弱性検査と対策を実施する

複数選択と勘違いしています。エは確定で、イとウは違うと確信、アがいまいち分かっていないせいで、なんとなくアを選択。DNSに対しての知識不足が目立ちます。

3-2 本文中の[b]に入れる字句を回答群から選ぶ

問題文章付近は、「R社のWebサーバにEV証明書を導入し、WebブラウザでR社サイトにHTTPSでアクセスすると、R社の[b]を確認できる」とあります。

選択肢
ア:会社名
イ:担当者の電子メールアドレス
ウ:担当者の電話番号
エ:ディジタル証明書の所有者

国語の問題でミスってます。EV証明書にはディジタル署名書の所有者が載る(ですよね?)のですが、問題文章には【R社の】とついているので、エを選択すると『R社のディジタル証明書の所有者』となってしまい、R社のディジタル証明書の所有者=R社なので、日本語的にちょっと違和感があります。『R社の会社名』とすれば、違和感はありません。

個人的に愚痴るなら、選択肢が悪いですね。知識を問うてなくない?

3-3 DNSサーバがインターネットからアクセスできる状態で想定されるサイバー攻撃を回答群から選ぶ

選択肢
ア:DDoS攻撃
イ:SQLインジェクション攻撃
ウ:パスワードリスト攻撃
エ:水飲み場攻撃

DDoS攻撃もSQLインジェクション攻撃も概要は分かっているのですが、逆に言うと表面的な概要しか知らなくて、攻撃例などをしっかり知識として深堀りしていないので、DDoS攻撃はウェブサイトに対して行われる(サーバに対しても行われることに気付けなかった)ことやSQLインジェクション攻撃はアプリケーションに対して行われる(アプリケーションはWebサーバで動いているからこれかな?と変な解釈をした)ことが分かっていても、それが問題の事例まで結びついていない状態でした。

3-4 本文中の[c]に入れるサイバー攻撃の名称を答えよ

問題文小付近は「R社のキャッシュDNSサーバに、偽のDNS応答がキャッシュされ、R社の社内LAN上のPCがインターネット上の偽サイトに誘導されてしまう[c]の脅威があると考えた。」とあります。

まず、DNSキャッシュポイズニングという攻撃の存在を完全に忘れているのでアウトです。

そして、偽サイトに誘導するという文から水飲み場型の攻撃ではないかと考え、水飲み場攻撃といえばクロスサイトスクリプティングな気がするという連想ゲームで答えを書きました。よく考えればクロスサイトスクリプティングは掲示板などにくっつくものなのでDNSサーバは関係ないですね。

どちらにしとDNSキャッシュポイズニングという言葉が抜けているのでダメダメです。

プログラミング

統計学への理解が浅い部分がいくつかの設問を落とす原因にはなってますが、プログラム部分は実務経験が少し役立っている気がします。

1-2 クラスタ分析が図1のように完了したときにP1と同じクラスタに入る点をすべて答える

図1はIPAの過去問を確認してみてください。(貼るの面倒でした)

プログラムの穴埋めは解けても、最後までクラスタ分析がどのように動くか理解しきれませんでしたなんか書いといて部分点を期待しなかったのも悪手だったかも・・・

本番の緊張からか、クラスタ分析の動作を時間内に理解できず(ちなみに解答を後回しにしました。結果、空欄です。)。今までの過去問やR2秋の問題もアルゴリズムは時間内に理解はできていたので、今回のクラスタ分析はどうにも相性が悪かったようです。

3-2 本文中の[キ]に入れる適切な式をTsとSumを使って答えよ なおSumはN-t個の全てのTsの和とする

これもクラスタ分析の理解が時間内に出来なかったが故の未回答問題です。

本当にひどい。

でも他の設問に自信があったので、プログラミングは選択したままでした。

データベース

今回はSQLちゃんと勉強しましたが、SQLどころかER図含めてほぼ死亡しました。こりゃ他の分野でカバーできないわね。

巷ではここ最近で一番難しいと言われているそうです。

1 下線1について実現できない業務要件を40字以内で具体的に答えよ

上の画像では未回答としていますが、問題に理由を書き込んでいないだけで、解答用紙には書いてます。(なんて書いたかおぼろげ)

過去5年間のデータが使えないとか書いた気がするので、もしかしたら微妙に部分点もらえてる可能性が微レ存。

2-1 本文中[a]に入れる適切な字句を解答群から選ぶ

本文には、「問合せの処理性能を考慮して、データモデルの構造には[a]構造を採用した」とあります。

選択肢
ア:3層スキーマ
イ:オブジェクト指向
ウ:スタースキーマ
エ:スノーフレークスキーマ
オ:第3正規形
カ:非正規形

3層スキーマやスタースキーマのことをあまり理解していないのが仇になっています。3層スキーマが概念・論理・物理からなることは分かっていても、この設問で問われている処理性能を考慮した構造に該当するかが分かっていません。スタースキーマもしかり。この辺の知識は言葉の上っ面でしか覚えていないのが反省点ですかね。

「過去問で見たスタースキーマっぽくないけど、スノーフレークスキーマとか聞いたことないから3層かな」程度の考えで選んでミスってます。

2-2 図3の[b〜e]に入れる適切な関連や属性を答えよ

ER図舐めてました。過去は現状のER図や改善案のER図の穴埋めをするかたちだったので、難易度はほどほどでしたが、新しいデータモデルを作成する穴埋めがこんなに難しいとは思いませんでした。このあたりは、デスペの勉強すると力が付きそう。応用情報レベルの勉強では、あまりできなさそうな気がします。(個人の感想)

3-1 図4中の[f〜g]に入れる適切な字句を答えよ

こちらはSQLの穴埋めです。

勉強自体はちゃんとしたので、fがINNER JOINであることやgがGROUP BYであることと基本的な構築は問題なかったのですが、なぜかUSINGを使ってしまった点と、INNER JOIN時のGROUP BYでUSINGしたJ.貸出予約コードを条件に含めてしまいました。SQLはちょいとドツボにはまると一気に崩れ去るので怖いですね。もしかしたら部分点くらいはもらっているかもしれませんね。

3-2 図4のSQLを実行する頻度を2字以内で答えよ

もしかしたら「毎日」の解答でもあっているかもしれません。逆に日次って単語使いますかね?ここはちょっと疑問点かも。

4 本文中の下線2について、追加した集計表の主キーを答えよ

下線2「データマートとして集計表を追加した」

この設問もデータモデル構築が想像できなかったが故の、ほぼ未回答問題です。苦し紛れに年月日と書いていますが、部分点は無いでしょう。

組込みシステム開発

難化したと言われています。私の場合、分野は違えど製造業で10年働いてきているので、文章の理解がしやすい組込みシステム開発は選択にためらいがありませんでした。ただ、手計算苦手なのと、早とちりな性格が結果に表れていますね。自分の弱点ではある。

1-2 本文中の[b]に入れる適切な数値を答えよ

なぜ2.7ミリ秒になったのかの過程が問題用紙に書いていないので、ちょっと考察が出来ない設問。元々、電気の知識が中卒+α程度しかなく、組込み系は業務経験が無いので計算問題は割と感覚で解いてます。

組込みは例年の過去問だと割といい感じで解けてましたし、実際今回もこの設問以外は問題ないので、電気のお勉強をすれば、底上げにはなるかもしれません。

いずれ仕事で組込みやることになったら真面目に勉強します。(組込みプロジェクトに関わるとテレワーク日数が減りそうで嫌ですが。)

2-2 決定した高速クロックの周波数はf0の何倍か答えよ

自分のメモにはTf=約3倍、Ts=20倍、Ta=5倍と計算されており、その中で最も数値の大きいTsの値を解答としています。実際の正解は最も小さいTfの値だったわけですね。

問題の近くの文章には、「消費電力が最も抑えられる周波数について、表1を基に決定する。」とあります。

問題文章付近をよく読めば、一番消費電力が小さい=実行時間が短く済む=表の3つの周波数から1つ選択することが容易に想像できますね。

ただ、試験時の私は設問の「f0の何倍か」という部分のみに着目してしまい、表の3つのうち、最も大きいやつの倍数が当てはまるだろうととトチりました。

3-2 処理フローの図において、網掛け部の判定結果がYesとなるのは、音量がどのような場合か

40字という制限なので、それぞれのキーワードが入っているかが大事と考え、部分点ではないかと△を自己採点しました。

このあたりは完全に正解かどうか判断が難しいですが、字数制限が多すぎても大変になる一例かなとも思いました。

情報システム開発

ブロッキングI/Oとか何それっていう問題でした。が、そこが分からなくて苦しいのは設問1くらいで、その他の設問は非同期処理に慣れていれば答えやすい問題でした。

1-1 本文中の[a]に入れる適切な数値を答えよ

手計算途中でミスってます。このあたりでは、試験の残り時間が短くなってきているので、計算問題でのケアレスミスが怖いですね。実際間違えました。

1-2 本文中の[b]に入れる適切な字句を答えよ

問題文中にヒント無しで、正直これを答えるにはこの単語と概要を理解していないと正解出来なさそうです。

某巨大掲示板や某情報処理掲示板で正答している人は1人だけ(コンテクストと書いていましたが問題ないとは思います)しか見かけませんでした。

2-2 下線2について、プログラムの保守性が下がる理由を述べよ

答えとは文章的に全く違いますが、もしかしたら正解になっている可能性はあるかもしれません。他の人たちも非同期に動くことを解答としている人が多めでしたので。

某掲示板では1-2のコンテキスト正答の人が唯一、可読性が下がると書いていました。凄いですね。

全体的な午後問題の感想

前項でも書きましたが、セキュリティとデータベース以外7~8割とれているのに残りの2つが壊滅しているが故の不合格でしたね。

ちなみに予備で勉強していたネットワーク(例年からして難しい分野)も、今回は難化していたらしいです。

必須のセキュリティは、サイバー攻撃に関する部分が知識不足だった(午後対策の勉強時はもっと知識のなかった暗号化と防御システムについてばかりやっていました)ので、「サイバー攻撃ももうちょい根詰めればよかった」という点が反省ですね。

データベースは今回完全に選択ミスです。例え、セキュリティが他項目と同じ7~8割とれていたとしても、データベースがここまで壊滅していると60点はいかないでしょう。

システムアーキテクチャを予備として午後対策勉強しておけば逃げれたかもしれませんが、対策分野を増やしすぎると、どれ切っていいかわからなくなる優柔不断さがある(難しい問題から逃げる勇気があんまりない)ので難しいところです。

データベースの勉強が仕事に最も役立つと考えた末の背水の陣でしたが、見事に池ポチャしましたね。

次回、応用情報を継続するにしろ、あえてデータベーススペシャリスト(デスペ)を目指すにしろ、デスペの勉強をすることが次のステップへの最適解かもしれません。

ちなみに次項でも触れますが、マネジメントやストラテジ系の午後問を選ぶという選択肢はありません。会社から資格取得の報奨金資格保持に対する給与UPがあれば、マネジメント選んででも応用情報合格をやっていたかもしれませんが、両方とも無いですしね。

なんか変なこだわりで逆に頭悪いですが、自分でも制御できない・・・

今後の方針

個人的に今のところ、応用情報を取得することに対してのモチベーションがあまりなくなってきました。(応用情報レベルでの大体の知識は身に付いてきた。落ちといて言うのはかなりカッコ悪いですが。)

ので、ハードルは高くなってしまうのですが、データベーススペシャリストネットワークスペシャリストの資格を取るつもりで勉強しようかなと思っています。

申し込みはこれらの資格で行おうと思いますが、もし会社で報奨金制度とか出来たら、その時に応用情報取ればいいですしね。

他の理由付けとして実務や趣味に役立ちそうなのは、データベースやネットワークの知識であって、マネジメントや監査の知識ではない(5~10年後にはプロジェクトマネージャの知識がいるかもですが)ので、という感じですね。

他には、エンベデッドシステムスペシャリストシステムアーキテクトの試験も実務には役立ってくれるかもしれませんが、前者はテレワーク三昧の今の環境にそぐわないから後回しにしようという点、後者は論述試験やりたくないという点で、優先度低な感じですね。

なんにせよ、応用情報取らずに高度試験行うのはリスクも高いので、しっかり勉強していかなければなりませんね。

最期に

久しぶりの投稿で、はしゃいだ文字数になってしまいました(7500文字近く)が、これからは勉強に根を詰め過ぎず、ブログ更新もやっていきたいです。

タイトルとURLをコピーしました