You are on page 1of 5

Vaš projektni rad sastoji se od rješavanja zadataka koji su povezani uz samostalnu

izgradnju relacijske baze podataka od utvrđivanja zahtjeva do njezine


implementacije.
Zadaci koje je potrebno odraditi za projekt bit će definirani tjedno. Za svaki ćete
zadatak
dobiti kratak opis, alate i izvore koje možete koristiti u realizaciji zadatka.
Svaki zadatak mora
biti dokumentiran. Svi zadaci moraju biti dokumentirani u jednom dokumentu (npr.
word
dokument).
Tijekom izrade projektnog rada postoje 3 kontrolne točke, za koje će biti potrebno
vaš
rad postaviti na Merlin. Do termina kontrolne točke potrebno je riješiti prethodno
definirane
zadatke.
Slika 1. Teme i kontrolne točke.
3. Kontrolna
točka
2. Kontrolna
točka
1. Kontrolna
točka
PREZENTACIJA
ZADACI
Zadatak Naziv Riješiti do Kontrolna točka
1. Poslovni i informacijski
zahtjevi
29. 3. 2023. 1.
2. Zahtjevi 3. 5. 2023. 2.
3. Određivanje entiteta i atributa 3. 5. 2023. 2.
4. Identifikacija veza na temelju
pitanja
3. 5. 2023. 2.
5. Izrada ER dijagram 3. 5. 2023. 2.
6. Relacijski model 3. 5. 2023. 2.
7. Baza podataka 30.5.2023. 3.
8. Tablice 30.5.2023. 3.
9. Unos podataka 30.5.2023. 3.
10. Upiti 30.5.2023. 3.
11. Nadopuna podataka i upit nad
bazom
14. i 15. tjedan
nastave
Prezentacija
projekta
12. Prezentacija baze podataka 14. i 15. tjedan
nastave
Prezentacija
projekta
ZADATAK 1 – Poslovni i informacijski zahtjevi
Izgradnja baze podataka obuhvaća sljedeće faze [1]: Identificiranje i utvrđivanje
poslovnih i
informacijskih zahtjeva, provedbu logičkog dizajna, provedbu fizičkog dizajna i
implementaciju. Faze sa pojedinim aktivnostima prikazane su na slici br. 1:
Slika 2.: Faze i aktivnosti u izradi baze podataka
Vaš zadatak se sastoji od utvrđivanja područja, poslovnog ili informacijskog
sustava (u
nastavku: tema) u kojem želite raditi vaš projektni rad. Odabranu temu morate
dokumentirati
na sljedeći način: ukratko opišete temu, detaljnije opišete jedan dokument iz teme,
priložite
sliku dokumenta, za dokument utvrdite entitete te pripadajuće atribute i tip
podataka.
Minimalni broj entiteta je sedam. Svaki entitet mora imati minimalno tri atributa.
Primjere koje možete pogledati dani su u okviru literature M. Pavlić, Oblikovanje
baza
podataka – poglavlje 9. – Praktični primjeri modeliranja podataka, a unutar ove
literature
kroz poglavlje 4. Modeli podataka opisani su koncepti i definirani su pojmovi.
Opisane dokumente iz knjige ne može navesti (koristiti) u vašem projektnom radu.
ZADATAK 2 – ZAHTJEVI
Temeljem identificirane domene, poslovnog dokumenata i sugestija kreirajte zahtjeve
koje
uključuju vaše entitete i atribute. Zahtjeve definirajte opisno ili kroz natuknice.
Svaki entitet,
odnosno atribut mora biti iskazan kroz zahtjev.
ZADATAK 3 – ODREĐIVANJE ENTITETA I ATRIBUTA
Identificirane entitet i atribute, prikažite putem Chenove notacije.. Atributi koje
definirate
moraju biti primarno elementarni (jednostavni, atomski), s time da jedan od
atributa u
projektnom radu mora biti kompozitni, jedan od atributa mora biti izvedeni i jedan
od atributa
mora biti viševrijednosni. Kao alat možete koristiti diagrams.net ili bilo koji
drugi koji
podržava Chenovu notaciju
ZADATAK 4 – IDENTIFIKACIJA VEZA (RELACIJA)
Međusobnu povezanost (veze / relacije) između entiteta je potrebno napraviti
temeljem
postavljanja pitanja. Primjere postavljanja pitanja za relacije i način označavanja
možete vidjeti
u okviru Vježbe 03. Svaki entitet koji je identificiran mora imati povezanost. Ako
utvrdite da
postoji entitet koji nema povezanost, definirajte zahtjev za njega (Zadatak 2.).
ZADATAK 5 – ER DIJAGRAM
Temeljem utvrđenih entiteta, njihove povezanosti (imenujte veze) i atributa
kreirajte ER
dijagram. Kao alat možete koristiti diagrams.net ili bilo koji drugi koji podržava
Chenovu
notaciju.
ZADATAK 6 – RELEACIJSKI MODEL
Za ER dijagram napravite relacijski model.
ZADATAK 7 – SQL
Temeljem ER dijagrama i relacijskog modela putem SQLLite Studia kreirajte bazu
podataka
za vaš primjer. Ime baze je u skladu s primjeru. Baza podataka se sastoji od više
entiteta koji
proizlaze iz ER dijagrama ili relacijskog modela. Postupak kreiranja potrebno je
dokumentirati
na način da se prikažu postupak i naredbe za kreiranja baze.
ZADATAK 8 – TABLICE
Tablice moraju biti imenovane prema nazivu entiteta iz ER dijagrama ili relacijskog
modela,
te kreirane na način da kod kreiranja prikažete primjenu ograničenja (Constraints)
na pojedine
stupce (atribute). Od ograničenja obavezno je pokazati primjenu primarnog i
vanjskog ključa,
jedinstvenosti (unique), Not Null, provjeru uvjeta i zadane vrijednosti (default).
Svaki stupac
(atribut) mora imati ispravno ime te pridruženu vrstu podataka. Tablice također
moraju biti
oblikovane na načine da ne omogućavaju redundantne podatke te anomalije unosa,
brisanja ili
ažuriranja. Tablice minimalno moraju biti u 3NF.
ZADATAK 9 – UNOS PODATAKA
Podaci koji se unose moraju biti smisleni (nije dozvoljen unos podataka tipa
primjer 1, grad A,
lokacija B,…). Za svaku tablicu potrebno je unijeti minimalno 10 zapisa (instanci).
Pojedine
tablice koje su u relaciji, ako je moguće moraju imati različiti broj zapisa
(instanci).
Kreirane tablice i unosa podataka potrebno je dokumentirati na način da se uz
dokument
priloži datoteka koja sadrži tablice i podatke. Eksport tablica i podataka
napravite u pdf
format. SQLite Studio kod eksporta u pdf datoteku imenuje sa .sql te je datoteku
potrebno
preimenovati u pdf. Potrebno je provjeriti ispravnost kreirane pdf datoteke.
ZADATAK 10 – UPITI
Za svaki upit potrebno je kreirati jedan primjer. Primjer je potrebno ukratko
opisati, te kreirati
SQL upit i prikazati rezultate. Primjeri moraju biti povezani uz sljedeće dohvate
podataka:
a.) Definirajte dohvat podataka temeljem ispunjavanja određenog uvjeta uz upotrebu
operatora ili ključnih riječi BETWEEN ili LIKE.
b.) Definirajte dohvat podataka temeljem raspoređivanja podataka u grupe
(grupiranje
podataka, GROUP BY) uz upotrebu jedne funkcije agregiranja (Count, Sum, Average).
c.) Definirajte dohvat podataka temeljem raspoređivanja podataka u grupe
(grupiranje
podataka, GROUP BY), uz upotrebu jedne funkcije agregiranja (Count, Sum, Average)
te specijalnog uvjeta HAVING.
d.) Definirajte dohvata podataka nad dvije tablice koje su u relaciju uz upotrebu
WHERE
naredbe.
e.) Definirajte dohvat podataka nad dvije tablice u relaciji temeljem INNER JOIN-a.
f.) Definirajte dohvat podataka nad dvije tablice u relaciji temeljem LEFT JOIN-a.
Primjer za upit te kreirane upite i rezultate upita dokumentirajte na način da u
dokumentu
ukratko opišite primjer, prikažete SQL upit i rezultate upita. Primjer, SQL upit i
rezultat moraju
biti u tekstualnom formatu.
ZADATAK 11 – Nadopuna podataka i upit nad bazom
Prezentacija vašeg projektnog zadataka se sastoji od kratke prezentacije poslovnog
slučaja i
prezentacije žive baze podataka. Kod prezentacije žive baze podataka možete dobiti
zadatak
nadopune ili brisanje podataka temeljem naredbi UPDATE i SET ili DELETE te
kreiranja SQL
upita.
ZADATAK 12 – Prezentacija projektnog rada
Prezentacija vašeg projektnog rada sastoji se od kratke prezentacije poslovnog
slučaja i rada sa
„živom“ bazom podataka. Prezentacija poslovnog slučaja uključuje sljedeće: kratki
opis
poslovnog slučaja, identificirani zahtjevi, prikaz entiteta i atributa,
identifikacija i prikaz
relacija (veza), er dijagram te relacijski model. Kod prezentacije žive baze
podataka potrebno
je pokazati da je vaša baza funkcionalna, odnosno da omogućava unos podataka te
postavljanje
upita. Prikaz žive baze podataka radite sa vlastitog prijenosnog računala.

