Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.

Razlike

Slijede razlike između dviju inačica stranice.

Poveznica na ovu usporedbu

Starije izmjene na obje strane Starija izmjena
Novija izmjena
Starija izmjena
racfor_wiki:fdd:plagiranje_koda [2022/06/07 21:56]
bboras [Literatura]
racfor_wiki:fdd:plagiranje_koda [2024/12/05 12:24] (trenutno)
Redak 118: Redak 118:
 ==== Nove ideje ==== ==== Nove ideje ====
  
-Većina alata za detekciju plagijata u programskom kodu temelji se na usporedbi tokena i sličnih tekstualnih vrijednosti, a to nam često nije dovoljno. Također, plagiranje se ne provodi samo zbog programerovog neznanja, nego i zbog lošeg upravljanja vremenom - dobar programer sposoban je transformirati neki izvorni kod u potpuno drugačiji tekstualni oblik. Zbog toga se nastoji raditi analiza koda na "nižoj razini" odnosno analiziraju se instrukcije izvršnog koda. Jedan slučaj takve analize za programski jezik Java [4] imao je puno više uspjeha nego analiziranje "čistih" izvornih kodova.+Većina alata za detekciju plagijata u programskom kodu temelji se na usporedbi tokena i sličnih tekstualnih vrijednosti, a to nam često nije dovoljno. Također, plagiranje se ne provodi samo zbog programerovog neznanja, nego i zbog lošeg upravljanja vremenom - dobar programer sposoban je transformirati neki izvorni kod u potpuno drugačiji tekstualni oblik. Zbog toga se nastoji raditi analiza koda na "nižoj razini" odnosno analiziraju se instrukcije izvršnog koda. Jedan slučaj takve analize za programski jezik Java [4] imao je puno više uspjeha nego analiziranje "čistih" izvornih kodova. Slično, nastoje se raditi analize kojima bi se fragmenti koda karakterizirali pomoću jezgrenih vrijednosti izvršnih datoteka [5]. Još jedna tehnika detekcije plagijata bila bi izdvajanje "biljega" iz izvornog koda koji se potom uspoređuju pomoću kosinusne sličnosti. Za ovakvu detekciju nije potreban izvorni kod, a otporna je i na slabe i na jake tehnike obusfikacije programskog koda [6]. Iz navedenog se vidi da se detektiranje plagijata u programskom kodu sve više orijentira k analizi izvršnih datoteka, što je kompliciranije područje, ali daje više uspjeha.
 ==== Zaključak ==== ==== Zaključak ====
 Plagiranje programskog koda je složena tema koja svakim danom postaje sve složenija. U ovom radu navedene su neke tehnike plagiranja koda kao i tehnike detekcije plagijata te odgovarajući alati za detekciju plagijata, ali tu je zapravo samo zagrebana površina. Čak da imamo "savršen" detektor plagijata, pitanje je možemo li 100% dokazati da je netko nešto plagirao. Kratki programi koji rade jednostavne funkcije (npr. program koji iz polja cijelih brojeva ispisuje pozitivne brojeve) se često pišu na isti način pa nema smisla raditi detekciju plagijata. S druge strane, možda su npr. na nekoj laboratorijskoj vježbi studenti prepisali taj isti jednostavan program, a nisu kažnjeni i dobili su bodove koje ne zaslužuju. U svakom slučaju, uz potrebnu programsku podršku za detekciju plagijata očito je da je potrebna i intervencija čovjeka koji na kraju sam mora odlučiti je li neko programsko rješenje plagijat ili ne. Plagiranje programskog koda je složena tema koja svakim danom postaje sve složenija. U ovom radu navedene su neke tehnike plagiranja koda kao i tehnike detekcije plagijata te odgovarajući alati za detekciju plagijata, ali tu je zapravo samo zagrebana površina. Čak da imamo "savršen" detektor plagijata, pitanje je možemo li 100% dokazati da je netko nešto plagirao. Kratki programi koji rade jednostavne funkcije (npr. program koji iz polja cijelih brojeva ispisuje pozitivne brojeve) se često pišu na isti način pa nema smisla raditi detekciju plagijata. S druge strane, možda su npr. na nekoj laboratorijskoj vježbi studenti prepisali taj isti jednostavan program, a nisu kažnjeni i dobili su bodove koje ne zaslužuju. U svakom slučaju, uz potrebnu programsku podršku za detekciju plagijata očito je da je potrebna i intervencija čovjeka koji na kraju sam mora odlučiti je li neko programsko rješenje plagijat ili ne.
Redak 133: Redak 133:
  
 [5] [[https://ieeexplore.ieee.org/document/7076635|Y. Jhi, X. Jia, X. Wang, S. Zhu, P. Liu and D. Wu, "Program Characterization Using Runtime Values and Its Application to Software Plagiarism Detection," in IEEE Transactions on Software Engineering, vol. 41, no. 9, pp. 925-943, 1 Sept. 2015, doi: 10.1109/TSE.2015.2418777.]] [5] [[https://ieeexplore.ieee.org/document/7076635|Y. Jhi, X. Jia, X. Wang, S. Zhu, P. Liu and D. Wu, "Program Characterization Using Runtime Values and Its Application to Software Plagiarism Detection," in IEEE Transactions on Software Engineering, vol. 41, no. 9, pp. 925-943, 1 Sept. 2015, doi: 10.1109/TSE.2015.2418777.]]
 +
 +[6] [[https://ieeexplore.ieee.org/document/7153572|Z. Tian, Q. Zheng, T. Liu, M. Fan, E. Zhuang and Z. Yang, "Software Plagiarism Detection with Birthmarks Based on Dynamic Key Instruction Sequences," in IEEE Transactions on Software Engineering, vol. 41, no. 12, pp. 1217-1235, 1 Dec. 2015, doi: 10.1109/TSE.2015.2454508.]]
  
 ~~DISCUSSION~~ ~~DISCUSSION~~
racfor_wiki/fdd/plagiranje_koda.1654639012.txt.gz · Zadnja izmjena: 2024/12/05 12:23 (vanjsko uređivanje)
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0