アジャイルチームのガバナンス

どのようにアジャイルソフトウェア開発チームを統制(govern)していくかは、重要なトピックであるが、滅多に議論されていない。これは、あなたが意識しようがしまいが、アジャイルチームが実際に統制されていることを考えれば、むしろ奇妙なことである。仮に誰かが、予算や生産物の品質レベル、あるいはチームが利害関係者にとって価値あるものを作っているかどうかに注意を向けていれば、そのときチームは統制されている。チームメンバに対して決められた役割と責務があるならば、そのときチームは統制されている。チームが共通のプログラミングやデータベースガイドラインに従っているときや、共通の技術・ビジネスロードマップに向かって作業しているとき、あるいはチームの調整した会議に外部のひとを招待するとき、チームは統制されている。問題は「チームは上手に統制されているか?」である。

ディシプリンド・アジャイルフレームワークは、ガバナンス戦略をフレームワークとしてサポートしている数少ないものの一つである。事実、私たちの本Disciplined Agile Delivery の中で、デリバリーチームの統制に対して一章まるごと費やしている。この記事内では、以下のことを明らかにしていく。

  1. どのようなものが、アジャイルデリバリーガバナンスであるか?(でないか?)
  2. なぜアジャイルデリバリーガバナンスか?
  3. どの程度ディシプリンド・アジャイルチームは統制されるか?
  4. デリバリーガバナンスを可能にする戦略
  5. ITに関する他の活動が、デリバリーガバナンスをどう支援するか?
  6. 考えの結論

 

どのようなものが、アジャイルデリバリーガバナンスであるか?(でないか?)

ガバナンスは、総合的なエンタープライズのゴールと戦略の支持のもと、責任と権威とコミュニケーションの鎖を構築する。また、人々が自身の役割と責任を効果的に遂行するために、計測、方針、基準および制御機構を構築する。リスクと投資利益率(ROI)のバランスをとり、効果的なプロセスとプラクティスを適切に設定し、チームの方向とゴールを定義し、そしてチーム内で人々がもつ役割の定義をすることによって、これを行う。

アジャイルデリバリーガバナンスは、アジャイルパラダイムを反映しサポートするやり方でアジャイルデリバリーチームを統制することである。効果的なアジャイルガバナンスに対する原則は以下である。

  1. 無理に従わせるより、デリバリーチームと協力することのほうが、より効果的である
    ITプロフェッショナルは、聡明な労働者であり、して欲しいと頼むよりは、一緒に実施することで、行動に移すタイプのひとである。 例えば、アジャイルデリバリーチームに(おそらく、組織の技術ロードマップに明文化されている)共通技術戦略に向かって作業をして欲しいならば、ドキュメントを無理やり記入させてレビューするよりも、チームと直接作業して、その戦略を熟知させるほうがよりうまくいく。このケースでは、フレームワークは、このことに責任をもつアーキテクチャーオーナー特有の役割を提案している。
  2. 検査をするより、チームが”正しいこと”をできるようにすることのほうが、より効率的である
    アジャイルチームメンバーは人間であり、人間である限り、その自然な流れとして、できるだけ楽をしようとする。これはチームにして欲しいと思っていることが、より簡単にできるような環境にすべきであると示唆している。例えば、組織が共通コーディング規約に従って欲しいとする。これを実行するひとつの方法として、コーディング規約に従っているかどうかコードの検査を実施する時間がかかるプロセスがある。より簡単なプロセスは、CheckStyle のようなコード解析ツールを導入し、継続的インテグレーション(CI)戦略にそのプロセスを含めることだろう。この自動化の取り組みは、開発者に対しては余分な労力を必要とせず、コード品質へのフィードバックを即座に提供し、彼らのスキルを向上するための学習機会となる。
  3. 品質ゲートレビューより、継続的モニタリングのほうが、よりタイムリーな見識を提供する
    チームダッシュボードはここ数年でかなり一般的になってきており、ビジネスインテリジェンス(BI)技術を使って、開発ツールの使用状況の計測をリアルタイムに表示する。これは、チームと利害関係者が継続的なリアルタイムな手法で、チームの進捗をモニターすることを可能にする。これは、従来の生産物の”品質ゲート”レビューよりも、桁違いに効果的である。なぜなら、ダッシュボードに表示される情報はツール使用時の副産物として自動的に生成され、それゆえ偽装するのが非常に難しい。一方で生産物(ステータスレポート、仕様書、計画など)は手作りであり、それゆえ製作者の恣意的な切り取った情報を含めることができる。 さらにダッシュボードは、初期コスト以外は実質かからない。 オリジナルのDAD本では、この戦略のことをデベロップメントインテリジェンス(DI)と言っている。
  4. ステータスレポートより、チームへの透明性のほうが、より実体を明らかにする
    情報ラジエーターや、チームダッシュボードや積極的な利害関係者の参加といった戦略を適用することで、ディシプリンド・アジャイルデリバリーチームの働きが、効果的に透明性をもつ。 これらの戦略は全て後述する。利害関係者がチームの現在の状態を見たいときにさっと見ることで把握できるようになった結果、チームが作るステータスレポート(少なからず架空の情報が入っているかもしれない)に頼る必要がなくなった。

