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

流動的なプログラミング作法の最適化技術

研究課題

研究課題/領域番号 20J15163
研究種目

特別研究員奨励費

配分区分補助金
応募区分国内
審査区分 小区分60050:ソフトウェア関連
研究機関奈良先端科学技術大学院大学

研究代表者

上田 裕己  奈良先端科学技術大学院大学, 先端科学技術研究科, 特別研究員(DC2)

研究期間 (年度) 2020-04-24 – 2022-03-31
研究課題ステータス 完了 (2021年度)
配分額 *注記
1,700千円 (直接経費: 1,700千円)
2021年度: 800千円 (直接経費: 800千円)
2020年度: 900千円 (直接経費: 900千円)
キーワードコーディング規約 / コードレビュー / ソースコード解析 / 静的解析ツール / ソフトウェア工学 / プログラミング作法 / プログラム解析
研究開始時の研究の概要

ソフトウェア規模の拡大に伴い,異なる経験や技術的背景を持つ多数の開発者が協力して数万行に渡るソースコードを記述しているなか,開発者は自分と記述形式の異なる他人が記述したソースコードの機能を理解するために開発作業全体で約50%の時間を費やす.本研究はソフトウェア開発の中で変化するプログラミング作法を開発組織や技術に合わせて継続的に抽出および最適化する技術を提案する.加えて,発展的・挑戦的な課題として,抽出および最適化したプログラミング作法を文章化することで,開発組織で閉じた暗黙知を他の組織や個人が再利用可能な形式にする.

研究実績の概要

本研究は,ソフトウェアの継続的な品質維持を目的として,ソフトウェアプロジェクトの変更に追従するよう,コーディング規約を最適化および抽出する手法を提案する.
ソフトウェア開発において,ソースコードの理解に要する時間を削減する取り組みの一つにコーディング規約の利用がある.組織がコーディング規約を採用することで,ソースコードの可読性を向上させるだけでなく,将来的にバグを発生させやすい記述を予防する効果がある.一方で,言語仕様の頻繁な変更やソフトウェアプロジェクトの多様性拡大により,自身が扱うプロジェクトに適合したコーディング規約を選定することは困難である.またコードレビューへの分析により,開発者は規約での自動検出が困難な修正作業を繰り返し行っていることを確認している. 本研究では,コーディング規約の誤用と規約不足を解決するために,コーディング規約の改訂を支援する以下の手法を提案する.
(1) 既存コーディング規約の最適化手法:開発者が実際に遵守しているコーディング規約に基づき,静的解析ツールで検証するコーディング規約を自動設定する手法を提案する.実験の結果,提案手法を用いることで,開発者が手動で設定した場合よりも静的解析ツールによる誤検出を削減できることを確認した.
(2) 新規コーディング規約の抽出手法:開発者が行ったソフトウェア変更を規約として抽出する手法を提案する.実験の結果,提案手法を用いて自動生成した修正パッチのうち,80% (8/10) がソフトウェアプロジェクトに採用されたことを確認した.
以上,ソフトウェア開発において,ソースコードの一貫性を保持するための手法を提案し,実験的な評価を行った.本研究で得られた成果はソフトウェア開発において,開発者の方針を定型化し,ソフトウェア製品の品質向上に貢献すると考えられる.

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

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

今後の研究の推進方策

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

報告書

(2件)
  • 2021 実績報告書
  • 2020 実績報告書
  • 研究成果

    (4件)

すべて 2021 2020 その他

すべて 雑誌論文 (1件) (うち査読あり 1件、 オープンアクセス 1件) 学会発表 (2件) (うち国際学会 1件) 備考 (1件)

  • [雑誌論文] コードレビュー作業において頻繁に修正されるソースコード改善内容の分析2020

    • 著者名/発表者名
      上田 裕己、石尾 隆、伊原 彰紀、松本 健一
    • 雑誌名

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

      巻: 37 号: 2 ページ: 2_76-2_85

    • DOI

      10.11309/jssst.37.2_76

    • NAID

      130007863820

    • ISSN
      0289-6540
    • 年月日
      2020-04-23
    • 関連する報告書
      2020 実績報告書
    • 査読あり / オープンアクセス
  • [学会発表] Automatically Customizing Static Analysis Tools to Coding Rules Really Followed by Developers2021

    • 著者名/発表者名
      Yuki Ueda
    • 学会等名
      8th IEEE International Conference on Software Analysis, Evolution and Reengineering, Proceedings of the 28th IEEE International Conference on Software Analysis, Evolution and Reengineering
    • 関連する報告書
      2020 実績報告書
    • 国際学会
  • [学会発表] 静的解析ツールの誤検出および検出漏れの最小化支援2020

    • 著者名/発表者名
      上田 裕己
    • 学会等名
      第206回ソフトウェア工学研究発表会
    • 関連する報告書
      2020 実績報告書
  • [備考] Publication | Yuki Ueda

    • URL

      https://ikuyadeu.github.io/publication/

    • 関連する報告書
      2020 実績報告書

URL: 

公開日: 2020-07-07   更新日: 2024-03-26  

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

Powered by NII kakenhi