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

2011 年度 実施状況報告書

理解と品質維持に適したソースコード修正を支援する開発環境の構築

研究課題

研究課題/領域番号 23700030
研究機関東京工業大学

研究代表者

林 晋平  東京工業大学, 情報理工学(系)研究科, 助教 (40541975)

研究期間 (年度) 2011-04-28 – 2014-03-31
キーワードソフトウェア進化 / リファクタリング / ソフトウェア構成管理 / ソフトウェア開発環境
研究概要

本研究の目的は,開発者がソースコードに対して行う変更を,開発の後段での理解が容易になるよう,また対象ソフトウェアに与える品質の悪影響を抑制するよう構成可能な開発環境を実現することである.平成23年度では,以下の成果を得た.1. ソフトウェア統合開発環境下で行われたソースコードの編集操作を,その編集意図と関連づけて管理するためのモデルの基本設計を行った.2. ソースコード編集操作履歴の理解性・利用性向上を目的として,履歴全体の効果を保存したままその構造を書き換える,編集操作履歴のリファクタリング手法を提案し,4つの基本操作および2つの合成操作を定義した.また,特定のソースコード編集操作に関連する操作群を集中的に分析・再生できるよう,それらを抽出する編集操作履歴のスライシング手法も提案した.いずれについても,自動化ツールのプロトタイプを実現した.3. 二つの版のソースコード間の差分を効率よく分析するために,差分からリファクタリング操作を検出し,得られた操作を一方の版に再適用することによって差分を構造化するツールを実現し,その有用性を複数の実験により確認した.4. ソースコード変更を,その変更対象のプログラム機能を考慮して理解できるよう,変更の説明記述から対応するプログラム機能を特定するための技術を開発した.5. パターンに基づきプログラム設計を改善する変更を推薦する手法を開発し,その支援ツールを実現した.6. 今後に向けて本研究の国際的な位置づけを明確とするために,既存のソフトウェア進化研究の動向を系統的に調査し整理した.

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

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

理由

本研究では大きく,1. 開発者の変更操作履歴の再構成と 2. それに対応したソースコードの品質改善の2つの実現を目的としている.平成23年度では,基本的な変更モデルを構築し,それに基づき1のプロトタイプツールを完成させている.また,ソフトウェア進化の既存研究の調査もこれまでに進めており,我々の提案するシステムの新規性および既存研究との位置づけも明らかにできていると考える.これらにより,平成24年度は1については変更モデルの拡張およびそれへのツールの追従に注力することができる.また,2についても同様に,構築したモデルに基づきツールの実装を開始することができる.

今後の研究の推進方策

平成24年度では,これまでに構築した変更モデルの拡張から開始する.モデルの拡張方法としては,大きなリファクタリングなどのような変更の階層構造をより考慮すること及び分岐を取り扱えるようにすることから検討する.また,平成23年度に実現した支援ツールを,これらの拡張に追従させる.さらに,平成23年度の変更モデルに基づき,ソースコードの品質改善ツールのプロトタイプを構築する.平成25年度では,構築したツールの公開に向け,そのユーザビリティを洗練させるなど,完成度を向上させていく.また,構築したツールのユーザビリティや有用性の評価を行う.

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

平成23年度では完成度の高いツールの実装に先立ち変更モデルの設計を優先したため,大学院生を雇うための謝金の執行時期が遅れたが,この予算は平成24年度以降で利用する.平成24年度では,前年度に構築した編集操作履歴のリファクタリングツールの拡張を行いながら,その完成度を向上させていく.この作業と,有用性評価のための実験の準備のために,謝金を用いて大学院生を雇う.そのほか,ソフトウェア保守国際会議(ICSM)や欧州ソフトウェア保守・リエンジニアリング国際会議(CSMR)などの国際会議,ソフトウェア工学の基礎ワークショップ(FOSE)などの国内ワークショップに参加し,提案中の編集操作履歴リファクタリングやそれに関連する技術の研究成果を発表していく.

  • 研究成果

    (8件)

すべて 2012 2011

すべて 雑誌論文 (6件) (うち査読あり 5件) 学会発表 (2件)

  • [雑誌論文] Feature Locationを用いたソフトウェア機能の対話的な実装理解支援2012

    • 著者名/発表者名
      林 晋平, 関根 克幸, 佐伯 元司
    • 雑誌名

      情報処理学会論文誌

      巻: 53(2) ページ: 578-589

    • 査読あり
  • [雑誌論文] ソフトウェア進化研究に関する動向調査 - IWPSEシリーズを題材に -2012

    • 著者名/発表者名
      大森 隆行, 丸山 勝久, 林 晋平, 沢田 篤史
    • 雑誌名

      電子情報通信学会技術研究報告

      巻: 111(481) ページ: 121-126

  • [雑誌論文] Supporting Design Model Refactoring for Improving Class Responsibility Assignment2011

    • 著者名/発表者名
      Motohiro Akiyama, Shinpei Hayashi, Takashi Kobayashi, Motoshi Saeki
    • 雑誌名

      Model Driven Engineering Languages and Systems (MODELS 2011 Proceedings, Lecture Notes in Computer Science)

      巻: 6981 ページ: 455-469

    • DOI

      10.1007/978-3-642-24485-8_33

    • 査読あり
  • [雑誌論文] Understanding Source Code Differences by Separating Refactoring Effects2011

    • 著者名/発表者名
      Sirinut Thangthumachit, Shinpei Hayashi, Motoshi Saeki
    • 雑誌名

      Proceedings of the 18th Asia Pacific Software Engineering Conference (APSEC 2011)

      巻: - ページ: 339-347

    • DOI

      10.1109/APSEC.2011.47

    • 査読あり
  • [雑誌論文] ソースコード編集履歴のリファクタリング手法2011

    • 著者名/発表者名
      林 晋平, 大森 隆行, 善明 晃由, 丸山 勝久, 佐伯 元司
    • 雑誌名

      ソフトウェア工学の基礎XVIII

      巻: - ページ: 61-70

    • 査読あり
  • [雑誌論文] プログラム理解支援を目的とした編集操作スライスとその再生2011

    • 著者名/発表者名
      丸山 勝久, 木津 栄二郎, 大森 隆行, 林 晋平
    • 雑誌名

      ソフトウェア工学の基礎XVIII

      巻: - ページ: 121-126

    • 査読あり
  • [学会発表] ソースコード編集履歴のリファクタリング手法2011

    • 著者名/発表者名
      林 晋平
    • 学会等名
      第18回ソフトウェア工学の基礎ワークショップ
    • 発表場所
      浅虫温泉, 青森
    • 年月日
      2011年11月25日
  • [学会発表] Supporting Design Model Refactoring for Improving Class Responsibility Assignment2011

    • 著者名/発表者名
      Shinpei Hayashi
    • 学会等名
      ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems
    • 発表場所
      Museum of New Zealand Te Papa, Wellington, New Zealand
    • 年月日
      2011年10月20日

URL: 

公開日: 2013-07-10  

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

Powered by NII kakenhi