Migracja systemu w firmie: kiedy i jak?

Migracja systemu, a nawet sama decyzja o niej, nigdy nie jest prosta. Wymaga analizy, zarówno od strony korzyści biznesowych, jak i działu IT w kontekście dalszych możliwości rozwoju oraz utrzymania nowego systemu. Taką decyzję podejmuje się zwykle, gdy nie ma już innego wyboru, bo starego systemu nie daje się już w żaden sposób uratować, innymi słowy nie daje się już go rozwijać, utrzymywać i dostosowywać do zmieniającego się otoczenia biznesowego. 

Migracja systemu to operacja polegająca na transferze danych ze starej struktury na infrastrukturę następcy.  Czasami to ostateczność, a czasami po prostu przemyślany krok ku rozwojowi organizacji. Poznaj najbardziej typowe sytuacje, gdy migracja jest już konieczna:  

Jeśli chcesz poznać 3 najlepsze podejścia i sposoby migracji, czytaj dalej. Część z nich opiszemy szerzej, drugie pokrótce. Wskażemy jakie problemy napotkaliśmy i jak je rozwiązaliśmy. Podpowiemy jakie nastawienie powinna prezentować organizacja.

Migracja etapowa

Rozwiązaniem, które można zastosować, jest migracja etapowa. Jeśli stary system daje taką możliwość, to możemy przenosić go do nowego kawałek po kawałku. Wyobraźmy sobie, że system Legacy ma budowę modułową, którą utożsamiamy razem z procesami. Identyfikujemy moduły, ewentualnie niezależne funkcjonalności, następnie próbujemy je ustrukturyzować i ułożyć plan migracji. Po dobrze wykonanej analizie jesteśmy świadomi, jak powinien przebiegać cały proces i jak możemy go dokładnie zaplanować. W tym przypadku będziemy musieli zaangażować cały zespół jak i BIZNES w proces migracji etapowej. Nie zawsze jesteśmy w stanie zaabsorbować biznes w stu procentach, ponieważ często osoby po tej stronie mają swoje codzienne obowiązki do wykonania.    

Ten rodzaj migracji niesie za sobą pewne zalety. Musimy zdawać sobie sprawę, że cały proces będzie trwał dłużej, ale zyskamy nad nim większą kontrolę. Będzie droższy niż migracja jednorazowa, ale mniej wpłynie na wszystkie procesy. W przypadku bardzo dużych monolitów trudno będzie wydzielić konkretne moduły. Jeśli to się nie uda, to możemy spróbować wydzielić poszczególne procesy, funkcjonalności lub podzielić system w inny sposób, patrząc na niego jak na czarną skrzynkę, która posiada wejście-wyjście. Dokładnie analizujemy jakie zestawy danych/parametrów mają być dostarczone na wejściu, aby uzyskać konkretne wyniki/dane na wyjściu. Podejść jest tutaj dużo.

Spójność, integralność

Wspomnijmy, że wymagane jest również ciągłe sprawdzanie spójności między systemami, ponieważ wiele procesów czy modułów będzie się ze sobą zazębiało i część zostanie w starym systemie, a inne fragmenty przejdą do nowego systemu. W pewnych punktach wspólnych, dobrze zidentyfikowanych, będzie można sprawdzać i kontrolować czy ta spójność zachodzi. Proces ten jest trudny do przeprowadzenia w przypadku systemów monolitycznych. Z im większym Legacy mamy do czynienia, tym przeprowadzenie tego typu sprawdzenia integralności będzie stwarzało większy problem.

Podsumowując: proces będzie na pewno kosztowny, czasowo jak i finansowo. Będzie wymagał pracy dwóch systemów: starego i nowego. W zasadzie do momentu, dopóki poprzedni system nie zostanie w pełni zmigrowany.

Migracja do zupełnie nowego systemu

Powiedzmy szczerze, najbardziej drastyczne, najkosztowniejsze i najczęściej najrozsądniejsze rozwiązanie… Wybieramy takie oprogramowanie, które pokrywa nasz obszar biznesowy i ma funkcjonalności, które realizował poprzednik. Tę migrację możemy zrealizować na wiele sposobów, choć stosujemy ją najczęściej, kiedy nie mamy innego wyjścia. Wiąże się to z przeniesieniem, zarówno danych wszystkich procesów biznesowych, ról jak i odpowiedzialności ze starego systemu. Ten wariat wybiera się w szczególności, gdy obecna architektura (często legacy) nie daje się już w rozsądny sposób rozwijać. Dochodzimy do ściany, kończą się już pomysły, nie jesteśmy w stanie dalej rozwijać naszego biznesu. W związku z tym wybieramy z rynku sprawdzony mechanizm do danego obszaru.

Wiemy, że system działa na rynku, został wdrożony u wielu Klientów, dostępni są też specjaliści do jego rozwoju, więc tworzymy projekt i wykonujemy migrację. Mimo że jest ona jednorazowa, nie oznacza, że będzie krótka. Ani tania. Często ten proces jest dość bolesny: przenosimy się na nowy system, wyznaczamy pewną datę odcięcia: obecny przestaje działać, zostaje nam już tylko jego następca. Poprzednik oczywiście może nam posłużyć jako system np. do odczytu, gdzie jeszcze możemy sprawdzić parę funkcji czy danych. Natomiast wszystkie nowe pliki, wyliczenia, procesy dzieją się już tylko i wyłącznie w nowym systemie. Jest to duże ryzyko, ponieważ wszystko, co zostało przeniesione, musi być bardzo dobrze zaprojektowane i przetestowane. Po to, aby od „momentu zero”, nowy system wystartował poprawnie, bez zablokowania procesów biznesowych.

To wymaga bardzo dużego zaangażowania osób z samego biznesu, co często jest bagatelizowane na etapie projektu. W tym wypadku nie można przyglądać się biernie, jak powstaje nowy system – należy brać czynny udział w jego tworzeniu.

„Umarł król, niech żyje król”

Dodajmy, że przynajmniej według nas jest to dość odważne podejście i czasami konieczne. Im większa konieczność upgrade’u, im większy dług technologiczny, tym wyższy jest koszt. Wyobraźmy sobie, że mamy do czynienia z bardzo starym systemem Legacy. Chcemy mieć produkty, które będą w pełni konfigurowalne przez administratora. Niestety system jest bardzo „zahardkodowany” i w zasadzie nie ma możliwości zrobienia tego w obecnej konfiguracji. To są przesłanki do tego, że system nadaje się już do wymiany. Niezależnie od obszaru biznesowego: czy to będą ubezpieczenia, bankowość, czy inna branża.

Migracja systemu do nowszej technologii

Kolejną możliwością, którą zawsze można rozważać, jest przepisanie systemu na nowszą technologię. Nie jest to rozwiązanie tanie i nazbyt powszechne. Zdarzało nam się pracować nad takimi projektami, gdzie następowało przepisanie starego systemu do nowszej technologii. Natomiast trzeba wziąć pod uwagę, że to zawsze dość duże przedsięwzięcie. Wymaga najczęściej zaangażowania dwóch zespołów: jednego, który zna stary system dość dobrze, i drugiego, który ma wiedzę o nowej technologii. Taka operacja jest długa, wymaga dokładnego zaplanowania i zaprojektowania wszystkich faz całego przedsięwzięcia. Może to być proces, który będzie wymieniał system od razu w całości lub też zastępował kolejno poszczególne funkcjonalności biznesowe. Na koniec i tak zawsze zostaje migracja danych, którą w mniejszym lub większym stopniu należy wykonać.

Migracja systemu: założenia i efekty

W przypadku migracji, problemy zawsze się gdzieś znajdą. Chociażby przez to, że przeniesione między systemami dane nigdy nie pasują do siebie w stu procentach. Części będzie brakowało, a inne fragmenty trzeba po prostu uzupełnić z zewnątrz lub wypełnić danymi domyślnymi. Napotkamy procesy, które powodują, że system nie będzie w pełni funkcjonalny, a nowy proces nie będzie odzwierciedlał w 100% starego. Oczywiście będzie on spełniał podstawowe wymagania biznesowe, bo musi – inaczej migracja nie miałaby sensu i należałoby się cofnąć do starego systemu. Natomiast, po wdrożeniu są zawsze jakieś problemy, które „wychodzą” w trakcie użytkowania i trzeba je szybko poprawić. Bo praktycznie zawsze da się to zrobić.

Bardzo częstym scenariuszem jest pozostawienie jeszcze przez jakiś czas działającego starego systemu, nawet po pełnej zakończonej sukcesem do nowego systemu. Oczywiście w zależności od oprogramowania, przejście musi nastąpić z dnia na dzień, aby nie było sytuacji, że dane trafiają zarówno do nowego jak i starego systemu w sposób niezamierzony. Przykładem mogą tu być systemy księgowe. Powodowałoby to ogromny bałagan w danych a czasem nawet konieczność powtórnej migracji danych.

