プラットフォーム開発(platform development)
複数の製品で共通して使う土台を先に作り、その上に個別の部分を載せていく開発の進め方。
もう少し詳しい説明
プラットフォーム開発は、複数の製品で共通して使う土台(プラットフォーム)を先に作り、その上に個別の部分を載せていく進め方です。
もとは製造業の考え方です。自動車で、車台(プラットフォーム)を複数の車種で共通にし、外装や内装だけを変える、というやり方が知られています。
何を変えるのか
製品ごとに全部作るやり方と比べると分かります。
| 1つめの製品 | 2つめの製品 | |
|---|---|---|
| 製品ごとに全部作る | 全部作る | また全部作る |
| プラットフォーム開発 | 土台+個別部分 | 個別部分だけ |
2つめ以降が速くなります。 1つめは、共通に使えるよう作るぶん、かえって時間がかかります。
どこまでを土台にするか
ここが設計の勘所になります。
| 土台が小さすぎる | 土台が大きすぎる |
|---|---|
| 共通化の効果が出ない | 個別の事情が入り込み、変えにくくなる |
| 結局、製品ごとに作ることになる | ある製品のために直すと、ほかが壊れる |
大きすぎるほうが危険です。 全製品が同じ土台を使っているので、1か所直すと全部に影響します。影響の確認に時間がかかり、だんだん誰も手を入れなくなります。
土台には、本当に全製品で同じものだけを入れる。
迷ったら個別側に置く、というのが実務の目安になります。
利点と代償
| 中身 | |
|---|---|
| 速い(2つめ以降) | 差分だけを作ればよい |
| 品質が上がる | 土台は何度も使われるので、不具合が早く見つかる |
| 費用が下がる | 同じものを何度も作らない |
| 最初が重い | 1つめの製品は、むしろ時間がかかる |
| 自由度が下がる | 土台から外れたことがやりにくい |
| 影響が広い | 土台の不具合は、全製品に出る |
最初が重いことは、導入を決めるときの壁になります。1製品だけを見ると割に合いません。何製品に展開するかを見込んで判断することになります。
ソフトウェアでの形
ソフトウェアでは、いくつかの呼び方で同じことが行われています。
| 呼び方 | 中身 |
|---|---|
| 共通基盤 | 認証(相手が本人かどうかを確かめる手続き)、ログ、通知など、どのシステムも使う仕組みをまとめる |
| フレームワーク | アプリの骨組みを提供し、決まった形に沿って作らせる |
| ソフトウェアプロダクトライン | 製品群に共通する部分と可変部分を整理して開発する考え方 |
認証やログは、どのシステムにも要ります。 システムごとに作ると、作り方がばらばらになり、直すときも全部を回ることになります。共通基盤にまとめておけば、一度直せば済みます。
SOA(機能をサービスという単位に切り出し、組み合わせてシステムを作る考え方)で機能をサービスとして使い回すのも、方向としては同じです。
試験ではこう出る
科目A(旧・午前)では、プラットフォーム開発の説明がそのまま問われます。「共通部分を土台として先に開発し、その上に個別部分を載せる」が答えです。
ほかの開発モデルとの区別で出ます。プロトタイピング(先に動く試作を見せて、要望を聞きながら作っていく進め方)、ウォータフォール、スパイラルと並べられます。
出題数は多くありません(このサイトでは重要度2としています)。定義の一行と、2つめ以降が速くなるという利点を押さえておけば足ります。
応用情報では、どこまでを共通化するかの判断が問われることがあります。
関連する用語
- エンジニアリングシステム(CAD・CAM・FMS・PDM)
- もとは製造業の考え方。自動車の車台を共通化するのと同じ発想
- SOA(サービス指向アーキテクチャ)
- 機能を部品にして使い回す。共通化という点で地続き
- オブジェクト指向
- 共通部分を上にまとめ、違うところだけ下で書く
- クライアントサーバシステム
- どこに処理を置くか。共通基盤をどこに持つかの判断と重なる
ミニクイズ
プラットフォーム開発の説明として、適切なものはどれか。
正解は 2番:複数の製品に共通する部分を土台として先に開発し、その上に個別部分を載せる
プラットフォーム開発は、複数の製品やシステムに共通して使える部分を土台として先に作り、その上に製品ごとの違う部分を載せていく進め方です。共通部分を一度作れば、2つめ以降の製品は差分だけを作ればよくなります。試作品を見せて要求を固めるのはプロトタイピング、上流から下流へ順に進めるのはウォータフォールモデル、コードを書かずに作るのはノーコード開発で、どれも別の話です。
この分野をまとめて解く → システム開発とユーザーインタフェースのミニテスト(全40問)
最終更新:2026-10-20