Student Marko Murić je u petak, 17. maja 2024. godine odbranio svoj master rad na temu Strategije deljenja koda za mikroservise: Osnaživanje skalabilnog i agilnog razvoja softvera pred mentorom dr Bojanom Dimić Surlom i članovima komisije dr Tatjanom Šibalijom i dr Milošem Radenkovićem.
U uvodu svog rada Marko je istakao sledeće:
Poslednjih godina, brz rast tehnologije i sve veća potražnja za skalabilnim i otpornim softverskim rešenjima doveli su do pojave mikroservisnearhitekture kao omiljenog pristupa za izgradnju složenih aplikacija. Mikroservisi nude brojne pogodnosti, uključujući poboljšanu skalabilnost, izolaciju grešaka i povećanu brzinu razvoja. Međutim kako softverski sistemi postaju sve više distribuirani i modularni, javlja se izazov efikasnog deljenja koda među mikroservisima.
Iako deljenje koda nije ključni cilj prilikom razvoja mikroservisa, ono omogućava ponovnu upotrebu koda, što smanjuje redudantnost i povećava efikasnost razvoja, a samim tim razvojni timovi mogu brže da isporuče nove funkcionalnosti i poboljšanja. Ipak, deljenje koda između više mikroservisa može biti složen poduhvat, koji zahteva pažljivo razmatranje različitih faktora kao što su granice servisa, verzionisanje, kompatibilnost i održavanje.
Ovaj rad ima za cilj da istraži komplikacije deljenja koda u kontekstu mikroservisa i pruži uvid u efikasne strategije i najbolju praksu. Ispitujući postojeću literaturu, industrijske prakse i studije slučaja iz stvarnog sveta, ovo istraživanje nastoji da prikaže izazove sa deljenjem koda i predloži inovativne pristupe za njihovo rešavanje.
…
U ovom istraživanju analizirali smo različite strategije deljenja koda u kontekstu arhitekture mikroservisa kako bismo osnažili skalabilan i agilni razvoj softvera. Kroz pregled arhitekture mikroservisa, istakli smo važnost efikasnog deljenja koda kao ključnog elementa ovakvog razvojnog pristupa.
Izazovi i razmatranja predstavljeni u radu ukazuju na kompleksnost procesa deljenja koda u okviru mikroservisne arhitekture, uključujući potencijalne prepreke poput konzistentnosti, kontrole verzija i upravljanja zavisnostima.
Kroz detaljan pregled različitih strategija, uključujući izbegavanje deljenja koda, manuelno deljenje, automatizovano deljenje, deljenje preko paketa i kroz mikroservise, identifikovali smo prednosti i nedostatke svakog pristupa. Ovo nam omogućava da prilagodimo odabir strategije u
skladu sa specifičnim zahtevima projekta i kontekstom. – zaključio je Marko.
Fotografije sa odbrane dostupne su u galeriji.