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

2019 年度 実績報告書

ソフトウェア品質に悪影響を与えうるコードクローンの取得

研究課題

研究課題/領域番号 17H01725
研究機関大阪大学

研究代表者

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

研究期間 (年度) 2017-04-01 – 2020-03-31
キーワードコードクローン / クローンペア / クローンセット / リファクタリング
研究実績の概要

本年度は2つのサブテーマについて取り組んだ.
1つ目は,クローンセット形式でのコードクローン検出法の提案である.コードクローン情報を活用するという観点ではクローンペア形式の検出よりもクローンセット形式の検出の方が望ましいが,既存の検出手法はクローンペア形式でコードクローンを検出するものばかりである.クローンペア形式の検出では,検出された有害なコードクローン情報を活用することは難しい.そのため,有害なコードクローン情報を有効に活用するための基盤として,クローンセット形式で高速にコードクローンを検出する手法について取り組んだ.
2つ目は,コードクローンを対象とした自動リファクタリング法の提案である.すでに既存手法でコードクローンはリファクタリングすべきコードとして指摘されており,さまざまなリファクタリング方法が提案されている.既存手法は,コードクローンになっているコードの関係(同じクラス内に存在するのか,共通の親クラスを持つ異なる子クラスに存在するのか等)を利用して,どのようにコードクローンが除去できるのかを提案するが,それ以降は開発者が手動でリファクタリングを行う必要がある.本研究では,検出されたコードクローンのうち,(1)リファクタリングが可能なものを特定し,(2)そのコードクローンの除去を行い,(3)テストを実装し動作が変わっていないことを確認する,という3つの処理を完全に自動で行う手法について取り組んだ.現時点では,Extract Methodリファクタリングパターンのみが対象となっているが,Pull Up MethodやForm Template Methodなど他のリファクタリングパターンに拡張することも可能である.

現在までの達成度 (段落)

令和元年度が最終年度であるため、記入しない。

今後の研究の推進方策

令和元年度が最終年度であるため、記入しない。

  • 研究成果

    (13件)

すべて 2020 2019

すべて 雑誌論文 (2件) 学会発表 (11件) (うち国際学会 5件)

  • [雑誌論文] On tracking Java methods with Git mechanisms2020

    • 著者名/発表者名
      Higo Yoshiki、Hayashi Shinpei、Kusumoto Shinji
    • 雑誌名

      Journal of Systems and Software

      巻: 165 ページ: 110571~110571

    • DOI

      10.1016/j.jss.2020.110571

  • [雑誌論文] メソッドレベルセマンティックバージョニングの提案と評価2019

    • 著者名/発表者名
      林 純一、肥後 芳樹、楠本 真二
    • 雑誌名

      電子情報通信学会論文誌D 情報・システム

      巻: J102-D ページ: 730~739

    • DOI

      10.14923/transinfj.2018JDP7074

  • [学会発表] Improving the Accuracy of Spectrum-based Fault Localization for Automated Program Repair2020

    • 著者名/発表者名
      Tetsushi Kuma
    • 学会等名
      the 28th International Conference on Program Comprehension
    • 国際学会
  • [学会発表] Staged Tree Matching for Detecting Code Move across Files2020

    • 著者名/発表者名
      Akira Fujimoto
    • 学会等名
      the 28th International Conference on Program Comprehension
    • 国際学会
  • [学会発表] 欠陥限局に適したテストスイートに関する考察2020

    • 著者名/発表者名
      九間 哲士
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会
  • [学会発表] 抽象構文木を利用したファイル間のコード移動検出2020

    • 著者名/発表者名
      藤本 章良
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会
  • [学会発表] A Code Clone Curation --Towards Scalable and Incremental Clone Detection--2019

    • 著者名/発表者名
      Masayuki Doi
    • 学会等名
      the 7th International Workshop on Quantitative Approaches to Software Quality
    • 国際学会
  • [学会発表] How Compact Will My System Be? A fully-automated way to calculate LoC reduced by clone refactoring2019

    • 著者名/発表者名
      Tasuku Nakagawa
    • 学会等名
      the 26th Asia-Pacific Software Engineering Conference (APSEC2019)
    • 国際学会
  • [学会発表] GenProg Meets Cluster Computing2019

    • 著者名/発表者名
      Junnosuke Matsumoto
    • 学会等名
      the 10th International Workshop on Empirical Software Engineering in Practice
    • 国際学会
  • [学会発表] 複数プロジェクトから高速にコードクローンを検出するキュレーションの提2019

    • 著者名/発表者名
      土居 真之
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会
  • [学会発表] 自動バグ限局に適したテスト自動生成に向けて2019

    • 著者名/発表者名
      九間 哲士
    • 学会等名
      ソフトウェアエンジニアリングシンポジウム2019
  • [学会発表] 大規模なプロジェクト群を対象とした高速にコードクローンを検出するキュレーションの提案2019

    • 著者名/発表者名
      土居 真之
    • 学会等名
      ソフトウェアエンジニアリングシンポジウム2019
  • [学会発表] 分散処理を用いた自動プログラム修正の高速化2019

    • 著者名/発表者名
      松本淳之介
    • 学会等名
      電子情報通信学会ソフトウェアサイエンス研究会

URL: 

公開日: 2021-01-27  

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

Powered by NII kakenhi