PANEVROPSKI UNIVERZITET APEIRON FAKULTET ZA POSLOVNU INFORMATIKU BANJA LUKA. Specijalističke studije TEMA: WEB DNEVNIK

Size: px
Start display at page:

Download "PANEVROPSKI UNIVERZITET APEIRON FAKULTET ZA POSLOVNU INFORMATIKU BANJA LUKA. Specijalističke studije TEMA: WEB DNEVNIK"

Transcription

1 PANEVROPSKI UNIVERZITET APEIRON FAKULTET ZA POSLOVNU INFORMATIKU BANJA LUKA Specijalističke studije TEMA: WEB DNEVNIK -specijalistički rad- Mentor: Prof. dr Zoran Ž. Avramović, dipl. inž. Student: Banja Luka, decembar 2008.g.

2 Apstrakt: Promjene vaspitno-obrazovnog procesa u okruženju u velikoj mjeri utiču n a sistem obrazovanja i vaspitanja učenika kod nas. Jedan od važnih ciljeva našeg školskog sistema je saradnja na relaciji učenik-roditelj-nastavnik. Ukoliko ovaj odnos prikažemo kao trougao, vidjećemo koliko važnu ulogu za konačan usp jeh učenika ima dobra saradnja i kontakt između druge dvije karike. Ovaj rad obuhvata izradu web dnevnika koji bi kao jezgru imao elektronski dnevnik koji bi funkcionisao unutar škole. U radu ću obraditi modeliranje i izradu baze podataka pomoću CASE alata ERWIN. Bazu ću uraditi pomoću Microsoft SQL servera i povezati je pomoću ASP.NET platforme tako da postane funkcionalna. Ključne riječi: Web dnevnik, e-dnevnik, internet, saradnja roditelja i škole, vaspitanje i obrazovanje, SQL, Erwin, ASP.NET, password, korisnički nalog, administrator, View, baza podataka. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 2

3 SPISAK SKRAĆENICA I AKRONIMA skraćenice/akronimi Englisch name Srpski naziv ASP CASE CLR DBMS GUI HTML HTTP SOAP Active S erver Pages Computer Aided S oftware Engineering Common Language Runtime DataBase Management System Graphical User Interface HyperText Markup Lan gu age Hyper Text Transfer Protocol S imple Object Access Protocol predstavljaju dinamičke web stranice, kada pretraživač pošalje zahtev za ASP, web server generiše stranu sa HTML kôdom i šalje je natrag pretraživaču. Sve ASP web stranice imaju ekstenziju.asp ili.aspx. p redstavlja alat kao softwaresku podršku modeliranju tj. definisanju modela podataka realnog sistema. infrastruktura koju koristi.net za izvršavanje svih naših aplikacija. CLR uključuje veliki set biblioteka klasa koje možemo koristiti u svojim aplikacijama. sistem za upravljanje bazama podataka, jedan od najpozanatijih je Microsoft SQL Server programski grafički interfejs koji umnogome olakšava korištenje programa. primarni jezik za kreiranje web stranica. set pravila za razmenu fajlova (tekst, slike, zvuk, video i ostalo) preko weba. protokol koji omogućava klijent programima da proslijede gotovo bilo koju vrstu strukture podataka web servisu; to je razlog zašto web servisi koriste SOAP umesto HTTP Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 3

4 SQL URL WYSIWYG XML Structured Query Language Uniform Resource Locator What-You-See-Is-What-You-Get Extensible Markup Lan guage predstavlja jezik koji se koristi za upravljanje bazama podataka, sadrži sve elemente programskog jezika, kao što su procedure, promjenjive, funkcije, logika itd. predstavlja standardno značenje za adresiranje fajlova na internetu. HTML editori koji dopuštaju dizajnerima kreiranje i editovanje web stranica u graf ičkom okruženju, bez upotrebe pisanja HTM L kôda. I kao takvi će biti prikazani u pretraživaču. bazira se na specifikaciji razvijenoj od strane W3C. Omogućava dizajnerima da razvijaju sopstvene tagove, omogućavaju im definisanje, prenos, validaciju i interpretaciju između aplikacija. DDL Data Definition Language jezik za definiciju podataka DML Data Manipulation Laguage jezik za manipulaciju podacima DCL Data Control Language jezik za kontrolu podataka DQL Data Query Lan guage jezik za upit nad podacima Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 4

5 UVOD U današnjem školskom sistemu koji je na snazi u našem bliskom okruženju, informatika i informacioni sistemi imaju veliki značaj. Informacioni sistemi pružaju svoje niti kroz sve oblasti školskog rada i djelovanja, kako u oblasti administrativnih poslova, komunikacija, arhiviranja podataka u elektronskoj formi, pa sve do primjene informacionih sistema koje primjenjujemo u nastavi. Informacioni sistemi uveliko pojednostavljuju i ubrzavaju rad administrativne službe škole. U manjoj mjeri informacionim sistemom se koriste nastavnici iz razloga što program koji trenutno koristimo na nivou škola u Republici Srpskoj (odobren od Ministarstva prosvjete i kulture) nije operativno orijentisan tj. koristi se kao program koji bilježi krajnje rezultate svih segmenata poslovanja škole kao cijeline. Trenutno se podaci u školama ažuriraju vrlo rijetko. Često je to samo dva puta godišnje tako da aplikacija u koju unosimo ocijene nema realan pregled ocjena. Ocjene se unose na kraju p rvog i na kraju dru go g p olugodišta. Takođe bitno je naglasiti da se u program unose samo zaključne ocjene iz predmeta na kraju polugodišta. Iz ovoga proizilazi da podaci koji nastavnicima i profesorima zatrebaju u određene svrhe, a tiču se ocjena i zapažanja koja su upisana u dnevnike ne mogu biti dobijeni bez dublje analize koja zahtijeva određeni vremenski period. U zavisnosti od traženih podataka taj vremenski period može biti i nekoliko nedelja. U radu se neću baviti tehničkom izvedbom mogućeg projekta u smislu načina unosa podataka u e-dnevnik. Za to postoje mnoge mogućnosti koje se naknadno mogu prilagoditi projektu. Od klasičnog unosa pomoću tastature do touch-scren monitora. Postojeću bazu koja funkcioniše u sklopu e-dnevnika koja se koristi na nivou škole pomoću ASP-net tehnologije uvezaćemo i omogućiti izradu WEB-dnevnika, koji na dalje uz doradu projekta u budućnosti omogu ćava uslugu obavještavanja roditelja putem SM S servisa na njihov zahtijev u slučaju da ne posjeduju internet. Pošto je školstvo kod nas trenutno u procesu reformi i još uvijek nije sve izdefinisano, pažljivim modeliranjem baze i njenom kasnijem izradom, moramo omogućiti dalju nadgradnju u smislu novih zahtijeva koji će da se pojave. Elektronski dnevnik omogućiće unos ocijena u kompjuter (uvijek zapamćene ocjene za svaki predmet i svakog učenika). Ovo je bitno iz razloga potencijalnih krađa originalnih dnevnika ili potencijalnog neovlašćenog dopisivanja ocjena u dnevnike. Arhiviranje ocjena (prenošenje ocjena na CD i čuvanje za potrebe u budućnosti). Jednostavna statistika ocjena po kontrolnim zadacima, po predmetima, po nastavnicima, po odjeljenjima ili po cijelim generacijama, odnosno moguća je statistika po svim presjecima, koji se ukažu kao potrebni unutar škole. Lak prikaz ocjena roditeljima, koji dođu lično u školu te preko web stranice škole i mogućnost štampanja ocjena za učenika sa centralnog kompjutera. Ovo je korisno, jer roditelji onda gledaju ocjene i ponašanje samo svog djeteta, nema gledanja u tuđe ocjene. Projekat podstiče Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 5

6 informatizaciju cijele škole i lokalne zajednice. Web-dnevnik utiče na češće preventivne dolaske roditelja u školu. Web-dnevnik olakšava administrativni rad kolektivu škole i preventivno djeluje na bolji uspjeh učenika. Sve aktivnosti uveliko dovode do uvezivanja nastavnika, roditelja i stručne službe škole u cilju poboljšanja uspjeha učenika, koji se u budućnosti odražava kroz pravilan razvoj školske djece što vodi zdravom pojedincu u stabilnom i zdravom društvu. Ovaj rad će se baviti web dizajnom, bazama podataka, programiranjem web aplikacija i samom izradom web-dnevnika. Rad se sastoji iz dva dijela. U prvom dijelu biće pobliže objašnjeni alati koji su korišćeni za izradu samog specijalističkog rada, svaki posebno, kao i neki osnovni pojmovi web dizajna. U drugom dijelu se opisuje primjena predstavljenih tehnologija, modeliranjem podataka, izradom baze podataka, web stranice i povezivanjem svega toga u jednu funkcionalnu cjelinu. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 6

7 DIO I 1. OSNOVE WEB DIZAJNA U posljednjih pet godina težište je sa prednjeg kraja (popunjavanje sajta dopadljivom grafikom i animacijama, koje su često same sebi svrha) prenijeto na zadnji kraj (omogu ćavanje posjetiocu da posjetom web sajtu steknu prijatno i korisno iskustvo). Tehnologije pretraživača i servera su posljednjih godina doživjele ogroman napredak, tako da je izrada web sajtova koji sadrže d inamički kreirane stranice sada jednostavnija nego ikada ranije. Alati za pisanje u HTM L kôdu, koji su takođe i WYSIWYG (what you see is what you get) alati, kao što su Adobe GoLive, Adobe Dreamweaver CS3, pružaju mogućnost za korišćenje takvih tehnologija aplikativnih servera, kao što su ASP.NET (Active Server Pages dot NET), JSP (Java Server Pages), PHP (Preprocessor Hypertext Pages). Sadržaj n eko g web sajta smješten je na serveru koji vrši prenos stranice u momentu kada se u pretraživaču otkuca odgovarajući URL. Pošto je pretraživač instaliran na kompjuteru korisnika, taj kompjuter se naziva klijent. Stoga, sve što se dešava na strani klijenta naziva se aktivnost strane klijenta (client-side), odnosno aktivnost prednjeg kraja. Po istom principu sve što se dešava na strani servera naziva se aktivnost sa strane servera (server-side), ili aktivnost zadnjeg kraja. Slika 1. Osnovna struktura web sajta [1] Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 7

8 M ože se, dakle, reći da web dizajneri stalno nastoje da premoste jaz između web tehnologije i pretraživača. Postojanje restrikcija u dizajniranju prouzrokovano je upravo slabim stranama pretraživača, ili web tehnologije, pa je prevazilaženje ovih nedostataka jedan od osnovnih zadataka web dizajnera. Prije par godina ograničenja uslovljenja pretraživačima, kompjuterima uopšte, kao i samim jezgrom web tehnologije predstavljala su veoma ozbiljan problem. Danas web dizajneri imaju više sreće, bar u tome što tehnologija više nije među glavnim problemima. Slika 2. Blok-šema; način na koji su povezana sva područja Web dizajniranja [1] Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 8

9 1.1. Razvoj dizajnerskog koncepta Informaciona arhitektura je jedan aspekt web dizajna. Prva osoba koja započinje rad na nekom web projektu, obično je informacioni arhitekta, čiji se jedan od osnovnih zadataka sastoji u tome da stvori jasnu sliku o cilju koji klijent želi da postigne. Ako je riječ o nekom prodajnom (ecommerce) web sajtu, informacioni arhitekta će verovatno željeti da upozna vrstu proizvoda koje klijent namjerava da prodaje. U slučaju nekog informativnog web sajta, on bi trebalo da upozna vrstu informacija koje na sajtu treba predstaviti. Informacioni arhitekta, zatim, mora da osmisli koncept po kome se ove informacije, odnosno sadržaji, mogu grupisati, što će imati direktan uticaj na način navigacije unutar sajta. Dakle, nakon svega ovoga, upravo je infomacioni arhitekta taj koji dizajneru dostavlja skicu onoga što dizajnom sajta treba postići. U ovim ranim fazama projekta poželjno je da informacioni arhitekta ostvari timski rad sa specijalistom za web upotrebljivost, mada često ove dve funkcije obavlja jedna ista osoba. Slika 3. Osnovni aspekti web dizajna [1] Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 9

10 Nakon što dobije skicu informacione arhitekture, dizajner kreira grubu skicu glavne stranice (main page) i svih ostalih stranica web sajta. Kada kažemo gruba skica pod tim podrazumijevamo bukvalno grubu skicu, iscrtanu olovkom na običnom papiru. M nogi web dizajneri tvrde da ovaj trend upotrebe tradicionalnih medija (papira i olovke) nema nikakve veze sa uštedom vremena, ili novca, već je način da se spriječi da se klijent prema preliminarnoj skici sajta odnosi kao prema finalnom proizvodu. Skica iscrtana pomoću papira i olovke, naime, sasvim jasno ukazuje da se projekat nalazi u početnoj fazi. Kada se obave sve potrebne konsultacije sa klijentom, finalni dizajnerski koncept se kreira u photoshopu i prezentuje se klijentu. Ukoliko postoji neki budžet koji je odvojen za ispitivanje web upotrebljivosti sajta, sljedeći korak predstavlja kreiranje probnog modela web sajta, na koji se šalju probni posjetioci iz projektovane ciljne grupe. Tek u ovoj fazi projekta se može, sa određenom izvjesnošću, govoriti da li web sajt ostvaruje planirane ciljeve. U ovom trenutku dizajniranje obično ulazi u svoj drugi krug, u kome informacioni arhitekta i dizajner rješavaju nastale probleme. U osnovi dizajniranja web sajta imamo: Informacionu arhitekturu Vizuelno dizajniranje i programiranje Web upotrebljivost 1.2. Informaciona arhitektura Termin informaciona arhitektura je u ranim danima weba predstavljao jednu od glavnih poštapalica web dizajnera. Prije nego što je došlo do velike ekspanzije interneta, potražnja za informacionim arhitektama je bila ogromna i veliki broj kompanija za web dizajn je bio u stalnoj potrazi za stručnjacima koji imaju iskustva u ovoj oblasti jednostavno, zbog toga što prvenstveno od njih zavisi da li će neki web sajt biti dobar, ili loš. Informaciona arhitektura nije ni danas ništa manje važna, ali sada kompanije ispoljavaju mnogo veću neodlučnost pri uključenju troškova ove vrste u svoj budžet. Isto važi i za ispitivanje web upotrebljivosti sajta. Ovo, međutim, može predstavljati značajnu prednost za male web agencije, koje su spremne da ulože vrijeme i novac da bi u potpunosti ovladale ovim oblastima dizajniranja. Šta se, dakle, zaista podrazumijeva pod pojmom informaciona arhitektura? Ako bismo željeli da ga definišemo jednom jedinom rečen icom, možemo r eći da se pod ovim pojmom podrazumijeva organizovanje informacija i sadržaja koje je zasnovano na logičkom i dosljednom navigacionom konceptu. Ovo može, na prvi pogled, izgledati isuviše jednostavno, ali je u stvarnosti riječ o apsolutno najvećem izazovu u web dizajniranju. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 10

