XPrince

XPrince to metodyka tworzenia oprogramowania łącząca takie nurty inżynierii oprogramowania jak: lekki i zwinnym skupiający się na wartości biznesowej danego oprogramowania oraz sformalizowany, oparty na zdefiniowanych procesach i dokumentacji. XPrince kładzie głównie nacisk na zarządzanie procesowe przy jednoczesnym szacowaniu pracochłonności oraz zbieraniu wymagań a także na przewidywalności. Głównym celem tej metodyki jest wyważenie pomiędzy dyscypliną a zwinnością.

Metodyka ta powstała z połączenia takich metodyk jak: RUP, PRINCE2XP (Extreme Programming). W swojej specyfikacji łączy najlepsze rozwiązania z podejścia Agile wraz z metodyką PRINCE2. W 2004 roku powstało Konsorcjum XPrince, które jako stowarzyszenie dba o rozwój, promowanie oraz pielęgnację tej metodyki.

Najważniejsze zalety wyróżniające tę metodykę to:

  • zwinność - dzięki której tworzenie produktu jest najszybsze w jej przypadku natomiast każdy jeden okres powstawania projektu jest bardzo krótki
  • mechanizmy kontroli - kontrola dotyczy różnych etapów procesu projektowego, nadzór obejmuje nie tylko zmiany ale i jakość produktu czy pracy oraz ewentualne ryzyko
  • przejrzysta struktura organizacyjna – pomiędzy uczestnikami projektu panuje jasny podział zadań zatem cała odpowiedzialność za procesy związane z tworzeniem projektu są podzielone
  • wyposażona jest w jasno sklasyfikowany obraz dla kadry zarządzającej
  • wykorzystuje zwinne metody programistyczne, między innymi dotyczy to takich elementów jak: testy jednostkowe, zarządzanie wersjami czy stała ingerencja.

Struktura zespołu deweloperskiego w XPrince jest dość rozbudowana, natomiast możemy wymienić trzy pochodne role w tej metodyce.

  1. Analityk (Analyst, odpowiedzialny za definiowanie wymagań a także opisanie projektu z punktu widzenia biznesu, oprócz tego bada ryzyko związane z jakością oraz funkcjonalnością produktów).
  2. Architekt (Architect, odpowiada za kierowanie oraz koordynowanie wykonywania czynności oraz artefaktów technicznych, dodatkowo podejmuje różne decyzje projektowe).
  3. Menadżer Projektu (Project Manager, zajmuje się środowiskiem pracy za czym stoi rozwiązywanie problemów personalnych, dodatkowo buduje i jednocześnie motywuje zespół).

Etapy projektu w XPrince dzielą się na następuje podpunkty:

  • Rozpoczęcie projektu (obejmuje stworzenie pełnej wizji systemu, ustanowienie zespołu Zarządu Projektu oraz zaplanowanie fazy Inicjacji Projektu).
  • Inicjacja projektu (etap ten dostarcza projektowi plan i środowisko organizacyjne i dzieli się na: zrozumienie celu danego projektu, propozycję wstępnej architektura jaka ma obowiązywać, plan projektu i uzasadnienie biznesowe, plan fazy elaboracyjnej oraz ustalenie kanałów komunikacyjnych oraz środowiska).
  • Elaboracja (związana jest z architekturą, podczas tego etapu zaproponowane zostają mechanizmy architektoniczne przez Architekta i jednocześnie rozpoznane zostaje ryzyko z nimi związane, wszystko to tworzy pewnego rodzaju szkielet projektu).
  • Wydanie (składa się z kilku iteracji i kończy się tranzycją po której kolejna wersja zostaje wdrożona i przekazana użytkownikowi końcowemu).
  • Zamknięcie projektu (projekt zostaje zamknięty po czym następuje ocena projektu).