E-veoselehe registri analüüs ja arendustööd

Eesti Metsa- ja Puidutööstuse Liit

Probleem ja eesmärk

Alates 2006. aastast peab iga metsamaterjali transpordi kohta looma veoselehe. Paberimajanduse digitaliseerimiseks loodi 2008-2011 aastatel esmane elektroonilise veoselehe infosüsteem ELVIS. Kasutajate arvu kasv tekitas aga vajaduse uue süsteemi järele, kuna olemasolev tehniline lahendus oli vananenud ning selle uuendamine oleks olnud kordades keerulisem ja ajakulukam. 2019.a loodi 364 251 veoselehte ja mahud liiguvad iga aasta kasvavas trendis.

Uue E-veoselehe registri (EVR) eesmärgiks oli toime tulla suurenenud kasutajaskonna ning veoselehtede arvuga. Valitud lahenduseks oli luua API, millega ettevõtted saaksid liidestuda ja EVRile ligi pääseda ning seeläbi luua uusi või pärida olemasolevaid veoselehti. Lisaks oli oluline tagada järelevalveorganitele ligipääs ka X-tee kaudu.

Lahenduse üheks osaks oli ka administraatori liidese arendamine, mille kaudu ettevõtete peakasutajad saavad hallata ligipääse ning süsteemi administraatorid saavad jagada õigusi, hallata klassifikaatoreid ning pärida statistikat süsteemi kasutatavuse kohta.

Valdkond

Metsandus

Märksõnad

API, veoseleht

Kasutatud tehnoloogiad

Front

HTML5/CSS, Javascript, Bootstrap

Back

.NET Core ,ASP Net Core, C#

Andmebaas

PostgreSQL

Muu tehnoloogia

Microsoft Azure, Marten ORM, Swagger/OpenAPI, RestSharp, Spectflow

Eesti Metsa-ja Puidutööstusliit (EMPL) tellis AgileWorksilt e-veoselehe registri tarkvara. E-veoselehega on kaetud kõik Eestis veetavad metsamaterjali koormad ning selle abil saab anda pideva ülevaate vedudest kõigile osapooltele.

AgileWorks kasutab julgelt uusi tarkvara-arhitektuurilisi lahendusi (sündmustepõhine arhitektuur - event sourcing ja API-de kasutamine), mis sobivad hästi veoselehe konteksti.

Töökorralduslikult oli AgileWorks avatud tellijapoolse tooteomaniku (minu roll) kasutamisele, pakkudes ise lisaks arendusmeeskonnale ka Scrum Master’i teenust. Meeskonnas nägin väga head koostööd analüütikute, arendajate ja testijate vahel. Probleemid ja kitsaskohad said kiiresti lahendatud, meeskonna liikmed teevad ka paarisprogrammeerimist ja on tehnilistes küsimustes väga pädevad.

Muljet avaldas testide kirjutamine ja koodi kaetus automaattestidega (nii üksustestid kui ka funktsionaalsed testid). Paljudes tarkvarafirmades küll kinnitatakse testide automatiseerimise olulisust aga AgileWorks reaalselt ka teeb seda.

Tarnete ja majutuse osas pakkus AgileWorks kliendile ka aktiivselt alternatiivseid pilvelahendusi, mis teatud olukordades on soodsamad olemasolevatest võimalustest.

Gunnar Kuhi, tooteomanik —
Gunnar Kuhi

Projekti kulg ja tehniline lahendus

Projekti alustasime analüüsiga, mille käigus analüüsisime olemasolevat süsteemi ning kaardistasime nõuded. Analüüsi käigus valmisid detailsed kasutuslood ning arhitektuurimudel. Analüüsiga paralleelselt valmis ka administraatori kasutajaliidese prototüüp.

Arendustöid otsustasime alustada projekti kõige keerulisemast osast ehk API-ist, et võimalikud takistused tuleksid välja projekti algul ning saaks varakult lahendatud.

Projekt oli väga huvitav, sest eelkõige oli süsteemi põhifookuseks rakendusliides, millest tulenevalt sai tarkvara testida uute tehnoloogiate ning metoodikatega. Väga meeldis, et kliendipoolne tooteomanik oli koguaeg kättesaadav ning tema valdkonnateadmised olid suureks abiks kogu projekti vältel.

Priit, tarkvaratestija —
Priit

Kogu projekti vältel lähtusime agiilsetest metoodikatest ning klient sai uut funktsionaalsust testida tänu regulaarsetele tarnetele iga 2-4 nädala tagant.

Arenduse käigus keskendusime selgelt modelleeritud ning optimeeritud koodi kirjutamisele. Põhjalikult disainitud koodibaas tagas turvalise ning töökindla lõpptulemuse, mis suudab efektiivselt käsitleda suuri andmemahtusid, ent on samal ajal ka kergesti loetav ja vajadusel laiendatav.

Struktureeritud tööprotsess ning kliendipoolne kogenud product owner tagasid projekti vältel efektiivse kommunikatsiooni. Tänu sellele sujus arendus võrdlemisi valutult ning ajalised prognoosid pidasid paika. Samuti kasvatas pidev tagasiside tiimi ühtsust ning meeskonnavaimu.

Kõige põnevam tehniline väljakutse oli arendada suure arvu mahukate veoselehtede põhjal efektiivne raportite koostamise algoritm.

Robert, tarkvaraarendaja —
Robert

Veel meie töid

Võta meiega ühendust

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Telefon: +372 503 7594

Email: info@agileworks.eu

Erika 14, 10416 Tallinn, Arsenali Keskus II korrus

Tulge sissepääs nr 2 juurde, mis asub A-korpuse sildi juures (kõrval Kalamaja Pagar). Sisenemiseks kasutada fonolukku vajutades 204 ja *. Edasi tulge trepist üles ja üle katuse viitade järgi.