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

2014 年度 実施状況報告書

トピック抽出を用いたコードクローン検出手法

研究課題

研究課題/領域番号 26730036
研究機関名古屋大学

研究代表者

吉田 則裕  名古屋大学, 情報科学研究科, 准教授 (00582545)

研究期間 (年度) 2014-04-01 – 2017-03-31
キーワードコードクローン
研究実績の概要

本研究で提案するツールである「トピック抽出を用いたコードクローン検出ツール」の実装を行った.本ツールを実装するために,まずソースコードに含まれるトピック(対象と関連の強い単語のリスト)を抽出する機能を,自然言語処理で用いられている文章中からトピックを自動的に特定する手法を用いて実装した.次に,トピックを特定した結果を用いて,コード片間の等価性を判定する機能を実装した.高速に等価性を判定するために,コード片に含まれるトピックを特徴ベクトルで表現し,ハッシュ関数に基づくクラスタリング手法を用いた.ソースコードに含まれるトピックの抽出では,各ソースファイルに含まれる語(基本的には識別子名.ただし,複数の語からなる識別子名は各語に分割)を抽出し,トピック(ソースファイルと関連の強い単語のリスト)の特定を行った.コード片間の等価性を判定するため,構文木中の部分木に対して特徴ベクトルを付加した.特徴ベクトルは,部分木に含まれるトピックの分布を表す.次に,特徴ベクトル間の距離に基づいて部分木のクラスタリングを行った.最後に,同一クラスタに属した部分木に対応するコード片を等価なコード片として提示した.各部分木をベクトルで表現する利点は, 部分木間の距離を求める問題をベクトル間の距離を求める問題に変換することで,計算量を低下させることができることである.特徴ベクトルの数が膨大になると,クラスタリングにかかる計算時間が大きくなると考えられるため,LSH (Locality Sensitive Hashing)というハッシュ関数を用いたクラスタリングを行った.LSHは,「類似したベクトルは高い可能性で同じハッシュ値になり,異なるベクトルは高い可能性で異なるハッシュ値になる」という性質を持つハッシュ関数である.

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

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

理由

本研究で提案するツールである「トピック抽出を用いたコードクローン検出ツール」の実装について,概ね順調に行うことができた.ツールを実装するための情報収集についても,国内研究会への参加を通してある程度行うことができた.ただし,海外の大学に在籍する研究者からの情報収集については,学内業務の都合で国際会議に参加できなかったため,不安が残る.

今後の研究の推進方策

これまで,ツールを実装するための情報収集については,国内研究会への参加を通してある程度行うことができた.ただし,海外の大学に在籍する研究者からの情報収集については,学内業務の都合で国際会議に参加できなかったため,情報収集や専門家との議論の深さについて不安が残っている.これを解決するために,来年度は専門家の所属大学を訪問する,もしくは専門家が集まる国際会議への参加を通して,十分な議論および情報収集の時間を確保したい.

次年度使用額が生じた理由

国際会議への参加を通して専門家と議論することにより実装方法に関する情報収集を行う予定であったが,学内業務の都合で実施できなかった.そのため,国際会議参加に必要な旅費および登録費が残った.

次年度使用額の使用計画

海外の専門家が在籍する大学へ訪問,もしくは専門家が集まる国際会議への参加を通して情報収集を行う.これらを実施するための旅費および国際会議への登録費として使用する.

  • 研究成果

    (13件)

すべて 2015 2014

