[#TiDD] アジャイル風開発ラフシミュレーション
以前まとめたアジャイル風開発のリスク対応力についてラフシミュレーション、いわゆるドンブリ勘定をしてみました。突っ込みどころは多々あると思いますが、ざっくりと考えるきっかけになると思い、公開します。
前提
状況:いつでも実装を始められる。
仕様書作成:完成には1ヶ月かかる。期間は考慮するが工数は考慮外とする。
製造工数:12人月(アジャイル:3人×4ヶ月、その他: 4人×3ヶ月)
問題の発生パターン1:2・2・2人月、あるいは2・1・2・1人月の問題が開発後期に発生
問題の発生パターン2:2・1・ 0 ・ 0 人月の問題が開発後期に発生
残業:問題発生の翌月から25%の残業ができる
仕様削減:アジャイル開発、五月雨ウォーターフォールは2人月の仕様を削減可能
ウォーターフォール
ウォーターフォールでは仕様が固定されていますので、パターン1しかありません。
あふれた作業は残業でも吸収できません。4人月分残ります。リリースを1ヶ月のばすか、混乱を招いても人を足して少しでも早めるかですね。できれば残業と類似プロジェクトの経験者で何とかしたいところですね。
五月雨ウォーターフォール
図中ではまとめて書いていますが、文書化と開発を段階的に進めます。見積もりや発注が煩雑になりますが、文書による仕様の確認後に請負契約を段階的にします。
パターン1では、優先度の低い仕様を削減しても2人月あふれます。ウォーターフォールよりは少ないですが、残業での吸収は厳しいですね。
パターン2では25%の残業で何とか吸収できます。リスクベースの計画で問題による工数が削減された事、優先度の低い仕様を削減できた事の効果が大きい様です。
スクラムウォーターフォール
全体のプロセスをウォーターフォールで構成し、実装と単体テストをスクラムで開発する方法です。仕様はあらかじめ固定されていますが、段階的に開発する事で環境やUIなど実装中のリスクをある程度低減できます。
パターン1では4人月あふれますのでウォータフォールと変わりません。繰り返し開発によるプロセス改善で、少しは削減できると思われますが、ふりかえりの時間を削りたくなってしまうかもしれません。
パターン2ではリスクベースの効果があるものの、徹底したプロセス改善であふれた2人月を削減するのは厳しいでしょう。
アジャイル開発
最初の開発に必要なユースケース等が明らかになっていると言う前提ですので、文書化の期間も実装でき、少ない人数で開発できます。アジャイルでの残業と言う行為に目をつむると、残業の可能な期間も長くなります。
パターン1では最も少ない1.75人月の工数があふれます。ふりかえりの改善効果のほか、アジャイル開発では実装以降の作業も実装と同時に行うので、その工数を実装中に割り振ると考えると何とかなるかもしれません。
パターン2では25%の残業をするとなんと工数が余ります。残業を減らす事もできますし、削減可能な仕様を復活できるかもしれません。
まとめ
アジャイル風の開発と言ってもその効果は様々です。アジャイル開発で実装を優先する効果は大きく、リスクをうまく低減できる可能性があります。
一方、ウォータースクラムフォールは、チームのコミュニケーションやプロセス改善の効果は期待できると思われますが、リスクに対してはあまり効果がありません。今回は考慮しませんでしたが、ウォーターフォール開発でプロトタイピングや共通化によってリスクの低減を図る方が、場合によっては効果があるかもしれません。
今回の結果で意外と良かったのは五月雨ウォーターフォールです。安定した発注が可能かどうかと言う問題はありますが、うまくいくとウォータースクラムフォールよりも効果がありそうです。
最後にアジャイル開発のパターン2の問題の発見が遅れたパターンを考えてみました。リスクの考慮をしないで優先度のみで実装を進めると、リスクが顕在化が遅れてしまう可能性があります。この場合だと0.5人月ですが、あふれてしまいました。リスクの考慮は大切ということですね。
論文ネタを探している方へ
ご自由にこのネタを使ってください。ご協力も可能ですので、必要でしたらご連絡ください。
« [#TiDD] 分類と制約から自律・協調へ #xpjugkansai #devsumi | トップページ | [#TiDD] 世界に飛び出したチケット駆動開発 »
「私のアジャイル」カテゴリの記事
- One fact in one placeとチケット駆動開発 - Software Processes are Software, Too -(2021.12.21)
- マルチスレッド処理と進捗管理・配員・作業分割/割り当て- Software Processes are Software, Too -(2021.12.20)
- カプセル化と組織パターン - Software Processes are Software, Too -(2021.12.20)
- Greedy algorithmと2割8割の法則 - Software Processes are Software, Too -(2021.12.12)
- 「任せて、任せず」「魚を与えるのではなく"釣り"を教えよ」(2021.08.16)
「チケット駆動開発」カテゴリの記事
- One fact in one placeとチケット駆動開発 - Software Processes are Software, Too -(2021.12.21)
- マルチスレッド処理と進捗管理・配員・作業分割/割り当て- Software Processes are Software, Too -(2021.12.20)
- カプセル化と組織パターン - Software Processes are Software, Too -(2021.12.20)
- [#TiDD] ポケモンGOにチケット駆動開発のポイントを学ぶ(2018.05.01)
- [#TiDD] プロジェクトを成功させるチケット管理(2017.07.02)
« [#TiDD] 分類と制約から自律・協調へ #xpjugkansai #devsumi | トップページ | [#TiDD] 世界に飛び出したチケット駆動開発 »
コメント