1. HOME
  2. ソリューション
  3. プロダクトライン開発

プロダクトライン開発

ものがあふれる現代、身の回りにある多くの機器は機能が飽和し、一から製品を開発する機会はほとんどありません。開発現場においても、既存資産を可能な限り活用して新しい製品を作り出すことが、単純に「開発量を減らす=早期リリースを可能にする」と考えられ、安易なコピーによる開発が横行しています。しかし、そうすることの副次的な問題により、開発現場は一向に楽になることはありません。では、どうすれば良いのでしょうか。

既存資産をコピーすることが引き起こしている問題

多くの現場では、新製品の開発時に過去に開発した類似製品の資産(=既存資産)をコピーして、派生開発や再利用開発をスタートします。

図1上は典型的な派生開発を示しています。この方法では製品のコピーを場当たり的に繰り返しており、コピー元の資産は統一されていません。

図1下は典型的な再利用開発を示しています。こちらはコピー元の資産は統一されていますが、各製品はコピー元資産の特定バージョンをコピーしています。

【従来の派生開発】各バージョンが個々の製品に対応×製品の変更が複数バージョンに及ぶ【従来の再利用開発】各製品は、特定バージョンの資産から作成×製品の変更が複数バージョンに及ぶ

これらの方法は、各製品の資産とコピー元資産の多くの部分を重複してメンテナンスする必要があるため、一つの製品に変更が必要となった時に、同様の変更が複数の製品バージョンに及ぶ可能性があるという問題を抱えています。

SPL開発とは

上記の問題はSPL(ソフトウェアプロダクトライン)開発によって解決することができます。図2はSPL開発のイメージを示しています。

【SPL開発】最新バージョンから全製品が導出可能◎最新バージョンのみ変更すればよい

SPL(ソフトウェアプロダクトライン)開発では、コピーではなく、統一して管理された資産から各製品を導出する点に大きな特徴があります。

統一して管理された、再利用可能な資産のことを部品化したコア資産と呼び、いつでも製品群の全ての製品の導出が可能であるように、定期的にバージョンアップします。そのため、どの製品に変更が必要になっても、変更は部品化したコア資産の最新バージョンのみでよくなります。

また、新製品の開発時には、既に開発・テスト済みの部品化したコア資産を最大限に再利用できるため、新製品固有機能の作り込みのみに専念することができます。

このように変更開発時・新規開発時のいずれにおいても、SPL開発では重複した機能開発を防ぐことができるため、従来に比べて、ムダな開発工数を削減することができます。

SPL開発への移行の進め方

では、SPL(ソフトウェアプロダクトライン)開発に移行するためにはどうすればよいのでしょうか?

一般的には、要求からトップダウン的に部品化し、製品群全てを導出可能なコア資産を構築します。しかし、この方法は非常に大掛かりであり、開発現場の負担が大きいため、多くの開発現場では導入に踏み出すことができません。

これに対して、既存資産を最大限に再利用することにより、比較的早期にSPL開発に移行することができる方法があります。図3は、そのプロセスを示しています。当社ではこのアプローチのことを、RIPPLE(Rapid/Requirement Integration Production Product Line Evolution)と呼んでいます。

SPL(ソフトウェアプロダクトライン)化することで、「派生開発」の重複のムダを排除し、開発効率を劇的に改善|1. 調査・計画|2. 既存資産を統合・差分分析|3. 部品化によるコア資産作成|4. 製品を導出

01

調査・計画

既存資産を解析して製品を統合する順序を決定し、具体的な移行プランを立案します。

02

既存資産を統合・差分分析

移行プランに従って既存資産の要求やコード/モデルを統合し、統合結果から製品間の差分を明らかにします。

03

部品化によるコア資産作成

統合した資産から全ての製品を導出できるように、統合した資産のアーキテクチャを再利用しやすい構造に洗練させ、部品化してコア資産を作成します。

04

製品を導出

部品化したコア資産から機能を組み合わせる仕組みを構築し、その仕組みを用いて個別の製品を導出します。

コンサルタントが教える成功の秘訣

