アジャイル開発とソフトウェアプロダクトラインの関係
平鍋さんの記事が面白かったのでメモ。
【元ネタ】
Agile Software Product Line を考える:An Agile Way:ITmedia オルタナティブ・ブログ
(引用)
「まずは、Agile Product Line というものがあるとしたら、What is it ? であり、What is it for ? というところから考えなくてはならない」
という方針のもとに、
* AgileもSoftware Product Line(SPL)も、Business Valueが目的(Goal)である。ただし、そのアプローチが違う。(3つの○。上位目的がBusiness Valueで、右がAgile、左がSPL)
* 経済的観点から、SPLはAssetベース。AgileはFlowベース。SPLはB/S志向であり、AgileはP/L、さらにはキャッシュフローベース。
* SPLはProduct Familyのドメイン知識をAssetとして蓄え、その再利用によって効果的な製品開発を行う。キーとなるソフトウェア品質は「再利用性」。
* Agileはワンショットのプロジェクトにおいて、フローベースでROIを最適化する。1プロジェクト毎のコンテキスト重視。キーとなるソフトウェア品質は「変更可能性」。
* 両者を融合するには、ワンショットのプロジェクトをAgileで、プロジェクト終了時に、得たknowledgeのアセット化により、SPLへフィードバックする。
* これにより、企業ワイドで、再利用資産を使うことにより、さらなる製品のAgility(早期の市場投入)ができるようになる。
という概要を書き出しました。
アジャイル開発とソフトウェアプロダクトライン(SPL)は、密接に絡んでいるようでいて、水と油みたいだと思っていた。
SPLはWF型開発を前提とした開発プロセスの実践例が多いと思うから、そもそもアジャイル開発とは相容れない所が多い。
しかし、SPLは再利用するためにコア資産を育てていく発想があり、その観点はアジャイル開発における小規模リリースの発想に似ている。
アジャイル開発でも、システムを小刻みにバージョンアップさせながら、品質も機能も改善していく発想だからだ。
特にソフトウェア品質の観点は密接に絡んでいると思う。
アジャイル開発では、保守性(平鍋さんの言葉では変更可能性)を重視する。そのためにリファクタリングという手法が編み出された。
SPLでは、移植性(平鍋さんの言葉では再利用性)を重視する。コア資産をベースに製品ファミリーを増やしていく開発スタイルだからだ。
この開発スタイルは、製造業の多品種少量生産に似ている。
そしてSPL、アジャイル開発のどちらも並行開発になるから、メインラインモデルをベースにタスクブランチ、トピックブランチなど各種の構成管理手法が必要になるはず。
つまり、高度なソフトウェア工学の知識や経験を必要とするように思う。
「SPLはB/S志向であり、AgileはP/L、さらにはキャッシュフローベース」という平鍋さんの言葉が興味深い。
確かに、SPLはコア資産をまさに資産として扱う。コア資産の品質を維持しながら、時代に合わせて機能拡張しなければ、資産価値が落ちる。
Agileの場合、タイムボックス(イテレーション)単位の開発だから、イテレーションが終わればストーリーはリセットされる。その発想は、期末になれば売上と費用が集計されて、翌月の初めから新たに売上と費用がゼロから発生するのに似ている。
そして、顧客に価値あるソフトウェアを届けるのを信条とするアジャイル開発は、まさにキャッシュフローベースとも言える。
SPLがソフトウェアファクトリーの発想に影響を受けたというKan先生の言葉も興味深い。
Scrumも野中先生の論文が提唱元になっている。
実は、日本発のアイデアが今の主流のソフトウェア開発に影響を与えている点が何となく逆説的な気がする。
アジャイル開発とソフトウェアプロダクトラインの関係は今後も追いかけていく。
| 固定リンク
「ソフトウェア工学」カテゴリの記事
- Redmineのブロッキング機能で工程単位Redmine運用とトレーサビリティを解決するアイデア(2026.09.21)
- 第23回Redmine大阪の感想~AIの暴走はチケット駆動で制御する!AI時代に人間が担うべき真の役割は何なのか? #redmineosaka(2026.09.06)
- AI時代のソフトウェア開発者とはアーキテクトの役割として再定義される(2026.08.30)
- AI時代の「コードと人間の関係」を問い直す—デブサミ関西2026で考えた、アーキテクチャの未来とコミュニティの価値 #devsumi(2026.08.22)
- 人の成果物は品質基準に不足しすぎるが、AIの成果物は品質基準を超過しすぎる(2026.08.16)
「Agile」カテゴリの記事
- 第23回Redmine大阪の感想~AIの暴走はチケット駆動で制御する!AI時代に人間が担うべき真の役割は何なのか? #redmineosaka(2026.09.06)
- AI時代の「コードと人間の関係」を問い直す—デブサミ関西2026で考えた、アーキテクチャの未来とコミュニティの価値 #devsumi(2026.08.22)
- チケット駆動でAIを制御する仕組みのアイデア(2026.08.13)
- アジャイル開発を強化するキルチェーン進化の歴史~VUCA時代におけるモノづくりの新アーキテクチャ(2026.08.11)
- 脱PDCA!DXを加速する超高速戦略「KillChain」(2026.08.10)


コメント