rješenje:

Kratak opis teme


Za ovaj zadatak sam odabrao temu 'Property management-a'. Koja se zapravo bavi
vođenjem podataka za neki hotel, kamp, apartmane ili nešto slično. Na taj način se
omogućava lakša kontrola, pregled te održivost takvih usluga.

-Prilažem sliku dokumenta prema kojem ću utvrditi entitete, atribute i sami tip
podataka, no i link putem kojega se može doći do navedenog dokumenta - >
https://docs.rentl.io/
Rentlio API je dokumentacija koja opisuje programski interfejs (API) platforme
Rentlio za upravljanje nekretninama. Rentlio API omogućava programerima da pristupe
i manipuliraju podatcima vezanim za nekretnine (poput imena, adrese, cijene,
dostupnosti) kroz različite HTTP metode, te omogućava integraciju s drugim
softverskim alatima.
Dokumentacija sadrži detaljan opis svih dostupnih endpointa i njihovih parametara,
kao i primjere koda u nekoliko programskih jezika kako bi programeri mogli lako i
brzo integrirati svoje aplikacije sa Rentlio platformom. Također, dokumentacija
pruža i informacije o autentifikaciji i sigurnosti, kao i nekoliko savjeta za
optimalnu integraciju.
Rentlio API omogućava programerima da automatiziraju procese i unaprijede
funkcionalnost svojih aplikacija za upravljanje nekretninama.

