Egeria 8 – nowa technologia dla systemu klasy ERP

Podczas wytwarzania nowoczesnej i rozbudowanej aplikacji jaką jest system klasy ERP ( ang. Enterprise Resources Planning) - Egeria 8, bardzo ważnym elementem jest zdefiniowanie strategii, w oparciu o którą prowadzone będą prace. Ustalenie właściwej architektury systemu i założeń dla jej składowych jest kluczowe, ponieważ może zminimalizować czas jego wytworzenia, przy jednoczesnej maksymalizacji jakości.

Źródło zdjęć: © materiały partnera

Architektura systemu

 Do implementacji aplikacji Egeria 8 wykorzystywana jest architektura mikrousług (ang. micro services), która pozwala na budowanie systemu jako zbioru przetestowanych, luźno powiązanych usług (mikroserwisów). Takie rozwiązanie umożliwia szybkie i niezawodne dostarczanie dużych i złożonych aplikacji, a także ich stosunkowo proste utrzymanie.Technologia mikroserwisów pozwala również pracować nad aplikacją kilku zespołom równocześnie. Każdy z nich może specjalizować się w odrębnej tematyce, dzięki czemu twórcy uzupełniają się nawzajem doświadczeniem, bez konieczności posiadania wiedzy na temat każdej dziedziny.

Podczas realizacji projektu wykorzystano kilka innowacyjnych podejść programistycznych. Każde z nich wynikło z wymagań stawianych przed budowanym systemem. 

Domain-Driven Design

 Domain-Driven Design to podejście do tworzenia oprogramowania, które kładzie nacisk na zrozumieniu domeny problemowej klientów. Ze względu na duże doświadczenie analityków Comarch w dziedzinie systemów klasy ERP, wyodrębniono adekwatne domeny – obszary, w których aplikacja ma być zastosowana. Następnie w obrębie danego obszaru tworzone są odpowiedzialne za niego mikrousługi.

Command Query Responsibility Segregation

Dodatkowo w Egerii stosowany jest wzorzec CQRS ( ang. Command Query Responsibility Segregation), który wprowadza rozdzielenie odpowiedzialności: rozkazów (ang. command) – czyli operacji, które modyfikują dane oraz zapytań (ang. query) –czyli operacji, które odczytują dane.

Wykorzystanie tego wzorca umożliwia niezależną optymalizację odczytu i zapisu, również dla zestawów danych, które wymagają obsługi wielu równoległych operacji. Ponadto w scenariuszach posiadających złożoną logikę biznesową, CQRS może uprościć zrozumienie domeny, dzieląc problem na części - modyfikacje i zapytania.

Convention Over Configuration

 Kolejnym ważnym aspektem jest zwrócenie uwagi na dbałość zarówno o kod, jak i o konfigurację. Przy wprowadzaniu kolejnych nowych narzędzi stosowane są odpowiednie procedury sprawdzające ich przydatność i poprawność działania. Podczas weryfikacji kodu koncentrujemy uwagę na jakość wytworzonego kodu. Innymi słowy, stosowana jest praktyka COC ( ang. Convention Over Configuration). Jest ona często niedoceniana, jednak sukces frameworków, czy narzędzi o nią opartych np. Spring Boot, jest niezaprzeczalny

API-First Approach

Zastosowanie API-First Approach oznacza, że sam interfejs API ma fundamentalne znaczenie. Jeszcze przed rzeczywistą implementacją, wykorzystując język opisu API (ang. API description language), ustalane są kontrakty oraz sposób zachowania interfejsu. Dzięki temu projekt API jest lepiej przemyślany i zoptymalizowany, a czas jego wytworzenia niewiele dłuższy. Dodatkową zaletą jest fakt, iż zespoły backendowe i frontendowe mogą pracować równolegle, opierając się o stosowne kontrakty.

API Gateway oraz Backends For Frontends

