開発業務における「調整」
はじめに
一定規模の開発案件の「調整」系の仕事を経験した中で、調整ってどんな仕事なんだろうということを自分なりにアウトプットしてみる記事です。
「調整」の定義
調整とは「プロジェクトの目標達成のために、様々な要素や関係者間の意見や要求を一致させ、調和を図るプロセス」とします。
※学術的に正しい定義がどこかにあるのかもしれませんが、調べた限りでは見つからなかったので、自分の経験ベースで定義しています。
「調整」の内容
調整は、主に以下のような活動を含みます。
- 全体の情報整理をする
- 情報を適宜収集する
- 必要なメンバーに必要な情報を連携する
- 作業スコープや期限、完了条件をコミュニケーションして固める
- 進捗を必要に応じて連絡する
- 各タスクのスコープや期限を定めるための技術調査
全体の情報整理をする
プロジェクトの目標達成のために、まずは見える範囲での情報の整理をします。
例えば
- 今回に関連する各種ドキュメント類の収集
- 情報不足の場合、会話などの手段を使用し、更なる情報の収集
- 情報過多の場合、必要な情報と不要な情報を分ける
がこれにあたります。
ポイントは正しい情報を集めることです。
認識間違い、状況の変化などさまざまな要因で、今手元にある情報は嘘になってしまっている可能性があります。
プロジェクトの進行において嘘情報は最大の敵です。ここをいかに減らせるかは大事なところだと思っています。
情報を適宜収集し、必要なメンバーに必要な情報を連携する
情報は日々変わります。
そのためにプロジェクトに関わる情報は常に変化をWatchし、更新があれば、それを反映する必要があります。
必要なメンバーに必要な情報を連携する
開発においては、様々なメンバーが一緒に働くことになります。
そのメンバーがきちんと進捗を出せるようにするために、必要な情報を必要なタイミングで連携します。
プロジェクトのあらゆる情報を全メンバーが頭に入れておくことができるならそれが理想かもしれませんが
- 同じ情報を見ても解釈がブレる
- 情報の許容量が違う
- 扱うタスクも違う
などの要素を踏まえると、流石に現実的ではないと思います。
というわけで、情報収集と整理することにリソースを割いている調整側が、必要に応じて各メンバーに連携する形が、最もリソース効率が高いのかなと考え実施しています。
作業スコープや期限、完了条件をコミュニケーションして固める
作業量、難易度、重要度、手持ちのリソース、コスト、その他諸々の要素を踏まえ、ステークホルダーと会話をしながら、各種タスクの整理をします。
自分が多分一定頭のネジが飛んでいるタイプなので、一般的にやや無茶なレベルの期限などを調整しがちな方向にいきがちなのですが、自分の頭のネジとチームのリソースは全然違うということを踏まえ、無理はしないように気をつけて調整しているつもりです。
進捗を必要に応じて連絡する
大体において、進捗というのは当初の予定に比べて遅れるものです。
そういう場合は、必要なタイミングで連絡をする必要があります。
特に、進捗が遅れる頻度が高いようであれば、タスク開始当初の見積もりが何か間違っていた可能性が高いので、そのあたりの見積もり度合いの調整も次に向けて行う必要があります。
各タスクのスコープや期限を定めるための技術調査
調整側がこれをやるのはあまり一般的ではないかもしれませんが、自分の場合は隙があれば可能な範囲で技術調査もやります。
見積もりのための情報収集という意味もありますが、他にも先に技術的にハマりそうなポイントを見つけ、解決しておくことで、タスクの進捗を円滑にするという目的もあります。
あと、合法的に技術に触れられるので、自分的にはご褒美だったりします。
調整を実際にやってみての所感
その時々によりますが、基本的には脳の疲労がとんでもないです。
業務終了後に、頭が全く動かなくなることもザラです。
そういう時は、大体体の色んな箇所が凝ってるので、ひたすらマッサージして寝ます。
おわりに
というわけで、開発における調整業務というものを自分の経験の範囲でアウトプットしてみました。
もう少し細かくブレイクダウンすると、もっと細かい要素が色々あるのですが、書いてると脳の疲労が大変なことになりそうなので、このくらいに留めておきます。
Discussion