Das Formular wurde erfolgreich abgeschickt.
Weitere Informationen finden Sie in Ihrem Briefkasten.
Sprache auswählen
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.
Zu Beginn führten wir ausführliche Interviews mit dem Entwicklungsteam und den Beteiligten des Kunden. Auf diese Weise konnten wir sicherstellen, dass wir das Wesentliche der Bedürfnisse des Kunden erfassen.
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ą.
Aber es ging nicht nur darum, ein statisches Dokument zu erstellen. Unserer Erfahrung nach ist die beste Dokumentation eine, die mit dem System, das sie beschreibt, lebt, atmet und sich weiterentwickelt. Deshalb haben wir einen dynamischen Dokumentationsprozess eingeführt, der kontinuierlich aktualisiert wird, wenn das System wächst und sich verändert. Dieser Ansatz des lebendigen Dokuments stellte sicher, dass die Dokumentation immer auf dem neuesten Stand war.
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ść.
Mit der Erstellung dieser umfassenden Software-Dokumentationsarchitektur haben wir nicht nur die Grundlage für das aktuelle Projekt geschaffen, sondern dem Kunden auch ein Werkzeug an die Hand gegeben, das die künftige Entwicklung, die Einbindung neuer Teammitglieder und die klare Kommunikation zwischen allen Beteiligten erleichtern sollte. Es war der Grundstein, auf dem alle weiteren Entwicklungen aufgebaut wurden.
Als wir das bestehende System des Kunden untersuchten, fanden wir eine veraltete Java-Version mit doppeltem Code und veralteten Praktiken. Die ursprüngliche Architektur, eine monolithische Anwendung, hatte in der Anfangsphase ihren Zweck erfüllt. Als die Plattform jedoch wuchs, zeigte dieser Ansatz seine Grenzen auf. Die Skalierbarkeit wurde mühsam, und die Codebasis wurde zu einem verwirrenden Labyrinth, das immer schwieriger zu navigieren und zu aktualisieren war, ohne neue Fehler einzuführen.
Auf der Grundlage unserer Analyse kamen wir zu dem Schluss, dass der Übergang zu einer Microservices-Architektur notwendig war. Microservices boten eine Lösung für die Probleme des monolithischen Systems in Bezug auf Skalierbarkeit und Agilität. Jeder Microservice in dieser Architektur arbeitet unabhängig, was bedeutet, dass sich Änderungen an einem Service nicht direkt auf andere auswirken. Diese Unabhängigkeit ist entscheidend für ein System wie das unseres Kunden, bei dem häufige Aktualisierungen und Integrationen zum Standard gehören.
Die Umstellung auf eine Microservices-Architektur erfolgte nicht von heute auf morgen. Stattdessen verfolgten wir einen schrittweisen Ansatz, indem wir die monolithische Struktur vorsichtig demontierten und in einer dynamischeren, auf Microservices basierenden Architektur neu zusammensetzten. Mit dieser Methode konnten wir die Systemfunktionalität während der gesamten Umstellung aufrechterhalten und so erhebliche Ausfallzeiten vermeiden, die sich negativ auf den Betrieb unseres Kunden auswirken könnten.
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.
Als wir das System unseres Kunden weiterentwickelten und verbesserten, stellten wir fest, dass ein effizienteres Verfahren zur Bearbeitung neuer Integrationen erforderlich war. Dies führte zur Entwicklung eines speziellen Verarbeitungsmoduls, einer entscheidenden Ergänzung des Systems, die den Integrationsprozess erheblich verbesserte.
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.
Das von uns entwickelte Verarbeitungsmodul wurde als vielseitige Schnittstelle zwischen dem System unseres Kunden und externen APIs konzipiert. Dieses Modul besteht aus vorgefertigten, anpassbaren Vorlagen und Tools, die die Notwendigkeit, für jede Integration neuen Code zu schreiben, erheblich reduzieren. Es abstrahiert Standardfunktionalitäten und -prozesse, die typischerweise bei der Integration mit verschiedenen Reisedienstleistungen, wie z. B. Ticketbuchungssystemen oder Kundendatenbanken, zum Einsatz kommen.
Moduł zawiera kilka kluczowych funkcji:
Danach haben wir das GDS unseres Kunden mit 4 Reisebüros integriert, die REST- und SOAP-Austauschmechanismen verwenden. Diese Integrationen waren entscheidend für die Verbesserung der Prozesse für die Buchung, Änderung und Stornierung von Tickets für Fährdienste. Unsere Herausforderung bestand darin, ein Integrationsframework zu schaffen, das in der Lage ist, eine Vielzahl von Fährbuchungen zu verwalten, einschließlich verschiedener Routen, Sitzplatzkonfigurationen und Zusatzleistungen.
Die Implementierung dieser Integrationen umfasste mehrere entscheidende Schritte. Zunächst sichteten wir die APIs der Agenturen, um ihre Datenstrukturen und funktionalen Anforderungen zu verstehen. Unter Verwendung unseres neu entwickelten Verarbeitungsmoduls erstellten wir für jede Agentur maßgeschneiderte Konnektoren. Diese Konnektoren wurden auf die spezifischen Datenformate und Arbeitsabläufe der einzelnen Agenturen zugeschnitten, um eine reibungslose Datenintegration mit dem GDS unseres Kunden zu gewährleisten.
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.
Backend
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-Ingenieur
1
Kierownik zespołu
1
Kierownik projektu
1
Architekt oprogramowania
1
Analityk biznesowy
1
Kierownik ds. dostaw
Nach der erfolgreichen Implementierung wies die Webanwendung des Kunden bemerkenswerte Leistungsverbesserungen auf. Die Kombination aus Code-Refactoring und der Migration zu einer Microservices-Architektur führte zu einem deutlich reibungsloseren Betrieb. Diese technische Überarbeitung und die nahtlose Integration der neuen Dienste führten zu einem beträchtlichen Anstieg der Verkaufszahlen des Kunden.
Die Auswirkungen dieses Wandels gingen über den finanziellen Bereich hinaus. Sie führte zu einer erheblichen Expansion, nicht nur bei den Einnahmen, sondern auch bei der geografischen Präsenz. Dies bedeutete einen großen Sprung in der Marktabdeckung des Unternehmens und stärkte seine Position als wichtiger Akteur in der Branche. Unsere Partnerschaft mit dem Kunden wird fortgesetzt, und weitere Integrationen sind in Planung.
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 projectm tak szybko, jak to możliwe.
Sie können sich auf den IT-Bereich und auf interessante Studiengänge konzentrieren.
© 2007-2024 Innowise. Alle Rechte vorbehalten.
Datenschutzrichtlinie. Cookies-Richtlinie.
Innowise Sp. z o.o Ul. Rondo Ignacego Daszyńskiego, 2B-22P, 00-843 Warschau, Polen
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.
Wir werden Ihre Anfrage bearbeiten und Sie so schnell wie möglich kontaktieren.
Dziękuję!
Wiadomość została wysłana.
Przetworzymy Twoją prośbę i skontaktujemy się z Tobą tak szybko, jak to możliwe.