IT Wielka Brytania

Optymalizacja i rozwój nowej, skalowalnej wersji aplikacji, zarządzanej wewnętrznie z AWS Cloud

Podsumowanie

Wyzwanie: Zaplanowanie i realizacja modernizacji istniejącego rozwiązania, które nie miało możliwości autoskalowania oraz wymagało większej elastyczności i łączności z zewnętrznymi API.

Podejście: Zespół Future Processing przeprowadził dopasowane do klienta warsztaty projektowe oraz zrealizował etap projektowania produktu, by określić, jakie obszary wymagają ulepszeń i optymalizacji. Nowa wersja aplikacji jest zarządzana wewnętrznie w chmurze AWS.

Rezultat: Usprawnienie procesów i automatyzacji w ramach rozwiązań chmurowych AWS zwiększa skalowalność, dostępność i ogólne bezpieczeństwo systemu. Poprawki te przyspieszają rozwój biznesowy firmy klienta.

Spis treści

O kliencie

Klient jest wiodącym dostawcą rozwiązań VDR – wirtualnych pokojów danych, czyli w pełni chronionych internetowych repozytoriów informacji, służących do przechowywania i udostępniania dokumentacji elektronicznej.

Wyzwanie biznesowe

Klient poszukiwał firmy IT do konsultacji technologicznej, by zaprojektować i opracować zmodernizowaną wersję starej aplikacji w ramach AWS Cloud. Zespół deweloperów w firmie klienta musiał nieustannie utrzymywać oryginalną aplikację w chmurze zarządzanej przez zewnętrznego dostawcę, przez co brakowało mu elastyczności w działaniu i generował podwyższone koszty.

Wyzwanie polegało na zgromadzeniu danych na temat wydajności działania aplikacji, w tym informacji zwrotnych od użytkowników i szczegółów dotychczasowych problemów – oraz wykorzystaniu ich do stworzenia bardziej skalowalnej i skutecznej wersji o lepszej jakości projektowej i niższym koszcie. Nasz zespół skoncentrował się też na usprawnieniu użyteczności, responsywności i integralności interfejsu aplikacji.

Na dobry początek – wnikliwe warsztaty

Pierwszym krokiem w całym procesie była faza Discovery, na którą składają się spersonalizowane warsztaty i tworzenie projektu produktu.

Podczas warsztatów wspólnie z przedstawicielami firmy klienta przez kilka dni pracowaliśmy w modelu hybrydowym – na żywo w siedzibie Future Processing oraz online wraz z pozostałymi osobami zaangażowanymi w projekt.

Nasze złożone podejście do tworzenia rozwiązań technologicznych umożliwiło spełnienie wymagań klienta zaprezentowanych na początku. Nasze zadanie obejmowało analizę biznesową i techniczną, zaprojektowanie nowej architektury systemu oraz zbieranie danych dotyczących bieżących problemów użytkowników korzystających ze starej aplikacji.

Wnioski z etapu Discovery

Warsztaty przyniosły wiele wymiernych korzyści:

  • użyliśmy narzędzia Future Processing Product Context Canvas do zmapowania wszystkich czynników, jakie wpływają na produkt klienta,
  • utworzyliśmy mapę całości procesu w ramach aplikacji VDR,
  • opracowaliśmy protopersony aktualnych użytkowników końcowych, ich celów i problemów – wykorzystaliśmy je do pracy nad nowym rozwiązaniem, dzięki czemu mieliśmy pewność, że spełnimy potrzeby klienta i wykluczymy ryzyko ponownego powstawania tych samych problemów,
  • zdefiniowaliśmy potrzeby biznesowe klienta i potencjalne problemy nowych użytkowników,
  • zaplanowaliśmy cele i priorytety na kolejne miesiące, co dało nam jasny obraz planu pracy nad projektem produktu i dalszego rozwoju rozwiązania.

Po zakończeniu warsztatów mogliśmy płynnie przejść do etapu projektowania produktu – Product Design.

Etap projektowania produktu

Na etapie projektowania produktu specjaliści z Future Processing przygotowali wszystkie kluczowe materiały potrzebne do realizacji. Nasz zespół był w stałym kontakcie z przedstawicielami firmy klienta odpowiedzialnymi za podejmowanie decyzji, z wewnętrznymi użytkownikami końcowymi rozwiązania klienta oraz z zespołem technicznym zajmującym się dotychczasowym produktem. Dzięki ścisłej współpracy udało nam się stworzyć szczegółowy plan rozwoju i wdrożenia produktu.

Na plan złożyły się:

  • projekt koncepcyjny struktury technicznej rozwiązania,
  • backlog dwóch pierwszych sprintów,
  • projekt nowego interfejsu – grafiki przedstawiające najważniejsze strony i wskazówki.

Nasi specjaliści odświeżyli wygląd starej aplikacji, tak by przypominała nową w okresie przejściowym. Dzięki temu użytkownicy końcowi przyzwyczają się do nowego interfejsu i zmian, które nasz klient chce wprowadzić po utworzeniu MVP.

Dalsza współpraca pomiędzy klientem a zespołem projektowym przebiegała w iteracyjnym modelu Continuous Discovery. Na etapie wdrożenia specjaliści z Future Processing w bliskiej współpracy z klientem określili rodzaj i stopień ważności funkcji w aplikacji w kontekście ich wartości biznesowej i celu.

Automatyzacja i optymalizacja dzięki AWS Cloud

Ulepszone rozwiązanie, opracowane zgodnie z dobrymi praktykami tworzenia oprogramowania, umożliwia redukcję kosztów, ponieważ klient zarządza teraz chmurą AWS wewnątrz firmy, bez udziału trzeciej strony.

Nowa wersja aplikacji została zbudowana na bazie mikrousług i działa w systemie Kubernetes (AWS EKS). Pozwala na obsługiwanie kilku przypadków jednocześnie, co zmniejsza koszty i usprawnia przepływ procesów dla użytkowników końcowych.

Rozwiązanie to zapewnia dynamiczną skalowalność w zależności od bieżących potrzeb klienta. System wykorzystuje także AWS S3 – usługę przechowywania danych, której mocne strony to dostępność, bezpieczeństwo i wysoka wydajność.

Wybraliśmy usługi, które są najbardziej dopasowane do rozwiązania wykorzystywanego przez klienta, a jednocześnie najpełniej wykorzystują potencjał AWS.

Nowa wersja aplikacji

Nasi specjaliści w zakresie DevOps i architektury rozwiązania pozostawali w bezpośrednim kontakcie z klientem i wspólnie zaprojektowali oraz wprowadzili dalsze ulepszenia w systemie.

Tym, co odróżnia tę aplikację od konkurencji, jest nowy proces odpowiadania na pytania i sprawdzania dokumentów. Dla klienta to bardzo istotna funkcjonalność, ponieważ pozwala użytkownikom końcowym pracować bez zakłóceń nad współdzielonymi plikami i zachować ich spójność.

Nasze działania zaoszczędziły czas i inne zasoby klienta, jednocześnie minimalizując ryzyko błędów w procesie.

Unowocześniliśmy aplikację także pod kątem front-endu – warstwa ta jest nieustannie ulepszana i umożliwia łatwiejszą aktualizację platformy w przyszłości. Nasi eksperci usprawnili i zautomatyzowali również funkcję zmiany nazwy wielu plików jednocześnie – wcześniej odbywało się to za pomocą eksportowania i importowania plików Excel, a teraz będzie można to robić po prostu wewnątrz samej aplikacji.

Rozwiązaliśmy w ten sposób wiele problemów klienta, które hamowały rozwój jego firmy.

W starej wersji aplikacji klient mógł jedynie skalować w górę serwer, i to do pewnego stopnia, a do tego korzystał z serwera z systemem ręcznego odzyskiwania danych. Ponadto klient borykał się też z problemem indywidualnych licencji, które trzeba było odzyskiwać za każdym razem, gdy serwer przestawał działać. Co więcej – przed migracją klient przechowywał dane w maszynach wirtualnych o ograniczonych możliwościach.

Technologie wykorzystane w projekcie