Wprowadzenie
Duże projekty technologiczne najczęściej kończą się niepowodzeniem. Czy istnieje sposób na zmniejszenie prawdopodobieństwa niepowodzenia? Tak: należy przyjrzeć się problemom związanym z definicją, zakresem i zarządzaniem, ale nie należy zbyt uważnie przyglądać się problemom związanym z talentami, wsparciem kadry kierowniczej i kulturą korporacyjną. Są one prawie niemożliwe do rozwiązania.
https://www.forbes.com/sites/steveandriole/2021/03/25/3‑main-reasons-why-big-technology-projects-fail — why-many-companies-should-just-never-do-them/

Przyczyny porażek wdrożeń systemów ERP są stale te same od lat: łamanie zasad. Jakie to zasady? Generalnie:
- przekazanie zarządzania projektem w ręce dostawcy ERP,
- ingerowanie w strukturę monolitycznego kod systemu (kastomizacja),
- integracja metodą współdzielenia jednej bazy danych (to stara i obecnie nieefektywna metoda z czasów lokalnych systemów i braku komunikacji elektronicznej),
- konsekwencja kastomizacji: prawa majątkowe do know-how nabywcy zostawiają przy dostawcy kastomizowanego systemu.
I niestety za każdym razem wniosek jest ten sam: nie brakuje dostępu do wiedzy jak tego nie robić, a mimo to nabywcy systemów ERP (ich prawnicy także) popełniają wszystkie kluczowe błędy . Dlatego nie należy przekazywać zarządzania projektem dostawcom systemów, dla przeciwwagi należy na czas projektu zaangażować eksperta po swojej stronie. Większe firmy, powinny w czasie projektu budować swój zespół kompetencyjny, by przejął projekt.
Jak należy ratować wadliwe wdrożenia? Autorzy jednego z raportów Panorama Consulting zalecają między innymi:
Praca z (właściwymi) konsultantami zewnętrznymi
źr.: https://www.panorama-consulting.com/how-to-recover-from-a-failed-software-implementation-get-back-on-track/
Projekty ERP mogą zakończyć się niepowodzeniem, ponieważ zespoły pracujące nad nimi są po prostu zbyt blisko pracy, aby dostrzec pojawiające się zagrożenia. Jednak nawet firmy, które angażują zewnętrzny nadzór, mogą doświadczyć niepowodzenia. Niektórzy konsultanci ERP mogą nie być najlepiej dopasowani do Twojej organizacji. W rzeczywistości ich „pomoc” może zaszkodzić postępom, a nawet może być przyczyną niepowodzenia.
Dlatego tak ważne jest sprawdzenie niezależności i dotychczasowego dorobku takiej osoby. Ale po kolei.
Gotowana żaba
Jeśli historia uczy czegokolwiek, to tylko tego, że ludzie nigdy niczego się nie nauczyli z historii.
Aleksander Krawczuk, Poczet cesarzy rzymskich
Pewnego razu w pewnej dyskusji, pewien Pan napisał:
W teorii informacji od dziesiątków lat zwraca się uwagę na fenomen polegający na tym, że najważniejsze zmiany w rzeczywistości publicznej nie mają wielkiej lub zgoła żadnej publicznej nośności, ponieważ nie wiążą się z żadnym konkretnym zdarzeniem, które można dobrze sprzedać
Odpowiedziałem:
Zwrócił Pan uwagę na ważną rzecz i ma ona dość proste wyjaśnienie, także na gruncie teorii informacji:
- informacja to wiadomość o zaistnieniu faktu,
- wartość (miara) określonej informacji jest odwrotnie proporcjonalna do prawdopodobieństwa wystąpienia faktu jaki opisuje (teoria komunikacji),
- ludzie są wyczuleni na informacje dla nich „wartościowe”,
- powolne zmiany (informacje o nich) nigdy nie są wartościowe i nośne bo nie są żadnym zaskoczeniem,
- dlatego drobne zmiany nie są zauważane.
Powyższe ma także znaną metaforę, jaką jest tak zwane gotowanie żaby: nie jest dla niej zaskoczeniem powoli narastająca temperatura wody, zaskoczeniem jest zbyt późne odkrycie że woda wrze (zaskoczeniem było też by wrzucenie jej znienacka od razu do gorącej).
Tak samo działa powolne „dojenie” Zamawiającego w toku wdrożenia i eksploatacji systemu ERP, bo odbywa sie na identycznej zasadzie: miesiąc po miesiącu realizowane są kolejne drobne poprawki i wymagania, nadal nic nie działa jak powinno, i nagle po kilku latach gotowania, żaba zwana Nabywcą Systemu ERP odkrywa, że jest ugotowana i chce iść do sądu, rzecz w tym, że często jest już za późno, ?.. bo jest już ugotowana.
Przyczyny kłopotów
Bardzo często mówi się, że
przyczyną porażek jest brak codziennego zaangażowania ze strony osób decyzyjnych.
Jeżeli wdrożenie odbywa się „zwinnie” i bez przygotowania, faktycznie stałe zaangażowanie osób decyzyjnych jest niezbędne. Jeżeli wdrożenie jest wcześniej przygotowane, nie. To przygotowanie to audyt procesów i ewentualne przygotowanie zalecanych standaryzacji i optymalizacji. Zarząd (jego bezpośrednie zaangażowanie) jest wymagany tylko do zatwierdzenia dokumentu audytu, analizy i projektu rozwiązania, potem już tylko obserwuje. Kogo stać na zaangażowanie Zarządu w bieżące prace wdrożeniowe?
Jednak:
Najczęstszą przyczyną kłopotów jest uznanie, że dostawca oprogramowania sam wykona analizę przedwdrożeniową, opracuje wymagania i potem wdroży system.
Bo jest to myślenie życzeniowe. Uznanie zaś, że jeden system nadaje sie do wszystkiego w firmie, jest w obecnych czasach jest utopią.
Niestety problematyczne wdrożenia systemów ERP, jak już na początku wspomniano, nie są rzadkością. Wiele moich zleceń od klientów to wyprowadzanie ich z impasu sporu z dostawcą a potem kontynuacja wdrożenia lub zmiana systemu bo czasami najlepszym wyjściem okazuje się wyjście z posiadanego/wdrażanego systemu ERP z minimalnymi stratami.
Architektura systemów w XXI w.
Architektura oprogramowania, jej projektowanie, to dokonywanie fundamentalnych wyborów strukturalnych, których zmiana po wdrożeniu jest kosztowna. Wybory architektury oprogramowania obejmują określone opcje strukturalne z możliwości w projekcie oprogramowania.
Architektura systemu oprogramowania jest metaforą, analogiczną do architektury budynku[3]. Funkcjonuje ona jako plan systemu i projektu deweloperskiego, który kierownictwo projektu może później wykorzystać do ekstrapolacji zadań niezbędnych do wykonania przez zaangażowane zespoły i ludzi.
Najbardziej znane na rynku systemy ERP maja architekturę z czasów gdy powstawały (lata 80-te):

Są to systemy budowane w oparciu o centralną bazę danych, bardzo skomplikowane, z silnie powiązanymi ze sobą komponentami. Typowe problemy w toku wdrożeń takich systemów:
- każda modyfikacja kosztuje kilka-kilkanaście tysięcy zł,
- każda modyfikacja to ryzyko naruszenia integralności całości,
- każda lokalna modyfikacja przenosi sie na resztę systemu (wspólna baza danych),
- nie da się oddzielić od siebie modułów,
- monopol jednego dostawcy, który zacznie Ci dyktować ceny,
- wspólna baza danych (model danych) jest kompromisem, dlatego bardzo często pewnych funkcjonalności jest po prostu niemożliwe.
Już od końca lat 90-tych mówi się o odejściu od tej architektury, gdyż jakakolwiek ingerencja w taki system to ogromne ryzyko jego destabilizacji. Na rynku od lat powstają dziedzinowe specjalizowane systemy z wbudowanymi opcjami integracji (interfejsy API: RPC, REST, SOAP itp.). Dlatego popularną i skuteczną formą wdrażania „starych” ERP jest wykorzystywanie ich tylko w wąskim zakresie (centralne operacje administracyjne). Podobnie wygląda „ratowanie” tych wdrożeń: rezygnujemy z modułów wymagających kastomizacji na rzecz wolnostojących integrowanych specjalizowanych, dziedzinowych aplikacji dobranych do naszych potrzeb. Architektura taka wygląda jak poniżej:

Najnowocześniejszym podejściem jest to, co dziś nazywamy federacyjnym wdrożeniem dziedzinowych komponentów: zestaw zintegrowanych aplikacji dobranych do potrzeb konkretnej firmy. Na rynku jest obecnie ogromny wybór specjalizowanych aplikacji bardzo łatwych do integracji. Architektura takiego system wygląda jak poniżej:

Taki system można wdrażać stopniowo, decyzje o wyborze kolejnych modułów podejmowane są „na ostatni moment”, czyli wtedy gdy mamy największą wiedzę. Bardzo często okazuje się też, że posiadany i wdrożony system FK nie wymaga wymiany (jeden z moich klientów ma potężny system produkcyjny MES-APS zintegrowany z poczciwą Comarch OPTIMA).
Jak wyglądają „typowe” wdrożenia
Naturalnym stanem większości firm jest „stabilna praca bez pożarów” polegająca na tym, że po latach drobnych, ewolucyjnych zmian firma, jako „system naczyń połączonych”, jakoś działa i to nie raz całkiem nieźle.
Problem w tym, że taką firmę potrafi zabić nawet drobiazg wywołujący „efekt motyla” w firmie. Niejedna firma upadła, z powodu „drobnej złej decyzji”, złej bo podjętej bez analizy jej wpływu na resztę organizacji. Dlaczego tak się dzieje?
Powszechnie uważa się, że wymagania na oprogramowanie to efekt spisanych wywiadów i wymagań z pracownikami. Niestety wykazano, że nic bardziej błędnego! Takie dokumenty są niekompletne, wewnętrznie sprzeczne i niespójne, są jedną z kluczowych przyczyn porażek projektów w branży informatycznej .
Do bezpiecznego podejmowania decyzji o zmianach trzeba mieć model firmy, i nie są to setki stron zapisu wywiadów z pracownikami, to kilkanaście powiązanych ze sobą modeli mieszczących się góra na kilkudziesięciu stronach wydruku A4 (model jako cyfrowy bliźniak organizacji). Każda zmiana systemu informatycznego to ryzykowna decyzja.
Model procesowy organizacji to kilkanaście, rzadziej kilkadziesiąt, schematów blokowych na odpowiednio dobranym poziomie ogólności (abstrakcji). Taki dokument albo da się przeczytać w jeden dzień w dniu jego zatwierdzania, albo jest nieprzydatny. Później powinien służyć jak „encyklopedia wiedzy o organizacji”: zaglądamy w określone miejsce, mając zaufanie, że całość jest spójna, kompletna i niesprzeczna (a jest, jeżeli dokument jest, po jego powstaniu, aktualizowany) .
Jednym z głównych powodów powstawiania problemów wdrożeń monolitycznych systemów ERP jest ich kastomizacja (ingerencja w kod): często jedna zmiana powoduje negatywne skutki w kilku innych miejscach, powodem jest to, że nikt (często nawet firma wdrażająca!) nie rozumie w pełni działania tego systemu, bo jego architektura jest „tajemnicą producenta”, zaś bez dobrej mapy procesów nie mamy pojęcia jak jeden dział firmy (i moduł) wpływa na inny. Warto mieć świadomość, że baza danych dużego monolitu ERP to ponad tysiąc połączonych ze sobą i silnie zależnych od siebie, tabel. Każde ingerencja w taki system to prawie pewne kłopoty (u producenta taki system przechodzi tysiące godzin testów).
Nie raz jestem proszony o audyty dokumentacji projektów na etapie sporów przedsądowych między dostawcą oprogramowania i zamawiającym (opinia prywatna). Często bywa, że wdrożenie trzeba zarzucić, a zdobyte doświadczenie wykorzystać w prowadzonym od nowa projekcie. Kilka spostrzeżeń na ten temat w artykule: Kto winien porażki projektu?
Jak skutecznie zaplanować i przeprowadzić wdrożenie oprogramowania – idealizacja
Szkielet każdej skutecznej metodyki prowadzenia analiz przedwdrożeniowych i wdrożeń, zarówno gotowych systemów ERP, już dostępnych na rynku, jak i projektowania i wdrażania rozwiązań dedykowanych to: przeprowadzić audyt, opracować model procesów biznesowych i zaplanować ewentualne ich usprawnienia, określić tak zwaną lukę czyli wskazać obszar, którego standardowa wersja planowanego do wdrożenia oprogramowania nie obsługuje. Typowy, zalecany sposób postępowania przy tworzeniu modeli procesów :
- Zebranie artefaktów (dokumenty operacyjne),
- Zidentyfikowanie i opisanie mechanizmów ich powstania,
- Umiejscowienie (mapowanie) tych mechanizmów w architekturze organizacji i systemu IT,
- Zidentyfikowanie skutków nietypowych przypadków,
- Ocena spełnienia wymagań przez projektowaną architekturę systemu,
- Ocena wzajemnego wpływu wymagań,
- Ocena kosztów/korzyści planowanej nowej architektury.
Mając już taki model należy wskazać na nim wszystkie miejsca, które mają być wspierane przyszłym oprogramowaniem: to zakres projektu wdrożeniowego. Pozostaje już tylko zaprojektowanie tego systemu, znalezienie dostawcy i wdrożenie pod własnym nadzorem.

