You are on page 1of 22

REENI ZADACI

Zadatak:
1. Na osnovu datog materijala (opis posla, dokument i sintaksna analiza dokumenta,
dijagram toka podataka i recnik podataka, dijagram slucajeva koriscenja) izraditi
konceptualni model podataka:
a) Na osnovu gramatike analize opisa posla.
b) Na osnovu dodeljivanja atributa iz renika podataka entitetima.
c) Na osnovu sintaksne analize dokumenta.
d) Na osnovu sintaksne analize skladita podataka.
e) Na osnovu normalizacije skladita podataka.
2. Izvrsiti:
a) integraciju resenja iz 1. Zadatka,
b) proveru i korekciju gresaka,
c) proveru potpunosti modela u odnosu na:
c1) primitivne procese
c2) slucajeve koriscenja.
3.
4.
5.
6.

Kreirani konceptualni model transformisati u fizicki model.


Generisati bazu podataka.
Generisati i korigovati dijagram klasa.
Generisati programski kod klasa.

Radi ilustracije naina izrade zadataka, izabran je jednostavan sistem taksi slube i
to samo osnovna delatnost, a u okviru nje rad operatera. Naravno, osnovna
delatnost se ne moe vrsiti bez rezultata rada i pomocne delatnosti koja se odnosi na
nabavku i odravanje resursa opreme, kadrova i slino, ali smo zbog potrebe za
jednostavnou i fokusiranjem na primenu metoda, minimizovali obuhvat
posmatranja.
MATERIJAL ZA IZRADU ZADATKA:
Posmatrani sistem: taksi sluzba osnovna delatnost rad operatera
Za navedeni sistem dat je opis posla, analiza strukture dokumenta, stablo procesa, dijagrami toka
podataka i tabela preslikavanja primitivnih procesa u softverske funkcije. Struktura skladista podataka
identicno je strukturi dokumenta i spisak elementarnih podataka sa sintaksnom analizom predstavlja
istovremeno i recnik podataka.

1. Opis posla za osnovnu delatnost


Graanin (klijent, putnik) telefonskim pozivom ili SMS porukom naruuje prevoz govori adresu na koju
treba da dodje taksi. Operater salje putem radio veze poziv svim aktivnim vozacima da se jave (licitiraju)
za datu voznju. Vozac koji se prvi javi i da najpovoljnije vreme ce dobiti voznju. Operater saopstava
klijentu ocekivano vreme dolaska taksi vozila. Ako to klijentu odgovara, voznja je dogovorena. Operater
belezi kom vozacu je dodeljena koja voznja (svaki vozac/vozilo je jedinstveno identifikovan ID brojem).
Ako se nijedno vozilo ne javi, voznja se ne belezi u dnevniku. Voza stie na eljenu adresu u
predvidjenom vremenu. Putnik odreuje destinaciju. Vozac ukljucuje taksimetar. Po dolasku na destinaciju
vozac sa taksimetra ocitava troskove voznje. Putnik dobija raun i vri uplatu za uslugu prevoza. Ukoliko
vozac ne stigne na vreme, a klijent poziva ponovo i zali se na cekanje, vozacu se za svaku takvu voznju
oduzima izvestan iznos honorara.

2. Dokument za analizu
TAKSI SLUZBA MAXI-TAXI
Bacvanska 33
NekoMesto
DNEVNIK RADA
Datum: 13.3.2013.

Vozac Vreme TelefonPoziva PocetnaStanica


Realizovano
voznje
1446 10.30
021/111212 4. Juli 48
DA
350
10.35
022/111232 Masarikova 18
DA
3456
10.40
023/111242 Knicaninova 25
NE
dosao
451
11.15
024/111252 Voje Tankosica 68
NE
zakasnio
462
11.20
025/111262 Brace Barnic 48
NE
Operater
Masarik Juliska
2.1.

ANALIZA DOKUMENTA:

2.1.1.

Elementarni podaci

