Takashi Ishio's page

Japanese / English

石尾 隆

公立はこだて未来大学 情報システム科学部 情報アーキテクチャ学科 教授

奈良先端科学技術大学院大学 先端科学技術研究科 情報科学領域 ソフトウェア工学研究室 客員教授

photo

略歴

広島県出身。1998年修道高等学校を卒業後、大阪大学基礎工学部情報科学科入学。2006年同大学大学院情報科学研究科博士後期課程修了。 日本学術振興会特別研究員、大阪大学助教、奈良先端科学技術大学院大学准教授を経て現職。博士(情報科学)。 奈良先端大発のベンチャー企業、株式会社 dTosh の技術顧問としても活動中。

研究テーマ

はてなブログ https://ishiotks.hatenablog.com/ にて研究室の詳しい個別テーマの紹介を始めました。

大規模なソフトウェアに対して、そのソースコードや実行時の動作を分析し、得られた情報に基づいて開発者の様々な活動を支援する「プログラム解析」と呼ばれる分野の研究者です。主なテーマは以下の通りです。

  • ソフトウェアの原材料管理。 ソフトウェアの中で使われているソースコードが、他のどのソフトウェアの部品を再利用(コピー)したものであるかを自動的に検知・追跡することで、再利用した部品に含まれていたバグや脆弱性への適切な対応や、蓄積されたソフトウェア資産の把握を可能とします。
  • プログラム実行の自動分析。 ソフトウェアの実行データを自動的に収集し、異常な挙動の発生が発生した場合の迅速な原因究明を支援します。
  • 同一修正の繰り返しの支援。 開発者が誤りのあるソースコードを発見したとき、そのソースコードと類似した記述がある場所をもれなく高速に列挙することで、開発者が同じ誤りを繰り返していた場合の確実な修正を支援します。
  • 品質検査支援。 ソフトウェア内部での実際のデータの流れを抽出し、ソフトウェア開発者が設計したデータの流れと自動照合することで、品質検査におけるレビュー作業を効率化します。
  • レガシーソフトウェアの機能要約。 開発プロジェクトが終わってからも長年働き続けているソフトウェアを効率よく取り扱っていくために、そのソフトウェアが何をしているのかを分析、可視化する技術の研究を行っています。

これらの研究は、プログラミング言語に対する構文解析や意味解析、バージョン管理システムからのデータ抽出、プログラムの実行の観測といったソフトウェアに関連するデータの収集技術と、それらを適切な表現に変換し、検索や比較といった操作を行っていくアルゴリズムに関する知識に基づくものです。 様々な企業の開発者や研究者と連携しながら、技術の効果や限界を開発者が納得して使用できる、実用的な手法の実現を目指しています。

研究費

研究の多くは、文部科学省・学術振興会の科学技術研究費補助金の支援を受けて行っています。 現在受けている支援、これまで受けてきた支援については科学研究費助成データベースのページ https://nrid.nii.ac.jp/ja/nrid/1000060452413/ をご覧ください。

企業との連携

企業との共同研究を積極的に行っており、これまでに NEC、NTTデータ、三菱電機、日立製作所、有人宇宙システム、株式会社ギブリーの方々と共著論文を発表しています。

研究業績

主な論文については Google Scholar, DBLP をご覧ください。 日本語での発表は(あまり整理できていませんが)researchmap にあります。

ソフトウェアの公開