Innymi słowy każdy taki projekt wymaga: (1) analizy i opracowania modelu procesów biznesowych organizacji w celu zrozumienia mechanizmu jej działania (więcej w artykule: Audyt organizacji i optymalizacja procesów biznesowych), (2) odwzorowanie tego mechanizmu w postaci projektu technicznego oprogramowania (więcej w artykule: Analiza i Opracowanie Wymagań na Oprogramowanie).
Projekty takie obecnie realizuje się metodą iteracyjno-przyrostową („od ogółu do szczegółu”), dlatego każdy z ww. dwóch kluczowych etapów, nie powinien trwać dłużej niż trzy miesiące, detale są opracowywane na bieżąco w toku wdrożenia (nadzór autorski). Co do zasady należy unikać kastomizacji gotowego kodu (to niszczy integralność gotowego już oprogramowania i powoduje, że przyszłe upgrade’y będą wymagały powtórzenia prac wdrożeniowych). Brakujące funkcjonalności to obszar tworzenia dedykowanych modułów tam gdzie to okaże sie wymagane (patrz: Ochrona wartości intelektualnych i know-how w organizacji). Znakomita większość potrzeb może zostać obsłużona gotowymi, dostępnymi na rynku, rozwiązaniami a ich integracja, przy obecnym poziomie technologii i standaryzacji, nie stanowi żadnego problemu – jest wielokrotnie tańsza niż kastomizacja dużych systemów.
Kluczowe przyczyny problemów wdrożeniowych
Praktyka pokazuje (patrz Chaos Report), że kluczową przyczyną jest łamanie powyższych zasad i próby realizacji wdrożenia „drogą na skróty”, czyli bez przygotowania (patrz: słynne porażki wdrożeń ERP).
Typowy system ERP to miliony linii kodu programu i setki skojarzonych wzajemnie tabel baz danych. Takie systemy powstają latami, testowanie ich u producenta trwa miesiącami. Każda ingerencja w strukturę tego kodu i tabel baz danych to ryzyko zaburzenia stabilności systemu i ogromna pracochłonność usuwania skutków tych ingerencji.
Bardzo często przytaczaną przyczyną nieudanego wdrożenia, poza niskiej jakości specyfikacją wymagań, jest brak merytorycznego nadzoru nad pracami dostawców. Dostawca oprogramowania ma ogromną przewagę kompetencyjną nad użytkownikami swoich produktów (dotyczy to zresztą każdego zaawansowanego technologicznie produktu). Oznacza to, że nabywca, bez wsparcia, nie jest w stanie merytorycznie nadzorować prac dostawcy (patrz: Kto winny porażki projektu) .
ZARZĄDZANIE PROJEKTEM WE WŁASNYM ZAKRESIE JEST KRYTYCZNE: Integratorzy systemów mogą być cennym elementem cyfrowej transformacji, ale nigdy nie powinni mieć całkowitej, niekontrolowanej władzy nad całym przedsięwzięciem
Warto także wskazać przyczynę poza merytoryczną, jaką jest komunikacja w projekcie: korzystanie z poczty elektronicznej i prostych narzędzi biurowych, korzystanie z dużej liczby drobnych niezintegrowanych, to zmora zarządzania projektami: rozproszone i niekontrolowane dokumenty, brak jednolitego i kontrolowanego dostępu do nich, powoduje, że bardzo szybko zarządzanie projektem staje się serią przypadkowych kontaktów. Niekontrolowany wspólny dysk sieciowy (jeżeli jest) szybko staje się „śmietnikiem”.
Jak wyjść z impasu w projekcie?
Typowym elementem sporów z dostawcami systemów jest kwestia pracochłonności i rozliczeń. Dlatego pierwszym etapem „ratowania” jest zawsze audyt dokumentów projektowych (umowa, bieżące zlecenia i ich rozliczenia). Ten etap ma na celu ustalenie stanu faktycznego i wypracowanie tak zwanego bilansu otwarcia bez oceniania którejkolwiek ze stron.
Kolejny etap to opracowanie kluczowych zaległych dokumentów (patrz początek tego artykułu). Ich szczegółowość zależy od aktualnego stanu dokumentacji projektowej. Tu powstaje także tak zwana analiza luki (analiza „fit-gap”), czyli określenie na ile aktualny stan odbiega od stanu pożądanego. Ten etap kończą rekomendacje do dalszego toku prac, jest to opracowanie nowego harmonogramu i zasad współpracy (aneks do aktualnej umowy lub nowa umowa na wdrożenie). W skrajnym przypadku należy się liczyć z zaniechaniem kontynuacji projektu, ponownym rozpoczęciem wdrożenia tego samego produktu lub wyborem i wdrożeniem innego (patrz: LIDL, PUE, HERTZ).
A może inaczej: mediacje
Są dwa kluczowe momenty ratowania wdrożenia oprogramowania: 1. zarzadzanie ryzykiem na etapie planowania projektu oraz 2. mediacje na etapie konfliktu stron umowy na wdrożenie. Mediacje są definiowane jako: pośredniczenie w sporze mające na celu ułatwienie stronom dojście do porozumienia. Kolejny fakt: <10% projektów średnich i dużych kończy się w planowanym terminie i budżecie .
To znaczy, że ponad 90% wdrożeń to spory! W znakomitej większości jest to już spór o treść umowy na etapie jej zawierania, między Zamawiającym a Dostawcą oprogramowania.
Celem wdrożenia oprogramowania jest (powinna być) satysfakcja obu stron, a nie tylko tej, która przyjęła wynagrodzenie i nie poniesie skutków ewentualnej porażki (tu zawsze przegrywa tylko kupujący).
Co to znaczy? To znaczy, że warto już na samym początku rozważyć umowę trójstronną. Może ona nie mieć w nazwie słowa Mediacje, cel jest ten sam: obie strony dążą do ugody jaką jest sprawne i płynne wdrożenie. Przedmiotem „sporu” jest konflikt interesu, czyli zakres projektu i sposób jego realizacji: kupujący chce jak najwięcej za jak najmniej zaś dostawca chce dostarczyć jak najmniej za jak najwięcej.
Więc angażujemy trzecią stronę i współpraca ta jest dobrowolnym zobowiązaniem stron, w ramach którego zainteresowani zapewniają się nawzajem, iż będą dążyli do wypracowania kompromisu zadowalającego w równym stopniu obie strony konfliktu. Kto pomaga ten kompromis osiągnąć? Niezależny analityk-projektant rozwiązania, którego celem jest pogodzenie stron mających ww. konflikt interesu: to on, wraz z Nabywcą oprogramowania opracowuje Wymagania czyli Zakres Projektu, a potem bierze udział w ocenie Koncepcji Wdrożenia jaka przedstawia Dostawca. Od tego momentu pracuje na rzecz sukcesu wdrożenia czyli na rzecz obu stron.
Wdrożenie tego podejścia polega na opracowaniu wymagań (tu jest to projekt rozwiązania) jako załącznika do umowy na wdrożenie, a potem na wpisaniu projektanta jako „mediatora”, do umowy na wdrożenie jako członka zespołu po stronie zespołu Zamawiającego.
Jeżeli problematyczne wdrożenie jest już w toku, to po audycie i „bilansie otwarcia”, realizowane są wyżej opisane działania po stronie Zamawiającego. Albo czasami właśnie zawierana jest umowa trójstronna: Zamawiający, Dostawca i Mediator. Tu często koszty mediatora dzielone są po połowie miedzy Zamawiającego a Dostawcę: Mediator tu to projektant systemu mający nadzór autorski.
W swojej karierze miałem trzy takie umowy: dwie zawarte na etapie poważnego sporu o jakość wdrożenia, jedna zawarta już na etapie problemów z podpisaniem umowy na wdrożenie, co ciekawe na wniosek dostawcy oprogramowania. Wszystkie trzy projekty skończyły się sukcesem wdrożenia. Polecam!
Oferta
Polecam opis: Jak wyjść z długu technologicznego jakim jest centralny monolityczny system.
Umowa ze mną obejmuje w takich przypadkach najczęściej:
- audyt: opracowanie modeli procesów biznesowych firmy i wskazanie na nich wymagań biznesowych i zakresu wdrożenia,
- analiza fit-gap: ocenić różnicę pomiędzy planowanym stanem, „idealnym” a aktualnym faktycznym, opracowanie projektu rozwiązania,
- ustalenie z dostawcą formy zamknięcia aktualnego stanu: aneksu lub nowej umowy na dalsze prace (załącznikiem jest co do zasady produkt pierwszego i drugiego etapu powyżej: model procesów biznesowych i projekt rozwiązania jako wymaganie),
- przejęcie zarządzania zakresem projektu (wymagania i projektowanie ich realizacji): (mój) nadzór autorski na bazie opracowanej mapy procesów i wymagań, dostawca realizuje wyłącznie implementację i wdrożenie pod dyktando Zamawiającego (czyli także moje).
- może to być umowa z dowolne ze stron lub wyżej opisana umowa trójstronna.
Praktycznie każdy dostawca oprogramowania broni tezy, że tylko on jest w stanie merytorycznie nadzorować wdrożenie swoich produktów. Teza ta jest nie do obrony z kilku powodów:
- dostawca ma wiedzę o tym co wdraża, ale wiedzę o kliencie też musi zdobyć,
- dostawca, realizując sam analizę wymagań, ma ogromny konflikt interesu: z zasady preferuje swoje metody, technologie i rozwiązania, dające mu najwyższą marże (rolą Dostawcy jest opracowanie dopiero koncepcji wdrożenia w odpowiedzi na wymaganie przedstawione przez Zamawiającego)
- po trzecie pozostaje problem autorskich praw majątkowych do wszelkich nowopowstałych funkcjonalności, które często stanowią know-how zamawiającego i niestety, jeżeli ich autorem jest dostawca, prawa te pozostają przy nim.
Dlatego na całym świecie pojawiają się zalecenia, by do projektów angażować analityków-projektantów niezależnych od dostawców, jako trzecia strona wdrożenia. Nie jest prawdą, że mają oni niższe kompetencje od dostawców, jest dokładnie odwrotnie (10 lat wdrażałem systemu ERP pracując u jednego z największych integratorów systemów ERP, od 20 lat mam kontakt z kilkoma firmami, wdrożeniami i systemami ERP rocznie, dostawca systemu praktycznie zna tylko swoje rozwiązanie).
Patrz także Ekspertyzy, rola biegłego.
Rzecz w tym, że w branży IT narzędzia programistyczne nigdy nie były problemem, problemem zawsze są źle zaprojektowane aplikacje ?
Źródła
Na zakończenie
Spory w projektach wdrożeniowych oprogramowania wspomagającego zarządzenie są niestety nadal normą. Większość udaje są rozwiązać polubownie między stronami (mediacje), często jednak straty i opóźnienia są tak duże, że angażowani są eksperci z zewnątrz w celu ich minimalizowania.
Jeżeli więc Państwo uznacie, że potrzebne Wam jest merytoryczne wsparcie, chętnie pomogę oferując doświadczenie zdobyte w ciągu 30 lat pracy nad projektowaniem i wdrażaniem takich systemów, jak i kilkunastu lat pracy naukowej w obszarze inżynierii systemów.
Poniżej prosty formularz, który pomoże sformułować Wasze oczekiwania i pytanie do mnie.
Birmingham City Council, the largest local authority in Europe, has declared itself in financial distress after troubled Oracle project costs ballooned from $25 million to around $125.5 million. The Register reports:
https://time.news/europes-largest-local-government-body-sinks-amid-oracle-disaster/