トップダウンのWF、ボトムアップのスクラム、その成功の鍵 - アドベントキャンドル3本目 -
左はアドベント(注参照)の日めくりであるアドベントカレンダーの写真ですが、この記事では週毎のアドベントキャンドルを灯しています。今回はプロセスプログラミングの視点でウォーターフォール開発とスクラム開発を考えてみます。
特徴
ウォーターフォール開発 (WF) ではトップダウンに管理され、スクラム開発ではボトムアップに自律的な管理をします。プロセスをプログラミングのメタファで考えると、特徴は以下のようになります。
トップダウン(WF)
全体の統率が取れ、一貫性が得易い。その反面、同じような機能が複数分散する事がある。
ボトムアップ(スクラム)
共通化が行い易く、無駄のない仕組みが作り易い。その反面、全体で一貫性のある仕組みが作りにくい。
より良くするには
トップダウンとボトムアップは古くから議論されています。どちらにも良いところがあるものの、一方だけでは良いプログラムはできません。主なアプローチがどちらであるにせよ、他方の要素を取り入れる事が求められます。
トップダウン(WF)
構造化設計においてもデータモデリングが重視されました。同じように、情報のモデリングを行い、処理の共通化と一元化を実現すればより良くなる可能性があります。
ボトムアップ(スクラム)
ボトムアップの方法ではトップダウンの要素を少し入れるだけで、全体の見通しが良くなります。実際、スクラムのスプリントとバックログの仕組みは、全体の見通しを良くし、開発者の行動はチームに任されています。
成功の鍵
以上から成功の鍵を考えると、WFにおいては情報のモデリングと情報の共有がポイントでしょう。チケット駆動開発はその解決策の候補の一つです。
スクラム開発に置いては、チームに任された改善活動が成功の鍵でしょう。それぞれのチームがプロセスを改善する中にも横断的な関心事(アスペクト)がありますので、無駄に再発明することが無いように社内に限らず情報共有の場を持つ事が求められるでしょう。
おわりに
今回はプロセスプログラミングの視点でウォーターフォール開発とスクラム開発を考えてみました。WFにはチケット駆動開発が、スクラムにはアスペクトを維持する活動が成功への鍵だと思います。
WFとスクラムの違いにはプロセスのプログラミング方法だけでなく、管理するか導くかという実践方法の違いもあります。WFはメトリクスで管理し、スクラムはファシリテーションで導きます。すでに長くなりましたので、このお話は次回に回します。
注:アドベント(待降節)は年初め
クリスマスは日本ではお正月前のお祭りですが、キリスト教文化ではクリスマスの4回前の日曜から始まるアドベントが年初めで、お正月はあまり祝いません。
そのかわりに、クリスマスよりも大切なお祭りがイースター(復活祭)です。成人が入信する際に行われる洗礼式は、クリスマスよりもイースターで多く行われます。
ただ、イースター前の40日は四旬節といって肉食をやめたり断食をする期間なので、カトリックの多い国ではその前にカーニバル(謝肉祭)で騒ぐ様です。
« プロセスを分割してリリースポイントを作る - アドベントキャンドル2本目 - | トップページ | ソフトウェアは人が協力して作る - アドベントキャンドル4本目 - »
「私のアジャイル」カテゴリの記事
- 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)
- 論文研修会(導入編)- 論理的思考のすすめ -(2019.12.01)
- デブサミ関西でNode-REDとペンギンと勇気の話をしました #devsumiB(2018.10.28)
「チケット駆動開発」カテゴリの記事
- 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)
« プロセスを分割してリリースポイントを作る - アドベントキャンドル2本目 - | トップページ | ソフトウェアは人が協力して作る - アドベントキャンドル4本目 - »
コメント