アカデミックNEW

名古屋大学・森崎修司准教授が産学連携の共同研究で成果を出し続けるワケ(前編)

名古屋大学大学院 情報学研究科 情報システム学専攻 ソフトウェア論講座 准教授森崎修司

2001年奈良先端科学技術大学院大学 情報科学研究科 博士後期課程修了後、ソフトウェア技術者として、情報通信企業に勤務する。通信サービスの開発、無線ICタグシステムの国際標準化に携わる。2013年より現職。ソフトウェア開発の効率化やソフトウェアの高品質化の理論と技法の効果や限界を実際のソフトウェア開発に適用して確かめる実証的ソフトウェア工学を研究の柱とする。IPAのIoT高信頼化検討WG(2016年度)、つながる世界の品質指針検討WG(2017年度)で主査を務める。

ソフトウェアの「品質」という言葉は、誰もが使うわりに、当事者によってその意味が大きく異なる。例えば、開発側が不具合の件数を指標にする一方、発注側はシステムが業務にどれほど貢献したかを重視する。この認識のズレが、プロジェクトの失敗や手戻りの温床になっている。そうした構造的な問題を、データと現場の肌感覚の両方を武器に解き明かしてきたのが、名古屋大学大学院 情報学研究科の森崎修司准教授だ。

自動車メーカーから銀行、航空宇宙まで60社近くの企業と共同研究を積み上げてきた森崎准教授は、アカデミアでは希少な存在である。研究として意義がありながら産業界の課題に向き合うテーマを目指しつつ、「自分が企業に何を提供できるか」を常に問い続ける姿勢は、どのようなキャリアから育まれてきたのか。

高校時代はチームを組んでゲーム開発に打ち込む

森崎准教授がコンピューターと出会ったのは、ゲームへの純粋な欲求からだった。

小学4年生の頃、コンピューターゲームが欲しいと訴えたところ親に断られたが、「では、PCでプログラミングをするから」と伝えるとあっさりと許された。そうして手に入れたのが、MSX※ 対応の家庭用PCだった。

※1983年にアスキーとマイクロソフトが提唱した家庭向けパソコンの共通規格。異なるメーカー間でソフトウェアの互換性を実現した

「多分、両親はよく分かっていなかったのだと思います。PCやプログラミングといえば勉強するものだという感覚だったのでしょう」

最初は思惑通りゲームのソフトウェアを購入していたものの、決して安くはなかった。そこでPC雑誌に掲載されているゲームプログラムを打ち込み、それを参考に自作して遊ぶようになっていった。その過程でプログラム言語「BASIC」を覚えたという。

中学生になる頃には、ゲーム作りが本格化していく。プロセッサが非力だったのでC言語でプログラミングしたかったのだというが、当時のCコンパイラは5万円前後と高価で、中学生には手の届かない代物だった。やむなく独自の簡易アセンブラをゼロから書き、プログラムの仕組みを体得していった。

苦労の末にプログラムがまともに動いた瞬間について、森崎准教授はこう振り返る。

「自動車の運転免許を取り、初めて公道を運転した時に、大人になったと思いましたが、それに近しい感覚でした。『プログラムが動いたぞ!』とゾクゾクして感動しましたね」

なお、周囲にPCを持っている友人はほとんどいなかった。インターネットもない時代に、森崎准教授は黙々と一人でプログラミングを続けていた。「話すと、友だちが楽しくなさそうになるので控えていた」と苦笑する。

とはいえ、高校生になると、イラストが描ける友人と、音楽ができる友人を巻き込んでゲーム開発に挑戦した。完成したアクションゲームを雑誌に投稿し、編集部から修正依頼を受けるところまでこぎ着けたが、ちょうど受験勉強の壁に阻まれるなどして、最終的な掲載には至らなかった。「ゲームは遊ぶよりも自分で作るほうが面白くなっていました。完成度はともかく、積み上げてできたという達成感が、強いモチベーションになりましたね」と森崎准教授は回想する。

ソフトウェア工学の道を選んだワケ

将来はプログラミングに関わる仕事がしたいという憧れを抱いていた森崎准教授。なぜアカデミックな世界へ進むことになったのだろうか。

現在の専門であるソフトウェア工学との出会いは、大学院博士前期課程に在学中、GQM(Goal Question Metric)を提案したヴィクター・バシリ教授や、「マイクロソフト・シークレット」の著者であるマイケル・A・クスマノ氏が研究室に訪れると共に、授業でも講演して大規模ソフトウェア開発の難しさやその対策を紹介してくれた時だ。そこで実証的ソフトウェア工学という学問の存在を知ることとなる。実証的ソフトウェア工学とは、ソフトウェア開発の改善を目的に、現実のデータや事例を用いてその効果などをエビデンス、統計を使って検証する研究分野である。

「それまでは博士後期課程への進学はあまり考えておらず、就職してソフトウェア開発エンジニアになるのかなと。でも、このような学問を研究するのも面白いなと思い始めました。実証的ソフトウェア工学では、こういう状況や背景があると技法の効果が出て理論に従うという2つの組み合わせを照らし合わせて確認することを推奨しています。この技法や理論が最適で何でもこれでやればいいという形にはなりません。例えば、スピード重視だとマイクロソフトの技法がいいかもしれないけど、自動車の運転支援だとうまくいくか分からない。そういう考えに興味を持ちましたね」

