Raport Specjalny | IT@BANK 2024 – Tameshi | Adopcja rozwiązań chmurowych a skrócenie time to market
To zestaw usług IT, gdzie dostawca (jak np. AWS), umożliwia klientom używanie mocy obliczeniowych (wirtualnych serwerów, a także bardziej zaawansowanych rozwiązań), baz danych, systemów przetwarzania i przechowywania danych. Wszystko to opiera się w głównej mierze na modelu płatności znanym jako pay-as-you-go.
W tym artykule zajmiemy się wpływem chmury na metrykę time to market w kontekście chmury publicznej. Jest to zestaw narzędzi i usług oferowanych klientom na zasadzie dostępu do części infrastruktury dostawcy. Udostępnia on swoje usługi publicznie, zapewniając wysoki poziom bezpieczeństwa w niektórych aspektach, natomiast odpowiednie zabezpieczenie aplikacji leży po stronie klienta. Jest to tzw. Shared Responsibility Model (model współdzielonej odpowiedzialności), gdzie dostawca jasno określa obszary swojej kontroli i odpowiedzialności.
Wprowadzanie nowego produktu na rynek
Obecnie wyraźnie widoczna jest tendencja do przyspieszania wprowadzania produktów (czy zmian w produktach) na rynek. W przypadku IT wynika to z kilku czynników. Dzięki metodologii Agile zaczęliśmy pracować iteracyjnie. Wraz z adopcją kultury DevOps zdecydowanie przyspieszyliśmy dostarczanie oprogramowania od kodu do działającego produktu dostępnego dla klientów. Tymczasem tradycyjna infrastruktura IT nie zawsze nadąża za tym nowym trybem pracy.
Wdrożenie nowego produktu zazwyczaj wiąże się z koniecznością przygotowania nowej infrastruktury. Konieczny jest zakup serwerów dla aplikacji, baz danych, często nowego storage, a także zmiany w infrastrukturze sieciowej. W najgorszym przypadku serwerownia, którą dysponujemy, nie ma już miejsca na nowe serwery. Rozwiązanie wszystkich tych elementów zajmuje określony czas. Sam zakup, dostarczenie, montaż i skonfigurowanie serwerów zajmie tygodnie, jeśli nie miesiące.
Rozwiązania chmurowe cechują się wspomnianym modelem pay-as-you-go. Możliwość dostosowania zasobów do aktualnego, czy oczekiwanego w najbliższym czasie użycia sprawia, że dostawcy chmury oferują zasoby na żądanie. Oznacza to, że organizacja, wprowadzając nowe rozwiązanie na rynek, nie musi wykonywać obarczonych ryzykiem zamówień sprzętu z wyprzedzeniem. Zamówienie infrastruktury może odbyć się wręcz w czasie wdrożenia aplikacji.
Time to market i Infrastructure as Code
Infrastruktura jako Kod (IaC) podlega tym samym pryncypiom jak każdy kod aplikacji. Przechowujemy go w systemach kontroli wersji i pracujemy nad nim według tych samych metodologii jak dla kodu jakiegokolwiek języka programowania. IaC opisuje oczekiwany stan infrastruktury. Jak skonfigurowana powinna być sieć. Jakie serwery mają być uruchomione, ich ilość, typ, system operacyjny. To samo dotyczy baz danych, systemów kolejkowych czy monitoringu.
Połączenie nowoczesnych metod dostarczania, czyli IaC i CI/CD (ciągłe dostarczanie kodu) wykorzystuje jedną z największych zalet chmur publicznych – dostępność zasobów. Dostawcy chmur zapewniają pewną ilość zasobów (ta ilość jest zależna od przeprowadzanych analiz ich wykorzystania), w związku z tym mamy praktycznie 100% pewności, że w przypadku, gdy żądamy od dostawcy np. 50 serwerów o określonych parametrach, to otrzymamy je natychmiast.
Skalowanie produktu
Załóżmy, że jako instytucja bankowa chcemy wprowadzić na rynek promocję na jeden z naszych produktów. Zakładamy, że zainteresowanie klientów produktem zwiększy się o 75%, co wiąże się ze zwiększeniem obciążenia infrastruktury IT.
I tutaj ponownie sposób działania chmury publicznej sprawia, że time to market dla działu IT jest zminimalizowany do czasu niezbędnego na wykonanie działań związanych z przygotowaniem nowych serwerów.
Rozwiązania chmurowe cechują się wspomnianym modelem pay-as-you-go. Możliwość dostosowania zasobów do aktualnego, czy oczekiwanego w najbliższym czasie użycia sprawia, że dostawcy chmury oferują zasoby na żądanie. Oznacza to, że organizacja, wprowadzając nowe rozwiązanie na rynek, nie musi wykonywać obarczonych ryzykiem zamówień sprzętu z wyprzedzeniem. Zamówienie infrastruktury może odbyć się wręcz w czasie wdrożenia aplikacji.
Powyższe dwa przykłady mają olbrzymie znaczenie, szczególnie dla banków. Wiele aplikacji bankowych wykorzystuje już nowoczesne architektury, jednakże jest duża część aplikacji i systemów, które nie zostały przeniesione lub wręcz wymagają fizycznych serwerów bądź wirtualizacji.
Przewaga chmury jest tutaj bardzo zauważalna. Przygotowanie serwerów w przypadku własnej serwerowni wymaga czasu i planowania z odpowiednim wyprzedzeniem. Zakup nowej przestrzeni dyskowej, maszyn etc. wymaga czasu. Natomiast zarządzanie nowymi zasobami odbywa się bądź za pomocą aplikacji zarządzającej chmurą, bądź wspomnianego wcześniej podejścia z Infrastructure as a Code. Innymi słowy, time to market dla zasobów infrastruktury zmniejsza się praktycznie do zera.
Prototypowanie
W sytuacji kiedy chcemy przetestować pewne koncepcje, czy to nowej aplikacji, funkcjonalności, czy też oferty dla klientów, z założenia nie planujemy inwestycji w infrastrukturę, gdyż produkt który testujemy nie musi być przyjęty na rynku. Mogą to być równie dobrze testy wewnętrzne, sprawdzenie pewnych założeń etc.
Chmura jest lepiej przystosowana do dzisiejszych realiów pracy nad oprogramowaniem. Dzięki możliwości błyskawicznego zamówienia, wykorzystania i usunięcia zasobów, prace nad rozwiązaniami mogą być w całości delegowane do pojedynczych zespołów. Niepotrzebne jest zaangażowanie wielu różnych departamentów, szczególnie tych zakupowych.
Współczesne technologie, takie jak Serverless, jeszcze bardziej ułatwiają ten proces. Serverless oferuje organizacji możliwość zminimalizowania prac potrzebnych na wdrożenie aplikacji. Pozwala skupić się tylko i wyłącznie na kodzie aplikacji, kompletnie pomijając zagadnienia infrastrukturalne.
Dzięki temu sposobowi zespoły deweloperskie mogą błyskawicznie wdrożyć kod i udostępnić do testów, a zespoły biznesowe (i potencjalnie klienci) mogą przeprowadzić testy, czy zacząć używać aplikacji niemal natychmiast. Jeśli potrzebne są zmiany – wprowadzane są z pominięciem całego długiego procesu, niezbędnego w sytuacji, gdy musimy zarządzać serwerami (czy to fizycznymi, czy też wirtualnymi).
Prototypowanie z wykorzystaniem Serverless przyspiesza pracę poprzez usunięcie warstwy infrastruktury i wydatnie zmniejsza koszty. A najważniejszym benefitem tutaj jest czas wprowadzania zmian od idei do działającej funkcjonalności udostępnionej klientom. Nierzadkie są przypadki (nie w branży finansowej, oczywiście), gdzie od pomysłu do pierwszego dochodu z aplikacji mija mniej niż dwa tygodnie, właśnie dzięki zastosowaniu rozwiązań typu Serverless.
Wysoka dostępność w kontekście metryki time to market
Zapewnienie odpowiedniego poziomu dostępności, niezawodności i czasu przywrócenia aplikacji po awarii jest niezwykle ważnym obszarem. Równocześnie organizacje, takie jak banki, są poddane różnorakim regulacjom, które wręcz takie działania wymuszają.
W przypadku usług chmurowych różnego rodzaju replikacje danych i mocy obliczeniowych są dostarczane przez dostawcę, wystarczy je tylko uruchomić i odpowiednio skonfigurować, co ponownie możemy wykonać przy użyciu infrastruktury jako kodu.
Cyberbezpieczeństwo a time to market
Obszary takie jak bankowość podlegają głębokim regulacjom związanym z cyberbezpieczeństwem. Spełnienie standardów, takich jak ISO, SOC czy HIPAA wymaga wysiłku technicznego, znacznych inwestycji finansowych i wiedzy.
W przypadku chmur obliczeniowych, duża część tego wysiłku przechodzi na stronę dostawcy. Co więcej, dostawcy tacy jak AWS oddają do dyspozycji klientów zarządzalne narzędzia (o czym dokładniej powiemy później) ułatwiające odpowiednią konfigurację, a także analizę zagrożeń i poprawek do wprowadzenia.
Takie usługi ze strony dostawców chmurowych pozwalają skupić się w większym stopniu nad biznesowymi aspektami rozwiązania i wprowadzenie go na rynek szybciej.
Zarządzalne serwisy zajmujące się procesem szyfrowania, przechowywaniem i generowaniem kluczy, pomagają skupić się tylko na zagadnieniach biznesowych, znacząco przyspieszając wdrożenie produktu na rynek.
Zarządzalne serwisy
Na koniec rozpatrzmy taki przypadek (i będzie to też realna sytuacja, której każdy z nas niejednokrotnie był świadkiem). Chcemy uruchomić nowy serwis, stosunkowo mały, aczkolwiek potrzebujący bazy danych. W standardowym modelu potrzebujemy zasoby na tę bazę danych w postaci serwera, a także kolejnego, jako że jesteśmy zobligowani replikować bazę. Stworzenie wielu zasobów, połączeń, konfiguracji i zabezpieczeń wymaga odpowiednich ludzi, zasobów, miejsca i nade wszystko – czasu.
Wdrożenie takiego rozwiązania w chmurze jest wspomagane przez zarządzalne serwisy. Jeśli używamy takiego serwisu, wystarczy, że określimy „Potrzebujemy bazy o przepustowości x i pojemności y”. Resztą zajmuje się dostawca. My dostajemy przygotowaną, pustą (oczywiście!) bazę danych, skonfigurowaną do naszych potrzeb.
Backupy naszych zasobów również mogą być obsługiwane przez zarządzalne serwisy, które oferują różne poziomy retencji danych i punktów odtworzenia.
A kiedy nam się już wydaje, że wszystko jest zaplanowane i skonfigurowane, okazuje się, że jednak zaplanowane zasoby są niewystarczające. W przypadku chmury to właściwie tylko czas potrzebny na powiększenie zasobów, nic więcej. W przypadku własnej serwerowni to zadanie może być znacznie trudniejsze.
Podsumowanie
Serwisy chmurowe znacząco przyspieszają dostarczenie produktu od momentu przygotowanie kodu do jego biznesowego użycia. Co więcej, pozwalają na przyspieszenie całego cyklu – od idei do komercjalizacji. Poprzez różny poziom oferowanych serwisów (wirtualne maszyny, zarządzalne serwisy etc.) klient ma pełną dowolność w kreowaniu swojej infrastruktury, ale za każdym razem jednym z pozytywnych efektów decyzji o migracji do chmury będzie skrócenie time to market.
O Tameshi
Tameshi specjalizuje się w migracjach do chmury dla instytucji finansowych, a także innych sektorów wysoko regulowanych. Wśród klientów firmy znajdują się m.in. liderzy bankowości w Polsce, Ukrainie i krajach bałtyckich. Tameshi pomaga klientom w zarządzaniu zbiorami danych o wielkości setek terabajtów, a ze wspieranych przez jej specjalistów systemów bankowości korzystają miliony konsumentów. Tameshi od wielu lat współpracuje z AWS i posiada status AWS Advanced Partner. W 2022 r. firma została wyróżniona tytułem Partnera Roku AWS w Europie Środkowo-Wschodniej.