Natomiast jeżeli mówimy o wewnętrznym rozwiązaniu: zazwyczaj aplikacje działają i są utrzymywane równolegle. Przy pewnych kluczowych procesach biznesowych rzeczywiście tak się dzieje. Dla bezpieczeństwa i sprawdzenia poprawności danych klient decyduje się na utrzymywanie obu systemów jeszcze przez jakiś czas. Chce sprawdzać, czy nowe wyliczenia i procesy w systemie rzeczywiście zachowują się tak samo i dają te same wyniki co wcześniej. Czasami stary system przełączany jest w tryb „read only” i służy tylko jako referencja, bo nikt już nie wprowadza tam nowych danych i w sumie nie powinien, jeśli migracja została zakończona 

Nasze doświadczenia

Realizowaliśmy taki projekt, gdzie proces przenoszenia danych był bardzo specyficznie podzielony. Cała migracja, która była zaplanowana na uruchomienie nowego systemu, odbywała się w weekend, a od poniedziałku nowy system ruszał produkcyjnie. Natomiast nie dotyczyło to wszystkich danych. Duża część, która była zaklasyfikowana przez Klienta jako „stare” i niepotrzebne do bieżących prac biznesowych została rozłożona w czasie na kilkanaście dni, już po wdrożeniu nowego systemu. Pliki były sukcesywnie każdej nocy domigrowywane, tak jak to było zaplanowane. W przypadku systemów bankowych mieliśmy sytuacje, gdzie faktycznie dostępne były dwa systemy, a Klienci byli migrowani do nowego systemu etapami. 

Podsumujmy sobie to, co już zostało wymienione wyżej. Migracja systemu to proces kosztowny i czasochłonny. Będzie wymagała zaangażowania wielu osób, nie tylko stałego zespołu projektowego, ale również, w szczególności, biznesu. Musimy mieć świadomość, że nie przerzucamy danych z systemu A do systemu B, a potem wszystko działa. Będą one musiały zostać poddane pewnym transformacjom. Nowe oprogramowanie czasami będzie wzbogacone lub wypełnione tylko danymi, których ten nowy system wymaga i nie muszą to być treści istotne dla procesów biznesowych. Systemy są różne i operacje w nich mogą przebiegać inaczej. Wszystkich danych nie da się odwzorować 1:1. Chyba że, mamy do czynienia z przepisaniem starego systemu na nowy, gdzie takie projekty również przeprowadziliśmy. Tak naprawdę rozwiązania różniły się tylko wizualnie, bo wszystkie funkcjonalności i dane musiały być zmigrowane „jeden do jednego”. 

Odpowiednie nastawienie organizacji do migracji

Warto zwrócić uwagę, że bardzo często nowości są wrogiem użytkowników, ponieważ muszą oni nauczyć się nowego systemu. Będzie on przecież funkcjonował trochę inaczej od poprzedniego: nie wszystkie procesy będą działały tak samo, ścieżki przejścia w różnych etapach procesu będą inne. Zdarza się, że wzbudza to niechęć użytkowników, gdyż byli przyzwyczajeni do pewnych zachowań, które znali na pamięć. Natomiast nowy system nie będzie im tego zapewniał, dopóki się go nie nauczą.

Zawsze znajdzie się grupa użytkowników, dla których nowe rozwiązanie stanie się „wrogiem”. Narzekają i rozsiewają plotki, że wdrażany system do niczego się nie nadaje, ten stary był taki super i tak dalej… Trzeba z tym walczyć, ponieważ rozbija to motywację zespołów, które nad tym pracują. Wielce prawdopodobne jest, że nowy system po kilkunastu miesiącach, gdy zostanie dobrze rozpoznany przez Użytkowników, będzie w wielu aspektach dużo wygodniejszy niż poprzednik. 

Jak możemy podejść do migracji do nowego systemu? 

Najlepszym rozwiązaniem, jeśli nie mamy zbyt dużych doświadczeń w tego typu działalności i brakuje nam specjalistów, jest po prostu wybór firmy doradczej do migracji, a potem utrzymania systemu. Istotną sprawą jest precyzyjne zaplanowanie całego procesu i uznanie przedsięwzięcia za milowy projekt. Rozpiszmy plan „co do minuty”, ponieważ sam proces wykonania migracji danych z jednego systemu do drugiego, będzie odbywał się najczęściej podczas »kluczowego weekendu«, a w harmonogramie to tak naprawdę chwila. Nie możemy dopuścić do sytuacji, że zaczynamy migrację, dajmy na to, w sobotę rano, a ona do poniedziałku się nie skończy. Przygotowanie dokładnego roll out planu w tym wypadku to podstawa.  

