ICT・ロボット
工学拠点
Frontier of Embodiment Informatics:
ICT and Robotics

スーパーグローバル大学創成支援(SGU) Waseda Ocean構想Waseda Goes Global: A Plan to Build a Worldwide Academic Network
that is Open, Dynamic and Diverse

解析測定によるソフトウェア高信頼化および開発効率化の研究

鷲崎 弘宜(早稲田大学グローバルソフトウェアエンジニアリング研究所所長)

多くの機器が繋がり社会の隅々までをソフトウェアが支える今日において、多様な要求や環境変化に対応可能なソフトウェアの効率的な開発保守、ソフトウェアの機能性やセキュリティ、信頼性を含む多面的な品質向上を通じた高信頼化、さらには効率化と高信頼化の両立が社会的急務である。

我々の研究グループでは、ソフトウェアおよび各種開発運用データの測定と解析を通じて、ソフトウェア高信頼化および開発効率化の両方について、実開発の文脈下で同時達成可能な技術群を産学官連携により研究実践し、社会展開を進めている。具体的には(1)プログラム資産の解析による部品化および分析・設計パターンの再利用を通じた効率的開発、(2)目標指向によるソフトウェアの特徴解析と測定に基づく品質評価、(3)過去のプロジェクトにおける開発プロセス、開発チームを含むリソースおよびソフトウェアの品質データ間の関係分析を通じた高信頼化と開発効率化の両者の達成について取り組んでいる。各概要を以下に示す。

(1)高品質な部品を60%以上再利用して開発すれば開発効率性や信頼性が2-3倍になることが知られているが、過去の部品化研究は再利用を意図した部品の扱いを中心とし、再利用を意図せず要求との対応関係が不明瞭な多くの既存資産を扱えず、信頼性保証の仕組みも欠く。そこで我々は、再利用可能範囲の識別とインタフェース生成により再利用性の高い部品を自動抽出し再利用を意図していなかった資産の有効活用に成功した。さらに要求との追跡性を自動確保し再利用性向上に成功している。例えば日立製作所と共同で、要求とプログラムの対応関係の高精度な自動回復に成功した。

また、これまでに品質を効率よく組み入れられる再利用可能なパターンが多く知られているが、その適用と検証は人手に基づき効率性と信頼性を欠いていた。そこで我々は、設計パターンの可変箇所と不変箇所を区別し、適用対象の特定箇所と照合することでパターンの自動適用、および、網羅的な状態遷移の探索やテストを通じた適用の正しさの自動検証に成功しつつある。例えば国立情報学研究所や東京大学と連携して、JavaScriptを用いたリッチなWebアプリケーションのパターンを通じた検証に成功した。さらに国立情報学研究所や情報セキュリティ大学院大学等と連携してセキュリティを組み入れるパターンの適用検証に成功し、2015年からは情報科学国際交流財団の支援のもとでFlorida Atlantic Universityほか国際連携しつつクラウドサービスへの応用を進めている。

(2)ソフトウェアの品質を定量化しうる多数の測定法が研究されつつも、その定義や運用における目標や定義に根拠を欠くことが現状であり、結果として品質の多面的および開発運用を通じた一貫した定量化を阻んでいた。そこで我々は、目標指向により測定法を導出し、導出における根拠を記録することで多面的な品質測定評価に成功している。例えばオージス総研との共同研究ではプログラムを対象とした実用の多面的品質診断ツールを実現し、様々な現場で活用されつつある。

(3)ソフトウェア、プロセス、リソースの各品質評価研究は盛んであるが、それらの間の影響関係は未解明である。そこで我々は、目標指向の枠組みのもとで、過去の多数のプロジェクト実績におけるソフトウェア、プロセス、チームを含むリソースの特徴および品質を解析測定し間の影響関係をモデル化、さらには品質改善方針の立案およびアクションを容易化することに成功しつつある。例えばYahoo! JAPANとの共同研究では、ソフトウェアやプロジェクトのデータを測定して品質を診断および予測し、改善アクションに繋げられることを確認した。また富士通との共同研究では、開発中の組織変更が多いほどプログラムが複雑化し欠陥を増すことを突き止めた。さらに2015年からは情報処理推進機構の支援のもと、ソフトウェア製品の多面的な品質間の関係を総合的に実証した世界初のベンチマークを構築しつつある(参考: 「ソフトウェア製品において世界初のベンチマークとなる品質実態調査と評価枠組みの研究に着手」)。

クリックで拡大表示