メインコンテンツへ
ソフトウェア

ソフトウェアプロダクトライン(SPL)の説明として正しいものはどれか。

ア.同一製品の異なるバージョンを時系列に管理する手法であり、Gitのバージョン管理と同義である。
イ.単一のソフトウェア製品の品質を高めるため、ユニットテストを体系化した開発アプローチである。
ウ.共通のコアアセット(アーキテクチャ・コンポーネント・要件)を再利用して、関連する製品群(プロダクトファミリー)を効率的に開発する手法である。正解
エ.アジャイル開発のスプリント計画とバックログ管理を指す用語で、スクラムの別名として使われる。

解説

SPLは「プラットフォームカー」を一台設計して、そこからセダン・SUV・ミニバンを作り分けるトヨタ方式。共通基盤を一度作れば、バリエーションを安く速く量産できる。

なぜ ウ が正解か

ウが正解。ソフトウェアプロダクトラインは「プロダクトファミリー」アプローチ。家電メーカーが同じプラットフォームで高・中・低グレード製品を作るように、共通コアアセット(アーキテクチャ・共通コンポーネント・ドメインモデル)を再利用し、可変点(変数機能)で製品を分化させる。CMU SEIが体系化し、Bosch・Philipsの組み込みシステム開発で成果を上げている。

なぜ ア は間違いか

バージョン管理はGit・SVN等のVCSの話。SPLは「異なる製品間」の共通化であり時系列管理とは別概念。

なぜ イ は間違いか

ユニットテストの体系化はTDD・XPの話。SPLはテスト手法ではなく製品開発戦略。

なぜ エ は間違いか

スクラムはアジャイルフレームワーク。SPLはスクラムとは無関係の独立した概念。

出典: AI生成問題(学習用)