Softwear Engineering Laboratory

Other/その他

  • 我々は,安心,安全なオープンソースソフトウェア(OSS)の実現に向けて,OSSの開発・利活用,それをとりまく個人やコミュニティを支援するための技術を研究しています.
    Androidをはじめ,OSSが広く利活用される一方で,OSSの欠陥が実社会の経済活動を揺るがす事例も少なくありません.不特定多数の人が開発するOSSの成否は,開発者の動機や社会性,人間関係など,心理学・社会学的要素が強く関係します.
    我々は,ソフトウェアの品質や生産性について定量的・体系的に課題解決することが困難な課題を,ステークホルダの知識共有や知識創発という観点から解決する新たな研究分野「OSS工学」の確立を目指しています.
    研究グループでは,ソフトウェア科学会誌コンピュータソフトウェアに解説記事を執筆していますので,詳細はこちらをごらんください.

     

    伊原彰紀, 大平雅雄, “オープンソースソフトウェア工学,” コンピュータソフトウェア, 33(1), pp. 28-40 2016年1月. [PDF]

  • sample150平尾 俊貴
    Hirao Toshiki

    ソフトウェアコードレビューに関する研究

    (Code Review Process in Open Source Software)

    コードレビューはソフトウェア品質を保証するための有効な手法として,ソフトウェア開発プロセスで実践的に利用されています.一般的にコードレビューとは,検証者が欠陥の有無,可読性の高さ,コード規約に従っているかなどを人手で検証する作業です.検証者にはレビューする箇所に対して高い専門知識を持つ必要があります. また,オープンソースソフトウェア(OSS)開発では日々バグレポートが報告されており,OSS開発者はソースコードを改良します.これらの膨大なソースコードの変更に対して,必ずコードレビューする必要があり,多大なレビュー時間を必要とします.我々はコードレビューを効率化させて,OSS開発支援を行いたいと考えています.

    主な研究成果・外部発表等

    1. Toshiki Hirao, Akinori Ihara, and Ken-ichi Matsumoto, “A Pilot study of collective decision-making in the code review process”, In Proceedings of the Center for Advanced Studies on Collaborative Research (CASCON’15), 2015.
    2. Toshiki Hirao, Akinori Ihara, Yuki Ueda, Passakorn Phannachitta, and Ken-ichi Matsumoto. The impact of a low level of agreement among reviewers in a code review process. In Proceedings of the 12th International Conference on Open Source Systems (OSS’16), 2016.
    3. Toshiki Hirao, Akinori Ihara, Yuki Ueda, Passakorn Phannachitta, and Kenichi Matsumoto, “Towards a Better Reviewer Recommendation Using the Level of Agreement,” The 7th International Workshop on Empirical Software Engineering in Practice (IWESEP2016), March 2016.
  • オープンソースソフトウェア利活用に関する研究

     

    sample150

     

     

    藤野啓輔
    Fujino Keisuke

    不具合修正過程から見るOSSの安定時期予測

    (Monitoring Bugs-Fixing Process After the Releases in Open Source Software)

    オープンソースソフトウェア (OSS) のリリース直後は,欠陥が数多く混入していることが多く,開発者,利用者など不特定多数の参加者の協力により欠陥が修正され,徐々に品質を向上する開発形態をとっています.昨今,数多くの企業がOSSの導入を始めていますが,新しく導入するOSSの品質,および,将来的な保守作業を評価することは容易ではありません.
    我々は,企業におけるOSS導入の意思決定を支援することを目的とし,OSSに発見される欠陥の改修プロセスとOSS導入動向(人気度)の調査を行っています.さらに,ソフトウェア信頼性モデルと呼ばれる数理モデルを用いて,OSSの保守継続期間を予測する技術開発に取り組んでいます.本研究は,新しくOSSの導入を検討する組織が,より高品質,かつ,OSS開発者によるサポートが得られる導入時期の決定を支援します.

    sample300

    主な研究成果・外部発表等

    1. Masao Ohira, Yutaro Kashiwa, Yosuke Yamatani, Hayato Yoshiyuki, Yoshiya Maeda, Nachai Limsettho, Keisuke Fujino, Hideaki Hata, Akinori Ihara, and Kenichi Matsumoto, “A Dataset of High Impact Bugs: Manually-Classified Issue Reports,” In Proc. of 12th Working Conference on Mining Software Repositories (MSR2015), 採録済.
    2. Keisuke Fujino, Akinori Ihara, Kiyoshi Honda, Hironori Washizaki, and Ken-ichi Matsumoto, “Toward Monitoring Bugs-Fixing Process After the Releases in Open Source Software,” IWESEP2014, November 2014. Best Poster Award.
    3. [3] 藤野啓輔, 伊原彰紀, 本田澄, 鷲崎弘宜, 松本健一, “OSSの不具合修正曲線に基づき未修正不具合数の予測の試み,” 第21回ソフトウェア工学の基礎ワークショップ(FOSE2014), pages 57–62, 2014年12月.
    • sample150
      湯月亮平

      Ryohei
      Yuzuki

      メソッドコンフリクトの分析
      (Method-Level Conflict Analysis)

      複数の開発者による並行開発は近年大規模化が進むソフトウェア開発において一般的な活動となっています。ブランチによって開発ラインを分岐させることで、他の開発者の影響を受けずに作業を行うことが可能となり、作業が完了した後で分岐した開発ラインをマージすることで各開発者の成果を統合することができます。しかし、マージする際、編集場所が競合するコンフリクトが発生することがあります。コンフリクト解消のサポートを目指して、我々はメソッドレベルでのコンフリクトの原因や解消を分析しました。

      sample300

      主な研究成果・外部発表等

      1. Ryohei Yuzuki, Hideaki Hata, and Kenichi Matsumoto, “How We Resolve Conflict: an Empirical Study of Method-Level Conflict Resolution,” 1st International Workshop on Software Analytics (SWAN 2015), pages 21-24, March 2015.
      2. 湯月亮平, 畑秀明, 松本健一, “マージにおけるメソッドコンフリクト解消の実態調査,” 第21回ソフトウェア工学の基礎ワークショップ(FOSE2014), pages 51-56, 2014年12月.
      3. 湯月亮平, 畑秀明, 松本健一, “開発者はどのようにしてコンフリクトを解消しているのか:コンフリクト解消の自動化に向けて,” ウィンターワークショップ2014・イン・大洗 論文集, pages 31-32, 2014年1月.
    • sample150
      Nachai
      Limsettho

      Automated Bug Report Categorization

      This Automated framework focuses on reducing the amount of human effort required to obtain information from bug reports. While bug report categorization can greatly help in understanding software development and improving its process, it is a daunting task because of the required amount of human effort to complete this task. We propose a framework of automatic bug report categorization. It first applies topic modeling techniques to discover “topics” in the collection of bug reports, and then classifies them with the features of existing topics. Result from our experiments demonstrated that our framework could automatically categorize bug reports with good results and much less human effort.

      sample300

      主な研究成果・外部発表等

      1. Nachai Limsettho, Hideaki Hata, Akito Monden, and Kenichi Matsumoto, “Automatic Unsupervised Bug Reports Categorization,” 6th International Workshop on Empirical Software Engineering in Practice (IWESEP 2014), pages 7-12, November 2014.
      2. Nachai Limsettho, Hideaki Hata, and Kenichi Matsumoto, “Comparing Hierarchical Dirichlet Process with Latent Dirichlet Allocation in Bug Report Multiclass Classification,” 15th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD 2014), pages 137-142, June 2014.
    • sample150
      松本健一

      Kenichi
      Matsumoto

      ソフトウェアプロジェクトトモグラフィ
      (Software Project Tomography: SPT)

      ソフトウェア開発では、ソフトウェア品質そのものや品質に影響を与える開発過程の情報を多くのベンダのみが知りうるという、いわゆる、「情報の非対称性」が問題となっています。ソフトウェアプロジェクトトモグラフィ(SPT)は、一般的なソフトウェア開発管理システムが収集・蓄積しているソフトウェア開発データを、「要件」、「作業」、「組織」、「プロダクト」、「課題」の5つの観点に分類した上で、解析結果と関連するプロダクト断片を付加し、スナップショットと呼ぶデータ複合体の時系列として再構成するための枠組みです。これにより、「品質評価に必要となるソフトウェアプロジェクトデータの提供」と「提供されたデータに基づくプロジェクト理解」を容易にし、「情報の非対称性」の解消を目指します。

      sample300

      主な研究成果・外部発表等

      1. 松本健一, “ソフトウェアプロジェクトトモグラフィ − ソフトウェア品質の第三者評価に向けたソフトウェア品質管理−,” ソフトウェアプロセスエンジニアリングシンポジウム2014 (平26-7).
      2. Kenichi Matsumoto, “New Trends in Software Engineering,” International Conference on Advanced Information Technologies 2013 (AIT 2013),