CodeZine(コードジン)

特集ページ一覧

アジャイルチームは最初からフルスロットルでは走れない――成熟までの3段階を解説【デブサミ2020夏】

【C-8】アジャイルチームの成長に伴い起きる変化について

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2020/09/16 12:00

 アジャイル開発に慣れたチームは自律的に動き、高い生産性を持つ。しかし最初から理想的な自律性や生産性を持てるとは限らない。それぞれが試行錯誤し、悩みを乗り越えて成長していく。失敗から学ぶことも必要だ。アジャイル開発を組織の文化に根付くようにするには、チームの成長を根気強く見守り、支援する必要がある。その成長過程を紹介する。

Salesforce DXによる各課題の解決
レッドハット株式会社 DevOpsシニアコンサルタント 山田悦朗氏

アジャイルチームの成長には段階を踏む必要がある

 レッドハット DevOpsシニアコンサルタントの山田悦朗氏は10年ほどアジャイルコーチとして現場を支援している。スクラムギャザリング東京実行委員などのコミュニティ活動や技術書の翻訳にも携わっている。

 山田氏が所属するレッドハットでは、ミッションに「顧客、コントリビュータ、パートナーのコミュニティにおいて、オープンソースのやりかたで、よりよいテクノロジーを作り出す触媒となること」と掲げているように、コミュニティ活動や触媒としての役割を重視している。代表的な取り組みとしてOpen Innovation LabsやOpen Practice Libraryがある。

 今回のセッションではアジャイルチームの成長過程に起こる変化について考える。新しいサービスを生み出す時、もととなるアイデアがテクノロジーやマーケットとうまく重なるところを模索していく。本当に求められているものにたどり着くまで、仮説検証を何度も繰り返すのだ。

 その中で、開発のプロジェクトがビジネス部門とアジャイルチームに分かれていると、時間がかかってしまう。緊密に連携しながら、判断を繰り返し方向性を模索していく。そうした動きが自律的に進むことが理想だ。

 チームが自律的であることは「その組織の開発能力そのもの」と山田氏は言う。ただし最初からチーム全員が能力をフルスロットルで発揮し、開発が進むことはない。それぞれが経験を積みながら、徐々に成長し、それに伴い生産性を高めていく。

 成長過程において、チームはさまざまな悩みを抱える。悩みそのものは問題ではなく、成長段階を着実に踏んでいる証しでもある。どの段階でどのような悩みを抱えることになるのかあらかじめ知っておくと、目の前にいるチームがどの段階にいるか分かるようになる。

 経営者などチームを支援する立場の認識も重要だ。チームを支援するはずのメンバーが不適切な認識を持っていると、チームの成長を阻み、足を引っ張ることになりかねない。上層部が言ってしまいがちな声には次のようなものがある。

 「自分から動かないメンバーばかりだから、こちらから指示を出してあげなさい」、「あのチームは失敗した。信用ならないから指示しないと」、「最初のスプリントからうまくできないと続けさせないよ」など。こうしたコメントは、チームには自律を学ぶ過程があることを知らないために出てくるものだ。また、失敗から学ぶことにも効果があることを忘れてはならない。

 上層部のこうしたコメントの背景には、アジャイル開発を自動販売機のように思っているところがあるのかもしれない。硬貨を入れてボタンを押せば、ガチャンとほしいジュースが出てくるかのように。しかし現実はそんなにお手軽に成果が得られるものではない。

 山田氏は言う。「だって、人ですからね。人は機械ではないし、資源でもありません。パフォーマンスを出せるようになるには準備や理解が必要です。段階を経てチームは成長していくのです」。

チームが機能するようになるまでの3段階はこう進む

 チームは成長して生産性を高め、強くなっていく。そうした過程があることを知っておこう。山田氏はタックマンモデルをベースに成長段階を図で示した。

Salesforce DXによる各課題の解決
チームは成長して強くなる!

 まずは基礎知識を知るために何らかの教育を受け、続いて「形成期」で互いを知り始め、「混乱期」で衝突しながらもお互いを理解し、「統一期」で同じ方向を見られるようになり、最終的には「機能期」にたどり着く。機能期ではチームは自律的に動き、チームとして高い能力を発揮できるようになる。理想の機能期にたどり着くには大きく分けて3段階があると山田氏は示す。

