• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to project page

2014 Fiscal Year Annual Research Report

クラウド環境で動作するソフトウェアに対するデバッグ技術の確立

Research Project

Project/Area Number 26280021
Research InstitutionOsaka University

Principal Investigator

石尾 隆  大阪大学, 情報科学研究科, 助教 (60452413)

Co-Investigator(Kenkyū-buntansha) 小林 隆志  東京工業大学, 情報理工学(系)研究科, 准教授 (50345386)
Project Period (FY) 2014-04-01 – 2017-03-31
Keywordsソフトウェア工学 / デバッグ / 動的解析 / Java / 依存関係解析
Outline of Annual Research Achievements

本年度は,まず,実行トレース取得ツールの実装を行った.業務システムなどで一般的に使用されている Java を対象として,プログラムに実行トレース記録用命令を埋め込むツール selogger を開発し,オープンソースソフトウェアとして公開した.このツールは,収集したログ情報を,開発者が指定した並列度でディスクに書き出せるようにすることで,実行環境の遊休資源があるときだけ性能を向上する方式を採用した.元々計画していた並行処理の非同期なログ取得は,クラウド環境で一般的な性能の計算機で性能が安定しなかったため,並行処理自体の順序は記録し,ディスクへの出力のみを元プログラムの実行と並行で処理するものとした.
selogger で取得したプログラムの実行ログを用いて任意のメソッドの実行状況を再現する REMViewer を開発した.このツールは,いわゆる Capture&Replay として知られる技術の再実装を基本としているが,プログラムの実行に含まれる多様な振る舞いから開発者が注目したい動きに注目できるように,1つのメソッドの複数回の実行を実行経路に基づいて分類し,可視化する技術を開発して組み込んだ.さらに,プログラムの実行から,バグの発生時に特徴的な動作に開発者が着目できるようにするために,プログラムの命令間の動的な制御およびデータの依存関係を抽出し,比較する技術を試作した.具体的な方式としては,実行トレースを,依存関係で接続された命令の 3-gram の集合へと変換することで,実行トレースをよりコンパクトな表現へと変換し,差分の計算を容易なものとした.そして,その情報を統計的デバッグに利用することで,既存の統計的デバッグ手法と比べて,デバッグの精度を向上できる場合があることを示した.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

計画していた実装方式とは異なる形とはなったが,Java プログラムから実行トレースを取得するためのツールを実装し,また,研究チームでツールのソースコードを共有し,実際にそれを使用した実行状況の再現,統計的デバッグツールの試作を行うことで,一般的な計算機環境での実行トレースの取得,分析環境を整えることができた.
今後の計画に含めている,クラウド環境で運用されるサーバソフトウェアを対象としたデバッグ環境の研究を進める準備は整っていると考えている.
また,当初の計画では後から実施する予定であった統計的デバッグの活用についても,予備的な実験に留まる規模ではあるが試行することができ,部分的な成果を得ていることから,今後の研究が円滑に進むことが期待できる.

Strategy for Future Research Activity

実行トレースの記録および解析では,計算機の性能を生かすために具体的なプログラムの動きをそのまま表現する必要があり,その状況を深く理解するために,研究チームでもツールのデモンストレーションなどを通じた詳しい議論を対面で行う必要があった.
そこで,本年度は,学会発表等の様々な機会を通じて相互に訪問し,情報交換を継続的に行うことを計画している.

Causes of Carryover

実験用の高性能ワークステーションを1台導入する予定であったが,実行トレース記録手法の研究を円滑に進めるための性能および台数の再考が必要になり,導入を遅延したため.

Expenditure Plan for Carryover Budget

次年度に実験用ワークステーションの導入を行う予定である.

  • Research Products

    (10 results)

All 2015 2014 Other

All Journal Article (2 results) (of which Peer Reviewed: 2 results,  Acknowledgement Compliant: 2 results) Presentation (7 results) Remarks (1 results)

  • [Journal Article] REMViewer: 複数回実行されたJavaメソッドの実行経路可視化ツール2015

    • Author(s)
      松村俊徳,石尾隆,鹿島悠,井上克郎
    • Journal Title

      コンピュータソフトウェア

      Volume: 未定 Pages: 未定

    • Peer Reviewed / Acknowledgement Compliant
  • [Journal Article] Method Verb Recommendation Using Association Rule Mining in a Set of Existing Projects2015

    • Author(s)
      Yuki Kashiwabara, Takashi Ishio, Hideaki Hata, Katsuro Inoue
    • Journal Title

      IEICE Transactions on Information and Systems

      Volume: E98-D Pages: 627-636

    • DOI

      10.1587/transinf.2014EDP7276

    • Peer Reviewed / Acknowledgement Compliant
  • [Presentation] 動的依存グラフの3-gramを用いた実行トレースの比較手法2015

    • Author(s)
      ブヤンネメフオドフー, 石尾隆, 井上克郎
    • Organizer
      第187回ソフトウェア工学研究発表会
    • Place of Presentation
      化学会館
    • Year and Date
      2015-03-12 – 2015-03-13
  • [Presentation] 動詞に着目した相関ルールを利用するメソッド名の命名支援手法の評価2015

    • Author(s)
      柏原由紀, 石尾隆, 井上克郎
    • Organizer
      第187回ソフトウェア工学研究発表会
    • Place of Presentation
      化学会館
    • Year and Date
      2015-03-12 – 2015-03-13
  • [Presentation] 動的データ依存集合の発生確率を用いた欠陥箇所特定支援手法の実装及び評価2015

    • Author(s)
      中野瑞樹,大沼俊輔,小林隆志,石尾隆
    • Organizer
      電子情報通信学会ソフトウェアサイエンス研究会
    • Place of Presentation
      沖縄県青年会館
    • Year and Date
      2015-03-09 – 2015-03-10
  • [Presentation] Toward Understanding How Developers Recognize Features in Source Code from Descriptions2014

    • Author(s)
      Shinpei Hayashi, Takashi Ishio, Hiroshi Kazato, Tsuyoshi Oshima
    • Organizer
      9th International Workshop on Advanced Modularization Techniques
    • Place of Presentation
      Hong Kong
    • Year and Date
      2014-11-16 – 2014-11-16
  • [Presentation] Extraction of Conditional Statements for Understanding Business Rules2014

    • Author(s)
      Tomomi Hatano, Takashi Ishio, Joji Okada, Yu Sakata, Katsuro Inoue
    • Organizer
      6th International Workshop on Empirical Software Engineering in Practice
    • Place of Presentation
      大阪大学
    • Year and Date
      2014-11-12 – 2014-11-12
  • [Presentation] Visualizing the Evolution of Systems and their Library Dependencies2014

    • Author(s)
      Raula Gaikovina Kula, Coen De Roover, Daniel German, Takashi Ishio, Katsuro Inoue
    • Organizer
      2nd IEEE Working Conference on Software Visualization
    • Place of Presentation
      Victoria, B.C., Canada
    • Year and Date
      2014-09-29 – 2014-09-30
  • [Presentation] REMViewer: 複数回実行されたJavaメソッドの実行経路可視化ツール2014

    • Author(s)
      松村俊徳,石尾隆,鹿島悠,井上克郎
    • Organizer
      第31回ソフトウェア科学会大会
    • Place of Presentation
      名古屋大学
    • Year and Date
      2014-09-08 – 2014-09-10
  • [Remarks] selogger ソースコード公開ページ

    • URL

      https://github.com/takashi-ishio/selogger

URL: 

Published: 2016-06-01  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi