Po co?

Każda organizacja, poza standardowymi procesami związanymi z wystawianiem i księgowaniem dokumentów, czy też typowymi relacjami z klientami, produkcją, itp. realizuje procesy biznesowe stanowiące specyfikę jej działania i wykorzystuje własne wypracowane know-how, które bardzo często decyduje o przewadze na rynku. Standardowe procesy obsługiwane są standardowym oprogramowaniem. A takie jak?

Specyfika organizacji często implementowana jest jako kastomizacja dostarczonego standardowego oprogramowania jednak praktyka pokazuje, że kastomizacja po pierwsze bardzo często niszczy spójność pierwotnego, gotowego już oprogramowania i podnosi koszt jego wdrożenia. Po drugie kastomizacja powoduje, że know-how Zamawiającego, “wtłoczone” w dostarczony, standardowy pakiet oprogramowania, przechodzi automatycznie na własność dostawcy oprogramowania kastomizowanego (więcej o prawach autorskich i know-how).

Aby chronić swoje know-how, wymagania dotyczące własnej, specyficznej logiki biznesowej należy zrealizować ją jako odrębne, dedykowane oprogramowanie integrowane z oprogramowaniem standardowym. Pozwala to zachować wszelkie prawa do tego kodu przy Zamawiającym. 

Większość projektów, których celem jest dostarczenie dedykowanych funkcji w nowym oprogramowaniu, to projekty których celem jest dostarczenie kilku lub kilkunastu usług aplikacyjnych realizujących logikę biznesową specyficzną dla zamawiającego oraz ich integracja już posiadanym (lub planowanym) gotowym oprogramowaniem standardowym. Koszt realizacji dedykowanych komponentów to ok. 50 – 250 tys. netto wraz z integracją. Jest to wartość niższa niż alternatywny koszt kastomizacji  wprowadzonych w typowy system ERP.

Jak?

Mowa o projekcie realizowanym w sprawdzony na świecie sposób. Całość ma dwie zasadnicze fazy: analiza i projektowanie oraz implementacja. Analiza i projektowanie ma jeden cel: zrozumieć biznes i opisać logikę biznesową stanowiącą know-how Zamawiającego oraz opracować architekturę realizacji tej logiki oraz architekturę całego systemu IT Zamawiającego (wszelkie integracje z innymi istniejącymi systemami). Implementacja odbywa się iteracyjnie-przyrostowo pod nadzorem merytorycznym (tylko realizacja logiki biznesowej) Analityka-projektanta .

W projekcie udział biorą: Zamawiający, Analityk-projektant oraz Developer wykonawca. Zaangażowanie tych trzech podmiotów obrazuje poniższy diagram:

Zamawiający na początku projektu udziela informacji o celu jaki chce osiągnąć. Początkowo Zamawiający jest dość intensywnie angażowany także na poziomie Zarządu podejmującego decyzje strategiczne. Dalej w toku projektu wyznaczone osoby wspierają Analityka. Analityk, który jest także projektantem rozwiązania, na początku wspólnie z Zamawiającym, analizuje problem i projektuje rozwiązanie. Na tym etapie developer, jeżeli został już wybrany, udziela ewentualnych konsultacji technicznych.

Standardowo developer jest wybierany dopiero jak powstanie projekt, bo dopiero w tym momencie, developer jest w stanie złożyć ofertę . Projektem jest tu wyłącznie architektura rozwiązania, oraz usługi aplikacyjne i ich logika biznesowa, które zostaną dostarczone jako pierwsze.

Od momentu rozpoczęcia Realizacji, Analityk-projektant pełni rolę Właściciela produktu (product owner) i zarządza jego rozwojem i zmianą, developer staje się także Kierownikiem projektu. Dalsza praca odbywa się w cyklu iteracyjno-przyrostowym:

Dzięki takiemu podejściu zachowujemy zalety tak zwanego zwinnego podejścia (szybkie rozpoczęcie  bez nadmiaru dokumentacji) i niwelujemy poważną wadę podejścia zwinnego jaką jest narastający chaos struktury systemu z powodu pominięcia etapu opracowania przemyślanej jego architektury i polityki rozwoju. Typową konsekwencją chaosu w projekcie są narastające koszty tworzenia systemu i bardzo duże koszty późniejszego utrzymania i rozwoju. Przed w tym właśnie chroni nas początkowa analiza i projekt architektury. Na etapie analizy często powstają rekomendacje zmian organizacyjnych, gdyż nowe narzędzie pracy praktycznie zawsze wymaga korekty procedur i instrukcji.

Jeżeli jesteś developerem, złóż ofertę…

Każdy mój projekt zawiera etap wyboru developera, konkurs ofert prowadzi Zamawiający a treść zapytania zawiera opracowany przeze mnie Opis Przedmiotu Zamówienia. Jeżeli jesteś zainteresowany złożeniem oferty zapisz się na newsletter jako developer.