Upload
dinhduong
View
214
Download
0
Embed Size (px)
Citation preview
MODEL OBJEKTI - VEZE
KONCEPTI MODELA
METODOLOGIJA MODELIRANJA
MODEL OBJEKTI - VEZE
Model objekti-veze je najpopularniji i u praksiprojektovanja BP najviše korišćeni konvencionalnimodel podatka. Postoji više različitih verzija ovogmodela. Ovde se izlaže jedna specifična verzija, Prošireni model objekti-veze (PMOV), koja polaziod originalne Chen-ove verzije i notacije.
Na kraju, preko jednog primera, prikazuje se i notacija standarda IDEF1X, na kome se baziraCASE alat ERwin, veomačesto korišćeni alat zamodeliranje podataka preko Modela objekti veze.
RADNIKZAPOS
RUKOV
ODELENJE
ASORT
PROIZVOD
STRUK
(1,1) RADI
(0,1) RUKOVODI
ZAPO[LJAVA (0,M)
RUKOVO\ENO (1,1)
(0,M) PRVI
(0,M) NAPRAVLJENU
(0,M) SASTAVLJEN
(0,M) UGRA\EN
OSNOVNI KONCEPTI PMOV
TIP (KLASA) OBJEKATARadnik: objekatRADNIK: sef of Radnik
VEZE I PRESLIKAVANJA
ZAPOS = <RADI, ZAPOŠLJAVA>RADI: RADNIK --> ODELENJE ZAPO[LJAVA: ODELENJE --> RADNIK.
Radnici Zapo{ljavanja Odelenje(1,1)Radi Zapo{ljava (0,M)
Rukovo|enja
(0,1)Rukovodi Rukovo|eno (1,1)
Matbr Adrese ImenaJezici [ifreOdel
Godine
Plate
(1,1)Mlb(1,1)Adresa
(1,M)Zna-Jezik(1,1)ImeR
(1,1)Starost (1,M) Isplate
(1,1)[ifOd(1,1)NazivOd
MLB: RADNIK --> MATB (1,1)IMER:RADNIK ---> IMENA (1,1)ZNA-JEZIK: RADNIK --> JEZIK (1,M)
Definicija atributa
Radnici Zapo{ljavanja Odelenje(1,1)Radi Zapo{ljava (0,M)
Rukovo|enja
(0,1)Rukovodi Rukovo|eno (1,1)
Isplate
(1,M)
Sratost
Mlb* Adresa ZnaJezik Imer
Datum
Iznos
[ifOd* NazivOd
class Odelenja(key [ifOd){attribute short [ifOd;attribute string NazivOd;relationship <set> RadniciZapo{ljava
inverse Radnici :: Radi;relationship Radnici Rukovo|eno
inverse Radnici :: Rukovodi;}
class Plate{attribute date Datum;attribute float Iznos;}
class Radnici(key Mlb) {attribute short Mlb;attribute string ImeR;attribute set <string> ZnaJezik;attribute string Adresa;attribute short Starost; attribute set <Plate> Isplate; relationship Odelenja Radi
inverse Odelenja :: Zapo{ljavarelatioship Odelenja RukovodiinverseOdelenja::Rukovo|eno;
}
MLB* IME STAR
GRADJANIN
SBI
STUDENT RADNIK DETE PENZIONER
SEMES PLATA DODAT PENZ
S
DAKTILOG VOZA^ LEKAR IN@ENJER
KATDAK KATVOZ SPEC OBLAST
S
STALAN PRIVREMEN
VRSTA (0,M)
ZANIM (1,1)
VRO (1,1)
GENERALIZACIJA - SPECIJALIZACIJA
GENERALIZACIJA - SPECIJALIZACIJA
• Možda je u pmov za generalizaciju bolje ime“proširenje”. Podtip proširuje nadtip sa datimskupom atributa. Mogućnost da se jedan nadtipspecijalizuje u više podtipova ukida potrebu zavišestrukim nasle\ivanjem i svim problemima kojeono donosi.
Studenti PredmetiPrijave
BrojInd Ime
Smer
DatumPol Ocena [ifPred NaziPred
Nastavnici
Overe[ifraNast ImeNast
Zanje
(0,M) (0,M)
(1,1)
(0,M)
AGREGACIJA
RUKUJE KAMION
PO[ILJKARADNIK
IDE
PROIZVOD KUPAC
(0,M)RADN (1,1)POSL
(1,M)VOZI
(0,1)PREVEZ
(1,M)KUP(0,M)PROIZV
AGREGACIJA
PRAVILA INTEGRITETA U PMOV• Pravila integriteta definišu dozvoljena stanja i
dozvoljene prelaze sistema iz stanja u stanje. To se i u PMOV iskazuje definisanjem ograničenja navrednosti atributa i akcijama koje se preduzimajukada neka operacija ažuriranja naruši posmatranoograničenje. Opšta sintaksna konstrukcija zaiskazivanje pravila integriteta je i ovde:
CREATE INTEGRITY RULE <naziv_pravila>ograničenjeON ATTEMPTED VIOLATION akcija
OGRANIČENJA U PMOV
• Strukturna ograničenja (ograničenja napreslikavanja), koju su prikazana na samommodelu;
• Vrednosna ograničenja (ograničenja na vrednostiatributa):
– Prosta ograničenja na vrednosti pojedinačnihatributa
– Složena ograničenja koja povezuju vrednostivi{e atributa istog i različitih objekata. Alat zaiskazivanje ovih ograničenja može da bude tzv“Objektni račun”, detalno opisan u materijaluPMOV.
ATRIBUT DOMEN OGRANI^ENJE
Mlb long NotNull And Substring(1,2) Between 1,31 And Substring(3,4) Between 1,12 ....
NazivJ string In(Srpski, Ruski, Engleski, Nemački)
Adresa string
Datum date
Starost short Between 15,65
sifOd short Moduo_11
REGBR
MARKA
BOJA
KOLA
BI
IME
SEM
(1,1)
(0,1)
PARKIRA
STUDENT
DATUM OCENA
[N
IMENNASTAVNIK
[P
NAZP
B^
PREDAJE
(0,1)
POLO@IO PREDMET
(0,M)
(0,M) (0,M)
(1,M)
IMA
RODITELJ
(0,M)
MLB IMER
S
Vrste (0,1)
SLU[A
ZANIMANJE
VANREDAN
(1,1)
(1,M)
(0,M)(1,M)
PRIPADA
KATEDRA
[K NAZIVK
RADI
POSAO
(0,M)
[POS NAZPOS
(1,M) (0,M)
U^ESTVUJE
[PROJ
NAZPROJ
PROJEKAT
(0,M)
(1,M)
ZADATAK
[ZAD
NAZZAD
OPISZAD
METODOLOGIJA MODELOVANJA
1. INTEGRISANJE PODMODELA
2. DIREKTNO MODELIRANJE (UZORI)
3. KOMBINOVANI METOD
INTEGRACIJA PODMODELA
Postupak integracija podmodela odrazumeva:
• dekompoziciju realnog sistema nafunkcionalne podsisteme (korišćenjemStrukturne sistemske analize);
• formiranje podmodela podataka za svakipodsistem;
• integraciju podmodela u jedinstveni model podataka sistema.
DOBAVLJA^NABAVKA
1.
NARDOB
VIRMAN
KATALOG
OTPREMDOB
FAKTURA
DATDOB
OTPREMNICE IPRIJEMNICE
PROIZVODI
KUPCI
PRODAJA
2.
NARUD@BKUP
OTPREMNICE
SKLADI[TENJENE
3.
NARKUP
PLA]ANJA
OTPREMKUP KUPAC
RA^UN
DTP PRVOG NIVO ZA JEDAN JEDNOSTAVNI PRIMER
DOBAVLJA^
NARDOB
DATDOB
NARU^IVANJE
1.2KATALOG
OBRADAOSNOV.
PODATAKA
1.1
DATOB DATPRO
PLA]ANJE
1.4
OTPREMNICE IPRIJEMNICE
PRIHVATANJE
1.3
OTPRDOB
DTP ZA FUNKCIJU “NABAVKA”
OBRADAPORUD@BINA
2.1
KUPACNARKUP
PLA]ANJA
RA^UN
OTPREMKUP
KUPCI
PROIZVODI OTPREMA
2.2
PROIZVODI
UPLATE
OTPREMNICE
NAPLATA
2.3
KUPCI
NARUD@BKUP
DTP ZA FUNKCIJU “PRODAJA”
[ if_dob ..... Naziv_dob ....... Adresa_dob ....Br_otpr ..... Datum_otpr.......
Red_br [ if_proizv Naziv_proizv Otpr_kol Vrednost... .... ..... ..... ......... ..... ...... .,..... .....
OTPDOB: < [if_dob, Naziv_dob, Adresa_dob, Br_otpr,Datum_otpr,{<Red_br , [if_proizv, Naziv_proizv,
Otpr_kol, Vrednost>}>
IZGLED TOKA OTPRENICA DOBALJAČA (OTPRDOB)
DEFINICIJA U REČNIKU SSA
STRUKTURA TOKOVA I SKLADIŠTA
D o b a v l j a ~
Sif_dob N a z i v _ d o b A d r e s a _ d o b
O t p r e m n i c a D o b a v
S t a v k a O t p r e m n i c e
B r o j _ o t p r D a t u m _ o t p r
R e d _ b r
O t p r _ k o l V r e d n o s t
P r o i z v o d
S i f _ p r o i z v N a z i v _ p r o i z v
Z a1,1 0,M
1,M
1,M
PODMODEL ZA OTPREMNICU DOBAVLJAČA
NARDOB: < [if_dob, Naziv_dob, Adresa_dob, Br_nar,Datum_nar,{<Red_br , [if_proizv, Naziv_proizv,
Nar_kol, Opis>}>
STRUKTURA TOKOVA I SKLADIŠTA
D o b a v l j a ~
Sif_dob N a z i v _ d o b A d r e s a _ d o b
S t a v k a O t p r e m n i c e
B r o j _ n a r D a t u m _ n a r
R e d _ b r
N a r _ k o l O p i s
P r o i z v o d
S i f _ p r o i z v N a z i v _ p r o i z v
N a r u d ` b e n i c a D o b
U p u } e n a
Z a
0,M
1,1
1,M
1,1 0,M
PODMODEL ZANARUDŽBENICU DOBAVLJAČA
D o b a v l j a ~
Sif_dob N a z i v _ d o b A d r e s a _ d o b
S t a v k a O t p r e m n i c e
B r o j _ n a rD a t u m _ n a r
R e d _ b r
N a r _ k o l O p i s
P r o i z v o d
S i f _ p r o i z vN a z i v _ p r o i z v
N a r u d ` b e n i c a D o b
U p u } e n a
Z a
0,M
1,1
1,M
1,1 0,M
O t p r e m n i c a D o b a v
S t a v k a O t p r e m n i c e
B r o j _ o t p r D a t u m _ o t p r
R e d _ b r
O t p r _ k o lV r e d n o s t
Z a1,1
0,M
1,M
0,M
INTEGRACIJA PRETHODNA DVA PODMODELA
PRIJEM
DOBAVLJA^
UPLA]EN
(0,M)
OTPRDOB
KATLOG
STAVKA_KAT
POSLATA
(0,M)
(0,M)
(1,M)
STAVKA_OTPRDOB
SADR@I
UZ
OPISUJE
PROIZVODNARDOB
STAVKA_NARD
NO
OTPROOB
SADR@I
POPRIJ
STAVKA_PRIJ
PRIJEMNICA PO FAKTURA
POFAK
VIRMAN
(0,M)
(0,M) (0,M)
(0,M)
(1,M)(1,M)
(1,M)
(1,M)
(1,M)
(1,M)
(1,1)
(1,1)
(1,1)
(1,M)
(0,M)
(0,M)
(0,M)
(0,M)
(1,M)
(0,M)
(1,1)
(1,1)
(0,M)
NARPRO
STAVKA_NK
NARKUP
KUPAC
UPLATAK
PORA^RA^UN
ZAOTPR
OTPRKUP
SATVKA_OTPRKOTPRPRO
(1,1)
(0,M)
(0,M)
(1,M)
(0,M)(0,M)
(0,M)
(0,M)
(1,M) (1,M)
(1,1)
(0,M)
(0,M)
KONAČNI MODEL
DIREKTNO MODELOVANJE
Pod direktnim modelovanjempodrazumeva se razvoj modelapodataka na osnovu poznavanjarealnog sistema, iskustva, tekstualnogopisa, poznavanja generičkih modelapodataka (paterna)
GENERIČKI MODELI (PATERNI)• Ovaj pristup korističinjenicu da su objekti ne samo
"stabilni" u jednom konkretnom sistemu već i u čitavoj klasi srodnih sistema. Zbog toga je bilomoguće razviti skup opšte primenljivih generičkihkomponenti modela podataka.
• Razvojem objektno-orjentisanih pristupa uveden jetermin patern (preporuka, mustra) koji se definiše kao “imenovani par <problem, rešenje>”, odnosnokoji daje preporuke kako se re{avaju neki problemi u objektno orjentisanoj analizi i projektovanjusoftvera. Uobi~ajeno je da se razlikuju paterni zaanalizu i paterni za projektovanje.
• Ovde su od interesa prvenstveno poslovni sistemi, pa se prikaz ovoga pristupa odnosi na ovu klasu sist.
GENERIČKI MODELI (PATERNI)
• Paterni za modelovanje podataka spadajupaterni za analizu.
ORGANIZACIONAJEDINICA
S
. SLO@ENA PROSTA
VRSTA ORGJEDINICE
PRIPADA
TIP(1,1)
1,M
0,11,1 0,M
PATERN: MODELOVANJE ORGANIZACIONESTRUKTURE
T I PD O K U M E N T A
T I PS T A V K E
veza
T I PP O L J A
P O L JZ A G L
P O L JS T A V K E
D O K U M E N T
S T A V K ED O K U M E N T
V R E DP O L J AZ A G L
V R E DP O L J A
S T A V K E
D O KT I P A
S TT I P A
V R E D N O S T
V R E D N O S T
0,M1 , M
0,M
1 , M0 , M
1 , 1
1 , M0 , M
0 , M
0 , M
0 , M
1 , M0 , M
1 , 1
0 , M
PATERN:DOKUMENT
GENERIČKI MODELI (PATERNI)
PROIZVOD
S
SKLOP ELEMENAT
VRSTAPROIZVODA
PRIPADA
TIP(1,1)
1,M
0,M1,1 0,M
SASTAV KOL_UGR
GENERI^KI MODELI (PATERNI)
PATERN:MODELOVANJE STRUKTURE PROIZVODA (SASTAVNICE)
ObjekatPosmatranja
TipObjekatPosmatranja Fenomen
0,M
0,M
JedinicaMere
Konverzija
DatoU1,1 0,M
Iz (0,M) U (0,M)
KonverzioniOdnos
Protokol
Merenja
IznosImaPojavlj
0,M
VremeMer
Vreme
0,M
1,1
S
VrstaVJ(1,1)
Trenutak PeriodPo~
Kraj
Vrednost
Vrednost
PratiSe
1,M 0,M
Po
1,1
0,M
UZOR "MERENJA"