不確実時代のビジネスと社会のためのソフトウェアエンジニアリング
鷲崎弘宜†

早稲田大学 / 国立情報学研究所 / システム情報 / エクスモーション†
2019 年 8 月 23 日 washizaki@waseda.jp http://www.washi.cs.waseda.ac.jp
1. はじめにソフトウェア工学とは、系統的・規律的・定量的なソフトウェアの開発、運用、保守のアプローチである [1]。ソフトウェア工学知識体系（ Software Engineering Body of Knowledge:SWEBOK）の 2004 年版から 2014 年版への改訂にあたり主に拡充された個所を図 1 に示す。拡充された側面として、ビジネスや経済・社会といった外界との接続とプロフェッショナリズム、モデリングに代表される理論の深化とツールを通じた自動化、重視する品質としてのユーザビリティ等の知識領域強化が図られている。
このように外界との接続を扱う重要性が認識されつつも、計画よりも適応を重視するアジャ
イル開発の現場とソフトウェア工学の間の分断が起きているという問題が提起されている [2]。
この問題意識に基づき、筆者は実務家と連携して、Software Engineering for Business andSociety（SE4BS）と名付け、アジャイル時代の新たなソフトウェア工学体系を創出するプロジェクトを開始している [2]。
本稿では、同プロジェクトを含めて、不確実性を増してるこれからの時代に必要なソフトウェア工学の研究課題を概観する。
要求設計
UI設計
設計ツール

保守
保守ツール

構成管理
構成管理ツール

モデル・手法
モデリング
モデル種別
モデルの分析

エンジニアリング
基礎

品質

コンピューティング
基礎

構築

マネジメント

品質ツール

構築技法
構築ツール

マネジメントツール

プロフェッショナル
実践

テスティング
テストツール

プロセス
プロセス査定・改善
プロセスツール

数学基礎

エンジニアリング
経済図 1. SWEBOK2014 の知識領域と拡充個所
2. これからのソフトウェア工学に向けた課題
ビジネスや社会との接続を深めることにより必然的に、様々な変化に直面し、ソフトウェアの開発・運用・保守において不確実性を扱う必Software Engineering for Business and Society in an Uncertain
Era† Hironori Washizaki, Waseda University / National Instituteof Informatics (NII) / SYSTEM INFORMATION / eXmotion

要性を生じる。その扱いにおいて必要となる側面を、これまでのソフトウェア工学との対比として表 1 に示す。これらの側面に基づき、今後重要と考えられる研究課題と、その達成に向けた進行中の部分的な取り組みを以下に示す。
表 1. ソフトウェア工学に求められる側面
これまで

これから視点開発者 or ユーザ

開発者＋ユーザ＋社会範囲

ソフトウェアシステム、外部接点

ソフトウェアシステム,ビジネス,社会進め方

計画的、静的、共通、クローズド

適応的、動的、多様、オープン重視

仕様

価値、データ、スピード思考法

ロジカル or デザイン

ロジカル+デザイン+コンセプチュアル

推論

演繹、類推

（これまでに加えて）帰納、仮説形成

2.1. ユーザ視点とビジネス接続
ソフトウェア工学の現状把握と発展に向けて、ユーザ視点も含めた体系的なソフトウェア品質評価が不可欠である。具体的には、国際的に詳細比較評価可能な国際規格ベースの評価および認証の枠組みと、品質ベンチマークのオープンデータ化は中長期の課題である。その達成に向け た 部 分 的 な 取 り 組 み と し て例えば筆者は、IPA/RISE 品質実態調査を継続している [3]。また 海 外 で は 、 欧 州 Horizon 2020 において QRapid をはじめとする様々なプロジェクトがある。
品質評価によりソフトウェア工学の取り組みを客観評価できるようにしたうえで、刻々と変化するユーザ像をデータドリブンに獲得し、ビジネス目標から戦略、ソフトウェア品質、構成、運用までを整合性ある形で接続して扱う仕組みが求められる。その達成に向けた部分的な取り組みとして例えば筆者は、ユーザの行動ログに対する自然言語処理や機械学習の適用を通じてユーザ像を半自動的に獲得し、目標や戦略、要求獲得へと役立てるデータ駆動ペルソナ [4]の研究を進めている。また関連し手 NSF は Visionとして、（狭い意味ではなく）すべてをプログラミングする方向性を掲げている。
2.2. 多様な関心事追跡と自動修正・適応外界との接続において必然的に適応的な仕組みが必要であり、加えて高速あるいは動的な検証と自動修正の仕組みが求められる。特に、しばしば領域を超えた接続や相互作用のある IoT