Definiranje zahtjeva

User, odnosno korisnik ima email, ime, prezime, adresu, grad, broj telefona,
ali i id koji nam pomaže identificirati pojedinog korisnika. Property ili posjed
također
ima ime, adresu, zip kod, grad, telefon, email, web mjesto i zemlju, naravno uz
pripadajući id
koji nam omogućuje jedinstvenu identifikaciju svakog posjeda. Svaki user/korisnik
može dodavati
svoje posj ede u sustav, te jedan korisnik može imati više posjeda, no posjed može
imat samo jednog
user-a koji je povezan s njime. Imamo i unit_type koji nam označava vrstu ponude
smještaja te on
ima id, ime, uuid(dodatna identifikacija), minimalan kapacitet te ukupnu cijenu
noćenja.
Kao primjer vrste posjeda može biti apartman sa n ležaja u slučaju kuće kao posjeda
ili soba sa n ležaja u slučaju hotela ili zgrade. Također imamo unit odnosno
smještaj koji je definiran
putem jedinstvenog id-a, povezanog propertyId-a, povezanog unitTypeId-a uz vlastito
ime i boju.
Jedan posjed može imati puno vrsta smještaja, kao i ponuda smještaja ovisno o broju
kreveta po sobama/apartmanima/kućama.
Nadalje imamo availibility odnosno dostupnost smještaja koju definiramo id-em,
unitsId, datum od,
datum do i dnevna rata plaćanja(u različitim razdoblju godine, različita rata). Ove
sve dosad navedene
stavke se tiču korinika koji izdaje svoje posjede prema vlastitim mogućnostima.
Drugi dio ove jednadžbe se tiče samih gostiju koje definiramo jedinstvenim id-em,
imenom, emailom, kontakt broj,zemlja porijekla,
broj dokumenta,spol,grad prebivanja te datum rođenja. Gosti imaju mogućnost
pravljenja rezervacija
koje su definirane jedinstvenim id-om, unitId, unitTypeIda, guestId, guestName,
guestEmail, datum dolaska, datum odlaska i ukupna cijena.
Uz to korisnik gostima može ponuditi dodatne usluge koje su definirane id-em,
imenom, vrstom plaćanja(id, ime, cijena).

proširi moje rješenje prema uputama te mi umjesto slika, samo reci sto tocno treba
biti na slici

You might also like