機雷がなんだ! 全速前進!

SEというかプログラマというか、日々のエンジニア生活の中で体験したことなどを中心に書きためていくことにする。

スクラムとウォーターフォールに纏わるメモ

スクラムとウォーターフォールに纏わる呼び方がいくつかある中で、下記の言葉の定義を誤解していたので忘備録として書き残しておく。

  1. ウォータースクラム
  2. スクラマーフォール
  3. ウォータースクラムフォール(ウォーター・スクラム・フォール)

ウォータースクラム / スクラマーフォール

スクラムに「ウォーターフォール」スタイルの開発を重ねたもの。 たとえば、分析スプリント、設計スプリント、コーディングスプリント、テスティングスプリントのように進んでいく。 この呼び方は書籍『エッセンシャル スクラム』P.34, 377で紹介されている。

books.rakuten.co.jp

著者であるケネス・S.ラビン(Kenneth Rubin)はスプリントの考え方におけるよくある間違い(アンチパターン)として下記のように述べている。

「 スプリントの考え方でよく間違えられるのは、各スプリントで一種類の作業だけに集中してしまうことだ。

(中略)

スクラムでは、工程に対して一度に作業をすることはない。フィーチャーに対して作業するのだ。したがって、スプリントが終わるときには、 価値のあるプロダクトインクリメント(プロダクトのフィーチャーの一部)を作り出している。 」

ウォータースクラムフォール(ウォーター・スクラム・フォール)

InfoQで10年ほど前に紹介されている呼び方で、原文では「Water-Scrum-Fall」と記載されている。

www.infoq.com

下記のように説明されており、

  • Water – 多くの場合はITとビジネスの間に行われる、前倒しのプロジェクト計画プロセスの定義
  • Scrum – 「Water」段階で最初に定められた計画全体を達成するための反復・進化型のアプローチ
  • Fall – 組織方針やインフラの制約によって定められる、制御された、頻繁でない本番リリースサイクル

こちらはハイブリッドアジャイル、エンタープライズアジャイルとかいう文脈で語られるものに近い。
(下記のようなイメージ)

f:id:orinbou:20210220165830p:plain

IPAの事例紹介

https://www.ipa.go.jp/files/000049403.pdf

Agile Japan 2016(セッションB-2)の記事

https://www.manaslink.com/articles/15328

上記の例は下記の本の関係者が紹介してるっぽい。

books.rakuten.co.jp

エンタープライズアジャイルについても明確な定義はなく(エンタープライズアジャイル勉強会)の書籍

books.rakuten.co.jp

によると

「小さなチーム単位で浸透しつつあるアジャイルによるシステム開発を、より大きな組織やシステム向けにスケールアップしたもの」

ということらしい。

また、同じエンタープライズアジャイル勉強会の実行委員であるGraat社鈴木雄介氏の論文

エンタープライズ領域のアジャイル開発の課題─アジャイル開発がもたらす意思決定プロセスの変化─

では

「ウォーターフォール開発プロセスを主に実施している組織において実施されるアジャイル開発プロセスのこと」

と定義されおり、定義が揺れているので、コミュニケーションする際は(あとで事故らないよう)注意が必要ですね。 (「アジャイル」や「DevOps」もですけど、、、)