W trakcie implementacji powstała konieczność wykorzystania kolejnego wzorca, jakim jest Brama Interfejsu (ang. API Gateway Pattern). Z naszego doświadczenia wynika, że pomimo właściwego podziału systemu na domeny, w niektórych sytuacjach pojawiają się komplikacje w zakresie mikroserwisów. Dzieje się tak wtedy, gdy żądanie wymaga informacji ze zbyt wielu mikroserwisów. W tym wypadku, aplikacja klienta musi wysyłać kilka żądań, a następnie integrować otrzymane informację ze sobą. Brama Interfejsu ogranicza liczbę operacji między klientami a usługami, gdyż odbiera ona żądania klienta i rozsyła do różnych serwisów na zapleczu, a następnie odsyła zagregowane wyniki. Dodatkowym atutem jest również możliwość odciążenia mikroserwisów od tzw. Cross-cutting concerns, którego przykładem może być uwierzytelnianie.

Kolejnym wyzwaniem jest rodzaj aplikacji klientów. Dla przykładu, użytkownik korzystający z witryny internetowej, nie będzie potrzebował tak kompleksowych informacji jak np. w przypadku zintegrowanego z Egerią 8 systemu. Z tego względu zdecydowano się na wykorzystanie dodatkowego wzorca Backends For Frontends, który jest wariacją wzorca Bramy Interfejsu. Działa on na bardzo podobnej zasadzie, więc dla każdego rodzaju klienta tworzona jest wspomniana brama. Takie rozwiązanie znacząco ogranicza czas oczekiwania podczas żądań oraz daje możliwość dodatkowej implementacji.

Jesteś ciekawy nowej odsłony ERP Egeria 8?

Wejdź na stronę: https://bit.ly/3o6jyVr, aby zaktualizować swoją wersję systemu lub zdecydować się na wdrożenie Egerii 8 w swojej organizacji.

Artykuł sponsorowany

Wybrane dla Ciebie

Testy polskiego GNOMA. Zagraniczne media zachwycone
Testy polskiego GNOMA. Zagraniczne media zachwycone
USA kupiły pociski za 639 mln. dol. Nie przeszły one testów
USA kupiły pociski za 639 mln. dol. Nie przeszły one testów
Zaskakujące rdzewienie Księżyca. Naukowcy wskazują winnego
Zaskakujące rdzewienie Księżyca. Naukowcy wskazują winnego
Prawdziwa prowizorka. Rosjanie wysyłają na front cywilne samochody
Prawdziwa prowizorka. Rosjanie wysyłają na front cywilne samochody
Amerykańska firma pomoże Ukrainie. Pojazdy o wartości 163 mln. dol.
Amerykańska firma pomoże Ukrainie. Pojazdy o wartości 163 mln. dol.
Umowa na 25 mld. dol. Rosja pomoże Iranowi budować elektrownię atomową
Umowa na 25 mld. dol. Rosja pomoże Iranowi budować elektrownię atomową
Mocarstwo testuje pocisk rakietowy. Wystrzelili go z pociągu
Mocarstwo testuje pocisk rakietowy. Wystrzelili go z pociągu
Pokazali na nagraniu. Ukraińskie drony morskie z nową technologią
Pokazali na nagraniu. Ukraińskie drony morskie z nową technologią
Indie będą produkować rosyjskie karabiny. Zysk i tak trafi do Putina
Indie będą produkować rosyjskie karabiny. Zysk i tak trafi do Putina
Polska zainteresowana ukraińskim sprzętem. Pokazano go podczas ćwiczeń
Polska zainteresowana ukraińskim sprzętem. Pokazano go podczas ćwiczeń
To arcydzieło. Okazuje się, że może pomóc z nauką fizyki kwantowej
To arcydzieło. Okazuje się, że może pomóc z nauką fizyki kwantowej
Kryzys amunicyjny. Rosja odczuwa braki pocisków do tego systemu
Kryzys amunicyjny. Rosja odczuwa braki pocisków do tego systemu