Student Računarskog fakulteta Ivan Đorđević je u četvrtak, 28. maja 2026. godine odbranio diplomski rad na temu SAGA pattern u mikroservisnoj arhitekturi pred komisijom koju su činili mentor dr Zoran Babović i član dr Bojana Dimić Surla.
U uvodu svog rada Ivan je istakao:
Razvojem savremenih softverskih sistema i povećanjem zahteva za skalabilnošću, fleksibilnošću i brzim razvojem, tradicionalni monolitni pristup razvoju aplikacija pokazuje svoja ograničenja. Monolitna arhitektura podrazumeva razvoj aplikacije kao jedne celine u kojoj su svi delovi sistema tesno povezani. Iako je monolitni pristup dobar za manje projekte i početne faze razvoja, daljim razvojem i rastom aplikacije javljaju se problemi sa održavanjem, skalabilnošću, kao i povećan rizik od grešaka prilikom svake izmene sistema.
Kod monolitnih aplikacija čak i male izmene zahtevaju ponovno postavljanje cele aplikacije, što može dovesti do zastoja u radu i povećava kompleksnost razvoja. Takođe, skaliranje je ograničeno jer se aplikacija mora skalirati kao celina, čak i u slučajevima kada je samo jedan njen deo opterećen.
Ovakva ograničenja dovela su do potrebe za fleksibilnijim arhitektonskim pristupima koji bolje odgovaraju zahtevima savremenih sistema.
…
Pored backend dela sistema, moguća unapređenja odnose se i na frontend aplikaciju. Trenutna implementacija koristi polling pristup za komunikaciju sa backend servisima, što je bilo dovoljno za potrebe demonstracije rada sistema. Međutim, u realnim produkcionim okruženjima efikasnije rešenje predstavljala bi upotreba WebSocket komunikacije ili sličnih real-time mehanizama, koji bi omogućili trenutno ažuriranje podataka na klijentskoj strani i smanjili nepotrebno opterećenje sistema izazvano čestim slanjem HTTP zahteva.
Na osnovu svega može se zaključiti da SAGA pattern predstavlja praktično i efikasno rešenje za upravljanje kompleksnim procesima u mikroservisnim sistemima, jer omogućava balans između fleksibilnosti, otpornosti i konzistentnosti podataka bez potrebe za klasičnim 2PC distribuiranim transakcijama. Iako ovakav pristup uvodi dodatnu kompleksnost implementacije, njegove prednosti dolaze do izražaja u savremenim distribuiranim sistemima gde su skalabilnost, dostupnost i otpornost na greške od ključnog značaja. – zaključio je Ivan.