Seminarski

Seminarski rad iz informatike

Kako se piše seminarski rad iz informatike: odnos teorije i rešenja, prikaz koda i dijagrama, citiranje dokumentacije i greške koje zastarevaju rad.

7 min čitanja

Informatički seminarski rad ima obrnut odnos teorije i prakse od većine drugih oblasti. Ako si nešto napravio — aplikaciju, skriptu, model, bazu — to je glavni deo rada, a teorija služi da se objasni zašto je napravljeno baš tako.

Najčešća greška je suprotno: dvadeset pet strana o istoriji programskih jezika i dve strane o sopstvenom rešenju.

Dva tipa rada

Pregledni rad — obrada tehnologije, pristupa ili oblasti: mašinsko učenje, blokčejn, arhitekture sistema, bezbednost. Piše se kao svaki teorijski rad, ali sa novijim izvorima nego u drugim oblastima.

Rad sa rešenjem — praviš nešto i opisuješ kako i zašto. Ovde struktura izgleda potpuno drugačije.

Koliki projekat staje u seminarski rad

Najčešći uzrok propuštenog roka je projekat zamišljen kao diplomski. Realan okvir za seminarski je nešto što radi od kraja do kraja, ali usko:

Prevelika ideja: društvena mreža za studente.

Izvodljivo: aplikacija za evidenciju ispita jednog studenta, sa unosom, pregledom i izračunavanjem proseka.

Merilo je grubo ali korisno: ako ne možeš da opišeš šta aplikacija radi u tri rečenice, previše je za seminarski.

Bolje prolazi mali projekat koji je dovršen, testiran i objašnjen nego veliki koji je do pola napravljen, jer se rad piše o onome što postoji, a ne o onome što je planirano.

Od ideje do teme

Postupak koji skraćuje lutanje:

  1. Napiši problem u jednoj rečenici — ko ima problem i u čemu je
  2. Proveri šta već postoji — dva do tri postojeća rešenja i u čemu su ograničena
  3. Odredi šta tvoje rešenje radi, i izričito šta ne radi
  4. Podeli na funkcije i označi koje su obavezne, a koje bi bile dodatak
  5. Napravi prvo obavezne, pa piši rad, pa dodaci ako ostane vremena

Treći korak te čuva: rečenica „rešenje ne obuhvata prijavu korisnika niti rad sa više naloga” stoji u radu sasvim legitimno i unapred odgovara na pitanje koje bi inače stiglo na odbrani.

Struktura rada sa rešenjem

  1. Uvod — problem koji rešavaš i zašto je vredan rešavanja
  2. Pregled postojećih rešenja — šta već postoji i u čemu je nedostatak
  3. Odabrane tehnologije — šta si koristio i, važnije, zašto baš to
  4. Arhitektura rešenja — dijagram i opis komponenti
  5. Implementacija — ključni delovi, ne ceo kod
  6. Testiranje i rezultati — šta radi, koliko brzo, gde puca
  7. Zaključak i mogućnosti proširenja

Treći deo je onaj koji razdvaja dobar rad od proseka. Rečenica „korišćen je Python” nije obrazloženje; „izabran je Python zbog dostupnih biblioteka za obradu teksta i zato što projekat ne zahteva izvršavanje u realnom vremenu” jeste.

Kako se prikazuje kod

  • Ne stavljaj ceo kod u rad. U telo rada idu samo ključni isečci, po petnaestak linija, sa objašnjenjem šta rade.
  • Ceo izvorni kod ide u prilog ili u repozitorijum na koji se upućuje.
  • Kod se formatira jednoobrazno, u fontu sa jednakim širinama znakova, i numeriše kao listing sa nazivom.
  • Ne stavljaj snimke ekrana koda. Tekst se kopira, slika ne, a i nečitljiva je u štampi.

Dijagrami — arhitekture, toka podataka, baze, sekvenci — vrede više od tri strane opisa. Svaki se numeriše i potpisuje kao slika: slike u radu i potpisi.

Kako se piše testiranje

Tvrdnja „aplikacija radi” nije rezultat. Rezultat je tabela iz koje se vidi šta je provereno:

Šta se proveravaUlazOčekivanoDobijeno
Unos ispitaispravni podacizapis sačuvansačuvan
Unos ispitaocena izvan opsegaporuka o grešciporuka prikazana
Izračunavanje prosekatri ocenetačan prosektačan
Pretragapojam koji ne postojiprazan rezultatprazan rezultat