ガバナンスは開発者にとって不評である。というのも、効果的でない従来の戦略を長年にわたり実行していたことがよくあるからである。これらの従来の戦略は、組織にとって少ししか価値がない、あるいは全く無価値であるお役所仕事を、さらに増やすこと以上のものではないと証明されている。この問題に関して安心してもらうために指摘しよう。アジャイルデリバリーガバナンスは:

  • ドキュメント駆動ではない
    チームダッシュボード戦略との組み合わせで、アジャイルによって促進されるレベルのより高いコラボレーションは、従来のガバナンス戦略が期待するたくさんの生産物の必要性を緩和する。 さらに、後述するように、DAフレームワークが提案しているマイルストーンは、ドキュメント駆動でなくリスク駆動である。
  • 面倒ではない
    面倒なガバナンス戦略に、デリバリーチームは従わないだろう。せいぜい、ガバナンスプロセスに従っているように見える必要最低限のことしかしないだろう。それは、プロセスが完全に失敗していることを示している。 結果として、ガバナンス戦略はできるだけ低負荷なものに留めるべきであり、それを正しく実行したとき、効果的なガバナンスは実際にデリバリーチームの生産性を損なうのでなく向上させる。この低負荷な戦略は以降に記述する。
  • マネジメントではない
    ガバナンスとマネジメントは、2つの異なったものである。ガバナンスは外部からチームを見る。価値を提供し続ける場において、適切な構造とプロセスを必要とするシステムとしてチームを扱う。 一方マネジメントは、チームの中で発生するものであり、構造とプロセスを効果的に具体化することを保証する。
  • オプショナルではない
    チームは、好むと好まざるにかかわらず統制されている。チームは十分に統制される価値があるというのが私たちの哲学である。これが、時間をとってどのように統制するかを説明している理由である。

 

なぜアジャイルデリバリーガバナンスか?

アジャイルデリバリーガバナンス戦略は、ITデリバリーチームが以下のことをやる気をもってできるようにする。

  • 組織の戦略と目的を実現する
  • IT戦略と目的を支え、拡大する
  • 定期的に連続して、ビジネス価値を創出する
  • ふさわしい投資利益(ROI)を与える
  • タイムリーかつ適切な方法で、使用可能なソリューションを提供する
  • プロジェクトの利害関係者とともに効率的に作業する
  • IT部門の同僚と効率的に働く
  • ITソリューションの成功を促進するプロセスと組織構造を採用する
  • プロジェクト利害関係者に正確かつタイムリーに情報を提供する
  • 直面するリスクを軽減する

どの程度ディシプリンド・アジャイルチームは統制されるか?