NAZIV
ELEMENTARNOG
PODATKA
NazivTaksiSluzbe
AdresaTaksiSluzbe
NazivMestaTaksiSluzbe
DatumDnevnikaRada
IDBrojVozaca
VremePozivaKlijenta
TelefonPozivaKlijenta
AdresaPocetneStanice
NaplaceniIznos
RazlogNerealizovaneVoznje
PrezimeOperatera
ImeOperatera

TIP PODATKA

Naplaceno (din)

Razlog nerealizovane

240,00
350,00
0
0
0

klijent nije
vozac je
kvar na vozilu

DOMEN

String 50
String 70
Mesta
Date
IDBrojeviVozaca
Time
String 40
String 70
Real
RazloziNerealizovaneVoznje
String 50
String 30

2.1.2.
DOMENI:
Mesta: String 100 (Nazivi mesta u Srbiji sifarnik)
IDBrojeviVozaca: String 15 (1446, 350, 3456, 451, 462)
RazloziNerealizovaneVoznje: String 30 (klijent nije dosao, vozac je zakasnio, kvar na vozilu)
2.1.3.
SINTAKSNI PRIKAZ STRUKTURE DOKUMENTA:
DNEVNIK_RADA:< <NazivTaksiSluzbe,
AdresaTaksiSluzbe,
NazivMestaTaksiSluzbe>,
DatumDnevnikaRada,
{<IDBrojVozaca,
VremePozivaKlijenta,
TelefonPozivaKlijenta,
AdresaPocetneStanice,
[NaplacenIznos,
RazlogNerealizovaneVoznje]
>},
<PrezimeOperatera,
ImeOperatera>
>;

3. Dijagram toka podataka


3.1.

0.
1.

Stablo procesa
Taksi sluzba osnovna delatnost rad operatera
Priprema voznje
a. Prijem poziva od klijenta
b. Obavestavanje o licitaciji za voznju
c. Prijem prijave za voznju

2.

3.

d. Obavestavanje klijenta o mogucnosti prispeca vozila


e. Prijem potvrde od klijenta za voznju
f.
Obavestavanje vozaca o potvrdi za voznju
Obrada neizvrsene voznje
a. Prijem zalbe klijenta o neizvrsenoj voznji
b. Slanje zahteva za obrazlozenjem neizvrsene voznje vozacu
c. Slanje obrazlozenja za neizvrsenu voznju klijentu
Evidentiranje izvrsene voznje

3.2.

Dijagrami toka podataka

U ovom primeru su dati samo DTP 0. Nivoa i 1. Nivoa.

DTP 0. Nivoa

Vozac
Klijent

Podaci o najavi voznje i licitacije

Zahtev za voznjom
Podaci o potencijalnom prihvatanju voznje i mogucem vremenu pristizanja
Odgovor o raspolozivosti vozila i vremenu prispeca

Podaci o prihvatanju voznje

Podaci o dodeljivanju voznje


1

Podaci o zalbi na kasnjenje vozila

Taksi sluzba - osnovna delatnost - rad operatera


Zahtev za obrazlozenjem kasnjenja

Obrazlozenje kasnjenja

DTP 1. Nivoa

Podaci o obrazlozenju kasnjenja

Klijent

Vozac

Potvrda voznje sa prihvatanjem vremena pristizanja


Podaci o najavi voznje i licitacije

Zahtev za voznjom

Odgovor o raspolozivosti vozila i vremenu prispeca


Podaci o dodeljivanju voznje
Podaci o potencijalnom prihvatanju voznj e i mogucem vremenu pristizanja
Zahtev za obrazlozenjem kasnjenja

1.1
Priprema voznje

Podaci o zalbi na kasnjenje vozila


Podaci o izvrsenoj voznji

Podaci o dodeljenoj voznji

Podaci o obrazlozenju kasnjenja

1
1.2

DnevnikRada

Podaci o neizvrsenoj voznji

Obrada neizvrsene voznje


Podaci o izvrsenoj voznji

1.3
Evidentiranje izvrsene voznje

4. Dijagram slucajeva koriscenja


1.1.

Preslikavanje primitivnih poslovnih procesa u softverske funkcije

