Sadržaj se učitava...
mdi-home Početna mdi-account-multiple Djelatnici mdi-script Studiji mdi-layers Katedre mdi-calendar-clock Raspored sati FOI Nastava search apps mdi-login
Analiza i razvoj programa
Software Analysis and Design
2016/2017
6 ECTSa
Baze podataka i baze znanja 1.2 (BPBZ)
Informacijsko i programsko inženjerstvo 1.2 (IPI)
Informatika u obrazovanju 1.2 (IUO)
Organizacija poslovnih sustava 1.2 (OPS)
Katedra za razvoj informacijskih sustava
RI
1. semestar
Osnovne informacijemdi-information-variant Izvođači nastavemdi-account-group Nastavni plan i programmdi-clipboard-text-outline Model praćenjamdi-human-male-board Ispitni rokovimdi-clipboard-check-outline Rasporedmdi-calendar-clock Konzultacijemdi-account-voice
Izvođenje kolegija
Cilj kolegija
Cilj kolegija Analiza i razvoj programa je upoznavanje studenata s životnim ciklusom i razvojnim fazama suvremenog programskog proizvoda. Razvoj programa postao je važna grana industrije koja ima svoje zakonitosti i specifične standarde. Kolegij prolazi sve faze životnog ciklusa koje pri nastanku prolazi novi programski produkt: analizu domene sustava, specifikaciju programskih zahtjeva, metode i tehnike modeliranja programa, razvoj programa, ispitivanje programa i uklanjanje grešaka. Pri tome studenti uče temeljne pristupe korištene pri razvoju i inženjerstvu složenih programskih sustava te suvremene alate koji te postupke olakšavaju.
Preduvjeti
Kolegij nema definirane preduvjete
Norma kolegija
Predavanja
30 sati
Vježbe u praktikumu
30 sati
Nastavnik Uloga na kolegiju Oblik nastave Tjedana Sati Grupa
Stapić Zlatko Nositelj Vježbe u praktikumu
Predavanja
6
7
3
3
5
1
Strahonja Vjeran Nositelj
Vrček Neven Nositelj Predavanja 3 3 1
Švogor Ivan Suradnik Vježbe u praktikumu 4 3 5
Vrček Neven Izvođač
Turek Tomislav Demonstrator
Sadržaj predavanja
  • Paradigme razvoja programskih sustava
    Životni ciklus programskog proizvoda. Odnos razvojnog i životnog ciklusa. Pristupi razvoju programskog sustava i moguće varijacije: vodopadni, spiralni. Kompleksni razvojni ciklusi (paralelni razvoj, povratna veza).
  • Projekt razvoja programskog sustava
    Specifičnosti projekata u programskoj industriji. Veza projekta i razvojnog ciklusa programskog proizvoda. Karakteristične metode planiranja i praćenja projekata u razvoju programskog proizvoda. Troškovi projekta. Projektni timovi i njihove karakteristike: područja specijalizacije, potrebna znanja, preklapanje područja znanja. Virtualni projektni timovi i alati koji podržavaju grupni rad (teamware, groupware).
  • Analiza zahtjeva na programski sustav – korisnički zahtjevi
    Definicija korisničkih zahtjeva. Poslovni procesi i utjecaj na korisničke zahtjeve. Izvori korisničkih zahtjeva. Organiziranje korisničkih zahtjeva. Tehnike prikupljanja korisničkih zahtjeva: intervjui, upitnici, poslovni dokumenti,...
  • Analiza zahtjeva na programski sustav – sistemski zahtjevi
    Definicija sistemskih zahtjeva. Vrste sistemskih zahtjeva. Mapiranje korisničkih i sistemskih zahtjeva. Funkcionalni i nefunkcionalni zahtjevi. Prijelazno i dinamičko modeliranje. Organiziranje funkcionalnih zahtjeva.
  • Modeliranje programskog sustava
    Arhitektura programskog sustava i temeljni gradivni elementi. Dijagramske tehnike i notacije za modeliranje programskog sustava. Objektno orijentirana notacija. Temelji koncepti OO pristupa. Nasljeđivanje, enkapsulacija, polimorfizam. Objektno orijentiran pristup u programskim jezicima i alatima.
  • UML paradigma
    RUP metoda. UML dijagrami.
  • Koncepti razvojnog dizajna programskog proizvoda
    Definicija razvojnog dizajna programskog proizvoda. Osnovna pitanja razvoja arhitekture (npr. postojani podaci, upravljanje memorijom, iznimke, itd.). Kontekst dizajna unutar višestrukih životnih ciklusa razvoja programskog sustava. Principi dizajna (skrivanje informacija, kohezija i uparivanje). Interakcije između dizajna i funkcionalnih i nefunkcionalnih zahtjeva. Dizajn usmjeren na kvalitetu atributa (npr. pouzdanost, iskoristivost, izvedba, mogućnost testiranja, tolerancija grešaka, itd.). Arhitekturalni stilovi, predlošci, ponovna iskoristivost. Interoperabilnost.
  • Alati za potporu razvoju i modeliranju programskog proizvoda
    Vrste alata za razvoj i modeliranje programskog proizvoda (npr. arhitekturalni, za statičku analizu, za dinamičku procjenu, itd.). Tipične arhitekture alata. Mogućnosti i ograničenja alata, provjera konzistentnosti modela (afinitetna analiza, nasljeđivanje, itd.). Veza modela i generatora aplikacije.
  • Arhitektura programskog sustava
    Slojevi arhitekture programskog sustava i tipične arhitekture. Karakteristične tehnologije po svakom od slojeva. Povezivanje slojeva i integracija programskog sustava. Utjecaj arhitekture na svojstva programskog sustava (otpornost na ispade, kvarove, brzinu).
  • Komponente i integracija
    Komponentna paradigma. Promišljanje ponovne iskoristivosti programskog koda. Vrste programskih komponenata. Tehnologije za razvoj programskih komponenata (CORBA, EJB, COM+). Upravljanje transakcijama komponenata. Integracija komponenti. Tržište programskih komponenti.
  • Humano korisničko sučelje
    Opći principi dizajna humanog računalnog sučelja. Korištenje modova, navigacija. Tehnike kodiranja i vizualni dizajn (npr. boje, ikone, vrste slova, itd.). Vrijeme odziva i povratna informacija. Načini dizajna (npr. orijentiran na meni, forme, pitanja-odgovori, itd.); Lokalizacija i internacionalizacija. Metode dizajna humanog računalnog sučelja. Multimedija (npr. I/O tehnike, glas, prirodni jezik, web-stranica, zvuk, itd.). Metafore i konceptualni modeli. Psihologija humanog računalnog sučelja.
  • Prototipiranje
    Razlog i svrha prototipa. Vrste prototipa: horizontalni i vertikalni. Osmišljavanje prototipa. Dokumentiranje prototipa. Ispitni scenariji. Odnos prototipa i stvarnog sustava. Programski alati za razvoj prototipa.
  • Metrike u razvoju programskih proizvoda
    Smisao metrika programskog proizvoda i njihova primjenjivost. Vrste metrika: linije programskog koda, funkcijske točke. Metrike i životni ciklus. Metode procjene složenosti programskog sustava na početku životnog ciklusa.
  • Nadzor i ispitivanje programskog sustava
    Značaj i pristupi ispitivanju programskog sustava. Ispitivanje komponenti i cjelovitog sustava. Odnos prema korisnički zahtjevima. Scenariji ispitivanja. Analiza opsega ispitivanja (npr. ogranak, temeljna putanja, višestruki uvjeti, tok podataka, iznimke itd.). Obrada iznimaka (pisanje ispitnih primjera za pokretanje obrade iznimaka). Tehnika ispitivanja funkcionalnosti. Integracijsko ispitivanje. Razvijanje ispitnih primjera temeljenih na slučajevima upotrebe i/ili izjavama korisnika. Ispitivanje temeljeno na operacijskim profilima.
  • Specifične programske arhitekture
    Transakcijske i analitičke programske arhitekture. Kritični zahtjevi. Suprotni ciljevi dizajna i razvoja programskog sustava u zavisnosti od vrste arhitekture. Skladišta podataka, OLAP sustavi, arhitekture za rudarenje podataka, ERP sustavi, distibuirani sustavi.
Sadržaj seminara/vježbi
  • Vježbe
    U okviru vježbi studenti će raditi na agilnom razvoju programskog proizvoda i usvajanju teorijskih koncepata s predavanja. Radom u timu, i pod pretpostavkom da imaju određeno predznanje o svim fazama razvoja programskog proizvoda, studenti će razvijati sustav u kojem će se poseban naglasak staviti na mobilnu aplikaciju, višeslojnu i servisno orijentiranu arhitekturu, primjenu predložaka za razvoj programskog koda kako bi se osigurala modularnost i fleksibilnost proizvoda, te sinkronizaciju UML dijagrama i programskog koda. Spomenuti projekti neće biti tehnološki ograničeni, te će studenti moći razvijati programske proizvode za bilo koju mobilnu platformu.
  • Vježbe 01
    Cilj ovih vježbi je upoznati studente s osnovama programskog alata C#.Net i razvojnim okruženjem Microsoft Visual Studio 2008/2010. Studenti će se kroz jednostavnu aplikaciju podsjetiti objektnog pristupa u razvoju programskih proizvoda, te će savladati osnove komunikacije među klasama u smislu prosljeđivanja vrijednosti.
  • Vježbe 02
    Cilj ovih vježbi je upoznati studente s naprednijim konceptima programskog jezika C# kao što su komunikaciju između dviju klasa pomoću konstruktora, iteracije, selekcije, prosljeđivanje parametara i primanje vrijednosti, dinamičko alociranje memorije, te korištenje jednodimenzionalnih polja i slično. Važan cilj ovih vježbi je i upoznati studente s mogućnostima i načinom korištenja alata „Visual Studio 2008 Class Designer“, koji omogućuje sinkronizaciju dijagrama klasa i programskog koda.
  • Vježbe 03
    Cilj ovih vježbi je upoznati studente sa razvojem korisničkog sučelja u mobilnim aplikacijama. Studenti će osim korisničkog, kreirati i logičko sučelje te kreirati klase i dinamičkih alocirati objekte klase koji ga implementiraju. U drugom dijelu vježbi bit će kreirana infrastruktura slanja obavijesti korisniku.
  • Vježbe 04
    Studenti će na kraju ovih vježbi znati kreirati i koristiti korisničke kontrole (engl. User Controls), kreirati sučelje prema klasama koje podrazumijeva uporabu korisničkih kontrola te kreirati plug-in infrastrukturu koja podržava korištenje različitih korisničkih kontrola sukladno odabranoj implementaciji sučelja.
  • Vježbe 05
    Studenti će na kraju ovih vježbi znati kreirati novi Web Servis te ga objaviti na lokalno ili udaljeno računalo, kreirati reference između različitih projekata te napraviti reference na web servis i koristiti ga u aplikaciji.
  • Vježbe 06
    Studenti će na kraju ovih vježbi znati asinkrono pozivati web servise, kreirati posebne objekte (delegate) i kreirati vlastite događaje (engl. events) u svrhu korištenja delegata za pozivanje web servisa, ali i za rješavanje ostalih problema komunikacije među dretvama i objektima.
  • Vježbe 07
    Cilj ovih vježbi je upoznati studente sa načinima kreiranja i korištenja mobilnih baza podataka (mBP). Posebna pozornost biti će posvećena kreiranju arhitekturalnog sloja za rad s bazom podataka u višeslojnoj arhitekturi programskog proizvoda.
  • Vježbe 08
    Studenti će kroz ove vježbe dobiti uvid u načine i mogućnosti sinkronizacije standardnih i mobilnih baza podataka, te naučiti kreirati web servise u svrhu sinkronizacije podataka. U drugom dijelu vježbi studenti će naučiti koristiti Microsoft predefinirane objekte za rad s bazom i za sinkronizaciju podataka, te praktično provesti jednosmjernu sinkronizaciju pomoću web servisa.
  • Vježbe 09
    Studenti će kroz ove vježbe ponoviti mogućnosti korištenja web servisa u svrhu sinkronizacije podataka i praktično provesti jednosmjernu sinkronizaciju pomoću web servisa i parametara. Cilj vježbi je također olakšati studentima da shvate mehanizme inkrementalnog razvoja sustava (nadogradnja web servisa, nadogradnja podataka i slično).
  • Vježbe 10
    Cilj ovih vježbi je upoznati studente s naprednim konceptima koji se koriste pri razvoju mobilnih programskih proizvoda, kao što su rad s navigacijom (GPS), rad s portovima, pohrana parametara aplikacije i slično, kontinuirano komuniciranje s web servisima i slično.
Ishodi učenja kolegija
  • Znati primijeniti metodološki pristup u razvoju programskih proizvoda
  • Znati primjeniti odgovarajuće metode i tehnike razvoja programskog proizvoda u svakoj fazi životnog ciklusa
  • Znati postaviti plan ispitivanja programskog proizvoda
  • Znati koristiti nove tehnologije za razvoj mobilnih programskih proizvoda
  • Znati koristiti Microsoft Compact Framework i C#.Net za razvoj aplikacija za PDA uređaje
  • Znati kreirati i koristiti servisno orijentirane arhitekture informacijskog sustava
  • Znati kreirati i koristiti mobilne baze podataka
Ishodi učenja programa
  • Primijeniti etička načela, zakonsku regulativu i norme koje se koriste u struci
  • Analizirati i procijeniti uvjete za primjenu suvremenih informacijskih i komunikacijskih tehnologija (ICT), savjetovati druge u primjeni iste te u zadanom kontekstu odrediti utjecaj primjene na pojedinca, organizaciju i društvo.
  • Modeliranje problema iz područja informacijskih i poslovnih sustava korištenjem matematičkih metoda, metoda razvoja informacijskih sustava i koncepata planiranja, upravljanja i poslovanja
  • Primijeniti, utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz rješavanje problema iz područja informacijskih i poslovnih sustava
  • Analizirati i ocijeniti učinkovitost uvođenja i korištenja ICT (programskog rješenja i pripadajuće opreme) za konkretne problemske domene informacijskih i poslovnih sustava
  • Procijeniti i preporučiti programska rješenja za konkretne problemske domene informacijskih i poslovnih sustava
  • Voditi interdisciplinarni tim i raditi u takvom timu
  • Predstaviti i popularizirati suvremena trendove u informatici u stručnim i laičkim krugovima
  • Unaprijediti metode komuniciranja i komunikaciju s klijentima, korisnicima i kolegama na verbalan i pisani način uz primjenu odgovarajuće terminologije uključujući i sposobnost komunikacije o struci na stranom jeziku
  • Unaprijediti i primijeniti metode stručnog rada pronalaženjem i vrednovanjem suvremenih izvora znanja
  • Valorizirati stručnu literaturu na hrvatskom i stranom jeziku
  • Razviti vlastite planove i planove drugih članova tima u upravljenju karijerom u struci i vlastitih poduzetničkih poduhvata s obzirom na potrebe poslovnog okruženja
  • Planirati proces cjeloživotnog osobnog i profesionalnog razvoja i definirati optimalne individualne strategije učenja
  • Projektirati, planirati, izraditi i uvesti svaki poslovni složeni informacijski sustav i/ili voditi projektni tim u slučaju kada na tim poslovima mora biti uključen veći broj stručnjaka
  • Razumjeti poslovni sustav organizacije i u suradnji s poslovnim stručnjacima optimalizirati njezine poslovne procese te izraditi strateški plan primjene ICT-a
  • Oblikovati softversku arhitekturu složenog informacijskog sustava, odabrati i postaviti odgovarajuću tehnološku platformu i programirati najsloženije dijelove složenog sustava
  • Primijeniti metode planiranja i upravljanja poslovanjem uz pomoć ICT u osnovnim vertikalnim područjima primjene ICT
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz ključne aspekte primjene i razvoja informacijske tehnologije (programiranje, algoritmi, strukture podataka, baze podataka i znanja)
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz suvremene tehničke koncepte i prakse u informacijskim tehnologijama (arhitektura računala, operacijski sustavi, mreže računala)
  • Utvrditi uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz metode i koncepte planiranja, upravljanja organizacijom i obračuna poslovanja
  • Analizirati uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke vezane uz metodološke pristupe razvoju organizacijskih i informacijskih sustava
  • Analizirati uvjete za primjenu, savjetovati i u zadanom kontekstu donositi odluke za primjenu koncepata elektroničkog poslovanja podržanih odgovarajućim arhitekturama informacijskih sustava (klasične ili distribuirane)
  • Osmisliti projekt učinkovitog unapređenja poslovne tehnologije poslovnog sustava uz korištenje suvremenih ICT te realizirati takav projekt vlastitim razvojem ili izborom prikladnog standardnog softvera
  • Odabrati i primijeniti odgovarajuće sigurnosne mehanizme pri projektiranju i izgradnji informacijskog sustava
  • Odabrati i primijeniti metode i tehnike razvoja informacijskih i programskih sustava u suvremenim razvojnim okolinama
  • Utvrditi uvjete za primjenu, savjetovati, procijeniti učinak i donositi odluke vezane uz procese, metode i tehnologije upravljanja IT uslugama i resursima te podrške i pružanja različitih vrsta usluga vezanih uz ICT
  • Objasniti stručnoj i općoj publici informatička rješenja za unapređenje poslovne tehnologije
  • Analizirati i valorizirati atribucije (atribute) objekata poslovnog sustava te postaviti formalni model objektnog sustava kao temelj izgradnje informacijskog sustava
  • Izgraditi informacijski sustav temeljen distribuiranim komponentama kao i na autonomnim i međusobno kompetitivnim izvorima znanja i razriješiti konflikte koji se javljaju među izvorima znanja
  • Primijeniti metode i tehnike izgradnje digitalnih arhiva i dugotrajnog pohranjivanja podataka
  • Primijeniti metode i tehnike pretraživanja i klasifikacije informacija
  • Prepoznati kritične procese i klase podataka poslovnog sustava, izgraditi formalni model procesa i klasa te ga optimizirati i ponuditi prijedloge poboljšanja poslovnog sustava
  • Modelirati poslovna pravila, poslovne podatke kao i pravila za izvođenje transakcijskih podataka koji nisu eksplicitno zadani
  • Modelirati i izgraditi sustav izvođenja analitičkih podataka iz transakcijskih metodama rudarenja i drugim metodama, te izgradnje skladišta podataka u koja se ti podaci pohranjuju
  • Modelirati i izgraditi sustave poslovne inteligencije temeljene na skladištima podataka, kao i njihovo pretraživanje korištenjem metoda višedimenzionalnih kocaka podataka (OLAP)
  • Izgraditi računalni sustav za pohranu podataka i znanja korištenjem suvremenih alata za izradu baza podataka, baza znanja i semantici podataka
  • Izgraditi i optimizirati bazu podataka i bazu znanja primjenom odgovarajućih strategija organizacije podataka i sigurnosti informacijskog sustava
  • Modelirati raspodjelu podataka prema mjestu korištenja podataka, izgraditi sustav replikacije baze podataka i izgraditi distribuiranu bazu podataka
  • Modelirati i izgraditi sustave temeljene na znanju, kao što su višeagentni sustavi, deduktivni sustavi (uključujući i ekspertne sustave), semantički Web sustavi, neuralne mreže itd.
  • Procijeniti potrebe za strategijskim i upravljačkim promjenama u organizacijama
  • Primijeniti metode upravljanja životnim ciklusom informacijskog sustava organizacije
  • Primijeniti metode korporacijskog upravljanja i strategijskog menadžmenta uz potporu informacijske tehnologije
  • Razviti i validirati sustav mjerenja organizacijske učinkovitosti uz primjenu odgovarajućih programskih alata
  • Analizirati tržište primjenom informacijsko-komunikacijskih tehnologija
  • Analizirati poslovne procese i preporučiti primjenu odgovarajuće informacijske i komunikacijske tehnologije za unapređenje poslovnih procesa
  • Organizirati sustav vođenja u javnoj upravi uz primjenu informacijske tehnologije
  • Razviti elemente kontinuuma strategijskog upravljanja: misiju, organizacijske vrijednosti, viziju, strateške ciljeve
  • Analizirati potrebu za e-poslovanjem i primijeniti koncepte e-poslovanja
  • Procijeniti spremnost organizacije za uvođenje suvremenih ERP sustava i definirati projekt uvođenja istih
  • Razumjeti povijesni aspekt edukacijskih sustava, društvenu uvjetovanost odgojno-obrazovne prakse i diferenciranost suvremenih odgojno-obrazovnih koncepcija
  • Poznavati organizaciju sustava odgoja i obrazovanja te ustroj odgojno-obrazovnog procesa na svim razinama
  • Razumjeti odrednice djelovanja i ponašanja ljudske jedinke i grupnu dinamiku (razrednog odjeljenja, timova, kolektiva …)
  • Organizirati nastavni proces
  • Artikulirati nastavni sat primjenjujući primjerene nastavne metode i oblike rada, didaktičke principe i nastavna sredstva
  • Voditi pedagošku dokumentaciju, ispitivanje,ocjenjivanje i vrednovanje u skladu s zakonskom regulativom i kriterijima osobne i profesionalne etičnosti
  • Poučavati učenike primjeni različitih oblika učenja, samovrednovanju i samoreguliranom učenju
  • Upravljati razrednim odjeljenjem, i surađivati s roditeljima i drugim strukturama unutar i izvan odgojno-obrazovne institucije
  • Analizirati građu računala, suvremene računalne arhitekture te primijeniti ta znanja u dizajnu obrazovnog informacijskog sustava, kao i u nastavi
  • Primijeniti principe proceduralnog programiranja, izgradnje struktura podataka i algoritama
  • Interpretirati povijest informatike i računarstva
  • Analizirati i usporediti računalne Web i desktop alate za prezentaciju informacija i primijeniti ih u nastavi
  • Formulirati problem iz realnog svijeta u smislu problemskog zadatka u informatici te ga znati riješiti i rješenje evaluirati
  • Analizirati, preporučiti, implementirati i koristiti sustave za e-učenje u skladu s metodičkim i pedagoškim principima
  • Izvoditi proces poučavanja u multikulturalnim i multietničkim sredinama i drugim posebnim uvjetima (treća dob, centri izvrsnosti …)
  • Osmisliti postupke za upravljanje procesom učenja i poučavanja u rizičnim situacijama
  • Predstavljati informatička znanja i vještine kao učinkovite instrumente za podupiranje integracijskih procesa
  • Predstavljati nastavnicima mogućnosti korištenja informatike u odgojno-obrazovnom procesu
  • Preispitivati, strukturirati i restrukturirati svoja osobna i profesionalna iskustva (razvijati refleksivnu praksu)
  • Koristiti stečena znanja o vizualnom oblikovanju i sadržajima u ostvarivanju kreativnih vizualnih projekata pri radu s računalom.
  • Modelirati postojeće vizualne sadržaje za potrebe konkretnih osobnih (ili učeničkih) računalnih radova (web dizajn, grafički dizajn, dizajn multimedija,…).
  • Koristiti vještine učenja potrebne za cjeloživotno učenje i nastavak obrazovanja na diplomskom studiju.
  • Upoznati Nacionalni okvirni kurikulum. Upoznati metodologiju izradbe školskog i nastavnog kurikuluma. Upoznati primjenu nastavnog kurikuluma u praksi.
