You are here

Branislav Kordić odbranio doktorat

27.07.2020 - 11:00
Galerija

Dr Branislav Kordić, asistent-master na Odseku za računarsku tehniku i računarske komunikacije Fakulteta tehničkih nauka u Novom Sadu, odbranio je doktorat i stekao zvanje doktora nauka početkom februara 2020. godine. Ta činjenica, kao i više nego aktuelna tema njegove doktorske teze, bila je povod da porazgovaramo sa ovim mladim naučnikom.

Kordić je osnovne (bachelor) studije završio 2012, master naredne, 2013. godine, nakon čega upisuje doktorske studije. Najpre je radio kao saradnik u nastavi na predmetima Sistemska programska podrška 1 i 2, a potom i na drugim predmetima, a od 2013. dobija zvanje asistenta na Odseku RT-RK, što radi i narednih godina.

- Predmet mog interesovanja, otkako sam započeo doktorske studije, su oblasti namenskih i paralelnih, odnosno distribuiranih sistema. Jedan od problema koji se pokušava prevazići je kako u već prisutnim višejezgarnim i nadolazećim mnogojezgarnim sistemima ostvariti što bolje performanse izvršavanja. U tom momentu smo počeli da se bavimo istraživanjem tada jedne od aktuelnih tema u svetu, a to je primena nove programske paradigme – transakcione memorije – za pisanje konkurentnih programa, koja za cilj ima da omogući što efikasnije iskorišćenje dostupnih jezgara u sistemu, a samim tim i postizanja boljih performansi izvršavanja, ali i da pokuša da pojednostavi pisanje i održavanje tih programa – objašnjava Kordić.

Kada je počeo rad na ovoj temi, u fokusu su bile softverske transakcione memorije, koje predstavljaju softversku implementaciju osnovnih mehanizama paradigme. Nakon što su postavili izazov da pronađu koje su transakcione memorije aktuelne, došli su do zaključka da su to transakcione memorije uglavnom za popularne programske jezike, kao što su C, C++, Java i sl. Njihovu pažnju privukla je činjenica da tada nije postojalo nijedno kompletno i zaokruženo rešenje softverske transakcione memorije za programski jezik Python, iako je on danas jedan od široko rasprostranjenih i najčešće korišćenih programskih jezika. Prvi naredni korak je bio razvijanje rešenja softverske transakcione memorije za programski jezik Python, što je i urađeno u saradnji sa mentorom prof. dr Miroslavom Popovićem. Zbog same pouzdanosti razvijenog rešenja i mogućnosti njegove primene u drugim sistemima, formalna provera ispravnosti predstavljala je logičan sledeći korak.

- Centralni deo teme moje doktorke disertacije je formalna verifikacija softverskih transakcionih memorija upotrebom formalizma vremenskih automata. Prvi deo moje teze je opšti, i u okviru njega napravljeni su različiti formalni modeli i proverena su određena svojstva koja potvrđuju ispravanost tih modela. Mi smo se odlučili za proveru tri osnovna svojstva: sigurnosti, bezbednosti i životnosti. Naš pristup se temelji na tome da ne pravimo apstraktni model našeg sistema, nego da krenemo modelovanje sistema odole i tako napravimo detaljan sistem koji je direktno izveden iz same implementacije. Na taj način smo minimizovali izostavljanje ili pogrešno interpetiranje kritičnih delova sistema – navodi naš sagovornik.

Sam pristup je primenjen upravo na formalnu verifikaciju razvijene Python softverske transakcione memorije. Proces formalne verifikacije je, kako saznajemo, urađen mašinskim putem, upotrebom alata UPPAAL, a u odnosu na skupove transakcija koje obavljaju operaciju čitanja, pisanja ili kombinaciju te dve. Rezultati verifikacije su pokazali da je pristup moguć i održiv, te da razvijena Python softverska transakciona memorija zadovoljava sva tri pomenuta svojstva.

Drugi deo njegove doktorske disertacije bila je eksperimentalna evaluacija, odnosno provera da li se formalno verifikovana implementacija zaista tako ponaša i u realnom okruženju. Dakle, koristeći Python softversku transakcionu memoriju, verifikovali su njen rad, koji su prethodno formalno potvrdili. Eksperimentalna provera uspešno je izvršena na programu DEEPSAM, koji služi za simulaciju i predikciju strukture proteina koji se koriste u farmaceutskoj industriji.

Rezultati ovog višegodišnjeg istraživanja publikovani su u više međunarodnih časopisa, kao i na domaćim i međunarodnim konferencijama.

Dr Branislav Kordić, nakon što je završio doktorat, planira aktivnije učešće u industrijskim projektima, gde bi mogao da primeni sva ona znanja koja je stekao tokom studija, jer smatra da postoji mnogo prostora gde bi se ona mogla primeniti, jer je sama tematika neizostavan deo razvoja softvera. Iz procesa rada sa studentima nosi izuzetno pozitivna iskustva, jer je to proces u kojem se istovremeno i daje i dobija.