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

Fluid programming style optimization technology

Research Project

Project/Area Number 20J15163
Research Category

Grant-in-Aid for JSPS Fellows

Allocation TypeSingle-year Grants
Section国内
Review Section Basic Section 60050:Software-related
Research InstitutionNara Institute of Science and Technology

Principal Investigator

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

Project Period (FY) 2020-04-24 – 2022-03-31
Project Status Completed (Fiscal Year 2021)
Budget Amount *help
¥1,700,000 (Direct Cost: ¥1,700,000)
Fiscal Year 2021: ¥800,000 (Direct Cost: ¥800,000)
Fiscal Year 2020: ¥900,000 (Direct Cost: ¥900,000)
Keywordsコーディング規約 / コードレビュー / ソースコード解析 / 静的解析ツール / ソフトウェア工学 / プログラミング作法 / プログラム解析
Outline of Research at the Start

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

Outline of Annual Research Achievements

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

Research Progress Status

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

Strategy for Future Research Activity

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

Report

(2 results)
  • 2021 Annual Research Report
  • 2020 Annual Research Report
  • Research Products

    (4 results)

All 2021 2020 Other

All Journal Article (1 results) (of which Peer Reviewed: 1 results,  Open Access: 1 results) Presentation (2 results) (of which Int'l Joint Research: 1 results) Remarks (1 results)

  • [Journal Article] Analysis of Prevalent Code Improvements through Code Review2020

    • Author(s)
      上田 裕己、石尾 隆、伊原 彰紀、松本 健一
    • Journal Title

      Computer Software

      Volume: 37 Issue: 2 Pages: 2_76-2_85

    • DOI

      10.11309/jssst.37.2_76

    • NAID

      130007863820

    • ISSN
      0289-6540
    • Year and Date
      2020-04-23
    • Related Report
      2020 Annual Research Report
    • Peer Reviewed / Open Access
  • [Presentation] Automatically Customizing Static Analysis Tools to Coding Rules Really Followed by Developers2021

    • Author(s)
      Yuki Ueda
    • Organizer
      8th IEEE International Conference on Software Analysis, Evolution and Reengineering, Proceedings of the 28th IEEE International Conference on Software Analysis, Evolution and Reengineering
    • Related Report
      2020 Annual Research Report
    • Int'l Joint Research
  • [Presentation] 静的解析ツールの誤検出および検出漏れの最小化支援2020

    • Author(s)
      上田 裕己
    • Organizer
      第206回ソフトウェア工学研究発表会
    • Related Report
      2020 Annual Research Report
  • [Remarks] Publication | Yuki Ueda

    • URL

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

    • Related Report
      2020 Annual Research Report

URL: 

Published: 2020-07-07   Modified: 2024-03-26  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi