はじめに
開発の現場では、
毎朝朝会を10-15分程決まった時間帯に実施することはよくある。
特にアジャイルを取り入れているプロジェクトであれば、デイリースクラムとして朝会 or 昼会 or 夕会を毎日実施しているだろう。
ただし、よく見られる光景なのだが、、
リーダーに対して進捗報告をするだけの場となっていないだろうか?
自分以外の進捗状況やタスクに全く興味なく単方向でのコミュニケーションとなっていないだろうか?
デイリースクラムの目的、アンチパターン、即実践すべきこと、について語っていく。
デイリースクラムの目的
ざっくりいうと、以下かと。
全員が業務内容や課題を共有し、コミュニケーションを促進する場とすること
アンチパターン
長時間化
デイリースクラムは毎日実行するイベントとなるため、15分程度が良いとされています。
そのため、タイマーなどを使用し時間内に終わるように努めるべきです。
詳細な技術討議や問題解決に時間がかかってしまう
特定の問題について深く議論することになりそうであれば、別の場を設けること。
別の場を設ける場合は、必要なメンバのみにを集めること
スクラムマスター、もしくはリーダーに報告する場になっていないか?
デイリースクラムはリーダーに報告する場ではありません!
チームメンバー間のコミュニケーションを促進すべき
ただの進捗報告会
スプリントゴールの達成に向けた検討や適応がなく、単なる報告で終わってしまうこと。
他のメンバーの共有内容を聞かない
チームメンバーが互いの報告に関心を持たず、自分の報告だけに集中してしまうこと
→自分のタスク状況を共有したら、他メンバの進捗を聞かず自分の作業に入ってしまう、とかね。。
準備不足
メンバーが自分の状況を詳細に把握していないこと。
事前に進捗状況をまとめ、簡潔に報告できるよう準備すべき
即実践すべきこと
アンチパターンから即実践すべきことを記載していく
- 時間を決める
- 15分以内で終わらせるようにしよう
- 技術討議・問題解決に時間がかかりそうなら別の場を設ける
- デイリースクラムの場では問題提起や概要のみの共有にとどめる
- 事前準備
- メンバーが自分の状況を詳細に把握し、今日やるべきこと、今週までにやるべきことを簡潔に報告できるよう準備しておく
- ただの進捗報告会にしない
- ゴールの達成に向けた課題が無いか?他に懸念点が無いか?タスクの優先順位に誤りは無いか?などについてメンバ間で共通認識を持つ
- 他メンバの共有内容を真面目に聞く
- PCを持たずにスタンドアップミーティングをするのも良いだろう。とにかく他メンバの共有内容を真摯に聞くこと!
リーダー側のやるべきこと(リーダーじゃなくても良いけど)
・チームメンバのタスクが分かる進捗状況が一発で分かるようにタスク管理し、そのタスク管理状況を朝会で見せながら、チームメンバに共通認識を持たせる。
(あって当たり前だろ、と思うかもしれませんが、意外とこういうの整理されていないこと多いんですよ。。普通に考えてありえないが、結局リーダー以外全体進捗がイマイチ分からないとかあるあるだよね。)
個人で全て実行する案件であれば良いかもしれないが、チームで行うので自分の担当分野以外の進捗状況も認識を持つ必要がある。
手が空いているようであれば、未経験の分野でも積極的に対応すべきで知見を広げることにもなるし、勿論チームのためにもなる。もしかしたら、自分の担当するタスクに影響する可能性もだってある。
①チームで抱える共通タスクである、という認識を持つ
自分か自分以外のタスク、という考え方ではない。他メンバの報告内容は自分ごととして聞く
②チームメンバ一人一人がスプリントゴールに向けた進捗状況を把握し、自らのやるべきタスクを判断できるようになる
自走できるチームを作るべきだと思うし、アジャイルの性質上この部分は非常に重要。
そのため、毎日実施するデイリースクラムでもこの観点を持って実施すべき、ということになる。
やった方が良いと思うこと
・ファシリティをチームメンバに交代で行わせる
ファシリティのように仕切る役は実践しないと身につかないし、自分ごととして認識してもらう一環としても良い意味になると思う。
※いきなりファシリティをさせると全くまとまりがない状態でやろうとするメンバもいるため、最低限のルールをあらかじめ周知しておいた方が良い。
終わりに
もっと色々ありそうだけど、あとは実際にデイリースクラムを実践してみて、改善ポイントがあればレトロスペクティブ(振り返り会)でチームメンバ全員で議論し、メンバ全員で合意してから都度改善していけば良いと思う。
決して、リーダーが決めるのではなく、チームメンバ全員で決める、という感覚が大事。
以上