そうした経緯もあり、この研究分野にたけた奈良先端科学技術大学院大学(NAIST)博士後期課程まで修了し、学位を取得した後、2001年にインターネットサービスプロバイダー(ISP)に就職する。

担当したのは、当時としては先駆的なオンラインストレージサービス。これをゼロからスクラッチ開発することとなった。しかし現実は、大好きなコードを書く時間よりも、部門間の調整や運用・サポート体制の相談に追われる日々だった。「ソフトウェアエンジニアとして開発に専念できると期待していたけど、業務フローの整理や問題対応のほうがはるかに大変でしたね」と森崎准教授は苦笑いする。

だが、ここでの4年間が後の研究に直結することになる。一つは、チームで分担してソフトウェア開発する意味を実体験で理解したこと。もう一つは、サービスを提供し続ける運用の重さだ。

「縁の下の力持ちとなる体制があって初めてサービスが成り立つという現実が分かりました。それ以上に、ユーザーや顧客への価値提供とは何かを実感できたことが自分には大きかったです。この視点はプログラミングを始めた子どもの頃から、博士課程修了までほとんどなかったです。ビジネスである以上、自由に作って、はい終わりとはならないですからね」

この視点を得たことは、現在も企業と産学連携の共同研究を進める際の土台となっている。ISPに在籍していたとき、企業側の立場から大学との共同研究に関わる機会があった。年間数百万円の予算をかけた共同研究だったが、1年後に論文を渡されて、「これが成果です」と言われるだけの関係性に違和感を覚えたことは忘れられない。研究者が企業に何を返せるのか——その問いは、研究者に転じてからも意識の根底に置かれることになった。

2005年、指導教員からの呼びかけを受けてNAISTに戻る。研究員、助教として再び研究者の道を歩み始めた森崎准教授は、その後、静岡大学を経て、2013年に名古屋大学大学院情報科学研究科の准教授として着任した。

流行に左右されない軸が大切

大学院時代からソフトウェア工学を専攻していた森崎准教授だが、企業経験を経てその向き合い方は大きく変わった。

「研究は大きくサイエンスとエンジニアリングの二つに分類できると考えています。ソフトウェア工学の研究テーマもおおよそこの二つに分類できると思います。サイエンスは、今すぐ何かが変わるわけではないが、理論を積み重ねることで非常に大きな波及効果を生み出すもの。エンジニアリングは、生成AIを使ってソフトウェア開発をスムーズにするなど、課題がはっきりしていて、その解決に当たるもの。学生の頃はどちらかと言えばサイエンスのほうが楽しいと感じていました。しかし、実際にシステム開発に従事してみると、現場には課題がいくつも転がっています。研究者がそこにあまり目を向けていないと感じ、自分はエンジニアリング寄りの研究に取り組もうと決めたのです」

特にテーマとして着目したのが、ソフトウェア開発の「上流工程」、つまり、要求定義や設計の段階である。アカデミックな研究が手薄なこの領域に軸足を置いた背景には、「競合が少なかったという下心もありました」と森崎准教は正直に笑う。しかしその選択は、銀行や自動車メーカーとの共同研究で実を結ぶことになる。

また、思考の指針として森崎准教授が重視するのが、答えは唯一ではないということ。あるソフトウェア開発手法が一つの環境でうまくいったからといって、別の環境でも通用するとは限らない。

「アジャイル型のソフトウェア開発に向いている状況と向いていない状況があります。しかし、流行しているからという理由だけで取り入れる判断を企業がしている状況を見ると、もったいないと感じます」

その点、製造業では、はやりものに左右されず、確固たる軸を持っている会社が多いと、森崎准教授は話す。

「あるとき、製造業で機械設計、生産に携わる方に設計や生産に関して教えを請う機会があったのですが、他社がこの手法を採用しているからうちもやろう、とはなりにくいようでした。自分たちの製品や工程の特性から出発して、だからこの手法を使うという説明ができる。ソフトウェア開発で、そういう思考様式が主流と感じることは少ないです。定着してほしいですね」

こうした背景や文脈を問う姿勢こそが、実証的ソフトウェア工学に惹かれる理由だと森崎准教授は力を込める。

 

後編では、60社に及ぶ共同研究の実践、「品質」という言葉の多義性をめぐる課題、そして生成AI時代におけるソフトウェア品質保証の展望などをお伝えする。

 

(後編に続く)

名古屋大学大学院 情報学研究科 情報システム学専攻 ソフトウェア論講座 准教授森崎修司

2001年奈良先端科学技術大学院大学 情報科学研究科 博士後期課程修了後、ソフトウェア技術者として、情報通信企業に勤務する。通信サービスの開発、無線ICタグシステムの国際標準化に携わる。2013年より現職。ソフトウェア開発の効率化やソフトウェアの高品質化の理論と技法の効果や限界を実際のソフトウェア開発に適用して確かめる実証的ソフトウェア工学を研究の柱とする。IPAのIoT高信頼化検討WG(2016年度)、つながる世界の品質指針検討WG(2017年度)で主査を務める。

SNSシェア

この記事は面白かったですか?

今後の改善の参考にさせていただきます!

Search Articles By The Cast出演者/執筆者から記事を探す

Search Articless By The Categoryカテゴリから記事を探す

Ranking

ランキング

もっと見る