11 Dizajneri koji dolaze iz svijeta stonog izdavaštva mogu ovdje imati veoma velikih poteškoća, jer se pri dizajniranju za štampane medije koristi davno uspostavljeni set pravila i koncepata, na koje smo svi tako dobro naviknuti da više i ne razmišljamo o njima. Na primjer, svaka knjiga ima sadržaj, indeks i poglavlja, koja njen sadržaj dijele na manje jedinice. Kod dizajnera knjiga, kao i kod čitalaca, ovaj navigacioni koncept je tako duboko usađen u naviku da više niko ne osjeća potrebu da razmišlja kako da struktuira, odnosno, kako da koristi neku knjigu. Kod weba, međutim, informacijama se ne može pristupiti, niti su one organizovane na tako linearan način. Ovdje p ostoji mnogo više mo gućih opcija za organizaciju sadržaja i navigacionih elemenata. Slika 4. Približna podela vremena pri dizajniranju web sajta [1] Ovdje se može p ovući paralela sa razvojem korisničkog interfejsa za kompjutere. Naime, kompjuteri i aplikacije pisane za njih u početku nisu podržavali neke standardne funkcije čak ni jednostavne, nama tako neophodne i dobro poznate komande, kao što su cut, copy i paste. Mogućnost da neki sadržaj kopirate u clipboard, pa da ga kasnije zalijepite (paste) u nekoj drugoj aplikaciji danas nam iz gleda sasvim prirodno, ali ako ste ikad posmatrali nekoga ko tek počinje da uči da koristi kompjuter, sigurno ste primjetili koliko je za početnikov um naporno da prihvati ovako jednostavan koncept. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 11

12 Ovo treba imati na umu kada započnemo kreiranje web sajtova, jer sve što nama izgleda logično, n e mor a obav ezno izgled ati lo gično i posjetiocima našeg sajta. Danas postaje trend u svijetu, da kompanije koje se bave web dizajnom, upotrebljavaju tzv. ispitne grupe, koje služe za proučavanje načina na koji korisnici reaguju na određene sajtove. Proučavanje se vrši tako što se ovim grupama daju određeni zadaci, kao što je potraga za nekim određenim dokumentom, ili uslugom, nakon čega se dobijeni rezultati pomno analiziraju. Najčešće greške u informacionoj arhitekturi: Prevelik broj kategorija Robovanje već postojećim strukturama Nedosljedna organizacija navigacije Zakopavanje informacija u isuviše mnogo nivoa Prevelik broj kategorija Smanjenje broja kategorija je ključ uspjeha, kombinujte informacije i na taj način, izbjegnite previše kategorija. Nepisano pravilo je da ne bi trebalo imati više od sedam kategorija; naučna istraživanja pokazuju da je to najviše što prosečan posjetilac može da upamti. Robovanje već postojećim strukturama Da li je struktura web sajta koji kreirate osmišljena, ili samo odražava organizacionu strukturu kompanije za koju radite? Uvijek se zapitajte da li su kategorije na koje je sajt podijeljen logične sa posjetiočevog aspekta. Nedosljedna organizacija navigacije Da li je navigacioni koncept jednostavan i nedvosmislen? Ukoliko nije, počnite ispočetka. Vaš koncept bi trebalo da ima jasnu globalnu, paralelnu i lokalnu navigacionu strukturu. Zakopavanje informacija u isuviše mnogo nivoa Mnogi web sajtovi se granaju poput stabla. Ukoliko vaše stablo sadrži više od četiri hijerarhijska nivoa, vjerovatno je isuviše kompleksno. Kreirajte vizuelni prikaz, ili dijagram dizajna svog sajta, što će vam pomoći u boljoj kontroli njegove hijerarhije Web upotrebljivost Iza informacione arhitekture, na listi najpopularnijih termina web dizajnera nalazi se web upotrebljivost. Razlog za pojavu ovog termina leži u konkurenciji. Naime, sve je više bilo web sajtova koji su pružali slične, ako ne i potpuno identične usluge. Dobar primjer za ovo predstavljaju pretraživačke mašine (search engines), kojih je bilo nebrojeno mnogo, pa su korisnici najradije upotrebljavali najjednostavnije. U nastavku će biti objašnjeni osnovni elementi web upotrebljivosti što će nam pomoći da unaprijedimo sopstvene projekte. Pisanje sadržaja (Content authoring): Kada kreiramo sadržaj za neki web sajt, nećemo moći da koristimo linearni stil koji se primjenjuje u štampanim medijima. Najbolji način na koji možemo izvršiti usmjeravanje sadržaja, jeste taj, da pomoću hiperlinkova kreiramo veze ka manje važnim informacijama. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 12

13 Hiperlinkove, međutim, čitaoci (uglavnom nesvjesno) koriste za brz pregled ( skeniranje ) sadržaja teksta, tako da je potrebno da budemo veoma pažljivi i da za linkove odaberemo samo najvažnije riječi u nekom tekstu. Osim toga, ne treba da kao link upotrebljavamo frazu klikni ovde ( click here ); ona ne pruža nikakve dodatne informacije, a njenom upotrebom ćemo, između ostalog, propustiti šansu da se bolje kotiramo na listama ključnih riječi u pretraživačkim mašinama, jer mnoge od njih hiperlinkovane ključne riječi vrednuju više od preostalog sadržaja na stranici. Upotreba radnog prostora ekrana: Zlatno pravilo je da sadržaj treba da zauzima bar polovinu čitave web stranice. Najoptimalniji efekat se postiže kada sadržaj zauzima 80 procenata stranice, dok je preostali dio od 20 procenata ekrana rezervisan za druge elemente, kao što su elementi za navigaciju i reklamni baneri. Vrijeme reakcije (Response time): Proučavanja web upotrebljivosti su pokazala da je za korisnike od prioritetne važnosti vrijeme potrebno za preuzimanje (download) neke stranice. Vrijeme reakcije koje je manje od jedne sekunde je idealno, ali se ono sasvim rijetko postiže, čak i pri upotrebi kablovskog modema i DSL-a (Digital Subscriber Line digitalna pretplatnička linija). Testovi upotrebljivosti: Dizajniranje nekog web sajta bez upotrebe određenih testova njegove upotrebljivosti zaista predstavlja veliki rizik. Upotrebljivost na nivou sajta odnosi se na početnu stranicu (home page), informacionu arhitekturu, navigaciju i pretraživanje, strategiju linkovanja, opšti stil pisanja, uzorke i izgled stranice, dizajnerske standarde koji su primjenjeni na sajtu, primjenjeni grafički jezik i najčešće upotrijebljene ikonice. Upotrebljivost na nivou stranice odnosi se na specifične elemente pojedinačnih web stranica i uključuje: razumljivost naslova, linkova i objašnjenja, intuitivnost formi i poruka o grešci i pojedinačnu grafiku i ikonice. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 13

14 2. MODELIRANJE PODATAKA ( ERWIN ) M odeliranje podataka je naše apstraktno viđenje stanja realnog sistema, tj. definisanje strukture podataka. M odel podataka je pojednostavljeno predstavljanje realnog sistema preko skupa objekata (entiteta), veza između objekata i atributa objekata. M odel podataka (definisan kao Model Objekti Veze (M OV) ili E R (Entity Relationship) model), preko skupa podataka i njihovih međusobnih veza, predstavlja stanje sistema u jednom trenutku vremena i sadrži skup informacija o prošlosti i sadašnjosti sistema koja je potrebna da se pod dejstvom budućih poznatih ulaza mogu odrediti njogovi budući izlazi. M odeliranje podataka je svojevrstan grafički jezik za predstavljanje strukture podataka. CASE (Computer Aided Software Engineering) alati kao software-ska podrška modeliranju predstavljaju samo alat za definisanje modela podataka realnog sistema, odnosno za opisivanje skupa povezanih objekata realnog sistema i događaja u njemu preko jednog složenog apstraktnog tipa podataka. Izbor odgovarajućeg CASE alata sam po sebi je manje ili više formalan, dok postupak modeliranja realnog sistema, zavisi od sposobnosti, znanja i iskustva analitičara. M odel podataka je intelektualno sredstvo pomoću koga se prikazuje u kakvom su međusobnom odnosu podaci u nekom realnom sistemu. Neki model podataka je potpuno određen ako su definisane sljedeće tri komponente: Struktura podataka kojima se definišu statičke karakteristike sistema, odnose se na kreiranje ER modela i atributa ER modela. Ograničenja logička ograničenja na podatke (pravila integriteta) koja se ne mogu definisati preko strukture modela podataka i odnosi se na definisanje poslovnih pravila. Skup operatora (operacije) definiše dinamičku interpretaciju podataka kroz njihovu obradu, ima uticaja na definisanje fizičkog nivoa modela i verifikaciju finalnog dizajna. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 14

15 2.1. Kreiranje ER modela ER model definisan je entitetnim dijagramom kojim se definišu odgovarajući tipovi entiteta i uspostavljaju veze između njih, kao i definisanje detalja vezanih za opis sadržaja entiteta (atributi i njihove karakteristike). Struktura podataka definisana je sa tri komponente: Entitete koji se dijele u dvije grupe: Nezavisne entitete to su entiteti koji imaju vlastitu identifikaciju, tj. nisu zavisni od drugog entiteta. Zavisne entitete to su entiteti čija je egzistencija i identifikacija zavisna od drugog ili drugih entiteta. Atribute koji se mogu nalaziti u: Oblasti ključeva ili Oblasti podataka. Veze koje se dijele na: Identifikujuće veze koje entitet dijete identifikuju kroz njegovu vezu sa entitetom roditelj. Neidentifikujuće veze koje ne identifikuju entitet dijete preko identifikatora entiteta roditelj. Neodređujuće veze koje se smatraju veze više prema više. Veza prema podtipovima uspostavlja vezu između entiteta i njegovih zavisnih, klasnih entiteta Atributi ER modela Svaki objekat realnog svijeta definisan je osobinama pa, po toj analogiji i entiteti imaju atribute kojima se opisuju karakteristična svojstva. Da bi se definisala lista kandidata za atribute mora se dati odgovor na pitanje šta je to interes procesa obrade podataka. Da li će po nekoj osobini objekat biti entitet ili atribut, tj. koju će ulogu da ima zavisi od pogleda koji želimo da predstavimo. Ako je osnovni objekat od interesa npr. kuća, onda kuća postaje entitet, a ulica atribut, u suprotnom ako je objekat od interesa ulica, onda je ulica entitet, a kuća postaje atribut. Osnovna pravila za definisanje atributa su: Svaki entitet ima proizvoljan broj atributa Određeni atribut pripada jednom i samo jednom entitetu Svako pojavljivanje entiteta ima vrijednost za sve atribute tog entiteta Atribut određenog pojavljivanja entiteta može imati samo jednu vrijednost Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 15

16 Različita pojavljivanja entiteta mogu, a ne moraju imati različite vrijednosti za isti atribut Svaki atribut mora imati samo jedno konzistentno značenje Svaki atribut predstavlja jednu određenu činjenicu pa i svako značenje vrijednosti atributa mora imati jedno dosljedno značenje Definisanje ograničenja Realni svijet, opisan objektima, vezama između njih i osobinama, ograničen je u nekom prostoru pa je i u modelu podataka potrebno definisati ograničenja vezana za: Strukturu modela objekti veze i Ograničenja koja se posebno definišu Ograničenja definisana strukturom model objekti veze Ova ograničenja vezana su za: Identifikaciju entiteta gd je je nemoguće da postoje dva primjerka entiteta u istom tipu entiteta takvi da imaju istu vrijednost atributa koji čine identifikator tj. ne postoje dva tipa entiteta koji imaju isti skup atributa kao identifikator. Ograničenje postojanja jednog tipa objekta u zavisnosti od drugog tipa objekta. Ograničenje mogućnosti identifikacije jednog objekta bez poznavanja identifikatora, nekog drugog objekta. Specijalni tipovi veze kojima se d efinišu p odtip ovi. Ograničenja koja se posebno definišu Ona se mogu podijeliti na: Ograničenja na vrijednost atributa Ograničenja na kardinalnost veza između entiteta roditelj i entiteta djeteta i to: Kardinalnost tipa (Zero or One) gdje se jedan primjerak jednog tipa entiteta pridružuje nijednom ili jednom primjerku drugog tipa. Kardinalnost tipa (Zero, One or More) gdje se jedan primjerak jednog tipa entiteta pridružuje nijednom, jednom ili većem broju primjeraka drugog tipa. Kardinalnost tipa (One or More) gdje se jedan primjerak jednog tipa entiteta pridružuje najmanje jednom ili većem broju primjeraka drugog tipa. Kardinalnost tipa konkretne vrijednosti (Exactly) gdje se jedan primjerak jednog tipa entiteta pridružuje tačno definisanom broju drugog tipa entiteta Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 16

17 Sveobuhvatnost objekta u vezi vezana za kardinalnost entiteta dijete prema entitetu roditelj: Totalno učešće gdje svi primjerci tipa entiteta učestvuju bar u jednoj vezi (No nulls) Parcijalno (delimično) učešće gdje pojedini primjerci entiteta učestvuju u vezi (Nulls Allowed) Postoje dva postupka navođenja kardinaliteta u ER dijagramima. 1. Način 2. Način Slika 5. Postupci navođenja kardinalnosti u ER dijagramima [2] U oba slučaja opisan je isti realni sistem, u kojem: Radnik mora biti raspoređen na tačno jedno radno mjesto, Na jedno radno mjesto može biti raspoređeno više radnika, ali mogu postojati radna mjesta na kojima nije niko raspoređen. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 17

18 3. MICROSOFT SQL SERVER 2000 Već od najranijih dana informatičke (r)evolucije obrada podataka zauzimala je istaknuto mjesto, a potreba za bržim i sigurnijim pristupom podacima te većom zaštitom i jednostavnijom manipulacijom dovela je do razvoja nekoliko modela sistema za upravljanje bazama podataka DBMS (Database Management System). Danas su baze podataka gotovo nezaobilazan faktor pri programiranju svih većih aplikacija uključujući i dinamičke web stranice čiji je razvoj praktički nezamisliv bez povezivanja na bazu i upotrebe SQL-a, bez obzira govorimo li o ASP-u, JSP ili PHP-u. Dakle, razmišljamo li o naprednim web stranicama, trebaće nam znanje nekog skriptnog jezika i baza podataka. Prije nego što objasnimo što je to SQL, idemo razjasniti neke osnovne pojmove iz područja baza podataka Modeli baza podatak a Iako postoji više modela baza podataka, najpoznatiji i najkorišteniji su: Hijerarhijski model Mrežni model Relacijski model Objektni model Hijerarhijski model prilično je jednostavan i ne zahtijeva veliko informatičko znanje, ali su pristup i manipulacija informacijama iznimno otežani zbog stroge hijerarhijske međuzavisnosti. Mrežni model je fleksibilan, moćan i efikasan, a podacima se pristupa preko mreže logičkih veza. Nedostatak ovog pristupa jest zahtjev za upotrebom brzih računara i većim informatičkim znanjem. Relacijski model (RDBMS) temelji se na klasičnom tabelarnom modelu. Tablice se međusobno povezuju relacijama čija je glavna uloga čuvanje integriteta p odataka, brže pretraživanje i izbjegavanje redundancije, odnosno ponavljanja pojedinog podataka na više mjesta ili tablica Relacijski model Tablice se sastoje od više kolona (atributa) od kojih svaka ima jedinstveno ime (npr. "ime", "prezime", "JM BG"). Svaki red u tablici predstavlja jedan zapis, odnosno podatke o nekom entitetu (u spomenutom slučaju to su ime, prezime i JM BG određene osobe). Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 18

19 Slika 6. Osnovni pojmovi relacijskog modela podataka Tablice se povezuju preko kolone koja se nalazi u obje tablice (npr. JMBG), a važno je da je riječ o podatku čija je jedinstvenost osigurana. To znači da dva zapisa ne mogu imati istu vrijednost te kolone, pa se najčešće koriste različite šifre, ili ukoliko su u pitanju osobe, JM BG. U matičnoj tablici (parent) takva se kolona naziva primarni ključ, a u podređenoj tablici (child), odnosno onoj s kojom je parent tablica povezana preko primarnog ključa, strani ključ. Ponekad se jedinstvenost može osigurati samo kombinacijom dva ili više polja, a takav ključ zove se složeni ključ. Prednost relacijskog modela leži u povezanosti tablica preko ključeva. Npr. brisanjem člana neke biblioteke u tablici s podacima o članovima, automatski možemo izbrisati i sve zapise o njegovim dotadašnjim posudbama u nekoj drugoj tablici. Na taj se način postiže referencijalni integritet, odnosno postojanost svih podataka u bazi. Normalizacija Osnovni cilj relacionog modela podataka je da odgovarajuća baza p odataka: Ne sadrži redundansu, Da se može jednostavno koristiti i mijenjati. Normalne forme daju formalne kriterije prema kojima se utvrđuje da li model podataka ispunjava prethodne zahtjeve. Normalizacija je proces provjere uslova normalnih formi i po potrebi svođenje šeme relacije na oblik koji zadovoljava iste. Procesom normalizacije želi se razviti dobar model podataka tako da se iz nekog početno zadatog modela otklone slabosti (redundansa i problemi u održavanju). Pod redundansom podrazumijevamo višestruko memorisanje iste informacije u bazi podataka. Cilj koji se teži dostići pri projektovanju baze podataka je eliminisanje redundanse zbog niza negativnih posljedica koje ona donosi. Višestruko memorisanje istog podatka dovodi do povećanog korišćenja memorijskog prostora i otežanog održavanja podataka. Realni cilj pri projektovanju baze podataka je kontrolisana redundansa podataka. Jednostavno korišćenje i mijenjanje podataka podrazumijeva prije svega sprječavanje anomalija održavanja podataka. Pod anomalijom održavanja podataka podrazumijevamo: Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 19

20 anomaliju dodavanja, anomaliju brisanja, anomaliju promjene. Anomalija dodavanja javlja se u onim slučajevima kada su informacije o svojstvima jednog objekta memorisane u bazi podataka kao dio opisa nekog drugog objekta. Na primjer, u okviru opisa nastavnika memorisane su informacije o predmetu koji predaje. Informacije o predmetu nije moguće unijeti u bazu podataka sve dok ne postoji bar jedan nastavnik koji taj predmet predaje. Anomalija brisanja je inverzija anomalije dodavanja. Neka su u okviru opisa svojstava nastavnika memorisane informacije o predmetu koji predaje. Svakim brisanjem opisa nastavnika briše se i jedna kopija podataka o predmetu koji predaje. Anomalija mijenjanja javlja se u slučaju kada promjenu podataka o jednom objektu treba izvršiti na više od jedne kopije podataka. U bazi podataka u jednom trenutku postoji toliko opisa predmeta koliko nastavnika predaje taj predmet. Ako treba promijeniti podatke o opisu predmeta, tada to moramo učiniti na onoliko mjesta koliko nastavnika predaje taj predmet. Vertikalna normalizacija dekompozicijom U kontekstu vertikalne normalizacije definisano je šest normalnih formi (NF): prva normalna forma (1NF); druga normalna forma (2NF); treća normalna forma (3NF); Boyce/Coddova normalna forma (BCNF); četvrta normalna forma (4NF); peta normalna forma. Zadatak postupka normalizacije je da relacionu šemu prvo transformiše u 1NF, zatim u 2NF, 3NF i tako redom. Što je redni broj normalne forme veći, to su i uslovi koji se postavljaju strožiji. Prva normalna forma šema relacije je u prvoj normalnoj formi ako i samo ako je domena svakog od njenih obilježja skup atomarnih vrijednosti. S obzirom da je u kontekstu relacionog modela sama relacija definisana kao neprazan podskup Dekartovog proizvoda atomarnih domena, slijedi da je svaka relacija u 1NF. Druga normalna forma relaciona šema R nalazi se u 2NF ako je svako neključno obilježje od R potpuno zavisno od kandidata ključa. Iz ove definicije jasno je da relacija koja se nalazi u 2NF mora biti i u 1NF. Sva neključna obilježja relacije u 2NF moraju biti funkcionalno zavisna od ključa relacije (uslov za 1NF), i ta funkcionalna zavisnost mora biti potpuna (dodatni uslov). Specijalni slučaj ispunjenosti uslova 2NF je ako su u relaciji R sva obilježja ključna ili ako se svi kandidati za ključ sastoje samo od po jednog obilježja. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 20

21 Treća normalna forma relaciona šema R nalazi su u 3NF ak o je u 1NF i ako ni jedno neključno obilježje u R nije tranzitivno zavisno od ključa od R. 3NF podrazumijeva ispunjenost 1NF i 2NF. Prethodna definicija 3NF eksplicitno zahtijeva da se relacija nalazi samo u 1NF. S obzirom da je parcijalna funkcionalna zavisnost poseban slučaj tranzitivne zavisnosti, iz uslova da neključna obilježja relacione šeme u 3NF ne smiju biti tranzitivno zavisna od ključa, proizilazi da se relaciona šema u 3NF mora nalaziti i u 2NF. Relacija čije sve domene sadrže samo atomarne vrijednosti, kažemo da je normalizovana, odnosno da se nalazi u 1NF. Prevođenje relacione šeme u 2NF znači eliminisanje neključnih obilježja koja su funkcionalno zavisna od dijela primarnog ključa. Konačno, prevođenjem relacione šeme u 3NF iz šeme su izbačena sva neključna obilježja koja su bila tranzitivno zavisna od ključa. Neključna obilježja relacione šeme koja je u 3NF ispunjavaju sljedeće uslove: funkcionalno su zavisna od primarnog ključa šeme, nisu funkcionalno zavisna od podskupa obilježja šeme koji nije kandidat za ključ, odnosno nisu tranzitivno zavisni od primarnog ključa Osnovne karakteristike SQL jezika SQL (Structured Query Language) je duša relacijskog modela, a razvio ga je IBM početkom 70-ih godina. ANSI (American National Standard Institute) i ISO (International Standards Organization) standardizovali su SQL godine (verzija SQL-86). Trenutno važeći standard datira iz odakle potiče i novi naziv SQL-92. Svi sistemi za upravljanje bazama podataka nastoje što više slijediti originalni standard, ali takođe pokušavaju obogatiti SQL različitim opcijama koje nisu standardizovane. Zato se često mogu uočiti razlike u sintaksi SQL naredbi koje se koriste u različitim bazama podataka. Svaka baza podataka dolazi s alatom koji korisniku dopušta unošenje i izvršavanje SQL naredbi (query = upit). Svaka naredba završava interpunkcijskim znakom tačka-zarez (;), a ukoliko se instrukcija prostire kroz više redova, znak ';' stavlja se na kraj posljednjeg reda. Kada se SQL naredba uključuje u drugi programski jezik (Embedd ed SQL), ona završava na način svojstven tom jeziku. Iako je SQL no-case-sensitive, odnosno ne razlikuje mala i velika slova, uobičajeno je da se ključne riječi pišu velikim slovima. SQL se dijeli na četiri "podjezika": Data Definition Language (DDL) sastoji se od naredbi za definisanje objekata baze podataka: npr. CREATE, DROP i ALTER Data Manipulation Laguage (DML) sastoji se od naredbi za manipulisanje podacima u bazi: npr. INSERT, DELETE, UPDATE Data Control Lanuage (DCL) sastoji se od naredbi za kontrolu podataka i njihovu sigurnost: np r. GRANT i REVOKE Data Query Language (DQL) sastoji se od naredbi za pretraživanje i dohvaćanje podataka u bazi : npr. SELECT Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 21

22 3.4. SQL Server 2000 SQL Server nije okruženje za razvoj aplikacija za rad sa bazama podataka u onom smislu u kojem su to M icrosoft Access ili FoxPro. On je kolekcija komponenti i proizvoda koje se u potpunosti dopunjavaju, kao kijent/server sistem, a sve u cilju skladištenja podataka, njihovog vađenja iz baze, kao i zahtjeva za analizom. On se može koristiti kod preduzeća čija je veličina najvećih kompanija i komercijalnih web sajtova, koje opslužuju milione transakcija u jednom danu, ali se može koristiti i kod malih kompanija, pa čak i kod pojedinaca i specijalizovanih aplikacija koje zahtjevaju robusno skladištenje podataka i stalne servise. Postoje četiri osnovne teme. SQL Server 2000 je tako napravljen da: U potpunosti omogućava rad na internetu Ima najmanje vreme do isporuke proizvoda Bude visoko prilagodljiv Bude visoko portabilan (prenosiv) SQL Server je jedan od proizvoda za rad sa bazama podataka, koji se najviše koristi na internetu. On sada ima podršku namijenjenu specijalno za internet aplikacije, posebno one koje čine osnovu M icrosoft.net inicijative. Da bi proizvod bio kampatibilan sa SQL Serverom i internetom, koji podržava internet standarde, on mora da pokrije dvije oblasti: razmjenu podataka i povezivanje. Komponenta povezivanja se ostvaruje tako što se obezbjeđuje pristup do SQL Servera preko HTTP URL-a (Uniform Resource Locator). Komponenta razmjene podataka dolazi iz ugrađene podrške za XML (Extensible Markup Language), koji se smatra najznačajnijom tehnologijom, od početka interneta prije nekoliko decenija. To je ključni faktor koji vodi do kritične mase na internetu Enterprise Manager Enterprise Manager se prvi put kod SQL Servera pojavio godine, sa verzijom 6.0. u verziji 7.0. Enterprise manager je prebačen n a MM C (Microsoft Management Console). U verziji 2000 je bio visoko sofisticiran MM C koji se može koristiti za grafičko administriranje SQL Servera bazama podataka i njihovim objektima, kao i samim DBMS sistemom, sigurnošću, terminiranjem, arhiviranjem, performansama, replikacijom, itd. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 22

23 Banke Bank of America First Union City Bank Point Bank Nivo spoljašnjih korisnika Capital Bank First National Bank Konceptualni nivo za programere Unutrašnji nivo za administratore baze podataka i SQL Servera Slika 7. Tri nivoa (pogleda) na SQL Server bazu podataka [3] Baze podataka SQL Servera dijele se u dvije grupe. To su sistemske i korisničke baze podataka. Sistemske baze podataka su baze master, model, tempdb i msdb. Dve dodatne baze podataka koje se instaliraju su pu bs i northwind. Ovo su demo baze podataka. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 23