Osnovna literatura
  • Materijali s predavanja dostupni na stranicama kolegija Analiza i razvoj programa i Programskog inženjerstva.
  • Stevens, R.; Brook, P.; Jackson, K.; Arnold, S. Systems Engineering, Coping with Complexity. Prentice Hall, 1998.
  • Fowler, M.; Scott, K. UML Distilled: Applying the Standard Object Modelling Language. Addison-Wesley, 1997.
  • Bennett, S.; McRobb, S.; Farmer, R. Object-Oriented Systems Analysis and Design using UML. McGraw-Hill, 1999.
  • Stevens, P.; Pooley, R. Using UML - software engineering with objects and components. Addison Wesley, 2000.
  • Sommerville, Software Engineering. 5th edition, Addison-Wesley, 1996.
  • Pressman, R.S. Software Engineering: A Practioner's Approach. 5th edition, McGraw-Hill, 2000. (or the European adaptation by D. Ince).
  • Gilb, T. Principles of Software Engineering Management. Addison-Wesley, 1988.
Dopunska literatura
Slični kolegiji
Redoviti studenti Izvanredni studenti
izvanredni rok
Datum: 19.04.2024.
Vrijeme: 16:00
Opis: Na Fakultetu
U kalendaru ispod se nalaze konzultacije predmetnih nastavnika, no za detalje o konzultacijama možete provjeriti na profilu pojedinog predmetnog nastavnika.
2024 © Fakultet organizacije i informatike, Centar za razvoj programskih proizvoda