Drugi red je najvredniji — provera šta se dešava kad ulaz nije ispravan. Rad koji testira samo ispravne ulaze pokazao je da rešenje radi kad mu se ne smeta.

Ako rad meri brzinu ili potrošnju, uz broj ide i na čemu je mereno: konfiguracija, veličina skupa podataka, broj ponavljanja. Kako se rezultati prikazuju: tabele i grafikoni u radu.

Ako je rad sa podacima

Kod tema iz obrade podataka i mašinskog učenja menja se ono što rad treba da pokaže. Navodi se:

  • Odakle je skup podataka, sa nazivom, izdavačem i datumom preuzimanja
  • Koliko zapisa i koja obeležja, i šta je urađeno sa nedostajućim vrednostima
  • Kako je skup podeljen na deo za obuku i deo za proveru
  • Koja mera uspešnosti se koristi i zašto baš ta
  • Sa čim se rezultat poredi — makar sa najprostijim mogućim pristupom

Poslednja stavka odvaja rad od vežbe. Tačnost od 85 odsto ne znači ništa dok se ne kaže koliko bi na istom skupu dao trivijalan postupak.

Skup podataka se navodi kao izvor, isto kao knjiga: kako citirati internet izvor.

Izvori u informatici

Specifičnost oblasti je da knjige brzo zastarevaju, pa se koriste izvori kojih u drugim oblastima nema:

  • Zvanična dokumentacija tehnologije ili biblioteke — legitiman izvor, navodi se sa verzijom i datumom pristupa
  • Radovi sa konferencija — u računarstvu su često važniji od časopisa
  • Standardi i specifikacije
  • Repozitorijumi koda — kada se poziva na konkretnu implementaciju

Ono što nije izvor: odgovor sa foruma bez potpisa, blog bez autora, i tekst sa sajta koji ne kaže kada je pisan.

Navedi verziju. Tvrdnja o ponašanju biblioteke bez verzije je bezvredna, jer se u sledećem izdanju može promeniti.

Ako si koristio AI alat

Ako si deo koda generisao pomoću AI alata, to se navodi. Sve više fakulteta to izričito traži, a i tamo gde ne traži, prećutkivanje je rizik.

Kako se navodi i šta je dozvoljeno: AI alati i akademsko pisanje i kako citirati ChatGPT.

Granični slučaj: rad na tuđem kodu

Sasvim je uredno koristiti biblioteku, šablon ili gotov primer — neuredno je ne reći da si ga koristio.

Pravilo koje te pokriva:

  • Navedi šta je preuzeto, odakle i pod kojom licencom
  • Reci šta si ti dodao ili promenio — to je predmet rada
  • Ako je najveći deo rešenja preuzet, težište rada pomeri na analizu i proveru, a ne na opis implementacije

Rad koji pošteno kaže „korišćen je gotov okvir, a moj doprinos su moduli A i B” prolazi bez problema. Rad koji prećuti poreklo koda pada na prvom pitanju o bilo kojoj liniji.

Predaja koda

Kod se predaje tako da se može pokrenuti, a ne samo pogledati. Uz njega ide kratko uputstvo sa verzijom okruženja, spiskom zavisnosti, načinom pokretanja i primerom ulaznih podataka.

Ako se šalje arhiva, iz nje se izbacuju privremeni fajlovi, lozinke i pristupni ključevi — to se dešava češće nego što izgleda. Kako se fajlovi imenuju i šalju: kako imenovati i poslati fajlove.

Izvori o tehnologijama zastarevaju brže nego u drugim oblastima, pa uz svaki idu godina i verzija: koliko stari izvori smeju da budu.

Najčešće greške

  • Teorija bez rešenja, kada je zadatak tražio rešenje
  • Kod bez objašnjenja — deset strana listinga i nijedan pasus o tome šta radi
  • Nema obrazloženja izbora tehnologije
  • Izvori stariji od deset godina za teme koje se menjaju svake godine
  • Nema testiranja — tvrdnja da rešenje radi, bez ijednog pokazatelja
  • Snimci ekrana umesto dijagrama

Za obimniji rad sa istraživačkim delom: diplomski rad iz informatike. Ako je tema bliža hardveru: seminarski rad iz elektrotehnike.

Povezani vodiči