Menadżer projektu
Kierownik projektu jest odpowiedzialny za projekt. Jego celem jest to, aby zespół projektowy pracował efektywnie i wydajnie razem i zapewniał oczekiwane rezultaty projektu.
Ale ta definicja wysokiego poziomu może obejmować bardzo różne rzeczywistości, w zależności od kultury korporacyjnej, metodologii i specyfiki poszczególnych projektów. Na przykład:
- zgodnie z PMI , PM jest zasadniczo osobą z organizacji wykonującej (tj. IT lub podwykonawcą) i odgrywa bardzo silną rolę przywódczą.
- zgodnie z PRINCE2 dyrektor generalny powinien zasadniczo pochodzić od „firmy” (np. klienta) i powinien zarządzać projektem w ścisłej współpracy z kierownikami zespołów (a zwłaszcza kierownikiem zespołów z organizacji wykonawczych, takich jak IT lub podwykonawca).
- między tymi ustawieniami istnieje wiele wariantów, przy czym należy rozumieć, że w mniejszych projektach PM bardzo często kumuluje kilka ról (np. PM i architekt lub PM i główny programista).
Kierownik programu
Program jest czymś znacznie większym i znacznie dłuższym niż projekt. Programy są zwykle przeprowadzane w celu osiągnięcia długoterminowych celów strategicznych lub wprowadzenia nowej rodziny produktów.
Formalna definicja znów zależy od metodologii:
- PMI postrzega program jako zestaw „projektów, które prowadzone w ramach programu zapewniłyby korzyści, których nie można by osiągnąć, prowadząc je niezależnie”. Typowym przykładem jest to, że projekty są wysoce współzależne i wymagają koordynacji między projektami przez kierownika programu.
- MSP (odpowiednik Prince2 dla programów, również zainicjowany przez rząd Wielkiej Brytanii) stwierdza, że program jest zdefiniowany przez potrzebę osiągnięcia pewnych długoterminowych celów.
Oba zgadzają się, że program składa się z kilku projektów, i może również obejmować niektóre powiązane działania niezwiązane z projektami.
Kierownicy projektów zgłaszają się do kierownika programu. Jednak szczegółowe obowiązki menedżera programu zależą ponownie od kontekstu. Może to oznaczać, ale nie musi, własność produktu. Najczęściej kieruje kierownikami projektów; ale istnieją ustawienia, w których menedżer programu pełni jedynie rolę koordynacyjną.
Kierownik Rozwoju
Z trzech terminów jest to z pewnością mniej sformalizowane.
Rozumiem ten termin jako kierownik odpowiedzialny za proces rozwoju oraz programistów wewnątrz i organizacji oraz we wszystkich projektach, w które mogą być zaangażowani jego programiści.
Ale w przypadku dużych programów może to być pozioma rola zarządzania zasobami programistycznymi dużego programu.
Mógłbym sobie wyobrazić, że w pewnym kontekście termin ten oznacza kierownika zespołu / głównego programistę / starszego inżyniera oprogramowania odpowiedzialnego za elementy opracowywania oprogramowania w celu uznania ich znaczenia. Ale osobiście nigdy nie spotkałem się z tym terminem.