24 SQL Server koristi bazu master za praćenje stanja sistema. Tu se zapisuju i informacije o ostalim bazama podataka u sistemu, prostoru na disku, upotrebi, DBMS konfiguraciji, informacije o objektima i izvornom kôdu itd. Master baza predstavlja šemu baze podataka. Baza model je šablon baze podataka. Kada kreiramo novu bazu podataka, ona se kopira iz modela, odnosno izvodi se iz njega. Ako treba da kreiramo bazu podataka koja je unaprijed konfigurisana sa izvjesnim vrijednostima, mogli bismo da kreiramo ta podešavanja u bazi model, nakon čega će sve nove baze naslijediti ta podešavanja. Baza model ne treba da se instalira u okruženjima koja se dalje prosljeđuju. Iz baze model izvedena je i baza tempdb. Ona čuva sve privremene podatke, koji su SQL Serveru potrebni za vrijeme njegovog životnog ciklusa, drugim riječima, sve dok se ne zaustavi i restartuje. Podaci u bazi tempdb se ne zapisuju i baza podataka i njene tabele se ponovo kreiraju kada se SQL Server pokrene. Posljednja u grupi sistemskih baza podataka je MS DB koja se koristi za servis SQL Serever Agent koji se koristi za definisanje i obavljanje terminiranih poslova, kao što su arhiviranje baze podataka ili transformacija podataka. Slika 8. Konceptualni pogled na baze podataka SQL Servera Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 24

25 onako kako ga vide iz Enterprise Managera [3] Jedinica ili objekt za skladištenje podataka u bazi podataka SQL Servera je tabela. To je ono što se u terminologiji relacionih sistema naziva relacijom. Svaka tabela sadrži podatke koji su povezani sa entitetima, koje ponovo možemo nazivati i objektima. Na primjer, svaka tabela računa može da sadrži dužnike i njihove atribute, kao što su imena dužnika, stanje njihovih računa, rokovi, kao i periodi kreditiranja. Tabele sadrže kolone i vrste. Svaka kolona predstavlja atribut objekta, kao što su, na primjer, ime i broj kupca. Vrste predstavljaju instance ili količinu objekata u tabeli. Na primjer, ako imamo 10 vrsta u tabeli dužnici (debtors), onda imamo 10 instanci dužnika, ili 10 zapisa tipa dužnik. (Instance mogu biti identične, ako ne postoji pravilo jednoznačnosti, primarni ključ, ili neko slično ograničenje nad tabelom). Ako u bazi podataka imamo samo jednu tabelu, onda naravno svaka vrsta predstavlja jedinstven i kompletan zapis. Ali, ako podatke razdvojimo u nekoliko tabela, onda naš zapis takođe obuhvata više tabela. Kada se akcija odvija nad pojedinim vrstama u tabeli, onda ću koristiti termin vrsta. Tu mislim na sortiranje vrsta kao fizičku operaciju. Kada mislim na stvarne podatke, onda govorim o zapisima. Ako shvatimo razliku između zapisa i vrste, onda imamo preduslov da shvatimo koncept referencijalnog integriteta. Postoje dva načina za kreiranje tabela u bazi podataka SQL Servera. To je moguće uraditi interaktivno (preko alata Enterprise Manager) ili direktno, preko T-SQL sintakse koja je kompatibilna sa ANSI standardom. T-SQL kôd je jezik za definisanje podataka DDL (Data Definition Language) i nije bitno koji metod koristimo. DDL je ono što se šalje na server i preko čega se tabele kreiraju. Naredni kôd kreira tabelu inventory: CREATE TABLE inventory (item char(120)) Ovaj kôd kreira tabelu inventory i u nju ubacuje jednu kolonu po imenu item, sa tipom podatka char, čija dužina može biti do 120 karaktera. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 25

26 Slika 9. Kreiranje tabele u Enterprise Manageru [3] 4. ASP.NET ASP je više od s ljedeće verzije ASP-a (Active Server Pages), to je Web razvojna platforma koja donosi servise potrebne programerima da razvijaju "enterprise-class" Web aplikacije. Iako je ASP.NET u velikoj mjeri sličan sa ASP-om (sintaksički gledano), takođe omogućava i nov programski model za stabilnije i sigurnije aplikacije. Naše postojeće ASP aplikacije možemo poboljšati dodavanjem ASP.NET funkcionalnosti. ASP.NET je.net bazirano okruženje, možemo praviti aplikacije u bilo kom.net kompatibilnom jeziku uključujući C#, VB.NET i JScript.NET. Odnosno, cijeli.net Framework je na raspolaganju bilo kojoj ASP.NET aplikaciji. Programeri mogu lako pristupiti pogodnostima ove tehnologije, koja uključuje CLR (Common Language Runtime) okruženje, nasljeđivanje, itd. ASP.NET je dizajniran da radi sa WYSIWYG HTM L editorima i drugim alatima, uključujući i Visual Studio.NET koji (iako (pre)skup) ne samo da umnogome olakšava Web Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 26

27 programiranje već i omogućava korišćenje svih pogodnosti koje on pruža, uključjući GUI (Graphical User Interface) programiranje. Programeri mogu da biraju između 2 načina kada kreiraju ASP.NET aplikaciju, Web Forms i Web Services (Web Servisi), ili da ih kombinuju u bilo kom obliku koji vide da je najpogodniji. Web Forms nam omogućava da pravimo moćne "forms-based" Web strane. Kada pravimo ove strane možemo koristiti ASP.NET server kontrole da kreiramo UI elemente i programiramo ih za određene zadatke. Ove kontrole nam pomažu da brzo pravimo Web formu (stranu) kao što pravimo Win aplikacije (bez ugnežđivanja u HTML kod) što uprošćava kôd same strane. Ako imamo iskustva sa ASP-om, novi ASP.NET programski model biće nam veoma poznat. Ipak, ASP.NET objektni model se značajno promijenio od starijeg ASP-a, praveći ga više objektno orijentisanim, odnosno za programiranje možemo koristiti "sirovu" snagu, objektno orijentisanih programskih jezika kao što su C++, C#,VB... Ovo, nažalost, znači da ASP.NET nije baš kompatibilan sa starijom verzijom ASP-a, skoro sve ASP strane moraju biti modifikovane da bi se pokretale pod ASP.NET-om. Glavne promene u Visual Basic.NET-u prouzrokuju da postojeće ASP strane napisane sa VBScript-om se neće direktno portovati do ASP.NET-a. U većini slučajeva, ipak, neophodne promjene uključuju samo nekoliko linija kôda. ASP.NET obezbjeđuje prost model koji omogućava Web programerima da pišu Web aplikacije slično kao i Win programe. Programeri mogu da pišu taj kôd u global.asax tekst fajlu ili u kompajliranoj klasi kao assembly. Ovakva logika uključuje programske događaje, ali programeri mogu lako da prošire ovaj model potrebama njihove Web aplikacije CLR (Common Language Runtime) CLR (Common Language Runtime) je infrastruktura koju koristi.net za izvršavanje svih naših aplikacija. CLR uključuje veliki set biblioteka klasa koje možemo koristiti u svojim aplikacijama. Neke zanimljive klase koje se odnose na internet obuhvataju usluge, koje nam omogu ćavaju da manipulišemo Windows NT beležnicom događaja, Active Directory, servisima za šifriranje, brojačima performansi, COM + servisima, serijalizacijom objekata i matičnim Windows servisima. CLR takođe vodi računa o kompajliranju kôda međujezika ( intermediate language ) ili IL kôda na mašinski kôd. Osnovni proces radi na sljedeći način : 1. C# kompajler konvertuje naš kôd u IL. U pogledu funkcionalnosti i složenosti jezika, IL se nalazi negdje između mašinskog jezika i C jezika. IL je optimiziran za brzo kompajliranje u mašinski kôd. IL možemo shvatiti kao međuproizvod procesa kompajliranja. 2. Našu internet aplikaciju poziva korisnik, ili preciznije, web server kao reakciju na zahtjev korisnika. 3. CLR preuzima i kompajlira IL jezik u mašinski kôd. Ovo se odvija funkciju po funkciju. Ukoliko se funkcija koristi, ona je kompajlirana u mašinski jezik. Ukoliko se ne koristi, ona ostaje kao IL. Slučajevi greške za vrijeme ovog procesa su ekstremno rijetki, ekvivalentni su sa slomom kompajlera. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 27

28 CLR sadrži i druge servise, uključujući podršku za pokretanje više.net aplikacija u okviru jednog procesa uz garanciju da se one neće međusobno ometati. Ovo je rezultat koncepta koji je nazvan bezbjednost tipova (type safety), svaki.net jezik mora da garantuje kôd bezbjednih tipova, što obezbjeđuje da nizovima i kolekcijama nikad neće biti pristupano pogrešno, uz još neke stvari. C# kompajler uvijek primorava bezbjednost tipova kada kompajlira naš kôd u IL Obrade dinamičkih strana Šta se dešava kada korisnik usmjeri web pretraživač u jednu od naših strana? Web pretraživač generiše HTTP zahtjev za određenu stranu koju korisnik želi da pogleda. Web server, koji sve vrijeme osluškuje očekujući HTTP zahtjeve, prihvata zahtjev i traži fajl te određene strane. Ukoliko se strana završava ekstenzijom.htm ili.html, web pretraživač jednostavno egzaktno vraća sadržaj fajla. Naravno, web serveri mogu da urade više od jednostavnog prikazivanja fajlova koji se završavaju ekstenzijom.htm. Trenutno možemo naći web sajtove koji rade sve vrste komplikovanih zadataka, kao što su bankovna usluga pisanja čekova na internetu, koja će nam omogu ćiti da platimo svoje račune koristeći samo web pretraživač. Kako rade takvi dinamički web sajtovi? Trik procesa je da dinamičke strane koje sadrže kompleksnu programsku logiku koriste drugačije ekstenzije fajlova. Na primjer, kada web server vidi zahtjev za stranom sa.aspx ekstenzijom, on ne čita fajl. Umesto toga on zna da preda HTTP zahtjev u.net (konkretno ASP.NET procesu) i prepusti da ASP.NET izvrši zadatak obrade i slanja odgovora. Rezultat je da ASP.NET izvršava naš kôd, koji izvodi bilo koji zadatak za koji je projektovan. Server računar Klijent računar Klijent web pretraživač HTTP z ahtje v HTTP odgo vo r Web server AS P.NET Naš program Slika 10. Obrada dinamičkih strana i web serveri [4] Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 28

29 Primjer kôda za obradu dinamičkih strana p rikazaćemo pomoću web kontrola, koje nude mnogo prednosti u odnosu na HTM L kontrole u aplikacijama, uključujući svojstva, događaje i upravljanje stanjem. 1: <%@ Page Language= C# %> 2: <script runat= server > 3: void LoginKliknuto (Object Sender, EventArgs e) 4: { 5: // Ovaj kôd će biti pozivan kada je kliknuto dugm e Login 6: 7: // Dobijanje polja korisničkog imena i lozinke iz ASP kontrola 8: String strkorisnickoime = KorisnickoIme.Text; 9: String strlozinka = Lozinka.Text; 10: 11: // Pisanje poruke o uspjehu/neuspjehu 12: if ((strkorisnickoime == dejantr ) && (strlozinka == diablo )) 13: { 14: Response.Write( Uspješno ste se ulogovali + strkorisnickoime); 15: } 16: else { 17: Response.Write( Netačna lozinka ili korisničko ime ); 18: } 19: } 20: </script> 21: 22: <html> 23: <body> 24: <form m ethod= post runat= server > 25: <table> 26: <tr> 27: <td> KorisnickoIme: </td> 28: <td><asp:textbox id= KorisnickoIme runat= server /></td> 29: </tr> Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 29

30 30: <tr> 31: <td> Lozinka: </td> 32: <td><asp:textbox id= Lozinka textmode= Password runat= server /></td> 33: </tr> 34: <tr> 35: <td><asp:button text= Login onclick= LoginKliknuto runat= server /></td> 36: </tr> 37: </table> 38: </form> 39: </body> 40: </html> Primer kôda za stranu za prijavu (login) pomoću ASP.NET-a Obrade web servisa Web servisi izvode sličan zadatak kod dinamičkih web sajtova jer web servisi jednostavno odgovaraju na zahtjeve klijenata sa interneta i vraćaju podatke. Kao što smo pomenuli u prethodnom dijelu, umesto primanja HTTP zahtjeva, web servisi prihvataju SOAP (Simple Object Access Protocol) zahtjeve. Svaki SOAP zahtjev sadrži ime određene funkcije, kao što je GetMojeOcjene, i parametar za funkciju, kao što je današnji datum. Svaki SOAP odgovor sadrži podatke koje vraća funkcija. Na primjer, metoda GetMojeOcjene može vratiti strukturu podataka koja izlistava sve moje ocjene za određeni datum. SOAP omogućava klijent programima da proslijede gotovo bilo koju vrstu strukture podataka web servisu; to je razlog zašto web servisi koriste SOAP umjesto HTTP. Slično, web servisi mogu vratiti gotovo bilo koju vrstu strukture podataka klijent programu pomoću SOAP. Većina web servisa i dalje koristi web server za komunikaciju za spoljnim svijetom..net web servisi koriste ASP.NET za obradu SOAP zahtjeva i za njihov prevod u strukture podataka koje mogu da koriste. Ovaj proces radi na isti način kao i dinamičke web strane. Svi.NET web servisi se završavaju ekstenzijom fajla.asmx. IIS (Internet Information Services) zna da ASP.NET-u treba da preda sve zahtjeve koji se završavaju sa.asmx, koji zatim preuzima i obrađuje SOAP zahtjeve i predaje ih našem posebnom kôdu web servisa. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 30

