Projekti kulg ja tehniline lahendus
Tehniliste lahenduste ja teostuse poolelt on projekt pakkunud meie meeskonnale põnevat väljakutset. Keerukad hinnaarvutusalgoritmid peavad arvesse võtma spetsiifilisi nüansse ning käima läbi vaid loetud sekundite jooksul tuhandeid erinevaid hinnakombinatsioone.
Huvitav fakt – klamberköite teenuse hinna arvutamiseks käib süsteem läbi vaid loetud sekundite jooksul 51 888 kombinatsiooni, et leida parim hind.
Projekti alguses analüüsisime koos kliendiga läbi soovitava funktsionaalsuse ning järjestasime esimese etapi tuumiktööd, eesmärgiga alustada töid kõige suuremast ja vajalikumast osast. Kaardistatud funktsionaalsuse põhjal alustasime kasutajaliidese prototüüpide loomisest, mille esmane sisend tuli kliendilt wireframe-idena. Prototüüpimise käigus keskenduti kasutajamugavusele ning visuaalsele disainile, mille tulemusel valmis kerge, modernne ja kasutajasõbralik kasutajaliides.
Arendust alustasime platvormi kõige olulisemast osast, milleks on hinnaarvutuse komponent.
Ehitasime hinnaarvutuse „mootori“, mis suudab arvutada erinevate trükikodade seadmete hindadest selle kõige optimaalsema. Hinnaarvutamisel mängitakse läbi palju erinevaid stsenaariumeid, näiteks ühe trükiseadme puhul leitakse hind kõikidele sobivatele materjalidele, mõõtmetele, kiu suundadele jne. Nende tulemuste seast leitakse kliendi sisestatud parameetritega tööle kõige soodsam hind. Hinnaarvutus toimub paralleelselt ning iga kord, kui kasutaja töölehel muudatusi teeb, arvutab süsteem uue hinna vaid mõne sekundiga.
Töölehe kasutajaliidese osa on tehtud SPA (single-page application) osana ning on seetõttu väga võimas. Sellega saab töölehele dünaamiliselt lisada erinevaid trükietappe ja neid muuta. Teostuse juures on kasutatud event sourcing lähenemist, mille puhul toimuvad sündmused mis töölehte muudavad. Samuti arvutatakse automaatselt reaalajas ka hinnapakkumised, mida saab töölehele rakendada.