第1段階:「分からない」状態からアジャイルの基本を理解する

 ここではアジャイルのマインドセットを理解する段階となる。目安としては3〜5スプリントくらい。まずは基礎知識を習得してから、アジャイル開発の知識が経験を通じて強化され、理解度が向上していく。ここでは基本的な進め方を理解していくのが重要だ。

 この段階では「開発メンバーはスプリントレビューまでプロジェクトオーナーに相談してはいけないと思っていた」とルールが理解できてなかったり、用語の定義やイベントの理解があいまいなので、チームの行動がちぐはぐになってしまったりする。まだ勝手が分からない状態だ。山田氏は「よくあることなので、恥ずかしいことではありません。スクラムマスターやアジャイルコーチがその都度丁寧に説明していけばいいのです」と話す。

第2段階:サイクルができつつある中で適切に振り返る

 ここでは役割ごとに効果的な動きができるようになっていく。アジャイル開発の進め方に慣れてきて、自律的なチーム運営が始動しつつある段階だ。目安としては3〜7スプリントくらい。このくらいになると、チームが要件を消化するスピード(ベロシティ)が安定してくる。

 この段階では、フィードバックを「怒られているような気がする」とネガティブに受けとめてしまいがちだ。また、表面的な課題の洗い出しで満足してしまい、本質的な問題にたどり着かないなども起こりがちだ。一方で、チームのサイクルができつつあるのに「まだできていない」と、成長しているのに気づかないということもよく見受けられる。こういう時にアジャイルコーチは「フィードバックは批判ではないよ」と教え、「ちゃんとできているよ」と気づかせてあげるといい。

第3段階:新たなチャレンジが生まれる自律的なチームへ

 ここでは自身の役割を超えて、相互に支援ができるようになってくる。チームが自律的になり、積極的なチャレンジもできるようになる。目安としては5〜10スプリントくらい。良い意味でスクラムマスターもアジャイルコーチも、そろそろ教えることがなくなってくる。

 この段階になると、チームの能力が高まりプロダクトオーナーからストーリーの配給が追いつかなくなることがある。チームからストーリーが生まれることもある。参考として山田氏はバックログカンバンを出した。多くなってしまったストーリーもタスクのようにカンバン式に管理していくのもいい。

Salesforce DXによる各課題の解決
バックログカンバン

自分の組織がアジャイルに何を期待するか再認識しよう

 ここからはアジャイルチームを支える組織に目を向けてみよう。アジャイルチーム内に成長があるように、受けいれる組織もアジャイルチームとともに適応ししていく必要がある。

 ありがちな上層部の声として「うちは他社と違って特殊だからね。アジャイルが使いものになるか?うちのビジネスに合うか?見極めたい」がある。山田氏は「『うちは特殊』とみなさん言います」と語る。

 組織にアジャイルを適用させようとすると、「進捗管理」、「契約」、「品質」、「人材獲得」などがキーワードとなり、どうしてもウォーターフォールとアジャイルの違いにとらわれてしまいがちだ。

 当然ながらウォーターフォールとアジャイルには違いがある。しかしその違いにばかり執着すると、本質的なことを見失う。ウォーターフォールに最適化された組織をアジャイルに合わせようとするとハードルは高くなり、混迷してしまう。そんな時は立ち止まって考えてみよう。

 「なぜ、アジャイルをやりたいのでしたっけ?」

 おそらく発端には「アジャイルがもたらすXXXXXに期待をしている」があったのではないだろうか。期待しているものを再認識して、その良さを引き出すためにどのように課題を解決していくか考えるといい。ただし効果は「やってみないと分からない」と山田氏は言う。経験を積み重ねていくと、徐々にアジャイルな組織文化が形成されてきて、効果が形になってくる。

 アジャイルに期待することに目を向けると、キーワードが変わってくる。例えば「自律的なチームの獲得」、「新技術をサービスに載せるベースづくり」、「プロダクト価値の向上」などがある。こうした期待から小さな改善を積み重ねていくと、いつかは「大きな偉大な一歩になる」と山田氏は語った。

関連リンク

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • CodeZine編集部(コードジンヘンシュウブ)

    CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

All contents copyright © 2005-2020 Shoeisha Co., Ltd. All rights reserved. ver.1.5