Teszteset megjelenítő alkalmazás
Japán partnerünk az Asial Monaca rendszeréhez illesztett CI dashboardjának fejlesztési projektjében olyan új modulokat kellett elkészíteni. A fejlesztés célja, hogy az Asial ügyfeleinek – a Monaca IDE felhasználóinak – a CI pipeline-jainak eredményeit tudja megjeleníteni érthető és áttekinthető formában.
A Monaca-ide webes fejlesztőkörnyezet build szerver és CI/CD rendszer keresztplatformos (Android és iOS) mobil- valamint desktop (Electron) alkalmazások fejlesztéséhez.
A rendszerhez fejlesztett CI dashboard felület lehetővé teszi a fejlesztési metrikák (tesztek, teszteredmények, kódsorok mennyisége, bugok száma, stb) táblázatos illetve diagramos formában történő megjelenítését, így átfogó képet mutatva a fejlesztés állapotáról, amely nagyobb projektek esetén bizonyul hasznosnak.
Kihívás:
Az Asial ügyfelei nem csak webes alapú mobilfejlesztő – Cordova – eszközként használják a Monaca-t, hanem nagyobb cégeknek önálló eszközként is telepített. Egy ügyfelük COBOL – Java migráció során használja, mely támogatására szüksége volt olyan eszközre, amely a 40-50 év alatt lefejlesztett – főként banki – COBOL alkalmazások alapján elkészített tesztesetek eredményeit meg tudja jeleníteni könnyen áttekinthető formában.
Megoldás:
A fenti feladatra készült a CI dashboard, mely külön frontend illetve backend részből álló alkalmazás, a Monaca ökoszisztémához a session-ök adatait tároló Redis NoSQL adatbázison keresztül kapcsolódik. Az alkalmazás önálló adatbázissal rendelkezik, amely a GitHub-ról illetve az ügyfél által használt GitHub Enterprise-ról tölti át az alkalmazások forráskódjait illetve a szoftverek szerkezetét. A rendszerhez kapcsolódó build szerverek REST API-n keresztül rögzítik a CI pipeline-ok valamint a tesztek – integrációs és unit-tesztek – eredményét, a dashboard ezeket jeleníti meg kereshető táblázatos illetve diagramos formában. A rendszer része még egy felhasználói menedzsment felület, mellyel a jogosultsági rendszer finomhangolható illetve a megjelenített eredmények szabhatóak testre.
A feladat során továbbá az elkészült alkalmazásokat a meglévő Monaca ökoszisztémába kellett integrálni.
ITware feladatai
Kihívás:
Az Asial ügyfelei nem csak webes alapú mobilfejlesztő – Cordova – eszközként használják a Monaca-t, hanem nagyobb cégeknek önálló eszközként is telepített. Egy ügyfelük COBOL – Java migráció során használja, mely támogatására szüksége volt olyan eszközre, amely a 40-50 év alatt lefejlesztett – főként banki – COBOL alkalmazások alapján elkészített tesztesetek eredményeit meg tudja jeleníteni könnyen áttekinthető formában.
Megoldás:
A fenti feladatra készült a CI dashboard, mely külön frontend illetve backend részből álló alkalmazás, a Monaca ökoszisztémához a session-ök adatait tároló Redis NoSQL adatbázison keresztül kapcsolódik. Az alkalmazás önálló adatbázissal rendelkezik, amely a GitHub-ról illetve az ügyfél által használt GitHub Enterprise-ról tölti át az alkalmazások forráskódjait illetve a szoftverek szerkezetét. A rendszerhez kapcsolódó build szerverek REST API-n keresztül rögzítik a CI pipeline-ok valamint a tesztek – integrációs és unit-tesztek – eredményét, a dashboard ezeket jeleníti meg kereshető táblázatos illetve diagramos formában. A rendszer része még egy felhasználói menedzsment felület, mellyel a jogosultsági rendszer finomhangolható illetve a megjelenített eredmények szabhatóak testre.
A feladat során továbbá az elkészült alkalmazásokat a meglévő Monaca ökoszisztémába kellett integrálni.
ITware feladatai
- Projektvezetés, stratégiai projektirányítás
- Architektúra kialakítása
- Technológiai döntések
- Backend és frontend fejlesztés
- Integráció háttérrendszerekkel és a Monaca ökoszisztémával
- NodeJS, NestJS – a backend alkalmazás futtatókörnyezete illetve keretrendszere
- PostgreSQL adatbázis – a tesztek illetve metrikák tárolására
- MongoDB adatbázis – a Monaca rendszer adatbázisa
- Redis – NoSQL adatbázis munkamenet illetve cache adatok tárolására
- TypeORM – ORM réteg a backenden, adatbázis verziókövetés migrációs szkriptek segítségével
- REST API – frontend – backend, backend – GitHub illetve build szerver – backend kommunikáció
- JS – frontend keretrendszer (Vue.js, TypeScript)
- Ant design – a frontend dizájnjának alapja, Japánban elterjedt GUI keretrendszer
- js – diagramok készítéséhez használt JvaScript library
- Az alkalmazás korlátozottan (desktop, laptop, tablet) responsive design-t kapott amely a legnépszerűbb böngészőkön lett teszteve
- Docker – konténerizációs technológia, a Monaca ökoszisztéma minden eleme konténerizáltan fut
- nginx – proxy illetve reverse proxy kiszolgáló az alkalmazások előtétjeként
- Front és backend Rest API-kon keresztül kommunikál
- GitHub integráció – Szoftverek forráskódjának és struktúrájának áttöltéséhez
- A fejlesztés a SCRUM agilis keretrendszer használatával történt egy hetes sprintekre osztva, ügyfélbemutatókkal
- Az ITware technológiai stackjéhez adtuk a NestJS-t illetve a Nuxt.JS-t, melyek könnyedén használható backend illetve frontend keretrendszerek
- Önálllóan használható alkalmazás, mely nem csak az Asial adott, hanem bármely ügyfelénél használható
Tartalomkereső
Tech Stack
AI
Anominizáló
Apache Kafka
Apache POI
Chart.js
Cloudflare Turnstile
Docker Compose
Flask
Freemarker
Jackson
Java 17
Jsoup
Kubernetes
Llama 3.2
ModelMapper
MSAL
Nginx
Nuxt 3
OpenCSV
OTP e-mail alapú hitelesítés
Pinia
PrimeVue
Prisma ORM
Pydantic
PyMuPDF
Quartz
Quill
Redis
Spring Boot 3
Spring Cloud Azure
Spring Data JDBC
Spring Data JPA
Spring Data Redis
Spring Kafka
Spring OAuth2 Resource Server
Spring Web
Spring WebServices
Stripe
SvelteKit
Tailwind CSS
Tesseract OCR
vee-validate
Vue 3
vue3-google-map
yup









