出典 : http://www.intelligentbee.com/blog/2015/02/20/should-you-do-scrum/
チームプロジェクト を進める上で、特定のプロセスなしに進めた場合に非生産的であることを継続的に感じていました。今回、ソメモ新村(シンチョン)、江南(カンナム)の友人たちのスクラム方式による開発進行を見て感じるところがあり、関連書籍を読みながらスクラムについて学び、プロジェクトに適用してみようと思います。
デイリースクラム会議
1. 会議室を確保せず
2. 立ったまま、最大15分を超えないようにし
3. 1) 前回のデイリースクラム会議以降、何をしたか、 2) 次のデイリースクラムまでに何をする計画か、 3) 何が作業を妨げているか
- リネージュ2開発チームのスクラムより -
"スクラムやアジャイルがチームの目的になっていくことは、常に警戒しなければならない"
"Commen sense isn't common.(常識は普遍的ではない)"
"スクラムを一言で定義すれば、「フィードバックをより早く、より頻繁に、より多く、より継続的にやり取りしよう」と言える"
この本では、スクラムはシンプルだと述べています。また、全体のルールを説明するのに10分もかからない方法だと教えてくれます。しかし、スクラムの哲学と「なぜ」を理解するのには10日かかるかもしれず、スクラムを正しく実践するのには10週間以上かかるかもしれないと注意を促しています。それにもかかわらず、スクラムはシンプルだと言います。
スクラムの簡単な紹介
出典 : http://upload.wikimedia.org/wikipedia/commons/thumb/5/58/Scrum_process.svg/2000px-Scrum_process.svg.png
プロダクトバックログ ( Product Backlog )
まず、システムが解決すべき、あるいはシステムに含まれるべきすべてのこと、すなわち機能(Functionality)、特性(features)、技術を列挙したリストがプロダクトバックログです。プロダクトバックログとは、製品のすべての要求事項を優先順位に従って並べたリストを指します。プロダクトバックログは決して確定するものではありません。むしろ製品とともに成長し、進化します。プロダクトバックログの中で優先順位が最も高い項目が、最も必要な項目です。誰でもプロダクトバックログの内容を提案できます。ユーザー、顧客、営業部門、マーケティング部門、顧客サービス部門、技術部門のすべてが、このプロダクトバックログ項目を提出できます。
しかし、プロダクトオーナーだけがプロダクトバックログ項目に優先順位を付けることができます。プロダクトオーナーは、何が先に開発されるのかを実質的に決定します。
スプリントバックログ ( Sprint Backlog )
スクラムチームは自己組織化されており、完全に自律的です。スクラムチームは、所属する組織の標準と慣行、そして彼らが選択したプロダクトバックログによってのみ制約を受けます。選択したプロダクトバックログをどのように製品インクリメント(おそらく製品インクリメントがスプリントバックログを意味すると思われる)にするかは、完全に開発チームの決定に委ねられています。チームはそのスプリントで実行するタスクのリスト、すなわちスプリントバックログを管理します。
スプリント ( Sprint )
各スクラムチームで開発を進めますが、そのチームは30日の繰り返し周期を設定します。これをスプリントと呼びます。スプリント中に開発可能だと考えた量のプロダクトバックログを選択します。各スプリントの終わりには、新しい機能が追加され、実行可能な製品が引き渡されなければなりません。実際、アーキテクチャと設計は最初のスプリントで完了するのではなく、何度かのスプリントを経て徐々に明らかになります。
スクラムマスター ( Scrum Master )
スクラムがうまくいくためには、チームが自発的であり、信念を持っていなければなりません。スプリント期間中、管理者、すなわちスクラムマスターは、チームメンバーがスクラムの実践を遂行するように促し、チームが意思決定を下したり、必要なリソースを得られるよう支援します。 スプリント期間中、チームはチーム外部の誰によっても妨げられたり、指示を受けたりしてはなりません。
デイリースクラム ( Daily Scrum )
スクラムチームは毎日、デイリースクラムと呼ばれる短い現状会議を行います。デイリースクラムで管理者は進捗状況を検討し、除去すべき障害を確認します。デイリースクラムは、チームの進捗度を確認できる非常に素晴らしい方法です。
スプリントを終えて
チームはスプリントレビュー会議で管理者と共に集まり、今回開発したスプリントバックログについて検討します。それぞれのスプリントバックログ(製品インクリメント)をテストした後、管理者は通常、チームの成果を活用できるようにプロダクトバックログを整理します。プロダクトバックログは、部分的に開発された製品に照らしてみたときに、より大きな意味を持ちます。一度プロダクトバックログが安定すれば、チームは次のスプリントで再びプロダクトバックログの中から最も優先順位が高い項目を選びます。これら一連のプロセスを繰り返し、再びスプリントを完了させます。この循環構造は(経験主義的な管理コスト、時間、機能と品質に基づいて評価し)、製品が潜在的にリリース可能だと判断できるまで続きます。これと共に、製品のリリースに備えてリリースのためのスプリントを計画します。
スクラムとは?
スクラムは直感的です。
スクラムは不適切で煩わしい管理慣行を取り払い、業務そのものだけを残します。
スクラムはチームを自由に動かし、業務に集中できるようにします。
スクラムは、開発者が業務に集中して迅速に高品質の製品を作り出すために必要な、あらゆる管理およびコントロールの権限を提供します。
出典 : http://www.codeproject.com/KB/architecture/scrum/diagram02.png
## 参考資料 : スクラム:チームの生産性を最大化するアジャイル方法論、ケン・シュウェイバー