PRIMITIVNI PROCES
Prijem poziva od klijenta
Obavestavanje o licitaciji za
voznju
Prijem prijave za voznju
Obavestavanje klijenta o
mogucnosti prispeca vozila
Prijem potvrde od klijenta za
voznju
Obavestavanje vozaca o
potvrdi za voznju
Prijem zalbe klijenta o
neizvrsenoj voznji
Slanje zahteva za
obrazlozenjem neizvrsene
voznje vozacu
Slanje obrazlozenja za
neizvrsenu voznju klijentu
Evidentiranje izvrsene voznje

NIJE SOFTVERSKI
PODRANO
telefonski
radio stanica

SOFTVERSKA FUNKCIJA 1.
PRIORITETA

radio stanica
telefon
Unos podataka o dodeljenoj voznji
Unos podataka o dodeljenoj voznji
Unos podataka o zalbi na dodeljenu
voznju
radio stanica
telefon

Unos podataka o zalbi na dodeljenu


voznju
Unos podataka o zavrsetku voznje

Sve poslovne i softverske funkcije izvrsava operater.

PRIMITIVNI POSLOVNI PROCES

Prijem poziva od klijenta


Obavestavanje o licitaciji za voznju
Prijem prijave za voznju
Obavestavanje klijenta o mogucnosti
prispeca vozila
Prijem potvrde od klijenta za voznju
Obavestavanje vozaca o potvrdi za
voznju
Prijem

zalbe klijenta
voznji

neizvrsenoj

Slanje

zahteva
za
obrazlozenjem
neizvrsene voznje vozacu

Slanje

obrazlozenja za neizvrsenu
voznju klijentu

Evidentiranje izvrsene voznje

1.2.

SOFTVERSKA
FUNKCIJA
1. prioritet
Unos podataka
o
dodeljenoj
voznji

SOFTVERSKA
SOFTVERSKA
FUNKCIJA
2. FUNKCIJA
PRIORITET
preduslov
Tabelarni prikaz
Unos podataka o
dodeljenih voznji vozacu
Filtriranje
Unos podataka
dodeljenih
o mestu
voznji
prema
prezimenu
vozaca, Id broju
vozaca, telefonu
klijenta, adresi
polaska
Unos podataka o Tabelarni prikaz Unos podataka
zalbi
na zalbi
o
razlozima
dodeljenu voznju
nerealizovanih
voznji
Filtriranje zalbi Unos podataka
po
prezimenu o
dodeljenoj
vozaca, Id broju voznji
vozaca, telefonu
klijenta, adresi
polaska
Stampanje
statistike
o
zalbama
Unos podataka o
Tabelarni prikaz
Unos podataka
zavrsetku voznje
zavrsenih voznji
o dodeljenoj
voznji
Filtriranje
zavrsenih voznji
prema ID broju
vozaca
Stampanje
periodicne
statistike o radu
(ukljucuje:
Izbor perioda
statistike)

Dijagram slucajeva koriscenja

Unos podataka o mestu

Unos podataka o vozacu

<<access>>

Unos podataka o razlozima nerealizovanih voznji

<<access>>

Unos podataka o dodeljenoj voznji

<<access>>

<<access>>

<<extend>>

<<Filtriranje podataka o dodeljenoj voznji prema kriterijumu>>


prezimenu vozaca, ID broju vozaca, telefonu klijenta, adresi polaska

Tabelarni prikaz podataka


o dodeljenim voznjama
<<access>>

Operater

Unos podataka o zalbi na dodeljenu voznju


<<access>>
<<access>>
<<extend>>
<<access>>
Tabelarni prikaz zalbi

<<Filtriranje zalbi prema kriterijumu>>


prema prezimenu vozaca, ID broju vozaca, telefonu klijenta, adresi polaska

Stampanje statistike o zalbama

Unos podataka o zavrsetku voznje

<<access>>
Filtriranje zavrsenih voznji prema ID vozaca
TAbelarni prikaz zavrsenih voznji
<<access>>

Izbor perioda statistike


<<include>>
Stampanje periodicne statistike o radu

RESENJA ZADATAKA

1.

a) PRISTUP GRAMATICKA ANALIZA TEKSTA OPISA POSLA

Metoda:
Imenice kandidati za entitete, Glagoli kandidati za poveznike. Ako poveznik ima vazne atribute,
postaje entitet.

Prevoz1
Zahtev za voznjom

Klijent
Adresa
Telefon

narucuje

datum poziva
vreme poziva

je dodeljen voznji

pripada
Licitacija
izvrsen

najavljeno vreme pristizanja

se javio

Vozac
Izvrsen prevoz
je cilj

Mesto
je pocetak

ptt
naziv

datum pocetka
vreme pocetka
datum zavrsetka
vreme zavrsetka
adresa destinacije
naplacen iznos

Neizvrsen prevoz

je razlog

Razlog neizvrsavanja voznje


opis

sifra
Prezime
Ime
RegidtarskiBrojVozila

1.b) DODELJIVANJE ATRIBUTA IZ RECNIKA PODATAKA ENTITETIMA


Za primenu metode koristicemo spisak elementarnih podataka iz prethodne analize dokumenta.
Metoda: Na osnovu naziva atributa odredjujemo naziv entiteta kojem pripada.

Mesto

Dnevnik
DatumDnevnika

ptt
Naziv

Vozac

Naplata
NaplacenIznos

Id

Taksi sluzba
Naziv
Adresa
Pocetna stanica
AdresaPocetneStanice

Poziv

poziva

vreme poziva

Voznja
Operater
Prezime
Ime
Klijent
telefon
Inheritance_1

NerealizovanaVoznja
Razlog

1. c) d) SINTAKSNA ANALIZA DOKUMENTA ili SKLADISTA PODATAKA


U nastavku je dat prikaz primene metode sintaksne analize dokumenta, a slican postupak bi se primenio i
za sintaksnu analizu skladista podataka.
Metoda: Atributi koji su blisko povezani (udruzeni simbolima <>) nalaze se u zajednickom entitetu,
atributi koji su u odnosu 1:M (odvojeni {}) se odvajaju u poseban entitet, atributi koji se medjusobno
iskljucuju odvajaju se u is-a hijerarhiju.

Mesto

nalazi se

ptt
Naziv
Dnevnik
je primio poziv

DatumDnevnika

Vozac
Id
Taksi sluzba
Naziv
Adresa

pripada
zaposljava

Voznja

je dodeljen

VremePozivaKlijenta
AdresaPocetneStanice

je pozvao
Klijent
telefon

realizovan
Operater
Prezime
Ime
Nerealizovana voznja

Realizovana voznja
NaplacenIznos

je razlog

Razlog nerealizovane voznje


opis razloga

1 e) NORMALIZACIJA SKLADITA PODATAKA


Metoda: Skladite podataka smatramo nenormalizovanom tabelom relacionog modela i primenjujemo
svoenje na:
1. normalnu formu (atributi treba da imaju atomarne vrednosti nema mnoine u nazivu ili naziva
kao strukture),

2. normalnu formu (funkcionalna zavisnost od identifikacionih obelezja:


f(kljucno identifikaciono obelezje)= jedna jedinstveno odredjena vrednost nekljucnog
obelezja),
2. normalnu formu (nema tranzitivnih funkcionalnih zavisnosti, nema izracunljivih polja, polja sa
domenima novi entiteti).
NAPOMENA:
Na ovaj nacin direktno kreiramo konceptualni model (prvenstveno uvodimo identifikaciona obelezja,
izdvajamo u posebne entitete atribute koji su identifikaciono zavisni od identifikacionog obelezja i
povezujemo entitete poveznicima) koji treba da zadovolji osobine 1,2,3 normalne forme relacionog
modela.

1. normalna forma
NAZIV
ELEMENTARNOG
PODATKA
NazivTaksiSluzbe
AdresaTaksiSluzbe
NazivMestaTaksiSluzbe

JEDNINA
u nazivu
da
da
da

STRUKTURA
u nazivu
ne
ne
ne

DatumDnevnikaRada

da

ne

IDBrojVozaca
VremePozivaKlijenta

da
da

ne
ne

TelefonPozivaKlijenta

da

ne

AdresaPocetneStanice

da

ne

NaplaceniIznos
RazlogNerealizovaneVoznje
PrezimeOperatera
ImeOperatera

da
da
da
da

ne
ne
ne
ne

Napomena

bilo
bi
da
pise
MestoTaksiSlube
datumski tip je slozen
od dana, meseca i
godine,
ali
postoji
standardni tip podatka
Date
vreme se sastoji od
sata, minuta i sekundi,
ali postoji tip podatka
Time
telefon je struktura od
pozivnog broja i samog
broja, ali se moze
smatrati
jednim
podatkom
adresa se sastoji od
ulice i broja, ali se moze
smatrati
jednim
podatkom

1.
NF
da
da
da
da

da
da

da

da

da
da
da
da

2. normalna forma
NAZIV ELEMENTARNOG PODATKA
NazivTaksiSluzbe
AdresaTaksiSluzbe
NazivMestaTaksiSluzbe
DatumDnevnikaRada
IDBrojVozaca
VremePozivaKlijenta
TelefonPozivaKlijenta
AdresaPocetneStanice

FUNKCIONALNO (identifikaciono) ZAVISI OD


ID taksi sluzbe
ID taksi sluzbe
PTT mesta
ptt mesta taksi sluzbe zavisi od ID taksi sluzbe
Id dnevnika rada
IDBrojVozaca
ID stavke dnevnika rada ili ID Poziva,
Id poziva zavisi od ID dnevnika rada
ID stavke dnevnika rada ili ID poziva
ID poziva
Id poziva zavisi od ID dnevnika rada

NaplaceniIznos
RazlogNerealizovaneVoznje
PrezimeOperatera
ImeOperatera

ID stavke dnevnika rada


Id poziva zavisi od ID dnevnika rada
ID stavke dnevnika rada
Id poziva zavisi od ID dnevnika rada
Id operatera
Id operatera zavisi od ID taksi sluzbe
Id operatera

3. normalna forma
NAZIV ELEMENTARNOG
PODATKA
NazivTaksiSluzbe
AdresaTaksiSluzbe
NazivMestaTaksiSluzbe
DatumDnevnikaRada
IDBrojVozaca
VremePozivaKlijenta
TelefonPozivaKlijenta
AdresaPocetneStanice
NaplaceniIznos
RazlogNerealizovaneVoznje
PrezimeOperatera
ImeOperatera

FUNKCIONALNO
(identifikaciono)
OD
ID taksi sluzbe
ID taksi sluzbe
PTT mesta
Id dnevnika rada
IDBrojVozaca
ID Poziva
ID Poziva
ID Poziva
ID Poziva
ID Poziva
Id operatera
Id operatera

TRANZITIVNO ZAVISI OD
ZAVISI

ID taksi sluzbe
Id operatera
ID Poziva
ID dnevnika rada
ID dnevnika rada
ID dnevnika rada
ID dnevnika rada
ID dnevnika rada
ID taksi sluzbe
ID taksi sluzbe

Konceptualni model nakon svodjenja na 1,2,3 normalne forme:

Mesto

nalazi se
Dnevnik

ptt
Naziv

IDdnevnika
DatumDnevnika

Vozac
pripada

Idvozaca

je dodeljen

Taksi sluzba
ID taksi sluzbe
Naziv
Adresa

Poziv
IDpoziva
RazlogNerealizovaneVoznje
TelefonPozivaKlijenta
VremePozivaKlijenta
AdresaPocetneStanice
NaplacenIznos

zaposljava

Operater
Id operatera
Prezime
Ime

je radio

2.INTEGRACIJA MODELA, PROVERA KOREKTNOSTI I POTPUNOSTI


1 a) Integracija modela

Vozac
ID
<pi> Text (15)
PrezimeOperatera
Text (50)
Ime
Text (20)
RegistarskiBrojVozila
Text (30)

je sediste

Mesto

je mesto dolaska

ptt
<pi> Text (10)
Naziv
Text (100)

TaksiSluzba
Oznaka <pi> Text (10)
Naziv
Text (100)
Adresa
Text (100)

je mesto polaska

Operater
JMBG
<pi> Text (13)
PrezimeOperatera
Text (50)
ImeOperatera
Text (30)

zaposljava

prima poziv

PotencijalnaVoznja - Poziv
IDvoznje
<pi> Long integer
DatumPoziva
Date
VremePoziva
Time
TelefonPoziva
Text (50)
AdresaPolaska
Text (100)
NajavljenPeriodStizanjaVozilaMinuta
Byte
UlozenaZalba
Boolean
ObrazlozenjeRazlogaKasnjenja
Text (100)
IzvrsenaVoznja
Boolean

je dodeljen

izvrsena

NeizvrsenaVoznja

IzvrsenaVoznja
VremePolaska
AdresaDestinacije
VremeDolaska
NaplacenIznos

Time
Text (100)
Time
Float

je razlog

DetaljanOpisRazloga Text (100)

TipRazlogaNeizvrsavanjaVoznje
SifraRazloga <pi> Text (10)
NazivRazloga
Text (50)

NAPOMENA:
ifarnici su: Mesto, Taksi sluba, Voza, Operater, TipRazlogaNerealizovanjaVonje
2.b) PROVERA KOREKTNOSTI MODELA
GRUPA

GRUPA

Potrebna osobina -

PROVERA

ELEMENATA

OSOBINA
semantika
uskladjenost sa
datim
materijalom

CELINA
MODELA
kompletnost

jezicka
nedvosmislenost

naziv

ENTITET

Entitet i atributi

Naziv

Atributi i tipovi
/domeni
podataka
ATRIBUT

Karakteristike

POVEZNIK

Naziv
nacin povezivanja
entiteta

METRIKA
Semanticki u skladu sa
problemom
Pokrivenost opisa posla
Pokrivenost importovanih
elementarnih podataka
Pokrivenost skladista
podataka sa DTP
Kompletnost skupa entiteta
Kompletnost skupa atributa
Kompletnost skupa
poveznika
Nepostojanje sinonima u
nazivima entiteta i atributa
Nepostojanje homonima u
nazivima entiteta i atributa
Imenica ili glagolska
imenica
Izrazava sustinske objekte i
dogadjaje
Ne izrazava nazive
dokumenata
Jednina u nazivu
Ima identifikaciono obelezje
ili je identifikaciono zavisan
od drugih entiteta
Dodeljen atribut
odgovarajuem entitetu
(2NF) Ne postoje brojni
odnosi atributa 1:M u
entitetu
(3NF) Ne postoje tranzitivne
zavisnosti atributa u
entitetu
(1NF) Jednina u nazivu
(1NF) Nema naziv kao
struktura
Odgovarajuci tip podatka
Atribut nema za tip podatka
domen (uzi skup vrednosti
nego sto je standardni tip
podatka), vec je izvucen
kao sifarnik
Atributi se sa istim nazivom
ne ponavljaju (nema
redundanse)
Nema izracunljivih atributa,
vec samo analitickih
vrednosti medju atributima
na osnovu kojih se vrse
izracunavanja
Poveznik ima naziv
Naziv kao glagol
Povezani direktno entiteti
koji treba da budu povezani
Entiteti su povezani
hronoloskim sledom
medjuzavisnih dogadjaja
Povezani su entiteti u
gerund odnosu, ako je
potrebno
Ako poveznik ima vazne
atribute, pretvoren je u
entitet

DA
DA
DA
DA
da
da
da
DA
DA
DA
DA
DA
DA
DA

DA
DA
DA

DA
DA
DA
DA izdvojeni su
sifarnici

DA

DA

DA
DA
da
DA

nema gerunda
da

podesavanja
osobina

3.

Pravilno podesen
kardinalitet
Pravilno podesena strana na
vezi 1:M
Pravilno odredjeno da li ima
opravdanja za vezu 1:1 ili je
jedan entitet
Pravilno odredjeno u vezi
1:1 ko je dominant
Pravilno odredjeno u vezi
M:M da li ima vaznih
atributa ili ostaje M:M
Pravilno podesena
identifikaciona zavisnost
Pravilno podesena is-a
hijerarhija (gde je
nadredjeni, bar jedan
podredjeni, migrira samo
ID)

da
da
nema odnosa 1:1
nema odnosa 1:1
ostaje veza M:M

da
da

c) PROVERA POTPUNOSTI MODELA U ODNOSU NA PRIMITIVNE


PROCESE I SOFTVERSKE FUNKCIJE

PRIMITIVNI
PROCES
POMOCNA
DELATNOST

OSNOVNA DELATNOST
Prijem poziva od
klijenta
Obavestavanje o
licitaciji za voznju
Prijem prijave za
voznju
Obavestavanje klijenta
o mogucnosti prispeca
vozila
Prijem potvrde od
klijenta za voznju

Obavestavanje vozaca
o potvrdi za voznju
Prijem zalbe klijenta o
neizvrsenoj voznji
Slanje zahteva za
obrazlozenjem
neizvrsene voznje
vozacu

SOFTVERSKA FUNKCIJA

ENTITETI PODMODELA

Unos podataka o taksi slubi

Taksi sluzba

Unos podataka o operateru


Unos podataka o vozacu
Unos podataka o mestu
Unos podataka o tipovima
razloga nerealizovanih voznji

Operater
Vozac
Mesto
TipRazlogaNerealizovaneVoznje

NIJE PODRZANO SOFTVERSKI


NIJE PODRZANO SOFTVERSKI
NIJE PODRZANO SOFTVERSKI
NIJE PODRZANO SOFTVERSKI
Unos podataka o dodeljenoj
voznji
Tabelarni
prikaz
dodeljenih
voznji
Filtriranje dodeljenih voznji
prema prezimenu vozaca, Id
broju
vozaca,
telefonu
klijenta, adresi polaska

Taksi sluzba, Operater, Vozac,


PotencijalnaVoznja - Poziv

Unos podataka o dodeljenoj


voznji
Unos podataka o zalbi na PotencijalnaVoznja Poziv
dodeljenu voznju
Unos podataka o zalbi na
PotencijalnaVoznja Poziv
dodeljenu voznju

Slanje obrazlozenja za
neizvrsenu voznju
klijentu

Tabelarni prikaz zalbi


PotencijalnaVoznja Poziv
Filtriranje zalbi po prezimenu
vozaca, Id broju vozaca,
telefonu
klijenta,
adresi
polaska
Evidentiranje izvrsene
Unos podataka o zavrsetku IzvrsenaVoznja
voznje
voznje
Tabelarni
prikaz
zavrsenih
voznji
Filtriranje
zavrsenih
voznji
prema ID broju vozaca
NeizvrsenaVoznja
Unos podataka o razlozima
nerealizovanih voznji
UPRAVLJACKA
DELATNOST

Stampanje periodicne statistike PotencijalnaVoznja,


o radu
IzvrsenaVoznja,
(ukljucuje: Izbor perioda
NeizvrsenaVoznja
statistike)
Stampanje statistike o zalbama PotencijalnaVoznja Poziv

Zakljuak:
Model je korektan i potpun u skladu sa primitivnim procesima i sluajevima
korienja.

3.GENERISAN FIZIKI (relacioni) MODEL

Vozac
ID
PrezimeOperatera
Ime
RegistarskiBrojVozila

text <pk>
text
text
ptt = pttDestinacije
text

Mesto

ptt = pttSediste

ptt
text <pk>
Naziv text
TaksiSluzba

Operater
JMBG
OznakaTaxiSluzbe
PrezimeOperatera
ImeOperatera

text <pk>
text <fk>
text
text

Oznaka = OznakaTaxiSluzbe

Oznaka
pttSediste
Naziv
Adresa

text <pk>
text <fk>
text
text

ptt = pttPolaska

JMBG = JMBGOperatera

PotencijalnaVoznja - Poziv
IDvoznje
IDVozaca
pttPolaska
JMBGOperatera
DatumPoziva
VremePoziva
TelefonPoziva
AdresaPolaska
NajavljenPeriodStizanjaVozilaMinuta
UlozenaZalba
ObrazlozenjeRazlogaKasnjenja
IzvrsenaVoznja

ID = IDVozaca

IDvoznje = IDvoznje

bigint
text
text
text
datetime
datetime
text
text
tinyint
bit
text
bit

