ITとかCockatielとか

技術のこととか。飼鳥(オカメインコ)のこととか。気になったこととか。基本的には備忘録。

情報処理技術者試験 システム監査技術者 結果<合格>と対策の振り返り

2020年(秋)のシステム監査技術者試験に合格しました。

 

■点数 ※少し丸めて書きます。

 午前Ⅰ 75点

 午前Ⅱ 96点

 午後Ⅰ 80点

 午後Ⅱ A

 

合格率の低い試験なので発表まではいつもどおりドキドキでしたが、今回は対策が十分にできていたので、なんとなく自信がありました。

自信を持つことができるようになった試験対策方法について、振り返りつつ共有しておきたいと思います。

 

■■午前Ⅰ■■

午前Ⅰからフルで受験するのは十数年ぶりでした。

これまでは午前Ⅰ免除で食いつないできたのですが、今回はそれがありません。

あまりにもブランクが長いので、念のため午前対策本を1冊購入し取り組みました。

 

翔泳社 情報処理教科書 高度試験午前Ⅰ・Ⅱ

www.shoeisha.co.jp

※実際に使ったのは2020年度版です。

 

<対策本の使い方>

1週目は頭から順番に回答していき、解けなかった問題にチェックを入れておきます。

2週目は解けなかった問題だけをピックアップして復習します。

このあたりで飽きてくるので、情報処理の過去問に移行します。

 

<過去問>

過去問は過去5回分もやれば十分で、終盤は「見たことあるな」という問題が増えてきます。これが打ち止めの合図になります。

問題集を事前にやっておけば、過去問で合格点を切ることはほぼないでしょう。一方で出題の範囲が広いので、90点以上の高得点を目指すことは難しいものでもあります。少々余裕をもって(70点~80点くらい)いれば自信をもって大丈夫です。

合格点を切る場合は体系的な学習不十分なので、対策本に戻ったほうがいいです。

 

<ポイント>

あくまでも試験の入り口になりますので、対策には時間をかけすぎない方がよいです。

上に書いた通り午前Ⅰで完璧を追求する必要はありません。

 

 

■■午前Ⅱ■■

ここからは、試験区分の参考書を使っていきます。

学習の流れは午前Ⅰと同じです。

 

翔泳社 情報処理教科書 システム監査技術者 

www.shoeisha.co.jp

 

<対策本>

試験区分に合った情報処理教科書(翔泳社)を1冊購入します。

他の対策本は不要です。(他の高度試験でも同様です)

まずは過去問パート以外の教科書的な部分を読み切ります。

その際に、要点を整理したメモを作ります。

今回はブログにまとめていきました。

sik-bug.hatenablog.com

 

通常は教科書に沿ってまとめていきますが、内容をよく見るとIPAが公開しているシラバスの内容そのものなので、基本的にはシラバスに沿って整理をしています。

システム監査に限っては、シラバスも一緒に見ておいた方が理解は深まると思います。

 

<過去問>

過去問は午前Ⅰと同様、過去5回分もやれば十分です。

午前Ⅰより範囲が狭い分、高得点がとりやすいため、学習を進めると80点~を安定的にとることができます。

点数が伸びない場合は理解不十分なところがあるので、教科書に戻ったほうがいいです。 

<ポイント>

高得点を狙えますが時間を割くべきは午後対策です。

そこそこのところで切り上げましょう、と言いたいところですが「考え方」は午後につながるので、ここはきっちりやっておきましょう。

 

 

■■午後Ⅰ■■

<対策本>

過去問を使って学習を進めていきます。

最初は対策本に掲載されている問題を順番に解いていきます。理由は丁寧な解説があるからです。問題は本番さながらで取組み、必ず回答を自分なりに出してから答え合わせをしてください。(詳細後述)

 

<過去問>

教科書だけでもそれなりのボリュームはありますが、ジャンル別に整理されているため、かなり古い問題が混ざっています。

