Thanks Driven Life

日々是感謝

鮭の滝登りモデル (Salmon Model)

サーモン・モデルとは

鮭の滝登りモデル、通称サーモン・モデル (Salmon Model:以下 SM) は、
かの有名なウォーターフォール・モデルと対をなす、あたらしい開発モデルです。

由来はその名の通り、鮭が産卵時、外海から故郷へ戻る際の命がけの滝登りである。

サーモン・モデルの作業工程

これはウォーターフォール・モデルと変わらず、下記フェーズに分類できる
  • 要件定義
  • 外部設計・内部設計
  • 開発
  • テスト
  • 運用

ウォーターフォール・モデルとの違い

要件定義、もっと言えばお客様からの要望を形にしていくという、
いわゆる 想像から創造 へつなげるのがウォーターフォール・モデルです。

これに対し、サーモン・モデルはすでに可動している運用やテスト、ソースコード(資産)を組み合わせていき
最終的にお客様の要望というパズルを完成させる、いわば 創造の輪廻 です。

利点

資産の粗結合
サーモン・モデルでは、現存する極小単位の資産を組み合わせていくことによりシステムが構築されていきます。
これは、後述する保守の観点からも、コーディング時に気をつけるべきである「モジュールの粗結合」が
およそ自動的に達成できるということを表しています。
開発者は、 in/out が釣り合うモジュールを組み合わせていくだけでいいのですから。

保守性
粗結合ということはそれだけテストしやすい形になっている。保守性も確保できる

仕様変更に強い
ウォーターフォール・モデル最大の欠点とも言える「仕様変更」に強いのが、サーモン・モデル最大の利点です。(途中)

欠点

資産管理
極小の資産を組み合わせるという性質上、パズルの面積が広くなるほど、パーツの数が跳ね上がります。
これらの管理をどのように行うかがサーモン・モデルを勧めていく上で必要なこととなります。

ウォーターフォールモデルとの関連性

鮭は生まれるとウォーターフォール。次世代に命をつなげるときサーモンモデル

ここまで書いて飽きた