私はソフトウェアエンジニアとして多くのプロジェクトに参加しました。
その中で、進捗管理で有効だった方法を紹介します。
目次
① 最初にいつまでに何をするのか明確に決める
いつまでに何をするのか明確に決める必要があります。
明確でないとベストエフォートで進めることになり、納期までに作業が終わるのかどうか分からずに進めることになり、間に合わないリスクが増えます。
まず最大でも1日で終わる量になるまで作業を分割し、それをいつまでにやるのか決めます。
進捗管理ツールを使っている場合は、案件の開始時に作業を洗い出し、いつまでにやるのかを登録してから作業を始めましょう。
② バッファを設定する
プロジェクトでは必ず想定外が起きます。
それに備えてバッファを用意しておきましょう。
想定外が起きる確率は見積もりの精度が高いほど減ります。
1日単位の細かい粒度で見積もれている場合は経験的に8割程度は見積もり通りに進められるので、見積もり工数の1~2割程度の工数をバッファとして用意します。
そして、バッファ分の工数は日程の最後に設定しておき、想定外が起きた時にバッファを消すことで対応します。
③ 週単位で予実を確認する
進捗通りに進んでいるかを週単位で確認しましょう。
1日単位だと短すぎて管理が大変で、それ以上だと問題があるときに対応が遅れます。
1週間を1スプリントとし、スプリントが終わるタイミングでチーム全員であつまり、進捗を報告します。(スプリントレビュー)
報告の際は「やったこと」「課題・問題」「次のスプリントでやること」を報告します。
スケジュールに変更が必要な場合は、なぜ変更が必要なのか、変更後はいつまでにやり終えるのかを報告しましょう。
ただし、スケジュールの変更が発生した場合はスプリントの途中でもその場で管理者に伝え、スプリントレビューの場ではあらためて全体に周知するために報告します。
④ 成果物を小さい単位で確認する
成果物は小さい単位で確認し、指示する側と認識の齟齬がないか確かめましょう。
例えば、ソフトウェア開発のソースコードのレビューでは、数百stepを作成したらコードレビューを依頼します。
レビューする側はどこをレビューすればいいか理解しやすく集中して指摘できますし、根本的な修正が必要な場合も手戻りが少ないので、スケジュールに大きな影響なく対応できます。
⑤ 問題がある前提で問題を探す
想定外の問題が発生するとスケジュールに大きな影響を与えます。
そして、問題に気づくのが遅れるほど、納期に影響します。
そのため、スプリントレビューのタイミングで各自が「もし問題があるとすれば何があるか」を考えて、事前に問題に気づける可能性を高めましょう。
⑥ ツールで状況を見える化する
ツールを使うと予定通りの工数で作業を終えられているかを可視化できます。
今まで使用した中でおすすめのツールはJIRAで、レポート機能を使うことで各作業に何日かかったのかや、極端に工数がかかっているタスクを発見できます。
https://www.atlassian.com/ja/software/jira
⑦ 遅れた時のリカバリー策
プロジェクトではどうしても遅れが出る時があります。
その際のリカバリー策を紹介します
残業でカバー
多少遅れているくらいであれば残業でカバーするのが現実的です。
ただし、残業が続くと集中力が下がったり、体調を崩しやすかったりするので、自分の限界をあらかじめ知っておく必要があります。
私の場合、長期間に渡る場合は2時間の残業が限度で、それを超える場合は別の対策を考えます。
作業を別の人に割り振る
例えば、マネジメント業務が多すぎて作業できない場合は上位者に一部引き取ってもらうなどをします。
ただ、なかなか言いづらいので、ヘルプを依頼する時間や場所を作って、そこで各自が助けてほしいことを言い合えるようにするといいです。
制約になっている箇所を探す
想定より遅れているということは、どこかで遅れが生じる原因・制約が生まれているということです。
私が経験した例では、外部委託先に依頼した作業に関する経験がなかったので、外部委託先から質問が来て自分で分からない場合は社内の有識者に回答を依頼していました。
しかし、質問を理解したり、有識者と調整したりするところで時間がかかってしまい、進捗通りに進みませんでした。
そこで、該当分野について自己学習して知識をつけて、多くの場合有識者に頼らず質問に回答できるようにしたことで、進捗が改善しました。
コメントを残す