出題には時間軸での傾向というのもあるので、直近3年分くらいは過去問を解いておいた方がよいです。こちらは教科書が終わってからでよいです。

 

<ポイント①>

かなり重要なポイントです。

まず、過去問に取り組む際には「ロジカルに解を導くこと」に注力してください。

教科書の解説を読むとよくわかりますが、「本文中に〇〇の記載がある、だからXXが回答として適切である」といった記載があります。さらに読み込むと、本文で得たヒントから解にたどり着くまでには論理的なプロセスがあることに気づきます。

そして非常にややこしいのは、「ロジカルに考えれば100人中100人がその答えにたどり着く”わけではない”」ということです。これは私感ではありますが、模範解答を見て「え~、そりゃないよ・・・」と思った人は数多いと思います。

但し、問題として出されている以上、出題者なりの論理展開をもって模範解答が作られているはずなので、「考え方を見抜く癖をつける・訓練する」というのがここでの最も重要な取組み事項となります。

かなりストレスの高い作業ですが、ここでも100%を目指す必要はありません。

60%以上の思考が出題者と合致すれば午後Ⅰは通過できるため、多少の「え~」には目をつぶりましょう。

 

<ポイント②>

回答を書く際には、出題意図の自分なりの解釈と、解にたどり着くまでの思考プロセスも一緒に書き起こしてみてください。

教科書の解説と照らし合わせることで、どこに思考のギャップがあるかを確認することができます。

これを繰り返すことで、「情報処理試験の”システム監査人”」という思考回路が徐々に出来上がってきます。また、多くの問題に取り組むことで解の導出パターンが自然と見出せるようになります。 

 

■■午後Ⅱ■■

<対策本>

午後Ⅰ同様、教科書を使って順番に取り組んでいきます。

但し、すべての論文を書こうとすると、いくら時間があっても足りないので、初期段階では「段落構成」と「論文設計テンプレート」を作る訓練をします。(何のことか分からない方は教科書参照してください)

ここでは、「題意に沿った論点を揃えること」に注力してください。(詳細後述)

これらが「ある程度書けるようになった」と感じたら、テンプレートをベースに実際に論文を書き起こすフェーズに入ります。

テンプレがしっかりできていれば、多少のテクニックは必要になるものの、話を肉付けしながら書くことはあまり苦ならないはずです。

むしろ、題意に沿った論点を十分にあげることができていれば、簡単に字数が埋まってしまいます。論点の前段(振り)の一文と、論点に関する一文をつなげていくだけで、必要字数に到達します。

 

<過去問>

こちらも午後Ⅰ同様、過去3年分くらいをターゲットに取り組みます。

 

<ポイント>

繰り返しになりますが、重要なのは「題意に沿った論点を揃えること」だけです。

他には何もありません。

2020年度午後Ⅱ・問1を例にあげて簡単に説明します。

 

設問ア:

あなたが関係する組織において、AI技術を利用する目的と、開発を検討している又は開発したAIシステムの概要について、800字以内で述べよ。

 

これは単純です。本文のとおり、次の事項を書きます。

 

①AI技術を利用する目的

②開発を検討している 又は 開発したAIシステムの概要

 

設問イ・ウへの伏線になるため、その前提となる事項を書きます。(採点者に事前説明する気持ちで)

よほど特殊な問題でなければ、事前に準備した内容をほぼそのまま書けばOKですが、伏線ということを忘れず、後ろにつなぎやすいようにアレンジできるとベターです。

設問アは事前準備できる問なので、どのような問題でも当てはめやすい具体的な事例を2つ3つ準備しておきましょう。具体的というのは、業種、対象システム、利用者、業務利用の範囲(公開・ネットワーク範囲)、システム構成といった事項を明らかにすることです。

②については、設問イ・ウがリスクとそれに対する監査の話なので、検討段階でも開発済みでもどちらでも後ろの話は変わりません。

こういったところで無駄に悩まないようにしましょう。

 

設問イ:

