- Trajanje studija: 4 godine
- Broj ESPB: 242 ESPB
- Zvanje: Diplomirani inženjer informacionih tehnologija i sistema
- Polje: Tehničko-tehnološke nauke
- Oblast: Elektrotehničko i računarsko inženjerstvo
- Uža oblast: Informacione tehmologije i sistemi
- Oblici studiranja: tradicionalni (u prostorijama univerziteta) i onlajn, preko Interneta (e-učenje)
- Mesto održavanja nastave: Beograd i Niš
ŠTA SU INFORMACIONE TEHNOLOGIJE?
Informacione tehnologije (IT) je disciplina koja se vrlo brzo razvija kao rezultat zahteva iz prakse, odnosno, potreba preduzeća i drugih organizacija. Danas poslovanje u svim oblastima potpuno zavisi od informacionih tehnologija, jer sve organizacije koriste sisteme zasnovane na IT. Ovakvi sistemi moraju da rade u skladu sa definisanim potrebama, da budu pouzdani i bezbedni, da mogu da se usavršavaju, održavaju, i ako je potrebno, zamene drugim. Podrška inženjera za IT je neophodna, jer oni razumeju računarske sisteme i njihov softver. Studenti koji završe studijski program iz informacionih tehnologija rešavaju probleme vezane za računare i softver. Danas su akademski programi iz informacionih tehnologija svuda u porastu, jer akademski programi iz drugih računarskih disciplina, a naročito iz računarskih nauka, nisu uspeli da proizvedu odgovarajuće stručnjake prema profilu koji se traži na tržištu.
Da bismo jasnije ukazali na razliku Informacionih tehnologija u odnosu na druge dve discipline iz šire oblasti računarstva, koristićemo dijagrame na slici 1, koji su preuzeti iz dokumenta: Information Technology – An Academic Discipline, ACM – Association for Computing Machinery, www.sigite.org Šira oblast računarstva se ovde prikazuje uz pomoć dvodimenzionog prostora.
Slika 1. Područja znanja koja pokriva disciplina Informacione tehnologije
Horizontalna osa pokazuje kretanje od teorije ka primeni računara. Vertikalna osa pokazuje kretanje od računarskog hardvera i njegove arhitekture, do organizacijskih pitanja u organizaciji u kojima se primenjuju računari.
Kao što se vidi, disciplina Informacione tehnologije obuhvata sve praktične aspekte računarstva, sem njegovog hardvera. Proučava se i sistemska infrastruktura, i softverske metode i tehnologije, ali i primenjene tehnologije, kao i organizaciona i sistemska pitanja korisnika IT. Zbog većeg naglaska na primenu, ne izučavaju se značajnije teorijski aspekti ovih područja računarstva. Polje koje pokriva disciplina Informacione tehnologije, delimično se preklapa sa drugim računarskim disciplinama, ali diplomirani studenti programa IT se više usmeravaju ka zadovoljavanju potreba ljudi vezanih za primenu računarskih tehnologija. U delu primena tehnologija, oblast koju pokriva IT ide najdalje ulevo, tj. ka teoriji i inovacijama. To se pokazuje u slučajevima kada inženjeri IT razvijaju digitalne tehnologije sa veb mogućnostima, a koje organizacije koriste za široki spektar svojih informacijskih potreba, pri čemu je potrebna određena koncepcijska osnova u relevantnim principima i u teoriji.
Programi iz IT-a, po pravilu, proizvode diplomirane studente koji znaju kako da se IT primeni u širokom području njene primene. Organizacije bilo koje vrste danas zavise od umrežene računarske infrastrukture u takvom nivou da više ne mogu da rade bez ove infrastrukture. IT inženjeri su pripremljeni da izaberu, upravljaju i održavaju ovu infrastrukturu, osiguravajući da ona ostvaruje potrebe organizacije. Oni, takođe, kreiraju digitalni sadržaj za ovu infrastrukturu i brinu se o davanju IT podrške, pojedincima koji je koriste.
ZAŠTO STUDIRATI INFORMACIONE TEHNOLOGIJE NA UNIVERZITETU METROPOLITAN?
Studijski program iz Informacionih tehnologija (ili kraće, IT program) ima za cilj da diplomiranim studentima obezbedi znanje i veštine koje će im omogućiti profesionalni rad u oblasti Informacionih tehnologija i dalji razvoj karijere. Cilj studijskog programa je da postigne sledeće:
- Postizanje celovitog obrazovanja kadrova kompetentnih za stručni rad u oblasti informacionih tehnologija, uključujući programiranje, planiranje, administriranje, razvoj i održavanje IT sistema i njihovih elemenata, zaštitu sistema, rukovanje podacima i druge oblasti vezane za specifične napredne tehnologije, kao i oblasti van tehničko-tehnološkog segmenta koje su neophodne za primenu IT u savremenom poslovnom okruženju (komunikacioni, pravni i organizaciono-poslovni aspekt);
- Sticanje i razvoj kompetencija i veština, kao i ovladavanje teorijom u oblasti informacionih tehnologija;
- Ovladavanje osnovnim konceptima, metodama i tehnikama informacionih tehnologija koje su neophodne za efektivan i efikasan rad organizacije i sistema u savremenom poslovnom okruženju;
- Osposobljavanje studenata za kritičku analizu i ocenu, efektivnu komunikaciju, organizaciju i samo-organizaciju, posebno u smislu odgovora na zahteve ka novim saznanjima i primenu IT tehnologija;
- Osposobljavanje studenata za samostalno učenje i ovladavanje novim konceptima, metodama i tehnikama iz domena informacionih tehnologija, u skladu sa savremenim i budućim trendovima razvoja kao i potrebama za specifičnim kompetencijama za specifična radna mesta;
- Osposobljavanje studenata za samostalno rešavanje problema, kao i za efikasan rad u timu.
NAJČEŠĆA RADNA MESTA
Radna mesta na kojima rade stručnjaci za informacione tehnologije se različito zovu u različitim organizacijama. Neki od poslova koje inženjeri IT-a mogu da obavljaju su:
- Web programer
- Web dizajner
- Programer
- IT konsultant/specijalista/menadžer
- Analitičar baza podataka
- Inženjer za računarske sisteme i mreže
- Inženjer za održavanje računarskih sistema i mreža
- Inženjer za analizu sistema
- Administrator računarskih sistema
- Administrator računarske mreže
- Administrator baza podataka
- Sistem administrator
- IT sistem inženjer
- Aplikativni inženjer
ZNANJE KOJE STUDENT STIČE TOKOM STUDIJA
Pored pojedinačnih ishoda učenja definisanih za svaku jedinicu znanja, program predviđa i ishode učenja programa, tj. karakteristike koje treba da steknu svi studenti programa. Savladavanjem studijskog programa student stiče sledeće ishode učenja:
- Koristi različite nivoe apstrakcije u cilju odabira optimalnog pristupa pri projektovanju aplikacije;
- Razvija algoritme koji rešavaju određen računarski problem, uz objašnjenje implementacije algoritama u svojstvu izvršenja instrukcija, programa i procesa;
- Opiše glavne komponente veb sistema i njihove međusobne interakcije, uključujući server, bazu podataka, logiku (tzv. backend) i korisničko okruženje (tzv. frontend);
- Analizira i poredi ključne karakteristike različitih komunikacionih protokola i načina na koji oni oslikavaju funkcionalne i nefunkcionalne zahteve korisničke ili klijentske aplikacije;
- Radi u timu pri razvoju veb i/ili mobilne aplikacije, bazirane na savremenim zahtevima korisnika, funkcionalnostima i bezbednosnim analizama, koristeći standardne biblioteke, radne okvire, jedinična i integraciona testiranja i kontrolu verzije softvera;
- Planira, izvršava, upravlja i izveštava u okviru određenog projekta iz IT oblasti;
- Evaluira relevantne probleme u projektima iz IT oblasti koristeći tradicionalne i agilne metode razvoja softvera;
- Evaluira specifične veštine koje su neophodne za održavanje kontinualnog zaposlenja u IT sektoru;
- Razvija polise unutar IT organizacije koje uključuju etička, pravna i razmatranja privatnosti podataka;
- Identifikuje potrebu i funkcije tehnologija sajber bezbednosti, kao i alate i sisteme koji smanjuju rizik na bezbednosne napade IT organizacije.
Kako je studijski program OAS IT kreiran tako da u potpunosti primenjuje predložene programe ACM i IEEE Computing i svi ishodi učenja navedene u preporučenom, tj. referentnom IT kurikulumu.
NAŠI PARTNERI
USAGLAŠENOST PROGRAMA SA MEĐUNARODNIM STANDARDIMA
Studijski program OAS Informacionih tehnologija, Univerziteta Metropolitan je kreiran u skladu sa preporukama američkih profesionalnih udruženja Association for Computing Machinery (ACM) i IEEE Computer Society te je u potpunosti usaglašen sa njihovim predlogom programa.
Program u većem delu je rađen za računarsku disciplinu: Informacione tehnologije, a u manjem delu, za računarsku disciplinu: Računarske nauke. Zbog toga, studijski program je usaglašen sa preporukama američkih profesionalnih udruženja IEEE i ACM.
Program je usaglašen sa sledećim preporukama američkih profesionalnih udruženja:
- Information Technology Curricula 2017 – Curriculum guidelines for baccalaureate degree programs in information technology. Assoc. Comput. Mach.(ACM), New York, NY, USA, 2017.
- Computing Curricula 2020 – Computing Curricula 2020: Paradigms for global computing education. Assoc. Comput. Mach.(ACM) IEEE Comput. Comput.(IEEE-CS), New York, NY, USA, 2020.
- Computer Science Curricula 2013 – Computer Science Curricula 2013. ACM and IEEE Computer Society, Incorporated: New York, NY, USA, 2013.
- Information Systems 2020 – IS2020 – A Competency Model for Undergraduate Programs in Information Systems, ACM & AIS, 2020.
IT Četvrogodišnji program – 240 ESPB
I godina
IT101 Osnove informacionih tehnologija
Ovo je uvodni predmet koji studente treba da uvede u različite oblasti informacionih tehnologija, kako bi dobili potrebna predznanja koja su im potrebna za naredne, naprednije i specijalizovane predmete. Predmet pruža pregled IT disciplina, opisuje njihovu vezu sa drugim računarskim i ne-računarskim disciplinama i na taj način formira svest studenata o kompleksnost IT-a. Cilj predmeta je da pomogne studentima da razumeju raznolikost konteksta u kojima se koriste IT, stalne inovacije IT-a i potrebu da se i dalje usavršavaju, kao i da se upoznaju sa osnovnim komponentama IT sistema, uključujući računarske mreže, web sisteme, baze podataka, skript jezike, administraciju, održavanje i integraciju sistema. Neke od tema koje se izučavaju na predmetu su: Brojni sistemi; Kodiranje podataka; Operativni sistemi; Arhitektura i organizacija računara; Koncepti i osnove upravljanja informacijama; Arhitektura organizacije podataka i informacija; Modeliranje podataka; Veb sistemi, tehnologije i standardi; Programiranje klijentske i serverske strane; Komunikacija između sistema; Mapiranje i razmena podataka; Integrativno kodiranje; Skript tehnike; Tehnike pisanja koda; Aspekti interakcije čovek-računar aplikacionog domena; Evaluacija orijentisana ka čoveku; Razvoj efektivnog interfejsa; Osnove računarskih mreža; Rutiranje; Fizički sloj; Aplikaciono područje mreža; Osiguranje informacija i bezbednost; Fundamentalni aspekti; Bezbednosni mehanizmi; Napadi; Bezbednosni domeni; Istraga; Stanja informacijav Model za analizu opasnosti; Bezbednosne usluge; Integracija.
CS100 Uvod u programiranje (Python)
Cilj predmeta je da uvede studente u osnove programiranja kroz programski jezik Pajton. Kroz predmet se studenti upoznaju sa osnovnim konceptima programiranja kao što su strukture podataka, uslovi, petlje, promenljive i funkcije. Ovaj predmet uključuje pregled različitih alata dostupnih za pisanje i pokretanje Pajtona. Predmet pruža praktične vežbe kodiranja koristeći najčešće korišćene strukture podataka, pisanje prilagođenih funkcija i čitanje i pisanje u datoteke. Na predmetu se izučavaju teme kao što su uvod u osnove programiranja (šta je i kako funkcioniše), tipovi podataka, kontrolne strukture, funkcije, nizovi, nasleđivanje, binarno računanje, otklanjanje grešaka, testiranje, dokumentovanje i objektno orijentisane paradigme. Takođe, kroz predmet se obrađuje rukovanje stringovima, operacije nad stringovima, formatiranje stringova; grananje u programu, jednostruko, dvostruko i višestruko grananje; obrada izuzetaka, petlje i logički izrazi: Bulova algebra i Bulovi izrazi.; dekompozicija programa; pozivanje podprograma; prenos parametara i rezultata; pojam i primena rekurzije; nizovi i operacije nad nizovima.
NT110 Poslovna komunikacija
Predmet omogućava usvajanje relevantnih teorijskih i praktičnih znanja iz poslovne komunikologije koja omogućavaju adekvatno delovanje u poslovnom okruženju. Studenti stiču spoznaju da veštine komunikacije mogu biti krucijalne za uspeh u svakoj poslovnoj aktivnosti. Predmet uvodi studente u poslovna i društvena pitanja komunikacije – modele i implikacije efektivnog poslovnog komuniciranja na poslovanje. Teme koje se izučavaju na predmetu su: Uvod profesionalnu komunikaciju, prepreke u komunikaciji, vrste komuniciranja, veštine verbalne komunikacije, veštine neverbalne komunikacije, veštine pisane komunikacije, lični nastup u komunikaciji, konflikti, timsko komuniciranje, interkulturna komunikacija, vizuelni identitet organizacije, organizaciona (korporativna) kultura.
МА104 Matematika
Predmet omogućava upoznavanje i ovladavanje raznim matematičkim metodama i tehnikama koji se odnose na pojmove iz oblasti linearne algebre, matematičke analize, a koji su predviđeni za profil inženjera ovakvog usmerenja. Teme koje se izučavaju na predmetu su: Detereminanta: Determinanta drugog i trećeg reda; Parne i neparne permutacije; Determinanta proizvoljnog reda; Osobine determinanti; Laplasov stav; Matrični račun: Pojam matrice; Operacije sa matricama; Inverzna matrica; Rang matrice; Sistemi linearnih jednačina: Pojam; Matrični metod; Kramerovo pravilo; Gausov metod; Kroneker – Kapelijev stav; Realna funkcija jedne realne promenljive: Pojam; Osobine; Osnovne elementarne funkcije; Elementarne funkcije i drugi tipovi funkcija; Brojni nizovi: Pojam, osobine, stavovi za konvergenciju; Granična vrednost realne funkcije jedne realne promenljive: Pojam, osobine. Neke važnije granične vrednosti; Neprekidnost funkcije u tački; Neprekidnost funkcije na intervalu; Diferencijalni račun: Pojam, geometrijska interpretacija, tablica, pravila za izračunavanje; Izvod složene funkcije, logaritamski izvod, izvod funkcije zadate parametarski i implicitno, izvod inverzne funkcije; Izvodi višeg reda, Lajbnicova formula. Diferencijali prvog i višeg reda i primena. Teoreme o diferencijalnom računu; Tejlorov polinom; Lopitalovo pravilo; Primena prvog i drugog izvoda na određivanje odgovarajućih osobina funkcija. Asimptote funkcije; Opšta šema ispitivanja realnih funkcija jedne realne promenljive; Integralni račun – neodređena integracija: Pojam; Metode za integraciju raznih tipova realnih funcija jedne realne promenljive. Integralni račun – određena integracija: Pojam, egzistencija i osobine; Njutn – Lajbnicova formula; Geometrijska intepretacija i premene; Nesvojstveni integrali.
NT111 Engleski 1
Engleski jezik 1 je srednji nivo opšteg engleskog jezika. Cilj ovog predmeta je razviti kompetenciju iz oblasti gramatike i vokabulara, kao i razvijati i uvežbavati sledeće jezičke veštine: govorenje, slušanje, čitanje, pisanje, prevođenje i integrisanje pomenutih veština. Nakon položenog predmeta NT111 Engleski 1, student će biti u stanju da: U oblasti razumevanja govora: adekvatno reaguje na usmene poruke u vezi sa aktivnostima u opštem kontekstu, razume poruku kraćih izlaganja, razume informacije o poznatim sadržajima, razume suštinu iskaza, izvodi zaključke posle slušanja nepoznatog kraćeg teksta; U oblasti razumevanja pročitanog teksta: čita kraće tekstove napisane standardnim jezikom, razume opšti smisao i dopunske informacije iz kraćeg teksta, razume kraće tekstove različitog sadržaja; U oblasti usmenog izražavanja: učestvuje u dijalozima, razmenjuje informacije i mišljenje sa sagovornikom o opštim temama i interesovanjima, koristi engleski jezik za komunikaciju u opštem kontekstu u trajanju od 5 minuta; U oblasti pismenog izražavanja: piše beleške, poruke i pisma na razložan i argumentovan način, rezimira pročitan ili preslušani kraći tekst o opštim temama i iznosi sopstveno mišljenje, piše elektronske poruke, tekstualne poruke, učestvuje u diskusijama na blogu na nivou B1 po „Zajedničkom evropskom referentnom okviru za jezike“.
CS101 Objektno – orijentisano programiranje 1
Predmet se fokusira na uvod u osnovne koncepte u programiranju sa aspekta objektno – orijentisanog programiranja. Predmet upoznaje studente sa konceptima objektno-orijentisanog programiranja, kao i sa metodama proceduralnog programiranja sa ciljem savladavanja osnova programskih jezika. Student se osposobljava da samostalno razvija jednostavnije programe u Javi. Teme koje se izučavaju na predmetu su: Koncept i istorija programskih jezika; Prevođenje programa; Tipovi podataka, aritmetički, relacioni i logički operatori; Programske petlje; Metodi i povratni tipovi; Jednodimenzionalni i višedimenzionalni nizovi; Osnovne Java klase; Nasleđivanje, generalizacija i polimorfizam; Interfejsi; Relacije asocijacije, agregacije i kompozicije u UML jeziku sa implementacijom u Javi; Ugnježdene klase; Tokovi, datoteke i specijalizacija.
CS120 Organizacija računara
Kroz ovaj predmet studenti se upoznaju sa osnovnim pojmovima i principima iz oblasti slojevite organizacije računarskih sistema. Studenti se najpre uvode u referentne modele savremenih računarskih sistema koja uključuje procesore, primarnu i sekundarnu memoriju, kao i ulazno/ izlazne uređaje i magistrale koje povezuju ostale podsisteme. Studenti se zatim upoznaju sa svim slojevima organizacije računara, i to: sloj digitalne logike, sloj mikroarhitekture, sloj skupa instrukcija i asemblerskog jezika, kao i sloj arhitekture paralelnih računarskih sistema, koja uključuje paralelizam na čipu, ko-procesore, multiprocesore i multiračunare, ali i grid računare. Na predmetu se obrađuju sledeće teme: Struktuirana organizacija računara; Binarna aritmetika; Jednostavna digitalna logička kola; Složena digitalna logička kola; Centralni procesor; Primarna i sekundarna memorija; Ulazno/izlazni uređaji; Magistrale i interfejsi; Mikroarhitektura procesora; Poboljšanje performansi; ISA skup instrukcija; Assembly jezici; Prevođenje i interpretiranje programa; Paralelne arhitekture računarskih sistema; Uvod u operativne sisteme.
CS105 Osnove veb tehnologija
Cilj predmeta je upoznavanje studenata sa osnovama različitih veb tehnologija i fundamentalnim principima veb sajtova i veb aplikacija. Studentima će kroz pregled tema i koncepata biti prezentovana osnovna znanja i veštine za programiranje klijentske strane (front-end). Studenti će biti osposobljeni za kreiranje jednostavnih veb aplikacija. Teme koje se izučavaju na predmetu su: Jezici za označavanje i stilizovanje; HTML (Hyper Text Markup Language) i CSS (Cascading Style Sheets); Osnove skripting jezika; JavaScript; JavaScript – DOM (Document Object Model); JQuery; Bootstrap; Semantic UI; Osnove front-end programiranja; Elementi dobrog dizajna; Programiranje zasnovano na događajima; Prilagodljiv dizajn; Mrežni protokoli; HTTP (Hypertext Transfer Protocol); Komunikacija veb server – veb pregledač; Osnove AJAX- a (Asynchronous JavaScript And XML); Uvod u optimizaciju rezultata pretrage – SEO (Search Engine Optimizatin).
IT131 Računarske mreže
Cilj predmeta je da kroz sticanje opštih znanja iz domena umrežavanja računarskih uređaja studente uvede u svet računarskih mreža. S tim u vezi, predmet pruža osnove za sticanje osnovnih znanja vezanih za formiranje različitih vrsta računarskih mreža i daje poseban osvrt na elemente mrežnog hardvera, kao i softver za umrežavanje. Značaj predmeta je ogroman, jer kroz pružanje svih informacija vezanih za standardni OSI referentni model, kao slojevitu arhitekturu telekomunikacionih mreža, studenti se upoznaju sa osnovnim mrežnim principima, protokolima po slojevima i arhitekturom različitih vrsta računarskih mreža ((Internet – TCP/IP, Ethernet – IEEE 802.3, Wi-Fi – IEEE 802.11). Cilj predmeta je i da studentima ukaže na značaj bezbednosti protoka informacija u računarskim mrežama i da ih upozna sa aplikacijama koje se implementiraju za potrebe sigurnosti računarskih mreža. Predmet obuhvata sledeće teme: a) Klasifikacija tipova mreža; b) Podela računarskih mreža po vrsti, strukturi i veličini; c) OSI referentni model kao slojevita; d) Uloga sloja veze podataka u višeslojnom radu mreže; e) Bezbednost u računarskim mrežama; f) TCP(UDP)/IP protokol stek i osnove multimedijalne komunikacije; g) Osnovni principi rada bežične mreže; h) Upoznavanje sa najnovijim trendovima u standardizaciji računarskih mreža; i) Osnovni opis funkcionalnosti mrežnog sloja u arhitekturi Interneta (IPv4,IPv6) j) Rutiranje i IP adresiranje; k) Protokoli aplikacionog sloja (FTP, DNS, SMTP, POP3, IMAP); l) Multimedijalne mreže i način funkcionisanja protokola RTP, RTSP, RTCP m); lj) Upravljanje mrežom (SNMP, MIB); n) Virtuelne privatne mreže; o) Performanse i administracija računarskih mreža.
NT112 Engleski 2
Engleski jezik 2 je viši srednji nivo engleskog jezika – kombinacija opšteg engleskog jezika i jezika struke. Cilj ovog predmeta je razviti kompetenciju iz oblasti gramatike i vokabulara, kao i razvijati i uvežbavati veštine govora, slušanja, čitanja, pisanja, prevođenja i integrisati pomenute veštine. Nakon položenog predmeta NT112 Engleski 2 studen će biti osbosobljen da: U oblasti razumevanja govora: Adekvatno reaguje na usmene poruke u vezi sa aktivnostima u opštem kontekstu, razume poruku dužih izlaganja, razume informacije o poznatim sadržajima, razume suštinu iskaza, izvodi zaključke posle slušanja nepoznatog teksta; U oblasti razumevanja pročitanog teksta: Čita kraće tekstove napisane standardnim jezikom, razume opšti smisao i dopunske informacije iz teksta, razume duže tekstove različitog sadržaja; U oblasti usmenog izražavanja: Učestvuje u dijalozima, razmenjuje informacije i mišljenje sa sagovornikom o opštim temama i interesovanjima, koristi engleski jezik za komunikaciju u opštem kontekstu u trajanju od 5 do 7 minuta; U oblasti pismenog izražavanja: Piše beleške, poruke i poslovna pisma na razložan i argumentovan način, rezimira pročitan ili preslušani tekst o opštim temama i iznosi sopstveno mišljenje, piše formalna pisma (prijave za prakse ili stipendije), piše elektronske poruke, tekstualne poruke, učestvuje u diskusijama na blogu na nivou B2 po „Zajedničkom evropskom referentnom okviru za jezike”.
II godina
CS202 Objektno – orijentisano programiranje 2
Uvod u napredne koncepte u programiranju sa aspekta objektno – orijentisanog programiranja. Predmet upoznaje studente sa konceptima upravljanja greškama i izuzecima, višenitnosti, rada sa GUI i upravljanjem događajima, rad sa strukturama podataka i generičkim tipovima podataka, mrežnog programiranja, kreiranjem Java aplikacija nad bazama podataka, kao i internacionalizacijom i lokalizacijom. Student se osposobljava da samostalno razvija srednje i složene programe u Javi. Teme koje se obrađuju na predmetu su: Razvoj i upravljanje događajima u GUI primenom napredne Java-FX platforme; Primena niti i pisanje višenitnih programa kroz konkurentno i paralelno programiranje; Rukovanje greškama i izuzecima u Java programima; Rad sa generičkim klasama i metodama; Rad sa strukturama podataka u Javi: liste, redovi, stekovi, setovi i mape primenom Java Collections Framework; Integrisanje SQL upita u Java programe i kreiranje Java aplikacija nad bazama podataka – standardni pristup i ORM; Lokalizacija i internacionalizacija u Javi; Kreiranje programa sa složenim nivoom kompleksnosti.
IT250 Baze podataka
Baza podataka je centralno mesto svakog informacionog sistema. Prvenstveni cilj ovog predmeta je upoznati studente sa osnovnim pravilima i principima koji se koriste u slučaju dizajniranja baza podataka primenom E/R tehnike, postupka inverznog inženjeringa i pravila normalizacije podataka. Takođe, studenti treba da savladaju sintaksu i semantiku SQL-a kako bi se baze podataka nakon dizajniranja uspešno kreirale, implementirale i koristile. Značajno mesto u okviru ovog predmeta je posvećeno i proučavanju postojećih standarda za pristup podacima (ODBC i JDBC) kao i ulozi koju u rešavanju takvih problema danas ima XML. Predmet ne obezbeđuje samo potrebna znanja onima koji će se baviti samo projektovanjem baza i izradom aplikacija nad bazama podataka, već i onima koji žele da se usmere na administraciju baza podataka, jer je deo predmeta posvećen i ovim temama. Na predmetu se izučavaju sledeće teme: Upravljanja informacijama; Arhitektura organizacije podataka; Arhitektura organizacije podataka – relacioni model baza podataka; Konceptualno modeliranje podataka primenom E/R dijagrama; Konceptualno modeliranje podataka primenom naprednih E/R dijagrama; Primeri dobrih konceptualnih modela; Veza konceptualni – logički- fizički model baze podataka; Transformacija konceptualnog u logički i fizički model baze podataka; Arhitektura organizacije podataka- normalizacija podataka, SQL za definiciju podataka (DDL) ; SQL za manipulaciju podacima (DML) – rad sa jednom tabelom; SQL: Naredba SELECT za rad sa više tabela; Kreiranje pogleda; Upravljanje okruženjem baza podataka; Administracija baza podataka; Zaštita baza podataka; Distribucija baza podataka.
CS215 Diskretne strukture
Predmet Diskretne strukture ima dva osnovna cilja. Prvi je upoznavanje sa osnovnim konceptima i tehnikama koje se tiču diskretnih matematičkih struktura, posebno sa onim koje imaju neposrednu primenu u računarstvu. Drugi cilj je upoznavanje studenata sa metodama matematičkog i logičkog zaključivanja.
Studenti će biti osposobljeni da rešavaju probleme bazirane na stečenim znanjima koja uključuju osnove matematičke logike, osnove teorije skupova, relacije, funkcije, algoritme, osobine celih brojeva, kongruencije, rekurentne relacije, teoriju grafova i algoritme sa njima, strukture za dinamičko skladištenje podataka, relacije uređenja, mreže, matematičke strukture, linearne prostore i preslikavanja. Predmet obuhvata sledeće teme: Osnove matematičke logike; Osnove teorije skupova: Operacije nad skupovima, konačni, prebrojivi i neprebrojivi skupovi; Kardinalnost skupova; Klase skupova, partitivni skup i particije; Matematička indukcija; Relacije: Tipovi relacija, relacije ekvivalencije, relacije uređenja; Funkcije: 1-1, NA i invertibilne funkcije, primeri funkcija, aritmetika po modulu M, Algoritmi: Osnovni pojmovi, rekurzivno definisane funkcije, numerički algoritmi; Osobine celih brojeva: Osnovni pojmovi, fundamentalna teorema Aritmetike; Dobro uređenje; Algoritam deljenja; Deljivost, prosti brojevi, NZD i NZS, Euklidov algoritam; Kongruencije: Uzajamno prosti brojevi, fundamentalna teorema aritmetike, relacije kongruencije, jednačine kongruencije; Rekurentne relacije: Linearna rekurentna relacija sa konstantnim koeficijentima, rešavanje homogene linearne rekurentne relacije drugog reda; Grafovi: Strukture za dinamičko skladištenje podataka, putevi u grafu, izomorfni i homeomorfni grafovi, komponente povezanosti, Ojlerovi i Hamiltonovi putevi, težinski, potpuni, regularni, bipartitni grafovi, planarni grafovi, drveta, algoritmi sa grafovima, bojenje grafova; Relacije uređenja: Parcijalno uređeni skupovi, topološko sortiranje; Ekstremni elementi; Mreže; Modelovanje i mogućnost primene specijalnih grafova u različitim oblastima računarskih nauka.
SE201 Uvod u softversko inženjerstvo
Cilj predmeta je da studenti razumeju i ovladaju metodima i tehnikama razvoja profesionalnog softvera, realizacija sledećih nastavnih jedinica: Softverski procesi, agilni razvoj softvera, inženjerstvo zahteva, modelovanje sistema, projektovanje arhitekture softvera, projektovanje i implementacija softvera, testiranje softvera i njegova evolucija. Poseban cilj predmeta je osposobljavanje studenta za samostalan rad pri izradi softverskog proizoda. Zadaci koje ovaj predmet treba da ostvari je ovladavanje teorijskim, metodološkim i praktičnim znanjima razvoja softverskog inženjeringa, koja se primenjuju kroz upotrebu savremenih projektantskih alata.
Predmet osposobljava studente da razviju jasne, koncizne i formalizovane zahteve u skladu sa realnim potrebama korisnika, da primene principe projektovanja distribuiranih sistema, da izvrše analizu i projektovanje objektno-orijentisanih sistema, primenom UML modela i da primene tehnike merenja kvaliteta softvera. Teme koje se izučavaju na predmetu su: Softversko inženjerstvo i njegovo mesto kao inženjerska disciplina; Softverski procesi: Modeli procesa, model vodopada, aktivnosti i specifikacija procesa; Faze softverskih procesa; Inkrementalni razvoj; Spiralni model razvoja; RUP; Agilni razvoj softvera: Agilne metode, ekstremno programiranje, upravljanje agilnim projektima i promena agilnih metoda u razvoju softvera; Inženjerstvo zahteva: Funkcionalni i nefunkcionalni zahtevi, specifikacija i dokumenti sa zahtevima; Procesi inženjerstva zahteva, prikupljanje i analiza zahteva, scenariji UML slučajeva korišćenja, validacija zahteva i upravljanje zahtevima; Modelovanje sistema sa UML: Konteksni modeli, modeli interakcija, strukturni modeli, modeli ponašanja i modelima vođen razvoj softvera; Projektovanje arhitekture softverskog sistema: Arhitektonski pogledi, slojevita arhitektura, arhitektura skladišta podataka, arhitektura cevi i filtera, klijent-server arhitektura, sistemi transakcione obrade i informacioni sistemi; Projektovanje i implementacija softvera: Projektovanje OO sistema primenom UML, projektovanje arhitekture softvera, modeli projektovanja, šabloni projektovanja softvera, implementacija softvera; Testiranje softvera: Testiranje u razvoju, testiranje jedinice, testiranje komponenti i testiranje sistema; Evolucija softvera: Procesi evolucije i nihova dinamika, održavanje sistema, reinženjering softvera, preventivno održavanje i upravljanje starim sistemima; Agilni razvoj softvera; Upravljanje projektima razvoja softvera.
NT213 Engleski za informatičare
Cilj nastave engleskog jezika je podizanje nivoa znanja engleskog jezika struke na nivo B2+/C1 „Zajedničkog evropskog okvira za žive jezike“. Na predmetu Engleski za informatičare, studenti treba da utvrde upotrebu gramatike na višem srednjem nivou, prošire opšti, a naročito, stručni vokabular, uvežbavaju njihovu upotrebu u različitim jezičkim funkcijama i usavršavaju i integrišu sve četiri jezičke veštine (čitanje, pisanje, slušanje i govor). Nakon položenog predmeta Engleski za informatičare, student će biti osposobljen: U oblasti Razumevanja govora: Adekvatno reaguje na usmene poruke u vezi sa aktivnostima u stručnom kontekstu; Razume poruku dužih izlaganja o poznatim temama u kojima se koristi stručni jezik i razgovetan izgovor; Razume informacije o relativno poznatim i bliskim sadržajima i složenija uputstva u stručnom kontekstu; Razume opšti i stručni smisao informativnih radijskih i televizijskih emisija o bliskim temama, u kojima se koristi stručni govor; Razume suštinu iskaza (sa)govornika koji razgovaraju o stručnim temama; Izvodi zaključke posle slušanja nepoznatog teksta u vezi sa vrstom teksta, brojem sagovornika, njihovim međusobnim odnosima i namerama, kao i u vezi sa stručnim sadržajem; U oblasti razumevanja pročitanog teksta: Razume duže tekstove o konkretnim temama iz stručne literature; Pronalazi, izdvaja i razume u informativnom tekstu o poznatoj stručnoj temi osnovnu poruku i suštinske informacije; Identifikuje i razume relevantne informacije u pisanim prototipskim dokumentima (pismima, prospektima) i drugim nefukcionalnim tekstovima (novinskim vestima, člancima u časopisima, reportažama i oglasima); Prepoznaje osnovnu argumentaciju u stručnim tekstovima (npr. novinskim kolumnama ili pismima čitalaca, blogovima, forumima kao i drugim vrstama komentara); Određuje značenje nepoznatih reči na osnovu konteksta; U oblasti usmenog izražavanja: Učestvuje u dijalozima, razmenjuje informacije i mišljenje sa sagovornikom o stručnim temama i interesovanjima; Koristi engleski jezik kao jezik komunikacije u stručnom kontekstu, prilagođavajući svoj govor komunikativnoj situaciji, u vremenskom trajanju od pet do sedam minuta; Izlaže unapred pripremljenu prezentaciju u trajanju od osam do deset minuta na određenu temu (iz domena struke i ličnog interesovanja); Ukazuje na značaj određenih iskaza i delova iskaza prigodnom gestikulacijom i mimikom ili naglašavanjem i intonacijom; U oblasti pismenog izražavanja: Piše na razložan i argumentovan način o temama iz svog okruženja i područja interesovanja; Sastavlja izveštaj na osnovu izvedenog istraživanja iz oblasti struke.
CS203 Algoritmi i strukture podataka
Cilj predmeta je da student shvati ogromnu ulogu i značaj algoritama i struktura podataka u rešavanju raznih problema, kao i da postane sposoban da razvija efikasne programe primenom rekurzije, lista, redova, stekova, setova i mapa, i sortiranja. Predmet, takođe, ima za cilj da studenti nauče kako da razvijaju programe za pretraživanje korišćenjem binarnog i AVL stabla, kao i da razvijaju programe primenom heširanja, grafova i težinskih grafova. Zadaci koje studenti dobijaju u toku semestra im omogućavaju da unaprede veštine neophodne za razvoj, opis i validaciju algoritamskih rešenja za nove probleme na koje naiđu u svojoj profesionalnoj karijeri. Teme koje se obrađuju na predmetu su: Uvod u algoritme; Analiza složenosti algoritama; Rekurzija – Napredna analiza; Sortiranje; Liste; Stekovi, redovi i prioritetni redovi; Stabla; Stabla pretraživanja; Heširanje; Grafovi; Težinski grafovi; Algoritmi i stringovi; Konačni automati; Teško rešivi problemi; Kompresija podataka.
CS230 Distribuirani sistemi
Na ovom predmetu studenti se uvode u koncepte organizacije i razvoja distribuiranih sistema primenom Java Enterprise Edition platforme i njihovo razlikovanje od sistema sa centralizovanom arhitekturom. Upoznavanje sa različitim tipovima distribuiranih sistema. Upoznavanje sa različitim tehnikama i alatima baziranih na najznačajnijoj JEE platformi za razvoj i održavanje distribuiranih sistema. Upoznavanje koncepta distribuiranog lakog klijenta kroz tehnologije JSP i JSF. Upoznavanje sa servlet tehnologijom kao osnovom savremenog razvoja distribuiranog softvera. Upotreba udaljenih poziva kroz implementaciju putem: Veb servisa, JMS sistema kao zamene za zastarele CORBA funkcionalnosti, EJB zrna u kombinaciji sa udaljenim – distribuiranim interfejsima; Kreiranje i primena REST i SOAP servisa u distribuiranim aplikacijama; Upoznavanje sa servisima u oblaku za podršku distribuiranim aplikacijama; Teme koje se obrađuju na predmetu su: Sistemi sa distribuiranom i centralizovanom arhitekturom – upoznavanje, poređenje, prednosti i nedostaci; Primeri sistema sa distribuiranom arhitekturom; Platforme za razvoj softverskih rešenja sa distribuiranom arhitekturom – JEE; Servlet tehnologija kao osnov razvoja distribuiranih sistema baziranih na JEE platformi; Razvoj distribuiranog lakog klijenta baziranog na primeni servlet tehnologija: JSP i JSF; Primena CDI zrna za razvoj serverske strane distribuiranog softverskog rešenja; Udaljeni pozivi primenom JMS sistema kao zamene za zastarele CORBA funkcionalnosti; Kreiranje i upotreba različitih tipova EJB zrna u kombinaciji sa udaljenim – distribuiranim interfejsima; Primena veb servisa u distribuiranim sistemima; Primena servisa u oblaku u distribuiranim sistemima.
CS130 C/C++ Programski jezik
Cilj predmeta je da student postane sposoban da koristi sve bitne elemente kako C tako i C++ programskog jezika. Ovo podrazumeva da se student osposobi da piše tj. izrađuje složene C/C++ konzolne aplikacije, kako strukturne programe u C-u, tako i objektno orijentisane (OO) programe u C++-u, korišćenjem integrisanih razvojnih okruženja za C/C++ programiranje. Studenti se upoznaju sa tipovima podataka, promenljivama, kontrolom toka programa, petljama, funkcijama, nizovima i stringovima, kao i sa konceptima OO programiranja. Sve važne osobine i karakteristike ovog programskog jezika biće prodiskutovane i ilustrovane tako da će studenti naučiti sve bitne razlike koje postoje u sintaksi, osobinama i memorijskom modelu između C/C++ i drugih programskih jezika. Teme koje se obrađuju na predmetu su: Uvod u C; Uslovni iskazi i petlje; Funkcije; Nizovi i stringovi; Pokazivači; Strukture; Unije; Upravljanje memorijom; C-pretprocesor; Rad sa fajlovima; Otklanjanje grešaka; Uvod u C++; Osnovni elementi C++ jezika; Uvod u C++ klase i objekte; Sakrivanje podataka; Statički članovi klase; Preklapanje funkcija i operatora; Kompozicija; Nasleđivanje; Polimorfizam; Apstrakcija; Šabloni; C++ Biblioteka i STL; Upravljanje izuzecima; Ulaz/Izlaz u C++-u; Moderni C++.
MA273 Osnove verovatnoće i statistike
Kroz ovaj predmet studenti ovladavaju osnovnim metodama iz verovatnoće i statističke analize i sposobnostima primene tih metoda u rešavanju problema iz prakse. Teme koje se obrađuju na predmetu su: Slučajni događaji; Pojam verovatnoće; Aksiome verovatnoće; Geometrijska verovatnoća; Kombinatorika; Princip ptičjeg gnezda; Uslovna verovatnoća; Nezavisnost događaja; Formula totalne verovatnoće; Bajesova formula; Bernulijeva šema; Jednodimenzionalne slučajne promenljive diskretnog i neprekidnog tipa. Dvodimenzionalne slučajne promenljive diskretnog tipa; Numeričke karakteristike slučajnih promenljivih; Neke važnije raspodele; Uslovne raspodele; Informacija i entropija; Jednakost Čebiševa; Muavr-Laplasova formula; Zakon velikih brojeva; Centralna granična teorema; Pojam, predmet i zadatak statistike; Etape u statističkom zaključivanju; Uzorak; Prikazivanje statističkih podataka; Statistička analiza podataka, mere centralne tendencije, mere varijacije; Teorija ocene, metod maksimalne verodostojnosti; Intervali poverenja; Testiranje statističkih hipoteza – parametarski i neparametarski testovi; Linearna regresija i korelacija; Modeli analize varijansi.
NT475 Pravo na internetu
Usvajanje osnovnih i primenjenih znanja iz oblasti prava na Internetu, što podrazumeva: Razumevanje osnova pravnog sistema Republike Srbije; Razumevanje izvora prava na Internetu i njihove međusobne hijerarhije; Razumevanje potrebe za zaštitom podataka o ličnosti u sajber prostoru i osnovnih postulata GDPR Uredbe; Razumevanje uloge i značaja prava intelektualne svojine u oblasti informaciono-komunikacionih tehnologija; Razumevanje pravnih aspekata čuvanja podataka o ličnosti u klaudu; Razumevanje i unapređivanje znanja u oblasti visokotehnološkog kriminala i njegovih pojavnih oblika, kao što je fišing; Razumevanje značaja pravnog regulisanja ponašanja na društvenim mrežama (pre svega, Fejsbuku); Razumevanje značaja i uloge pravnog sistema u oblasti elektronske trgovine i zaključivanja digitalnih ugovora, posebno u svetlu blokčejn tehnologija. Teme koje se obrađuju na predmetu su: 1. Osnove prava; 2. Izvori prava na Internetu; 3. Pravo intelektualne svojine; 4. Pravna zaštita računarskih programa i baza podataka; 5. Elektronska uprava; 6. Pravna zaštita naziva internet domena; 7. Visokotehnološki kriminal; 8. Pravo Evropske unije o zaštiti podataka o ličnosti; 9. Pravo Republike Srbije u oblasti zaštite ličnih podataka; 10. Pravni aspekti čuvanja podataka u internet oblaku (cloud); 11. Fišing kao vid krađe ličnih podataka na Internetu; 12. Pravni aspekti u vezi sa internet špijunažom i hakovanjem; 13. Pravni aspekti korišćenja društvenih mreža i pravila o oglašavanju Republike Srbije; 14. Elektronska trgovina; 15. Ugovori na internetu.
III godina
IT354 Veb sistemi 1
Predmet uvodi studente u oblast projektovanja i programiranja klijentske strane (front – end). Cilj predmeta je da kroz upoznavanje studenata sa funkcionisanjem Interneta i Internet servisa, obuči studente za razvoj frontend veb aplikacija primenom specifičnog radnog okvira baziranog na JavaScript / TypeScript notaciji – Angular. Pored razvijanja poslovne logike, kodiranjem Angular datoteka, studenti će steći i veštine dizajniranja veb korisničkog interfejsa, optimizacije i redukcije frontend koda, primene šablona za razvoj frontend aplikacija. Posebno, studenti će naučiti da obavljaju standardne i Mock – simulirane testove nad kreiranim frontend-om, primenom savremenih test alata poput: Jasemin i Karma. Konačno, savladavanjem ovog predmeta student će steći veštine i znanja neophodna za obavljanje zadataka junior veb frontend programera. Teme koje se obrađuju na predmetu su: Pregled i primena naprednih HTML koncepata; Primena stilizacije na klijent strani primenom CSS jezika i Bootstrap radnog okvira; Osnovni i napredni elementi jezika JavaScript; Elementi Angular okvira i jezika TypeScript kao proširenja standardnog jezika JavaScript; Rad sa komponentama u Angularu; Struktura Angular aplikacije; Rad sa formama; Koncept umetanja zavisnosti; Rukovanje HTTP zahtevima i rutiranje u Angular aplikacijama; Rad sa veb servisima; Reaktivno programiranje u Angularu i napredne komponente; Rad na naprednom Angular projektu.
CS320 Operativni sistemi
Studenti se upoznaju sa osnovnim pojmovima i principima rada operativnih sistema, uključujući arhitekturu, ciljeve, strukturu, metode i modele različitih operativnih sistema. Studenti se najpre uvode u principe rada operativnih sistema kroz istorijski pregled i kroz koncepte realizacije operativnih sistema. Studenti se zatim upoznaju sa sistemskim pozivima i pojmovima procesa i niti, raspoređivanjem procesa i problemima koji nastaju u interprocesnoj komunikaciji. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču upravljanja memorijom, sistemima datoteka, osnovnim pojmovima iz virtualizacije, kao i načinima rada Linux, Android i savremenih Windows operativnih sistema, razvijajući ujedno svoje sposobnosti rešavanja problema u ovim sistemima. Teme koje se obrađuju na predmetu su: Istorijski pregled operativnih sistema; Koncepti operativnih sistema; Sistemski pozivi; Struktura operativnih sistema; Procesi i niti; Interprocesna komunikacija; Algoritmi raspoređivanja; Upravljanje memorijom; Straničenje i segmentacija; Sistemi datoteka; Zastoji i prevencija zastoja; Uvod u virtualizaciju; Pregled Windows operativnih sistema; Pregled Linux i Android operativnih sistema; Projektovanje operativnih sistema.
IT380 Inženjerstvo i integracija sistema
Na ovom predmetu se izučava proces integracije različitih računarskih sistema i softverskih aplikacija, ispitivanjem trenutnih i novih trendova, strategija i tehnika za efikasno sprovođenje integracije sistema. Na predmetu će studenti sagledati aktivnosti sistemske integracije kao deo životnog ciklusa razvoja računarskog sistema i kao deo sistemskog inženjeringa uopšte. Studenti će takođe naučiti kako da kreiraju strategiju integracije i kako da je usklade sa postojećom arhitekturom, imajući u vidu neophodno praćenje ključnih faktora rizika. Teme koje se izučavaju na ovom predmetu su: (1) Razlozi za integraciju sistema; (2) Simbioza između integracije i projektovanja sistema; (3) Definisanje strategije integracije; (4) dokumentovanje zahteva integracije korišćenjem modela poslovnih procesa; (5) Integracija interfejsa, funkcija, karakteristika i fizičkih elemenata; (6) Životni ciklus integracije; (7) Uticaj arhitekture na životni ciklus sistema; (8) Izbor efikasne metodologije za integraciju; (9) Prednosti i mane između gotovih rešenja i rešenja koja treba da se razvijaju; (10) Kreiranje integracione arhitekture; (11) Definisanje i upravljanje interfejsima; (12) Integracija u praksi: Planiranje, vođenje, izvršavanje i praćenje; (13) Različite komponente testa upotrebljivosti; (14) Uloga devops-a u implementaciji integracije.
CS360 Veštačka inteligencija
Veštačka inteligencija je danas jedna široka naučna oblast koju je teško u potpunosti pokriti jednim predmetom, ako se nastoji da se studentima pruži dovoljno znanja da oni razumeju suštinu svih značajnih metoda veštačke inteligencije. Jedna od mogućih podela ovako široke oblasti je podela na dva dela. U prvom delu su metode predstavljanja znanja u nekoj oblasti primene na osnovu koga, inteligenti softverski sistemi, koji se najčešće zovu inteligentnim agentima, mogu da zaključuju i da donose odluke na osnovu koje određenim akcijama deluju na okruženje. Drugi deo veštačke inteligencije ne polazi od utvrđenog znanja, već od velikog broja prikupljenih podataka, čijom analizom uočavaju veze između ulaznih podataka nekog realnog sistema i njegovog ponašanja. To je pristup u kome inteligenti sistem uči kako da se ponaša na bazi prikupljenih podataka u stvarnosti. To je oblast tzv., mašinskog učenja. Ovaj predmet, obuhvata samo prvi deo ovako podeljene oblasti veštačke inteligencije, tj. izučava ponašanja inteligentnog softverskog sistema na osnovu unetog domenskog znanja, predstavljenog na neki od načina koji softverski sistem razume (na primer, u vidu pravila) i zaključivanja na osnovu obrade tako predstavljenog znanja. Drugi deo oblasti veštačke inteligencije kojom se inteligenti sistem uči na osnovu unetih podataka, izučava se u predmetu CS375 Mašinsko učenje.
Izborni predmet A1
CS322 C# programski jezik
Cilj ovog predmeta je da student bude osposobljen da koristi sve bitne elemente jezika C# tj. Visual C#, i da se osposobi da pravi grafičke aplikacije pomoću Visual C#. Cilj predmeta je da osposobi studente da koriste radne okvire za kreiranje vizualnih aplikacija „Windows Presentation Foundation – WPF“. Takođe, cilj predmeta je da obuči studente da koriste moderne veb radne okvire kao što je ASP.NET Core (MVC), sa fokusom na kreiranje WEB API aplikacija. Na predmetu se izučavaju sledeće teme: Uvod u Windows Presentation Foundation (WPF); XAML; WPF kontrole; Layout; Dijalozi; Meniji i komande; Toolbars; Status bars; WPF resursi; Povezivanje podataka; Karakteristike ASP.NET Core; MVC; Upoređenje ASP.NET Core sa ASP.NET MVC i ASP.NET Web Forms; MVC i Entity Framework Core; Veb keširanje; Modularni razvoj; Rukovanje greškama.
CS330 Razvoj mobilnih aplikacija
Predmet uvodi studente u oblast razvoja mobilnih aplikacija na Android platformi. Posebno se insistira na razvoju aplikacija koje podrazumevaju najnoviju verziju operativnog sistema i najviše API nivoe. Cilj predmeta predstavlja razumevanje i savladavanje osnovnih, kao i naprednih Android koncepata i principa, kao i najnovijih razvojnih alata i jezika neophodnih za uspešno kreiranje aplikacija za mobilne uređaje koji rade na Android platformi. Posebno, studenti će pored Jave naučiti i zvaničan jezik Androida – Kotlin, kao još jedan novi jezik Javine virtuelne mašine. Posebno, predmet će prikazati kako je moguće primenom cross-platform pristupa razvijati mobilne aplikacije za različite mobilne platforme. Savladavanjem ovog predmeta, studenti će u potpunosti biti osposobljeni za poslove junior Android programera. Na predmetu se izučavaju sledeće teme: Uvod u Android; Osnovni elementi Android aplikacije: Aktivnosti, fragmenti i namere; Razvoj GUI u Androidu; Rad sa pogledima, grupama pogleda, slikama i menijima u Android aplikacijama; Čuvanje podataka u Android aplikacijama primenom datoteka, deljenih preferencija i baza podataka; Napredno čuvanje i pristup podacima putem provajdera sadržaja; Rad sa porukama u Android aplikacijama; Kreiranje i rad sa servisima u Android aplikacijama; Digitalno potpisivanje i objavljivanje aplikacije na Google Marketu; Elementi Kotlin jezika; Konverzija postojećeg Java koda u Kotlin; Razvoj Android aplikacija primenom Kotlin jezika; Hibridni razvoj mobilnih aplikacija – cross-platform pristup; Razvoj naprednih Android projekata i njihova integracija sa veb projektima.
IT390 Profesionalna praksa i etika
Usvajanje relevantnih teorijskih i praktičnih saznanja iz poslovne prakse i etike koja omogućavaju adekvatno delovanje u poslovnom okruženju. Spoznavanje da primena etike u poslovanju daje sigurnost i budućnost razvoja svakog poslovnog sistema. Uočavanje specifičnosti koje profesionalna praksa i etika imaju u oblasti informacionih tehnologija. Na predmetu se izučavaju sledeće teme: Uvod u etiku kao nauku o moralu; Uvod u poslovnu i profesionalnu etiku; Odgovornost pojedinca na radnom mestu; Zaštita ljudskih prava na radnom mestu; Korporativna društvena odgovornost; Etičke vrline i načela u poslovanju; Liderstvo; Preduzetništvo; Računarska etika; Aktuelna pitanja profesionalizma u oblasti informacionih tehnologija; Privatnost u doba informaciono-komunikacionih tehnologija; Intelektualna svojina i etika; Etika i visokotehnološki kriminal; Etičke dileme i nedoumice u poslovanju; Prevencija, prepoznavanje i sprečavanje mobinga.
IT355 Veb sistemi 2
Predmet uvodi studente u oblast projektovanja i programiranja serverske strane. Izučavaju se veb klijent-server i višeslojne arhitekture, servisno orijentisana arhitektura, aspekt-orijentisano programiranje (AOP), inverzija kontrole sa ubacivanjem zavisnih komponenti (DI), J2EE tehnologija i druge savremene tehnike. Kroz ovaj predmet student će biti upoznat sa Java baziranim okvirom za projektovanje i programiranje složenih veb aplikacija – Spring okvirom, tehnikama osiguranja bezbednosti veb sistema, tehnikama i alatima testiranja veb aplikacija. Posebno, cilj predmeta je savladavanje sledećih Spring tema: Savladavanje osnovnih i naprednih Spring IoC koncepata, savladavanje tehnika aspektno-orijentisanog programiranja u Springu, rešavanje problema bezbednosti veb aplikacija u Springu, upravljanje veb tokovima u Springu, rad u Spring MVC okviru, savladavanje Spring REST servisa, rad sa bazama podataka (Data Access) u Springu kroz okvire Spring JDBC, Spring ORM i Hibernate, testiranje veb aplikacija kroz Spring podršku za JUnit4/5 i TestNG6, rad sa sistemskim porukama u Spring, primena Spring Boot okvira – a za olakšavanje podešavanja i razvoja Spring aplikacija, integracija okvira Angular sa Springom. Teme koje se obrađuju na predmetu su: Uvod u Spring okvir; Spring IoC kontejner; Aspektno – orijentisano programiranje u Spring okviru; JSP i JSTL; Spring MVC; Uvod u Spring Boot; Spring Boot napredni koncepti – napredni alati i tehnologije; Objektno relaciono mapiranje u Spring okviru; Spring REST; Spring Security podokvir; Spring Messaging; Testiranje aplikacija u Spring okviru; Integracija Spring (Boot) i Angular; Razvoj složenih klijent – server aplikacija.
IT382 Zaštita računarskih sistema
Studenti sa upoznaju sa konceptom sigurnosti podataka i sistema, kao i sa bezbednosnom politikom, napadima, ranjivostima i šifrovanjem. Predmet osposobljava studente da prepoznaju probleme koji su vezani za obezbeđenje sigurnosti informacija i računarskih sistema, kao i da prepoznaju koji su odgovarajući mehanizmi zaštite. Studenti uče o osnovnim pojmovima digitalne forenzike i digitalnih dokaza, kao i bezbednosti različitih operativnih sistema. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču osnovnih pojmova zaštite računarskih sistema. Teme koje se obrađuju na predmetu su: Uvod u zaštitu računarskih sistema; Napadi i pretnje, rizici i ranjivost; Modeli sigurnosti; Bezbednosni mehanizmi; Kriptografski sistemi; Sistemi za detekciju i sprečavanje upada; Sigurnost mrežnog sloja; Sigurnost transportnog i aplikacionog sloja; Mrežni zaštitni zidovi; Bezbednost bežičnih računarskih mreža; Bezbednost operativnih sistema (Linux); Bezbednost operativnih sistema (Windows); Bezbednost e-poslovanja; Bezbednost informacionih sistema; Uvod u digitalnu forenziku.
IT335 Administracija računarskih sistema i mreža
Cilj predmeta je da studenti steknu neophodna znanja o sistemskoj i mrežnoj administraciji putem Microsoft i Linux platformi. Kroz uporednu analizu i akcenat na sličnostima i razlikama u administraciji baziranoj na različitim operativnim sistemima, studenti bi trebalo da steknu sveobuhvatni uvid u ulogu koju administrator ima u održavanju računarskih sistema i mreža, upravljanju korisnicima, kao i o bezbedonosnim aspektima nad resursima koji su mu povereni. Studenti stiču i razvijaju praktična znanja vezana za funkcionisanje i kontrolu nad radom mrežnog operativnog sistema i računarskih servera primenom softverskih alata na različitim Linux distribucijama i Windows familiji operativnih sistema. Studenti će biti osposobljeni da razumeju i upravljaju specijalizovanim funkcijama koje uključuju kontrolu nad mrežnim resursima, memorijom, korisničkim nalozima, skladištenjem podataka, deljenjem fajlova, pravljenjem rezervnih kopija, upravljanjem e-poštom, hostovanjem veb lokacija, postavljanjem pravila za zaštitni zid, automatizovanim ažuriranjem i instalacijom softvera u mreži, daljinskim pristupom praćenja performansi različitih delova sistema i mreže, predupređivanjem i rešavanjem problema. Teme koje se obrađuju na predmetu su: Sistemske komponente i uloga administratora u Windows i Linux mrežnim okruženjima, upravljanje hostovima, upravljanje korisnicima, modeli mrežne i sistemske administracije, konfiguracija i održavanje sistema i mreža, dijagnostika, usluge na nivou aplikacije, usluge na nivou mreže, principi bezbednosti, implementacija bezbedonosnih procedura.
CS310 Skripting jezici u veb razvoju
Predmet uvodi studente u oblast projektovanja i programiranja klijent / server aplikacija oslanjajući se na alate i tehnologije bazirane na najzastupljenijim skripting jezicima i radnim okvirima. Uvažavajući međunarodne standarde, kao i zahteve aktuelnog tržišta, predmet će staviti fokus na primenu klijent skripting jezika za kreiranje veb sajtova, kao i klijentskih delova aplikacija sa klijent / server arhitekturom. U daljem radu predmet će se fokusirati na skripting bazirane radne okvire sa ciljem obezbeđivanja naprednih setova alata za ubrzani razvoj, implementaciju i održavanje kompletnih savremenih veb aplikacija. Teme koje se obrađuju na predmetu su: Osnove skripting programiranja; Ugrađene strukture podataka, funkcije i objektno-orijentisani elementi skripting jezika; Pregled aktuelnih radnih okvira za razvoj veb aplikacija baziranih na skripting pristupu: Laravel, Django; Radni okviri – veb programiranje i modeli; Kreiranje API pogleda rukovanje HTTP zahtevima; Primena radnih skripting okvira za autentifikaciju i obezbeđivanje kreirane veb aplikacije; Testiranje skripting veb aplikacija; Upotreba šablona razvoja; Interakcija sa aplikacijama treće strane.
Izborni predmet C1
CS375 Mašinsko učenje
U ovom predmetu izučava se deo veštačke inteligencije koji se bavi metodama učenja inteligentnih sistema da se ponašaju na osnovu analize velikog broja podataka na ulazu u sistem. Tako naučen sistem u određenom stepenu tačnosti, oponaša realni sistem koji predstavlja. Ne koristi se jasno i eksplicitno definisanje i predstavljanje znanja, jer je ponašanje ovakvih inteligentnih sistema, na osnovu implicitno definisanog znanja. Sistem je prethodno naučio da se ponaša kao i realan sistem u slučaju izloženosti dejstvu određenog seta ulaznih veličina promenljivih sistema, te sistem reaguje na način koji je ”naučio” u fazi učenja. Ova oblast veštačke inteligencije se naziva mašinsko učenje, jer se naučena ”mašina”, tj. inteligentni softverski sistem ponaša kako treba, a u skladu sa nizom vrednosti ulaznih promenljivih sistema. Pružajući pregled teorije i prakse mašinskog učenja, ovaj predmet istražuje centralne koncepte i algoritme nadgledanog, nenadgledanog učenja i učenja sa pojačanjem.
SE350 Razvoj softvera u realnom vremenu
Sistem se naziva „real-time” sistemom (RTS) kada je u interakciji sa stvarnim svetom (fizičkim procesom) u okviru vremenskih zahteva. Odgovor RTS ne samo da mora biti tačan, već mora stići u pravo vreme ili se smatra da je sistem zakazao. Ovo je slučaj aktiviranja vazdušnog jastuka ili ABS-a u automobilu, da damo dva kritična primera, ali i robota koji mora da uhvati loptu u letu. Na kraju predmeta student će razumeti razliku između brzog i sistema u realnom vremenu, kao i razliku između tvrdog, mekog ili kritičnog sistema u realnom vremenu. Znaće da analizira, dizajnira i implementira sisteme zasnovane na mikroračunarima sa zahtevima vremenske kritičnosti, pouzdanosti i cene. Na predmetu se izučavaju sledeće teme: Uvod u „real-time” sisteme (RTS); Objašnjenje različitih primera u kojima analiza i upotreba tehnika u realnom vremenu postaje suštinska; RTS koji su „pasivni“ ili bez računarskih sposobnosti; Primeri RTS-a koji nemaju računarske sposobnosti da bi mogli da reše moguće probleme „istovremenosti“ (concurrency problems): RT mreže, liftovi, baterije, raskrsnice ili železničke pruge, drugi primeri koji proširuju interesovanja studenata, optimalno planiranje. Aktivni RTS ili sa računarskim mogućnostima; Onlajn zakazivanje i prevencija: Optimalni planeri, „Rate monotonic”, “Deadline monotonic”, „Earliest deadline first“. Implementacija RT operativnog sistema u mikroprocesoru; Detalji koje treba uzeti u obzir pri migraciji ili primena operativnog sistema u realnom vremenu na mikroprocesoru; Sistemi visokog nivoa. „Bandwitdth” serveri i njihova implementacija, RTS sa više od jednog mikrokontrolera.
IT375 Kriptografija i kripto tehnologija
Studenti se upoznaju sa predmetom izučavanja kriptografije, kao i sa različitim klasama kriptografskih sistema i osnovnim nivoima kriptoanalitičkih napada. Predmet pruža osnove vezane za modularnu aritmetiku i teoriju brojeva i pregled algoritama za faktorizaciju velikih brojeva, te na taj način studenti stiču neophodna matematička znanja koja se koriste u kriptografiji. Studenti se upoznaju sa osnovnim karakteristikama blokovnih kriptografskih sistema, sa i bez ključa, i tehnikama za formiranje digitalnog potpisa i razmenu ključa, kao i sa metodama kriptoanalize. Nakon savladavanja sardžaja programa predmeta, studenti: poseduju osnovna saznanja o kriptografiji i kriptotehnologiji; su upoznati sa klasičnom tehnikom šifrovanja; su upoznati sa matematičkim osnovama koje su neophodne za razumevanje kriptografije; su upoznati sa blokovskim algoritmima; poseduju osnovna znanja iz oblasti simetirčne i asimetrične kriptografije; su upoznati sa infrastrukturom javnih ključeva (PKI) kao i sa Heš algoritmima; su stekli osnovna znanja iz oblasti steganografije; su upoznati sa metodama kritptoanalize. Na predmetu se izučavaju sledeće teme: Klasična kriptografija; Klasične tehnike šifrovanja; Matematičke osnove; Blokovske šifre i DES algoritam; AES algoritam; Kombinovanje blokovskih šifara; Generatori pseudoslučajnih sekvenci i šifre toka; Asimetrična kriptografija; Upravljanje ključevima; Provera identiteta poruka i Heš funkcije; Heš i MAC algoritmi; Digitalni potpis i problemi identiteta; Primena kriptografskih sistema; Kriptoanaliza.
IV godina
SE425 Upravljanje projektima razvoja softvera
Ovladavanje osnovim tehnikama menadžmenta u malom profesionalnom timu za razvoj softvera. Studenti se upoznaju sa klasičnim (vodopad) modelom upravljanja softverskih projekata i modelom životnog ciklusa softverskog projekta. Studenti uče o trouglu ograničenja pri upravljanju projektima razvoja softvera, kako upravljati kvalitetom softvera, ali i standardima za razvoj softvera. Konačno, studenti se upoznaju i sa iterativnim pristupom upravljanja softverskog projekta, kao uvod u agilni razvoj softvera. Teme koje se obrađuju na predmetu su: Uvod u projekte razvoja softvera; Osnovi upravljanja projektima; Klasični model upravljanja projektima; Osmišljavanje, pokretanje, planiranje, realizacija i završetak projekta; Pokretanje i planiranje softverskog projekta – detalji i tehnike; Modeli životnog ciklusa softvera; Upravljanje kvalitetom softvera; Kontrola konfiguracije softvera; Primena merenja u projektu razvoja softvera; Standardi za razvoj softvera.
MG470 Inovacije i preduzetništvo u digitalnom biznisu
Ovaj predmet pruža uvid u nastanak digitalnog preduzetništva, ključne koncepte, poslovne modele i resurse potrebne za razvoj uspešnih poduhvata. Studenti će razviti poslovni plan za digitalno preduzeće kao deo tima za poduhvat i predstaviće ovaj plan u poslovnom piču (pitch). Fokus predmeta je na inovativnom digitalnom preduzetništvu, te student stiče i osnovna znanja o procesu razvoja inovacija. Ovaj predmet je od interesa za studente koji planiraju razvoj sopstvenog preduzeća ili koji nameravaju da rade u dinamičnim, digitalnim preduzećima.
Izborni predmet C2 i C3
IS460 Robotska automatizacija procesa
Cilj predmeta predstavlja ovladavanje znanjem o robotskoj automatizaciji procesa (RPA), omogućava studentima da bolje razumeju značaj i potrebu automatizacije i njihovo stručno osposobljavanje za adekvatnu primenu različitih upravljačkih tehnika u primeni robotike u postupku automatizacije procesa. Predmet robotska automatizacija procesa je dizajniran da pokaže studentima kako RPA može da transformiše poslovne procese eliminisanjem svakodnevnih, dugotrajnih, ručnih zadataka koje obavljaju zaposleni u kompanijama, omogućavajući im više vremena da se usredsrede na kritičko razmišljanje. Predmet takođe uključuje smernice o izboru odgovarajućih procesa za automatizaciju, kao i strategije za uspešnu implementaciju RPA. Na predmetu se izučavaju sledeće teme: Uvod u RPA; Kako RPA funkcioniše? RPA tržište i istorija, važnost i prednosti RPA, RPA i AI; Osnove RPA; Nivoi automatizacije, slučaji upotrebe; Priprema RPA; Procena mogućnosti i zahteva, izbor odgovarajućih procesa za automatizaciju, potencijalni procesi u neindustriji.
CS420 Primene veštačke inteligencije
Cilj ovog predmeta je da se studenti upoznaju sa primenama veštačke inteligencije u sistemima odlučivanja, obradi prirodnog jezika, robotici, i računarskog vida. Takođe, diskutuju se i teme o mogućnostima i granicama primene veštačke inteligencije, o etici primene veštačke inteligencije i budućnosti veštačke inteligencije. Po završetku nastave na predmetu, studenti će moći da: razumeju i primene metode veštačke inteligencije u sistemima odlučivanja, razumeju metode dubokog učenja s ciljem računarskog razumevanja prirodnog jezika, što je preduslov za razvoj i primenu inteligentnih sistema u kome se koristi i prirodni govor u komunikacija sa sistemom, razumeju primenu veštačke inteligencije u upravljanju ponašanjem robota, razumeju primenu metoda veštačke inteligencije u analizi slika, fotografija ili 3D objekata, što je preduslova za korišćenje tzv. računarskog vida, koji je često neophodno ulazno ”čulo vida” mnogih inteligentnih softverskih sistema.
IT465 Bezbednost softvera i web sistema
Studenti se upoznaju sa konceptom bezbednosti softvera i veb sistema. Predmet osposobljava studente da prepoznaju probleme koji su vezani za analizu savremenih veb aplikacija iz bezbednosnog aspekta. Studenti uče o tehnikama identifikacije slabih tačaka u arhitekturi softvera i veb aplikacija, ali i o zaštiti pri razvoju veb aplikacija. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču osnovnih pojmova bezbednosti veb sistema. Na predmetu se izučavaju sledeće teme: Istorijski pregled bezbednosti softvera; Struktura savremenih veb aplikacija i softverskih sistema; Mapiranje veb aplikacija; Ranjivosti javnih veb servisa; Analiza API-ja; Identifikacija zavisnih komponenata veb aplikacija i softvera; Slabe tačke veb aplikacija i softverskih sistema; Vrste napada na veb aplikacije i softverskih sistema; SQL injekcije; Načine zaštite od Denial-of-Service (DoS) i Distributed-Denial-of-Service (DDoS) napada; Zaštita savremenih veb aplikacija; Tehnologije bezbednih veb aplikacija; Postavljanje bezbedne arhitekture veb sistema; Pregled programskog koda za veb sisteme iz ugla bezbednosti; Uvod u penetraciono testiranje.
IT470 Etičko hakovanje i penetraciono testiranje
Studenti se upoznaju sa konceptima identifikacije ranjivosti računarskih sistema i načinima njihove eksploatacije u cilju poboljšanja bezbednosti. Studenti dobijaju znanja da kroz pokušaje neovlašćenog pristupa računarskih sistema i testiranje ranjivosti, ukažu na sigurnosne propuste sistema. Studenti se upoznaju sa malicioznim aktivnostima unutar računarskog sistema, njihovim elementima i načinima rada, kao i sa metodama njihove identifikacije. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču tzv. etičkog hakovanja u kontekstu bezbednosti. Na predmetu se izučavaju sledeće teme: Eksploatacija ranjivosti računarskih sistema; Postavka virtuelne laboratorije za penetraciono testiranje; Planiranje napada: sakupljanje informacija, izviđački radovi i identifikacija ranjivosti; Ranjivosti računarskog sistema kroz analizu mrežnog saobraćaja; Analiza sistemskih izveštaja; Bezbednost bežičnih mreža – vrste bezbednosnih postavki; Bezbednost bežičnih mreža – eksploatacija ranjivosti; Bezbednost i ranjivosti mrežne infrastrukture – komutatori i usmerivači; Bezbednost i ranjivosti mrežne infrastrukture – zaštitni zidovi i pristupne liste; Bezbednost baza podataka i SQL injekcije; Bezbednost servera; Provera otpornosti sistema na DoS i DDoS napade; Maliciozni softver; Etičko hakovanje i sajber kriminal; Projektovanje sigurnih računarskih sistema i mreža.
IT465 Bezbednost softvera i web sistema
Studenti se upoznaju sa konceptom bezbednosti softvera i veb sistema. Predmet osposobljava studente da prepoznaju probleme koji su vezani za analizu savremenih veb aplikacija iz bezbednosnog aspekta. Studenti uče o tehnikama identifikacije slabih tačaka u arhitekturi softvera i veb aplikacija, ali i o zaštiti pri razvoju veb aplikacija. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču osnovnih pojmova bezbednosti veb sistema. Po završetku predmeta, studenti stiču znanja koja im omogućavaju da: Izvrše pregled ranjivosti savremenih veb aplikacija i softverskih sistema, pronalaze načine eksploatacije veb aplikacija i softverskih sistema, mapiraju i dokumentuju slabe tačke veb aplikacija za koje nemaju direktni pristup, razvijaju i primene tehnike prevazilaženja slabih sigurnosnih mehanizama veb aplikacija i softverskih sistema, razvijaju i primene principe zaštite svojih aplikacija od različitih napada, integrišu najbolje programerske prakse u cilju zaštite veb aplikacija od napada.
SE455 Softverski sistemi sa IoT
Studenti se kroz predmet upoznaju sa osnovnim principima rada i projektovanja Interneta Stvari (IoT, eng. Internet of Things). Predmet najpre uvodi studente u glavne koncepte IoT-a, kao što su pametni objekti, pametno okruženje i komunikacija mašina-ka-mašini. Studenti uče o arhitekturi i referentnim modelima IoT-a, o mrežnim, senzorskim i ugrađenim zahtevima. Studenti se upoznaju sa radnim okvirima softverskih sistema IoT-a, uz projektovanje različitih primera IoT uređaja sa razvojnim pločama. Konačno, studenti se upoznaju sa sigurnosnim aspektima IoT uređaja, kao i Industrijom 4.0. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču Interneta Stvari. Na predmetu se izučavaju sledeće teme: Osnovni elementi Interneta Stvari (IoT); Informaciono-komunikaciona infrastruktura IoT-a; Pametni objekti; Pametna okruženja i komunikacija mašina-ka-mašini; Tehnologije koje omogućavaju rad IoT-a; IoT i mobilno računarstvo; IoT i računarstvo u oblaku; Softverski sistemi za rad sa razvojnim pločama; Programiranje razvojnih ploča; Projektovanje IoT uređaja; Sigurnosti aspekti IoT infrastrukture; Razvoj mobilnih aplikacija za IoT uređaje IoT i Industrija 4.0.
Izborni predmet C4
CS440 Analitika podataka
Predmet pruža i teorijska i praktična znanja i veštine u vezi sa skladištenjem, obradom, analizom i vizuelizacijom podataka. Ovo uključuje sakupljanje i istraživanje podataka kako bi se pronašli šabloni koji mogu biti korisni u organizaciji, na primer, u obliku poboljšanog donošenja odluka za menadžment organizacije. Predmet se bavi konceptima koji se odnose na analitiku podataka, kao što su veliki podaci, jezera podataka, mašinsko učenje i vizuelizacija. Praktični aspekti predmeta sastoje se delom od primene alata za analizu i vizuelizaciju, a delom iz laboratorijskih vežbi gde studenti razvijaju svoja rešenja na terenu. Na predmetu studenti takođe uče kako da sastavljaju podatke iz različitih izvora kako bi omogućili analizu podataka.
IS450 Analiza i projektovanje sistema
Cilj predmeta je razumevanje poslovnih potreba neke organizacije koje se mogu rešiti korišćenjem rešenja baziranih na informacionim tehnologijama. Studenti se osposobljavaju da: (1) učestvuju u timovima čiji je zadatak iniciranje projekata informacionih sistema, (2) modeliraju rešenja informacionog sistema korišćenjem bar jedne od postojećih metodologija za analizu poslovnih problema, (3) specificiraju zahteve sistema koji će omogućiti produktivne promene u načinu na koji se vodi poslovanje, (4) upravljaju projektima informacionih sistema korišćenjem formalnih metoda za upravljanje projektima, (5) rade logički dizajn sistema na visokom nivou (dizajniraju korisnički interfejs, podatke i zahteve za informacijama). U predmetu se govori o procesima, metodama, tehnikama i alatima koje organizacije koriste kako bi definisale način na koji će voditi svoje poslovanje, sa posebnim fokusom na to kako računarski bazirane tehnologije mogu da efikasno doprinesu tako organizovanom načinu poslovanja. Predmetom su obuhvaćene metodologije za analiziranje poslovnih problema, određivanje uloge računarski baziranih tehnologija u njihovom rešavanju, artikulisanje poslovnih zahteva i alternativnih pristupa za primenu tehnoloških rešenja i specificiranje zahteva za izgradnjom informacionih sistema primenom različitih strategija koje se baziraju na sopstvenom razvoju, razvoju u kojem učestvuje treća strana i kupovinom gotovih softverskih paketa. Teme koje se obrađuju na predmetu: Životni ciklus razvoja: strukturne i agilne metodologije razvoja IS, objektno orijentisane metodologije razvoja IS; Analiza i upravljanje poslovnim procesima; Planiranje projekta razvoja informacionog sistema; Analiza i specifikacija sistemskih zahteva; Metode za strukturiranje i razmenu zahteva: dijagrami tokova podataka, dijagrami slučajeva korišćenja, klasni i objektni dijagrami, dijagrami interakcije; Problemi na visokom nivou projektovanja sistema-sistemsko projektovanje; Principi detaljnog projektovanja sistema; Projektovanje sloja za upravljanje podacima; Projektovanje korisničkog interfejsa.
IT475 Blokčejn tehnologija u zaštiti podataka
Studenti se kroz predmet upoznaju sa osnovnim konceptima blokčejn tehnologije i njihove primene. Predmet najpre uvodi studente u matematičke i kriptografske algoritme koji pokreću blokčejn tehnologiju. Zatim, studenti se upoznaju sa konceptima decentralizovanih i distribuiranih računarskih sistema, njihovih sličnosti i razlika, kao i primena istih. Studenti uče način rada uopštenog blokčejn distribuiranog sistema, uz osnove iz konkretnih primera: Bitcoin, Ethereum i Hyperledger blokčejn tehnologije i njihovih bezbednosnih osobina. Konačno, studenti stiču veštine da prepoznaju moguću primenu odgovarajućih blokčejn tehnologija na postojeća softverska rešenja, i da istaknu bezbednosne prednosti, ali i nedostatke. Kroz samostalne zadatke studenti stiču mogućnost da detaljnije prouče određene teme koje se tiču osnova blokčejn tehnologije u kontekstu bezbednosti. Na predmetu se izučavaju sledeće teme: Osnovni elementi blokčejn tehnologije; Matematičke i kriptografske postavke; Strukture podataka koje koristi blokčejn tehnologija; Blokčejn i distribuirani računarski sistemi; Blokčejn tehnologija i bezbednost informacija; Kriptovalute i ostale primene blokčejn tehnologija; Uvod u Bitcoin; Uvod u Ethereum; Uvod u Hyperledger; Analiza i uporedni prikaz manje poznatih blokčejn tehnologija; Implementacija blokčejn tehnologije – kada (ne) koristiti blokčejn?; Implementacija blokčejn tehnologije – projektovanje softvera sa blokčejn tehnologijom; Povezivanje blokčejn tehnologije sa ostalim elementima softverskog sistema; Softverski sistemi koji koriste više blokčejn tehnologija; Upotreba blokčejn tehnologije u kontekstu sajber bezbednosti.
Izborni predmet C5
CS490 Projekat primene veštačke inteligencije
Cilj ovog predmeta je da omogući studentu da u okviru jednog celovitog projekta, praktično primeni stečena znanja na predmetima u oblasti veštačke inteligencije: CS360 Veštačka inteligencija, CS375 Mašinsko učenje, CS420 Primene veštačke inteligencije i CS440 Analitika podataka. Pored ovih predmeta, u ovom predmetu se posebno primenjuju znanja stečena na predmetu SE425 Upravljanje projektima razvoja softvera, kao i na predmetima u kojima se izučavaju posebne faze razvoja softvera, (SE222 Inženjerstvo zahteva, SE310 Konstruisanje softvera, IT230 Interakcija čovek-računar, SE311 Projektovanje i arhitektura softvera, SE321 Obezbeđenje kvaliteta, testiranje i evolucija softvera, SE330 Agilne metode razvoja softvera). Po pravilu, projekat realizuje tim od 3 do 5 studenata. Po završetku nastave na predmetu, studenti će moći da: Definišu plan projekta, u zavisnosti da li primenjuje planom vođen razvoj softver, ili agilni metod razvoja softvera, utvrđuju zahteve za razvoj softvera, definišu njegovu arhitekturu i projektuju i implementiraju (programiraju) urađeno projektno rešenje, testiraju razvijen softverski sistem, primenjuju metode veštačke inteligencije u skladu sa zahtevima dobijenog projektnog zadatka, analiziraju rezultate primene razvijenog inteligentnog softverskog sistema pri korišćenju odgovarajućih skupova ulaznih podataka.
SE485 Projekat razvoja softvera u realnom vremenu
Cilj ovog predmeta je da studenti nauče kako da razviju timska rešenja za projekte koji razvijaju “real time” sisteme (RTS). Studenti će steći iskustvo i razumevanje timskog rešavanja problema. Studenti će naučiti kako da implementiraju i integrišu RTS u softverski proizvod. Po završetku ovog predmeta student će moći da: Primenjuje metode i tehnike koje se koriste u procesu razvoja RTS, projektuju i realizuju RTS na jednom ili više programskih jezika, planira projektno rešenje i dokumentuje napredak, efikasno rasporedi opterećenje među članovima tima, komunicira i učestvuje u radu projektnog tima. Na predmetu se izučavaju sledeće teme: Definisanje problema za RTS; Specifikacija zahteva za RTS; Odabrane teme koje se podudaraju sa interesovanjem studenata i projektima koje realizuju; Upravljanje timom i zadacima; Procedure upravljanja projektom: Identifikovanje ciljeva, obima i ograničenja; Pisana i usmena prezentacija rezultata.
IT485 Projekat zaštite računarskog sistema
Studenti se upoznaju sa konceptima projektovanja bezbednosnih mehanizama za IT sisteme i mreže koje zadovoljavaju određene bezbednosne kriterijume. Studenti najpre dobijaju znanja da analiziraju bezbednosne zahteve IT sistema i mreža. Zatim, studenti stiču znanja o bezbednosnim podešavanjima i načinima testiranja mrežne infrastrukture i serverskih i klijentskih uređaja. Primenjujući stečena znanja, studenti rade u grupama na projektnim zadacima. Po završetku predmeta, studenti stiču znanja koja im omogućavaju da: Analiziraju bezbednosne zahteve pri projektovanju bezbednosnih mehanizama za IT sisteme i mreže; Primene tradicionalne i agilne modele projektovanja bezbednosnih mehanizama; Izvrše napredna bezbednosna podešavanja mrežne infrastrukture, računarskih uređaja i korisničkog pristupa; Projektuju bezbednosne mehanizme za računarsku mrežu koja će zadovoljiti date bezbednosne kriterijume; Simuliraju i testiraju bezbednost projektovanih mehanizama. Predmet obuhvata sledeće teme: Uvod u projektovanje bezbednosnih mehanizama za IT sisteme i mreže; Modeli projektovanja bezbednosnih mehanizama; Sakupljanje i analiza bezbednosnih zahteva; Planiranje i postavka; Zaštitni mehanizmi protiv neovlašćenog pristupa sistemu; Napredna bezbednosna podešavanja mrežne infrastrukture; Napredna bezbednosna podešavanja klijentskih i serverskih uređaja; Bezbednosna podešavanja klaud servisa; Podešavanja politike privatnosti korisnika; Podešavanja bezbednog korisničkog pristupa; Bezbedno skaliranje; Testiranje bezbednosnih mehanizama; Simulacija napada na bezbednosne mehanizme; Pisanje dokumentacije i uputstva za korisnike bezbednosnih mehanizama; Održavanje bezbednosnih mehanizama za IT sisteme i mreže.
CS450 Klaud računarstvo
Cilj predmeta je da se studentima obezbedi praktično upotrebljiva znanja i veštine koje će ih osposobiti da izaberu pogodnu tehnološku platformu za unapređenje postojećih poslovnih procesa, kroz njihovu digitalnu transformaciju koja proizilazi iz primene novih klaud tehnologija. Izučavanjem predmeta studenti se osposobljavaju da kroz izbor, instalaciju, konfigurisanje, projektovanje i primenu: Virtualizacije, klaud tipova i servisa, bezbednosti i zakonske regulative u oblasti klaud računarstva, uspešno primene svoja znanja u nekoj od poslovnih organizacija. Predmet obuhvata niz savremenih klaud tehnologija, koje pokrivaju i obuhvataju: Tehnologije za virtualizaciju, fizičku platformu kao servis, softver kao servis i druge tipove klaud servisa. Takođe se na predmetu izučavaju različiti slojevi računarstva u oblaku, teorijska i praktična rešenja firmi kao što su Google, Amazon, Mikrosoft. Tokom izvođenja nastave studenti imaju priliku da na vežbama samostalno isprobaju nove tehnologije iz navedeniih oblasti. Jedan u nizu korisnih elemenata ovog predmeta je izrada projekta koji u sebi uključuje praktičan rad i istraživanja u oblasti postojećih tehnologija, kao i iz oblasti razvoja novih tehnologija klaud računarstva.
IT491 Stručna praksa
Cilj stručne prakse je da studente pripremi i obezbedi kvalitetno sticanje kompleksnijeg iskustva o njihovoj profesiji i radnim zadacima za koja se školuju. Programski zadaci su tako postavljeni da u prvoj fazi vode i omoguće upoznavanje radne sredine, profil organizovanosti, raspodelu radnih zadataka i uvid u sadržaj aktivnosti, uvid u specifičnosti rada na različitim radnim mestima. Naredni zadaci su orijentisani na uključenje studenata u projekte različitih vrsta, obima i namena, u njihovoj početnoj, razvojnoj ili završnoj fazi, kao i u njihovu implementaciju od instalacije, obuke do održavanja. Studenti kroz asistiranje u konkretnim zadacima, trebaju bolje upoznati i u što većoj meri prihvatiti tehnologiju rada, kako bi u narednoj fazi krenuli u projekte samostalno. Kroz sagledavanje radne sredine i konkretnih radnih aktivnosti student treba steći nova znanja, sigurnost u radu i mogućnost integrisanja parcijalno stečenih znanja i veština kroz prethodne studije. Težište stručne prakse je na što samostalnijim i konkretnijim radnim doprinosima studenta na područjima; Postavljanja i administriranja sistema, pojedinih radnih stanica, mrežnih i drugih konfiguracija, razvoju aplikacija na području informacionih sistema, veb aplikacija i drugih softverskih rešenja. Radni zadaci se mogu kretati od koncepata, razvoja, konstrukcije, testiranja, apliciranja i održavanja, takođe i na području analize određenih rešenja i eventualnih usavršavanja.
IT495 Završni rad
Završni rad prvog stepena akademskih studija je samostalan rad studenta kojim se proverava i ocenjuje sposobnost studenta da stečeno znanje uspešno primenjuje u praksi, posebno iz oblasti iz koje je završni rad. Završni rad predstvlja istraživački rad studenta u kome se on upoznaje sa specifičnostima primene inžinjerske metodologije u oblasti. Nakon obavljenog istraživanja student priprema završni rad u formi koja sadrži sledeća poglavlja: Uvod; Teorijski deo; Eksperimentalni deo, rezultati i diskusija; Zaključak; Pregled literature.
Univerzitet Metropolitan u Beogradu – Tradicionalna nastava i internet nastava
STUDIJSKI PROGRAM | Godišnja školarina (tradicionalna i Internet nastava) | Akontacija 20% uplata pri upisu | IZNOS MESEČNE RATE ZA MODEL PLAĆANJA OD PREOSTALIH 11 RATA BEZ KAMATE | |||
FAKULTET INFORMACIONIH TEHNOLOGIJA | ||||||
Informacione tehnologije | 2.990 € | 598 € | 217.45 € | |||
Softversko inženjerstvo | 2.990 € | 598 € | 217.45 | |||
Razvoj video igara | 2.990 € | 598 € | 217.45 | |||
FAKULTET ZA MENADŽMENT | ||||||
Inženjerski i operacioni menadžment | 2.490 € | 498 € | 181.09 € | |||
Digitalni biznis i marketing | 2.490 € | 498 € | 181.09 € | |||
FAKULTET DIGITALNIH UMETNOSTI | ||||||
Grafički dizajn | 3.690 € | 738 € | 268.35 € | |||
Dizajn interaktivnih medija | 3.690 € | 738 € | 268.35 € | |||
Modni dizajn | 3.890 € | 778 € | 282.9 € |
Univerzitet Metropolitan u Nišu
STUDIJSKI PROGRAM | Godišnja školarina (tradicionalna i Internet nastava) | Akontacija 20% uplata pri upisu | IZNOS MESEČNE RATE ZA MODEL PLAĆANJA OD PREOSTALIH 11 RATA BEZ KAMATE | |||
FAKULTET INFORMACIONIH TEHNOLOGIJA | ||||||
Informacione tehnologije | 2.490 € | 498 € | 181.09 € | |||
Softversko inženjerstvo | 2.490 € | 498 € | 181.09 € | |||
Razvoj video igara | 2.490 € | 498 € | 181.09 € | |||
FAKULTET ZA MENADŽMENT | ||||||
Biznis i marketing | 1.990 € | 398 € | 144.72 € | |||
FAKULTET DIGITALNIH UMETNOSTI | ||||||
Grafički dizajn | 3.090 € | 618 € | 224.72 € |
POGLEDAJTE ŠTA OBUHVATA ŠKOLARINA