31 Klijent računar Web servis klijent program SOAP zahtev SOAP odgovor Server računar Web server ASP.NET Naš web servis Slika 11. Web servisi i web serveri [4] Naredni kôd prikazuje upotrebu web servisa na primjeru koji jednostavno vraća trenutno vrijeme na serveru kao string. 1: <%@ WebService Language= C# Class= UslugeVremena %> 2: using System; 3: using System.Web.Services; 4: 5: [WebService(Namespace= )] 6: public class UslugeVremena : WebService 7: { 8: [WebMethod] 9: public String GetVreme() 10: { 11: String vrati = Trenutno vreme na serveru je: ; 12: String trenutnovreme = DateTime.Now.ToString(); 13: return vrati + trenutnovreme; 14: } 15: } Primjer kôda za vraćanje trenutnog vremena sa web servera Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 31

32 DIO II 5. BAZA PODATAKA 5.1. Model osnovne škole M odeliranje baze podataka je dio procesa razvoja informacionog sistema (tzv. životni ciklus IS-a) koji se sastoji iz sljedećih faza: Planiranje razvoja IS; Analiza i specifikacija zahtjeva korisnika; Projektovanje baze podataka i programa; Implementacija sistema; Održavanje. Odavde se vidi da se iz analize korisničkih zahtjeva dobijaju informacije o entitetima, atributima i vezama između entiteta. Dalje u tekstu se navode konkretni korisnički zahtjevi. Sistem treba da sadrži: Podatke o učenicima; Podatke o profesorima; Podatke o nastavi i ocjenama; Takođe, škola treba da pruži i drugim licima uvid u dio informacija, koje su njima od značaja, a ne kose se sa principima privatnosti. To su prvenstveno statistički podaci učenika (ocjene, opravdani i neopravdani časovi, disc. mjere itd.). Ti podaci treba da budu na raspolaganju ovlaštenim osobama putem interneta i u lokalnoj mreži. Pristup sistemu putem interneta treba ograničiti, tj. omogućiti pregled samo javno dostupnih informacija. Ostala prava pristupa i izmjene baze treba zabraniti. Ovo je prikaz organizacije sistema u najopštijem obliku. Detaljniji prikaz je naveden u nastavku teksta. Na sljedećim primjerima dat je prikaz modela baze podataka u vidu modula. Kompletan model nije dat iz autorskih razloga. Prikazana su dva modula. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 32

33 Slika 12. Modul modela baze podataka Osnovne škole Sveti Sava Entitet Ključevi Atributi Mjesto_rodjenja Sifra_mjest a Naziv_mjesta Datum_rodjenja Sifra_mjest a(fk) Datum_rodjenja Ucenik Sifra_ucenik a, Sifra_profesora(FK), Sifra_vladanja(FK), Sifra_mjest a(fk) Prezime, Ime, Ime_roditelja, Adresa_stanovanja, Broj_telefona Profesor Sifra_pro fesora Prezime, Ime, Broj_telefona, Pol, Strucna_sprema, Datum_zaposljavanja, Datum_prestanka Vladanje Sifra_vladanje Naziv_vlad anja Ucenik_vladanje Sifra_profesora(FK), Sifra_vladanja(FK) Datum_izmjene Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 33

34 Slika 13. Modul modela baze podataka Osnovne škole Sveti Sava Entitet Ključevi Atributi Mjesto_rodjenja Sifra_mjest a Naziv_mjesta Datum_rodjenja Sifra_mjest a(fk) Datum_rodjenja Ucenik Sifra_ucenik a, Sifra_profesora(FK), Sifra_uspjeha(FK), Sifra_ razred a(fk), Sifra_mjest a(fk) Prezime, Ime, Ime_roditelja, Adresa_stanovanja, Broj_telefona, Profesor Sifra_profesora Prezime, Ime, Broj_telefona, Pol, Strucna_sprema, Datum_zaposljavanja, Datum_prestanka Uspjeh Sifra_uspjeha Naziv_uspjeha Razred Sifra_razreda Oznaka_odeljenja, Oznaka_razreda Ucenik_uspjeh Sifra_profesora(FK), Sifra_uspjeha(FK), Sifra_ razred a(fk) Datum Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 34

35 Podaci o učenicima Podaci o učenicima predstavljaju najbitniju stavku ovog informacionog sistema. Potrebno je omogućiti vrlo lako praćenje aktivnosti nekog učenik a od p očetka do kraja školske godine. Stoga, potrebno je raspolagati sa opštim podacima o učeniku : Ime i prezime; Ime jednog roditelja; Datum rođenja; Mjesto rođenja; Adresa stanovanja; Podaci o državljanstvu; Zanimanje roditelja; Podaci o razredu; Naziv struke; Naziv zanimanja; Opšti uspjeh; Ocjene; Disciplinske mjere; Izostanci; Podaci o profesorima Podjednako je bitno imati i podatke o profesorima: Ime i prezime; Adresa stanovanja; St ručna sprema; Datum zapošljavanja; Datum prestanka radnog odnosa; Predmeti koje predaje; Fond časova; Podaci o nastavi i ocenama Ono što povezuje prethodne dve kategorije jestu upravo nastava i ocjene. Očekuje se od ovog informacionog sistema, da obezbijedi potpunu kontrolu nad predmetima koji se predaju u školi i lako vođenje poslova vezano za njih. Praćenje informacija o predmetima zahtijeva poznavanje: Profesora koji su angažovani; Fonda časova; Zanimanja i struke kojoj predmet pripada; Učenika koji ga pohađaju; Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 35

36 Ocjena; Napomena: potrebno je omogućiti da više nastavnika predaje jedan predmet, pri čemu se taj predmet može pojavljivati u više različitih odjeljenja na različitim zanimanjima. Sama baza podataka je napravljena u SQL Serveru, po uzoru na model iz ERWIN-a. U sljedećem dijelu ću opisati postupke pravljenje baze podataka i unošenja tih podataka u bazu. Kod ovog posla bitna su tri dela: Kreiranje tabela Kreiranje dijagrama (povezivanje tabela) Kreiranje pogleda (views) 5.2. Kreiranje tabela Prvo sam kreirao tabelu UČENIK, jer je ona primarna za sve dalje operacije, posle toga su bile kreirane i sve ostale tabele. Kreiranje sam radio iz Enterprise M anager-a, jer je to najjednostavniji način. Istovremeno sam unosio podatke o učenicima (ime, prezime, adresa itd.). Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 36

37 Slika 14. Tabela UČENIK sa unijetim podacima o svim učenicima Prilikom definisanja imena kolona, treba da pratimo konvencije koje se koriste kod SQL Servera. To znači da ime kolone ne smije da ima više od 128 karaktera. Može da se sastoji od slova, cifara ili simbola $ i _. Takođe, treba da pazimo da prilikom zadavanja imena kolona ne koristimo rezervisane riječi. Dobar primjer je reč group, koja je ključna reč SQL-a. Tipovi podataka mogu da sadrže i vrijednost NULL. Iako NULL u različitim programskim okruženjima može da znači ništa ili nula ili nema vrijednosti, SQL Server interpretira NULL vrijednost kao nepoznato ili nedostaje. I praznine i nule su dozvoljene vrijednosti u zapisima u bazi, tako da treba da budemo veoma pažljivi kada njih prosljeđujemo kao p arametre. Slika 15. Prikaz svih kreiranih tabela i sistemskih tabela SQL-a Na slici 15 vidimo sve tabele koje se nalaze u našoj bazi podataka. Pored sistemskih tabela koje služe za rad samog SQL-a tu su i tabele koje su kreirane za potrebe baze podataka web dnevnika. Kreirane tabele su : Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 37

38 Učenik Razred Predmet Profesor Polugodište Ocjena Izostanci Dolazak roditelja Disciplinske mjere Opšti uspjeh Opština rođenja Država rođenja Naziv opštine Vladanje učenika Zanimanje (opciono) Struka (opciono) Prikaz tabele ocjena (Slika 16.) pokazuje nam tabelu u kojoj se, putem šifri za svaki predmet, nastavnika i učenika, prikazuje vrijednost ocjene za svakog pojedinog učenika. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 38

39 Slika 16. Prikaz tabele ocjena 5.3. Kreiranje dijagrama (povezivanje tabela) Dijagrami su dodati sistemu SQL Servera da bi olakšali vizuelno definisanje baza. Da bismo kreirali dijagram koristeći postojeće tabele, treba da uradimo sljedeće: Raščlanimo stablo baze da bismo došli do baze sa kojom radimo. Desni klik na Diagrams i odaberemo New Database Diagrams iz menija. Sa otvaranjem prozora za novi dijagram otvara se i čarobnjak za kreiranje baze. Kliknemo na Next i krenemo dalje. U prozoru za dijalog koji prikazuje selekciju za dodavanje tabela (Select Tables to Be Added dialog box) odredimo tabele koje treba predstaviti dijagramom na desnoj strani panela. Ako smo zadovoljni selekcijom kliknemo na Finish i prozor za dijalog dijagrama baze se učitava. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 39

40 Slika 17. Prozor za dijalog koji prikazuje selekciju tabela za odabir Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 40

41 Slika 18. Dijagram baze podataka Osnovne škole Sveti Sava Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 41

42 5.4. Kreiranje pogleda (Views) Pogled i su obično virtuelne tabele koje se kreiraju preko SQL kôda, koji može da obavlja relacionu algebru nad podacima u tabeli ili skupu tabela. Pogledi su vrlo slični upitima iz Microsoft Accessa, jer se kreiraju preko jezika za upite i vraćaju podatke u tabelarnom formatu. Ono što poglede čini pogledima, a ne tabelama, jeste da se tabelarna struktura pogleda ne čuva u nekoj bazi podataka, odnosno nije stalna. Umjesto toga, u bazi se čuva iskaz SELECT koji se koristi za kreiranje pogleda. Drugim riječima, pogledi služe samo za prikazivanje. Oni se mogu koristiti iz različitih razloga: M ogu se koristiti za sakrivanje vrsta u tabeli tj. mogu da vrate jedino skup vrsta koje se odnose na konkretnog korisnika ili proces. M ogu se koristiti za sakrivanje kolona u tabeli. Korisniku, na primer, može da bude zabranjeno da vidi neke povjerljive informacije u tabeli UČENIK. M ogu se koristiti za spajanje konstrukcija, za sakupljanje kolona iz različitih tabela u jedan objekat koji predstavlja jednu tabelu. M ogu se koristiti za obavljanje informacija nad podacima iz tabela, kao što je predstavljanje sume svih vrijednosti iz određene kolone. Kreiranje pogleda je prilično jednostavno, iako iskaz SELECT cijelog pogleda može biti prilično složen. Performanse pogleda se mogu dalje proširiti preko indeksa nad pogledima. Kôd koji slijedi je primjer jednostavnog pogleda i jednostavnog iskaza SELECT. Iskazi SELECT unutar pogleda mogu da sadrže i stotine linija kôda; CREATE VIEW user_view AS SELECT item, quantity FROM inventory_view Podacima u pogledima se može manipulisati preko iskaza INSERT, UPDATE i DELETE. Ažuriranje je kaskadno u odnosu na osnove tabele, uključujući i sve tabele članove koje se referenciraju u pogledima. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 42

43 Slika 19. Ubacivanje tabela prilikom kreiranja pogleda Prilikom kreiranja pogleda SQL nam nudi mogućnost ubacivanja pojedinačnih tabela. Kako mi ubacujemo tabele, tako SQL automatski generiše svoj SQL-kod. Primjer izrade vidimo na slici 19., a konačan rezultat jednog pogleda na slici 20. CREATE VIEW dbo.[trbic Ognjen] AS SELECT dbo.predmet.naziv_predmeta, dbo.ocijena.vrijednost FROM dbo.ocijena INNER JOIN dbo.predmet ON dbo.ocijena.sifra_predm eta = dbo.predmet.sifra_predmet INNER JOIN dbo.polugodiste ON dbo.predmet.sifra_predmeta = dbo.polugodiste.sifra_predmeta INNER JOIN dbo.ucenik ON dbo.ocijena.sifra_ucenika = dbo.ucenik.sifra_ucenika WHERE (dbo.ucenik.prezime = 'Trbic') AND (dbo.ucenik.ime = 'Ognjen') Primjer koda (View) Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 43

44 Slika 20. Kreiranje pogleda za jednog učenika Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 44

45 6. IZRADA WEB PREZENTACIJE Web stranica osnovne škole Sveti Sava predstavlja pokušaj da se korisnicima, putem interneta omogući pristup svim relevantnim podacima o učenicima, profesorima i o samoj školi. Kompletna web stranica je napravljena u Adobe Dreamweaver-u. Dreamweaver je program za izradu web strana, koji omogućava vizuelno projektovanje i uređivanje, kao i neposredno pisanje HTML kôda. On skraćuje vrijeme izrade web prezentacija, a ima i alatke za njihovo mijenjanje i održavanje. Ima mogućnost pravljenja dinamičkih web prezentacija u kojima se koriste baze podataka, serverski skriptovi i web aplikacije. Ova web stranica se sastoji iz četiri dijela: Početna predstavlja početnu stranicu web prezentacije (index.aspx), na kojoj je korisniku omogućeno da se uloguje i poslije toga pristupi ostalim dijelovima web prezentacije. Učenici glavn i dio web stranice (učenici.asp x), gdje su p omoću ASP.NETa i baze podataka (SQL Server) predstavljeni podaci o učenicima (ocene, izostanci, disc. mere, itd.). Profesori dio weba (profesori.aspx), koji sadrži podatke o profesorima koji predaju i rade u OŠ Sveti Sava Kontakt (kontakt.aspx) sadrži informacije o autoru ovog projekta, adresi škole, brojevima telefona itd. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 45

