<aside> 💡 プロジェクトマネジメントは、プロジェクト上の目標に対して影響する不確実性(リスク)をコントロールし、円滑に目標を達成させる行為である。
</aside>
プロジェクトマネージャーは自身が担当するプロジェクトに対するすべての裁量を持ち、与えられた裁量を執行することで、プロジェクトの目標を達成させる役割を持つ。すべての裁量を持つため、プロジェクトに関わるあらゆる責任はプロジェクトマネージャーが負う。
以下プロジェクトマネージャーをPMと呼ぶ。
PMは契約納期を遵守する責任を負う。
契約納期までの工程を工程表テンプレートを元に作成し、要件定義などの大工程から最小単位として個人のタスクレベルまで落とし込む。最小単位のタスクには執行者を割り当て、PMと執行者による2点見積もりを行う。
PMは2点見積もりにより表現される不確実性をマネジメントする施策(異なる執行者のアサイン、開発リソース増強、代替案による合意など)をリストアップし、事前に定めた損切りラインに至った時点でリストアップされた中から適切な施策を執行する。
PMは開発するシステムが要件定義書通りであること、つまり瑕疵がないことに責任を負う。
開発レベルでのユニットテスト(・インテグレーションテスト・E2Eテスト)の実装がない場合はソースコードの変更をマージしない。また開発者はMerge Requestの単位で手動テストを正常系・異常ともに実施し、バグがないことを可能な限り検証する責任を持つ。
テストフェーズでは動作確認仕様書テンプレートをもとに、正常系・異常系とも漏れが少なくなるようテストを実施する。