コンサルタント 吉元 崇

多くの開発現場では常に開発効率の改善を求められています。これを解決する手段としてSPL(ソフトウェアプロダクトライン)開発を取り入れている現場は少なくないようですが、多岐にわたる工学的知識を独力で習得し、正しく実践していくことは大変難しく、期待する効果が得られていないケースも見られます。

エクスモーションでは、これまで様々なSPL(ソフトウェアプロダクトライン)開発の導入支援を実施してきました。それら支援を通じて培われた実践的なノウハウにより、現場にとってわかりやすく、具体的なSPL開発の進め方のご提案と実践が可能です。

SPL(ソフトウェアプロダクトライン)開発の進め方に迷ったら、ぜひ、私たちにご相談ください。皆さんと一緒になって変革を成し遂げることを楽しみにしております。

吉元崇

SPLプロダクトライン開発の関連サービス

人材育成

SPLトレーニング

ソフトウェアプロダクトライン工学(SPLE)の概要から、その中心となる理論・技術までを総合的に学習できます。開発者・品質担当・プロセス改善従事者など製品開発に携わる全ての方への教育にご利用ください。

EurekaBoxは、オンラインで学べる総合学習&実践プラットフォームです。このコースでは、これからSPLを学んでいきたいという人から、実践している人に向けて、コンテンツを用意しています。SPLの基礎から応用までをわかりやすく解説します。

"RIPPLEアプローチ"とは、既存のソフトウェアから再利用資産化できそうなものを抽出し、製品開発時に新たな要件等を加えて資産を増やしていく方法です。既存ソフトウェアの調査、プロダクトライン化計画の作成、実施の全ての活動を総合的に支援します。

RIPPLEアプローチに基づくPL開発への移行を目的とし、このアプローチが適切かどうか、システムのどの部分から対応していくべきか、どの程度の工数がかかるのかを診断します。

SPL関連コラム

プロダクトライン開発をアップグレードさせた『新たなプロダクトライン開発』でソフトウェアファースト時代に備える!

ソフトウェアを共通化する方法として、プロダクトライン開発がありますが、OTAを考慮するとプロダクトラ...

コラム

ソフトウェアファースト時代に不可欠な新たなプロダクトライン開発とは

自動車業界を中心に「ソフトウェアファースト」という言葉がもてはやされています。それは、目指すべき方向...

コラム

SPL(ソフトウェアプロダクトライン)化で「派生開発」の効率化

近年のユーザニーズの多様化、国際的な競争の激化等で、組込み製品のバリエーションは増える一方です。そし...

コラム

SimulinkモデルにおけるSPL(プロダクトライン開発)可変点の設計・実装テクニック

可変性の実現(可変点の設計・実装) コア資産は、スコープに含まれる複数の製品での利用を想定して開発さ...

コラム

C/C++コードにおけるSPL(プロダクトライン開発)可変点の設計・実装テクニック

可変性の実現(可変点の設計・実装) コア資産は、スコープに含まれる複数の製品での利用を想定して開発さ...

コラム

UMLモデルにおけるSPL(プロダクトライン開発)可変点の設計・実装テクニック

可変性の実現(可変点の設計・実装) コア資産は、スコープに含まれる複数の製品での利用を想定して開発さ...

コラム

SPL「プロダクトライン開発」における可変性の決定に基づく製品導出の仕組み紹介

PL(プロダクトライン)開発では、コア資産から製品用資産を「導出」することで、製品の開発を行います。...

コラム

SPL「プロダクトライン開発」は可変性の分析・モデル化でコア資産を再利用

プロダクトライン(PL)開発におけるコア資産のメンテナンス性は、可変性を如何にうまく捉えるかによって...

コラム

頑張ってるけど、ちっとも楽にならない…何で?

すぐに成果を出すために頑張ってるけど、自前ではもう限界

効果的だろうけど高額なコンサルには手がでない…

あなたに合う一番最適な解決方法を
エクスモーションがご提案いたします。

プロダクトライン開発に関する記事を見る

他のソリューションを見る

最新コラム