以下の図は、ディシプリンド・アジャイル(DA)フレームワークがどのようにアジャイルデリバリーガバナンスが可能かを示している。この図は、次の2つの側面を持っている。アジャイルあるいはリーンデリバリーチームが従っている戦略がガバナンスを可能とするということと、デリバリーチームの外側の人々やグループの外部のワークフローがアジャイルデリバリーガバナンスをサポートするということである。このトピックをより詳細に以下で明らかにしていく。

govering-delivery-teams1

 

デリバリーガバナンスを可能にする戦略

上の図は、ディシプリンド・アジャイルチームのガバナンスを支えるいくつかのアジャイル戦略を示している。これらの戦略は以下である。

  • エンタープライズ対応(Enterprise Aware)
    エンタープライズ対応 (未翻訳)は、他のすべてのチームと同様に、ディシプリンド・アジャイルチームも組織のエンタープライズエコシステム内で作業していると認識するコンセプトについて言及している。 チームが作業しているソリューションのリリースによって負の影響を受けるべきでない、本番環境で稼動している既存のシステムはよくある。 また、ソリューションは可能であれば、車輪の再発明をする代わりに、製品の既存の機能性と利用可能なデータを利用するだろう。 お互いの仕事を利用しようと努力し、並行して作業する他のチームと一緒に作業するだろう。 彼らは、組織のビジネスと技術的ビジョンに向けて働くだろう。エンタープライズの意識は効果的なガバナンスの土台となる。
  • リリース計画
    プロジェクトの初期、あるいは製品自体のチームが発足したとき、ディシプリンド・アジャイルチームは、ハイレベルのリリース計画に対して時間を費やすだろう。他のチームへの依存を確認しじっくり考えるために、そしてすでに動いている現在のリリースに対してふさわしいコストと時間の見積もりを確認するためにこれを行う。 このハイレベルの計画を、彼らの利害関係者に共有し、開発進捗にあわせて更新し続ける。リリース計画によって、チームが計画したスケジュールとコストに関わる重要なガバナンスの質問に答えられるようになる。
  • チームダッシュボード
    チームが利用するツールが、重大なイベントが発生したときに記録する機能を持つべきであるというのは基本的な考えである。 例えば、ビルドが走るとき、ビルドツールは起動した日時や要した時間、実行したテストの数や成功したテストの数などといった基本的な情報を常に記録できる。 チームのマネジメントツールは、作業アイテムを定義したとき、作業が始まったとき、作業を(適切であると)検証したとき、完了したとマークしたときに記録できる。 これらの種類の情報はデータウェアハウスに記録し、後でプロジェクトあるいはポートフォリオダッシュボードを通して、ビジネスインテリジェンス(BI)ツールを利用してレポート化する。 最初のDAD本では、この戦略をデベロップメントインテリジェンス(DI)として記述し、この本を出版したことで、この戦略はアジャイルチームにおいて、ごく一般的になった。チームダッシュボードによって作られるリアルタイムで正確な情報は、チームがより良い決断と(統制者を含む)利害関係者によりよい透明性を提供できるようにする。
  • 情報ラジエーター
    情報ラジエーターは、チームや利害関係者に対して興味深いことを示す視覚的ディスプレイである。 例えば、アーキテクチャスケッチが書かれたホワイトボードや索引カードが貼られたコルクボードやチームのダッシュボードを表示する壁掛けモニターなどである。 情報ラジエーターは、透明性の向上によってよりよいガバナンスを可能にする。
  • 利害関係者の積極的な参加
    利害関係者の積極的な参加は、利害関係者、あるいは少なくとも代理者(例えば、プロダクトオーナー)に現場でアクセスするというプラクティスである。 積極的な利害関係者は、情報を提供し要求に対する優先順位とスコープに関わるタイムリーな決断をできる権力と能力を持っている。 これは、意思決定者へのチームのアクセスを向上することを通してより効果的なガバナンスが可能である。
  • デモ
    定期的に、チームは主要な利害関係者に対してソリューションのデモを行う。ベーシック/スクラムベースライフサイクルに従っているチームにとっては、各イテレーションの最後に行うのが典型的である。 チームは完了した作業を見せ、フィードバックを得る。 このプラクティスは利害関係者デモンストレーションあるいはスプリントデモンストレーションとも呼ばれる。 これは、透明性を向上し、利害関係者がチームの方向性を変える機会をあたえ、効果的なガバナンスができる。
  • 調整ミーティング
    典型的に毎日の始まりに、活動に対して調整するための数分間の打合せを行う。 チームは、ミーティングが活発になるように、また短く集中するように維持する責任を持つ。 このプラクティスは、スクラムミーティングあるいは、デイリースタンドアップミーティングとよく呼ばれる。 これは、内部の透明性を高め、チーム内でのフィードバックサイクルを小さくすることを通して、チーム内で戦術的なガバナンスを可能にする。
  • 軽量でリスクベースのマイルストーン
    効果的なマイルストーンレビューは、可能な限りシンプルで短い。同じ拠点にいる小さなプロジェクトチームであれば、マイルストーンレビューは統制組織の少数の人々や彼らの代理人がチームルームに訪れレビューしなければいけないところを、1時間ほどさっと説明するぐらいシンプルでもよい。もうすこし手間をかけるとしても、これはせいぜい半日かけ会議室で開催するぐらいである。 規制環境にいるチームの場合は、特にレビュー対象の作成物とベースラインやレビューからのアクションアイテムの記録に関して、もう少し努力が必要かもしれない。 前述した利害関係者デモや、チームダッシュボードのような共通アジャイルプラクティスを採用することで、マイルストーンレビューでステータスに関する議論の必要性は小さくなるだろう。DAフレームワークが提案するマイルストーンは、ドキュメント駆動でなくリスク駆動である。 例えば、実証されたアーキテクチャマイルストーンは、ハイリスクの要求を実現する機能を、実際に動くソフトウェアを開発することを通して達成するのが一番である。アーキテクチャモデルの作成とレビューで実現されるものでない。
  • ふりかえり
    ふりかえりは、改善の余地がある領域を特定することを目的に、チームがファシリテートされながら行う反省ミーティングである。 ふりかえりはよく30分から60分で行われる。ふりかえりは、チームが自己認識と改善に集中するのを助け、継続的改善(未翻訳)のガバナンス目標全体をサポートする。

