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

Semantic Diffを用いた高品質ソフトウェアの発展過程に関する研究

Research Project

Project/Area Number 10139220
Research Category

Grant-in-Aid for Scientific Research on Priority Areas (A)

Allocation TypeSingle-year Grants
Research InstitutionAichi Prefectural University

Principal Investigator

山本 晋一郎  愛知県立大学, 情報科学部, 助教授 (40240098)

Co-Investigator(Kenkyū-buntansha) 粕谷 英人  愛知県立大学, 情報科学部, 助手 (10295579)
吉田 敦  豊橋技術科学大学, 知識情報工学系, 助手 (50283495)
Project Period (FY) 1998
Project Status Completed (Fiscal Year 1998)
Budget Amount *help
¥2,000,000 (Direct Cost: ¥2,000,000)
Fiscal Year 1998: ¥2,000,000 (Direct Cost: ¥2,000,000)
KeywordsSemantic Diff / 差分 / ソフトウェア発展 / Specializer
Research Abstract

広く用いられているUNIXのdiffは,行単位での差分を出力する汎用的なツールであるが,改行や空白の挿入,削除や,コメントの変更などソースプログラムの意味に影響を与えない場合でも差分として出力する.そのため,diffの出力からソースプログラムの意味的な変化を理解するには,多大な労力が必要である.このことが,保守工程において,過去の保守作業の内容を理解する工程を労働集約的にしている要因でもある.
本研究では,プログラムの意味を考慮した差分抽出法,すなわちプログラムの意味に影響を与えない差分を排除し,構文単位で差分を抽出するための手法を提案した.
我々は既に,意味を考慮した差分抽出ツールを提案し,
吉田敦,山本晋一郎,阿草清滋:意味を考慮した差分抽出ツール,情報処理学会論文誌,Vol.38,No.6,pp.1163-1171(1997/6)
として発表している.過去の研究では,一つの関数についてステートメントのみを比較の対象としていたが,本研究では,ファイル全体について各種宣言と関数内のステートメントを対象とすることにより,よりコンパクトな差分を抽出することが可能となった.
また,過去の研究では,コメント,空白,変数に定数値を代入するステートメントの移動をプログラムの操作的意味に影響を与えないとして取り扱っていたが,本研究では,制御文が持つブロックの開始と終了を表す“{"と“}"の有無,宣言の順序,宣言の仕方(複数の識別子を一つの宣言で宣言している場合と各識別子ごとに宣言している場合を区別しない),関数のプロトタイプの有無,依存関係のないステートメントの順序なども扱うことが可能となった.
さらに,構文要素の「移動」について判定し,その結果を提示する手法に関しても研究を行った.提案した抽出法に基づいてツールを実装し,実際のソースプログラムに適用することで,差分の理解が容易になることを確認した.

Report

(1 results)
  • 1998 Annual Research Report
  • Research Products

    (6 results)

All Other

All Publications (6 results)

  • [Publications] 吉田敦,山本晋一郎,阿草清滋: "抽象スレッドに基づくソースプログラムの依存解析の枠組の提案" コンピュータソフトウェア. Vol.16No.1. 46-56 (1999)

    • Related Report
      1998 Annual Research Report
  • [Publications] 鈴木宏紀,山本晋一郎,阿草清滋: "プログラムの構造情報の視覚表現を用いた動作情報の視覚化" 日本ソフトウェア科学会 WISS'98. 99-104 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] 三浦良,山本晋一郎,阿草清滋: "プログラムパターンの段階的抽出手法" 日本ソフトウェア科学会FOSE'98. 181-188 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] 吉田 敦,山本 晋一郎,阿草 清滋: "ソースプログラムに対する変更操作が可能な細粒度ソフトウェアリポジトリの提案" 日本ソフトウェア科学会FOSE'98. 189-198 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] 岩本奈美,山本晋一郎,阿草清滋: "部分評価を利用したプログラム部品抽出手法" 電子情報通信学会技術研究報告. SS98-36. 9-16 (1998)

    • Related Report
      1998 Annual Research Report
  • [Publications] 福安直樹,山本晋一郎,阿草清滋: "細粒度リポジトリに基づいたCASEツール・プラットフォームSapid" 情報処理学会論文誌. Vol.39No.6. 1990-1998 (1998)

    • Related Report
      1998 Annual Research Report

URL: 

Published: 1998-04-01   Modified: 2016-04-21  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi