• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 課題ページに戻る

2012 年度 実施状況報告書

ソースコード自動進化への挑戦

研究課題

研究課題/領域番号 24650011
研究種目

挑戦的萌芽研究

研究機関大阪大学

研究代表者

肥後 芳樹  大阪大学, 情報科学研究科, 助教 (70452414)

研究期間 (年度) 2012-04-01 – 2015-03-31
キーワードソースコード解析 / ソフトウェア進化 / ミューテーション
研究概要

今年度は,ソースコード中で発生している修正漏れを自動的に検出する手法を提案した.提案手法は過去の開発履歴をマイニングし,どのような変更が行われたのかを細粒度で抽出する.抽出した変更は,修正前のコード片と修正後のコード片の情報を持っている.この情報を用いて,提案手法は過去の修正の傾向を分析する.そして,修正漏れ検出対象のソースコードに対して,抽出した変更の修正前コード片と類似した箇所を特定し,その部分が修正後コード片に変更されるべき箇所として開発者に提示する.
提案した手法は次の4つの特徴を持つ.1.字句単位の修正漏れ(変数やリテラルの置換漏れ)だけではなく,文単位の修正漏れ(文の追加・削除漏れ)も検出可能である.2.修正漏れのコード片がある程度以上の大きさの重複コードである必要がない.3.ソースコードの深い解析を必要とせず,複数のプログラミング言語への展開が容易である.4.スケーラビリィが高く,数百万行規模のソフトウェアであっても数十分程度で解析可能
提案手法をツールとして実装し,HTTPD とFreeBSD に適用し,次の結果を得た.A. 多くのリビジョンにおいて修正漏れが存在していること,および,それらの多くは後に修正が加えられ,修正漏れではなくなることがわかった.B.1 つのバージョンに着目した場合に,それまでの開発履歴から得た学習データを用いて多数の修正漏れを自動的に検出できた.

現在までの達成度 (区分)
現在までの達成度 (区分)

2: おおむね順調に進展している

理由

平成24年度は,当初掲げた計画の内容を概ね達成できた.

今後の研究の推進方策

今後は,抽出した変更間での関係を得る手法を考案する.例えば,変更Aと変更Bは同時に起こりやすいという共起関係や,変更Cの後には変更Dが起こりやすいといった依存関係が考えられる.これらの関係を得ることにより,各変更がどのように影響しあっているのかが明らかになるため,今後の進化の予測が可能になると考えられる.

次年度の研究費の使用計画

今年度は,変更間の関係を得るためのプロトタイプを実装し,実験を行う.そのため,大学院生に実装補助を依頼する予定です.よって実装補助の謝金を支払う予定である.また,昨年度の研究成果を論文にまとめる,および国際会議での発表を行う等を計画しているため,それに関する成果発表旅費,論文別刷り代等も必要になる.

  • 研究成果

    (3件)

すべて 2013 2012

すべて 雑誌論文 (1件) 学会発表 (2件)

  • [雑誌論文] リポジトリマイニング可能なコードクローン版管理システムの提案2013

    • 著者名/発表者名
      畑秀明, 肥後芳樹, 楠本真二
    • 雑誌名

      情報処理学会論文誌

      巻: 54(2) ページ: 894-902

    • DOI

      http://id.nii.ac.jp/1001/00090295/

  • [学会発表] How Often Do Unintended Inconsistencies Happen? ―Deriving Modification Patterns and Detecting Overlooked Code Fragments―2012

    • 著者名/発表者名
      Yoshiki Higo
    • 学会等名
      28th International Conference on Software Maintenance
    • 発表場所
      イタリア
    • 年月日
      20120925-20120927
  • [学会発表] 開発履歴情報を用いた修正漏れの検2012

    • 著者名/発表者名
      肥後芳樹
    • 学会等名
      ソフトウェアエンジニアリングシンポジウム2012
    • 発表場所
      東京電機大学(東京都)
    • 年月日
      20120827-20120829

URL: 

公開日: 2014-07-24  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi