Plaanid puhkusele minna? Võta endale majutus AirBnb kaudu ja saad 37€ kontoraha Tee konto Sulge
Facebook Like

Andmebaaside programmeerimine (2)

5 VÄGA HEA
Punktid

Esitatud küsimused

  • Millised andmed vajavad varundamist ?
  • Milline on kahju, mis tekiks andmete hävinemisega ?
  • Millal ja kui sageli andmed muutuvad ?
  • Kuidas teha varukoopiaid ?
  • Kus hoitakse varukoopiaid ja kui sageli neid tehakse ?
  • Kuidas varundada rakendusprogrammi ?
 
Säutsu twitteris
TALLINNA TEHNIKAÜLIKOOL
Infotehnoloogia teaduskond
Informaatikainstituut
Infosüsteemide õppetool

Online Restoran
Andmebaaside programmeerimine IDU0120



Juhendaja :
Erki Eessaar

Tallinn 2011

Sisukord


Sisukord 4
Sissejuhatus 8
1. Strateegia etapp 9
1.1 Terviksüsteemi üldvaade 9
1.1.1 Organisatsiooni eesmärgid 9
1.1.2 Infosüsteemi eesmärgid 9
1.1.3 Lausendid 9
1.1.4 Põhiobjektid 10
1.1.5 Põhiprotsessid 10
1.1.6 Põhilised sündmused 10
1.1.7 Tegutsejad 11
1.1.8 Asukohad 11
1.1.9 Terviksüsteemi tükeldus allsüsteemideks 12
1.2 Tellimuse funktsionaalne allsüsteem 13
1.2.1 Eesmärgid 13
1.2.2 Allsüsteemi kasutavad pädevusalad 13
1.2.3 Allsüsteemi poolt kasutavad registrid 13
1.2.4 Allsüsteemi põhiprotsessi tegevusdiagramm 14
1.2.5 Allsüsteemi kasutusjuhtude eskiismudel 15
1.2.6 Täiendavad nõudmised 17
1.3 Tellimuse register 19
1.3.1 Eesmärgid 19
1.3.2 Registrit kasutavad pädevusalad 19
1.3.3 Registrit teenindavad funktsionaalsed allsüsteemid 19
1.3.4 Infovajadused 19
1.3.5 Seosed teiste registritega 19
1.3.6 Ärireeglid 19
1.3.7 Registri kontseptuaalne eskiismudel 20
2. Detailanalüüsi etapp 21
2.1 Tellimuse funktsionaalne allsüsteem 21
2.1.1 Kasutusjuhtude mudel 21
2.2 Tellimuse register (laiendatud kujul) 25
2.2.1 Kontseptuaalne andmemudel 25
2.2.2 Andmebaasioperatsioonide lepingud 29
OP3.2. Tellimuse loomine (kliendi_id) 29
OP3.4. Menüü rea lisamine (tellimuse_id, menuu_rida_id) 29
OP3.8. Tellimuse_rea kustutamine (tellimuse_id, tellimuse_rida_id) 29
OP3.10. Tellimuse kustutamine (tellimuse_id) 30
OP4.3. Tellimuse kinnitamine (tellimuse_id) 30
OP4.5. Tellimuse mittekinnitamine (tellimuse_id) 30
OP5.3. Tellimuse arhiveerimine (tellimuse_id) 30
OP5.4. Tellimuse mittetäidetuks muutmine (tellimuse_id) 31
2.2.3 Registri põhiobjekti seisundidiagramm 32
2.3 CRUD maatriks 33
2.4 Infosüsteemi rollide kirjeldused 34
3. Loogiline disain 35
3.1 Tellimuse funktsionaalne allsüsteem 35
3.1.1 Realiseeritavad töökohad 35
3.1.2 Reaalsete kasutusjuhtude kirjeldused 35
3.2.1 Loogiline andmebaasi skeem 39
4. Süsteemi tehniline arhitektuuur 50
4.1 Esmane prototüüp 50
4.2 Töötav süsteem 50
5. Tellimuse funktsionaalne allsüsteemi kasutatavate registrite füüsiline disain 52
5.1 Transaktsioonanalüüs 52
5.1.1 OP3.2. Tellimuse loomine (@ klient ) 52
5.2 Andmemahtude hinnang 53
5.3 Vaated 54
5.4 Salvestatud protseduurid ja funktsioonid 55
5.5 Indeksid 56
5.5.1 Oracle 56
5.6 Julgeolekumeetmete disain 56
5.6.1 Oracle 56
5.7 Esialgne andmete varundamise ja taastamise strateegia 58
5.7.1 Oracle 59
5.8 Klassifikaatorite väärtustamise SQL laused 59
6. Realisatsioon Oracle’s 61
6.1 Andmebaasi kohandamine keele- ja kultuurikeskkonnale 61
6.2 Skeemid 61
6.3 Tabelid 61
6.4Arvujada generaatorid 68
6.5Tabelite ja arvujada generaatorite sidumine 68
6.6 Vaated 70
6.7 Sünonüümid 71
6.8 Paketid , salvestatud protseduurid ja funktsioonid 71
6.9 Trigerid 74
6.10 Täiendavate testandmete lisamine 77
6.11 Indeksid 80
6.11.1 Välisvõtmetele lisatavad indeksid 80
6.11.2 Mitte-võtmeveergudele lisatavad indeksid 80
6.11.3 Funktsioonil põhinevad indeksid 80
Funktsioonil põhinevaid indekseid käesolevas projektis ei looda. 80
6.12Andmebaasi statistika kogumine 81
6.13 Päringu täitmisplaani näide 82
6.14 Andmebaasiobjektide kustutamise SQL laused 82
6.14.1 Tabelite kustutamine 82
6.14.2 Arvujada generaatorite kustutamine 83
6.14.3 Vaadete kustutamine 83
6.14.4 Indeksite kustutamine 83
6.14.6 Trigerite ja funktsioonide kustutamine 84
Autorideklaratsioon
Deklareerin, et käesolev töö on minu iseseisva töö tulemus ja selle alusel ei ole varem hinnet/ arvestust taotletud.

Sissejuhatus

Antud töös realiseeritakse olnline restorani kliendi ja tellimuse vastuvõtja töökoht kasutades Oracle 11g Enterprise Edition Release 1 andmebaasisüsteemi. Rakendus on loodud kasutades java programeerimis keelt ning Eclipse IDE-d.
Andmebaasi server : hektor8.ttu.ee:1521
Kasutajanimi: TUD26
Parool : J85LR1
Rakenduse toimimiseks peab kasutaja arvutis olema instaleeritud Apache Tomcat 7.
Rakenduse sisselogimiseks võib kasutada järgnevaid kasutajanimesid/paroole:
Kliendina sisselogimiseks:
Kasutajanimi: klient
Parool: klient
Tellimuse vastuvõtjana sisselogimiseks:
Kasutajanimi: kasutaja
Parool: kasutaja
Veebirakenduse URL: http://localhost:8080/restoran
Registreerides uut kasutajat pöördub rakendus T061859_FUNK_ISIKUKOOD funktsiooni poole, mis kontrollib sisestatud isikukoodi õigsust.
Kliendina sisselogituna:
Vajutades linki Loo uus tellimus rakendus pöördub T061859_FUNK_CAN_MAKE_ORDER funktsiooni poole, mis kontrollib kas kliendil on õigus koostada uut tellimust .
Peale igat muudetust tellimuses (lisades/muutes/kustutades menüü ridu) pöördub rakendus T061859_GET_TELLIMUSE_HIND funktsiooni poole, mis arvutab tellimuse kogu hinna.
Sisselogimisel ning tellimuste arvu muutmisel (lisades/kustutades tellimusi) pöördub rakendus T061859_FUNK_TELLIMUSTE_KOGUS funktsiooni poole, mis tagastab kliendi tellimuste arvu.

1. Strateegia etapp

1.1 Terviksüsteemi üldvaade


Järgnevalt esitatakse ülevaade restorani toimimisest.

1.1.1 Organisatsiooni eesmärgid


Restorani eesmärgid on:
  • Raha teenimine
  • Kliendi vajaduste kiire ja täpne rahuldamine
  • Menüü täiendamine ja muutmine

1.1.2 Infosüsteemi eesmärgid


  • Saada ülevaade restorani töötajatest
  • Saada ülevaade restorani klientidest
  • Saada ülevaade restorani menüüst
  • Saada ülevaade klientide tellimustest
  • Võimaldada koostada tellimust elektrooniliselt

1.1.3 Lausendid


Restoranis on töötajad.
Restoranis on juhataja.
Juhataja võtab tööle töötajaid.
Töötaja on tellimuste vastuvõtja.
Töötaja on autojuht .
Restoranis on menüü.
Menüüs on toidud (menüüread).
Menüüridadel on hinnad.
Menüüridadel on nimetused.
Menüüridadel on kirjeldus.
Menüü read on gruppides.
Klient tellib restoranist menüü ridu.
Tellitud menüürida moodustab tellimuse rea.
Tellimuse real on hulk.
Klient tasub tellimuse eest.
Autojuht tarnib tellimuse kliendile.
Autojuht võtab makse vastu.
Autojuht kinnitab makse.

1.1.4 Põhiobjektid


  • Klient
  • Isik
  • Töötaja
  • Amet
  • Menüü rida
  • Menüü grupp
  • Tellimus
  • Tellimuse rida

1.1.5 Põhiprotsessid


  • Tellimuse koostamine
  • Tellimuse kinnitamine
  • Tellimuse arhiveerimine
  • Töötaja töölevõtmine
  • Kliendi registreerimine
  • Menüü muutmine

1.1.6 Põhilised sündmused


  • Klient soovib tellida toitu koju.
  • Klient tahab lisada menüü ridu oma tellimusse.
  • Autojuht tarnis tellimust kliendile ja sai selle eest raha.

1.1.7 Tegutsejad


  • Klient
  • Autojuht
  • Tellimusevastuvõtja
  • Juhataja

1.1.8 Asukohad


  • Klient kasutab isiklikku arvutit ning avalikke internetti punkte.
  • Autojuht kasutab sülearvutit sõidukis.
  • Tellimusevastuvõtja ja juhataja töötavad restoranis neile spetsiaalselt ettenähtud kohas.

1.1.9 Terviksüsteemi tükeldus allsüsteemideks


Tegemist on restorani infosüsteemiga.
1.1.9.1 Pädevusalad
Organisatsiooni sisesed pädevusalad:
  • Autojuhi pädevusala
  • Tellimuse vastuvõtja pädevusala
  • Administraatori pädevusala
Organisatsiooni välised pädevuslad:
  • Kliendi pädevusala
1.1.9.2 Funktsionaalsed allsüsteemid
Sisulised allsüsteemid:
  • Kliendi funktsionaalne allsüsteem
  • Tellimuse funktsionaalne allsüsteem
  • Menüü funktsionaalne allsüsteem
Administratiivsed allsüsteemid:
  • Töötajate funktsionaalne allsüsteem
1.1.9.3 Registrid
Sisulised registrid:
  • Kliendi register
  • Tellimuse register
  • Menüü register

Administratiivsed registrid:
  • Töötajate register
  • Klassifikaatorite register

1.2 Tellimuse funktsionaalne allsüsteem

1.2.1 Eesmärgid


  • Võimaldada klientidel luua tellimusi.
  • Võimaldada saada ülevaade menüüst.
  • Võimaldada kinnitada tellimust.
  • Võimaldada saada ülevaade klientide tellimustest.
  • Võimaldada registreerida tasumist tellimuse eest.

1.2.2 Allsüsteemi kasutavad pädevusalad


  • Klientide pädevusala
  • Tellimuse vastuvõtja pädevusala
  • Autojuhi pädevusala

1.2.3 Allsüsteemi poolt kasutavad registrid


Allsüsteem teenindab Tellimuse registrit.
Allsüsteem kasutab:
  • Menüü register
  • Isikute register
  • Tellimuse register
  • Klassifikaatorite register

1.2.4 Allsüsteemi põhiprotsessi tegevusdiagramm


Tellimuse allsüsteemi põhiprotsess on „Tellimuse loomine”.


Joonis 1. Tellimuse funktsionaalse allsüsteemi põhiprotsessi tegevusdiagramm.

1.2.5 Allsüsteemi kasutusjuhtude eskiismudel


Joonis 2. Tellimuse funktsionaalse allsüsteemi kasutusjuhtude eskiismudel.
Kasutusjuht : Kasutaja identifitseerimine
Tegutsejad: Klient, tellimuse vastuvõtja, autojuht
Kirjeldus: Subjekt identifitseerib ennast. Selleks sisestab ta kasutajanime ja parooli . Süsteem autendib subjekti. Kui subjekt on identifitseeritud siis lubatakse subjekt süsteemi siseneda, vastasel juhul mitte.
Kasutusjuht: Menüü vaatamine
Tegutsejad: Klient
Kirjeldus: Süsteemi sisenedes saab klient vaadata menüüd mille alusel koostab oma tellimust.
Kasutusjuht: Tellimuse koostamine
Tegutsejad: Klient
Kirjeldus: Klient soovib antud restoranis teha tellimus. Süsteem algatab kasutaja õiguste kontrolli. Klient koostab tellimuse ja säilitab andmebaasi. Andmebaasis tekib uus tellimus seisundiga „loodud”.
Kasutusjuht: Tellimuse kinnitamine
Tegutsejad: Tellimuse vastuvõtja
Kirjeldus: Kui kliendi tellimus on nõuete kohaselt koostatud, siis tellimuse vastuvõtja kinnitab tellimuse. Kui tellimus on kinnitatud, siis asub autojuht tellimust kliendile tarnima.
Kasutusjuht: Tellimuse arhiveerimine
Tegutsejad: Autojuht
Kirjeldus: Autojuht peab vajalikuks tellimuse arhiveerimist. Süsteem algatab kasutaja õiguste kontrolli. Kui autojuht on tellimuse kohale viinud ning selle eest tasu saanud, arhiveerib ta tellimuse. Ning sellega on kliendi tellimus lõpetatud.

1.2.6 Täiendavad nõudmised


Tüüp
Nõudmised
tarkvara
Süsteem peab andmete hoidmiseks kasutama
andmebaasisüsteemi abil loodud andmebaasi (st. kõne alla ei tule failipõhine lahENDus).
Serverite operatsioonisüsteemiks peaks olema Linux , et
vähendada süsteemi maksumust.
keel
Süsteemi kasutajaliides ja dokumentatsioon peavad olema
eesti keeles. Süsteem tuleks üles ehitada nii, et ei oleks väga
raske lisada kasutajaliidesesse uusi keeli (inglise keel).
töökiirus
Päringu tegemisel ei tohi vastuse kuvamine võtta aega
rohkem kui 5 sekundit.
Andmete muudatuse salvestamine süsteemi poolt ei tohi võtta aega rohkem kui 5 sekundit.
kasutajaliides
klientidele mõeldud kasutajaliides peab olema igal juhul
veebipõhine.
kujundus
Kasutada tuleb silmale pehmeid värve.
80% sisust ei kuvatud. Kogu dokumendi sisu näed kui laed faili alla
Vasakule Paremale
Andmebaaside programmeerimine #1 Andmebaaside programmeerimine #2 Andmebaaside programmeerimine #3 Andmebaaside programmeerimine #4 Andmebaaside programmeerimine #5 Andmebaaside programmeerimine #6 Andmebaaside programmeerimine #7 Andmebaaside programmeerimine #8 Andmebaaside programmeerimine #9 Andmebaaside programmeerimine #10 Andmebaaside programmeerimine #11 Andmebaaside programmeerimine #12 Andmebaaside programmeerimine #13 Andmebaaside programmeerimine #14 Andmebaaside programmeerimine #15 Andmebaaside programmeerimine #16 Andmebaaside programmeerimine #17 Andmebaaside programmeerimine #18 Andmebaaside programmeerimine #19 Andmebaaside programmeerimine #20 Andmebaaside programmeerimine #21 Andmebaaside programmeerimine #22 Andmebaaside programmeerimine #23 Andmebaaside programmeerimine #24 Andmebaaside programmeerimine #25 Andmebaaside programmeerimine #26 Andmebaaside programmeerimine #27 Andmebaaside programmeerimine #28 Andmebaaside programmeerimine #29 Andmebaaside programmeerimine #30 Andmebaaside programmeerimine #31 Andmebaaside programmeerimine #32 Andmebaaside programmeerimine #33 Andmebaaside programmeerimine #34 Andmebaaside programmeerimine #35 Andmebaaside programmeerimine #36 Andmebaaside programmeerimine #37 Andmebaaside programmeerimine #38 Andmebaaside programmeerimine #39 Andmebaaside programmeerimine #40 Andmebaaside programmeerimine #41 Andmebaaside programmeerimine #42 Andmebaaside programmeerimine #43 Andmebaaside programmeerimine #44 Andmebaaside programmeerimine #45 Andmebaaside programmeerimine #46 Andmebaaside programmeerimine #47 Andmebaaside programmeerimine #48 Andmebaaside programmeerimine #49 Andmebaaside programmeerimine #50 Andmebaaside programmeerimine #51 Andmebaaside programmeerimine #52 Andmebaaside programmeerimine #53 Andmebaaside programmeerimine #54 Andmebaaside programmeerimine #55 Andmebaaside programmeerimine #56 Andmebaaside programmeerimine #57 Andmebaaside programmeerimine #58 Andmebaaside programmeerimine #59 Andmebaaside programmeerimine #60 Andmebaaside programmeerimine #61 Andmebaaside programmeerimine #62 Andmebaaside programmeerimine #63 Andmebaaside programmeerimine #64 Andmebaaside programmeerimine #65 Andmebaaside programmeerimine #66 Andmebaaside programmeerimine #67 Andmebaaside programmeerimine #68 Andmebaaside programmeerimine #69 Andmebaaside programmeerimine #70 Andmebaaside programmeerimine #71 Andmebaaside programmeerimine #72 Andmebaaside programmeerimine #73 Andmebaaside programmeerimine #74 Andmebaaside programmeerimine #75 Andmebaaside programmeerimine #76 Andmebaaside programmeerimine #77 Andmebaaside programmeerimine #78 Andmebaaside programmeerimine #79 Andmebaaside programmeerimine #80 Andmebaaside programmeerimine #81
Punktid 50 punkti Autor soovib selle materjali allalaadimise eest saada 50 punkti.
Leheküljed ~ 81 lehte Lehekülgede arv dokumendis
Aeg2012-02-07 Kuupäev, millal dokument üles laeti
Allalaadimisi 214 laadimist Kokku alla laetud
Kommentaarid 2 arvamust Teiste kasutajate poolt lisatud kommentaarid
Autor nemoris Õppematerjali autor

Lisainfo

Mõisted


Meedia

Kommentaarid (2)

hais profiilipilt
hais: atgaj atyjk atyjkl
20:37 12-02-2013
PriiduN profiilipilt
PriiduN: Kasuks ikka
09:03 18-09-2012


Sarnased materjalid

134
pdf
Programmeerimine PHP
555
doc
Programmeerimiskeel
89
doc
Loogika ja programmeerimine
56
doc
Andmebaaside eksami kordamisküsimuste vastused
9
pdf
Referaat-Programmeerimine
575
docx
Nimetu
30
docx
Andmebaasid I - eksamiküsimused
212
docx
Veebistuudium arendus ASP NET



Faili allalaadimiseks, pead sisse logima
Kasutajanimi / Email
Parool

Unustasid parooli?

UUTELE LIITUJATELE KONTO MOBIILIGA AKTIVEERIMISEL +50 PUNKTI !
Pole kasutajat?

Tee tasuta konto

Sellel veebilehel kasutatakse küpsiseid. Kasutamist jätkates nõustute küpsiste ja veebilehe üldtingimustega Nõustun