ソフトウェア・プロダクトライン ~「製品開発」から「製品群開発」へ
株式会社エクスモーション
シニアコンサルタント 山内 和幸
6.SPLによる従来型の問題の解決
ここで、本稿の冒頭で述べた保守の問題について振り返ってみます。SPL開発では、この問題を本当に解決できるのでしょうか。答えはYESです。 SPLにおけるコア資産は、共通部だけでなく可変部も含みます。そして、管理されている可変性に対して、各開発成果物(要求仕様、内部設計、コード、テスト仕様、etc.)が正しく製品を導出できるように開発されます。このため、コア資産の最新バージョンは、その時点でスコープに含まれている製品を全てカバーできる状態になっているのです。従来の開発と比較してこれを図示すると、以下のようになります。つまり、コア資産のバージョンが上がっても互換性が維持されるように、開発を行っているのです。この結果、コア資産の最新バージョンを保守するだけで、全ての製品の保守を行うことができます。
図 8:SPL開発と従来型の開発の比較
従来型の開発とSPLを比べてみるとわかるとおり、従来型では各バージョンが「特定の製品」に対応しているのに対し、SPLでは「製品群」に対応しています。言い換えると、前者は個別最適な開発を、後者は全体最適な開発を行っていると言えるでしょう。この、「全体最適の視点で製品群全体を開発していく」という姿勢こそが、SPLの根幹を成す考え方なのです。
SPLは単純な開発技術ではなく、ビジネス戦略や開発プロセス・組織構成の最適化等も含んだ包括的なパラダイムであるため、非常に大きな工学体系になっています。このため、そのポイントを上手く掴んで、実開発に役立てることが重要です。本稿では、SPLというパラダイムの一部を、スコーピングと可変性管理を中心に要点だけを説明してきましたが、多くの方の改善の一助となれば幸いです。