Rural Informatica 2 - case study
Transkrypt
Rural Informatica 2 - case study
CCA Europe.pl THE CREDITO AGRICOLA GROUP CASE STUDY Czas trwania projektu: 2,5 roku CELE PROJEKTU O BANKU: The Credito Agricola Group jest ogólnokrajową instytucją finansową w Portugalii, która zrzesza lokalne banki oraz firmy z wielu innych branż, które świadczą na jej rzecz usługi. Głównymi komórkami, które monitorują współpracę z wszystkimi podmiotami są Caixa Central de Credito Agricola Mutuo oraz Fenacam. Jedną z firm współpracujących jest Rural Informatica – spółka działająca od 1993 roku, dostarczająca usług IT, które koncentrują się na doradztwie, rozwoju, szkoleniach oraz zaopatrzeniu w sprzęt w zakresie wybranych aplikacji. To za jej pośrednictwem specjaliści CCA mieli przyjemność realizować projekt. Głównym celem projektu było podniesienie wersji systemu PROFILE - wersja bazową była 4.42, docelową 6.2. W okresie realizacji projektu bank był instytucją o największej liczbie kastomów systemu na świecie, obsługiwał 9 milionów aktywnych rachunków bankowych i posiadał 2 miliony aktywnych klientów. Projekt składał się z 2 etapów – pierwszym było przeniesienie wszystkich kastomizacji do nowej wersji systemu, z uwzględnieniem przepaści technologicznej pomiędzy wersjami. Kolejnym etapem była migracja danych do często zupełnie zmienionych struktur. Każda z części była związana z dużymi wyzwaniami. REALIZACJA Z uwagi na skalę i zasięg projektu, Bank położył bardzo duży nacisk na jednoczesne testy wszystkich obszarów, co spowodowało, że zespół projektowy zmuszony był do opracowania mechanizmów pozwalających na dystrybucję kolejnych wydań i poprawek do ponad 25 środowisk testowych. Ta potrzeba była inspiracją do stworzenia architektury pozwalającej na dystrybucję każdej zmiany w automatyczny sposób do każdego środowiska w czasie rzeczywistym. To okazało się przełomowym osiągnięciem, pozwalającym na przyspieszenie testów integracyjnych do imponującego poziomu. Testy wydajnościowe oraz funkcjonalne zostały przeprowadzone częściowo za pomocą nowego systemu opracowanego przez zespół CCA w ramach własnej działalności. System PARALLEL pozwala na odtworzenie całego dnia pracy sytemu produkcyjnego na innej maszynie, symulując funkcjonalną pracę pracowników banku automatycznie. Największe wyzwania związane z migracją kodu dotyczyły zmiany podejścia wykorzystywania bazy GT.M. Wersja 4.42 wykorzystywała natywny interfejs bazy danych, opierając komunikację na bezpośrednim dostępie do hierarchicznych struktur danych i języku Mumps, pozostawiając na programistach dbałość o wszelkie aspekty integralności danych pomiędzy strukturami. Wersja 6.2 wprowadziła takie zmiany jak: relacyjny interfejs bazy danych, zautomatyzowane mechanizmy ochrony integralności danych, zmienione podejście do wielowątkowości procesów biznesowych oraz implementację SQL jako języka dostępu do danych. Wszystkie te aspekty spowodowały, że każda kastomizacja, a było ich ponad 7000, musiała zostać dokładnie przenalizowana, a następnie „przetłumaczona” na nowe struktury danych i nowy sposób zapisu, w nowym języku programowania PSL. Migracja danych przy tak dużym wolumenie również miała ograniczenia. Z jednej strony czas przeznaczony na proces migracji musiał być maksymalnie skrócony, ze względu na dostępność systemu dla biznesu. Z drugiej strony, czas potrzebny na przeniesienie tak dużej ilości danych w lokalizację testową w celu wykonania konwersji okazał się nie do zaakceptowania - wykonane w trakcie trwania projektu testy wykazały, że Bank musiałby zostać zamknięty na 3 dni. Precyzyjny plan działania, maksymalna automatyzacja i długie godziny powtarzania całego procesu w trakcie przebiegów testowych, pozwoliły na bezpieczne i przewidywalne uruchomienie konwersji bezpośrednio na danych produkcyjnych, przy minimalnym czasie 24h wyłączenia systemu i bezawaryjnej pracy po włączeniu produkcyjnym na nowej wersji systemu. Projekt realizowany był na ogromną skalę; zespół projektowy liczył 25 osób (nie licząc kolejnych 35 osób z banku) zaangażowanych w najbardziej wymagającym okresie. Cały zespół CCA zaangażowany był w projekt, polska część zespołu odpowiedzialna była przede wszystkim za całość migracji danych, biorąc również czynny udział przy pracach związanych z migracją kodu. KORZYŚCI Przed realizacją projektu bank eksploatował wersję systemu PROFILE przez ponad 8 lat, odcinając swoją instalację od nowych funkcjonalności, tworzonych w tym czasie w kolejnych wersjach systemu. Hierarchiczna struktura bazy danych oraz brak interfejsów do standardów relacyjnych powodował, że Bank ponosił ogromne koszy rozwoju systemu, chcąc nadążyć za potrzebami rynku. Dostęp do funkcjonalności systemu w nowej wersji umożliwił: otwarcie szeregu nowych kierunków rozwoju, pracę z bazą danych PROFILE za pomocą narzędzi przeznaczonych dla relacyjnych baz danych, rozszerzenie wachlarza dostępnych na rynku aplikacji do analizy oraz wytwarzania oprogramowania, co w następstwie znacznie ułatwiło pozyskiwanie nowych członków do wewnętrznego zespołu serwisującego system, oraz pozwoliło na pokrywanie potrzeb biznesu w znacznie szybszym tempie. „Projekt innowacyjny, o ogromnej skali, wymagał przeprowadzenia zmiany bezpośrednio na systemie produkcyjnym Banku, co poza pełnym profesjonalizmem wymagało od nas odwagi i determinacji. Dzięki temu możliwa była skokowa zmiana do najnowszych technologicznie rozwiązań. ” Jacek Nowak , Project manager