<pk>
<fk1>
<fk3>
<fk2>

IDvoznje = IDvoznje

IzvrsenaVoznja
IDvoznje
pttDestinacije
VremePolaska
AdresaDestinacije
VremeDolaska
NaplacenIznos

bigint
<pk,fk2>
text
<fk1>
datetime
text
datetime
float

NeizvrsenaVoznja
IDvoznje
bigint <pk,fk>
DetaljanOpisRazloga text

IDvoznje = IDvoznje

je razlog
SifraRazloga text
<pk,fk1>
IDvoznje
bigint <pk,fk2>
SifraRazloga = SifraRazloga
TipRazlogaNeizvrsavanjaVoznje
SifraRazloga text <pk>
NazivRazloga text

Dodavanje alternativnih kljueva, tj. unique indeksa nad:


1. Nazivom mesta
2. Nazivom taxi slube
itd.

5. DIJAGRAM KLASA
5 a) GENERISAN DIJAGRAM KLASA NA OSNOVU KONCEPTUALNOG
DIJAGRAMA
Vozac
+
+
+
+

ID
PrezimeOperatera
Ime
RegistarskiBrojVozila

: string
: string
: string
: string

0..*

Mesto

1..1

+ ptt
: string
+ Naziv : string

TaksiSluzba
+ Oznaka : string
+ Naziv : string
+ Adresa : string

1..1
1..1
1..1
Operater
+ JMBG
: string
+ PrezimeOperatera : string
+ ImeOperatera
: string

0..*

1..1

1..1
0..*

0..*

PotencijalnaVoznja - Poziv

0..*

+
+
+
+
+
+
+
+
+

IDvoznje
DatumPoziva
VremePoziva
TelefonPoziva
AdresaPolaska
NajavljenPeriodStizanjaVozilaMinuta
UlozenaZalba
ObrazlozenjeRazlogaKasnjenja
IzvrsenaVoznja

: long
: DateTime
: DateTime
: string
: string
: byte
: bool
: string
: bool

0..*
IzvrsenaVoznja
+
+
+
+

VremePolaska
AdresaDestinacije
VremeDolaska
NaplacenIznos

: DateTime
: string
: DateTime
: float

NeizvrsenaVoznja
+ DetaljanOpisRazloga : string

0..*
1..*
TipRazlogaNeizvrsavanjaVoznje
+ SifraRazloga : string
+ NazivRazloga : string

5 b) KORIGOVAN DIJAGRAM KLASA

Vozac
+
+
+
+

ID
PrezimeOperatera
Ime
RegistarskiBrojVozila

: string
: string
: string
: string
Mesto
1..1

1..1

1..1

+ ptt
: string
+ Naziv : string

0..*
TaksiSluzba
+ Oznaka : string
+ Naziv : string
+ Adresa : string

1..1

Operater
+ JMBG
: string
+ PrezimeOperatera : string
+ ImeOperatera
: string

1..1

0..*

1..1
0..*

0..*

PotencijalnaVoznja - Poziv

0..*

+
+
+
+
+
+
+
+
+

IDvoznje
DatumPoziva
VremePoziva
TelefonPoziva
AdresaPolaska
NajavljenPeriodStizanjaVozilaMinuta
UlozenaZalba
ObrazlozenjeRazlogaKasnjenja
IzvrsenaVoznja

: long
: DateTime
: DateTime
: string
: string
: byte
: bool
: string
: bool

0..*
IzvrsenaVoznja
+
+
+
+

VremePolaska
AdresaDestinacije
VremeDolaska
NaplacenIznos

: DateTime
: string
: DateTime
: float

NeizvrsenaVoznja

1..*

+ DetaljanOpisRazloga : string

0..*
TipRazlogaNeizvrsavanjaVoznje
+ SifraRazloga : string
+ NazivRazloga : string

NAPOMENE:
Korekcije:
1. Usmerenje strelice kod veze tipa asocijacije je bilo pogreno.
2. TipRazlogaNeizvrsavanjaVoznje je umesto asocijacije postavljen da bude u
odnosu agregacije prema klasi NeizvrsenaVoznja.

You might also like