Ważną rzeczą jest szkolenie użytkowników kluczowych. Oczywiście najlepiej, gdyby udało się przyuczyć wszystkich użytkowników, którzy będą korzystali z tego systemu. Jednak bardzo często ze względu na inne obowiązki, które wykonują, nie będzie to możliwe. Najczęstszym rozwiązaniem jest edukacja użytkowników kluczowych, którzy później propagują tę wiedzę i przekazują ją pozostałym użytkownikom.

Podsumowanie: ważne jest zaangażowanie

Ważną, a może najważniejszą sprawą, jest tutaj zaangażowanie zarówno biznesu jak i kierownictwa. Chodzi o to, żeby wszelkiego rodzaju spory czy kwestie otwarte rozwiązywać jak najszybciej. Nie możemy czekać z pewnymi sprawami, aż projekt się skończy albo aż dotrzemy do konkretnego kamienia milowego. Wtedy to już jest „pożar”: coś wybucha i staje się to krytyczne dla całego projektu. Jak wspomnieliśmy: decydenci nie mogą tylko stać biernie z boku i się przyglądać, muszą być w tym procesie szczególnie aktywni. Wszyscy, a przede wszystkim zainteresowani, muszą być dobrze informowani na każdym etapie, aby uniknęli dezorganizacji wynikającej właśnie z dezinformacji. Aby sprawniej zarządzać, angażować ludzi oraz informować o stanie projektu dobrym sposobem jest utworzenie Komitetu Projektowego, który będzie odbywał częste cykliczne spotkania, na których będą podejmowane kluczowe decyzje przez osoby decyzyjne. 

Proces migracji to ogromne wyzwanie dla każdej organizacji, jednakże świadomość wymaganego wysiłku i kosztów pozwali spojrzeć w przyszłość z nadzieją. Każde usprawnienie to praca przyjemniejsza, wygodniejsza, generująca mniej sytuacji stresowych. Przecież wynik zależy od wprowadzonych danych, nieprawdaż? 

Krzysztof Skowerski 
Paweł Szutowicz 
Tomasz Turmowicz 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

 

Watch for free

Enter your contact details to receive a link to the recording:

I voluntarily consent to the processing of my personal data for the purposes of the application process (show more) by Altkom Experts sp. z o.o. and Altkom Software & Consulting sp. z o.o. (51 Chłodna Street, 00-867 Warsaw), in accordance with Regulation 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of individuals with regard to the processing of personal data and on the free movement of such data ("RoDO"). I am aware that providing the above personal data is voluntary, but necessary to handle the request, and that I have the right to access the content of my data and the possibility of correcting it, and that my consent may be revoked at any time. Please contact the Altkom Data Protection Officer: iodo@altkom.pl.

I voluntarily consent to the processing of my personal data for marketing purposes (show more)by Altkom Experts sp. z o.o. and Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warsaw) and receiving commercial information by electronic means to the e-mail address and telephone number provided by me, in accordance with Regulation 2016/679 of the European Parliament and of the Council of 27 April 2016 on the protection of individuals with regard to the processing of personal data and on the free movement of such data ("RODO"), and the Act of 18 July 2002 on the provision of electronic services. I am aware that providing the above personal data is voluntary and that I have the right to access and correct my data and that my consent may be revoked at any time. Please contact the Altkom Data Protection Officer: iodo@altkom.pl.

 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

 

Zarejestruj się na webinar:

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych dla potrzeb procesu realizacji zgłoszenia (pokaż więcej) przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa), zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”). Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne, ale konieczne do obsługi zgłoszenia oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl

Wyrażam dobrowolnie zgodę na przetwarzanie moich danych osobowych w celach marketingowych (pokaż więcej)przez Altkom Experts sp. z o.o. oraz Altkom Software & Consulting sp. z o.o. (ul. Chłodna 51, 00-867 Warszawa)oraz otrzymywanie informacji handlowych drogą elektroniczną na adres e-mail i numer telefonu podany przeze mnie, zgodnie z Rozporządzeniem Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych („RODO”), oraz Ustawy z dnia 18 lipca 2002 r. o świadczeniu usług drogą elektroniczną. Mam świadomość, iż podanie powyższych danych osobowych jest dobrowolne oraz że posiadam prawo dostępu do treści swoich danych i możliwość ich poprawiania a zgoda może być odwołana w każdym czasie. Kontakt do inspektora ochrony danych osobowych w Altkom: iodo@altkom.pl