Formuläret har skickats in framgångsrikt.
Ytterligare information finns i din brevlåda.
Innowise przeprowadziło kompleksową refaktoryzację kodu platformy i znacznie uprościło proces integracji nowych interfejsów API.
Branża
Podróż
Region
UE
Klient od
2023
Nasz klient, znaczący gracz w branży turystycznej, obsługuje globalny system dystrybucji (GDS) do wystawiania biletów promowych i innych usług turystycznych. Ta aplikacja internetowa jest pojedynczym punktem kontaktowym do zarządzania różnymi rezerwacjami promowymi, w tym podróżami na długich i krótkich dystansach, typami wielomiejscowymi, a nawet złożonymi trasami z wieloma przesiadkami.
Szczegółowe informacje o kliencie nie mogą zostać ujawnione zgodnie z warunkami umowy NDA.
Ten klient był ograniczony przez swój obecny rozmiar rynku i chciał się dalej rozwijać. Aby osiągnąć tę ekspansję, zamierzał skonfigurować integracje API z biurami podróży.
Dodatkowo, brak ustrukturyzowanej dokumentacji architektury oprogramowania był istotnym problemem. Luka ta doprowadziła do kilku wyzwań, takich jak wprowadzenie nowo zatrudnionych członków zespołu, utrzymanie wspólnego zrozumienia systemu wśród różnych interesariuszy i płynne wdrażanie nowych funkcji produktu.
W związku z tym klient zwrócił się do nas w sprawie integracji API i stworzenia kompleksowej architektury dokumentacji oprogramowania.
Innowise zapewniło modernizację i optymalizację aplikacji internetowych Integracje API z biurami podróży, aby podnieść jakość usług promowych w całej Europie.
Vi började med att genomföra omfattande intervjuer med kundens utvecklingsteam och intressenter. Detta tillvägagångssätt säkerställde att vi fångade kärnan i vad de behövde.
Dzięki temu bogactwu informacji postanowiliśmy zaprojektować intuicyjną i zrozumiałą strukturę dokumentacji. Dokumentacja obejmowała wszystko, od wysokopoziomowych przeglądów systemu po szczegóły na poziomie kodu. Włączyliśmy diagramy, schematy blokowe i elementy interaktywne, aby uczynić ją informacyjną i wciągającą.
Men det handlade inte bara om att skapa ett statiskt dokument. Enligt vår erfarenhet är den bästa dokumentationen den som lever, andas och utvecklas med det system som den beskriver. Därför implementerade vi en dynamisk dokumentationsprocess som kontinuerligt skulle uppdateras i takt med att systemet växte och förändrades. Detta tillvägagångssätt med levande dokument säkerställde att dokumentationen alltid var uppdaterad.
Ponadto skupiliśmy się na tym, aby dokumentacja była dostępna i zrozumiała dla wszystkich zaangażowanych stron. Oznaczało to unikanie żargonu, używanie jasnego i zwięzłego języka oraz zapewnienie, że interesariusze techniczni i nietechniczni znajdą w niej wartość.
Genom att skapa denna omfattande arkitektur för programvarudokumentation lade vi inte bara grunden för det aktuella projektet, vi försåg även kunden med ett verktyg som skulle underlätta framtida utveckling, introduktion av nya teammedlemmar och tydlig kommunikation mellan alla inblandade parter. Det var den hörnsten som all vidare utveckling byggde på.
När vi dök ner i kundens befintliga system fann vi den föråldrade versionen av Java med koddubbleringar och föråldrade metoder. Den ursprungliga arkitekturen, en monolitisk applikation, hade tjänat sitt syfte i ett tidigt skede. Men i takt med att plattformen växte visade detta tillvägagångssätt sina begränsningar. Skalbarheten blev besvärlig och kodbasen blev en förvirrande labyrint som blev allt svårare att navigera i och uppdatera utan att introducera nya buggar.
Baserat på vår analys kom vi fram till att det var nödvändigt att övergå till en mikrotjänstarkitektur. Mikrotjänster erbjöd en lösning på det monolitiska systemets problem med skalbarhet och smidighet. Varje mikrotjänst i denna arkitektur fungerar självständigt, vilket innebär att ändringar som görs i en tjänst inte direkt påverkar de andra. Denna självständighet är avgörande för ett system som vår kunds, där frekventa uppdateringar och integrationer är standard.
Övergången till en mikrotjänstarkitektur skedde inte över en natt. Istället använde vi oss av en stegvis metod där vi försiktigt monterade ned den monolitiska strukturen och återmonterade den till en mer dynamisk, mikrotjänstbaserad arkitektur. Med den här metoden kunde vi bibehålla systemets funktionalitet under hela övergången och undvika betydande driftstopp som skulle kunna påverka vår kunds verksamhet negativt.
Starannie wyodrębniliśmy każdą usługę, dopracowaliśmy ją i wdrożyliśmy niezależnie. Nasi programiści rozdzielili usługi takie jak rezerwacja biletów i zarządzanie planami podróży na odrębne jednostki. Oznaczało to, że na przykład aktualizacje systemu zarządzania planami podróży mogły być wprowadzane bez ryzyka niezamierzonych konsekwencji w systemie rezerwacji.
Do tej transformacji wykorzystaliśmy Spring Boot i Spring Cloud. Spring Boot ułatwił konfigurację mikrousług, przyspieszając rozwój. Spring Cloud oferował cenne narzędzia dla systemów rozproszonych, takie jak zarządzanie konfiguracją i wykrywanie usług.
Zintegrowaliśmy również Kafkę jako naszego brokera wiadomości. Jego zdolność do obsługi dużych ilości danych i zapewnienia niezawodnej komunikacji między usługami była kluczowa, zwłaszcza biorąc pod uwagę duży przepływ danych w nowej architekturze.
Wreszcie, wdrożyliśmy nowe mikrousługi na najnowszej wersji Javy. Ta aktualizacja przyczyniła się do lepszej wydajności i zwiększonego bezpieczeństwa, tworząc silny i nowoczesny fundament dla całej architektury.
När vi förfinade och förbättrade vår kunds system identifierade vi behovet av ett mer effektivt sätt att hantera nya integrationer. Detta ledde till utvecklingen av en specialiserad bearbetningsmodul, ett viktigt tillägg till systemet som medförde betydande förbättringar i integrationsprocessen.
Jednym z głównych wyzwań, przed którymi stanęliśmy, był powtarzalny charakter procesu pisania kodu dla każdej nowej integracji. Przed opracowaniem tego modułu przetwarzania, każda nowa integracja z innym biuro podróży lub usługa wymagało znacznej ilości kodu napisanego od podstaw.
Den bearbetningsmodul vi utvecklade var utformad för att fungera som ett mångsidigt gränssnitt mellan vår kunds system och externa API:er. Modulen består av förbyggda, anpassningsbara mallar och verktyg som avsevärt minskar behovet av att skriva ny kod för varje integration. Den fungerar genom att abstrahera standardfunktioner och processer som vanligtvis ingår i integration med olika resetjänster, till exempel biljettbokningssystem eller kunddatabaser.
Moduł zawiera kilka kluczowych funkcji:
Därefter integrerade vi vår kunds GDS med 4 resebyråer som använde REST- och SOAP-utbytesmekanismer. Dessa integrationer var avgörande för att förbättra biljettboknings-, ändrings- och avbokningsprocesserna för färjetjänster. Vår utmaning var att skapa ett integrationsramverk som kunde hantera ett varierat utbud av färjebokningar, inklusive olika rutter, sittplatskonfigurationer och tilläggstjänster.
Implementeringen av dessa integrationer omfattade flera viktiga steg. Inledningsvis gick vi igenom byråernas API:er för att förstå deras datastrukturer och funktionella krav. Med hjälp av vår nyutvecklade bearbetningsmodul skapade vi anpassade anslutningar för varje byrå. Dessa kopplingar var skräddarsydda för att hantera varje byrås specifika dataformat och operativa arbetsflöden, vilket säkerställde en smidig dataintegration med vår kunds GDS.
Proces ten obejmował wdrożenie zaawansowanych narzędzi do mapowania i transformacji danych w ramach naszego modułu przetwarzania. Technologia ta odegrała kluczową rolę w zapewnieniu integralności i spójności danych. Nasz zespół przeprowadził szeroko zakrojone testy, aby zweryfikować skuteczność i niezawodność tych integracji. Symulowaliśmy różne scenariusze rezerwacji, aby przetestować integracje w różnych warunkach. Po udanych testach wdrożyliśmy integracje w środowisku rzeczywistym, ustanawiając mechanizmy ciągłego monitorowania w celu nadzorowania ich wydajności i szybkiego rozwiązywania wszelkich problemów.
Back-end
Java 17, Spring, Spring Boot, Spring Cloud, Hibernate
API
REST, SOAP
Przechowywanie danych
PostgreSQL, Memcached
Brokerzy wiadomości
Kafka
DevOps
Rurociągi CI/CD GitLab
Usługi
Gitlab, Jira, Confluence
Stworzyliśmy dokument Vision & Scope, aby dostosować cele projektu do oczekiwań klienta w początkowej fazie. Dokument ten ustanowił fundament projektu poprzez zrozumienie celów klienta i wyzwań systemowych.
Następnie opracowaliśmy dynamiczną, łatwą do zrozumienia dokumentację, zaprojektowaną tak, aby ewoluowała w synchronizacji z projektem, optymalizując w ten sposób komunikację w zespole i usprawniając proces wdrażania.
Tutaj skupiliśmy się na wdrożeniu architektury mikrousług i stworzeniu modułu przetwarzania. Ta faza pokazała naszą wiedzę techniczną, czego rezultatem była dopracowana architektura systemu i w pełni funkcjonalny moduł przetwarzania.
Wykorzystując moduł przetwarzania, płynnie zintegrowaliśmy interfejsy API biur podróży. Rygorystyczne testy zapewniły niezawodność systemu i zwiększoną funkcjonalność.
Microsoft Teams był naszym głównym narzędziem komunikacyjnym, usprawniającym dyskusje, aktualizującym udziały i utrzymującym centralne repozytorium informacji. Korzystaliśmy z Jira, aby utrzymać organizację i efektywne zarządzanie przepływem pracy w celu śledzenia zadań.
4
Inżynierowie zaplecza
1
QA-ingenjör
1
Kierownik zespołu
1
Kierownik projektu
1
Architekt oprogramowania
1
Analityk biznesowy
1
Kierownik ds. dostaw
Efter den framgångsrika implementeringen uppvisade kundens webbapplikation anmärkningsvärda prestandaförbättringar. Kombinationen av refaktorisering av kod och migrering till en mikrotjänstarkitektur resulterade i en betydligt smidigare drift. Den tekniska översynen, i kombination med den sömlösa integrationen av nya tjänster, ledde till en kraftig ökning av kundens försäljning.
Effekterna av denna omvandling sträckte sig bortom det finansiella området. Den ledde till en betydande expansion, inte bara vad gäller intäkter utan även geografisk närvaro. Detta innebar ett stort steg framåt i företagets marknadstäckning och stärkte dess ställning som en framstående aktör i branschen. Vårt partnerskap med kunden fortsätter, med fler integrationer på horisonten.
30%
wzrost sprzedaży
2x
zwiększenie szybkości integracji API
Zadzwoń lub wypełnij poniższy formularz, a my skontaktujemy się z Tobą po przetworzeniu Twojego zgłoszenia.
Po otrzymaniu i przetworzeniu Twojego zgłoszenia skontaktujemy się z Tobą wkrótce, aby wyszczególnić potrzeby projektu i podpisać umowę o zachowaniu poufności, aby zapewnić poufność informacji.
Po przeanalizowaniu wymagań, nasi analitycy i programiści opracowują projekt z zakresem prac, wielkością zespołu, czasem i kosztami szacunki.
Umówimy się z Tobą na spotkanie, aby omówić ofertę i dojść do porozumienia porozumienia.
Podpisujemy umowę i rozpoczynamy pracę nad projektem tak szybko, jak to możliwe.
Dowiedz się jako pierwszy o innowacjach IT i interesujących studiach przypadków.
© 2007-2024 Innowise. Wszelkie prawa zastrzeżone.
Polityka prywatności. Polityka dotycząca plików cookie.
Innowise Sp. z o.o Ul. Rondo Ignacego Daszyńskiego, 2B-22P, 00-843 Warszawa, Polska
Rejestrując się, wyrażasz zgodę na naszą Politykę Prywatności, w tym korzystanie z plików cookie i przekazywanie Twoich danych osobowych.
Dziękuję!
Wiadomość została wysłana.
Vi behandlar din begäran och kontaktar dig så snart som möjligt.
Dziękuję!
Wiadomość została wysłana.
Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.