設問アで述べたAIシステムの利用段階において想定されるリスクについて、700字以上1400字以内で具体的に述べよ。

 

まずは、「AIシステムの利用段階において想定されるリスク」を書くことを考るわけですが、「具体的に述べよ」を見逃してはいけません。

具体的というのは一般論ではなく、「設問アで述べたAIシステム」すなわち「あなたが関係する組織におけるAIシステム」におけるリスクを具体的に(=事例を)書けということなので、抽象的な表現にならないように注意します。

 

次に具体的な「リスク」についてですが、情報処理試験ではゼロから考えるのは間違いです。本文を見ると「題意」としていろいろ書いてあるので、これに沿って書くことが「出題者の意図に沿う」ことになります。

本文では「一方~」の部分に記述されています。要素を羅列すると次のようになります。

 

アルゴリズムブラックボックス問題

②学習済みモデルによる予測・判断結果の解釈が難しい・精度が低い

③従来開発手法では対応が難しい

④収集データの加工にコストがかかる

⑤権利帰属の問題により学習済みモデルの利用に制約が生じる

 

「題意に沿う」というのは難しい話ではなく、これらをそのままリスクとして解釈し、システム監査人としてどのようなコントロールがあればよいかを見ていけばよいわけです。

例えば、次のように方針を整理できます。

 

①モデルに説明可能性(XAI)がなく、不正な結果が出力された際に適切な対応ができなくなる可能性がある。

→ベンダーに契約等で説明責任を担保させる(e.g.説明可能性の高いアルゴリズムを適用させる)

 

②目標となる精度が出ない可能性があり、業務で使えないものになってしまう。

→精度が出ない場合にはモデルの変更や学習データの追加が必要。モデルについてはベンダー、学習データの追加準備については業務部門と事前調整をしておく。

 

③従来の開発手法(ウォーターフォール)ではモデルの精度があがらない可能性が高い。

開発プロセスはモデル開発部分のみイテレーティブ(アジャイル開発)にする。

 

④役割をあいまいにしていると、役割・コストでもめるかもしれない。最悪訴訟問題へ。

→ベンダー側のタスクであることを契約や合意文書上で明確にする。

 

⑤今回開発したモデルは別業務での転移学習のベースに使う可能性があるが、権利関係の問題でモデルの二次利用ができないかもしれない。

→成果物を学習データ、開発プロセス、学習済みのモデルとして整理し、開発プロセス(ベンダーのノウハウ)以外は自社での二次利用を可能とする契約にする。

 

これらが、「あなたが関係する組織におけるAIシステム」において、実際にあったことのように書ければいいわけです。

「実際にあったこと」にするためには、ビジネスドメインとAIシステムの適用領域を具体化しておけばいいだけです。(例えば製造業の自動検査で画像認識を使うとか、損保コールセンターのサポートとしてAIチャットボットを使うとか)

あとはシステム監査人の業務として上記の事項をコントロールとして捉え、順次確認していけばよいだけです。これが設問ウでの回答(監査手続)になります。

 

■■さいごに■■

つい長くなってしまいましたが、ここで書いたことがすべてです。

考え方は非常にシンプルですが、私も最初からこれができたわけではありません。

特に論文については「今思えば」という話ではありますが、ゼロから話を作ろうとして不合格、題意を意識したものの途中から創作に入ってしまい不合格(つまり題意に沿っていない)、役割(システム監査人)の気持ちになり切れず不合格(いつのまにかPM視点になっていた)といったことがありました。

情報処理試験は他の資格試験に比べると「非常に重い作業」になります。しかし、その分だけ取り組む価値がありますし、合格時の喜びは他に代えがたいものがあると思います。(今回の結果確認は外出中でしたが、思わず道端でガッツポーズをとっていました)

これで高度試験8区分が合格済みとなりましたので、1年後のエンベデッドにチャレンジして、情報処理試験コンプリート&終結に持ち込みたいと思います。