Régi rendszerek modernizálása
A hazi piacon tranzakciós és POS szolgáltatásaival piacvezető ügyfelünk 2009 óta fejlesztett rendszereinek felülvizsgálatával, modernizációs lehetőségeivel. kapcsolatban kérte a segítségünket.
Kihívás:
Ügyfelünk évente több mint 30 millió nem banki elektronikus tranzakciót kezel. Fizetési szolgáltatási portfóliójában szerepel a fesztiválszervezők (Festipay) számára nyújtott kényelmes és biztonsági fizetési megoldása, plasztikkártya alapú elektronikus ajándékkártya szolgáltatása. A szoftverek rendszerterve valamint üzemeltetési dokumentációja nem volt elérhető illetve számos olyan technológia alkalmazott, amelyek hivatalosan már nem támogatottak. A rendszerek funkcionalitása – a számos ügyfél miatt – kiterjedt illetve számos technológiát alkalmazott.
Megoldás:
Interjúk során felmértük a rendszerek funkcionalitását majd a forráskódok és az adatszerkezet elemzésével elkészítettük a magas szintű architektúra tervet.
Az együttműködés második fázisában az alábbi modernizációs lépéseket valósítottuk meg:
- CI/CD pipeline felépítése
- Meglévő resource adapter WildFly-on való futtatásra való felkészítése
- Saját WildFly fork készítése a JBoss Seam alkalmazások futtatására
ITware feladatai
- Interjúk, követelmények és funkciók felmérése
- Architektúra terv elkészítése
- Modernizációs lehetőségek felmérése
- Saját WildFly verzió készítése
- Alkalmazások modernizálása – új WildFly verzióra
- CI/CD pipeline felépítése, felhasználói és üzemeltetői dokumentációja
Technikai leírás
Az ügyfél tranzakciós rendszere Java nyelven írt Java EE alkalmazások, melyek JBoss alkalmazásszerveren futnak, de emellett számos más technológia is megjelent:
- PostgreSQL adatbázis
- Java EE alkalmazások
- Java EE resource adapterek a külső kapcsolatok fogadásához
- JBoss és WildFly alkalmazásszerverek
- Liquibase az adatbázis struktúrák verziókezeléséhez
- Angular 6 – Frontend technológia az új webes adminisztrációs alkalmazásban
- JBoss Seam – Frontend technológia a régi webes adminisztrációs alkalmazásban
- Angular Material design – Az új adminisztrációs felület dizájnjának alapja
- Python szkriptek a riportok generálásához
- C nyelvű terminálszoftver és terminal backend
- Mifare (NFC) kártyák az egyenlegek tárolásához illetve a felhasználók azonosítására
Jövőbeli fejlesztési lehetőségek, tervek
- Automatizált terminál-tesztelés JMeter alapon
- Konténerizált illetve Kubernetes-szel orchesztrált üzemeltetési környezet kialakítása
Tech Stack: : Java EE, Angular 6, WildFly, JBoss, JBoss Seam, Python, C, NFC (Mifare)