プロジェクトマネージャ
プロジェクトマネージャーはプロジェクトの責任者です。彼の目的は、プロジェクトチームが効果的かつ効率的に連携して作業を行い、期待されるプロジェクト結果を提供することです。
しかし、この高レベルの定義は、企業文化、方法論、および個々のプロジェクトの特殊性に応じて、非常に異なる現実をカバーする可能性があります。例えば:
- PMIによると、PMは一般に実行組織(つまりITまたは下請け業者)の誰かであり、非常に強力なリーダーシップの役割を持っています。
- PRINCE2によれば、PMは一般に「ビジネス」(例:顧客)からのものであり、チームリーダー(特にITや下請業者などの実行組織からのチームリード)と密接に協力してプロジェクトを管理する必要があります。
- これらの設定の間には多くのバリアントがあり、小規模なプロジェクトでは、PMが非常に頻繁に複数の役割(PMとアーキテクト、またはPMとリード開発者)を累積することが理解されています。
プログラムマネージャー
プログラムは、プロジェクトよりもはるかに大きく、はるかに長いものです。プログラムは通常、いくつかの長期的な戦略目標を達成するため、または新しい製品ファミリーを立ち上げるために実行されます。
正式な定義は、方法論にも依存します。
- PMIは、プログラムを「プログラムの傘下で実施されたプロジェクトは、それらを独立して実行することでは達成できなかった利点を可能にするであろう」のセットと見なしています。典型的な例は、プロジェクトが相互依存性が高く、プログラムマネージャーによるプロジェクト間の調整が必要なためです。
- MSP(プログラムのPrince2相当、これも英国政府によって開始された)は、プログラムはいくつかの長期的な目標を達成する必要性によって定義されると述べています。
どちらも、プログラムは複数のプロジェクトで構成されることに同意し、関連する非プロジェクト活動も含まれる場合があります。
プロジェクトマネージャーはプログラムマネージャーに報告します。しかし、プログラムマネージャーの詳細な職務は、状況によって異なります。製品の所有権を意味する場合とそうでない場合があります。彼はほとんどの場合、プロジェクトマネージャーを指揮しています。ただし、プログラムマネージャーが調整の役割しか持たない設定もあります。
開発マネージャー
3つの用語から、これは確かにあまり正式化されていません。
私は、この用語を、開発プロセスを担当するマネージャー、内部および組織の開発者、ならびに彼の開発者が関与する可能性のあるすべてのプロジェクトにわたって理解しています。
しかし、大規模なプログラムの場合、それは大規模なプログラムの開発リソースを管理する水平的な役割になる可能性があります。
一部のコンテキストでは、この用語は、その重要性を認めるために、プロジェクトのソフトウェア開発成果物を担当するチームリーダー/チーフデベロッパ/シニアソフトウェアエンジニアを指しています。しかし、個人的には、この文脈でこの用語に遭遇したことはありません。