Cilj predmeta
Cilj predmeta je upoznavanje studenata sa razvojem softvera otvorenog koda, alatima i praksom razvoja softvera na realnim projektima.
U okviru predmeta se radi na postojećim svetski poznatim i nagrađivanim projektima otvorenog koda. Studenti će učiti o:
- strategiji i modelima razvoja softvera otvorenog koda
- razvojnim okruženjima i alatima za razvoj softvera
- licenciranju softvera otvorenog koda
- timskomm radu
- celokupnom procesu, dobroj praksi i uspešnim primerima u razvoju softvera otvorenog koda.
Metode izvođenja nastave
Predavanja: slajdovi i praktični studijski primeri vezani za pojedine projekte otvorenog koda.
Vežbe: u laboratoriji, studenti samostalno ili u timu rade na projektima pod rukovodstvom nastavnika.
Ukoliko ima veći broj prijavljenih studenata organizuje se 5-nedeljna blok nastava, a u suprotnom se na predmetu radi kroz mentorski rad.
Mentorski rad podrazumeva periodične konsultacije na kojima se predstavlja napredak na projektu, po dogovoru, (obično na 2-nedeljnom nivou).
Način polaganja
Ispit se realizuje u obliku praktičnog projekta koji podrazumeva samostalna izradu i usmenu odbranu softvera otvorenog koda.
Praktični projekat bi trebalo da bude završen u roku od 3 meseca (do kraja maja).
Praktični projekat podrazumeva izradu funkcionalnosti za neki od postojećih projekata otvorenog koda., i to:
- Neuroph
http://neuroph.sourceforge.net/
https://github.com/neuroph/neuroph - NetBeans
https://netbeans.org/
https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=65873923
Potrebno predznanje
Solidno znanje programiranja u programskom jeziku Java.
Pozeljno znanje softverskih paterna, principa projektovanja softvera i inteligentnih sistema.