46 6.1. Izrada Index.aspx u Dreamweaver-u Ovaj program omogućava izradu dinamičkih web sadržaja koristeči serverske jezike kao što su ASP, ASP.NET, JAVA, PHP, COLD FUZION, MARKUP LANGUAGE (CFML). Vrijeme izrade u ovom programu se znatno skraćuje, i to jer on i napredne tehnike čini pristupačnim i olakšava njihovu upotrebu. Adobe Dreamweaver M X je vrlo fleksibilan program koji objedinjuje velike mogućnosti projektovanja i programiranja te tako postaje vrlo koristan alat kako početnicima i onima sa nešto manje iskustva, tako i iskusnim korisnicima. Na slici 21 vidimo izradu index stranice Osnovne škole Sveti Sava pomocu Adobe Dreamweavera. Program nam omogućava vizuelno projektovanje, tj. Izmjenu koda koju odmah vidimo na našoj stranici. Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 46

47 Slika 21. Index.aspx 6.2. Početna strana (index.aspx) Index.aspx stranica je osmišljena tako, da ukoliko korisnik ne posjeduje korisničko ime i lozinku, tj. ukoliko ne može da se pravilno uloguje, on ne može da pristupi zaštićenim podacima (drugim dijelovima web prezentacije). Korisnička imena i lozinke se čuvaju u bazi podataka SQL Servera. Svaki korisnik može da ima samo jedan korisnički nalog. Na index strani korisnik može da vidi novosti vezane za školu, i uopšteno uputstvo za logovanje. Nakon uspešnog logovanja on može da pristupi ostalim dijelovima web prezentacije. Slika 22. Početna (index.aspx) stranica web prezentacije Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 47

48 6.3. Glavna strana (učenici.aspx) Na glavnoj stranici se prikazuju podaci o učenicima. Nakon logovanja korisnik je u mogućnosti da vidi podatke o određenom učeniku. Korisniku nije dozvoljeno da mijenja podatke niti bilo šta drugo, to je dopušteno samo administratoru baze podataka. Slika 23. Glavna strana (učenici.aspx) prikazana u pretraživaču Univerzitet Apeiron, Banja Luka Fakultet za poslovnu informatiku Str. 48

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije

Biznis scenario: sekcije pk * id_sekcije * naziv. projekti pk * id_projekta * naziv ꓳ profesor fk * id_sekcije Biznis scenario: U školi postoje četiri sekcije sportska, dramska, likovna i novinarska. Svaka sekcija ima nekoliko aktuelnih projekata. Likovna ima četiri projekta. Za projekte Pikaso, Rubens i Rembrant

More information

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan.

SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. SIMPLE PAST TENSE (prosto prošlo vreme) Građenje prostog prošlog vremena zavisi od toga da li je glagol koji ga gradi pravilan ili nepravilan. 1) Kod pravilnih glagola, prosto prošlo vreme se gradi tako

More information

Podešavanje za eduroam ios

Podešavanje za eduroam ios Copyright by AMRES Ovo uputstvo se odnosi na Apple mobilne uređaje: ipad, iphone, ipod Touch. Konfiguracija podrazumeva podešavanja koja se vrše na računaru i podešavanja na mobilnom uređaju. Podešavanja

More information

SAS On Demand. Video: Upute za registraciju:

SAS On Demand. Video:  Upute za registraciju: SAS On Demand Video: http://www.sas.com/apps/webnet/video-sharing.html?bcid=3794695462001 Upute za registraciju: 1. Registracija na stranici: https://odamid.oda.sas.com/sasodaregistration/index.html U

More information

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević

GUI Layout Manager-i. Bojan Tomić Branislav Vidojević GUI Layout Manager-i Bojan Tomić Branislav Vidojević Layout Manager-i ContentPane Centralni deo prozora Na njega se dodaju ostale komponente (dugmići, polja za unos...) To je objekat klase javax.swing.jpanel

More information

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings

Eduroam O Eduroam servisu edu roam Uputstvo za podešavanje Eduroam konekcije NAPOMENA: Microsoft Windows XP Change advanced settings Eduroam O Eduroam servisu Eduroam - educational roaming je besplatan servis za pristup Internetu. Svojim korisnicima omogućava bezbedan, brz i jednostavan pristup Internetu širom sveta, bez potrebe za

More information

STRUČNA PRAKSA B-PRO TEMA 13

STRUČNA PRAKSA B-PRO TEMA 13 MAŠINSKI FAKULTET U BEOGRADU Katedra za proizvodno mašinstvo STRUČNA PRAKSA B-PRO TEMA 13 MONTAŽA I SISTEM KVALITETA MONTAŽA Kratak opis montže i ispitivanja gotovog proizvoda. Dati izgled i sadržaj tehnološkog

More information

Uvod u relacione baze podataka