これらの戦略は、チームの総合的な効率を向上しながらガバナンスへの軽量なアプローチをサポートする。 従来のガバナンスが恐れられる一方、アジャイルガバナンスは歓迎されるべきものである。

ITに関する他の活動が、デリバリーガバナンスをどう支援するか?

図はまた、他のチームあるいは活動にともなう幾つかの重要なワークフローを示している。これは、 ITガバナンスが幅広い範囲の懸念事項を対象にしており、その多くがITデリバリーチームに影響しているという事実を反映している。これらの外部のチーム/活動は、以下の方法でディシプリンド・アジャイルデリバリーチームのガバナンスをサポートしている。

  • 継続的改善(未翻訳)
    人々は組織を通じて良いアイデアを拡散するためにお互いに改善提案をシェアする。
  • データ管理(未翻訳)
    データ管理の成果のひとつは、チームが適切に行動するための共通データガイダンスであろう。このガイダンスは、2、3例あげるならば、データ命名規則、データソースメタデータやレポート命名規則のようなものを含んでいる。
  • エンタープライズアーキテクチャ(未翻訳)
    エンタープライズアーキテクチャ活動によって、チームが従うべき共通技術ロードマップと開発ガイドラインがあるかもしれない。一般的な戦略はITデリバリーチームに、しばしばアーキテクチャオーナーの役割として、エンタープライズアーキテクトを組み込むことである。これによって、アーキテクチャ規約に従うことを保証するよう手助けし、エンタープライズアーキテクトへのフィードバック機構を提供できる。開発ガイドラインは、コード規約やユーザーインターフェイス規約、セキュリティ規約などその他たくさんを含むかもしれない。
  • IT ガバナンス(未翻訳)
    ITガバナンス活動は、よく企業指針やバリューステートメントのようなガイダンスを提供する。これらは、他のIT活動によって作られたガイダンスの上位にくるものである。 ITデリバリーチームは、統制組織がより良い決断をできるようにするためにデベロップメントインテリジェンス(DI)を提供し、その結果より良いガイダンスをチームに提供するだろう。
  • 人材の管理(未翻訳)
    ヒューマンリソース(HR)マネジメントと呼ばれることもある人材のマネジメントが、チームに人材指行ガイダンスを与える。このガイダンスは、よく教育指針やバケーション指針、役割、責任などその他たくさんのトピックに言及している。
  • ポートフォリオマネジメント(未翻訳)
    組織のポートフォリオマネジメントが、初期のチームの資金とチームが向かうべきビジョンを策定し、効果的に初期の方向づけを与える。ITデリバリーチームがデベロップメントインテリジェンス(DI) を提供することで、ポートフォリオマネージャは、特に計画や課題の解決を行う際に、よりよい決断ができるようになる。
  • プロダクト管理(未翻訳)
    プロダクト管理活動は、ビジネスロードマップの開発へとつながる。これは、ITデリバリーチーム、特にチームの中でもプロダクトオーナーを導く手助けをする 。プロダクト管理はビジネス優先順位も提供し、それによってITデリバリチームのアクションが決定する。
  • リリース管理(未翻訳)
    リリース管理チームは、リリースガイドラインとアドバイスを提供し、それによって、ITデリバリーチームが運用環境への配備のアプローチを決定する手助けとなる。
  • 利害関係者
    チームの利害関係者は、ビジネスとは別に、どんな機能が欲しいのか?そして、その優先順位は何か?についての方向性をITデリバリーチームに提供する。また利害関係者は、定期的なフィードバックやその他の形でチームへ情報も提供するだろう。デリバリーチームは、利害関係者のために利用可能なソリューションやチームのプランを更新し、そして、デベロップメントインテリジェンス(DI)を定期的に作成する。これは、利害関係者に透明性とチームの方向性を変える機会を与える。

 