すべて 雑誌論文 (5件) (うち査読あり 5件、 オープンアクセス 5件、 謝辞記載あり 5件) 学会発表 (8件)

  • [雑誌論文] 機械学習を用いたメソッド抽出リファクタリングの推薦手法2015

    • 著者名/発表者名
      後藤 祥, 吉田 則裕, 藤原 賢二, 崔 恩瀞, 井上 克郎
    • 雑誌名

      情報処理学会論文誌

      巻: 56 ページ: 627~636

    • 査読あり / オープンアクセス / 謝辞記載あり
  • [雑誌論文] Chromiumプロジェクトにおけるレビュー・パッチ開発経験がレビューに要する時間に与える影響の分析2015

    • 著者名/発表者名
      戸田 航史, 亀井 靖高, 濱崎 一樹, 吉田 則裕
    • 雑誌名

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

      巻: 32 ページ: 227~234

    • DOI

      http://dx.doi.org/10.11309/jssst.32.1_227

    • 査読あり / オープンアクセス / 謝辞記載あり
  • [雑誌論文] 変更履歴解析に基づくリファクタリング検出技術の調査2015

    • 著者名/発表者名
      崔 恩瀞, 藤原 賢二, 吉田 則裕, 林 晋平
    • 雑誌名

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

      巻: 32 ページ: 47~59

    • DOI

      http://dx.doi.org/10.11309/jssst.32.1_47

    • 査読あり / オープンアクセス / 謝辞記載あり
  • [雑誌論文] メソッド抽出リファクタリングが行われるメソッドの特徴調査2014

    • 著者名/発表者名
      後藤 祥, 吉田 則裕, 藤原 賢二, 崔 恩瀞, 井上 克郎
    • 雑誌名

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

      巻: 31 ページ: 318~324

    • DOI

      http://dx.doi.org/10.11309/jssst.31.3_318

    • 査読あり / オープンアクセス / 謝辞記載あり
  • [雑誌論文] 情報検索技術に基づく高速な関数クローン検出2014

    • 著者名/発表者名
      山中 裕樹, 崔 恩瀞, 吉田 則裕, 井上 克郎
    • 雑誌名

      情報処理学会論文誌

      巻: 55 ページ: 2245~2255

    • 査読あり / オープンアクセス / 謝辞記載あり
  • [学会発表] Pull Request 駆動型の開発を支援するツールの検討2015

    • 著者名/発表者名
      齋藤 雄輔, 藤原 賢二, 井垣 宏, 吉田 則裕, 飯田 元
    • 学会等名
      電子情報通信学会 ソフトウェアサイエンス研究会
    • 発表場所
      鳥取県東伯郡三朝町
    • 年月日
      2015-01-26 – 2015-01-26
  • [学会発表] 初学者向けプログラミング演習における探索的プログラミングの実態調査と支援手法の提案2014

    • 著者名/発表者名
      槇原 絵里奈, 井垣 宏, 藤原 賢二, 上村 恭平, 吉田 則裕, 飯田 元
    • 学会等名
      日本ソフトウェア科学会 第21回ソフトウェア工学の基礎ワークショップ
    • 発表場所
      鹿児島県霧島市
    • 年月日
      2014-12-11 – 2014-12-13
  • [学会発表] Supporting Clone Analysis with Tag Cloud Visualization2014

    • 著者名/発表者名
      Manamu Sano, Eunjong Choi, Norihiro Yoshida, Yuki Yamanaka, Katsuro Inoue
    • 学会等名
      International Workshop on Innovative Software Development Methodologies and Practices
    • 発表場所
      香港(中華人民共和国)
    • 年月日
      2014-11-16 – 2014-11-16
  • [学会発表] 開発履歴分析を用いたコードクローン内外における欠陥発生率の調査2014

    • 著者名/発表者名
      中山 直輝, 吉田 則裕, 藤原 賢二, 飯田 元
    • 学会等名
      情報処理学会 第186回ソフトウェア工学研究発表会
    • 発表場所
      大阪府吹田市
    • 年月日
      2014-11-13 – 2014-11-14
  • [学会発表] コードクローン編集者数に着目した開発履歴の分析2014

    • 著者名/発表者名
      辻 健二, 崔 恩瀞, 吉田 則裕, 春名 修介, 井上 克郎
    • 学会等名
      情報処理学会 第186回ソフトウェア工学研究発表会
    • 発表場所
      大阪府吹田市
    • 年月日
      2014-11-13 – 2014-11-14
  • [学会発表] What Kinds of Refactorings are Co-occurred? An Analysis of Eclipse Usage Datasets2014

    • 著者名/発表者名
      Tsubasa Saika, Eunjong Choi, Norihiro Yoshida, Akira Goto, Shusuke Haruna, Katsuro Inoue
    • 学会等名
      4th International Workshop on Empirical Software Engineering in Practice
    • 発表場所
      大阪府吹田市
    • 年月日
      2014-11-12 – 2014-11-13
  • [学会発表] 日本とタイにおけるプログラミング初学者のプログラミング行動の比較2014

    • 著者名/発表者名
      槇原 絵里奈, 藤原 賢二, Putchong Uthayopas, Chantana Chantrapornchai, Jittat Fakcharoenphol, 井垣 宏, 吉田 則裕, 飯田 元
    • 学会等名
      電子情報通信学会 教育工学研究会
    • 発表場所
      石川県金沢市
    • 年月日
      2014-10-18 – 2014-10-18
  • [学会発表] 識別子名のタグクラウドを用いたコードクローン理解支援ツールの開発2014

    • 著者名/発表者名
      佐野 真夢, 崔 恩瀞, 山中 裕樹, 吉田 則裕, 井上 克郎
    • 学会等名
      情報処理学会 第184回ソフトウェア工学研究発表会
    • 発表場所
      茨城県ひたちなか市
    • 年月日
      2014-05-19 – 2014-05-20

URL: 

公開日: 2016-06-01  

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

Powered by NII kakenhi