Uvod u relacione baze podataka Uvod u relacione baze podataka 25. novembar 2011. godine 7. čas SQL skalarne funkcije, operatori ANY (SOME) i ALL 1. Za svakog studenta izdvojiti ime i prezime i broj različitih ispita koje je pao (ako

More information

Port Community System

Port Community System Port Community System Konferencija o jedinstvenom pomorskom sučelju i digitalizaciji u pomorskom prometu 17. Siječanj 2018. godine, Zagreb Darko Plećaš Voditelj Odsjeka IS-a 1 Sadržaj Razvoj lokalnog PCS

More information

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB.

KAPACITET USB GB. Laserska gravura. po jednoj strani. Digitalna štampa, pun kolor, po jednoj strani USB GB 8 GB 16 GB. 9.72 8.24 6.75 6.55 6.13 po 9.30 7.89 5.86 10.48 8.89 7.30 7.06 6.61 11.51 9.75 8.00 7.75 7.25 po 0.38 10.21 8.66 7.11 6.89 6.44 11.40 9.66 9.73 7.69 7.19 12.43 1 8.38 7.83 po 0.55 0.48 0.37 11.76 9.98

More information

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd,

AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje. Marko Eremija Sastanak administratora, Beograd, AMRES eduroam update, CAT alat za kreiranje instalera za korisničke uređaje Marko Eremija Sastanak administratora, Beograd, 12.12.2013. Sadržaj eduroam - uvod AMRES eduroam statistika Novine u okviru eduroam

More information

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri.

Ulazne promenljive se nazivaju argumenti ili fiktivni parametri. Potprogram se poziva u okviru programa, kada se pri pozivu navode stvarni parametri. Potprogrami su delovi programa. Često se delovi koda ponavljaju u okviru nekog programa. Logično je da se ta grupa komandi izdvoji u potprogram, i da se po želji poziva u okviru programa tamo gde je potrebno.

More information

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI

IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI IZDAVANJE SERTIFIKATA NA WINDOWS 10 PLATFORMI Za pomoć oko izdavanja sertifikata na Windows 10 operativnom sistemu možete se obratiti na e-mejl adresu esupport@eurobank.rs ili pozivom na telefonski broj

More information

Struktura indeksa: B-stablo. ls/swd/btree/btree.html

Struktura indeksa: B-stablo.   ls/swd/btree/btree.html Struktura indeksa: B-stablo http://cis.stvincent.edu/html/tutoria ls/swd/btree/btree.html Uvod ISAM (Index-Sequential Access Method, IBM sredina 60-tih godina 20. veka) Nedostaci: sekvencijalno pretraživanje

More information

Tutorijal za Štefice za upload slika na forum.

Tutorijal za Štefice za upload slika na forum. Tutorijal za Štefice za upload slika na forum. Postoje dvije jednostavne metode za upload slika na forum. Prva metoda: Otvoriti nova tema ili odgovori ili citiraj već prema želji. U donjem dijelu obrasca

More information

BENCHMARKING HOSTELA

BENCHMARKING HOSTELA BENCHMARKING HOSTELA IZVJEŠTAJ ZA SVIBANJ. BENCHMARKING HOSTELA 1. DEFINIRANJE UZORKA Tablica 1. Struktura uzorka 1 BROJ HOSTELA BROJ KREVETA Ukupno 1016 643 1971 Regije Istra 2 227 Kvarner 4 5 245 991

More information

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a

NIS PETROL. Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a NIS PETROL Uputstvo za deaktiviranje/aktiviranje stranice Veleprodajnog cenovnika na sajtu NIS Petrol-a Beograd, 2018. Copyright Belit Sadržaj Disable... 2 Komentar na PHP kod... 4 Prava pristupa... 6

More information

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA

CJENIK APLIKACIJE CERAMIC PRO PROIZVODA STAKLO PLASTIKA AUTO LAK KOŽA I TEKSTIL ALU FELGE SVJETLA KOŽA I TEKSTIL ALU FELGE CJENIK APLIKACIJE CERAMIC PRO PROIZVODA Radovi prije aplikacije: Prije nanošenja Ceramic Pro premaza površina vozila na koju se nanosi mora bi dovedena u korektno stanje. Proces

More information

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE

CJENOVNIK KABLOVSKA TV DIGITALNA TV INTERNET USLUGE CJENOVNIK KABLOVSKA TV Za zasnivanje pretplatničkog odnosa za korištenje usluga kablovske televizije potrebno je da je tehnički izvodljivo (mogude) priključenje na mrežu Kablovskih televizija HS i HKBnet

More information

1. Instalacija programske podrške

1. Instalacija programske podrške U ovom dokumentu opisana je instalacija PBZ USB PKI uređaja na računala korisnika PBZCOM@NET internetskog bankarstva. Uputa je podijeljena na sljedeće cjeline: 1. Instalacija programske podrške 2. Promjena

More information

MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08

MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08 MRS MRSLab08 Metodologija Razvoja Softvera Vežba 08 LAB 08 Konceptualni model podataka Logički model podataka 1. Konceptualni model podataka Modeli podataka omogućavaju modelovanje semantičke i logičke

More information

MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09

MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09 MRS MRSLab09 Metodologija Razvoja Softvera Vežba 09 LAB 09 Fizički model podatka 1. Fizički model podataka Fizički model podataka omogućava da se definiše struktura baze podataka sa stanovišta fizičke

More information

Otpremanje video snimka na YouTube

Otpremanje video snimka na YouTube Otpremanje video snimka na YouTube Korak br. 1 priprema snimka za otpremanje Da biste mogli da otpremite video snimak na YouTube, potrebno je da imate kreiran nalog na gmailu i da video snimak bude u nekom

More information

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći:

Ciljevi. Poslije kompletiranja ove lekcije trebalo bi se moći: Pogledi Ciljevi Poslije kompletiranja ove lekcije trebalo bi se moći: Opisati pogled Formirati novi pogled Vratiti podatke putem pogleda Izmijeniti postojeći pogled Insertovani, ažurirati i brisati podatke

More information

DEFINISANJE TURISTIČKE TRAŽNJE

DEFINISANJE TURISTIČKE TRAŽNJE DEFINISANJE TURISTIČKE TRAŽNJE Tražnja se može definisati kao spremnost kupaca da pri različitom nivou cena kupuju različite količine jedne robe na određenom tržištu i u određenom vremenu (Veselinović

More information

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU

KONFIGURACIJA MODEMA. ZyXEL Prestige 660RU KONFIGURACIJA MODEMA ZyXEL Prestige 660RU Sadržaj Funkcionalnost lampica... 3 Priključci na stražnjoj strani modema... 4 Proces konfiguracije... 5 Vraćanje modema na tvorničke postavke... 5 Konfiguracija

More information

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ

TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ TRENING I RAZVOJ VEŽBE 4 JELENA ANĐELKOVIĆ LABROVIĆ DIZAJN TRENINGA Model trening procesa FAZA DIZAJNA CILJEVI TRENINGA Vrste ciljeva treninga 1. Ciljevi učesnika u treningu 2. Ciljevi učenja Opisuju željene

More information

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze

Trening: Obzor financijsko izvještavanje i osnovne ugovorne obveze Trening: Obzor 2020. - financijsko izvještavanje i osnovne ugovorne obveze Ana Ključarić, Obzor 2020. nacionalna osoba za kontakt za financijska pitanja PROGRAM DOGAĐANJA (9:30-15:00) 9:30 10:00 Registracija

More information

11 Analiza i dizajn informacionih sistema

11 Analiza i dizajn informacionih sistema 11 Analiza i dizajn informacionih sistema Informatika V.Prof.dr Kemal Hajdarević dipl.ing.el 25.4.2014 11:58:28 1 1. Kompjuter, Internet, i mrežne osnove 2. Kompjuterska industrija Informatika u stomatologiji

More information

Bušilice nove generacije. ImpactDrill

Bušilice nove generacije. ImpactDrill NOVITET Bušilice nove generacije ImpactDrill Nove udarne bušilice od Bosch-a EasyImpact 550 EasyImpact 570 UniversalImpact 700 UniversalImpact 800 AdvancedImpact 900 Dostupna od 01.05.2017 2 Logika iza

More information

Mindomo online aplikacija za izradu umnih mapa

Mindomo online aplikacija za izradu umnih mapa Mindomo online aplikacija za izradu umnih mapa Mindomo je online aplikacija za izradu umnih mapa (vrsta dijagrama specifične forme koji prikazuje ideje ili razmišljanja na svojevrstan način) koja omogućuje

More information

Windows Easy Transfer

Windows Easy Transfer čet, 2014-04-17 12:21 - Goran Šljivić U članku o skorom isteku Windows XP podrške [1] koja prestaje 8. travnja 2014. spomenuli smo PCmover Express i PCmover Professional kao rješenja za preseljenje korisničkih

More information

Nejednakosti s faktorijelima

Nejednakosti s faktorijelima Osječki matematički list 7007, 8 87 8 Nejedakosti s faktorijelima Ilija Ilišević Sažetak Opisae su tehike kako se mogu dokazati ejedakosti koje sadrže faktorijele Spomeute tehike su ilustrirae a izu zaimljivih

More information

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu

Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu Slobodni softver za digitalne arhive: EPrints u Knjižnici Filozofskog fakulteta u Zagrebu Marijana Glavica Dobrica Pavlinušić http://bit.ly/ffzg-eprints Definicija

More information

Upute za korištenje makronaredbi gml2dwg i gml2dgn

Upute za korištenje makronaredbi gml2dwg i gml2dgn SVEUČILIŠTE U ZAGREBU - GEODETSKI FAKULTET UNIVERSITY OF ZAGREB - FACULTY OF GEODESY Zavod za primijenjenu geodeziju; Katedra za upravljanje prostornim informacijama Institute of Applied Geodesy; Chair

More information

PROJEKTNI PRORAČUN 1

PROJEKTNI PRORAČUN 1 PROJEKTNI PRORAČUN 1 Programski period 2014. 2020. Kategorije troškova Pojednostavlj ene opcije troškova (flat rate, lump sum) Radni paketi Pripremni troškovi, troškovi zatvaranja projekta Stope financiranja

More information

Modeli podataka. Model podataka - osnovne komponente

Modeli podataka. Model podataka - osnovne komponente Model podataka - osnovne komponente Modeli podataka Osnovni pojmovi modela podataka Primeri MOV-a Logičko modeliranje podataka (6 koraka) Tipovi veza kod IDEF1X metodologije Logičko modeliranja podataka

More information

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION

ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION VFR AIP Srbija / Crna Gora ENR 1.4 1 ENR 1.4 OPIS I KLASIFIKACIJA VAZDUŠNOG PROSTORA U KOME SE PRUŽAJU ATS USLUGE ENR 1.4 ATS AIRSPACE CLASSIFICATION AND DESCRIPTION 1. KLASIFIKACIJA VAZDUŠNOG PROSTORA

More information

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY

INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY INSTALIRANJE SOFTVERSKOG SISTEMA SURVEY Softverski sistem Survey za geodeziju, digitalnu topografiju i projektovanje u niskogradnji instalira se na sledeći način: 1. Instalirati grafičko okruženje pod

More information

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT

TRAJANJE AKCIJE ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT TRAJANJE AKCIJE 16.01.2019-28.02.2019 ILI PRETHODNOG ISTEKA ZALIHA ZELENI ALAT Akcija sa poklonima Digitally signed by pki, pki, BOSCH, EMEA, BOSCH, EMEA, R, A, radivoje.stevanovic R, A, 2019.01.15 11:41:02

More information

OBJEKTNO ORIJENTISANO PROGRAMIRANJE

OBJEKTNO ORIJENTISANO PROGRAMIRANJE OBJEKTNO ORIJENTISANO PROGRAMIRANJE PREDAVANJE 3 DEFINICIJA KLASE U JAVI Miloš Kovačević Đorđe Nedeljković 1 /18 OSNOVNI KONCEPTI - Polja - Konstruktori - Metode - Parametri - Povratne vrednosti - Dodela

More information

Struktura i organizacija baza podataka

Struktura i organizacija baza podataka Fakultet tehničkih nauka, DRA, Novi Sad Predmet: Struktura i organizacija baza podataka Dr Slavica Aleksić, Milanka Bjelica, Nikola Obrenović Primer radnik({mbr, Ime, Prz, Sef, Plt, God, Pre}, {Mbr}),

More information

Advertising on the Web

Advertising on the Web Advertising on the Web On-line algoritmi Off-line algoritam: ulazni podaci su dostupni na početku, algoritam može pristupati podacima u bilo kom redosljedu, na kraju se saopštava rezultat obrade On-line

More information

Direktan link ka kursu:

Direktan link ka kursu: Alat Alice može da se preuzme sa sledeće adrese: www.alice.org Kratka video uputstva posvećena alatu Alice: https://youtu.be/eq120m-_4ua https://youtu.be/tkbucu71lfk Kurs (engleski) posvećen uvodu u Java

More information

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020.

Idejno rješenje: Dubrovnik Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. Idejno rješenje: Dubrovnik 2020. Vizualni identitet kandidature Dubrovnika za Europsku prijestolnicu kulture 2020. vizualni identitet kandidature dubrovnika za europsku prijestolnicu kulture 2020. visual

More information

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6.

PLAN RADA. 1. Počnimo sa primerom! 2. Kako i zašto? 3. Pejzaž višestruke upotrebe softvera 4. Frameworks 5. Proizvodne linije softvera 6. KOREKTAN PREVOD? - Reupotrebljiv softver? ( ne postoji prefiks RE u srpskom jeziku ) - Ponovo upotrebljiv softver? ( totalno bezveze ) - Upotrebljiv više puta? - Itd. PLAN RADA 1. Počnimo sa primerom!

More information

Sadržaj. Baze podataka

Sadržaj. Baze podataka BAZE PODATAKA. Sadržaj I 1 UVOD U BAZE PODATAKA 1.1 Osnovni pojmovi vezani uz baze podataka 1.1.1 Baza podataka, DBMS, model podataka 1.1.2 Ciljevi uvođenja baza podataka 1.1.3 Arhitektura baze podataka

More information

Iskustva video konferencija u školskim projektima

Iskustva video konferencija u školskim projektima Medicinska škola Ante Kuzmanića Zadar www.medskolazd.hr Iskustva video konferencija u školskim projektima Edin Kadić, profesor mentor Ante-Kuzmanic@medskolazd.hr Kreiranje ideje 2003. Administracija Učionice

More information

Upravljanje kvalitetom usluga. doc.dr.sc. Ines Dužević

Upravljanje kvalitetom usluga. doc.dr.sc. Ines Dužević Upravljanje kvalitetom usluga doc.dr.sc. Ines Dužević Specifičnosti usluga Odnos prema korisnicima U prosjeku, lojalan korisnik vrijedi deset puta više nego što je vrijedio u trenutku prve kupnje. Koncept

More information

Mogudnosti za prilagođavanje

Mogudnosti za prilagođavanje Mogudnosti za prilagođavanje Shaun Martin World Wildlife Fund, Inc. 2012 All rights reserved. Mogudnosti za prilagođavanje Za koje ste primere aktivnosti prilagođavanja čuli, pročitali, ili iskusili? Mogudnosti

More information

3D GRAFIKA I ANIMACIJA

3D GRAFIKA I ANIMACIJA 1 3D GRAFIKA I ANIMACIJA Uvod u Flash CS3 Šta će se raditi? 2 Upoznavanje interfejsa Osnovne osobine Definisanje osnovnih entiteta Rad sa bojama Rad sa linijama Definisanje i podešavanje ispuna Pregled

More information

POSTUPAK IZRADE DIPLOMSKOG RADA NA OSNOVNIM AKADEMSKIM STUDIJAMA FAKULTETA ZA MENADŽMENT U ZAJEČARU

POSTUPAK IZRADE DIPLOMSKOG RADA NA OSNOVNIM AKADEMSKIM STUDIJAMA FAKULTETA ZA MENADŽMENT U ZAJEČARU POSTUPAK IZRADE DIPLOMSKOG RADA NA OSNOVNIM AKADEMSKIM STUDIJAMA FAKULTETA ZA MENADŽMENT U ZAJEČARU (Usaglašeno sa procedurom S.3.04 sistema kvaliteta Megatrend univerziteta u Beogradu) Uvodne napomene

More information

msc Velimir Milanovic Unošenje prvih zapisa Kreiranje elektronskih obrazaca - formi Prva forma - Čitaoci U P I T I

msc Velimir Milanovic Unošenje prvih zapisa Kreiranje elektronskih obrazaca - formi Prva forma - Čitaoci U P I T I msc Velimir Milanovic SADRŽAJ: 1. Pojam informacionih sistema... 4 1. 1. Vrste informacionih sistema... 5 1.1.1. Informacioni sistemi za obradu podataka (dp data processing)... 5 1. 1. 2. Upravljački informacioni

More information

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT

Univerzitet u Novom Sadu. Fakultet tehničkih nauka. Odsek za računarsku tehniku i računarske komunikacije. Uvod u GIT Univerzitet u Novom Sadu Fakultet tehničkih nauka Odsek za računarsku tehniku i računarske komunikacije Uvod u GIT Šta je git? Sistem za verzionisanje softvera kao i CVS, SVN, Perforce ili ClearCase Orginalno

More information

Rešavanje problema pomoću računara

Rešavanje problema pomoću računara Rešavanje problema pomoću računara Vladimir Filipović vladaf@matf.bg.ac.rs Softversko inženjerstvo Šta podrazumevamo pod softverskim inženjerstvom? vladaf@matf.bg.ac.rs 2/16 Konstrukcija prevodilaca Prevođenje

More information

Office 365, upute za korištenje elektroničke pošte

Office 365, upute za korištenje elektroničke pošte Office 365, upute za korištenje elektroničke pošte Naša ustanova koristi uslugu elektroničke pošte u oblaku, u sklopu usluge Office 365. To znači da elektronička pošta više nije pohranjena na našem serveru

More information

Klasterizacija. NIKOLA MILIKIĆ URL:

Klasterizacija. NIKOLA MILIKIĆ   URL: Klasterizacija NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info Klasterizacija Klasterizacija (eng. Clustering) spada u grupu tehnika nenadgledanog učenja i omogućava grupisanje

More information

Programiranje III razred

Programiranje III razred Tehnička škola 9. maj Bačka Palanka Programiranje III razred Istorijat programskih jezika Programski jezici Programski jezici su veštački jezici koji se mogu koristiti za kontrolu ponašanja mašine, naročito

More information

1.UVOD. Ključne reči: upotrebljivost, praćenje, korisnički interfejs, aplikacija

1.UVOD. Ključne reči: upotrebljivost, praćenje, korisnički interfejs, aplikacija EVALUACIJA UPOTREBLJIVOSTI KORISNIČKOG INTERFEJSA VEB APLIKACIJA UZ POMOĆ METODA ZA AUTOMATSKO PRIKUPLJANJE PODATAKA O KORIŠĆENJU EVALUATION USABILITY OF USER INTERFACE WEB APPLICATIONS BY METHODS FOR

More information

Projektovanje softvera. Dijagrami slučajeva korišćenja

Projektovanje softvera. Dijagrami slučajeva korišćenja Projektovanje softvera Dijagrami slučajeva korišćenja Uvod 2 Dijagram slučajeva korišćenja (use-case) prikazuje skup slučajeva korišćenja i aktera Tipično se koristi da specificira neku funkcionalnost

More information

KREIRANJE DINAMIČKIH INTERFEJSA ZASNOVANIH NA META-ŠEMAMA CREATION OF DYNAMIC INTERFACES BASED ON META-SCHEMES

KREIRANJE DINAMIČKIH INTERFEJSA ZASNOVANIH NA META-ŠEMAMA CREATION OF DYNAMIC INTERFACES BASED ON META-SCHEMES INFOTEH-JAHORINA Vol. 10, Ref. E-I-11, p. 441-445, March 2011. KREIRANJE DINAMIČKIH INTERFEJSA ZASNOVANIH NA META-ŠEMAMA CREATION OF DYNAMIC INTERFACES BASED ON META-SCHEMES Vladimir Vujović, Elektrotehnički

More information

DIPLOMSKI RAD iz predmetа Razvoj veb aplikacija

DIPLOMSKI RAD iz predmetа Razvoj veb aplikacija UNIVERZITET U NOVOM PAZARU DEPARTMAN ZA RAČUNARSKE NAUKE STUDIJSKI PROGRAM: INFORMATIKA DIPLOMSKI RAD iz predmetа Razvoj veb aplikacija Mentor: Dr Muzafer Saračević, docent Student: Ervin Pepić Br. indeksа:

More information

Projektovanje IS. Fizičko modelovanje Aplikativno modelovanje Softver

Projektovanje IS. Fizičko modelovanje Aplikativno modelovanje Softver Projektovanje IS Fizičko modelovanje Aplikativno modelovanje Softver Referencijalni integritet Referencijalni integritet obezbjeđuje korektno povezivanje objekata jer objekat koji nije predstavljen u odgovarajućem

More information

Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima

Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima Kako instalirati Apache/PHP/MySQL na lokalnom kompjuteru pod Windowsima 1. Uvod 2. Preuzimanje programa i stvaranje mapa 3. Instalacija Apachea 4. Konfiguracija Apachea 5. Instalacija PHP-a 6. Konfiguracija

More information

Priprema podataka. NIKOLA MILIKIĆ URL:

Priprema podataka. NIKOLA MILIKIĆ   URL: Priprema podataka NIKOLA MILIKIĆ EMAIL: nikola.milikic@fon.bg.ac.rs URL: http://nikola.milikic.info Normalizacija Normalizacija je svođenje vrednosti na neki opseg (obično 0-1) FishersIrisDataset.arff

More information

WELLNESS & SPA YOUR SERENITY IS OUR PRIORITY. VAŠ MIR JE NAŠ PRIORITET!

WELLNESS & SPA YOUR SERENITY IS OUR PRIORITY. VAŠ MIR JE NAŠ PRIORITET! WELLNESS & SPA YOUR SERENITY IS OUR PRIORITY. VAŠ MIR JE NAŠ PRIORITET! WELLNESS & SPA DNEVNA KARTA DAILY TICKET 35 BAM / 3h / person RADNO VRIJEME OPENING HOURS 08:00-21:00 Besplatno za djecu do 6 godina

More information

TEHNIKA I INFORMATIKA U OBRAZOVANJU

TEHNIKA I INFORMATIKA U OBRAZOVANJU TEHNIKA I INFORMATIKA U OBRAZOVANJU Konferencija 32000 Čačak 9-11. Maja 2008. UDK: 004 : 371 Stručni rad VEZA ZAVISNOSTI INSTANCE Munir Šabanović 1, Momčilo Vujičić 2 Rezime: Objektno orijentisani jezici

More information

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports.

Da bi se napravio izvještaj u Accessu potrebno je na izborniku Create odabrati karticu naredbi Reports. IZVJEŠTAJI U MICROSOFT ACCESS-u (eng. reports) su dijelovi baze podataka koji omogućavaju definiranje i opisivanje načina ispisa podataka iz baze podataka na papir (ili PDF dokument). Način izrade identičan

More information

TEHNIČKO (TEHNOLOŠKO) OBRAZOVANJE U SRBIJI

TEHNIČKO (TEHNOLOŠKO) OBRAZOVANJE U SRBIJI TEHNIČKO (TEHNOLOŠKO) OBRAZOVANJE U SRBIJI Konferencija 32000 Čačak 13-16. April 2006. UDK: 371.267:004 Stručni rad ELEKTRONSKI DNEVNIK www.e-dnevnik.org 1 Rezime: Softverski paket za elektronsko ocenjivanje

More information

za STB GO4TV in alliance with GSS media

za STB GO4TV in alliance with GSS media za STB Dugme za uključivanje i isključivanje STB uređaja Browser Glavni meni Osnovni meni Vrsta liste kanala / omiljeni kanali / kraći meni / organizacija kanala / ponovno pokretanje uređaja / ponovno

More information

STABLA ODLUČIVANJA. Jelena Jovanovic. Web:

STABLA ODLUČIVANJA. Jelena Jovanovic.   Web: STABLA ODLUČIVANJA Jelena Jovanovic Email: jeljov@gmail.com Web: http://jelenajovanovic.net 2 Zahvalnica: Ovi slajdovi su bazirani na materijalima pripremljenim za kurs Applied Modern Statistical Learning

More information

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik)

JEDINSTVENI PORTAL POREZNE UPRAVE. Priručnik za instalaciju Google Chrome dodatka. (Opera preglednik) JEDINSTVENI PORTAL POREZNE UPRAVE Priručnik za instalaciju Google Chrome dodatka (Opera preglednik) V1 OPERA PREGLEDNIK Opera preglednik s verzijom 32 na dalje ima tehnološke promjene zbog kojih nije moguće

More information

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE)

Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) Tema 2: Uvod u sisteme za podršku odlučivanju (VEŽBE) SISTEMI ZA PODRŠKU ODLUČIVANJU dr Vladislav Miškovic vmiskovic@singidunum.ac.rs Fakultet za računarstvo i informatiku 2013/2014 Tema 2: Uvod u sisteme