まとめ

この記事を以下の所見をもって終わらせる

  1. ディシプリンド・アジャイルチームは、従来のチームよりかなり簡単に統制できる
    これは、より透明で、正確なタイムリーなデベロップメントインテリジェンス(DI)とディシプリンド・アジャイルチームを方向性を変える機会がより多くなることによる結果である。
  2. ガバナンスに対する従来のアプローチは、アジャイルチームに損害を与えることが保証されている
     旧来の官僚的でドキュメント駆動のガバナンス戦略は、ITデリバリーチームがどんなパラダイムに従おうが、うわべだけのガバナンス以上のものを提供しない。アジャイルでリーンなチームは、アジャイルでリーンな方法で統制する必要がある。
  3. ディシプリンド・アジャイルチームは、組織によるよりよいガバナンスを要求しなければならない
    チームは、十分に統制されるのがふさわしく、そうあるべきである。
  4. 既存のIT統制者の教育をする実践者を用意するべきである
    経営陣に理路整然としたガバナンス戦略を提供すれば、統制がより効果的になる。私たちの経験から、実際は既存のほとんどのITガバナンス戦略が未だ伝統的であり、これはアジャイル/リーンチームにとって不適切である。 さらに悪いことは、ガバナンスに関わる人々が、これを問題とわからないか、わかっているとしてもまだアジャイル手法での統制の仕方を理解できないかである。
  5. アジャイルデリバリーガバナンスは、総合的なITガバナンス戦略の一部である
    これは、データガバナンス、アーキテクチャガバナンス、ポートフォリオガバナンスやその他多くのガバナンスの面で事実である。ディシプリンド・アジャイルのITガバナンスプロセスブレード(未翻訳)で述べるように、ガバナンスのこれらの別の面は、それぞれに適切なプロセスブレードで取り組まれる。

Related Articles

オリジナル: Governing Agile Teams
http://www.disciplinedagiledelivery.com/governing-agile-teams/

(翻訳 東勲)

 

LINEで送る
Pocket