Klant
Digitaal SaaS-platform voor de luchtvrachtindustrie
Achtergrond en uitdagingen
Algemeen
- Snelle digitalisering in de wereldeconomie en in het bijzonder in de vrachtvervoerindustrie
- Vervoerders en vrachtbedrijven die nieuwe kansen en technologieën kunnen gebruiken zullen de concurrenten overtreffen.
- Cargobooking365 is opgericht als antwoord op de huidige uitdagingen in de industrie en heeft tot doel een aandeel in een nieuwe niche van e-booking van luchtvracht te veroveren.
Uitdagingen in de luchtvrachtindustrie:
- Het boeken van vrachtvervoer is uitgebreider dan het boeken van personenvervoer
- De prijs hangt af van vele factoren, zoals de route, de luchthaventerminal (op beide punten), het type vracht, de transport- en opslagkenmerken ervan, de afmetingen van het vliegtuig en de compartimenten, enz.
- Gebrek aan moderne en algemeen aanvaarde industriestandaarden met betrekking tot online processen: communicatie en gegevensuitwisseling zijn gebaseerd op de oude CargoImp-standaard, terwijl de nieuwere CargoXML nog steeds weinig wordt gebruikt
- Daarom maken klanten en luchtvaartmaatschappijen meestal gebruik van handmatige berekeningen, wat tot aanzienlijke vertragingen en kosten leidt.
Doelen
- Zorgen voor de leidende positie en het marktaandeel van het bedrijf in e-bookingoplossingen voor de luchtvrachtindustrie
- Digitaliseren van interacties met bestaande klanten om boekings- en communicatieprocessen te vereenvoudigen
- Gebruik van een open SaaS-platform om nieuwe partners aan te trekken – zowel eindgebruikers van luchtvrachtdiensten als luchtvaartmaatschappijen en hun agenten die transportdiensten leveren
Taken
- Een platform ontwikkelen dat klanten, agenten en luchtvaartmaatschappijen samenbrengt bij het zoeken en selecteren van vluchten voor luchtvrachtvervoer
- Ontwikkelen van een systeem voor het berekenen van de transportkosten:
- Het algoritme moet met veel parameters rekening houden: route, type en parameters van vracht, voorwaarden voor het ontvangen en opslaan van vracht in de verzend- en ontvangstterminals, parameters en compartimenten van het vliegtuig dat de vlucht uitvoert
- Het prijsberekeningssysteem moet worden geïmplementeerd als een afzonderlijke microservice die het berekeningsresultaat naar verschillende gebruikers van deze gegevens kan terugsturen
- Implementeren van een module voor het opslaan en selecteren van dienstregelingen van uitgevoerde vluchten
- Automatiseren van bedrijfsprocessen voor het selecteren en boeken van vluchten
- Minimaliseren van telefoon- en e-mailcommunicatie tussen de partijen (klant, agent en vervoerder), waardoor het proces van het selecteren en boeken van vluchten wordt versneld
- Implementeren van de Air Waybills-herkenningsmodule om de verwerkings- en genereringstijd van belangrijke vluchtdocumenten te verminderen
- Integreren van het systeem met het lokale ERP-systeem (Dynamics CRM 365) om klantgegevens, zoekopdrachten en lopende boekingsaanvragen te synchroniseren
Architectuur en technologie
SaaS-platformarchitectuur
Het belangrijkste kenmerk van het systeem is dat het een SaaS-model gebruikt. Dit bepaalt de keuze van technologieën en de stack oplossing.
De architectuur is gebaseerd op platformonafhankelijke en open-source technologieën. Dit maakt het relatief eenvoudig om systemen geografisch te schalen en de prestaties te verbeteren. Het systeem kan in de meest geschikte omgeving worden gelanceerd, afhankelijk van de zakelijke doelen – of het nu cloudoplossingen van Microsoft Azure/Amazon AWS of privé- of virtuele servers zijn.
Functioneel is de oplossing in verschillende modules opgedeeld:
- De basis van het systeem is het zoeken en berekenen van tarieven,
- Schemamodule – vluchtschema’s laden en specifieke vluchten selecteren,
- Integratiegateway – biedt de uitwisseling van belangrijke gegevens met systemen van derden:
- Een ontwikkelde dienst voor herkenning van luchtvrachtbrieven,
- Dynamics CRM 365 systeem,
- Referentie- en informatiediensten van luchtvaartgegevens op internet.
Back-end:
De backend bestaat uit een PostgreSQL-database en een set API-services die de applicatielogica implementeren:
- API-service voor de front-end,
- Calculator-API-Service,
- API-service voor OCR-herkenning van luchtvrachtbrieven.
Alle services worden gehost in de Azure-cloud als AppService. Voor de ontwikkeling is gebruik gemaakt van een modulair open source software ontwikkelplatform .Net Core. De ORM-tool is EF Core die een hoog abstractieniveau bij het werken met databases biedt.
Bij de ontwikkeling wordt het CQRS-ontwerppatroon gebruikt dat het mogelijk maakt om met categorieën zoals opdrachten en vragen te werken.
De belangrijkste bron van systeemgegevens is cloud Dynamics CRM 365, informatie waaruit volgens een schema wordt geladen en in PostgreSQL wordt opgeslagen. Evenzo wordt met behulp van externe API-oproepen aanvullende referentie- en vluchtinformatie geladen vanuit systemen van derden (IATA-codes, systeemtracking, schema’s, …).
Het systeem is ontworpen voor gebruik door meerdere klanten tegelijk dankzij de multi-tenant architectuur. Elke tenant kan zijn eigen instellingen en zijn eigen gebruikersinterface hebben.
De Calculator-API-service is niet alleen de “hersenen” voor de Cargobooking365-portal, maar ook voor de functionele modules die aan de kant van Dynamics CRM 365 zijn gelanceerd. De calculatorservice is een soort kern van de twee systemen en is verantwoordelijk voor de selectie van transportroutes op basis van de invoerverzoekparameters. De service filtert niet alleen gegevens lineair, maar voert ook complexe manipulaties uit om groepsroutes in te zetten, vrachtafmetingen op overeenstemming met de afmetingen van vliegtuigen te controleren, tarieven en luchtbelastingen te selecteren en nog veel meer.
Stack technologieën en diensten
- .Net Core
- EF Core
- CQRS
- PostgreSQL
- Cognitieve services Microsoft Azure (herkenning van objecttekens)
- API-services voor het SaaS-platform
Front-end:
De frontend is in het React framework met behulp van typescript geïmplementeerd. React maakt het mogelijk om ingekapselde componenten met hun eigen status te maken en deze vervolgens tot complexe gebruikersinterfaces te combineren. TypeScript is een statische typetool, waarmee de meeste fouten kunnen worden gevonden voordat de code wordt uitgevoerd.
Voor een eenvoudigere en meer begrijpelijke integratie tussen de cliënt en de server wordt de server-side type generatie gebruikt. De codegenerator kan typoscripten op basis van .net-klassen genereren.
Enkele front-end tools:
- Redux
- Redux Toolkit
- Formik
- Yup
- Axios
- react-i18next
- react-bootstrap
De frontend heeft ook een module, waarmee ondersteuning voor multi-tenant kan worden geïmplementeerd. Door tijdens de montage de ID van een bepaalde tenant op te geven wordt vervolgens de klantbundels met stijlen, afbeeldingen en teksten ontvangen die alleen aan deze klant inherent zijn.
Stack technologieën en services
- React.js
- react-bootstrap
- Formik
- NGINX
Het project is in het voorjaar van 2020 gestart.
De openbare website van de dienst is https://cargobooking365.com
De eerste tenant-operator die op het SaaS-model werkt is al op het platform geregistreerd. Het is FFCargo Services dat diensten levert voor het selecteren en verrichten van luchtvrachtvervoer in Oost-Europa en het Midden-Oosten.
De platformoperator onderhandelt momenteel met enkele vrachtluchtvaartmaatschappijen over een mogelijkheid om het platform aan te sluiten en daarop te gaan werken.