時代において目標・要求からデバイス上の実装までのあらゆる抽象度において整合した形で関心事を追跡し、変化や進化に応じて自動修正・更新する枠組みの実現が中長期の課題である。
その達成に貢献する部分的な取り組みとして、国内では JST ERATO 蓮尾メタ数理や、科研費・基盤 S モデル検査等の多数のプロジェクトがあり、海外においても DARPA では様々な適応的・高速認証のプロジェクトが進められている。関連して筆者は、目標・要求の整合化 [5]や、複雑・多様な関心事の追跡・整合化の仕組み [6]、プログラムからのリバースモデリングを通じた検証や修正の取り組み [7]を進めている。
2.3. 不確実性を考慮した品質マネジメント
目標から実装までの整合化を進めるうえで、不確実性を組み入れたデータ駆動の目標および品質の評価とマネジメントの仕組みの実現も中長期の課題となる。
その達成に向けた部分的な取り組みとして例
えば筆者は、不確実性を直接に組み入れた信頼性予測の仕組み [8]や、適応的に品質基準を改善する仕組み [9]の研究を進めている。

データ、機械学習モデル、ソフト、プロ
セス資産

AI機械 S学 W
習 E
BOK

再利用

部品化・パターン化

高信頼・高効率 機械学習システム
企画・戦略 要求・設計 デプロイ・運用
自動追跡・修正・適応
ビジネス
不確実性考慮マネジメント
接続
展開・検証 テスト・検証 モニタリング

データ駆動
開発者＆ユーザ視点 品質認証

IoT

結果・
影響

マイニング

図 2: 研究課題の統合に向けた一つのビュー[2] 日経 xTECH, “DX 時代の新ソフト工学体系を
世 界 へ 、 ス タ ー 4 人 が 集 結 ”, 2019/04/18
https://tech.nikkeibp.co.jp/atcl/nxt/column/18/00001/0
1934/[3] N. Tsuda, H. Washizaki, et al., “WSQF:
Comprehensive
SoftwareQuality
Evaluation
2.4. 機械学習システムの高信頼化・高効率開発
Framework and Benchmark based on the SQuaRE,”
ビジネス接続や適応的な枠組みを追求するう
ICSE 2019, SEIP
[4] Y. Watanabe, H. Washizaki, et al., “Retrospective
えで、ソフトウェアの開発と運用におけるビッbased on data-driven persona significance in B-to-B
グデータの機械学習を中心とした扱いが不可欠
software development,” ICSE 2018, NIERである。その高信頼化に向けた JST 未来社会 高[5] Y. Aoki, C. Shimura, H. Washizaki, et al.,
信頼機械学習システムプロジェクト（代表: NII“Horizontal Relation Identification Method to Handle
吉岡教授、分担: 筆者ほか）[10] や、ビッグデ
Misalignment of Goals and Strategies Acrossータを扱う仕組みを実現する科研費・基盤 S 双Organizational Units,” IEEE Access, 7(1), 2019
方向変換プロジェクトなどが進められている。
[6] R. Tsuchiya, H. Washizaki, et al., “Interactive
Recovery of Requirements Traceability Links Using
3. おわりにUser Feedback and Configuration Management Logs,”
CAiSE 2015
本稿では不確実な時代に真に“Engineerable[7] Y. Maezawa, H. Washizaki, et al., “AutomatedSoftware”を実現可能なビジネスと社会のため
Verification of Pattern-based Interaction Invariants inのソフトウェアエンジニアリングを展望した。
Ajax Applications,” ASE 2013
長期的には、理論に裏付けされた共通基盤上[8] K. Honda, H. Washizaki, et al., “ Generalizedに お け る 個 々 の 研 究 課 題 の 統合が課題となるSoftware Reliability Model Considering Uncertainty（図 2）。筆者は、知識面の共通基盤を与えるべand Dynamics: Model and Applications, ” Int.
く、SWEBOK の次版策定に向けた全体統括を務めJournal of Soft. Eng. and Know. Eng., 27(6), 2017ている [11]。その中で、AI・機械学習、IoT、[9] N. Tsuda, H. Washizaki, et al., “Machine Learning
およびサイバーセキュリティといった応用領域
to Evaluate Evolvability Defects: Code Metrics
Thresholds for a Given Context,” QRS 2018の組み入れを進めることを計画している。SE4BS[2]は統合に向けた動きの一つとなる予定である。 [10] 高信頼な機械学習応用システムによる価値創造（QAML）, https://qaml.jp/[11] https://www.computer.org/volunteering/boards参考文献and-committees/professional-educational[1] IEEE CS, “The Guide to the Software Engineering
activities/engineering-disciplines-committee
Body of Knowledge (SWEBOK)”, 2014