楠本研究室

業績一覧

ホーム業績一覧

自動修正適合性 : 新しいソフトウェア品質指標とその計測手法の提案

自動修正適合性 : 新しいソフトウェア品質指標とその計測手法の提案
修士論文, 大阪大学
概要: ソフトウェア開発におけるデバッグコストの削減を目的とした自動プログラム修正に関する研究が盛んに行われている.自動プログラム修正技術は,欠陥を含むプログラムとテストスイートを入力とし,欠陥を取り除いたプログラムを自動的に出力する.これまでに多くの自動プログラム修正手法が提案され,オープンソースソフトウェアに含まれる多くの欠陥に自動プログラム修正技術が適用されてきたが,修正の成功率は高くない.そこで,著者は自動プログラム修正技術を開発するだけでなく,プログラムも自動プログラム修正技術で修正しやすいように開発するべきだと考えた.本研究では,自動修正適合性という新しいソフトウェア品質指標を提案する.自動修正適合性は,自動プログラム修正技術が対象のプログラムに対してどの程度効果的に作用するかを表す.自動修正適合性を利用することで,ソフトウェア開発に自動プログラム修正を導入するかを事前に判断できる.また,自動プログラム修正技術で欠陥を修正しやすくするために,自動プログラム修正技術の適用前に修正対象のプログラムをリファクタリングする研究も可能になる.自動プログラム修正技術で欠陥を修正しやすいプログラムの構造が明らかになれば,これまで修正できなかった欠陥を修正できるようになる.本研究ではプログラムの自動修正適合性を自動的に計測する手法も提案する.提案手法は,全てのテストケースが成功するプログラムから,ミューテーションテスト技術を利用して人工的な欠陥を含むプログラムを複数生成する.それらの欠陥を自動プログラム修正技術でどの程度修正できたかを計測する.自動プログラム修正技術で修正しやすいプログラムの構造の調査を目的として,小さいプログラムを対象に,構造の違いによる自動修正適合性の違いを分析した.その結果,ネストの深さあるいは循環的複雑度を小さくするリファクタリングが自動修正適合性を向上させる傾向があることを確認した.また,実際の OSS で発生した 106個の欠陥対象に,プログラムの構造によって欠陥の修正しやすさが変化するか確認した結果,構造の変換により新たに 9 個の欠陥を修正できるようになった.
@mastersthesis{九間哲士2021,
  author = {九間 哲士},
  title = {自動修正適合性 : 新しいソフトウェア品質指標とその計測手法の提案},
  school = {大阪大学},
  year = {2021},
  month = {feb}
}