More information

CRNA GORA

CRNA GORA HOTEL PARK 4* POLOŽAJ: uz more u Boki kotorskoj, 12 km od Herceg-Novog. SADRŽAJI: 252 sobe, recepcija, bar, restoran, besplatno parkiralište, unutarnji i vanjski bazen s terasom za sunčanje, fitnes i SPA

More information

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine

UNIVERZITET U BEOGRADU RUDARSKO GEOLOŠKI FAKULTET DEPARTMAN ZA HIDROGEOLOGIJU ZBORNIK RADOVA. ZLATIBOR maj godine UNIVERZITETUBEOGRADU RUDARSKOGEOLOŠKIFAKULTET DEPARTMANZAHIDROGEOLOGIJU ZBORNIKRADOVA ZLATIBOR 1720.maj2012.godine XIVSRPSKISIMPOZIJUMOHIDROGEOLOGIJI ZBORNIKRADOVA IZDAVA: ZAIZDAVAA: TEHNIKIUREDNICI: TIRAŽ:

More information

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti

MRS. MRSLab03 Metodologija Razvoja Softvera Vežba 03 LAB Dijagram aktivnosti MRS LAB 03 MRSLab03 Metodologija Razvoja Softvera Vežba 03 Dijagrami aktivnosti 1. Dijagram aktivnosti Dijagram aktivnosti je UML dijagram koji modeluje dinamičke aspekte sistema. On predstavlja pojednostavljenje

More information

RANI BOOKING TURSKA LJETO 2017

RANI BOOKING TURSKA LJETO 2017 PUTNIČKA AGENCIJA FIBULA AIR TRAVEL AGENCY D.O.O. UL. FERHADIJA 24; 71000 SARAJEVO; BIH TEL:033/232523; 033/570700; E-MAIL: INFO@FIBULA.BA; FIBULA@BIH.NET.BA; WEB: WWW.FIBULA.BA SUDSKI REGISTAR: UF/I-1769/02,

More information

FAKULTET ZA POSLOVNU INFORMATIKU

FAKULTET ZA POSLOVNU INFORMATIKU FAKULTET ZA POSLOVNU INFORMATIKU Prof. dr Mladen Veinović Igor Franc Aleksandar Jevremović BAZE PODATAKA - PRAKTIKUM - Prvo izdanje Beograd 2006. Autori: Prof. dr Mladen Veinović Igor Franc Aleksandar

More information

IMPLEMENTACIJA TEHNIKA ZA POVEĆANJE BROJA PODRŽANIH KONKURENTNIH KORISNIKA VEB SAJTA

IMPLEMENTACIJA TEHNIKA ZA POVEĆANJE BROJA PODRŽANIH KONKURENTNIH KORISNIKA VEB SAJTA ELEKTROTEHNIČKI FAKULTET UNIVERZITETA U BEOGRADU IMPLEMENTACIJA TEHNIKA ZA POVEĆANJE BROJA PODRŽANIH KONKURENTNIH KORISNIKA VEB SAJTA Master rad Kandidat: Janko Sokolović 2012/3142 Mentor: doc. dr Zoran

More information

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE

MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE MINISTRY OF THE SEA, TRANSPORT AND INFRASTRUCTURE 3309 Pursuant to Article 1021 paragraph 3 subparagraph 5 of the Maritime Code ("Official Gazette" No. 181/04 and 76/07) the Minister of the Sea, Transport

More information

Uvod u web okruženje SQL

Uvod u web okruženje SQL МОDЕLI I BАZЕ PОDАТАKА Uvod u web okruženje SQL Korišteni materijali i reference http://www.hdonweb.com/programiranje/xampp-instalacija-apache-web-servera-za-mysql-i-php http://hr.wikipedia.org/wiki/apache_%28webserver%29

More information

UPUTSTVO. za ruter TP-LINK TD-854W/ TD-W8951NB

UPUTSTVO. za ruter TP-LINK TD-854W/ TD-W8951NB UPUTSTVO za ruter TP-LINK TD-854W/ TD-W8951NB Uputstvo za ruter TP-Link TD-854W / TD-W8951NB 2 PRAVILNO POVEZIVANJE ADSL RUTERA...4 PODEŠAVANJE KONEKCIJE PREKO MREŽNE KARTE ETHERNET-a...5 PODEŠAVANJE INTERNET

More information

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS

- Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS - Vežba 1 (dodatan materijal) - Kreiranje Web šablona (template) pomoću softvera Adobe Photoshop CS 1. Pokrenite Adobe Photoshop CS i otvorite novi dokument sa komandom File / New 2. Otvoriće se dijalog

More information

Testiranje koda - JUnit. Bojan Tomić

Testiranje koda - JUnit. Bojan Tomić Testiranje koda - JUnit Bojan Tomić Testiranje programa Dinamička provera ponašanja programa izvođenjem konačnog broja testova i upoređivanjem sa očekivanim ponašanjem programa Programska mana ( software

More information

MODEL OBJEKTI - VEZE KONCEPTI MODELA METODOLOGIJA MODELIRANJA

MODEL OBJEKTI - VEZE KONCEPTI MODELA METODOLOGIJA MODELIRANJA MODEL OBJEKTI - VEZE MODEL OBJEKTI - VEZE KONCEPTI MODELA METODOLOGIJA MODELIRANJA MODELI PODATAKA Model objekti-veze Relacioni model Objektni model Objektno-relacioni model Aktivne baze podataka XML kao

More information

Visoka škola strukovnih studija za informacione i komunikacione tehnologije. SMS Gateway. Dr Nenad Kojić

Visoka škola strukovnih studija za informacione i komunikacione tehnologije. SMS Gateway. Dr Nenad Kojić Visoka škola strukovnih studija za informacione i komunikacione tehnologije SMS Gateway Dr Nenad Kojić Uvod SMS Gateway-i najčešće predstavljaju desktop aplikacije koji treba da omoguće korisničkim aplikacijama

More information

MENADŽMENT I INFORMACIONE TEHNOLOGIJE Katedra za menadžment i IT. Menadžment i informacione tehnologije

MENADŽMENT I INFORMACIONE TEHNOLOGIJE Katedra za menadžment i IT. Menadžment i informacione tehnologije Prezentacija smjera MENADŽMENT I INFORMACIONE TEHNOLOGIJE Katedra za menadžment i IT Menadžment i informacione tehnologije Zašto... Careercast.com latest report on the ten best jobs of 2011 #1 Software

More information

VELEUĈILIŠTE NIKOLA TESLA U GOSPIĆU MYSQL SUSTAV ZA UPRAVLJANJE BAZAMA PODATAKA OTVORENOG KODA

VELEUĈILIŠTE NIKOLA TESLA U GOSPIĆU MYSQL SUSTAV ZA UPRAVLJANJE BAZAMA PODATAKA OTVORENOG KODA VELEUĈILIŠTE NIKOLA TESLA U GOSPIĆU Silvio Valjak MYSQL SUSTAV ZA UPRAVLJANJE BAZAMA PODATAKA OTVORENOG KODA Završni rad Gospić, 2015. VELEUĈILIŠTE NIKOLA TESLA U GOSPIĆU POSLOVNI ODJEL Struĉni studij

More information

Katedra za menadžment i IT. Razvoj poslovnih informacionih sistema

Katedra za menadžment i IT. Razvoj poslovnih informacionih sistema Prezentacija smjera Razvoj poslovnih informacionih sistema Katedra za menadžment i IT Razvoj poslovnih informacionih sistema Zašto... Careercast.com latest report on the ten best jobs of 2011 #1 Software

More information

STRUKTURNO KABLIRANJE

STRUKTURNO KABLIRANJE STRUKTURNO KABLIRANJE Sistematski pristup kabliranju Kreiranje hijerarhijski organizirane kabelske infrastrukture Za strukturno kabliranje potrebno je ispuniti: Generalnost ožičenja Zasidenost radnog područja

More information

2. poglavlje - IDENTIFIKACIJA POTROŠAČA - od 62 do 80 strane (19 strana)

2. poglavlje - IDENTIFIKACIJA POTROŠAČA - od 62 do 80 strane (19 strana) Analizirana poglavlja Šapićeve disertacije Broj redova u radu Izvor preuzimanja Broj preuzetih redova 2. poglavlje - IDENTIFIKACIJA POTROŠAČA - od 62 do 80 strane (19 strana) 1. 62 strana 31 2. 63 strana

More information

DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO DOO PODGORICA

DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO DOO PODGORICA CRNA GORA (1}(02.17&r/4 Ver. O;:, fjr}/ ~ AGENCUA ZA ELEKTRONSKE KOM~~IKACUE J.O.O "\\ L\lax Montenegro" BrOJ o/-lj Podoor'ca.d:ioL 20/1g0d I POSTANSKU DEJATELNOST DOSTAVUANJE PONUDA ZA WIMAX MONTENEGRO

More information

STATISTIKA U OBLASTI KULTURE U BOSNI I HERCEGOVINI

STATISTIKA U OBLASTI KULTURE U BOSNI I HERCEGOVINI Bosna i Hercegovina Agencija za statistiku Bosne i Hercegovine Bosnia and Herzegovina Agency for Statistics of Bosnia and Herzegovina STATISTIKA U OBLASTI KULTURE U BOSNI I HERCEGOVINI Jahorina, 05.07.2011

More information

SQL standard podrzava sledece vrste ogranicenja: Ogranicenja domena Ogranicenja tabela i kolona Opsta ogranicenja

SQL standard podrzava sledece vrste ogranicenja: Ogranicenja domena Ogranicenja tabela i kolona Opsta ogranicenja 1. Ograničenja u relacionom modelu. DINAMIČKA PRAVILA INTEGRITETA Pravila integriteta definišu dozvoljena stanja i dozvoljene prelaze sistema iz stanja u stanje. Pravilo integriteta u relacionom modelu

More information

PROŠIRENI MODEL OBJEKTI-VEZE

PROŠIRENI MODEL OBJEKTI-VEZE FAKULTET ORGANIZACIONIH NAUKA Laboratorija za informacione sisteme PROŠIRENI MODEL OBJEKTI-VEZE (Materijal za interne kurseve. Sva prava zadržava Laboratorija za informacione sisteme) Beograd, oktobar

More information

WWF. Jahorina

WWF. Jahorina WWF For an introduction Jahorina 23.2.2009 What WWF is World Wide Fund for Nature (formerly World Wildlife Fund) In the US still World Wildlife Fund The World s leading independent conservation organisation

More information

Modelling Transport Demands in Maritime Passenger Traffic Modeliranje potražnje prijevoza u putničkom pomorskom prometu

Modelling Transport Demands in Maritime Passenger Traffic Modeliranje potražnje prijevoza u putničkom pomorskom prometu Modelling Transport Demands in Maritime Passenger Traffic Modeliranje potražnje prijevoza u putničkom pomorskom prometu Drago Pupavac Polytehnic of Rijeka Rijeka e-mail: drago.pupavac@veleri.hr Veljko

More information

mdita Editor - Korisničko uputstvo -

mdita Editor - Korisničko uputstvo - mdita Editor - Korisničko uputstvo - Sadržaj 1. Minimalna specifikacija računara... 3 2. Uputstvo za instalaciju aplikacije... 3 3. Korisničko uputstvo... 11 3.1 Odabir File opcije iz menija... 11 3.2

More information

Engineering Design Center LECAD Group Engineering Design Laboratory LECAD II Zenica

Engineering Design Center LECAD Group Engineering Design Laboratory LECAD II Zenica Engineering Design Center Engineering Design Laboratory Mašinski fakultet Univerziteta u Tuzli Dizajn sa mehatroničkom podrškom mentor prof.dr. Jože Duhovnik doc.dr. Senad Balić Tuzla, decembar 2006. god.

More information

IZRADA TEHNIČKE DOKUMENTACIJE

IZRADA TEHNIČKE DOKUMENTACIJE 1 Zaglavlje (JUS M.A0.040) Šta je zaglavlje? - Posebno uokvireni deo koji služi za upisivanje podataka potrebnih za označavanje, razvrstavanje i upotrebu crteža Mesto zaglavlja: donji desni ugao raspoložive

More information