一部研究成果については、OSS として公開しています。

  • NCDSearch (https://github.com/takashi-ishio/NCDSearch/) 与えられたソースコードと類似したものをすべて列挙、報告するツールです。NEC と「バグ修正の水平展開」のために共同開発したもので、その効果についてはソフトウェア保守と進化に関する国際会議(ICSME 2018)、電子情報通信学会論文誌にて論文を発表しています。
  • SELogger (https://github.com/takashi-ishio/selogger) Javaプログラムの実行を観測し、命令の実行順序や、実行中のメソッドの引数やローカル変数の値など、実行時情報を収集するツールです。様々な研究論文の基盤として使用されています。

研究のための小道具も公開しています。

  • PptWatch (https://github.com/takashi-ishio/pptwatch) Windows 上で PowerPoint プレゼンテーションの時間をスライドごとに計測するツールです。発表練習で、使用時間が長すぎる(情報量が多すぎる)スライドや、短すぎる(不要かもしれない)スライドを見つけるために使います。
  • Presentation Timer (https://github.com/takashi-ishio/PresentationTimer) 学会などで時間を正確に計測するための、わりとよくある(けれど開発当時は Windows 環境で条件にあったものがなかった)ツールです。
  • tex2text.rb (https://github.com/takashi-ishio/tex2text) TeX ファイルからテキストを抜き出すツールです。文法チェック用の小道具として作ったものです。

学会活動(国内)

  • 情報処理学会
    • 情報処理学会論文誌 ソフトウェア工学特集号2019 編集委員長
    • 情報処理学会論文誌 シニア査読委員 (2018年6月1日~2027年5月31日)
    • 情報処理学会論文誌 論文査読委員 (2012年6月1日~2018年5月31日)
    • IPSJ-ONE 2021, 2022 企画・実施委員会
  • 情報処理学会 ソフトウェア工学研究会
    • 研究会幹事 (2017年度~2020年度)
    • 運営委員(2010年度~2013年度, 2021年度~2022年度)
    • ソフトウェアエンジニアリングシンポジウム 2014-2016, 2019-2024 プログラム委員
    • ソフトウェアエンジニアリングシンポジウム 2018 プログラム委員長
    • ソフトウェアエンジニアリングシンポジウム 2017 副プログラム委員長
    • ソフトウェアエンジニアリングシンポジウム 2011 企画委員長
    • ソフトウェアエンジニアリングシンポジウム 2009 出版委員長
  • ソフトウェア科学会
    • ソフトウェア工学の基礎ワークショップ 2020 実行委員長
    • ソフトウェア工学の基礎ワークショップ 2011, 2014-2019, 2021-2024 プログラム委員
    • ソフトウェア工学の基礎ワークショップ 2013 論文委員長
    • プログラミングおよびプログラミング言語ワークショップ 2021 プログラム委員
    • 代表会員 2015年度
    • 関西企画委員 2011年度-2014年度
    • 2014年度 科学会大会 広報委員長
  • 電子情報通信学会
    • ソフトウェアサイエンス研究専門委員会 専門委員 2020年6月4日~2026年6月3日
    • 和文論文誌D 編集委員 2023年6月8日~2027年6月2日
    • Guest Editor of IEICE Transactions of Information and Systems, Special Section on Empirical Software Engineering, 2019
  • その他
    • ACM ICPC 連携委員 2016、運営委員 2014-2015

学会活動(国際)

  • Program Committee Member
    • SCORED2024
    • ICSME2024 Tool Demo Track
    • ICPC2024 Research Track
    • ENASE2024
    • APSEC2023 SEIP Track
    • SCORED2023
    • ICSME2023 Tool Demo Track
    • QUATIC2023 Verification, Validation and Testing Track
    • ICPC2023 Research Track
    • APSEC2022 Poster Track Co-Chair
    • ICSME2022 Tool Demo Track and Joint Artifact Evaluation Track
    • SCORED2022
    • QUATIC2022 ICT Verification and Validation Track
    • VISSOFT2021 Technical and NIER/TD
    • APSEC2021 Research Track
    • ICSME2021 Tool Demo Track
    • ASE2021 Late Breaking Ideas Track
    • SANER2021 Tool Demo Track
    • VISSOFT2020 Program Co-Chair
    • First International Workshop on New Interfaces for Programming (NIP’20)
    • APSEC2019 Research Track
    • ICSME2019 Tool Demo Track
    • VISSOFT2019 Research Track
    • VISSOFT2018 Research Track
    • APSEC2018 Research Track
    • APSEC2018 SEIP Track
    • ICST2018 Testing Tools Track
    • VISSOFT2017 Research Track
    • ICST2017 Testing Tools Track
    • AOAsia/Pacific2014 PC Member
    • TJIA2014 Academic Committee Member (the 7th Thailand-Japan International Academic Conference)
    • ICPC2014
    • Modulariyt:aosd13 Industrial Track
    • IWESEP2013
    • IWESEP2012
    • IWESEP2011
    • MENSURA2011
    • AOSD2011
    • IWESEP2010 Program Chair
    • AOAsia2009 Program Chair (Asian Workshop on Aspect-Oriented Software Development co-located with ASE2010)
  • Organization
    • APSEC2018 Student Volunteer Co-Chair
    • SANER2016 Registration Chair
    • AOAsia2013 General Chair (Asia/Pacific Workshop on Aspect-Oriented Software Development co-located with AOSD2013)
  • Journal Peer Review
    • IEEE Transactions on Software Engineering (TSE)
    • Information and Software Technology (IST)
    • Journal of Systems and Software (JSS)
    • Journal of Systems Architecture (JSA)
    • Sciecne of Computer Programming (SCP)
    • Empirical Software Engineering (EMSE)
    • Automated Software Engineering (AUSE)

受賞

研究に関する受賞

  • 情報処理学会ソフトウェア工学研究会 卓越研究賞 (2023年9月)
  • 35th IEEE International Conference on Software Engineering Education and Training Best Poster and Tool Paper Award (2023年8月)
  • IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2021 研究奨励賞 (2021年9月)
  • 情報処理学会ソフトウェア工学研究会 卓越研究賞 (2021年9月)
  • 電子情報通信学会 論文賞 (2021年6月)
  • IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2019 インタラクティブ・ポスター賞 (2019年9月)
  • 13th International Workshop on Software Clones People’s Choice Award (2019年2月)
  • IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2018 ポスター・インタラクティブ賞 (2018年9月)
  • 2018 DocGen Challenge runner-ups (Usefulness category) (2018年9月)
  • 情報処理学会ソフトウェア工学研究会 卓越研究賞 (2017年9月)
  • IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2017 インタラクティブ特別賞 (2017年9月)
  • IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2016 最優秀論文賞 (2016年9月)
  • IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2015 企業賞 (2015年9月)
  • IEEE 23rd International Conference on Program Comprehension Best Tool Demo Award (2015年5月)
  • 6th International Workshop on Empirical Software Engineering in Practice Best Paper Award (2014年11月)
  • 平成23年度電子情報通信学会ソフトウェアサイエンス研究会研究奨励賞 (2012年5月)
  • 情報処理学会 山下記念研究賞 (2005年7月)
  • IPSJ SIGSE オブジェクト指向シンポジウム 2003 優秀賞(研究論文)(2003年8月)

その他の活動に関する受賞

  • 32nd IEEE/ACM International Conference on Program Comprehension Distinguished Reviewer Award (2024年4月)
  • 情報処理学会ソフトウェア工学研究会活動貢献賞 (2022年3月)
  • 情報処理学会ソフトウェア工学研究会功績賞 (2019年3月)
  • 情報処理学会コンピュータサイエンス領域功績賞 (2018年10月)
  • 大阪大学総長奨励賞(研究部門)(2015年7月)

論文執筆を指導した学生の受賞

  • 北岡 哲也: 第29回ソフトウェア工学の基礎ワークショップ 貢献賞(フルペーパー部門) (2022年11月)
  • 北岡 哲也: IEEE Computer Society Japan Chapter FOSE Young Researcher Award 2022 (2022年11月)
  • 成 泰鏞: 2022年度 情報処理学会 山下記念研究賞 (2022年7月)
  • 成 泰鏞: 情報処理学会ソフトウェア工学研究会 2012年度 学生研究賞 (2022年3月)
  • 幾谷 吉晴: 第25回ソフトウェア工学の基礎ワークショップ 貢献賞(ショートペーパー部門) (2018年11月)
  • 嶋利 一真: 第25回ソフトウェア工学の基礎ワークショップ ライブ論文ポスター賞 (2018年11月)
  • 上田 裕己: IEEE Computer Society Japan Chapter FOSE Young Researcher Award 2018 (2018年11月)
  • 嶋利 一真: IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム2017 学生奨励発表賞 (2017年9月)
  • 竹之内 啓太: 第23回ソフトウェア工学の基礎ワークショップ 貢献賞(フルペーパー部門) (2016年12月)
  • 松村 俊徳: 情報処理学会コンピュータサイエンス領域奨励賞 (2016年9月)
  • 松村 俊徳: 情報処理学会ソフトウェア工学研究会 2015年度 学生研究賞 (2016年3月)
  • 竹之内 啓太: IEEE Computer Society Japan Chapter FOSE Young Researcher Award 2015 (2015年12月)
  • 阿部 修也: IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2014 インタラクティブ賞 (2014年9月)
  • 脇阪 大輝: 第183回ソフトウェア工学研究会 学生研究賞 (2014年3月)
  • 柏原 由紀: IEEE Computer Society Japan Chapter FOSE Young Researcher Award 2013 (2013年11月)
  • 工藤 良介: 情報処理学会コンピュータサイエンス領域奨励賞 (2013年9月)
  • 工藤 良介: 情報処理学会ソフトウェア工学研究会 2012年度 学生研究賞 (2013年3月)
  • 鹿島 悠: IPSJ SIGSE ソフトウェアエンジニアリングシンポジウム 2012 学生奨励賞 (2012年8月)
  • 宗像 聡: 情報処理学会コンピュータサイエンス領域奨励賞 (2010年9月)
  • 関山 太朗: 情報処理学会第72回全国大会 学生奨励賞 (2010年3月)
  • 宗像 聡: 情報処理学会ソフトウェア工学研究会 2008年度 学生研究賞 (2009年3月)