はじめに
近年、ビジネスの分野において「デジタルトランスフォーメーション」「ビジネス・デジタライゼーション」といった言葉が関心を集めている。企業が国際的な競争力を高め、生き残りを図るために、ITをベースとしたビジネス変革が重要な経営課題となっているからだ。
ビジネス変革を推し進めていくにあたって、多くの企業で求められているのが、ITに関わる最新の技術や知見を、現場での課題解決に生かせる優れたエンジニアである。また、企業だけでなく個々のエンジニアにとっても、先端技術に関する知識やスキルを身につけることは、これからの時代に自らのキャリアを高めていく際の必須要件となりつつある。
このような問題意識を持つ企業やエンジニアに向けて、ソフトウェア工学の基礎技術や最先端技術に関する知識を身につける機会を提供しているのが、国立情報学研究所、GRACEセンター(先端ソフトウェア工学・国際研究センター)が提供している教育プログラム「トップエスイー」である。
トップエスイーでは「講義」「修了制作」などのカリキュラムを通じて、過去12年にわたり約400名の修了生を輩出してきた。そのIT人材育成に対する実績から、平成24年度の文部科学大臣賞も受賞している。
また、2017年4月よりスタートした「第12期」では、より難度の高い課題を最先端の技術を駆使して解決できる能力を備えた人材(スーパーアーキテクト)の育成を目指した「アドバンス・トップエスイーコース」を新設。その受講生は、自ら設定したテーマを約1年にわたって取り組み、解決と現場への適用を目指す。
今回、この「アドバンス・トップエスイーコース」の受講生と講師陣に、同コースの内容や魅力などについて話を聞いた。
高い問題解決能力を持つ技術者の育成に特化した「アドバンス・トップエスイーコース」
――今回は「アドバンス・トップエスイーコース」の受講生である百足さんと、その指導にあたられている先生方にお話を伺います。まずは自己紹介をお願いします。
百足:富士通の百足と申します。沼津の事業所に勤務していて、スーパーコンピュータなどHPC(ハイ・パフォーマンス・コンピューティング)関連製品のソフトウェア検証が主な業務です。2017年度の「アドバンス・トップエスイーコース」を受講しており、私の業務に関連した、ソフトウェア品質の向上に関するテーマに取り組んでいます。
鄭:国立情報学研究所の鄭と申します。研究としてはソフトウェア工学を中心にやっており、特にソフトウェア・アーキテクチャ、モデル駆動開発など、ソフトウェアに対する要求から、どのようにシステムを作り上げていくか、その品質をどう保証するかといったことに取り組んでいます。トップエスイーでは、講義や受講生の指導を行う教官としての役割と同時に、全体のカリキュラムをどう設計していくかにも関わっています。
坂本:国立情報学研究所の坂本です。トップエスイーでは、主に「ビックデータ」に関連した講義をいくつか担当しています。また、百足さんをはじめ、「アドバンス・トップエスイーコース」の何人かの受講生の担当をさせていただいてます。
――どうぞよろしくお願いいたします。ここで改めて「アドバンス・トップエスイーコース」について、従来の「トップエスイーコース」との違い、特色について、ご説明をいただけますか。
鄭:「トップエスイー」では、これまで12年にわたってプログラムを提供してきましたが、「アドバンス・トップエスイーコース」は、2017年度に新たなコースとして設けられたものです。
従来の「トップエスイーコース」は、「サイエンスによる知的ものづくり」というコンセプトを掲げ、人海戦術、カンや経験ではなく、コンピュータサイエンスやソフトウェア工学に基づいて、ソフトウェア開発を行える人材の育成を目指して展開してきました。
カリキュラムとしては、ソフトウェア開発のための基礎的な理論、あるいは先端の技術を学べる「講義」をベースに、まずは多くの開発現場で求められている「モデリング」の能力を育成します。それに加えて、講義で得た知識を元に、「修了制作」を通じて、現場に存在する課題を見つけ出し、解決する能力を身につけてもらうことを目指していました。講義での単位修得と「修了制作」における審査会に合格することが、修了の要件となっていました。(※注1)
※注1:2017年度より、「アドバイス・トップエスイーコース」と、「トップエスイーコース」が併設されました。トップエスイーコースでは、講義に加えて「修了制作」を発展継承した「ソフトウェア開発実践演習」を行うことが修了要件となっています。
新設された「アドバンス・トップエスイーコース」は、その中でも特に開発現場で求められる「問題解決能力」の育成にフォーカスしたコースです。修了要件としては「プロフェッショナルスタディ」と「最先端ソフトウェア工学ゼミ」を受講し、審査に合格することが求められます。
「プロフェッショナルスタディ」は、従来のトップエスイーコースにおいて、約3カ月間で実施していた「修了制作」を、1年間かけて行うものになります。受講者が日ごろ業務を行っている現場に、どのような課題があるのかを見つけ出し、その解決につながるツールの開発や方法論の整備、効果の検証などに、時間をかけてじっくりと取り組むことができます。
もうひとつの柱である「最先端ソフトウェア工学ゼミ」は、登場して間もない最先端の技術や課題に取り組む、ゼミ形式のプログラムです。ソフトウェア開発の現場には、新しい技術や考え方が次々と登場し、それに付随する新たな課題も生まれます。例えば、ブロックチェーンやマシンラーニングといった技術が、急速に発達し、既に開発現場にも入り始めているという状況があります。こうした新たな技術は、登場してからの歴史が浅いものが多く、技術そのものが進化の過程にあったり、活用の方法論が定まっていなかったりすることがほとんどです。
「最先端ソフトウェア工学ゼミ」では、そのような先端技術の中でも、同じトピックに関心を持つ人が集まり、共同で調査を行ったり、最新のツールを使ってみたりすることで、現場での活用を進める方法を考えるコミュニティを提供します。
もちろん「アドバンス・トップエスイーコース」においても、従来の「トップエスイーコース」と同様に、開講されている講義を受講することができますが、講義については必須の修了要件ではありません。
――ありがとうございます。そもそも、こうした内容で「アドバンス・トップエスイーコース」を新設した理由は何なのでしょうか。
鄭:「トップエスイー」は、これまで多くの方に受講していただきましたが、修了生へのヒアリングなどを通じて、スタート当初に比べ、受講生がトップエスイーに求めることが二分化してきていると感じていました。
ひとつは、現場でそれなりの長い期間、開発に携わってきたけれども、いわゆる「ソフトウェア工学」について体系的に学んだ経験がない方が、基礎的な部分をしっかりと学び直したいというニーズ。もうひとつは、既に現場で明確に問題意識を感じていて、そこに潜む課題、解決策を見つけ出すために学びたいというニーズです。
従来のトップエスイーコースでは、具体的な課題解決のための取り組みを「修了制作」の中で、約3カ月をかけて行っていたのですが、それに重点的に取り組みたい受講生からは「3カ月では期間が短すぎる。やり残しも多く出てしまった」という声が出ていたのです。
今回、アドバンス・トップエスイーコースを設置したのには、ゴールの異なる2つのタイプの受講生が、どちらとも満足できるようなカリキュラムを提供したいという意図があります。従来のコースでは「ソフトウェア工学をしっかり身につける」、アドバンス・トップエスイーコースでは「課題解決のための調査、研究、開発、検証に時間をかけて取り組み、成果を出す」ことを、それぞれに十分に行っていただけるよう編成しました。
――2017年度に「アドバンス・トップエスイーコース」を受講されている方に、傾向のようなものはありますか。
鄭:募集をかけた当初は、企業でも「研究所」に所属するような方が多く受講されるのではないかと予想していたのですが、実際には「事業部門」から来てくださる方も多かったですね。背景としては、「AI」や「ビッグデータ」など、最先端のソフトウェア工学を現場で「活用」することを求められ、どう取り組めばいいのか悩ましい時代になってきているということがあると思います。ソフトウェア開発の現場を経験されている方を中心に、幅広い立場、年齢の方が受講しています。
時間をかけて取り組める「研究」と、共同で学べる「ゼミ」が「アドバンス」コースの魅力
――ここからは、アドバンス・トップエスイーコースの受講生である百足さんにお話を伺います。今回、受講されたきっかけについて教えてください。
百足:昨年度に、同じ事業所の先輩が「トップエスイーコース」を受講しており、「大変だったけれど、役に立った」と聞いていたのが最初のきっかけです。上司からの推薦もあり、受講について本格的に調べ始めたのですが、そこで2017年度からは「アドバンス・トップエスイーコース」が新設されることを知りました。
先輩が受講した際には、「修了制作」の期間が3カ月しかなく、「問題設定に多くの時間をとられ、検証が十分にできなかった」という話も聞いていましたので、この機会を有効に活用するために「プロフェッショナルスタディ」として1年の期間をかけて取り組んでみたいと思いました。
また「最先端ソフトウェア工学ゼミ」も魅力的でした。私も先端技術には関心がありますが、まだ書籍化もされていないようなテーマについて、論文を調べたり、議論したり、実際に動かしてみたりといった取り組みを複数のメンバーでやっていく機会というのは、企業の中でもなかなかありません。それを、他のさまざまな企業の人たちとできる場は貴重だと思い、アドバンス・トップエスイーコースを希望しました。
――百足さんは、沼津の事業所にお勤めとのことですが、受講にあたって、大変だったことや工夫されたことはありますか。
百足:講義やゼミに参加する場合、基本的には千代田区の国立情報学研究所へ、決まった日時に来ることがベストなので「時間」をどうやりくりするかについてはいろいろと工夫しました。私の場合、業務上の定時は17時半前後ですが、それから沼津を出ていると間に合いません。幸い、富士通はモバイルワークの環境が整備されているので、トップエスイーに出る日は、あらかじめ川崎の事業所に出社して、そこで業務を行い、夕方に川崎から千代田区まで来るような形で時間を節約していました。
また、プロフェッショナルスタディの担当である坂本先生と打ち合わせをする際も、可能であれば対面で効率良く話を進め、それが難しい場合は、ビデオ会議やメールなどを駆使して情報を共有しておくといった工夫をして進めています。その他の講義についても、ネットを通じて遠隔で受講することができる点は良かったですね。
――百足さんが「プロフェッショナルスタディ」で研究されているテーマはどのようなものですか。
百足:「コンパイラのランダムテストにおけるエラープログラムの原因特定」というものです。先ほど、私の業務としてHPC関連製品のソフトウェアに関する検証を行っているとお話ししましたが、私は中でも「コンパイラ」に関するランダムテストに課題を感じていました。
テストでは、コンパイラテストを実行するためのプログラムを大量に自動生成し、実際に流してみて、その結果が正しいかどうか検証をするという作業を行うのですが、何十万、何百万という大量のプログラムを流すと、期待するものと異なる結果も大量に出てきてしまいます。そして、その大量の「意図しない結果」が、どのようなエラーに由来するかを特定するのは難しいです。すべての「意図しない結果」が、同じエラーによって出ている可能性もあるし、そうでない可能性もある。現状、その特定はエンジニアが「カン」と「経験」を頼りに行っているのですが、その作業を、可能であればAI技術なども使って、より効率化できないかというのを、プロフェッショナルスタディのテーマにしています。
――まさに「業務の課題解決」を目指したテーマに取り組んでおられるのですね。「最先端ソフトウェア工学ゼミ」では、何をテーマにされているのでしょう。
百足:ひとりひとりが自分なりのテーマを設定する「プロフェッショナルスタディ」と違い、ゼミでは複数の受講生が共同で作業を進める形になります。
前期では、関心のある5人のメンバーで「AI」と「データ分析」に関する調査と議論を行いました。内容としては、近年「ディープラーニング」といった手法で急速に注目が高まっている「AI」や、そのベースとなっている「機械学習」、分類や回帰といった「統計」のアルゴリズムについて、歴史も踏まえてひととおり学ぶというものでした。
後期においては、メンバーそれぞれに別のテーマを選定できるのですが、私は前期で取り組んだ「AI」に関して深掘りし、「ニューラルネットワーク」「強化学習」などについて、さらに踏み込んだ形での勉強を進めています。最終的には、これらの手法を自らの業務に生かせるようなツールの使い方まで習得できればと考えています。
――ちなみに百足さんは、その他の講義についても受講をされているのでしょうか。
百足:アドバンス・トップエスイーコースでは、講義での単位取得は修了要件に含まれていません。受講を始めた当初は、改めて基礎からソフトウェア工学について学び直してみたいとも思っていたのですが、実際には時間の制約もあり、「ゼミ」や「プロフェッショナルスタディ」に集中した方がいいだろうと考えて、途中から方向転換しました。現在は、あまり受講できていません。
――坂本先生は、プロフェッショナルスタディにおいて百足さんを担当されているとのことですが、指導のスタイルはどのようなものなのでしょうか。
坂本:「プロフェッショナルスタディ」は、最初に受講生に志望書を書いてもらい、そのテーマについて最も専門性が高い教官が担当になります。ただ、実際に行っているのは「指導」というよりも「サポート」に近いですね。受講生の興味関心から、自主的に進められ、業務にも生かせそうなテーマを一緒に考えて決め、そこからは個人のペースに合わせて面談やメールのやり取りなどを通じて、アドバイスや情報提供を行っています。
アドバンス・トップエスイーコースの特長として「最先端ソフトウェア工学ゼミ」も挙げられますが、こちらは受講生の自主的な活動としての性質がより強いです。取り扱うテーマも柔軟性があり、自分たちが調べたいと思ったところを重点的に調べたり、それについて議論したりといったことを自由に行えます。ただ「自主性」が求められるカリキュラムである以上、そのゼミがきちんと成果を上げられるかは、参加しているメンバー次第というところもあります。講師の立場としては、その舵取りをうまくサポートするにはどうすればいいかを、常に考えています。気がついた部分については、その都度改善していこうと思っています。
――百足さんは、現在「アドバンス・トップエスイーコース」の受講中ですが、実際に受講されてみて、特に評価されているところ、魅力的に感じているところはありますか。
百足:私が最も有意義だと感じているのは、やはり「ゼミ」形式で、先端技術を本格的に勉強する場が持てることですね。こうした形での勉強や議論の場は、社会人になってしまうとなかなか持つことができません。また、アドバンス・トップエスイーコースには、さまざまな業界、業務を経験されている方が受講されており、そこから受けている刺激も多いと感じています。
「プロフェッショナルスタディ」については、1年という時間をかけられる点が魅力的です。現在研究しているテーマは、私が最初に考えていたものからは若干変わっているのですが、教官のアドバイスを受けながらしっかりテーマを決め、そこから調査をし、開発を行って、効果測定まで行うことを考えると、通常の「トップエスイーコース」の3カ月という期間では厳しかっただろうと思います。また、修了制作に向けて「ランダムテスト」に関するさまざまな手法やツールを調査しているのですが、この作業自体が、私の現在の業務にも役立っています。最終的に、AIを活用した効率化に何らかのめどが付くようであれば、この1年間から得られる成果はさらに大きくなるはずなので、残りの期間もがんばりたいです。
――最後に、お2人の先生から「アドバンス・トップエスイーコース」に対する現在の所感があればお聞かせください。
坂本:百足さんからもご指摘いただきましたが「ゼミ」形式のプログラムは、大学の研究指導では一般的で、教育の質を上げていく上では非常に良いと思います。社会人になるとなかなか作りづらい、グループで「研究」や「勉強」をしていくための場として、これからも改善を行いながら発展させていきたいと思っています。
鄭:まだ、今期が終わるまでには数カ月が残っていますが、まずは受講生がいい経験だと感じられているようで、「アドバンス・トップエスイーコース」の設計に関わった一人として安堵しております。本年度は8人の受講生が学んでおりますが、初年度としてはこのくらいの人数でちょうど良かったのではないかと思っています。
特に受講生の自主性に重きを置いた「最先端ソフトウェア工学ゼミ」は、新しい取り組みですが、受講生にも意義を感じていただいているようでうれしいです。テーマや方向性を受講生が主導して決めていく中で、われわれ講師陣も、良い知見が得られるようなスーパーバイズの方法を考えたいですね。今後、講師がサポートしきれないような範囲でテーマが設定されたらどうしようという懸念もあるのですが(笑)、さまざまな分野のエキスパートの方にご協力いただいて、そうしたニーズにも柔軟に対応していきたいと考えています。
――ありがとうございました。
2018年度受講生を募集中です!
ハイレベルのエンジニア育成に定評がある「トップエスイー」は現在2018年度の受講生を募集中です。受講を検討中の方、受講に意欲がある方は、こちらのページをご覧ください。2018年度の受講申し込みは、2017年12月18日~2018年2月28日の期間で受け付けています。
また、トップエスイーでどのようなことを学べるのかは、CodeZineの連載記事も参考になるかと思います。こちらも併せてご覧ください。