開発チームが信頼を得るためには何が必要でしょうか?
コミットしたことを守ることも大切ですが、ある銀行の取締役の呟きを紹介します。
『よく進捗会議で、Aシステム90%完了、Bシステム100%完了、Cシステム99%完了、アプリケーション基盤環境10%完了ですので、システム開発は順調です。との報告があるが、%の示す意味は?100%完了していても、アプリケーション基盤環境が10%であれば、何も動かないよね!本来はどのシステムのどのサービスは動作可能ですので、ユーザーのチェックをお願いします。そのサービスは明日には動作可能ですといった具体的でなければ進捗の意味なさないよね。%の恐ろしいのは、90%ですという報告がひどい時には数週間続いたりしている、しかも進まない理由をてんこ盛りにして説明する。これでは相手を疑心暗鬼してしまうよね。形が見えないものだからと言って%ではね、もっと現場の透明性を高めて欲しいね。』
こんな進捗表現はアジャイル開発では全くしていないと思いますが、この呟きから、最も大切な事は**『透明性』** です。
開発現場の透明性を高めるには、タスクボード、バーンダウンチャート等を利用することも良いですが、それらをプラクティスだからといって工夫せず実施しても負担になってしまいます。積極的に異常や問題が見て直ぐに判るような工夫をして様々なボードを作成しリアルタイムで運用することが必須です。
あるチームでは、各自のプロジェクトには直接は影響しないかもしれないが、心理的にマイナスな事(例えば、腰が痛い、眠い、といった状況)を貼りだして、その状況が解消されたら取り除くといった、個人状況の『見える化』を行っていました。
もう一つ、ユーザーとのレビューは必ず動作するITサービス(ソフトウェア)で行うことが必須です。**『完了の定義』**に遵守した品質で臨めば、ユーザーからの信頼は容易に得られます。もう一つ、レビューサイクル(スプリントの期間)を小さく出来れば更に良いと思います。
**『完了の定義』とレビューサイクル(スプリントの期間)**については別の機会でお伝えしようと思います。