bajecm.fri.uni

Download Report

Transcript bajecm.fri.uni

Razvoj informacijskih sistemov
Bolonjski študijski program I. stopnje
UNIVERZA V LJUBLJANI
Fakulteta za računalništvo in informatiko
Prof. dr. Marko Bajec
Študijsko gradivo, verzija 3.1
Splošne informacije...
 Predavatelj
 Prof. dr. Marko Bajec, univ. dipl. ing.
 Elektronska pošta: [email protected]
http
 Informacije: http://bajecm.fri.uni-lj.si/
 Asistent
 Dr. Dejan Lavbič, univ. dipl. ing.
 Elektronska pošta: [email protected]
http
 Informacije: eUčilnica
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-2-
Splošne informacije
 Predavanja
 Vsak ponedeljek od 13:15 do 16:00 (3 šolske ure);
 Predavanja so obvezna!
 Izpit
 Seminarska naloga (predpogoj)
 Pisni izpit
 Ustni izpit
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-3-
Priporočena literatura…
 Objektni razvoj (UML in RUP)
 [1] Martin Fowler (2003). UML Distilled: A Brief Guide to the
Standard Object Modeling Language, Third Edition. AddisonWesley.
 [2] Thomas A. Pender (2002). UML Weekend Crash Course.
Wiley Publishing.
 [3] Booch, G., J. Rumbaugh in I. Jacobson (1999). The
Unified Software Development Process. Addison Wesley.
Citiranje: glej [1,15-20] = glej v knjigi M. Fowler, strani od 15 do 20.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-4-
Priporočena literatura…
 Agilne in lahke metodlogije
 [4] Kent Beck (1999). Extreme Programming Explained:
Embrace Change, Addison-Wesley.
 [5] Martin, C. Robert (2003). Agile Software Development:
Principles, Patterns and Practices. Prentice Hall.
 [6] Cockburn, A (2002). Agile Software Development.
Pearson Education.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-5-
Priporočena literatura
 Splošno o razvoju IS
 [7] Silič Marin et al (2000). EMRIS - Enotna metodologija
razvoja informacijskih sistemov. Ljubljana: Vlada RS, CVI.
 [8] Stephen J. Mellor, Kendall Scott, Axel Uhl, Dirk Weise
(2004). MDA Distilled: Principles of Model-Driven
Architecture. Addison-Wesley.
 [9] Hoffer, J. A., George, J. F. in Valacich, J. S. (1999).
Modern Systems Analysis and Design, Second edition,
Addison-Wesley
 Avison, D. E. in Fitzgerald, G. (2003). Information systems
development: methodologies, techniques and tools,
McGraw-Hill, London.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-6-
II
Vsebina predmeta…
 I. Splošno o razvoju IS
 Osnovni pojmi
 Življenjski modeli razvoja IS
 Metodologije razvoja IS
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Definicija metodologije
Zgradba metodologije
Zgodovina nastajanja metodologij
Formalizacija metodologij
Komercialne metodologije
Vrste metodologij
Izbira metodologije
-7-
Vsebina predmeta
 II. Strukturni razvoj







Osnovne značilnosti strukturnega pristopa
Primer strukturne metodologije
Strateško načrtovanje
Analiza
Načrtovanje
Testiranje
Namestitev in uvedba
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-8-
Vsebina predmeta
 III. Objektni razvoj
 Osnovni principi objektne usmerjenosti
 Osnove modelirnega jezika UML in procesa RUP
 Objektna analiza in načrtovanje
 IV. Agilne metodologije
 Osnove
 Primer agilne metodologije: SCRUM
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
-9-
Vsebina predmeta
 V. Modelno usmerjen razvoj
 MDA – Model Driven Architecture in MDD – Model-Driven
Development.
 Razlike med MDA/MDD in klasičnim pristopom k razvoju IS
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 10 -
Poglavje I
Splošno o razvoju IS
 Osnovni pojmi
 Življenjski modeli razvoja IS
 Metodologije razvoja IS
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 11 -
P1.1 – Osnovni pojmi
Informacijski sistem…
Ponovitev
IS - opredelitev
 Definicija:
 Informacijski sistem lahko opredelimo kot množico
medsebojno odvisnih komponent (strojna oprema,
programska oprema, ljudje), ki zbirajo, procesirajo, hranijo
in porazdeljujejo podatke in s tem podpirajo delavne procese
v organizaciji.
 Ločimo formalne in neformalne IS.
 IS je lahko računalniško podprt.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 12 -
Informacijski sistem…
Ponovitev
Vrste IS
 Vrste IS:
 Transakcijski IS (TPS-Transaction Processing System)
 Upravljalski (poslovodni) IS (MIS-Management Information
System)
 Direktorski IS (ESS-Executive Support System)
 Odločitveni IS (DSS-Decision Support System)
 Ekspertni IS (EIS-Expert Information System)
 Sistemi za avtomatizacijo pisarniškega poslovanja (OASOffice Automation System)
 Sistemi za podporo delovnim procesom (WfS-Workflow
Management System)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 13 -
Kaj nas zanima pri razvoju IS?...
 V okviru razvoja IS nas zanima, kako razviti
računalniške rešitve, ki bodo čim bolje podprle
delovanje IS.
 V okviru razvoja IS se ukvarjamo z:





Razvojem računalniške rešitve
Nabavo ustrezne strojne opreme
Namestitvijo sistemske programske opreme
Uvedbo rešitve
Vzdrževanjem rešitve
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 14 -
Kaj nas zanima pri razvoju IS?
 Razvoj IS ni zgolj programiranje!
 Ni zgolj inženirsko delo…
 Pri razvoju IS imajo velik pomen tudi sociološki
dejavniki:




Kako dojemamo problematiko?
Kako razumemo potrebe uporabnikov?
Kako uvedemo rešitve v prakso?
…
Information System is about an implementation of IT into a
human enterprise!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 15 -
Razvoj IS in vrste IS
 Pristop k razvoju IS je odvisen tudi od vrste IS.
 Nekatere vrste IS zahtevajo specifične pristope:
 Ekspertni sistemi
 Odločitveni sistemi
 Sistemi za podporo delovnim procesom
 Največ napora gre še vedno za
razvoj IS za podporo
operativnem delovanju
PS.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 16 -
P1.2 – Življenjski modeli razvoja IS
Življenjski modeli razvoja IS…
 Razvoj IS zajema številna opravila, navadno
razdeljena v faze:






Analiza
Načrtovanje
Implementacija
Testiranje
Uvedba
Vzdrževanje
Kot večina razvojnih procesov sledi tudi
razvoj IS določenemu življenjskemu ciklu
oziroma razvojnemu modelu, ki določa
zaporedje faz razvoja.
 Življenjski model razvoja IS (SDLC*) pove, v
kakšnem sosledju in na kakšen način si v okviru
razvoja IS sledijo posamezne faze.
* SDLC - System Development Life Cycle
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 18 -
Življenjski modeli razvoja IS…
 Poznamo različne življenjske modele:





Zaporedni ali slapovni model
Interativni model
Prototipni model
Inkrementalni model
…
 V praksi se večinoma uporablja kombinacija
različnih modelov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 19 -
Zaporedni ali slapovni model…
 Zaporedni ali slapovni model temelji na
zaporednem izvajanju faz.
 Ko se ena faza v celoti konča, se začne
naslednja.
Analiza
Spec.
zahtev
testiranje
Načrtovanje
Načrt
Izvedba
Koda
Uvedba
čas
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 20 -
Zaporedni ali slapovni model…
 Značilnosti:
 Najstarejši razvojni model, značilen za prve oblike
strukturnega pristopa.
 Faze si sledijo zaporedno.
 Vračanje nazaj ni mogoče.
 Primeren za relativno kompleksne projekte, če zahteve
dobro razumemo in se med projektom ne bodo bistveno
spreminjale.
 Omogoča dobro in natančno projektno vodenje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 21 -
Zaporedni ali slapovni model…
 Prednosti:
 Pomaga zmanjševati količino režijskega dela, ki ni v
neposredni povezavi z izdelavo programske opreme (npr.
vodenje projekta), saj je mogoče načrtovanje v celoti izvesti
vnaprej.
 Slabosti:
 Ni fleksibilen. Vsaka naknadna sprememba zahteva veliko
dodatnega napora.
 Nenaraven: v praksi težko pričakovati, da se lahko nek
postopek v celoti zaključiti, preden se začne z naslednjim.
 Ne omogoča paralelnega izvajanja delov postopkov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 22 -
Zaporedni ali slapovni model
 Zaradi kritik pojav modificiranih različic
slapovnega razvoja.
 Odprava nekaterih pomanjkljivost:
 uvedba bolj enostavnega prehajanja med postopki,
 paralelno izvajanje delov različnih postopkov,
 ...
 Slapovni model kljub vsemu nudi zelo čvrsto
oporo sistematičnemu razvoju.
 Možno uporabiti v kombinaciji z drugimi modeli.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 23 -
Iterativni model…
 Razvit kot odziv na pomanjkljivosti slapovnega
pristopa.
 Faze razvoja izvajamo v več iteracijah.
Iteracija je specifično zaporedje aktivnosti, izvedenih
na osnovi načrta in z določenim kriterijem
vrednotenja, ki se konča z izdajo izdelka.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 24 -
Iterativni model…
 V vsaki iteraciji razvijemo določen del
funkcionalnosti celotnega sistema.
 Iteracija gre navadno čez vse faze razvoja:
analizo, načrt, izvedbo…
 V začetnih iteracijah razvijemo najbolj tvegane
dele sistema.
 Gre za evolucijski razvoj.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 25 -
Iterativni model…
testiranje
Iteracija #1
Analiza
Načrtovanje Izvedba
Uvedba
testiranje
Iteracija #2
izdelki
Učenje in
izkušnje
Analiza
Načrtovanje Izvedba
Uvedba
Iteraci
izdelki
Učenje in
izkušnje
Analiz
čas
Tipično trajanje ene iteracije: 7 do 14 dni
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 26 -
Iterativni model…
 Lastnosti iteracij:
 Trajanje: od 7 do 14 dni (tipično)
 Vsaka iteracija gre čez vse faze (ne z enako intenzivnostjo)
 Naslednja iteracija se lahko začne šele takrat, ko je prejšnja
končana.
 Vsebina naslednje iteracija je določena na osnovi rezultatov
prejšnje.
 Med izvajanjem iteracije ne sprejemamo sprememb.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 27 -
Planiranje na makro in mikro ravni
1. Release Planning
SRI11
I1R1
2. Iteration Planning
I2
?
R2
I3
3. Task Planning
R3I4
I2R2 E
cca 2-4 months
cca 2 weeks
Project
start
SALSD
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Project
end
Requirements
- 28 -
Miniature milestones –
task list
Iterativni model…
 Prednosti:
 Prednosti iterativnega razvoja (proti zaporednemu):
 Najbolj tvegani deli so razrešeni še preden postane
investicija velika
 Začetne iteracije omogočijo zgodnje povratne informacije s
strani uporabnikov
 Preizkušanje in povezovanje v sistem sta nepretrgana
 Ciljni mejniki omogočajo kratkoročno osredotočenje
 Napredek merimo z ocenjevanjem izvedenega dela
 Možna je predaja izvedenega dela projekta še preden je
dokončan celoten projekt
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 29 -
Iterativni model
 Slabosti:
 ne omogoča dobrega načrtovanja poteka projekta.
 ni mogoče točno predvideti, koliko iteracij bo potrebnih za
razvoj dokončnega (dovolj dobrega) izdelka.
 vodenje projekta je zahtevno.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 30 -
Prototipni model…
 Gre za različico iterativnega modela.
 Temelji na izdelavi prototipov in njihovi postopni
izboljšavi, dokler ne dosežemo zadovoljive
kakovosti.
Prototip označuje predhodno izdelane in navadno
še nepopolne različice sistema ali dela sistema.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 31 -
Prototipni model
Analiza
problema
Začetne
zahteve
Razvoj
prototipa
Delovni
prototip
Uporaba in
testiranje
prototipa
Nov
prototip
Iteracije
(evoluativni razvoj)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 32 -
Problemi,
Napaka,
pomanjkljivosti
Revizija in
Izboljšava
prototipa
Nove zahteve
Inkrementalni model…
 Temelji na postopni gradnji celotne IR in sprotni
predaji posameznih inkrementov uporabniku.
Inkrement predstavlja zaokroženo funkcionalnost
sistema (sklop, podsistem, modul).
 Ne razvijamo celotne IR hkrati. Omejimo se na
posamezen sklop, ki ga razvijemo v celoti in
predamo uporabniku.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 33 -
Inkrementalni model…
 Ob predaji novi sklop povežemo z ostalimi sklopi.
 Inkremente je moč razvijati tudi vzporedno.
 Rezultat razvoja po inkrementalnem modelu je
IR, sestavljena iz integriranih sklopov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 34 -
Inkrementalni model…
Uvedba in
testiranje
celotnega
sistema
Klasičen razvoj
Razvoj celotne IR
Inkrementalni razvoj
Razvoj in predaja
prvega sklopa IR
Inkrement #1
Razvoj in predaja
drugega sklopa IR
Inkrement #2
Razvoj in predaja
tretjega sklopa IR
Inkrement #3
čas
Uvedba in
testiranje
sklopa
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Uvedba in
testiranje
sklopa
- 35 -
Uvedba in
testiranje
sklopa
Inkrementalni model…
 Na podlagi analize MOSCOW lahko funkcije
sistema ustrezno časovno razporedimo.
 Pri razporejanju sklopov upoštevajoč tveganost (v smislu
tveganja, da razvit sklop ne bo ustrezal naročniku) najprej
razvijemo najbolj tvegane in zahtevne sklope, kar omogoča
hitrejše znižanje stopnje tveganja pri celotnem projektu
- 38 Čas
Čas
tveganost sklopa
Sklop 3
Sklop 2
Sklop 1
Tveganje
tveganost sklopa
Sklop 4
Sklop 1
Sklop 3
Sklop 2
Tveganje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Sklop 4
tveganost projekta
tveganost projekta
Inkrementalni model…
 Prednosti:
 Uporabnik prej dobi del zahtevane IR, saj se IR razvija po
delih.
 Rešitev, ki jo uporablja, se postopoma nadgrajuje, sam pa
lahko sodeluje pri testiranju razvitih sklopov.
 Naročnik laže sledi napredovanju projekta.
 Slabosti:
 Ni mogoče uporabiti pri vseh projektih. Nekaterih rešitev ni
moč predati v uporabo po delih.
 IR moramo razdeliti na sklope in predvideti odvisnosti med
njimi. Pri neustreznem načrtovanju se lahko zgodi, da sklope
neustrezno razporedimo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 39 -
Inkrementalni model
 Poseben primer inkrementalnega modela je
razdelitev vsebine na samostojne projekte.
 Inkrementalni model možno učinkovito uporabiti
v kombinaciji z iterativnim modelom:
 razdelitev na inkremente,
 vsak inkrement se izvaja iterativno.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 40 -
P1.3 – Metodologije razvoja IS
Kaj je metodologija razvoja IS?
Tehnika
 Nekaj definicij:
 Metodologija je priporočena zbirka filozofij, faz, postopkov,
pravil, tehnik, orodij, dokumentacije, upravljanja in
izobraževanja za razvijalce IS (Maddison).
 Metodologija razvoja IS je priporočen način razvoja IS, ki
temelji na filozofiji in množici principov (Avison, 2003).
 Metodologija je množica dogovorov (konvencij), s katerimi
se (projektna) skupina/organizacija strinja (Cockburn, 2002).
 Metodologija je vse kar redno delamo, da bi dosegli končni
rezultat – delujoča PO pri končnem uporabniku (Cockburn,
2002).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 41 -
Kaj je metodologija razvoja IS?
 Iz terminološkega slovarja:
 METODOLOGIJA: skupek metod, postopkov in standardov, ki
sestavljajo zaključeno celoto pri izvajanju inženirskih
pristopov k razvoju produkta.
 METODA: seznam postopkov in pravil za izvedbo določene
naloge.
 METODOLOGIJA RAZVOJA IS: postopen način razvoja
informacijskega sistema, ki vključuje uporabo različnih
tehnik in orodij, celovit v smislu korakov življenjskega cikla
razvoja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 42 -
2. Osnovna zgradba metodologij
Izobraževanje
Domena
metodologije
Standard
Slapovni
Metdologija
kot izdelek
Cilj
Iterativni
Življenjski
Filozofija cikel
metodologije
Ozadje
metodologije
Domena
metodologije
Inkrementalni
Izobraževanje
Celostna
tehnika
Tehnika
Osrednji
Slapovni
Iterativni
Postopek
Inkrementalni
Orodje
Podatkovna
tehnika
Tehnika
OO tehnika
Procesna
tehnika
postopek
Metodologija
Tehnika proj.
vodenja
Sociološka
komponenta
Življenjski
cikel
Organizacijska
tehnika
Procesna
tehnika
Proces
Tehnika dela z
ljudmi
Osrednji
postopek
Faza
Postopek
Podporni
Tehnika
postopek
Življenjski
Iteracija
Proces
Sociološka
komponenta
Filozofija
Standard
Zahtevnost
metodologje
Filozofija
metodologije
Faza
Zahtevnost
metodologje
Namen
metodologije
Paradigma
metodologije
Baza
uporabnikov
Uporabnost in
izkušnje
Uporabnost
Paradigma
in izkušnje
Ozadje
metodologije
Cilj
metodologije
Metdologija
kot izdelek
Baza
uporabnikov
Podatkovna
tehnika
Namen
metodologije
Proces
Metodologija
Celostna
tehnika
Orodje
Podporni
postopek
OO tehnika
Inkrement
Vloga
cikel
Aktivnost
vhod
izhod
Podizdelek
Izkušnje in
znanje
Primer
Izdelek
Predloga
Del izdelka
Iteracija
[inkrementalnoiterativni razvoj]
Inkrement Uporabnost in
izkušnje
Različica
Vloga
vhod
Aktivnost
izhod
Postopek
Podizdelek
Organizacijska
tehnika
Izkušnje in
znanje
Vloga
Aktivnost
Tehnika proj.
vodenja
vhod
izhod
Podizdelek
Izdelek
Primer
Tehnika dela
z
ljudmi
Predloga
Del izdelka
Izkušnje in
znanje
[inkrementalnoiterativni razvoj]
Izdelek
Različica
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 43 -
Zgodovina metodologij…
 Obdobje pred pojavom metodologij (do zgodnjih
1970)
 Ni formalnih metodologij, poudarek na reševanju
tehničnih problemov, ključna vloga je programer
Razvoj ad hoc
 Zgodnje obdobje metodologij (do zgodnjih 1980)
 SDLC, tehnike podatkovnega in procesnega modeliranja,
večji poudarek na zajemu zahtev, analizi in načrtovanju
 Royce, Boehm, Codd
Zajem
zahtev
Analiza
Načrtovanje
Kodiranje
Testiranje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 44 -
Skupni stroški
Določitev ciljev,
alternativ in
omejitev
Prični z
izvedbo
naslednje
iteracije
Operativni
prototip
Koncept
delovanja
Simulacije
Modeli
Načrt
razvoja
Podrobno
načrtovanje
Predaja
Potrditveni
test
Načrt
integracije in
testiranja
 Obdobje metodologij (do sredine/konca 1990)
 iterativni in inkrementalni razvoj, RAD, objektna
usmerjenost, večanje teže metodologij, strateško
načrtovanje
 Booch, Rumbaugh, Jacobson, Martin, Yourdon, Gamma
 Obdobje ponovne ocenitve metodologij (danes)
 kritika težkih metodologij, lahke metodologije, spletne
aplikacije, nove tehnologije, hitro spreminjanje zahtev, trend
agilnosti
 Beck, Ambler, Cockburn, Highsmith
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 45 -
Testiranje
prog, enot
Kodiranje
Začetek
Načrt zahtev,
načrt življen.
cikla
Načrtovanje
naslednje
iteracije
Oceni
alternative
Analiza
tveganj
Analiza
Prototip 3
tveganj
Prototip 2
Prototip 1
Integracija in
testiranje
Zgodovina metodologij
Identifikacija in
odpravljanje
tveganj
Analiza
tveganj
Analiza
tveganj
Razvoj izdelkov
za iteracijo in
preverjanje
njihove pravilnosti
Metodologija kot sociološka komponenta
 Metodologija razvoja IS ima pomembno
sociološko komponento:
 Poleg tehnik in orodij zajema skupek dogovorov, ki v
organizaciji oziroma skupini veljajo pri razvoju informacijskih
rešitev;
 Je prežeta s filozofijo in miselnostjo organizacije in njenih
zaposlenih;
 Je dinamična in odvisna od posameznikov, ki sestavljajo
organizacijo.
 Zajema vse kar počnemo, da izdelamo izdelek oziroma
opravimo storitev, ki je cilj našega dela.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 46 -
Formalizacija metodologij
 Metodologije razvoja IS v mnogih podjetjih niso
formalizirane!
 Postopki, tehnike, orodja itd. niso dokumentirani;
 Razvoj poteka stihijsko (na vsakem projektu je drugače; ni
definirano, kako nek postopek izvedemo; kakšna orodja se
uporabljajo je prepuščeno posameznikom,...
 Posledice




Slabša kakovost izdelka
Razvoj je nesledljiv in netransparenten
Tveganje, da izdelek ne bo pravi,
Težje vzdrževanje,...
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 47 -
Dojemanje metodologij
Formalizirana
metodologija
Postopki, tehnike,
smernice,...
Je osnova za
razumevanje
metodologije
Neformalna
metodologija
Dojemanje
metodologije,
znanje, izkušnje,
principi,
ideali
Je osnova za
spremembo
dojemanja
metodologije
Je osnova za
uporabo
metodologije
Uporaba
Metodologije
Izkušnje,
nove ideje,
znanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Je osnova za
formalizacijo
metodologije
- 48 -
Ponudba komercialnih metodologij
 Obstaja tudi precej ponudnikov “komercialnih”
metodologij.
 Nekaj primerov:





IE (Information Engineering) (Oracle CDM)
SSADM
Rational Unified Process
STRADIS
Agilne metodologije (XP, SCRUM, FDD,…)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 49 -
Vrste metodologij
 Obstaja več načinov za delitev metodologij.
 Delitev metodologij nam pomaga pri izbiri
ustrezne metodologije.
 Nekatere možne delitve:
 glede na tip metodologije,
 glede na težo metodologije,
 glede na utežitev metodologije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 50 -
Delitev glede na tip metodologije
Filozofija
Organizacijsko
usmerjene
metodologije
Objektno usmerjene
metodologije
Metodologije
usmerjene v človeka
Metodologije za hiter razvoj
(RAD)
Zaporedni
(slapovni) razvoj
Iterativni in
inkrementalni razvoj
Življenjski cikel
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Cilj: organizacijska rešitev Socio-tehnične
(lahko tudi programska)
metodologije
Podatkovno-procesne
metodologije
Objektne
tehnike
Podatkovne
tehnike
Tehnične
metodologije
Procesno usmerjene
metodologije
Posebne
tehnike dela
z ljudmi
Tehnike
Procesne in
strukturne
tehnike
Cilj: izgradnja
programske rešitve
- 51 -
Prototipiranje
Delitev glede na težo metodologije
 Teža je določena z obsegom in gostoto
 Obseg metodologije je določen s številom različnih
elementov, ki jih metodologija opisuje.
 Gostoto lahko definiramo kot zahtevan nivo podrobnosti
oziroma formalnosti.
Lahka
metodologija
Prilagodljivost
Izkušnje, discipliniranost, razumevanje
Visoka
Težka
metodologija
Nizka
Nizka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Optimiziranost
- 52 -dokumentacija
Proces, formalnost,
Visoka
Delitev glede na utežitev metodologije
 Tipi metodologij glede na utežitev
 Spredaj utežene: dajejo poudarek analizi in načrtovanju
 Zadaj utežene: dajejo poudarek kodiranju in testiranju
 Uravnotežene: kombinacija obeh pristopov
Model RAD
cena spremembe
(napake)
cena spremembe
(napake)
Klasičen model
čas
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
čas
- 53 -
Izbira metodologije
 Pri izbiri si pomagamo z:
 Modeli za klasifikacijo metodologij
 Modeli za klasifikacijo projektov
 Izbira metodologije glede na podprte postopke in življenjski
cikel
 Izbira metodologije na podlagi agilnih principov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 54 -
Modeli za klasifikacijo metodologij…
Izbira glede na težo metodologije
 Lahke metodologije uporabimo v primeru, ko:
 je glavni (in dokončno opredeljen) cilj razvoj programske
rešitve,
 imamo odgovorne, disciplinirane, izkušene in motivirane
razvijalce, ki so seznanjeni s posebnimi tehnikami dela,
 stranko, ki razume bistvo lahkih metodologij in je
pripravljena sodelovati,
 imamo nepredvidljive in spreminjajoče se zahteve za
programsko rešitev,
 je cilj razvoja relativno majhen sistem z nižjo stopnjo
kritičnosti, ki ga je mogoče razviti z majhno razvojno ekipo,
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 55 -
Modeli za klasifikacijo metodologij…
 Težke metodologije uporabimo kadar:
 cilj ni le razvoj programskega sistema ampak tudi prenova
organizacijskega sistema,
 imamo manj izkušene razvijalce, pri katerih točno
opredeljena formalna pravila nadomeščajo izkušnje in
znanje,
 naročnik zahteva visoko stopnjo formalizma (izdelovanje
dokumentacije),
 imamo relativno dobro definirane in stabilne zahteve,
 je cilj razvoja obsežnejši sistem z višjo stopnjo kritičnosti, ki
zahteva izdelavo ustreznih načrtov in dokumentacije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 56 -
Izbira metodologije…
Izbira glede na lastnosti projekta
 Primer modela za klasifikacijo projektov
L6
L6
Kritičnost (odpoved sistema
lahko povzroči izgubo…)
L6
življenje
L6
E6
E6
nenadomestljiv
denar
E6
D6
C6
C6
C6
udobje
D6
D6
D6
nadomestljiv
denar
E6
L20
L20
ponovljivost
L40sledljivost
L100
L200
L40
L100
L200
produktivnost
L500
L500
L1000
L20
L40
L100
L200
L500
L1000
E20
E40
E100
E200
E500 E1000
L20
L40
L100
L200
L500
L1000
E20
E40
E100
E200
E500 E1000
E20
E40
E100
E200
E500 E1000
D20
D40
D100
D200
D500 D1000
E20
E40
E100
E200
E500 E1000
D20
D40
D100
D200
D500 D1000
D20
D40
D100
D200
D500 D1000
C20
C40
C100
C200
C500 C1000
D20
D40
D100
D200
D500 D1000
C20
C40
C100
C200
C500 C1000
C20
C40
C6
C20
C40
1-6
7-20
21-40
C100
C100
C200
C200
C500
C500
- 57 -
C1000
C1000
41-100 101-200 201-500 501-1000
Število ljudi, ki sodelujejo na projektu ± 20%
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
L1000
Izbira metodologije…
Obseg metodologije
MNova
XP
EMRIS
SSM
ETHICS
DSDM
RUP
SSADM
IE
Faza
YSM
Metodologija
STRADIS
 Obseg nekaterih komercialnih metodologij
Legenda:
Strategija
Izvedljivost
Samo omenjeno
Analiza
Osnovna navodila, več je
prepuščeno lastni interpretaciji
Logično načrtovanje
Manj podroben opis
Fizično načrtovanje
Podroben opis skupaj s
tehnikami
Programiranje
Testiranje
Uvedba
Evaluacija
Vzdrževanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 58 -
Izbira metodologije…
Izbira glede na podprte življenjske cikle
Življenjski
cikel
Kriteriji
Deluje s slabo
razumljenimi
zahtevami
Deluje s slabo
razumljeno
arhitekturo
Rezultat je zanesljiv
sistem
Rezultat je
nadgradljiv sistem
Upravlja s tveganji
Omogoča
predvidljiv razvoj
Potrebuje malo
režije
Dovoljuje
spremembe med
projektom
RAZVOJ INFORMACIJSKIH SISTEMOV
Stranki omogoča
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
nadzor napredovanja
Slapovni
razvoj
Modificiran
slapovni
razvoj
Iterativni
razvoj
Inkremental
ni razvoj
Evolucijsko
prototipiranj
e
Kodiraj in
popravi
Slabo
Srednje do
odlično
Odlično
Slabo do
srednje
Srednje do
odlično
Slabo
Slabo
Srednje do
odlično
Odlično
Slabo
Slabo
Slabo
Odlično
Odlično
Odlično
Srednje do
odlično
Srednje do
odlično
Slabo
Odlično
Odlično
Odlično
Odlično
Odlično
Slabo do
srednje
Slabo
Srednje
Odlično
Srednje do
odlično
Srednje
Slabo
Srednje
Srednje
Srednje
Odlično
Srednje
Slabo
Srednje
Odlično
Srednje
Srednje
Srednje
Odlično
Slabo
Srednje
Srednje
Slabo do
srednje
Srednje do
odlično
Slabo do
odlično
Slabo
Srednje
-Odlično
59 -
Srednje
Odlično
Srednje
Izbira metodologije
 Discipliniranost, izkušnje in znanje proti procesu,
formalnosti in dokumentaciji
 Višja stopnja formalnosti metodologije za
projekte z višjo stopnjo kritičnosti
 Večje razvojne skupine potrebujejo težje
metodologije
Lahka
metodologija
Izbira glede na
tip projekta
Prilagodljivost
Izkušnje, discipliniranost, razumevanje
Visoka
Težka
metodologija
Nizka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Nizka
- 60 -
Optimiziranost
Proces, formalnost, dokumentacija
Visoka
Uporaba metodologij v praksi
 Empirične raziskave kažejo na nizko uporabo
metodologij.
 Ključni razlogi:
 Nizka strukturiranost procesa razvoja (vsak projekt ima svoje
lastnosti in specifičnosti; različne zahteve in pogledi
uporabnikov,...)
 Neprilagodljivost metodologij,
 Zastarelost metodologij,
 Sociološka neprimernost,
 Neosveščenost uporabnikov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 61 -
Uporaba metodologij...
 Povzetek raziskave v slovenskih podjetjih
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 62 -
Poglavje II
Strukturni razvoj
 Osnovne značilnosti strukturnega pristopa
 Primer strukturne metodologije
 Strateško načrtovanje
 Analiza
 Načrtovanje
 Testiranje
 Namestitev in uvedba
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 63 -
Strukturni razvoj
Osnovne značilnosti strukturnega pristopa
 Eden prvih sistematičnih pristopov k razvoju IS
 Zgleduje se po standardnih postopkih razvoja
tehničnih izdelkov: aktivnosti si sledijo
zaporedno.
 Izoblikoval se je konec 60 in v začetku 70 let.
 Razlog: uvedba discipliniranega izvajanja analize in
načrtovanja.
 Cilj: zmanjšanje stroškov izgradnje in uvajanja IS.
 Pristop “iz vrha navzdol”.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 64 -
Primer strukturne metodologije
Informacijski inženiring - IE
 Informacijski inženiring je primer metodologije, ki
opisuje razvoj IS po strukturnem pristopu.
 Nastane leta 1981, glavni avtor je James Martin.
 Uveljavitev v sredini 80-tih let, uporablja se še
danes.
 IE je zasnovan na teoretičnih in praktičnih
dosežkih 80-tih let iz metodološkega in
tehnološkega vidika.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 65 -
Informacijski inženiring – IE
Osnovne značilnosti IE
 Osnovne značilnosti IE so:
 sloni na povezani množici tehnik za planiranje, analizo,
načrtovanje, razvoj in vzdrževanje IS celotne združbe ali vsaj
njenih glavnih delov;
 uporablja pristop od vrha navzdol;
 je podatkovno usmerjen;
 podpira avtomatizacijo razvoja;
 uveljavlja strateško planiranje;
 povečuje produktivnost.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 66 -
Informacijski inženiring – IE
Osnovne značilnosti IE
 IE predpostavlja, da so poslovni sistemi
večinoma podatkovno usmerjeni, tehnični sistemi
pa procesno ali dogodkovno.
 Podatki so stabilnejši od procesov in dogodkov.
Podatkovna
usmerjenost
Procesna
usmerjenost
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 67 -
Dogodkovna
usmerjenost
Informacijski inženiring – IE
Glavne faze IE
 IE v grobem zajema štiri faze:




Strateško planiranje
Analiza
Načrtovanje
Izvedba
Planiranje
Analiza
Načrtovanje
 IE posebej obravnava
podatke, posebej
aktivnosti
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Izvedba
- 68 -
Strateško planiranje informatike – SP
Opredelitev SP
 Razvoj IS združbe se po IE začne s fazo
strateškega planiranja informatike.
Strateško planiranje informatike je proces
izoblikovanja informacijskega sistema, ki organizaciji
omogoča uresničitev njenih ciljev in ji s tem
posredno zagotavlja konkurenčno prednost.
Fidler in Rogerson, 1996
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 69 -
Strateško planiranje informatike – SP
Cilji SP
 Cilji strateškega planiranja so:
Povezati razvoj IS s poslovno strategijo organizacije.
Izboljšati komunikacijo med vodstvom in informatiki.
Načrtovati pretok informacij in procesov.
Zmanjšati stroške in čas, potreben za razvoj aplikacij.
Predlagati optimalno zaporedje nadaljnjih korakov pri
planiranju in razvoju IS.
 Pripraviti izhodišča za nadaljnje korake informatizacije.
 Zagotoviti uporabo standardov za enotne tehnološke rešitve.
 Pokazati na organizacijske probleme pri uvajanju
informacijske podpore in predlagati organizacijske rešitve za
dosego racionalnejše uporabo informacijske podpore.





RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 70 -
Strateško planiranje informatike – SP
Problemi brez SP
 Problemi, če gre za investicije v informatiko na
osnovi sprotnih potreb:
 Investiranje v sisteme, ki ne podpirajo poslovnih usmeritev.
 Sistemi niso integrirani (podvojitev naporov in podatkov).
 Ni sredstva za določitev prioritet projektom, plani se pogosto
spreminjajo.
 Problemi z obvladovanjem podatkov: niso dostopni, so
neskladni, netočni ali nepravočasni.
 Nezadostne infrastrukturne investicije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 71 -
Strateško planiranje informatike – SP
Problemi brez SP
 Problemi (nadaljevanje):
 Vsi projekti so ovrednoteni le na finančni bazi.
 Problemi glede IT investicij povzročajo konflikte med
različnimi oddelki znotraj organizacije.
 Nerazumevanje med uporabniki in informatiki vodi v
konflikte in nezadovoljstvo.
 Sistemi imajo večinoma krajšo življenjsko dobo, pogosteje je
potreben ponoven razvoj, kar povzroča večje stroške.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 72 -
Strateško planiranje informatike – SP
Metodologija IS




IE priporoča postopek za izdelavo.
V LINF razvitih več različic.
Osnovna različica temelji na metodologiji IE.
Prilagojene različice za potrebe posameznih
podjetij.
1992
2006
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Osnovna različica
Body of Knowledge
Prilagojene različice
Priročnik
- 73 -
Strateško planiranje informatike – SP
Shema procesa izdelave SP
Izdelava dolgoročnega plana
Izdelava kratkoročnega plana
 Proces SP zajema 6 postopkov:






Vprašalniki
Razna
dokumentacija
Pregled in
analiza
obstoječega
stanja
Izpolnjeni
vprašalniki
Pregled in analiza obstoječega stanja;
Opredelitev poslovno-informacijske arhitekture;
Opredelitev informacijske vizije;
Opredelitev projektov;
Izdelava akcijskega načrta;
Spremljanje izvajanja in vzdrževanje strateškega
3-4 mesece
plana.
Poslovnoinformacijsk
a arhitektura
Razna
dokumentacija
Opredelitev
poslovnoinformacijske
arhitekture
Podrobna Terminska
opredelitev opredelitev
izbranih letnega plana
projektov
Informacijska
vizija
Opredelitev
informacijske
vizije
Opredelitev
projektov
Seznam
Projektov
Legenda
Izdelava
letnega
načrta
Prioritete
projektov
Postopek
Izdelek
74
Analiza
Izhod postopka
RAZVOJ INFORMACIJSKIH
SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij zaVhod
podatkovne
postopka tehnologije
- 74 -
Poročilo o
izvajanju
letnega plana
Spremljanje
izvajanja in
vzdrževanje
strateškega plana
Izdelava dolgoročnega plana
Izdelava kratkoročnega plana
Poslovnoinformacijsk
a arhitektura
Strateško planiranje informatike – SP
Vprašalniki
Razna
dokumentacija
Pregled in
analiza
obstoječega
stanja
Razna
dokumentacija
Podrobna Terminska
opredelitev opredelitev
izbranih letnega plana
projektov
Informacijska
vizija
Poročilo o
izvajanju
letnega plana
Postopki pri strateškem planiranju
Opredelitev
poslovnoinformacijske
arhitekture
Opredelitev
informacijske
vizije
Opredelitev
projektov
Izdelava
letnega
načrta
Spremljanje
izvajanja in
vzdrževanje
strateškega plana
Izpolnjeni
vprašalniki
Seznam
Projektov
Legenda
Prioritete
projektov
Postopek
Izdelek
Analiza
Izhod postopka
Vhod postopka
Pregled in
analiza
obstoječega
stanja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 75 -
Strateški plan razvoja informatike
Trajanje izdelave SP in sodelujoči
 Izdelava strateškega plana traja približno od 3 do
6 mesecev.
 Pri izdelavi sodelujejo:




Zunanji svetovalci
Metodologi (informatike izven organizacije)
Ključni uporabniki
Člani vodstvene skupine organizacije
 Strateški plan je potrebno osveževati!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 76 -
Razvoj po strukturnem pristopu
Osnovne značilnosti strukturnega pristopa k razvoju
 Strukturni pristop k razvoju
 temelji na strukturni izvedbi analize in načrtovanja.
 podatki se obravnavajo ločeno od aktivnosti postopkov.
 ključen element pri strukturnem modelu je podatkovna baza,
ki predstavlja strukturo, okrog katere se razvije programske
module.
 Strukturni razvoj se z uveljavitvijo objektnih
programskih jezikov ukinja.
 Danes se uporablja hibriden pristop: temelji na
objektni filozofiji, vendar podatkovna baza še
vedno ohranja ključen pomen.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 77 -
Razvoj po strukturnem pristopu
Ključni postopki strukturnega razvoja
 Strukturni pristop k razvoju zajema več
postopkov:







Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba
Vzdrževanje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 78 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:







Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba
Vzdrževanje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 79 -
Zajem in specifikacija zahtev
Opredelitev in namen
 Zajem in specifikacija zahtev je ena
pomembnejših aktivnosti razvoja oziroma
nakupa IR.
 Osnovni namen zajema in specifikacije zahtev je
opredeliti želeno IR na način, ki bo omogočal:
 Pri nakupu IR izbirati med obstoječimi rešitvami,
 Pri razvoju IR opredeliti osnovno funkcionalnost ter
tehnološke in druge nefunkcionalne zahteve in omejitve za
izgradnjo želene IR.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 80 -
Zajem in specifikacija zahtev
Končni izdelek e
 Rezultat zajema in specifikacije zahtev je
dokument, kjer so zabeležene vse funkcionalne in
nefunkcionalne zahteve v zvezi z želeno IR.
 V nadaljnjih korakih se dokument lahko
uporablja:
 kot vhod v postopek analize,
 pri pripravi razpisne dokumentacije za nakup IR oziroma
izbiro zunanjega razvijalca,
 kot priloga k pogodbi med naročnikom in izvajalcem sistema.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 81 -
Zajem in specifikacija zahtev
Vloge in koraki 
 Zajem zahtev izvede sistemski analitik ob tesnem
sodelovanju s poznavalci problemske domene
oziroma ključnimi uporabniki.
 Osnovni koraki zajema:
 Zajem zahtev,
 Ureditev zahtev in
 Potrditev zahtev.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 82 -
Zajem in specifikacija zahtev
Postopek zajema in specifikacije zahtev 
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 83 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
• Zajem zahtev,
• Ureditev zahtev in
• Potrditev zahtev





Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 84 -
Zajem in specifikacija zahtev
Zajem zahtev
 Obstajajo različne tehnike zajema zahtev:





Razgovori
Vprašalniki
Opazovanje pri delu
Analiza obstoječega sistema
Skupinsko načrtovanje aplikacij
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 85 -
Zajem in specifikacija zahtev
Zajem zahtev
 Splošni napotki za uspešno izvedbo zajema
zahtev:
 Analitik mora biti objektiven,
 Analitik mora upoštevati vse možnosti v okviru nekega
problema,
 Analitik posveča pozornost podrobnostim,
 Analitik mora strmeti k novim in boljšim rešitvam,
 Analitik ne daje obljub uporabnikom,
 Analitik nima zadržkov pri zajemanju zahtev.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 86 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
• Zajem zahtev,
• Ureditev zahtev in
• Potrditev zahtev





Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 87 -
Zajem in specifikacija zahtev
Ureditev zahtev
 V aktivnosti ureditev zahtev skušamo naše
razumevanje želene IR opredeliti še v okviru
dokumenta, s katerim bodo zahteve IR podane
bolj formalno in jedrnato.
 Izdelek, ki nastane, imenujemo specifikacija
zahtev.
 Specifikacija zahtev lahko služi kot temeljna
podlaga pri dogovarjanju med naročnikom in
izvajalcem.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 88 -
Zajem in specifikacija zahtev
Specifikacija zahtev
 Specifikacija zahtev ima navadno naslednjo
strukturo:
1. Kratek opis namena IR ali njenega podsistema
2. Opis funkcionalnih zahtev
3. Opis nefunkcionalnih zahtev
4. Opis vmesnikov
5. Slovar izrazov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 89 -
Zajem in specifikacija zahtev
Specifikacija zahtev
Funkcionalne zahteve so zahteve, ki se nanašajo na
želeno funkcionalnost sistema.
Odjava iz izpitnega roka
Sistem naj študentom omogoča odjavo iz izpitnega roka.
Poslovna pravila:
• Študent se ne more odjaviti iz izpitnega roka, če je do
roka še manj kot tri dni.
• …
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 90 -
Zajem in specifikacija zahtev
Specifikacija zahtev
Nefunkcionalne zahteve so zahteve, ki se nanašajo
na tehnične in druge nevsebinske zahteve sistema.
• Sistem naj bo narejen v tri-nivojski arhitekturi z lahkim
odjemalcem.
• Podatki naj se hranijo v podatkovni bazi Oracle.
• Za avtentikacijo nej se uporabi digitalno potrdilo.
• Izdajatelj digitalnega potrdila je lahko CVI RS, NLB, PS.
• …
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 91 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
• Zajem zahtev,
• Ureditev zahtev in
• Potrditev zahtev





Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 92 -
Zajem in specifikacija zahtev
Potrditev zahtev
 Namen aktivnosti potrditev zahtev je predstavitev
specifikacije zahtev naročniku in pridobitev
soglasja o tem, da so zajete zahteve res to, kar si
naročnik želi.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 93 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:







Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba
Vzdrževanje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 94 -
Analiza
Opredelitev in namen
 Glavni namen analize je izdelati razumljiv opis
realnega sveta oziroma poslovnega okolja,
na katerega se nanaša razvoj IS.
 Izdelamo model sistema, ki na formalen način
opredeli potrebne podatkovne strukture in
funkcije, ki te podatke uporabljajo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 95 -
Analiza
Opredelitev in namen
 Analiza daje odgovor na vprašanje, KAJ naj IS
podpira. Kaj se izvaja v poslovnih funkcijah in
kakšne podatke te rabijo?
 Analiza služi kot:
 sredstvo za definicijo zahtev,
 osnova za dogovor med naročnikom in izvajalcem
 osnova za kasnejše faze razvoja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 96 -
Analiza
Končni izdelek e
 Rezultat analize je model sistema.
 Na osnovi modelov se v nadaljnjih korakih izdela
podatkovna baza ter potrebni programski moduli.
 Poleg modela sistema v fazi analize izdelamo tudi
predlog tehnične arhitekture sistema ter opcijsko
prototipe komponent uporabniškega vmesnika.
 Med izdelke analize sodi tudi strategija testiranja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 97 -
Analiza
Vloge in koraki 
 Postopek analize izvajajo sistemski analitik,
sistemski arhitekt in ključni uporabniki.
 Postopek analize tipično zajema naslednje
aktivnosti:





Izdelava modela sistema;
Izdelava prototipov;
Izdelava predloga tehnične arhitekture sistema;
Opredelitev strategije testiranja;
Predstavitev rezultatov analize naročniku.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 98 -
Analiza
Shema postopka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije

- 99 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
•
•
•
•
•




Izdelava modela sistema;
Izdelava prototipov;
Izdelava predloga arhitekture sistema;
Opredelitev strategije testiranja;
Predstavitev rezultatov analize naročniku.;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 100 -
Analiza
Splošno o modeliranju
 Modeliranje je uveljavljena inženirska tehnika na
mnogih področjih:






Gradbeništvo,
Strojništvo,
Kemija,
Ekonomija,
Sociologija,
Računalništvo…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 101 -
Analiza
Splošno o modeliranju
 Modele razvijamo zato, da bi sisteme bolje
razumeli.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 102 -
Analiza
Splošno o modeliranju
 Model je poenostavitev realnosti, pri čemer je
abstrakcija realnosti poljubno natančna.
 Pomembno je, da model prikazuje pomembne
elemente in izpušča tiste, ki nas ne zanimajo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 103 -
Analiza
Splošno o modeliranju
 Modeliranje prinaša naslednje bistvene prednosti:




Omogoča vizualizacijo sistema,
Prikazuje tako statične kot dinamične lastnosti sistema,
Predstavlja šablono za nadaljnjo gradnjo sistema,
Dokumentira sprejete odločitve.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 104 -
Analiza
Splošno o modeliranju
 Izbira modelov
 Za modeliranje sistema lahko izberemo različne modele.
 Izbira modelov določa, kako bomo pristopili k reševanju
problema ter kako oblikovali rešitev.
 Modeli morajo podpirati izražanje na različnih ravneh
natančnosti.
 Najboljši modeli so tesno povezani z realnostjo.
 En sam model nikoli ni dovolj. Sistem je potrebno modelirati
iz različnih vidikov. Najboljši pristop je izbira nekaj modelov,
ki kar najbolje pokrijejo najpomembnejše vidike sistema.
 Metodologije razvoja IS predlagajo različne modele.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 105 -
Analiza
Analiza po strukturnem pristopu
 Model, ki ga izdelamo v fazi analize po
strukturnem pristopu, se v grobem deli na:
 Podatkovni model,
 Procesni model in
 Model procesne logike.
Model
sistema
Podatkovni
model
Procesni
model
Model
procesne
logike
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 106 -
Analiza – Izdelava modela sistema
Izdelava modela sistema po strukturnem pristopu
 Podatkovni model:
 prikazuje sistem s podatkovnega vidika tako, da opisuje
podatkovne strukture, ki so potrebne za delovanje sistema.
Poleg podatkovnih struktur zajema tudi vse povezave med
njimi.
 Procesni model:
 prikazuje sistem z vidika aktivnosti ali procesov, ki se v
sistemu izvajajo. Definirani so tokovi podatkov med procesi.
 Model procesne logike:
 natančneje definira procese, definirane v procesnem
modelu.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 107 -
Analiza – Izdelava modela sistema
Strukturne diagramske tehnike
 Za predstavitev posameznih modelov sistema
uporabljamo formalne, semi-formalne in tudi
neformalne tehnike.
 Podatkovni model: diagram entiteta-razmerje
 Procesni model: procesni diagram, diagram podatkovnih
tokov, funkcionalna razgradnja
 Model procesne logike: naravni jezik, strukturiran jezik,
odločitvene tabele, odločitveni grafi, diagrami prehajanja
stanj
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 108 -
Analiza – Izdelava modela sistema
Podatkovni model
Model
sistema
 Podatkovni model:
 Je eden izmed najpomembnejših izdelkov faze
analize in predstavlja vse podatkovne
kategorije, za katere na nekem delovnem
področju obstaja potreba, da se o njih podatki
spremljajo, obdelujejo in hranijo.
 V analizi izdelamo konceptualni podatkovni
model.
 Za izdelavo uporabljamo diagramsko tehniko
entiteta-razmerje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 109 -
Podatkovni
model
Procesni
model
Model
procesne
logike
Analiza – Izdelava modela sistema
Podatkovni model
svet
mentalni model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
konceptualni model
- 110 -
logični model
PB
Analiza – Izdelava modela sist.
V konceptualnem modelu
lahko nastopajo tudi sestavljeni
in večvrednostni atributi!
Podatkovni model – primer
 Konceptualni podatkovni model
?
Predmet
Predmet
Naziv
Dodatne obveznosti
Semester
Kreditne točke
…
Izpit
Zap. št. polaganja
Ocena pisno
Ocena ustno
Datum ocene
Vpisna številka
Priimek
Ime
Naslov
Telefon
E-mail
Status
…
Delavec
Rok
Prijava
Rok
Datum izpita
Prijavljenih
Maks. prijavljenih
Meja pozitivno
…
Datum prijave
Datum odjave
Zap. št. polaganja
Kolokvij
Letnik
Plača izpit
…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Študent
Delavec
Priimek
Ime
E-mail
Geslo
…
- 111 -
Analiza – Izdelava modela sistema
Podatkovni model – primer
 Primer nerazumljivega podatkovnega modela
a
a
VIP_F
VIP
a
POSTA
a
a
a
a
a
a
SMER a
VSI
a
ZAVOD
a
NACIN
POTRDILO
b
a
a
a
a
a
r
r
a
a
a
a
VRSTA_POT
a
a
a
a
IZPIT
a
a
a
a
a
a
a
PRE_PRE
a
a
PRIJAVA
a a b
a
a a
a
a
a
VRSTA_OC
PRE_DEL
STAT_PR
a
STAT_POS
aa
a
ROK
- 112 -
SPP
DELAVEC
a
aa
aa
aa
PRIJAVA_U
a
PP
a a cbb a
a
aaaaa
a
ROK_U
a
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
aa
a
a
STAT_IZPITA
a
APP
cb a aa
a
a
PRED_PR
IZPRASEVALE
C
a
a
a
a b
DELNA_OC
NAC_DEL
a
b
PREDPOG
a
b
a
a
PRED_OBC
a
a
a
a a
IZJEME
a
EKVIVAL
a
aa
a
a
a
a
a
b
PREDMET a a
a
a
a
a
a
a
a
a
aa
a
SKLEPI
a
a
a
STUDENT
a
a b
aa a a
aa
VAJE
a
a a
a
PRED_AT
a
a
a
a NAC_OC
a
a
a
a
PRED_IZB
PRED_DIF
IZBIRNI
ZAHTEVA
NAC_IZV
VSI_F
a
SKUPINA
a
VPIS
a
a a
a
a
a
a a
ab
a
a
a
a
a
aa
OBVESTILA
a
a
Analiza – Izdelava modela sistema
Podatkovni model – primer
 Entitetne tipe je potrebno dokumentirati
 Primer dokumentacije:
Naziv
entitetnega
tipa
Opis
Sinonim
Delavec
Predstavlja pedagoškega delavca, Pedagoški
ki je nosilec enega ali več
delavec
predmetov
Vsaka katedra ima enega
ali več pedagoških
delavcev. Niso vsi delavci
nosilci predmetov.
Rok
Predstavlja datum, na katerega
je za nek predmet in določeno
ciljno skupino (letnik, smer,...)
razpisan izpitni rok.
Na leto se razpiše okrog
300 pisnih izpitov. Vsak
predmet mora imeti vsaj
tri roke letno
...
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 113 -
Rok, pisni
izpit,
kolokvij
Število entitet
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja
 Možni koraki konceptualnega načrtovanja:





K
K
K
K
K
 K
 K
 K
 K
1.1:
1.2:
1.3:
1.4:
1.5:
Identificiraj entitetne tipe
Identificiraj povezave
Identificiraj in z entitetnimi tipi poveži atribute
Atributom določi domene
Določi kandidate za ključe; izmed kandidatov izberi
primarni ključ
1.6: Po potrebi uporabi elemente razširjenega diagrama
entiteta – razmerje
1.7: Preveri, če v modelu obstajajo odvečni elementi
1.8: Preveri, če model “zdrži” transkacije
1.9: Preveri model z uporabnikom
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 114 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – identifikacija povezav
 V postopku identifikacije povezav smo pazljivi na
dvoumne in nepopolne povezave.
K 1.2
Primer dvoumne povezave
Profesor
je član
1..*
1..1
Katedra
Pr1
vključuje
1..1
1..*
Laboratorij
L1
K1
Pr2
L2
K2
Pr3
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 115 -
L3
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – identifikacija povezav
 Dvoumno povezavo odpravimo z
restrukturiranjem modela
Profesor
je član
1..*
1..1
Laboratorij
Pr1
vključuje
1..*
1.1
Katedra
K1
L1
Pr2
Pr3
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
K2
L2
- 116 -
K3
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – Identifikacija povezav
Primer nepopolne povezave
Katedra
ima
1..1
1..*
Član
0..1
0..*
Oprema
K1
Čl1
O1
K2
Čl2
O2
K3
Čl3
O3
Kateri katedri pripada oprema O2?
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
je skrbnik
- 117 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – identifikacija povezav
 Odpravimo z prestrukturiranjem modela.
Katedra
1..1
ima
1..1
1..*
Član
pripada
je skrbnik
0..1
0..*
Oprema
1..*
K1
Čl1
O1
K2
Čl2
O2
K3
Čl3
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 118 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – odvečne povezave
 Identifikacija odvečnih povezav
K 1.7
 Povezava je odvečna, če je možno priti do iste informacije
prek drugih povezav!
 Izdelati želimo minimalen podatkovni model  odvečne
povezave zato odstranimo.
 Zgolj pregledovanje poti med entitetnimi tipi ne zadošča
(povezave imajo lahko različen pomen)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 119 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – odvečne povezave
 Ali je kakšna povezava odveč?
Profesor
je predstojnik
1..1
0..1
1..*
Katedra
1..1
pripada
1..*
je član
1..1
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 120 -
Laboratorij
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – odvečne povezave
 Ali je kakšna povezava odveč?
Profesor
pripada
1..*
1..1
1..*
Katedra
1..1
pripada
1..*
je član
1..1
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 121 -
Laboratorij
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – preverjanje transakcij
 Preveriti moramo, če model podpira vse
zahtevane transakcije.
K 1.8
 Transakcije izvajamo ročno
 Če neke transakcije ne uspemo izvesti, je model pomanjkljiv
(manjka bodisi entitetni tip, povezava ali atribut)
 Možna dva pristopa:
 Preverjanje prek opisa transakcij
 Preverjanje prek transakcijskih poti
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 122 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – preverjanje prek opisa transakcij
 Preverjanje prek opisa transakcij
 Vsako transakcijo opišemo;
 Preverimo, če model zajema vse entitetne tipe, povezave in
atribute, ki jih transakcija potrebuje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 123 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – preverjanje prek opisa transakcij
 Primer opisa transakcijskih zahtev
 Vnos podatkov:
• Vnesi podatke o študentih (npr. 24010637, Monika Jemec,...)
• Vnesi podatke o predmetih (npr. 70029, Razvoj IS, Letni,...)
• ...
 Urejanje in brisanje podatkov:
• Uredi/briši podatke o študentu
• Uredi/briši podatke o predmetih
• ...
 Poizvedbe
• Izpiši vse študente, ki so se vpisali v določen letnik, določene
smeri, določenega programa
• Izpiši vse predmete, ki jih je opravil določen študent
• ...
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 124 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – preverjanje prek transakcijskih poti
 Preverjanje prek transakcijskih poti
 Transakcije preverimo na modelu – pot transakcije narišemo
 Pristop načrtovalcu omogoča:
• Da identificira pomanjkljivosti modela (če pot za neko transakcijo ni
možna)
• Da identificira dele modela, ki so transakcijsko kritični
• Da odkrije odvečne dele modela (deli, ki jih ne potrebuje nobena
transakcija)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 125 -
Analiza – Izdelava modela sistema
Podatkovni model – metoda načrtovanja – preverjanje prek transakcijskih poti
a)
b)
Izpiši vse predmete, ki jih je opravil določen študent
Izpiši vse študente, ki so se vpisali v določen letnik, določene smeri,
določenega programa
b
?
Prijava
ima
Program
1..1
progID
Smer
0..1
1..*
se predava na
1..*
Rok
se nanaša na
0..*
1..1
rokID
za
0..*
Predmet
1..1
0..*
1..1
je opravljal
Študent
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
predID
1..1
pripada
vpisSt
smerID
1..1
a
Izpit
0..*
stPol
- 126 -
0..*
iz
Analiza – Izdelava modela sistema
Izdelava modela sistema – procesni model
Model
sistema
 Procesni model:
 prikazuje sistem z vidika aktivnosti ali
procesov, ki se v sistemu izvajajo. V
procesnem modelu lahko nastopajo tudi
podatkovne strukture, ki jih procesi
potrebujejo pri svojem delovanju.
 Za izdelavo procesnega modela uporabimo
dve diagramski tehniki: diagram razgradnje
ter diagram podatkovnih tokov. Uporabimo
lahko tudi procesni diagram.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 127 -
Podatkovni
model
Procesni
model
Model
procesne
logike
Analiza – Izdelava modela sistema
Procesni model – diagram funkcionalne razgradnje – opredelitev
 Z diagramom funkcionalne razgradnje prikažemo
hierarhijo funkcij, ki jih želimo s sistemom
podpreti.
 Hierarhijo funkcij lahko prikažemo na različne
načine, najbolj običajno kot navpično hierarhijo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 128 -
Analiza – Izdelava modela sistema
Procesni model – diagram funkcionalne razgradnje
Funkcija 1
Funkcija 1
Funkcija
1.1
Funkcija 1.1
Funkcija 1.2
Funkcija 1.3
Funkcija
1.2
Funkcija 1
Funkcija 1.1
Funkcija 1.2
Funkcija
1.3
Funkcija 1.1
Funkcija 1.3
Funkcija 1
Funkcija
Funkcija 1.2
1.2.1
Funkcija 1.3
Funkcija
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
1.2.2
- 129 -
Analiza – Izdelava modela sistema
Procesni model – diagram funkcionalne razgradnje – smernice
 Smernice za izdelavo diagramov funkcionalne
razgradnje:
 Število nivojev in število enot na enem nivoju običajno ni
omejeno, čeprav velja priporočilo, naj ima vsak element
največ devet podrejenih elementov.
 Za vsako enoto velja, da ima nič, eno ali več podrejenih enot
(vej) in da vedno pripada natanko eni nadrejeni enoti na
prvem višjem nivoju.
 Enote na istem nivoju razporedimo od leve proti desni po
neki sekvenčni karakteristiki, ki jo natančno definiramo in k
diagramu dokumentiramo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 130 -
Analiza – Izdelava modela sistema
Procesni model – diagram funkcionalne razgradnje - primer
Študijska
Informatika
(izpitna
evidenca)
Vzdrževanje
in pregled
izpitnih rokov
Elektronski
indeks/
kartotečni list
Prijava na
izpit
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Naročanje
potrdil
Opravljanje
pisnih izpitov
Opravljanje
ustnih izpitov
Vpis končne
ocene
Odjava iz
izpita
Pregled
števila
prijavljenih
kandidatov
Vnos
rezultatov
Objava
rezultatov
- 131 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – opredelitev
 Diagrame podatkovnih tokov (DFD) uporabimo za
prikaz okolja, v katerem bo sistem deloval, ter za
prikaz odvisnosti med procesi, ki jih bo sistem
podprl.
 DFD združuje podatkovni in procesni pogled na
obravnavano področje.
 DFD je uvedel Tom DeMarco leta 1978. Od takrat
nastalo več različic DFD tehnike. Razlikujejo se
predvsem v notaciji.
DFD – Data Flow Diagram
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 132 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – osnovni gradniki
 DFD sodi med enostavnejše diagramske tehnike.
 Osnovni gradniki DFD so:




Proces
Tok podatkov
Podatkovno skladišče
Zunanja entiteta
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 133 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – proces
 Proces predstavlja množico aktivnosti, ki vhodne
podatke pretvorijo v izhodne.
Notranja shramba
podatkov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Vhodni
podatki
Proces
sistema
- 134 -
Izhodni
podatki
Zunanji
prejemnik
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – proces
Raven podrobnosti
 Proces je generičen pojem in lahko predstavlja
dogajanje na različnih ravneh (funkcija, proces,
pod-proces, naloga, aktivnost ipd.)
Proces
Funkcionalna razgradnja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 135 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – proces
 Vsakemu procesu je dodeljen naziv in številčna
oznaka, ki se v diagramu vpišeta v grafični simbol
procesa.
 Za naziv procesa običajno uporabimo glagol,
glagolski samostalnik ali zaporedje besed, ki
opisujejo vrsto dejavnosti.
 Številčna oznaka enolično določa proces.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
1
2
Prijava
na izpit
Vnos
končne
ocene
- 136 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – tok podatkov
 Tok podatkov predstavlja množico vhodnih ali
izhodnih podatkov, ki imajo enolično definirano
vsebino in strukturo.
 Podatki lahko predstavljajo:
 elementarne podatke (npr. ime, priimek, vpisna številka,...)
 dokumente (vpisni list, kartotečni list,…)
 elektronske dokumente (elektronski indeks,…)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 137 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – tok podatkov
 Vsakemu toku podatkov določimo naziv, ki pove
kaj tok prenaša.
 Nazivi so samostalniki, običajno v ednini, ali pa
kombinacija samostalnika in pridevnika
Izpitni rok
2
Prijava
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Vnos
končne
ocene
- 138 -
Ocena pisno,
Ocena ustno
Izpit
Podatki o
preteklih
polaganjih
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – tok podatkov
 Podatkovni tok se lahko giblje:
 iz zunanje entitete v proces ali iz procesa k zunanji entiteti,
 iz procesa v drug proces in
 iz procesa v skladišče podatkov ali obratno.
 Podatkovni tok ne more povezovati zunanje
entitete s skladiščem podatkov!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 139 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – podatkovna shramba
 Podatkovna shramba predstavlja prostor, kamor
procesi shranjujejo podatke za druge procese ali
kasnejšo uporabo.
 Podatkovna shramba je lahko enostavna (npr.
zajema le elementarne podatke) ali kompleksna
(npr. predstavlja celo zbirko podatkov).
Izpit
Podatkovna baza
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 140 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – podatkovna shramba
 V fazi analize s podatkovno shrambo opišemo
logične sklope podatkov neodvisno od bodoče
fizične organizacija podatkov.
 Naziv podatkovne shrambe je največkrat enak
nazivu vhodnih podatkovnih tokov (skladišče je
pravzaprav podatkovni tok v mirovanju)
2
Izpitni rok
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Vnos
izpitnega
roka
- 141 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – podatkovna shramba
 V vsako shrambo mora pisati vsaj en proces,
sicer je shramba odveč!
 Velja logično pravilo, da iz shrambe ni mogoče
brati podatkov, ki niso bili vanj zapisani.
 Shramba je interna podatkovna struktura, zato
dostop do nje ni omogočen zunanjim entitetam!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 142 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – podatkovna shramba
 Povezava med podatkovnim in procesnim
modelom:
 Eden od načinov uporabe DFD je, da najprej izdelamo
podatkovni model, potem pa z DFD pokažemo, kako se
podatki med procesi prenašajo.
 Podatkovna shramba tedaj ustreza enemu ali več
entitetnim tipom iz podatkovnega modela.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 143 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – podatkovna shramba
Procesni model
Podatkovni model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 144 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – zunanja entiteta
 Zunanje entitete predstavljajo zunanje procese
ali zunanje sisteme.
 Nahajajo se izven interesnega področja analize.
 Ne zanima nas njihova struktura ali obnašanje,
pač pa le podatkovni tokovi, ki se prenašajo med
obravnavanim področjem in njimi.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 145 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – zunanja entiteta
Študent
indeks
Izpitni rok
2
Vnos
končne
ocene
Prijava
Univerza v
Ljubljani
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Poročila o
uspešnosti
generacije
- 146 -
Ocena pisno,
Ocena ustno
Izpit
Podatki o
preteklih
polaganjih
Podatki
o izpitih
3
Analiza
uspešnosti
generacije
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – način risanja DFD
 V analizi pogosto identificiramo večje število
procesov.
 Predstavitev vseh procesov enem diagramu je
nepregledna, sama vsebina pa nerazumljiva.
 Zato uporabljamo razčlenjevanje. Diagrame
rišemo od “vrha navzdol”:
 Začnemo z najvišjo ravnjo, kjer nastopajo obsežnejši
procesi,
 nadaljujemo do najnižje ravni, kjer nastopajo zelo podrobni
procesi.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 147 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – način risanja DFD
 Razčlenjevanje:
 Za vsak proces, ki je predstavljen v DFD na višji ravni,
izdelamo poseben DFD, kjer proces razbijemo na podprocese.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 148 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – način risanja DFD
 Kontekstni diagram:
 razčlenjevanje DFD začnemo na najvišji ravni, kjer nastopa
en sam proces – korenski proces.
KOTEKSTNI DIAGRAM
korenski proces
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
kontekst sistema
- 149 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – način risanja DFD
 Značilnosti kontekstnega diagrama:
 Kontekstni diagram prikazuje kontekst sistema – sistem v
sodelovanju z okoljem.
 Kontekstni diagram ima en sam proces – korenski proces.
 Kontekstni diagram nima podatkovnih shramb. Shrambe so
namenjene odlagališču podatkov pri prenosu le-teh med
procesi. Podatkovna shramba je del sistema!
 Podatkovni tokovi med korenskim procesom in zunanjimi
entitetami opredeljujejo vmesnike med sistemom in okoljem.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 150 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – primer kontekstnega diagrama
Študent
Podatkovni tokovi brez nazivov
ne povedo skoraj nič!!
MŠŠ
0
e-študent
Vpisna
prijavnoinformacijska
služba
Univerza v
Ljubljani
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Računovodstvo
FRI
- 151 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – način risanja DFD
 Prvi nivo diagrama podatkovnih tokov
 Prvi nivo razčlenitve kontekstnega diagrama predstavlja DFD
na hierarhičnem nivoju 1.
 DFD na prvem hierarhičnem nivoju prikažemo z eno sliko,
kjer korenski proces razčlenimo na potrebno število podprocesov (priporočljivo do 9).
 Pri razčlenjevanju procesa je potrebno ohraniti vso
funkcionalnost: vsota funkcionalnosti vseh podrejenih
procesov je enaka funkcionalnosti nadrejenega procesa.
 Potrebno je zagotoviti, da so evidentirani procesi približno
enakovredni oziroma uravnoteženi.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 152 -
Analiza – Izdelava modela sistema
Napačna raba shrambe
Procesni model – diagram podatkovnih tokov – kontekstni diagram
Sumarni podatki za
podatkovno skladišče
Univerza v
Ljubljani
Podatki o diplomah
Podatki o polaganjih
0.2
Sumarni podatki za
podatkovno skladišče
Roki, prijave,
Izpiti, ocene
Diplome
0.1
Vpisna evidenca
Izpitna
evidenca
Vpisni podatki
0.3
Osebni podatki,
indeks
Študent
Računovodstvo
FRI
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Vpisna
prijavnoinformacijska
služba
Vpis
MŠŠ
Podatki o plačilih
vpisnine
- 153 -
Analiza – Izdelava modela sistema
Procesni model – diagram podatkovnih tokov – način risanja DFD
 Kako podrobno razčlenjujemo DFD?
 Razčlenjevanje je smiselno do nivoja procesov, pri katerih
ugotovimo, da je težko definirati shrambe podatkov, ki
povezujejo njihove pod-procese. Na tem nivoju se procesi
povezujejo neposredno s podatkovnimi tokovi.
 Ta pogoj je vedno izpolnjen na nivoju elementarnih
procesov, ki jih lahko opišemo z zaporedjem korakov.
 Za opis procesov na najnižji ravni DFD tehnika ni primerna,
ker ne prikazuje zaporedja. Uporablja se druge tehnike, ki so
del modeliranja procesne logike.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 154 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Procesni diagram uporabimo, ko želimo prikazati
tok dogodkov ali potek določenega procesa.
 Za modeliranje procesov obstajajo številne
tehnike, ki se razlikujejo predvsem po številu
gradnikov ter notaciji.
 Diagrami eEPC spadajo med eno popularnejših
tehnik modeliranja poslovnih procesov.
eEPC – Extended Event-Driven Process Chain
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 155 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Tipični gradniki procesnih diagramov:







Dogodek
Aktivnost
Krmilni tok
Operator
Vloga
Aplikacija
Informacijski objekt
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 156 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Dogodek:
 vsaka aktivnost procesa ima praviloma vhodni in izhodni
dogodek.
 Vhodni dogodek se zgodi ob določenem trenutku, ko je
izpolnjen nek pogoj in ima za posledico začetek izvajanja
neke aktivnosti.
 Ko se aktivnost izvede, lahko rezultat vpliva na izhodni
dogodek.
 Primeri dogodkov so: prijava zaključena, izpitni rok vnesen,
ocena vpisana, prijava zavrnjena ipd.
Prijava
zaključena
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ocena
vpisana
- 157 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Aktivnost:
 aktivnost je najmanjša enota poslovnega procesa.
 Pomeni zaokroženo celoto procesiranja.
 Primeri aktivnosti: razpis ustnega roka, prijava na izpit, vnos
končne ocene, odjava iz izpita ipd.
 Aktivnost lahko poteka v sodelovanju z uporabnikom ali
popolnoma avtomatsko.
Razpis
ustnega
roka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Vnos
končne
ocene
- 158 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Krmilni tok
 krmilni oziroma kontrolni tok v obliki puščice nakazuje
zaporedje dogodkov in aktivnosti v modeliranemu procesu.
 Kontrolni tok lahko razumemo kot nosilec kontrolnih
podatkov in drugih pomembnih podatkov za izvajanje
procesa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 159 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Operator
 Operator predstavlja mesto razdruževanja kontrolnega toka
ali združitve iz več kontrolnih tokov v enega.
 Na nekem mestu v modeliranem procesu se lahko kontrolni
tok, ki izhaja iz aktivnosti ali dogodka, razdruži v več tokov,
ki vodijo naprej do dogodkov ali aktivnosti.
 Obratno se lahko kontrolni tokovi, ki izhajajo iz več
aktivnosti ali dogodkov, združijo v en kontrolni tok, ki vodi
do dogodka ali aktivnosti. Operatorji so AND, OR, XOR.
AND
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 160 -
Analiza – Izdelava modela sistema
Procesni model – procesni diagram
 Vloga
 Vloga predstavlja subjekt, ki aktivnost izvaja oz. je zanjo
odgovoren (posameznik, skupina ljudi, organizacijska enota,
ipd.)
 Aplikacija
 Predstavlja informacijsko rešitev, ki podpira izvajanje neke
aktivnosti.
 Informacijski objekt
 Predstavlja nosilec podatkov, ki bodisi vstopa kot vhod v
aktivnost ali v obliki izhoda iz nje izstopa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 161 -
Izbira kandidatov za
mednarodne izmenjave
Analiza – Izdelava modela sistema
Procesni model – procesni diagram – primer
Obvestilo
ULJ o
razpisu
Priprava
razpisa
Razpis
pripravljen
Objava
razpisa
Razpis
objavljen
Zbiranje
prijav
Razpis
zaključen
Izbira
kandidatov
Priprava
podatkov
za ULJ
Kandidati
določeni
Podatki
pripravljeni
AND
Priprava
podatkov
za KŠZ
Podatki
pripravljeni
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Kandidati
zavrnjeni
Seja
KŠZ
- 162 -
Obvestilo
kandidatov
o izboru
Obvestilo
ULJ o
izboru
XOR
Kandidati
potrjeni
AND
Izbira kandidatov za
mednarodne izmenjave
Analiza – Izdelava modela sistema
Procesni model – procesni diagram – primer – dodatni gradniki
Seznam
za ULJ
IR za izbiro
kandidatov
Izbira
kandidatov
S/E
koordinator
Priprava
podatkov
za ULJ
Kandidati
določeni
AND
MS Excel
Priprava
podatkov
za KŠZ
S/E
koordinator
Podatki
pripravljeni
Podatki
pripravljeni
Seznam
za KŠZ
Seja
KŠZ
KŠZ
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 163 -
Izbira kandidatov za
mednarodne izmenjave
Analiza – Izdelava modela sistema
Procesni model – procesni diagram – primer – steze
ULJ
Izdaja
obvestila
o razpisu
S/E
koordinator
Obvestilo
ULJ o
razpisu
KŠZ
Priprava
razpisa
Razpis
pripravljen
Objava
razpisa
Razpis
objavljen
Zbiranje
prijav
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Podatki
pripravljeni
- 164 -
Seja
KŠZ
Analiza – Izdelava modela sistema
Izdelava modela sistema – model procesne logike
 Model procesne logike:
 Dopolnjuje procesni model.
 Osredotoči se na tiste procese, ki v
procesnem modelu niso dovolj jasno opisani:
zaporedje korakov, kompleksne odločitvene
situacije.
 Model procesne logike izdelamo s pomočjo
diagramskih tehnik, kot so: strukturiran jezik,
odločitvene tabele, odločitvena drevesa,
diagrami prehajanja stanj idr.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 165 -
Model
sistema
Podatkovni
model
Procesni
model
Model
procesne
logike
Analiza – Izdelava modela sistema
Model procesne logike – strukturiran jezik
 Najpreprostejši način opisa procesne logike je z
naravnim jezikom.
 Strukturiran jezik je oblika naravnega jezika:
 kjer so opisi kratki in jedrnati stavki, sestavljeni iz glagolskih
in samostalniških oblik naravnega jezika.
 kjer ne uporabljamo drugih besednih oblik, npr. pridevnikov,
prislovov itd.
 kjer pišemo z zamiki, da poudarimo strukturo posameznih
delov opisa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 166 -
Analiza – Izdelava modela sistema
Model procesne logike – strukturiran jezik – primer
 Primer opisa:
 Vnos diplomske teme
Izberi študijski program
//izpišejo se vsi študijski programi
Izberi študenta
//izpišejo se vsi kandidati, ki so pri mentorju dvignili temo
Vnesi naslov teme
Vnesi opis teme
Potrdi ali prekliči temo
//če uporabnik vnosa ne potrdi, se podatki ne zabeležijo
//prikaži opcije za vnos/spreminjanje/izpis tem diplomskih nalog
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 167 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvene tabele in drevesa
 Odločitvene tabele in odločitvena drevesa
uporabimo pri modeliranju zapletenejše procesne
logike.
 Tehniki sta primerni predvsem, ko v procesni
logiki nastopa veliko pogojev, ki v različnih
kombinacijah sprožajo različne akcije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 168 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvene tabele
 Zgradba odločitvene tabele:
 v zgornjem delu prikazuje pogoje, ki nastopajo v procesu ter
vrednosti, ki jih ti pogoji lahko zavzamejo. Posameznim
kombinacijam vrednosti pogojev pravimo pravilo.
 v spodnjem delu tabele so navedene akcije, ki se morajo
izvesti ob določenem pravilu.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 169 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvene tabele
Pravilo – kombinacija vrednosti pogojev.
Vrednost pogoja 2
v pravilu p
Pravilo 1
Pravilo 2
…
Pravilo p
Pogoj 1
V(p1)
V(p1)
…
V(p1)
Pogoj 2
V(p2)
V(p2)
…
V(p2)
…
…
…
…
…
Pogoj n
V(pn)
V(pn)
Akcija 1
D/N
D/N
…
D/N
Akcija 2
D/N
D/N
…
D/N
…
…
…
…
…
Akcija m
D/N
D/N
…
D/N
V(pn)
Akcije, ki jih izvedemo, če velja pravilo p.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 170 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvene tabele
 Pravila v odločitveni tabeli predstavljajo
kombinacije vrednosti, ki jih posamezni pogoji
lahko zavzamejo.
Primer:
 Število pravil:
p1 = Pogoj 1: status vpisa
p2 = Pogoj 2: letnik
p1 = {redno, izredno, ponavlja, pavzira}
zv(p1) = 4
 zv: zaloga vrednosti
 n: število pogojev
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
p2 = {1, 2, 3, 4, 5, ABS}
zv(p2) = 6
Število pravil = 4 * 6 = 24
- 171 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvene tabele – primer
Prijava na izpitni rok
Akcije
Pogoji
Pravila
Izpitni rok razpisan
D
D
D
D
D
D
D
N
Dovoljen pristop k izpitu
D
D
D
D
D
D
D
N
Pravočasna prijava
D
D
D
D
D
D
N
N
Izpolnjeni vsi predpogoji
D
D
D
D
D
N
D
D
Število zaporednih polaganj presega 3
N
N
N
D
D
N
N
N
Prvo polaganje v izpitnem obdobju
D
N
N
D
N
D
D
D
Drugo polaganje v jesenskem obdobju
N
D
N
N
D
N
N
N
Četrto polaganje v šolskem letu
N
N
N
N
D
N
N
N
Sprejmi prijavo
×
×
×
×
×
×
Zavrni prijavo
×
×
Sestavi komisijo
×
Izdaj plačilni nalog
×
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 172 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvena drevesa
 Zgradba odločitvenega drevesa:
 Odločitveno drevo je sestavljeno iz vozlišč ter povezav med
njimi.
 Vozlišča predstavljajo pogoje, povezave med njimi pa možne
vrednosti posameznih pogojev.
 Posamezna pot v drevesu, od korena do predzadnjega
vozlišča, predstavlja kombinacijo pogojev ali pravilo.
 List drevesa, ki je na koncu poti, prikazuje seznam akcij
pravila.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 173 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvena drevesa
Pogoj
p1
Pot od korena do lista: pravilo
V(p1)  p1
Pogoj
p2
A  {a1, a2, …, an}
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
A  {a1, a2, …, an}
A  {a1, a2, …, an}
- 174 -
A  {a1, a2, …, an}
List: seznam akcij pravila
Analiza – Izdelava modela sistema
Model procesne logike – odločitvena drevesa
 Sestavljanje odločitvenega drevesa:
 Odločitveno drevo rišemo iz leve v desno.
 Začnemo s prvim vozliščem, v katerega vpišemo prvi pogoj.
 Glede na zalogo vrednosti, ki jo pogoj ima, narišemo iz
vozlišča ustrezno število puščic.
 Na konec vsake puščice narišemo novo vozlišče, ki
predstavlja naslednji pogoj. Če gre za list, vpišemo seznam
akcij, ki se izvedejo ob pravilu.
 Če ugotovimo, da na koncu določenih poti ni nobenih akcij,
lahko te poti brišemo iz drevesa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 175 -
Analiza – Izdelava modela sistema
Model procesne logike – odločitvena drevesa – primer
Zavrni prijavo:
Rok ne obstaja!
Izpitni rok
razpisan?
Zavrni prijavo:
Nima dovoljenja za
opravljanje izpita!
Zavrni prijavo:
Prijava ni bila oddana
pravočasno!
Dovoljen
pristop k
izpitu?
Predpogoji niso
izpolnjeni!
Pravočasna
prijava?
Predpogoji
izpolnjeni?
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 176 -
Zavrni prijavo:
Prvo
polaganje v
izpitnem
obdobju?
Analiza – Izdelava modela sistema
Model procesne logike – odločitvena drevesa – primer
Je skupno
število
polaganj >
3?
Komisijski izpit:
* sestavi komisijo
* izdaj plačilni nalog
* sprejmi prijavo
Sprejmi prijavo
Prvo
polaganje v
izpitnem
obdobju?
Je to
jesensko
obdobje?
Je skupno
število
polaganj >
3
Sprejmi prijavo
Zavrni prijavo:
Že opravljal v
zimskem/letnem
obdobju!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Komisijski izpit:
* sestavi komisijo
* izdaj plačilni
nalog
* sprejmi prijavo
- 177 -
Diagramske tehnike
Model procesne logike – diagram prehajanja stanj
 Z diagramom prehajanja stanj prikažemo stanja,
v katerih se lahko nahaja opazovan proces ter
odzive oziroma prehajanja med stanji kot odziv
na različne dogodke.
di/ai
Začetno stanje
Stanje
S1
d1/a1
{d0, d1, di, dk}: dogodki
{a0, a1, ai, ak}: akcije
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Stanje
S2
Končno stanje
- 178 -
Diagramske tehnike
Model procesne logike – diagram prehajanja stanj
 Glavni gradniki diagrama prehajanja stanj:
 Stanje
 Dogodek
 Akcija
 Stanje:
 Z vidika dogajanja v sistemu se lahko proces nahaja v
različnih stanjih.
 Stanja so določena z vrednostjo lastnosti, ki nas v okviru
dogajanja procesa zanimajo.
 Proces se nahaja v določenem stanju vse dokler se katera
izmed opazovanih vrednosti ne spremeni. Tedaj nastopi
novo stanje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 179 -
Diagramske tehnike
Model procesne logike – diagram prehajanja stanj
 Dogodek:
 Prehajanja med stanji povzročajo dogodki.
 Dogodek vpliva na spremembo ene ali več opazovanih
lastnosti procesa.
 Z vidika prehajanja med stanji je dogodek nekaj, kar se
pripeti v določenem trenutku in nima časovne razsežnosti.
 Akcija:
 Ob dogodku se lahko zgodijo različne akcije.
 Kot dogodki tudi akcije niso časovno trajajoče; zgodijo se v
trenutku.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 180 -
Diagramske tehnike
Status študenta
Model procesne logike – diagram prehajanja stanj – primer – prikaz z grafom
Pogoji za napredovanje niso
izpolnjeni /
[Ponoven vpis v letnik]
Pogoji za
napredovanje so
izpolnjeni /
[Vpis v višji letnik
omogočen]
Redno
vpisan
Ponavljalec
Pogoji za
napredovanje so
izpolnjeni /
[Vpis v višji letnik
omogočen]
Pogoji za
napredovanje so
izpolnjeni /
[Vpis v višji letnik
omogočen]
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 181 -
Pogoji za napredovanje
niso izpolnjeni, število
ponovnih vpisov > 1 /
[Odvzem statusa
študenta]
Pogoji za napredovanje
niso izpolnjeni /
[Odvzem statusa
študenta]
Pavzer
Diagramske tehnike
Status študenta
Model procesne logike – diagram prehajanja stanj – primer – prikaz s tabelo
Dogodek
Stanje
Redno vpisan
S1
Ponovno vpisan
S2
Pavzer
S3
Pogoji za
napredovanje so
izpolnjeni
S1 /
[Vpis v višji letnik
omogočen]
S1 /
[Vpis v višji letnik
omogočen]
S1 /
[Vpis v višji letnik
omogočen]
Pogoji za
napredovanje niso
izpolnjeni
S2 /
[Ponoven vpis s letnik]
S3 /
[Odvzem statusa
študenta]
Pogoji za
napredovanje niso
izpolnjeni, število
ponovnih vpisov > 1
S3 /
[Odvzem statusa
študenta]
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 182 -
Vaja
 Za opisan problem želimo izdelati informacijsko
rešitev. Izdelaj model sistema, ki bo problemsko
domeno kar najbolje opisal.
 Izbiraš lahko med poljubnimi diagramskimi
tehnikami.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 183 -
Vaja – rešitev
Podatkovni model
Status
Pritozba
Tip Nastanitve
sifra statusa
opis statusa
Stevilka pritozbe
Opis pritozbe
sifra tipa nastanitve
opis nastanitve
Stranka
sifra stranke
ime
priimek
stevilka OD
Hotelska stranka
Navadna
stranka
Hotelski
gost
Hotelski Gost
datum nastanitve
datum odjave
Soba
Tip Sobe
sifra sobe
stevilo lezisc
zasedeno
dodatne lastnosti
sifra tipa sobe
opis
Racun
leto
sifra racuna
datum
Poraba minibara
Hotelska Usluga
Hotelski Usluzbenec
sifra hotelskega usluzbenca
ime
priimek
naslov
tel
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 184 -
datum porabe
kolicina porabe
kolicina
cena
Tip Hotelske Usluge
sifra tipa hotelske usluge
opis
enota
cena
Vaja – rešitev
Status stranke – frekvenca bivanja v hotelu
NOV GOST
SEZONSKI GOST
Gre vedno za
isto sezono?
Prvič v
hotelu?
Je bil v hotelu
že več kot dva
krat?
REDNI GOST
?
Manjka status!
Predlog: Navaden gost.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Slabo poimenovanje: sezonski gost je tudi redni gost!
Predlog: redni gost  letni gost.
- 185 -
Vaja – rešitev
Posebni statusi
Status stranke – posebni statusi
Ali se je
kdaj
pritožil?
OBČUTLJIV GOST
Ali spada
med 10%
najdonosnejših?
SUPER GOST
Ima
posebne
potrebe?
POSEBEN GOST
AND
Status <>
NOV GOST
AND
Je znana
oseba?
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 186 -
POMEMBEN GOST
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
•
•
•
•
•




Izdelava modela sistema;
Izdelava prototipov;
Izdelava predloga arhitekture sistema;
Opredelitev strategije testiranja;
Predstavitev rezultatov analize naročniku.;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 187 -
Analiza – Izdelava prototipov
Izdelava prototipov v okviru analize
 Izdelava prototipov je neobvezna
 v okviru analize učinkovito sredstvo za prikaz izgleda ter
osnovne funkcionalnosti uporabniškega vmesnika.
 Razvita posebna razvojna okolja, ki omogočajo
vizualno sestavljanje zaslonskih mask, izpisov in
poizvedb ter vsebujejo mehanizme za
avtomatsko generiranje kode.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 188 -
Analiza – Izdelava prototipov
Izdelava prototipov v okviru analize
 Prototipi se navadno uporabljajo le kot del
specifikacije sistema, za pridobitev jasnejše
podobe bodočega sistema in se v nadaljevanju
zavržejo.
 Obstajajo tudi metode, ki tako izdelane prototipe
izkoristijo kot osnovo za izdelavo produkcijskega
sistema (Rapid Application Development – RAD).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 189 -
Analiza – Izdelava prototipov
Izdelava prototipov v okviru analize
 Nekaj primerov orodij za izdelavo prototipov:
 Vizualna razvojna okolja: npr. Delphi;
 Risarska orodja: npr. MS Visio;
 CASE orodja: npr. Oracle Designer.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 190 -
Analiza – Izdelava prototipov
Izdelava prototipov v okviru analize – Primer MS Visio
 Primer
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 191 -
Analiza – Izdelava prototipov
Izdelava prototipov v okviru analize – Primer Delphi
 Primer
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 192 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
•
•
•
•
•




Izdelava modela sistema;
Izdelava prototipov;
Izdelava predloga arhitekture sistema;
Opredelitev strategije testiranja;
Predstavitev rezultatov analize naročniku.;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 193 -
Analiza – Predlog tehnične arhitekture
Izdelava predloga tehnične arhitekture
 V okviru analize ne analiziramo zgolj
funkcionalnih zahtev, temveč tudi tehnične in
druge nefunkcionalne zahteve.
 Na osnovi tega podamo predlog tehnične
arhitekture sistema.
 Upoštevamo tudi strategijo podjetja oziroma
standarde, ki so v podjetju določeni za celoten
informacijski sistem.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 194 -
Analiza – Predlog tehnične arhitekture
Izdelava predloga tehnične arhitekture
 V okviru predloga tehnične arhitekture sistema
opredelimo strojno, komunikacijsko in
programsko opremo, ki je potrebna za
vzpostavitev ustreznega razvojnega, testnega in
produkcijskega okolja.
 V fazi analize navadno izdelamo le predlog, ki
služi kot eden pomembnih virov za oceno
stroškov razvoja oziroma nakupa IR.
 Upoštevati moramo standarde in predpise, ki so
določeni za posamezna področja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 195 -
Analiza – Predlog tehnične arhitekture
Izdelava predloga tehnične arhitekture – vsebina
1. Arhitektura sistema
1.1 Strojna oprema
1.2 Sistemska programska oprema
1.3 Komunikacijska oprema
1.4 Druga oprema
1.5 Postavitveni diagram (opcijsko)
2. Postopki, predpisi in standardi
2.1 Zagotavljanje varnosti
2.2 Varnostne kopije (Backup)
2.3 Vzpostavitev sistema (Recovery)
2.4 Obravnava napak
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 196 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
•
•
•
•
•




Izdelava modela sistema;
Izdelava prototipov;
Izdelava predloga arhitekture sistema;
Opredelitev strategije testiranja;
Predstavitev rezultatov analize naročniku.;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 197 -
Analiza – Opredelitev strategije testiranja
Strategija testiranja
 Način testiranja je s standardi kakovosti
podrobno določen. Njegova izvedba vseeno
odvisna od vrste projekta.
 V okviru opredelitve strategije testiranja se
odločimo:
 Kaj je predmet testiranja? Npr. programske enote,
programski sklopi, integracija, tehnične zahteve…
 Kdo bo izvajal testiranje, kje in kako bo testiranje potekalo?
Npr. teste programskih enot izvajajo programerji sami v
okviru razvojnega okolja.
 Kje bo nameščeno testno okolje (pri izvajalcu ali pri
uporabniku)?
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 198 -
Analiza – Opredelitev strategije testiranja
Strategija testiranja
 Opredelitev strategije testiranja (nadaljevanje):
 Na kakšni strojni opremi bo nameščeno testno okolje?
 V kateri točki projekta se bo namestilo testno okolje?
 Bo testiranje v testnem okolju potekalo v več iteracijah ali v
celoti?
 Kakšna orodja se bo uporabljalo za pripravo testov?
 Kakšna orodja se bo uporabljalo za izvajanje testov?
 …
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 199 -
Analiza – Opredelitev strategije testiranja
Strategija testiranja – prva aktivnost v okviru postopka testiranja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 200 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
•
•
•
•
•




Izdelava modela sistema;
Izdelava prototipov;
Izdelava predloga arhitekture sistema;
Opredelitev strategije testiranja;
Predstavitev rezultatov analize naročniku;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 201 -
Analiza – Predstavitev rezultatov
Predstavitev rezultatov analize uporabniku
 Ko izdelamo vse izdelke, ki jih predvideva faza
analize, pripravimo predstavitev za naročnika.
 Osnovni namen predstavitve je pridobitev
potrdila s strani naročnika o pravilnosti
razumevanja problema, ki ga rešujemo z IR.
 Potrebno upoštevati, da naročnik morda nima
strokovnih znanj za poglobljeno razumevanje
rezultatov analize; predstavitev mora biti temu
primerna.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 202 -
Analiza – Predstavitev rezultatov
Predstavitev rezultatov analize uporabniku
 Predstavitev se zaključi s potrditvijo naročnika,
da rezultati analize ustrezajo zahtevam.
 Potrditev se izvede s podpisom dokumenta, ki
pogosto predstavlja eno izmed kontrolnih točk v
okviru projektnega vodenja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 203 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 204 -
Načrtovanje
Opredelitev in namen
 Glavni namen načrtovanja je izdelati načrt
zgradbe sistema glede na specifikacije, ki so bile
zbrane v fazi analize.
 Načrt daje odgovor na vprašanje, KAKO izdelati
sistem, da bo ustrezal zahtevam, ki smo jih
evidentirali v fazi analize.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 205 -
Načrtovanje
Cilji načrtovanja
 Cilji načrtovanja so:
 Izdelati načrt IR, ki ustreza ugotovitvam iz analize in
upošteva tehnološke omejitve sistema;
 Dokumentirati specifikacije načrta na način, ki bo omogočal
vzdrževanje sistema;
 Zasnovati strategijo prehoda iz obstoječe na novo aplikacijo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 206 -
Načrtovanje
Končni izdelek e
 Osnovna rezultata načrtovanja sta načrt
podatkovne baze in načrt programskih modulov,
s katerima pripravimo vse potrebno za izdelavo
podatkovnih in programskih komponent IR.
 V fazi načrtovanja izdelamo tudi:
 načrt dokumentacije,
 načrt testiranja in
 načrt namestitve in uvedbe.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 207 -
Načrtovanje
Vloge in koraki 
 Pri načrtovanju sodelujejo načrtovalec
podatkovne baze, načrtovalec aplikacije, skrbnik
podatkovne baze, izdelovalec dokumentacije,
uvajalec, poslovni lastnik in končni uporabnik.
 Tipične aktivnosti načrtovanja so:






Izdelava načrta podatkovne baze,
Izdelava načrta programskih modulov,
Izdelava načrta dokumentacije,
Izdelava načrta testiranja,
Izdelava načrta namestitve in uvedbe in
Predstavitev načrta naročniku.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 208 -
Načrtovanje
Shema postopka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije

- 209 -
Načrtovanje
Shema postopka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije

- 210 -
Načrtovanje – Izdelava načrta PB
Namen aktivnosti
 Namen aktivnosti je na podlagi konceptualnega
modela iz analize izdelati logični podatkovni
model in izvesti ostale korake, potrebne za
vzpostavitev učinkovite fizične podatkovne baze.
 V sklopu faze načrtovanja izdelamo logični
podatkovni model in določimo sistem pravic za
uporabo podatkov in programskih modulov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 211 -
Načrtovanje – Izdelava načrta PB
Izdelava logičnega podatkovnega modela
 Logično modeliranje podatkovne baze nastopi za
konceptualnim modeliranjem.
 Osnova logičnega modela je jezik, ki je razumljiv
ciljnemu SUPB.
 Če izberemo relacijski SUPB, potem govorimo o
relacijskem modelu.
svet
mentalni model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
konceptualni model
- 212 -
logični model
PB
Načrtovanje – Izdelava načrta PB
Podpora CASE orodij
Konceptualni
PM
Odločitev o PB:
-Relacijska
-Hierarhična
-Objektna
Logični PM
i-CASE
Logično načrtovanje
Fizični PM
(skripta)
Reverse Engineering
SUPB
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Podatkovna
baza
- 213 -
ODBC
Načrtovanje – Izdelava načrta PB
Prehod iz konceptualnega v logični model
 Prehod iz konceptualnega v logični model je
navadno avtomatiziran s strani CASE orodij.
Primer: vrsta baze: relacijska
SUPB: Oracle
ANALIZA
NAČRTOVANJE
Konceptualni model
Relacijski model
Entitetni tip
Relacija / Tabela
Atribut
Atribut / Stolpec
Enolični identifikator
Ključ
Povezava 1:n
Tuji ključ
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Vmesna tabela
Povezava m:n
- 214 -
Načrtovanje – Izdelava načrta PB
Tipični koraki pri izdelavi relacijskega modela
 Tipični koraki:







Za entitetne tipe kreiraj relacije
Preveri relacije z normalizacijo
Preveri relacije s pregledom uporabniških transakcij
Preveri omejitve integritete
Preveri model z uporabnikom
Združi lokalne modele v globalni model (opcijsko)
Preveri zmožnosti modela za razširitve
 V nadaljevanju si bomo pogledali nekaj osnov o
relacijskem modelu.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 215 -
Načrtovanje – Izdelava načrta PB
Osnovni koncepti relacijskega modela
 Pri relacijskem modeliranju se srečamo z
naslednjimi koncepti:









Relacija
Atribut
Domena
n-terica
Funkcionalna odvisnost
Ključ
Pogled
Normalizacija
…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 216 -
Načrtovanje – Izdelava načrta PB
Predstava relacije
 Relacijo si lahko predstavljamo kot
dvodimenzionalno tabelo s stolpci in vrsticami.
 Velja za logično strukturo podatkovne baze in ne za fizično.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ime
Starost
(v letih)
Teža
(v kg)
Tine
15
50
Meta
20
45
Jure
40
80
Ana
5
10
Relacija
- 217 -
Načrtovanje – Izdelava načrta PB
Atribut relacije
 Atribut je poimenovani stolpec relacije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ime
Starost
(v letih)
Teža
(v kg)
Tine
15
50
Meta
20
45
Jure
40
80
Ana
5
10
Atribut relacije
- 218 -
Načrtovanje – Izdelava načrta PB
Domena relacije
 Domena je množica dovoljenih vrednosti enega
ali več atributov, ki so vključeni v to domeno.
 Primeri domen:
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 219 -
Načrtovanje – Izdelava načrta PB
Osnovne karakteristike relacije
 N-terica je ena vrstica v relaciji.
 Števnost relacije je število n-teric relacije.
 Stopnja relacije je število atributov v relaciji.
Stopnja relacije
Števnost relacije
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ime
Starost
(v letih)
Teža
(v kg)
Tine
15
50
Meta
20
45
Jure
40
80
Ana
5
10
- 220 -
n-terica relacije
Načrtovanje – Izdelava načrta PB
Relacijska podatkovna baza in normalizacija
 Relacijska podatkovna baza je množica
normaliziranih relacij z enoličnimi imeni.
 Normalizirane relacije so relacije, ki ustrezajo
normalnim oblikam. Te določajo pravila, ki jim
morajo relacije zadoščati, da pri vnašanju,
spreminjanju in brisanju podatkov ne prihaja do
anomalij.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 221 -
Načrtovanje – Izdelava načrta PB
Matematična definicija relacije
 Relacijo matematično definiramo kot podmnožico
kartezičnega produkta množic, ki predstavljajo
domeno vrednosti atributov relacije.
r  D1  D2  ... Dn
D1 je domena atributa A1:
množica vrednosti, ki jih A1
lahko zavzame!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 222 -
Načrtovanje – Izdelava načrta PB
Relacijska shema
 Vsaki relaciji pripada relacijska shema.
 Relacijsko shemo sestavlja oznaka sheme R ter
lista oznak atributov Ai s pripadajočimi oznakami
domen Di:
 R (A1: D1, A2: D2, ..., An: Dn)
 Relacijska shema predstavlja semantiko ali
pomen relacije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 223 -
Načrtovanje – Izdelava načrta PB
Relacijska shema
Ime
Starost (v
letih)
Teža (v kg)
Tine
15
50
Meta
20
45
Jure
40
80
Ana
5
10
Shema relacije
Relacija, predstavljena kot tabela
Sh(r) = Oseba(Ime: I, Starost: C, Teža: C)
Domena, ki obsega imena: I  {Tine, Meta, Jure, Ana}
Domena, ki obsega interval celih števil: C  1, 2,... 200
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 224 -
Shema relacije
Domene atributov
relacije
Načrtovanje – Izdelava načrta PB
Lastnosti relacij
 Enoličnost:
 Ime relacije je enolično. V relacijski shemi podatkovne baze
ni dveh relacij z enakim imenom;
 Vsak atribut relacije ima enolično ime. V isti relaciji ni dveh
atributov, ki bi imela isto ime;
 Vsaka n-terica relacije je enolična  v relaciji ni dveh enakih
n-teric.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 225 -
Načrtovanje – Izdelava načrta PB
Lastnosti relacij
 Atomarnost:
 Vsaka celica tabele, ki predstavlja relacijo, vsebuje natančno
eno atomarno vrednost.
 Zaloga vrednosti:
 Vrednosti nekega atributa so vse iz iste domene.
 Nepomembnost vrstnega reda:
 Vrstni red atributov v relaciji je nepomemben.
 Vrstni red n-teric v relaciji je nepomemben.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 226 -
Načrtovanje – Izdelava načrta PB
Lastnosti relacij – primer
Ime
Starost (v letih),
teža (v kg)
Tine
S15_T50
Meta
S20_T45
Jure
S40_T80
Ana
S5_T10
Celice ne vsebujejo atomarnih vrednosti
Zakonca Leto poroke
(celo število)
Tine,
Meta
1995
Ana,
Jure
1980
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Celice vsebujejo več vrednosti
- 227 -
Načrtovanje – Izdelava načrta PB
Funkcionalne odvisnosti
 Predpostavimo, da obstaja relacijska shema R z
množico atributov, katere podmnožici sta X in Y.
 V relacijski shemi R velja X  Y (X funkcionalno
določa Y oziroma Y je funkcionalno odvisen od
X), če v nobeni relaciji, ki pripada shemi R, ne
obstajata dve n-terici, ki bi se ujemali v
vrednostih atributov X in se ne bi ujemali v
vrednostih atributov Y.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 228 -
Načrtovanje – Izdelava načrta PB
Funkcionalne odvisnosti - primer
 Imamo relacijo s shemo
 Izpit( VpŠt, Priimek, Ime, ŠifraPredmeta, DatumIzpita,
 OcenaPisno, OcenaUstno)
 z naslednjim pomenom:
 Študent z vpisno številko VpŠt ter priimkom Priimek in
imenom Ime je na DatumIzpita opravljal izpit iz predmeta s
šifro ŠifraPredmeta. Dobil je oceno OcenaPisno in
OcenaUstno.
 Funkcionalne odvisnosti sheme Izpit so:
 F  { VpŠt  (Priimek, Ime), (VpŠt, ŠifraPredmeta,
DatumIzpita)  (OcenaPisno, OcenaUstno) }
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 229 -
Načrtovanje – Izdelava načrta PB
Ključi relacije
 Ker je relacija množica n-teric, so v njej vse nterice ločene med seboj.
 Za sklicevanje na posamezno n-terico ni potrebno
poznati vseh vrednosti atributov n-terice, če v
shemi nastopajo funkcionalne odvisnosti.
 Množici atributov, ki določajo vsako n-terico,
pravimo ključ relacije oziroma ključ relacijske
sheme.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 230 -
Načrtovanje – Izdelava načrta PB
Ključi relacije
 Predpostavimo, da obstaja relacijska shema z
atributi A1 A2, ... An, katere podmnožica je
množica atributov X.
 Atributi X so ključ relacijske sheme oziroma
pripadajočih relacij, če sta izpolnjena naslednja
dva pogoja:
 X  A1 A2 ... An
 ne obstaja X’, ki bi bila prava podmnožica od X in ki bi tudi
funkcionalno določala A1 A2 ... An
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 231 -
Načrtovanje – Izdelava načrta PB
Ključi relacije
 Poznamo več vrst ključev:




Kandidat za ključ (a key candidate)
Primarni ključ (primary key)
Superključ (superkey)
Tuji ključ (foreign key)
 Kandidat za ključ je vsaka podmnožica atributov
relacije, ki relacijo enolično določa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 232 -
Načrtovanje – Izdelava načrta PB
Ključi relacije
 Primarni ključ je tisti kandidat za ključ, ki ga
izberemo za shranjevanje relacij v fizični
podatkovni bazi.
 Superključ je vsaka množica atributov, v kateri je
vsebovan ključ  ključ je podmnožica
superključa.
 Tuji ključ je množica atributov, v okviru ene
relacije, ki je enaka kandidatu za ključ neke
druge ali iste relacije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 233 -
Načrtovanje – Izdelava načrta PB
Ključi relacije primer
ARTIKEL
Šifra
Naziv
Zaloga
A10
Telovadni copati Nike
10
A12
Trenerka Bali
4
BC80
Moška jakna QuickSilver
1
X12
Ženska jakna QuickSilver
0
Primarni ključ v tabeli Artikel
RAČUN
Primarni ključ v tabeli Račun
Račun
Šifra artikla
Količina
15/05
A10
1
15/05
X12
1
Tuji ključ v tabeli Račun  kaže na primarni ključ v tabeli Artikel
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 234 -
Načrtovanje – Izdelava načrta PB
Omejitve nad podatki
 Za celovitost ter skladnost podatkov v podatkovni
bazi skrbimo s pomočjo omejitev.
 Poznamo več vrst omejitev:
 Omejitve domene (Domain constraints)
 Pravila za celovitost podatkov (Integrity constraints)
• Celovitost entitet (Entity Integrity)
• Celovitost povezav (Referential Integrity)
 Števnost (Multyplicity)
 Splošne omejitve (General constraints)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 235 -
Načrtovanje – Izdelava načrta PB
Omejitve nad podatki
 Omejitev entitete
 V osnovni relaciji ne sme biti noben atribut, ki je del ključa,
enak Null.
 Omejitve povezav
 Če v relaciji obstajajo tuji ključi, potem morajo:
• (a) njihove vrednosti ustrezati tistim, ki so v obliki ključa zapisane v
eni izmed n-teric neke druge ali iste relacije
• (b) ali pa mora biti tuji ključ v celoti enak Null.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 236 -
Načrtovanje – Izdelava načrta PB
Omejitve nad podatki
 Splošne omejitve
 Dodatna pravila, ki jih določi uporabnik ali skrbnik
podatkovne baze, ki definirajo ali omejujejo nek vidik
področja, za katerega je narejena podatkovna baza.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 237 -
Načrtovanje – Izdelava načrta PB
Omejitve nad podatki – primeri omejitev
Primarni ključ  ne sme biti NULL
Pedagog
EMŠO
DavcnaSt
Ime
Priimek
DtmRoj
Katedra
N13 <pk>
C9 not null
C20
C20
D
N3 <fk>
Zahtevamo obveznost podatka
Katedra
Katedra
Naziv
StLab
Vodja
Omejitev povezave
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 238 -
N3 <pk>
C20 not null
N2
N3 <fk>
Načrtovanje – Izdelava načrta PB
Pogledi
 Pogled je navidezna relacija, ki ne obstaja v
relacijski bazi, temveč se dinamično kreira takrat,
ko nekdo po njej povprašuje.
 Vsebina pogleda je definirana kot poizvedba nad
eno ali več osnovnimi relacijami.
 Pogledi so dinamični  spremembe nad
osnovnimi relacijami, katerih atributi so zajeti
tudi v pogledu, so v pogledu takoj vidne.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 239 -
Načrtovanje – Izdelava načrta PB
Namen uporabe pogledov
 Zakaj uporabljamo poglede:
 Varnost: predstavljajo odličen mehanizem za zagotavljanje
varnosti  skrivajo posamezne dele podatkovne baze pred
določenimi uporabniki.
 Prilagojenost uporabnikom: uporabnikom dajejo možnost, da
do podatkov dostopajo na prilagojen način  isti podatki so
lahko s strani različnih uporabnikov v istem času vidni na
različne načine.
 Poenostavitev: poenostavljajo kompleksne operacije nad
osnovnimi relacijami.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 240 -
Načrtovanje – Izdelava načrta PB
Spreminjanje pogledov
 Vse spremembe nad osnovnimi relacijami morajo
biti takoj vidne tudi v pogledih nad temi
relacijami.
 Če spremenimo podatke v pogledu, se morajo
spremembe poznati tudi v osnovnih relacijah, na
katere se te spremembe nanašajo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 241 -
Načrtovanje – Izdelava načrta PB
Spreminjanje pogledov
 V pogledih niso možne vse spremembe. Veljajo
naslednje omejitve:
 Nad pogledom so možne spremembe, če pogled zajema eno
samo osnovno relacijo ter vključuje atribute, ki so kandidat
za ključ relacije.
 Če pogled zajema več relacij, spremembe niso možne.
 Če je pogled pridobljen z agregacijo ali grupiranjem n-teric,
spremembe niso možne.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 242 -
Načrtovanje – Izdelava načrta PB
Primer pogleda
ARTIKEL
RAČUN
Šifra
Naziv
Zaloga
Račun
Šifra artikla
Količina
A10
Telovadni copati Nike
10
15/05
A10
1
A12
Trenerka Bali
4
15/05
X12
1
BC80
Moška jakna QuickSilver
1
16/05
A10
3
X12
Ženska jakna QuickSilver
0
17/05
A10
1
SELECT A.sifra, A.naziv, sum(R.kolicina) AS Prodanih
FROM artikel A, racun R
WHERE A.sifra = R.sifra
GROUP BY A.sifra, A.naziv
Šifra
Naziv
Prodanih
A10
Telovadni copati Nike
5
X12
Ženska jakna QuickSilver
1
...
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 243 -
Načrtovanje – Izdelava načrta PB
Normalizacija
 Normalizacija je postopek, s katerem pridemo do
množice primernih relacij, ki ustrezajo potrebam
poslovne domene.
 Nekaj lastnosti primernih relacij:
 Relacije imajo minimalen nabor atributov  zgolj tiste, ki so
potrebni za pokritje potreb poslovnega sistema;
 Atributi, ki so logično povezani, so zajeti v isti relaciji;
 Med atributi relacij je minimalna redundanca  vsak atribut
(razen tujih ključev) je predstavljen samo enkrat.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 244 -
Načrtovanje – Izdelava načrta PB
Normalizacija
 Prednosti uporabe podatkovnih baz, ki jih
sestavljajo množice primernih relacij, so:
 Enostavnejša dostop do podatkov ter vzdrževanje podatkov;
 Večja učinkovitost;
 Boljša izraba diskovnih kapacitet.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 245 -
Načrtovanje – Izdelava načrta PB
Normalizacija – ažurne anomalije
 Relacije, ki vsebujejo odvečne podatke lahko
povzročajo anomalije pri spreminjanju podatkov
 govorimo o ažurnih anomalijah.
 Poznamo več vrst anomalij:
 Anomalije pri dodajanju n-teric v relacijo
 Anomalije pri brisanju n-teric iz relacije
 Anomalije pri spreminjanju n-teric
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 246 -
Načrtovanje – Izdelava načrta PB
Normalizacija – ažurne anomalije pri dodajanju
 Primeri anomalij:
 Če želimo dodati podatke o novih članih (staff) za neko
organizacijsko enoto (branch) moramo vpisati tudi vse
podrobnosti o organizacijski enoti.
 Če želimo dodati podatke o novi organizacijski enoti, ki še
nima nobenega člana, moramo v vsa polja , ki člane
opisujejo, vpisati Null.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 247 -
Načrtovanje – Izdelava načrta PB
Normalizacija – ažurne anomalije pri brisanju
 Primeri anomalij:
 Če iz relacije zbrišemo n-terico, ki predstavlja zadnjega člana
v neki organizacijski enoti, zgubimo tudi podatke o tej
organizacijski enoti.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 248 -
Načrtovanje – Izdelava načrta PB
Normalizacija – ažurne anomalije pri spreminjanju
 Primeri anomalij:
 Če želimo spremeniti vrednost nekega atributa določene
organizacijske enote (npr. naslov), moramo popraviti vse
n-terice, v katerih takšna vrednost atributa nastopa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 249 -
Načrtovanje – Izdelava načrta PB
Normalne oblike
 Postopku preoblikovanja relacij v obliko, pri
kateri do ažurnih anomalij ne more priti, pravimo
normalizacija.
 Obstaja več stopenj normalnih oblik:







1NO – Prva normalna oblika
2NO – Druga normalna oblika
3NO – Tretja normalna oblika in
4PNO – Četrta poslovna normalna oblika
BCNO – Boyce Codova normalna oblika
4NO – Četrta normalna oblika
5NO – Peta normalna oblika
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 250 -
Načrtovanje – Izdelava načrta PB
Normalizacija – prva normalna oblika
 Relacija je v prvi normalni obliki, če:
 Nima ponavljajočih atributov  ne obstajajo atributi ali
skupine atributov, ki bi imele več vrednosti pri isti vrednosti
ostalih atributov (na presečišču ene vrstice in enega stolpca
je več vrednosti)
 Ima definiran primarni ključ in določene funkcionalne
odvisnosti
 Koraki:
 Odstranimo ponavljajoče atribute
 Določimo funkcionalne odvisnosti
 Določimo primarni ključ
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 251 -
Načrtovanje – Izdelava načrta PB
Indeks( VŠ, priimek, ime, pošta, kraj, ( šifra predmeta, naziv, ocena ) )
Skupina ponavljajočih se atributov.
VŠ
priimek
ime
pošta
kraj
šifra predmeta
naziv
ocena
64010632
Bratina
Simon
4100
Kranj
20020
20021
20033
IS
TPO
IPI
10
8
8
64016209
Bizjak
Tadeja
2250
Ptuj
20060
20033
E1
IPI
9
6
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 252 -
Načrtovanje – Izdelava načrta PB
Indeks( VŠ, priimek, ime, pošta, kraj, ( šifra predmeta, naziv, ocena ) )
Odpravimo ponavljajoče atribute
Indeks( VŠ, priimek, ime, pošta, kraj, šifra predmeta, naziv, ocena )
Identificiramo funkcionalne odvisnosti
F  { VŠ  (priimek, ime, pošta, kraj), šifra predmeta  naziv, pošta
 kraj, (VŠ, šifra predmeta)  ocena }
Določimo primarni ključ
Indeks( VŠ, priimek, ime, pošta, kraj, šifra predmeta, naziv, ocena )
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 253 -
Načrtovanje – Izdelava načrta PB
VŠ
priimek
ime
pošta
kraj
šifra predmeta
naziv
ocena
64010632
Bratina
Simon
4100
Kranj
20020
IS
10
64010632
Bratina
Simon
4100
Kranj
20021
TPO
8
64010632
Bratina
Simon
4100
Kranj
20033
IPI
8
64016209
Bizjak
Tadeja
2250
Ptuj
20060
E1
9
64016209
Bizjak
Tadeja
2250
Ptuj
20033
IPI
6
VŠ
priimek
ime
pošta
kraj
šifra predmeta
naziv
ocena
64010632
Bratina
Simon
4100
Kranj
20020
20021
20033
IS
TPO
IPI
10
8
8
64016209
Bizjak
Tadeja
2250
Ptuj
20060
20033
E1
IPI
9
6
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 254 -
Načrtovanje – Izdelava načrta PB
Normalizacija – druga normalna oblika
 Relacija je v drugi normalni obliki:
 Če je v prvi normalni obliki in
 Ne vsebuje parcialnih odvisnosti  noben atribut, ki ni del
ključa, ni funkcionalno odvisen le od dela primarnega ključa,
temveč od celotnega ključa
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 255 -
Načrtovanje – Izdelava načrta PB
!
Indeks( VŠ, šifra predmeta, priimek, ime, pošta, kraj, naziv, ocena )
!
Relacijo razbijemo
Študent( VŠ, priimek, ime, pošta, kraj)
Predmet( šifra predmeta, naziv)
Indeks( #VŠ, #šifra predmeta, ocena)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 256 -
Načrtovanje – Izdelava načrta PB
VŠ
priimek
ime
pošta
kraj
šifra predmeta
naziv
ocena
64010632
Bratina
Simon
4100
Kranj
20020
IS
10
64010632
Bratina
Simon
4100
Kranj
20021
TPO
8
64010632
Bratina
Simon
4100
Kranj
20033
IPI
8
64016209
Bizjak
Tadeja
2250
Ptuj
20060
E1
9
64016209
Bizjak
Tadeja
2250
Ptuj
20033
IPI
6
šifra
predmeta
naziv
20020
IS
20021
šifra
predmeta
ocena
64010632
20020
10
TPO
64010632
20021
8
20033
IPI
64010632
20033
8
20060
E1
64016209
20060
9
20033
IPI
64016209
20033
6
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
VŠ
- 257 -
VŠ
priimek
ime
pošta
kraj
64010632
Bratina
Simon
4100
Kranj
64016209
Bizjak
Tadeja
2250
Ptuj
Načrtovanje – Izdelava načrta PB
Normalizacija – tretja normalna oblika
 Relacija je v tretji normalni obliki:
 Če je v drugi normalni obliki in
 Če ne vsebuje tranzitivnih funkcionalnih odvisnosti  med
atributi, ki niso del primarnega ključa, ni odvisnosti.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 258 -
Načrtovanje – Izdelava načrta PB
!
Študent( VŠ, priimek, ime, pošta, kraj)
Predmet( šifra predmeta, naziv)
Indeks( #VŠ, #šifra predmeta, ocena)
Relacijo razbijemo
Študent( VŠ, priimek, ime, #pošta)
Pošta(pošta, kraj)
Predmet( šifra predmeta, naziv)
Indeks( #VŠ, #šifra predmeta, ocena)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 259 -
Načrtovanje – Izdelava načrta PB
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
VŠ
priimek
ime
pošta
kraj
64010632
Bratina
Simon
4100
Kranj
64016209
Bizjak
Tadeja
2250
Ptuj
VŠ
priimek
ime
pošta
pošta
kraj
64010632
Bratina
Simon
4100
4100
Kranj
64016209
Bizjak
Tadeja
2250
2250
Ptuj
- 260 -
Načrtovanje – Izdelava načrta PB
Normalizacija – četrta poslovna normalna oblika
 Relacija je v četrti poslovni normalni obliki, če:
 je v tretji normalni obliki in
 v relaciji ne obstajajo atributi, ki bi bili odvisni od vrednosti
primarnega ključa.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 261 -
Načrtovanje – Izdelava načrta PB
Študent( VŠ, priimek, ime, #pošta, datum plačila šolnine, rok diplome)
Za izredne študenta
Študent( VŠ, priimek, ime, #pošta)
Redni študent( #VŠ, rok diplome)
Izredni študent( #VŠ, datum plačila šolnine)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 262 -
Za redne študenta
Načrtovanje – Izdelava načrta PB
VŠ
Priimek
Ime
64010632
Bratina
Simon
64016209
Bizjak
Tadeja
19.4.2002
64010670
Berce
Marjan
12.4.2004
64620010
Mele
Silvana
1.4.2005
65120987
Leban
Tibor
15.7.2005
VŠ
Priimek
Ime
VŠ
Datum plačila šolnine
64010632
Bratina
Simon
64016209
19.4.2002
64016209
Bizjak
Tadeja
64010670
12.4.2004
64010670
Berce
Marjan
64620010
Mele
Silvana
VŠ
Rok diplome
65120987
Leban
Tibor
64010632
15.3.2005
64620010
1.4.2005
65120987
- 263 -
15.7.2005
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Datum plačila šolnine
Rok diplome
15.3.2005
Načrtovanje – Izdelava načrta PB
Tipični koraki pri izdelavi relacijskega modela
 Tipični koraki:







Za entitetne tipe kreiraj relacije
Preveri relacije z normalizacijo
Preveri relacije s pregledom uporabniških transakcij
Preveri omejitve integritete
Preveri model z uporabnikom
Združi lokalne modele v globalni model (opcijsko)
Preveri zmožnosti modela za razširitve
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 264 -
Ponovitev
Načrtovanje – Izdelava načrta PB
Primer pretvorbe konceptualnega v relacijski model
Student
Študent
Vpisna številka
Priimek
Ime
Naslov
Telefon
E-mail
Status
…
VpisSt = VpisSt
Izpit
Zap. št. polaganja
Ocena pisno
Ocena ustno
Datum ocene
Izpit
ZapStPol
VpisSt
OcPisno
OcUstno
DatumOc
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
N2
N8
N2,2
N2,2
D
- 265 -
<pk>
<pk, fk>
VpisSt
Priimek
Ime
Ulica
Posta
Drzava
GSM
Tel
Email
Status
…
N8
C20
C20
C25
N4
C20
N15
N15
C25
N1
<pk>
null
Načrtovanje – Izdelava načrta PB
Primer pretvorbe konceptualnega v relacijski model
 Dodatno poskrbimo za:





Indekse
Integriteto povezav
Druge omejitve
Poglede
…
Student
VpisSt = VpisSt
Izpit
ZapStPol
VpisSt
OcPisno
OcUstno
DatumOc
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
N2
N8
N2,2
N2,2
D
- 266 -
<pk>
<pk, fk>
VpisSt
Priimek
Ime
Ulica
Posta
Drzava
GSM
Tel
Email
Status
…
N8
C20
C20
C25
N4
C20
N15
N15
C25
N1
<pk>
null
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
 Načrtovanje
•
•
•
•
•
•
Izdelava načrta podatkovne baze,
Izdelava načrta programskih modulov,
Izdelava načrta dokumentacije,
Izdelava načrta testiranja,
Izdelava načrta namestitve in uvedbe in
Predstavitev načrta naročniku.
 Izvedba;
 Testiranje;
 Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 267 -
Načrtovanje – izdelava načrta modulov
Namen aktivnosti
 Namen aktivnosti je prikazati, kako bodo
posamezne funkcije in procesi, identificirani v
sklopu analize, realizirani v okviru rešitve.
Analiza
Načrt
Proces
Programski modul
Programski modul
Programski modul
Programski modul
Funkcija
Proces
Funkcija
Funkcija
Proces
Funkcija
Funkcija
Programski modul
Programski modul
Programski modul
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 268 -
Načrtovanje – izdelava načrta modulov
Namen aktivnosti
 Funkcije in procesi iz analize predstavljajo logične
sklope sistema. V fazi načrtovanja jih pretvorimo
v fizične oziroma programske sklope ali module.
 Pretvorba ni nujno 1:1
 Implementacija enega logičnega sklopa je lahko izvedena z
več programskimi sklopi.
 En programski sklop lahko implementira več logičnih enot.
Logična enota
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
1..n
1..n
- 269 -
Fizična enota
Načrtovanje – izdelava načrta modulov
Programski moduli
 Tipi programskih modulov:
 Zaslonska maska
 Obdelava
 Poročilo ali izpis
Programski
modul
Zaslonska
maska
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Izpis/
poročilo
- 270 -
Paketna
obdelava
Načrtovanje – izdelava načrta modulov
Strukturni diagram
 Strukturo programskih modulov prikažemo s
pomočjo strukturnega diagrama.
 Lastnosti strukturnih diagramov:
 Prikazuje programske module, s katerih bo sestavljena
informacijska rešitev;
 Prikazuje odvisnost med programskimi moduli ter podatke, ki
se med moduli prenašajo;
 Omogoča prikaz zaporedja, izbire in ponavljanja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 271 -
Načrtovanje – izdelava načrta modulov
Strukturni diagram
 Lastnosti strukturnih diagramov:
 Moduli so organizirani v hierarhijo, podobno kot funkcije v
funkcionalni razgradnji.
 Na najvišjem mestu je vseobsegajoč modul ali koren. Na
naslednjem nivoju so moduli, ki jih koren lahko kliče
(analogno kot izbire v meniju).
 Moduli komunicirajo med seboj s pomočjo parametrov:
• nosilci podatkov
• kontrolne zastavice
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 272 -
Načrtovanje – izdelava načrta modulov
Strukturni diagram – primer
Dodaj
izpitni rok
Preveri
poslovna
pravila
Izračunaj
dan roka
dan roka
podatek
kontrolna zastavica
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 273 -
pravila številka
OK
kršenega
pravila
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
 Načrtovanje
•
•
•
•
•
•
Izdelava načrta podatkovne baze,
Izdelava načrta programskih modulov,
Izdelava načrta dokumentacije,
Izdelava načrta testiranja,
Izdelava načrta namestitve in uvedbe in
Predstavitev načrta naročniku.
 Izvedba;
 Testiranje;
 Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 274 -
Načrtovanje – načrt dokumentacije
Izdelava načrta dokumentacije
 Namen aktivnosti je določiti obseg in strukturo
dokumentacije ter izbrati ustrezne standarde in
vzorce za dokumentacijo.
 Upoštevamo zahteve naročnika iz zajema in
specifikacije zahtev.
 Določimo tudi vire za dokumentacijo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 275 -
Načrtovanje – načrt dokumentacije
Izdelava načrta dokumentacije
 Potrebno upoštevati, da lahko nekatere dele
dokumentacije izdelamo šele, ko je del sistema,
ki ga dokumentiramo, izdelan:
 Npr. posnetke zaslonov za uporabniško dokumentacijo lahko
izdelamo šele, ko je uporabniški vmesnik izdelan in smo
prepričani, da se ne bo več spreminjal.
 V grobem lahko dokumentacijo razdelimo na:
 uporabniško dokumentacijo,
 sistemsko-tehnično dokumentacijo ter
 navodila za operativno skrbništvo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 276 -
Načrtovanje – načrt dokumentacije
Izdelava načrta dokumentacije
 Uporabniška dokumentacija je osnovna pomoč za
uporabnike oziroma uporabo rešitve.
 Možne različne oblike…
Vir: ERP sistem Pantheon
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 277 -
Načrtovanje – načrt dokumentacije
Izdelava načrta dokumentacije
 Sistemsko-tehnična dokumentacija dokumentira
informacijsko rešitev s sistemsko-tehničnega
vidika. Npr.:
Podatkovni model;
Arhitektura sistema;
Komponente sistema;
Opis testnega, produkcijska in razvojnega okolja;
Opis sistemske programske opreme in druge infrastrukture,
ki je potrebna za delovanje sistema;
 …





RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 278 -
Načrtovanje – načrt dokumentacije
Izdelava načrta dokumentacije
 Navodila za operativno skrbništvo zajemajo opis
ključnih postopkov, ki so potrebni za operativno
delovanje sistema. Npr:






Postopek izdelave varnostnih kopij;
Postopek ustavitve sistema;
Postopek ponovnega zagona sistema;
Postopek namestitve nadgradenj in popravkov;
Postopek vzpostavitve nadomestnega sistema;
…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 279 -
Načrtovanje – načrt dokumentacije
Izdelava načrta dokumentacije
 V okviru načrta dokumentacije izdelamo vzorce
dokumentacije in jih predstaviti naročniku ter
uporabniku.
 Cilj je uskladitev o obliki dokumentacije.
 Nivo podrobnosti in obseg dokumentacije je
odvisen od dogovora med izvajalcem in
naročnikom. Praviloma se podrobneje
dokumentirajo samo pomembnejši podsistemi in
kritični postopki.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 280 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
 Načrtovanje
•
•
•
•
•
•
Izdelava načrta podatkovne baze,
Izdelava načrta programskih modulov,
Izdelava načrta dokumentacije,
Izdelava načrta testiranja,
Izdelava načrta namestitve in uvedbe in
Predstavitev načrta naročniku.
 Izvedba;
 Testiranje;
 Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 281 -
Načrtovanje – načrt testiranja
Izdelava načrta testiranja
 Testiranje, ki intenzivno poteka v fazi izvedbe ter
v okviru namestitve in uvedbe sistema, je nujno
predhodno načrtovati.
 Načrt testiranja zajema:
 Načrt poteka testiranja
 Načrte za izvedbo posameznih testov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 282 -
Načrtovanje – načrt testiranja
Načrt poteka testiranja
 Osnovni potek testiranja, vrste testov in vsebino
testiranja določa postopek testiranja.
 Z načrtom poteka testiranja, ki ga izdelamo v
sklopu načrtovanja, podrobneje določimo
zaporedje izvajanja posameznih testov po sklopih
informacijske rešitve in po okoljih.
 Načrt poteka testiranja je odvisen od načrta
programskih modulov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 283 -
Načrtovanje – načrt testiranja
Načrt za izvedbo testa
 Z načrti za izvedbo posameznih testov
podrobneje določimo, kaj bomo v okviru
posameznega testa, ki je predviden v načrtu
poteka testiranja, testirali.
 V odvisnosti od namena testiranja, faze testiranja
in okolja testiranja podrobneje določimo vsebino
testiranja
 npr. testiranje funkcionalnosti, testiranje GUI, testiranje
vmesnikov, testiranje prevedbe podatkov, testiranje drugih
nefunkcionalnih zahtev IR ipd.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 284 -
Načrtovanje – načrt testiranja
Načrt za izvedbo testa
 Načrt za izvedbo testa mora opredeliti vsaj:
 Namen testiranja: čemu je namenjena izvedba testa? (npr.
testiranje programske enote »Prijava na izpit«)
 Faza testiranja: v kateri fazi izvajamo testiranje? (npr.
testiranje v fazi razvoja ali testiranje v fazi namestitve in
uvedbe)
 Okolje testiranja: v katerem okolju je potrebno test izvesti?
(npr. v testnem okolju)
 Področje testiranja: kaj se s testom testira? (npr.
funkcionalnost sklopa, integracija sklopa, GUI,...)
 Način izvedbe testiranja: podroben opis, ki pove, kako se
izvede test. Opis je odvisen od področja testiranja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 285 -
Načrtovanje – načrt testiranja
Uporaba scenarijev
 Pri izdelavi načrtov za izvedbo posameznih testov
si pomagamo s testnimi scenariji.
 Testni scenariji opisujejo postopke uporabe
sistema in so zato dobro vodilo za testiranje
funkcionalnosti IR.
 V okviru testiranja po izbranem scenariju
spremljamo uporabo in spreminjanje izbranih
podatkov, na osnovi česar lahko ob zaključku
testa bodisi potrdimo ali ovržemo pravilnost
delovanja modulov/ sklopov, ki so bili v testu
vključeni.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 286 -
Načrtovanje – načrt testiranja
Uporaba scenarijev
 Za izvedbo testa po nekem scenariju je potrebno
določiti vhodne podatke ter pričakovane
rezultate.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 287 -
Načrtovanje – načrt testiranja
Opredelitev scenarija
Načrt poteka testiranja
Razvojno okolje
T1
T2
T3
T4
T5
T6
T8
Testno oklolje
T7
Tn-1
Produkcijsko okolje
Tn
Scenarij:
 Vhodni podatki
 Pričakovani rezultati
 Načrt za izvedbo testa
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Test T3
- 288 -
Načrtovanje – načrt testiranja
Načrt testiranja – izdelek
 Izdelek načrt testiranja je sestavljen iz več
dokumentov:
 Dokument, ki podaja potek testiranja.
 Dokument, ki podaja scenarije za testiranje funkcionalnih in
nefunkcionalnih zahtev sistema.
 Dokumenti, ki podrobneje opredeljujejo izvedbo posameznih
testov, ki jih načrt poteka testiranja predvideva.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 289 -
Načrtovanje – načrt testiranja
Načrt testiranja – primer načrta poteka testiranja
Načrt poteka testiranja
T1: sklop: prijava na izpit
okolje: razvoj
T2: sklop: odjava iz izpita
okolje: razvoj
T3: sklop: pregled števila prijavljenih kandidatov
okolje: razvoj
T4: sklop: Izpis seznama prijavljenih kandidatov
okolje: razvoj
T5: sklop: Vnos rezultatov
okolje: razvoj
T6: sklop: Objava rezultatov
okolje: razvoj
T7: sklop: Opravljanje pisnih izpitov (integracijski test)
okolje: testno
Razvojno okolje
T8: sklop: Vnos obvestil
T
T
okolje: razvoj
Testno oklolje
....
Tn-1: sklop: celoten sistem (potrditveni test)
Produkcijsko okolje
okolje: testno
Tn: sklop: celoten sistem (končni test)
okolje: produkcijsko
1
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
2
- 290 -
T3
T4
T5
T6
T8
T7
Tn-1
Tn
Načrtovanje – načrt testiranja
Načrt testiranja – primer načrta za izvedbo testa
NAČRT TESTIRANJA ZA TEST T2
Namen testiranja: testiranje sklopa odjava iz izpita
Faza testiranja: testiranje v fazi razvoja
Okolje testiranja: razvojno okolje
Področje testiranja: funkcionalnost sklopa, GUI
Način izvedbe testiranja:
1. Testiranje funkcionalnosti: testirati po scenarijih S1, S3, S4, S8
2. Testiranje GUI: preveriti skladnost elementov GUI z načrtom
programskega modula/podsistema PM3
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 291 -
Načrtovanje – načrt testiranja
Načrt testiranja – primer scenarija
OZNAKA SCENARIJA: S3
Kratek opis: odjava iz izpitnega roka, če je rok za odjavo že potekel
Koraki scenarija:
1. v sistem se prijaviti kot študent [Š]
2. prijaviti se na razpisan rok za izbran datum in predmet [I]
3. na strežniku spremeniti sistemski datum na trenutni datum [D]
4. poskusiti se odjaviti iz izpita [I]
Vhodni podatki: Š, I, D
Pričakovani rezultati:
sistem ne dovoli odjave iz izpita [I]. Če študent izbere opcijo Odjava iz
izpita, dobi sporočilo »Iz izpita se ne morete odjaviti. Rok za odjavo je
že potekel!«.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 292 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
 Načrtovanje
•
•
•
•
•
•
Izdelava načrta podatkovne baze,
Izdelava načrta programskih modulov,
Izdelava načrta dokumentacije,
Izdelava načrta testiranja,
Izdelava načrta namestitve in uvedbe in
Predstavitev načrta naročniku.
 Izvedba;
 Testiranje;
 Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 293 -
Načrtovanje – načrt namestitve in uvedbe
Načrt namestitve in uvedbe
 Naloga aktivnosti je izdelati načrt namestitve in
uvedbe IR v razvojno, testno in produkcijsko
okolje ter uvedbo uporabnikov in skrbnikov za
delo z IR.
 Načrt namestitve in uvedbe v razvojnem okolju
pripravijo člani projektne skupine razvijalca, pri
izdelavi načrta namestitve in uvedbe v testnem
oz. produkcijskem okolju pa sodelujejo tudi
predstavniki končnih uporabnikov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 294 -
Načrtovanje – načrt namestitve in uvedbe
Načrt namestitve in uvedbe
 V načrtu potrebno opredeliti:
 namen in cilj namestitve in uvedbe,
 zahteve okolja za namestitev in uvedbo (pogoji za izvedbo
namestitve in uvedbe, potrebna strojna oprema, potrebna
sistemska programska oprema, povezovanje z ostalo
aplikativno opremo, potrebna dokumentacija),
 naloge namestitve in uvedbe (funkcionalne naloge,
administrativne naloge),
 udeležence namestitve in uvedbe, njihove odgovornosti ter
vključitev uporabnikov in skrbnikov,
 opis sestave paketa za namestitev IR (določitev in označitev
distribucijskih medijev - CD-ROM, diskete, spletne strežniške
datoteke, priložena dokumentacija),
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 295 -
Načrtovanje – načrt namestitve in uvedbe
Načrt namestitve in uvedbe
 V načrtu potrebno opredeliti (nadaljevanje):
 opis procesa namestitve in uvedbe (način izvedbe faz
namestitve, dodelitev pravic za delo, opis prevedbe
podatkov, opis načina uvajanja uporabnikov in skrbnikov,
opis izvedbe potrditvenega testa IR, opis prehoda na nov
sistem),
 merila za uspešno namestitev in uvedbo (ključne točke za
uspešno opravljeno namestitev, seznam ali opis pričakovanih
rezultatov namestitve in uvedbe in dovoljenih odstopanj),
 vrednotenje ugotovljenih napak ali pomanjkljivosti pri
postopku namestitve in uvedbe,
 potrditev oz. odobritev rezultatov namestitve in uvedbe.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 296 -
Načrtovanje – načrt namestitve in uvedbe
Načrt namestitve in uvedbe
 Načrt namestitve in uvedbe se sestoji iz:






načrta
načrta
načrta
načrta
načrta
načrta
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
namestitve IR;
dodelitve pravic;
prevedbe podatkov;
uvajanja
za izvedbo potrditvenega ter končnega testa IR
prehoda na nov sistem
- 297 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:
 Zajem in specifikacija zahtev;
 Analiza
 Načrtovanje
•
•
•
•
•
•
Izdelava načrta podatkovne baze,
Izdelava načrta programskih modulov,
Izdelava načrta dokumentacije,
Izdelava načrta testiranja,
Izdelava načrta namestitve in uvedbe in
Predstavitev načrta naročniku.
 Izvedba;
 Testiranje;
 Namestitev in uvedba
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 298 -
Načrtovanje – predstavitev načrta
Predstavitev načrta naročniku
 Osnovni namen predstavitve je pridobitev
potrditve s strani naročnika o ustreznosti načrta.
 Pri predstavitvi je potrebno upoštevati, da
naročnik navadno nima strokovnih znanj, ki bi
mu omogočala poglobljeno razumevanje načrta,
hkrati pa to tudi ni njegova naloga.
 Naročniku predstavimo le osnovne elemente
načrta.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 299 -
Načrtovanje – predstavitev načrta
Predstavitev načrta naročniku
 Primeren za podrobno predstavitev je načrt
uporabniškega vmesnika  posredno razkriva
tudi druge elemente načrta.
 Na osnovi predstavitve lahko naročnik opozori na
pomanjkljivosti oz. izrazi dodatne želje.
 Aktivnost se zaključi s potrditvijo naročnika
(navadno podpis dokumenta), da načrt ustreza
zahtevam.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 300 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 301 -
Testiranje
Opredelitev in namen
 Glavni namen testiranja je
zagotoviti, da IR deluje tako,
kot smo načrtovali.
 Postopek testiranja se
prepleta skozi ves življenjski
cikel razvoja IR: analiza,
načrtovanje, izvedba in
uvedba.
Podroben opis aktivnosti testiranja je podan po posameznih postopkih.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 302 -
Testiranje
Končni izdelek e
 Končen izdelek testiranja je preverjena in
delujoča IR.
 Skozi potek testiranja nastane tudi več drugih
izdelkov.
 Opisani so pri aktivnostih, kjer nastanejo (glej postopke
analiza, načrtovanje in uvedba).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 303 -
Testiranje
Vloge 
 Testiranje se izvaja na različnih ravneh.
 Prvo testiranje izvaja že sam razvijalec
neposredno ob razvoju. Sledi sistematično
testiranje s strani preizkuševalca, zatem pa še
testiranje s strani končnega uporabnika.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 304 -
Testiranje
Okolje za testiranje
 Za zagotovitev ustrezne ravni varnosti potrebno
za testiranje in produkcijo zagotoviti ločena
okolja.
 Ločena okolja pogosto težko (drago) zagotoviti.
 Najboljši pristop je uporaba ločene strojne
opreme.
 Produkcijsko okolje vedno namestimo na ločeno
strojno opremo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 305 -
Testiranje
Primer okolja za testiranje
Razvojni AS Razvojni PS
Produkcijski AS
Produkcijski PS
Razvoj in vmesno
testiranje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Končno testiranje
in produkcija
Testni AS in PS
- 306 -
Testiranje
Shema postopka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije

- 307 -
Testiranje
Vrste in potek testiranja
 Testiranje poteka na različnih ravneh, v različnih
okoljih in s strani različnih vlog.
 Vrste testov:





Test programskih enot
Test integracije
Sistemski test
Test sprejemljivosti - Potrditveni test
Test sprejemljivosti - Končni test
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 308 -
Testiranje
Vrste in potek testiranja
Vrsta testa
Vsebina testiranja
Test programskih
enot
Uporabniški vmesnik, funkcionalnost
programske enote, skladnost z
zahtevami in standardi
Test integracije
Sistemski test
Test
sprejemljivosti Potrditveni test
Test
sprejemljivosti Končni test
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Okolje
testiranja
Razvojno
okolje,
Test integracije programskih enot, test
integracije v okolje (vmesniki)
Testno
okolje
Testno
okolje
Obnašanje v okolju, zmogljivosti,
dostopnost, nefunkcionalne zahteve
Testno
okolje
Preverjanje delovanja celotne
funkcionalnosti, preverjanje
nefunkcionalnih zahtev
Test funkcionalnosti v omejenem obsegu
v produkcijskem okolju
- 309 -
Testno
okolje
Produkcijsk
o okolje
Vloge
Razvijalec, Preizkuševalec
Integrator, Preizkuševalec,
Ključni uporabnik
Skrbnik podatkovne baze,
Sistemski administrator,
Skrbnik aplikacije, Preizkuševalec,
Ključni uporabnik
Ključni uporabnik
Ključni uporabnik
Testiranje
Vrste in potek testiranja
 Testiranje programski enot
 Testiranje programskih enot je osnovno testiranje,
osredotočeno na ustreznost uporabniškega vmesnika in
funkcionalnosti programske enote glede na podane zahteve
in standarde.
 Izvaja v razvojnem okolju. Najprej se s testiranjem ukvarjajo
razvijalci, ko sami testirajo module oziroma programske
enote, ki so jih razvili.
 Testiranje s strani razvijalcev je navadno nesistematično in
se ne izvaja po načrtu.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 310 -
Testiranje
Vrste in potek testiranja
 Testiranje programski enot (nadaljevanje)
 Ko razvitih več programskih enot (funkcionalni sklop),
testiranje prevzame preizkuševalec. Skladno z načrtom
testiranja preveri pravilnost funkcionalnega sklopa, preden
se le-ta namesti v testno okolje.
 Testiranje programskih enot se izvaja tudi v testnem okolju.
Sodelujeta preizkuševalec in ključni uporabnik. Ustreznost
sklopa potrdi ključni uporabnik.
 Če je moč testiranje v testnem in razvojnem okolju izvajamo
vzporedno.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 311 -
Testiranje
Vrste in potek testiranja
 Testiranje integracije
 Testiranje integracije namenjeno testiranju povezav med
programskimi enotami ter testiranju vmesnikov - povezav IR
z okoljem.
 Testiranje integracije poteka v več korakih, vzporedno z
razvojem. Testiranje vmesnikov z okoljem navadno
izvedemo na koncu za celoten sistem.
 Testiranje integracije poteka v testnem okolju. Pri tem
sodelujejo integrator, preizkuševalec in ključni uporabniki.
 Testiranje se izvaja po pripravljenem načrtu in se zaključi z
ustrezno potrditvijo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 312 -
Testiranje
Vrste in potek testiranja
 Testiranje sistema
 Testiranje sistema namenjeno testiranju obnašanja sistema
kot celote ter njegovega delovanja v okolju. Poudarek na
testiranju nefunkcionalnih zahtev kot na primer: zmogljivost,
dostopnost, test pod obremenitvijo ipd.
 Test se izvaja v testnem okolju. Izvede se enkrat, in sicer
takrat, ko je v testnem okolju nameščen celoten sistem in
povezan z okoljem. Pri izvedbi testa sodelujejo: skrbnik
podatkovne baze, sistemski administrator, skrbnik aplikacije,
preizkuševalec in ključni uporabniki.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 313 -
Testiranje
Vrste in potek testiranja
 Testiranje sprejemljivosti
 Test sprejemljivosti se deli na potrditveni test in končni test.
 Potrditveni test namenjen testiranju celotne IR, tako z vidika
funkcionalnih kot nefunkcionalnih zahtev, z namenom
pridobitve potrdila o njegovi ustreznosti. Test se izvaja v
testnem okolju v sklopu postopka namestitve in uvedbe IR.
Test izvaja ključni uporabnik po pripravljenem načrtu.
 Končni test je zadnji test IR. Izvedemo ga v produkcijskem
okolju z namenom, da se prepričamo, da pri postopku
namestitve ni prišlo do kakršnihkoli napak. Končni test
izvedemo s pomočjo produkcijskih oziroma pravih primerov.
Izvaja ga ključni uporabnik.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 314 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 315 -
Namestitev in uvedba
Opredelitev in namen
 Glavni namen namestitve in uvedbe je
 namestitev izbrane IR ali njenih delov v testno ali
produkcijsko okolje ter;
 izvedba potrditvenega in končnega testa IR;
 uvedba uporabnikov, skrbnikov in drugih, ki
bodo z IR delali, za delo z novo IR.
 Z izvedbo postopka zagotovimo, da
lahko uporabniki nemoteno uporabljajo
novo IR.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 316 -
Namestitev in uvedba
Končni izdelek e
 Končen izdelek namestitve in uvedbe sta
nameščena IR v produkcijsko okolje in uvedeni
uporabniki.
 Ko je nova IR nameščena v produkcijskem okolju
in so uporabniki usposobljeni za uporabo nove
IR, se uporaba nove IR lahko prične.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 317 -
Namestitev in uvedba
Vloge in koraki
 Aktivnosti v okviru postopka namestitve in
uvedbe IR izvajajo načrtovalec podatkovne baze,
uvajalec, skrbnik podatkovne baze, končni
uporabnik, sistemski administrator, skrbnik
aplikacije, postavitveni inženir, informacijski
varnostni inženir in poslovni lastnik.
 Po potrebi sodelujejo tudi ostale vloge.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 318 -
Namestitev in uvedba
Vloge in koraki
 Postopek namestitve in uvedbe lahko razdelimo
na sedem aktivnosti:







Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 319 -
Namestitev in uvedba
Shema postopka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije

- 320 -
Namestitev in uvedba
Shema postopka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije

- 321 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 322 -
Namestitev in uvedba – Namestitev IR
Namestitev IR
 Naloga namestitve je vključitev nove IR v testno
ali produkcijsko okolje. V okviru tega je potrebno
namestiti:
 strojno opremo,
 sistemsko programsko opremo in
 aplikativno programsko opremo - programske module.
 Namestitev poteka na podlagi načrta namestitve
IR, postopki nameščanja opreme pa morajo biti v
čim večji meri avtomatizirani.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 323 -
Namestitev in uvedba – Namestitev IR
Namestitev IR
 Namestitev IR v testno okolje poteka v več fazah
(med razvojem) ali v celoti (ob zaključku).
 Namestitev IR v produkcijsko okolje se izvede, ko
je aplikacija razvita in potrjena s potrditvenim
testom v testnem okolju.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 324 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 325 -
Namestitev in uvedba – Dodelitev pravic
Dodelitev pravic za delo z IR
 V skladu z načrtom namestitve in uvedbe – načrt
dodelitve pravic definiramo vloge, izvedemo
vključitev oseb – uporabnikov v ustrezne vloge in
jim dodelimo gesla.
 Upoštevamo tudi varnostno politiko. Pravice za
dostop do podatkov in uporabo programskih
modulov dodelimo naenkrat celotni posamezni
skupini uporabnikov, ki izvajajo določeno vlogo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 326 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 327 -
Namestitev in uvedba – Prevedba
Prevedba podatkov
 Prevedba podatkov pomeni vzpostavitev
začetnega stanja podatkov.
 Prevedba podatkov je lahko zelo kompleksen
proces, saj se poleg prenosa podatkov pogosto
izvaja tudi čiščenje, agregacija, reorganizacija
podatkovnih struktur itd.
 Podatki v obstoječih sistemih so pogosto
pomanjkljivi ali nepopolni, zapisani v obliki, ki je
razumljiva zgolj programerjem itd.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 328 -
Namestitev in uvedba – Prevedba
Prevedba podatkov
 Načrt za prevedbo podatkov je narejen v sklopu
načrta namestitve in uvedbe. Programski moduli,
ki so potrebni za prevedbo podatkov, so narejeni
v sklopu izvedbe.
 Prevedba podatkov v sklopu namestitve in
uvedbe poteka v testno in produkcijsko okolje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 329 -
Namestitev in uvedba – Prevedba
Prevedba podatkov
 Prevedba podatkov v testno okolje se izvede v
sklopu namestitve testnega okolja. Po potrebi se
lahko izvede večkrat.
 Zagotavljanje testnih podatkov ter ponovljivosti testov je
lahko zelo kompleksna naloga…
 Prevedba podatkov v produkcijsko okolje se
izvede v sklopu namestitve IR v produkcijsko
okolje.
 Navadno gre za ponovitev že preverjenih in utečenih
postopkov prevedbe, ki zagotovijo pravilen prenos podatkov.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 330 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 331 -
Namestitev in uvedba – Potrditveni test
Izvedba potrditvenega testa
 Potrditveni test izvedemo v testnem okolju.
 Predstavlja zaključni test pravilnega delovanja
celotne IR v testnem okolju in zajema vse
funkcionalnosti sistema, potrebne za delovanje v
testnem okolju.
 Poteka na osnovi načrta testiranja in se zaključi s
potrdilom o ustreznosti IR za namestitev v
produkcijsko okolje.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 332 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 333 -
Namestitev in uvedba – Končni test
Izvedba končnega testa
 Končni test izvedemo v produkcijskem okolju.
 Predstavlja končni test pravilnega delovanja IR v
produkcijskem okolju in poteka na produkcijskih
primerih - na "živih" oz. produkcijskih podatkih v
produkcijskem okolju.
 V končni test običajno ne moremo zajeti vse
funkcionalnosti sistema. Poteka na osnovi načrta
testiranja in se zaključi s potrdilom o ustreznosti
IR za uporabo v produkcijskem okolju.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 334 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 335 -
Namestitev in uvedba – Uvajanje
Uvajanje uporabnikov in skrbnikov za delo z IR
 Naloga uvajanja je naučiti uporabnike uporabljati
in skrbeti za IR.
 Uvajanje izvaja uvajalec, ki je v primeru razvoja
IR običajno član razvojne ekipe, v primeru
nakupa IR pa predstavnik proizvajalca.
 Osnovni cilj uvajanja je vsako skupino
uporabnikov naučiti uporabljati tiste sklope IR, ki
jih uporabniki pri svojem delu potrebujejo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 336 -
Namestitev in uvedba – Uvajanje
Uvajanje uporabnikov in skrbnikov za delo z IR
 V okviru obravnavane aktivnosti je potrebno
poleg običajnih uporabnikov uvesti tudi skrbnike
IR.
 Poleg uvajanja samega je potrebno poskrbeti
tudi za pripravo uvajalnih gradiv in testnih
podatkov v podatkovni bazi, ki bodo služili za
potrebe uvajanja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 337 -
Namestitev in uvedba – Uvajanje
Uvajanje uporabnikov in skrbnikov za delo z IR – Smernice
 Smernice in priporočila za uvajanje:
 uvajanje uporabnikov za uporabo novega sistema naj poteka
ločeno za običajne uporabnike in za skrbnike novega
sistema;
 najprej naj predstavniki izvajalca ali prodajalca IR izvedejo
uvajanje skrbnikov, nato pa naj se izvede uvajanje
uporabnikov – možen pristop: train the trainer;
 pri uvajanju je potrebno upoštevati velikost organizacije in
uporabnike razdeliti v skupine glede na njihovo področje
dela in podobnost načina uporabe novega sistema;
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 338 -
Namestitev in uvedba – Uvajanje
Uvajanje uporabnikov in skrbnikov za delo z IR – Smernice
 Smernice in priporočila za uvajanje
(nadaljevanje):
 uvajanje naj poteka v testnem okolju; če se uvajanje izvaja
na produkcijski podatkovni bazi, je potrebno paziti, da ne
izvajamo aktivnosti, kjer bi nastali podatki, ki jih ne bi mogli
povrniti v prejšnje stanje oz. v stanje, ki odraža dejansko
stanje v organizaciji,
 uporabniki morajo imeti dostop do sistema pomoči
uporabnikom (raznovrstnih navodil), hkrati pa tudi vedeti, na
koga se lahko obrnejo, če naletijo na težave, ki jih kljub
navodilom ne znajo sami rešiti.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 339 -
Razvoj po strukturnem pristopu
Kje smo?
 Postopki strukturnega pristopa:






Zajem in specifikacija zahtev;
Analiza;
Načrtovanje;
Izvedba;
Testiranje;
Namestitev in uvedba:
•
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Namestitev IR,
Dodelitev pravic za delo z IR,
Prevedba podatkov,
Izvedba potrditvenega testa IR,
Izvedba končnega testa IR,
Uvajanje uporabnikov in skrbnikov za delo z IR,
Prehod na novi sistem.
- 340 -
Namestitev in uvedba – Prehod
Prehod na nov sistem
 Prehod na nov sistem predstavlja trenutek, ko je
IR primerna za uporabo v produkcijskem okolju.
 O trenutku začetka uporabe nove IR mora biti
vnaprej obveščena vsa organizacija.
 Najprimernejši termini za začetek uporabe nove
IR so delovno neintenzivna obdobja. Pogoj, ki
mora biti izpolnjen za možnost začetka uporabe,
so uspešno opravljene aktivnosti namestitve,
testiranja, prevedbe podatkov in uvajanja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 341 -
Namestitev in uvedba – Prehod
Strategije uvedbe
 V praksi se za uvedbo IR uporabljajo različne
strategije. V grobem jih delimo v tri skupine:
 Fazni pristop (Phased strategy);
 Zamenjava ali vse naenkrat (Replacement strategy,
BigBang);
 Vzporedno delovanje (Parallel strategy).
 Poleg omenjenih strategij uvedbe se lahko
uporabljajo tudi različne kombinacije.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 342 -
Namestitev in uvedba – Prehod
Strategije uvedbe – Fazni pristop
 Fazni pristop:
 Star/obstoječ sistem nadomestimo z novim v več korakih
oziroma postopoma.
 Vsebina posameznega koraka ali faze je lahko različna; npr.
najprej eno poslovno področje, potem drugo itd., ali najprej
en funkcionalni sklop, zatem drugi itd.
 Prednosti postopne uvedbe oziroma postopne zamenjave
starega z novim sistemom so številne, vendar takšen pristop
ni vedno izvedljiv, saj pogosto zahteva začasne vmesnike za
komunikacijo med deli novega in starega sistema.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 343 -
Namestitev in uvedba – Prehod
Strategije uvedbe – Fazni pristop – problem začasnih vmesnikov
Zunanji sistemi
Zunanji sistemi
Star sistem
Star sistem
Uvedba celotnega sistema
naenkrat
Uvedba po delih
I faza.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 344 -
Namestitev in uvedba – Prehod
Strategije uvedbe – Zamenjava ali vse naenkrat
 Zamenjava ali vse naenkrat:
 pri tej strategiji gre za enkratno zamenjavo obstoječega
sistema z novim. Na izbran (in ustrezno načrtovan) trenutek
se stare aplikacije ugasne in nadomesti z novimi.
 Takšen pristop zmanjša potrebo po virih, vendar je bolj
tvegan, saj pomeni, da nimamo več dostopa do starega
sistema v primeru, da gre kaj narobe.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 345 -
Namestitev in uvedba – Prehod
Strategije uvedbe – Vzporedno delovanje
 Vzporedno delovanje:
 strategija vzporednega delovanja temelji na vzporedni
uporabi starega in novega sistema.
 Med uvajanjem novega sistema v produkcijo starega ne
ugašamo, temveč uporabljamo oba vzporedno.
 Prednost takšne strategije je v zmanjšanju tveganja (če gre
kaj narobe, imamo še vedno na voljo star sistem), ključna
slabost pa v zahtevnosti po virih ter potencialni neskladnosti
podatkov zaradi dvojnega zajema.
 V praksi se strategija vzporednega delovanja pogosto
uporablja v okrnjeni obliki, kjer star sistem ohranimo za
vpoglede, medtem ko so vi vnosi izvedeni v novem sistemu.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 346 -
Namestitev in uvedba – Prehod
Strategije uvedbe
Zamenjava
Vse naenkrat
Vzporedno
Možni pristopi
Po področjih
V celoti vzporedn
Po lokacijah
Delno vzporedno
Postopoma
Po modulih
V celoti zamenjav
Po starih aplikacijah
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 347 -
Poglavje III
Objektni razvoj
 Osnovni principi objektne usmerjenosti
 Osnove modelirnega jezika UML in procesa RUP
 Objektna analiza in načrtovanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 348 -
Objektni pristop
Osnovne značilnosti objektnega pristopa
 Objektni pristop k razvoju IR se pojavi kot
posledica uveljavitve objektnih programskih
jezikov in objektnih tehnologij…
 V 90-ih letih nastane več deset metod objektne
analize in načrtovanja IR.
 Objektna analiza in načrtovanje se od
strukturnega ločuje predvsem v predstavitvi
realnega sveta: ne ločuje med podatki in
aktivnostmi temveč vse modelira z objekti.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 349 -
Objektni pristop
Osnovne značilnosti objektnega pristopa
Strukturni pristop
Učilnica
Profesor
1.
2.
Študent
Programski modul:
Pregled zasedenosti
učilnice
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Podatkovna
baza
- 350 -
Podatki
 Študent
 Profesor
 Učilnica
 Predmet
 …
Procesi
 Vzdrževanje izpitnih rokov
 Opravljanje izpita
 Vodenje izpitne evidence
 …
Podatkovna
baza
Programski
modul
ProgramskiProgramski
modul
modul Programski
Programski
modul
Programski
modul
modul Programski
modul
Objektni pristop
Osnovne značilnosti objektnega pristopa
Objektni pristop
Učilnica
Profesor
Študent
Objekt Marko:
PROFESOR
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ali je učilnica NP15
15.5.07 prosta?
Objekt NP15:
UČILNICA
 Objekt tipa ŠTUDENT
 Lastnosti:
– Priimek,
– Ime,
– Vpisna številka,
– …
Funkcije:
– Prijava na izpit
– Odjava iz izpita
– Pregled elektronskega indeksa
– …
 Objekt tipa UČILNICA
 Lastnosti:
– Velikost,
– Število sedežev,
– …
 Funkcije:
– Pregled predavanj v učilnici po dnevih
– Izpis naziva profesorja P, ki na določen dan D
predava v učilnici
– …
- 351 -
Objektni pristop
Primerjava postopkov strukturnega in objektnega razvoja IR
Vzdrževanje
Uvajanje
Testiranje
Izvedba
Načrtovanje
Analiza
Zajem zahtev
Življenjski cikel razvoja IR
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 352 -
Objektni pristop
Vsebina
 Sledi:
 Osnovni principi objektne usmerjenosti
 Osnove modelirnega jezika UML in procesa RUP
 Objektna analiza in načrtovanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 353 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
• Objekt in razred
• Enkapsulacija ali skrivanje podatkov
• Dedovanje in hierarhija
 Jezik UML in proces RUP;
 Objekta analiza in načrtovanje;
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 354 -
Osnovni principi objektne usmerjenosti
Definicija objekta
 Objekt lahko predstavlja fizično entiteto ali
konceptualni pojem.
 Učitelj, učenec,…
 Predmet, test,…
 S stališča razvoja IR je objekt koncept,
abstrakcija ali stvar z natančno določenimi
mejami in pomenom za IR.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 355 -
Osnovni principi objektne usmerjenosti
Definicija objekta
 Objekti lahko predstavljajo tudi konkretne
koncepte s področja računalniških jezikov in
rešitev:
 Seznam
 Indeks
 …
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 356 -
Osnovni principi objektne usmerjenosti
Abstrakcija
 Objekt je abstrakcija neke entitete, ki je
pomembna za IR…
Vesna: Profesor
Ime: Vesna Jug
Telefon: 01/4768 814
Prijavi (int pid): boolean
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 357 -
Osnovni principi objektne usmerjenosti
Stanje, obnašanje in identiteta objekta
 Objekt ima svoje stanje, obnašanje in identiteto.
 Stanje objekta določajo njegove lastnosti:
 Flomaster ima barvo, proizvajalca, debelino,…
 Knjiga ima vsebino, število strani,
založnika,…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 358 -
Osnovni principi objektne usmerjenosti
Stanje, obnašanje in identiteta objekta
 Objekt se zaveda svojega stanja! Ve kakšne
vrednost imajo lastnosti, ki ga opisujejo.
 Flomaster je rumene barve, debeline 3mm, proizvajalca
Pilot,…
 Knjiga opisuje razvoj IS, ima 432
strani, izdaja jo založba
Pasadena,…
 Vsakokrat ko se spremeni vrednost neke
lastnosti, ki nas o objektu zanima, rečemo se je
spremenilo stanje objekta.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 359 -
Osnovni principi objektne usmerjenosti
Stanje, obnašanje in identiteta objekta
 Objekti imajo svoje obnašanje.
 Študent študira, se prijavi na izpit, opravlja izpit, posluša
predavanja,…
 Pisalo piše??? Kdo v resnici piše?
 Objekt se zaveda, kaj
lahko počne in kaj se
lahko z njim počne!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 360 -
Osnovni principi objektne usmerjenosti
Razred
 Objekte istega tipa združujemo v razrede.
 Razred je
 opis skupine objektov z enakimi lastnostmi, enakim
obnašanjem, povezavami in semantiko.
 abstrakcija, ki poudarja pomembne karakteristike in izpusti
ostale nepomembne karakteristike.
 Objekt je primerek razreda.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 361 -
Osnovni principi objektne usmerjenosti
Razred
 Odnos med objektom in razredom je podoben
odnosu med entiteto in entitetnim tipom.
Objekti
Razred
Ime razreda: Profesor
Lastnosti:
• Ime
• Priimek
•…
Obnašanje
•…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 362 -
Osnovni principi objektne usmerjenosti
Razred
 Koliko razredov je na sliki?
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 363 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
• Objekt in razred
• Enkapsulacija ali skrivanje podatkov
• Dedovanje in hierarhija
 Jezik UML in proces RUP;
 Objekta analiza in načrtovanje;
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 364 -
Osnovni principi objektne usmerjenosti
Enkapsulacija ali skrivanje podatkov
 Enkapsulacija govori o organizaciji podatkov, ki
jih vemo o objektih, na način, da jih bo moč
učinkovito uporabljati in vzdrževati?
 Kar vemo o objektu, razdelimo v dve skupini:
 Kar moramo vedeti, da objekt lahko uporabimo,
 Kar moramo vedeti, da bo objekt pravilno deloval.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 365 -
Osnovni principi objektne usmerjenosti
Enkapsulacija ali skrivanje podatkov
 Želimo se naučiti voziti avtomobil. Kaj moramo o
avtomobilu vedeti?
 Kako se upravlja z volanom, kako se
zavira in p pospešuje,…
 Potrebno vedeti, kako deluje
motor? Kako pride do vžiga?
Kaj natančno se zgodi, ko
pritisnemo na plin?
 Za delo z objektom ne potrebujemo vseh
podatkov o objektu, temveč samo določene –
vmesnik (interface).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 366 -
Osnovni principi objektne usmerjenosti
Enkapsulacija ali skrivanje podatkov
 Kaj mora veljati, da objekt deluje pravilno?
 Vmesnik nam omogoča uporabo objekta. Za njegovo
pravilno delovanje pa morajo biti vse funkcije, ki jih vmesnik
daje na voljo, tudi dejansko implementirane!
 Za delovanje objekta moramo
priskrbeti mehanizem, ki se
zna odzivati na vmesnik…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 367 -
Osnovni principi objektne usmerjenosti
Enkapsulacija ali skrivanje podatkov
 Enkapsulacija objekta zahteva, da skrijemo:
 Implementacijo obnašanja, ki je na voljo prek vmesnika;
 Podatke znotraj objekta, ki so potrebni za implementacijo
obnašanja in beležijo stanje objekta v vsakem trenutku
njegovega obstoja.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 368 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
• Objekt in razred
• Enkapsulacija ali skrivanje podatkov
• Dedovanje in hierarhija
 Jezik UML in proces RUP;
 Objekta analiza in načrtovanje;
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 369 -
Osnovni principi objektne usmerjenosti
Hierarhija in dedovanje
 Dedovanje je ključen koncept objektnega
razvoja.
 Pove, da ima objekt v času svojega kreiranja dostop tudi do
lastnosti drugih razredov poleg dostopa do razreda,
kateremu pripada.
 Podedovan razred združi vse lastnosti (lastne in
podedovane) v svojo definicijo.
 Primer:
 Profesor je poseben primer pedagoškega delavca.
 Objekt tipa profesor ima lastnosti pedagoškega delavca ter
svoje lastne lastnosti.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 370 -
Osnovni principi objektne usmerjenosti
Hierarhija in dedovanje
 Primer razreda Profesor in Pedagoški delavec
 Opis:
Pedagoški delavec
Profesor
 P ima enake lastnosti Ime
Akademski naziv
kot PD.
Priimek
Število predmetov
…
 Za P nas zanima tudi EMŠO
Telefon
akademski naziv ter
Vnesi oceno
Delovno mesto
Razpiši temo diplome
št. predmetov, ki jih
Datum rojstva
Naslov
poučuje.
…
 P lahko razpisuje tudi
Razpiši izpitni rok
teme za diplome.
Vnesi oceno
 P ima pri vnašanju
ocen več pravic kot PD. Lahko vpisuje tudi ocene ustno…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 371 -
Osnovni principi objektne usmerjenosti
Hierarhija in dedovanje
 Razrede lahko zapišemo v hierarhijo.
Oseba
Delavec
Raziskovalec
Pedagoški delavec
Asistent
Profesor
Redni profesor
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 372 -
Strokovni sodelavec
Osnovni principi objektne usmerjenosti
Hierarhija in dedovanje
 Hierarhija razredov v Delphi razvojnem okolju…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 373 -
Osnovni principi objektne usmerjenosti
Hierarhija in dedovanje
 Delček
razredne
hierarhije
java.awt…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 374 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
 Jezik UML in proces RUP:
• O jeziku UML
• Osnove procesa objektnega razvoja RUP;
 Objekta analiza in načrtovanje;
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 375 -
Jezik UML in proces RUP
Zakaj UML?
Skupinski razvoj
Jezik za
modeliranje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Poenoten
proces
- 376 -
Jezik UML in proces RUP
UML – univerzalni modelirni jezik
Univerzalni modelirni jezik (UML) je jezik za
specifikacijo, vizualizacijo, konstrukcijo in
dokumentacijo izdelkov v okviru objektnega razvoja
informacijskih rešitev.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 377 -
Jezik UML in proces RUP
Razlogi za nastanek UML
 V začetku 90-ih več kot 50 OO metod!
 Fusion, Shlaer-Mellor, ROOM, Wirfs-Brock, Coad-Yourdon,
MOSES, BOOM, OOSD, OSA, BON, Catalysis, HOOD, Ooram,
DOORS …
 Problem:




Presek in konflikti v meta-modelih…
Različne grafične notacije…
Procesi različni ali manjkajo
Gospodarstvo potrebuje standard!!!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 378 -
Jezik UML in proces RUP
UML – Zgodovina do 1997
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 379 -
Jezik UML in proces RUP
Drugi viri in prispevki
Booch
Rumbaugh
Jacobson
Meyer
Fusion
predpogoji in
popogoji
opisi operacij,
oštevilčenje sporočil
Harel
diagrami stanj
Gamma, et.al
ogrodja, vzorci,
opombe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Wirfs-Brock
Shlaer - Mellor
Odell
življenjski cikli
objekta
klasifikacija
- 380 -
odgovornosti
Jezik UML in proces RUP
UML danes
 UML 1.1 specifikacija predstavlja integracijo
različnih metod/pristopov  problem slaba
semantična integracija.
 Številne revizije: UML 1.3, 1.4, 1.5
 UML 2.0 največja revizija – odpravlja semantične
neskladnosti… sprejet v dveh delih: oktobra 2004 prvi del,
novembra 2005 drugi del.
 V postopku sprejemanja UML 2.1
 Na voljo številna orodja, ki podpirajo UML 2.0
specifikacijo…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 381 -
Diagrami
primerov
uporabe
Jezik UML in proces RUP
Objektni
diagrami
UML diagramske tehnike
Diagrami
aktivnosti
Razredni
diagrami
UML
diagrami
Diagrami
implementacije
Diagrami
sodelovanja
Diagrami
stanj
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Diagrami
zaporedja
- 382 -
Komponentni
diagrami
Jezik UML in proces RUP
UML diagramske tehnike – enostavnost
študent
profesor
?
prijava na
izbirni predmet
izbira predmetov
za poučevanje
seznam
predavanj
vnos podatkov o profesorjih
Referent
vnos podatkov o študentih
zaključitev prijave
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 383 -
sistem za
pripravo urnika
Jezik UML in proces RUP
UML diagramske tehnike – kompleksnost
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 384 -
Jezik UML in proces RUP
UML diagramske tehnike – hrbtenica razvoja
diagram primera
uporabe
razredni diagram
diagram stanj
add file
Writing
add file [ numberOffile==MAX ] /
flag OFF
Openning
Use-Case 1
close file
Actor A
Actor B
close file
Reading
Use-Case 2
Poznavalec
obravnavanega
področja
Closing
<<entity>>
Customer
name
addr
receive()
withdraw()
fetch()
send()
Use-Case 3
diagram
implementacije
UI
razred
MFC
DocumentApp
ºÐ»ê ȯ°æÀÇ Çϵå¿þ¾î¹× ³×Æ®¿÷À¸·ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ðµ¨
- À©µµ¿ì 95 : Ŭ¶óÀ̾ðÆ®
- À©µµ¿ì NT: ÀÀ¿ë¼-¹ö
- À¯´Ð½º ¸Ó½Å: ÀÀ¿ë ¼-¹ö ¹× µ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö
- IBM ¸ÞÀÎÇÁ·¹ÀÓ: µ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö
RogueWave
Repository
Persistence
9: sortByName ( )
DocumentList
Windows 95
Window95
Windows 95
global
¹®¼-°ü¸®
Ŭ¶óÀ̾ðÆ®.EXE
FileManager
¹®¼-°ü¸® ¾ÖÇø´
mainWnd : MainWnd
1: Doc view reques t ( )
Windows
NT
L
2: fetchDoc ( )
gFile : GrpFile
4: create ( )
8: fillFile ( )
Razvijalec
user : »ç¿ëÀÚ
fileMgr : FileMgr
3: create ( )
diagram
paketov
Document
Solaris
¹®¼-°ü¸® ¿£Áø.EXE
Alpha
UNIX
ÀÀ¿ë¼-¹ö.EXE
Windows
NT
GraphicFile
File
IBM
Mainframe
FileList
6: fillDocument ( )
µ¥ÀÌŸº£À̽º¼-¹ö
7: readFile ( )
5: readDoc ( )
document : Document
repository : Repository
diagram sodelovanja
mainWnd
user
ƯÁ¤¹®¼-¿¡ ´ëÇÑ º¸±â¸¦
»ç¿ëÀÚ°¡ ¿äûÇÑ´Ù.
fileMgr :
FileMgr
document :
Document
gFile
diagram
komponent
repository
urejanje izvorne kode, prevajanje,
razhroščevanje, povezovanje
1: Doc view request ( )
2: fetchDoc( )
3: create ( )
4: create ( )
5: readDoc ( )
È-ÀÏ°ü¸®ÀÚ´Â Àоî¿Â
¹®¼-ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù.
6: fillDocument ( )
7: readFile ( )
8: fillFile ( )
È-¸é °´Ã¼´Â ÀоîµéÀÎ
°´Ã¼µé¿¡ ´ëÇØ À̸§º°·Î
Á¤·ÄÀ» ½ÃÄÑ È-¸é¿¡
º¸¿©ÁØ´Ù.
9: sortByName ( )
diagram zaporedja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Forward Engineering (specifikacija -> koda)
Reverse Engineering (koda -> specifikacija)
- 385 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
 Jezik UML in proces RUP:
• O jeziku UML
• Osnove procesa objektnega razvoja RUP;
 Objekta analiza in načrtovanje;
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 386 -
Jezik UML in proces RUP
Proces razvoja
 Proces določa kdo dela kaj, kdaj in kako za
doseganje določenega cilja.
 Cilj razvoja IR je njena izgradnja ali izboljšava.
Nove ali
spremenjene
zahteve
Nov ali
spremenjen
sistem
Proces razvoja IR
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 387 -
Jezik UML in proces RUP
Proces razvoja – RUP
 RUP – Rational Unified Process
 primer procesa objektnega razvoja
 avtor: podjetje Rational
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 388 -
Jezik UML in proces RUP
RUP – glavne lastnosti
 Glavne lastnosti RUP:
 Daje smernice za učinkovit razvoj kakovostne programske
opreme
 Zmanjšuje tveganje in povečuje predvidljivost
 Zajema in vpeljuje najboljše izkušnje
• učenje iz izkušenj drugih
• mentorstvo v elektronski obliki
• razširitev izobraževalnega gradiva
 Pospešuje skupno vizijo in kulturo
 Vpeljuje načrt za uvedbo orodij
 Omogoča enostaven in hiter dostop do informacij v
elektronski obliki (spletna stran,...)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 389 -
Jezik UML in proces RUP
RUP – šest poglavitnih dobrih praks
 RUP opisuje, kako učinkovito uporabiti šest
najboljših izkušenj s področja razvoja IR.
Iterativni razvoj
Obvladovanje
zahtev
Uporaba
komponentne
arhitekture
Vizualno
modeliranje
Nadzorovanje sprememb
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 390 -
Preverjanje
kakovosti
Jezik UML in proces RUP
RUP – primeri uporabe kot osnova drugim aktivnostim
 Primeri uporabe so osnova mnogim aktivnostim
procesa:
 Izdelava in potrditev razvojnega modela
 Določitev preizkusnih primerov in postopkov za model
preizkušanja
 Načrtovanje iteracij
 Izdelava uporabniške dokumentacije
 vpeljava sistema
 Primeri uporabe pripomorejo k uskladitvi vsebine različnih
modelov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 391 -
Jezik UML in proces RUP
RUP – primeri uporabe so hrbtenica procesa RUP
 Primeri uporabe so hrbtenica procesa RUP.
Zajem zahtev
Analiza
Načrtovanje
Implementacija
Testiranje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 392 -
Jezik UML in proces RUP
RUP – arhitekturna usmerjenost
 Na arhitekturo se osredotočimo v začetnih
iteracijah
 Zasnova in potrditev arhitekture je eden primarnih ciljev
razvoja IR.
 Dokument o arhitekturi IR pomeni primarni
izdelek, ki opisuje izbrano arhitekturo.
 Drugi izdelki, ki izhajajo iz arhitekture
 Smernice razvoja
 Zgradba izdelka
 Sestava skupine
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 393 -
Jezik UML in proces RUP
RUP – arhitekturna usmerjenost – 4+1 pogledi na arhitekturo
Logični
pogled
Izvedbeni
pogled
Končni
uporabnik
Končni
upor.
Funkcionalnost
Funkcionalnost
Analitik/
Analitik/Razvijalec
Razvijalec
Zgradba
Zgradba
Primer
Primer
uporabe
uporabe
Procesni
pogled
Postavitveni
pogled
Sistemski
System
Integrators
povezovalec
Zmogljivost
Zmogljivost
Razširljivost
Prilagodljivost
Prepustnost
Throughput
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Programer
Programer
Upravljanje
z IRop.
Upravljanje
s prog.
***System
Sistemski
Engineering
inženir
Topologija
sistema
System topology
Predaja Delivery,
v uporabo,installation
namestitev
komunikacije
communication
- 394 -
Jezik UML in proces RUP
RUP – prednosti arhitekturno usmerjenega pristopa
 Omogoča
 vzpostavitev in ohranitev nadzora nad projektom,
 obvladovanje kompleksnosti in
 vzdrževanje celovitosti sistema.
 Razširja možnosti ponovne uporabe izdelkov.
 Pospešuje komponentno usmerjen razvoj.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 395 -
Jezik UML in proces RUP
RUP – faze življenjskega cikla razvoja po RUP
 RUP zajema štiri faze:
 Začetna faza – vzpostavitev projekta, opredelitev okvirjev
obravnavanega področja, načrtovanje virov,...;
 Zbiranje informacij – zbiranje informacij o obravnavanem
področju, specifikacija značilnosti, načrtovanje arhitekture;
 Konstrukcija – konstrukcija izdelka;
 Prevzem – predaja izdelka v uporabo končnemu uporabniku.
Začetna faza
Zbiranje
informacij
Konstrukcija
čas
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 396 -
Prevzem
Jezik UML in proces RUP
RUP – makro mejniki
Začetna faza
Zbiranje
informacij
Konstrukcija
Prevzem
čas
Mejnik
Določeni cilji
projekta/
naloge
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Mejnik
Stabilna
arhitektura
- 397 -
Mejnik
Izdelek
delujoč/
ustrezen
Mejnik
Uporabnik
zadovoljen
Jezik UML in proces RUP
RUP – mikro mejniki
Začetna faza
Zbiranje
informacij
Konstrukcija
Prevzem
čas
I1
I2
I3
I4
I5
I6
I7
Iteracija je specifično zaporedje aktivnosti izvedenih na
osnovi načrta in z določenim kriterijem vrednotenja, ki se
konča z izdajo izdelka.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 398 -
I8
Jezik UML in proces RUP
RUP – gradnja modela sistema prek postopkov RUP
Poslovno
modeliranje
Modelira poslovno okolje
Primeri uporabe
poslovnega okolja
Konceptualni
model poslovnega
okolja
Prikazuje tiste primere
uporabe iz poslovnega okolja,
za katere se bo razvijala IR
Zajem zahtev
Model primerov
uporabe
Analiza in
načrtovanje
Prikazuje načrt za
implementacijo rešitve
Model
načrta
Prikazuje dejansko
Izvedbo rešitve
Izvedba
Model
izvedbe
Prikazuje načrt
testiranja
Testiranje
Model
testiranja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 399 -
Razvoj IR konvergira od vzpostavitve projekta in zbiranja
zahtev/podatkov proti konstrukciji in uvedbi
Objektni razvoj – RUP
RUP – prednosti arhitekturno usmerjenega pristopa
Osnovni postopki
Podporni postopki
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 400 -
V vsaki iteraciji gremo
čez vse postopke
Jezik UML in proces RUP
RUP – osnovni in podporni postopki
 RUP definira več postopkov:
 Osnovni postopki:
•
•
•
•
•
•
Poslovno modeliranje
Zajem zahtev
Analiza in načrtovanje
Izvedba
Testiranje
Uvedba
 Podporni postopki:
• upravljanje s konfiguracijami
• projektno vodenje
• obvladovanje okolja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 401 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:




Osnovni principi objektne usmerjenosti;
Jezik UML in proces RUP;
Zajem zahtev;
Objekta analiza in načrtovanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 402 -
RUP – Zajem zahtev
RUP – zajem zahtev
 Namen zajema zahtev je:





Doseči soglasje s stranko oz. uporabniki, kaj naj sistem dela.
Omogočiti razvijalcem boljše razumevanje zahtev sistema.
Določiti meje sistema.
Zagotoviti osnovo za načrtovanje tehnične vsebine.
Definirati uporabniški vmesnik sistema.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 403 -
RUP – Zajem zahtev
RUP – zajem zahtev
 Namen zajema zahtev je podoben kot pri
strukturnem pristopu
 V določeni meri uporabljamo podobne tehnike
kot pri strukturnem pristopu
 RUP za zapis zahtev uvaja višjo stopnjo
formalnosti:
 Primeri uporabe (UML)
 Opisi s tokovi dogodkov
 Uporaba drugih tehnik UML v posebnih primerih (diagrami
stanj, diagrami aktivnosti, diagrami interakcije)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 404 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Diagrami primerov uporabe
 Ključna elementa diagramov primerov uporabe sta akter in
primer uporabe
 Med seboj jih povezujemo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 405 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Akter
 Akter je oseba ali stvar (sistem,
naprava), ki je:
Akter
• izven sistema,
• v neposredni interakciji s sistemom.
 Akter je na mejah sistema
 Poseben primer akterja je ura oz.
časovni prožilec, ki omogoča
periodično proženje posameznih
primerov uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 406 -
Stranka
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Primer uporabe
 Primer uporabe je zaporedje akcij, ki
jih izvede sistem in dajo določenemu
akterju nek rezultat
 Primer uporabe lahko obravnavamo
tudi kot zaključen tok dogodkov z
določenim namenom
 Primer uporabe prikazuje
pomembnejši način uporabe sistema
za enega ali več akterijev, ki vplivajo
na ta primer uporabe
 Primer uporabe poimenujem z vidika
uporabnika
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 407 -
Primer uporabe
Kupi vstopnico
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Primer uporabe - tok dogodkov
 Opis dogajanja znotraj primera
uporabe
 Primer uporabe ima en osnovni tok
dogodkov.
 Primer uporabe ima več alternativnih
tokov:
• Običajni primeri
• Neobičajni primeri
• Izjemni primeri in napake
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 408 -
Tok dogodkov
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Primer osnovnega toka dogodkov – Kupi vstopnico preko interneta:
1. Sistem prikaže seznam prireditev
2. Kupec izbere prireditev
3. Sistem vrne kupcu seznam terminov, kjer so še prosti sedeži za izbrano prireditev in
podrobne podatke o prireditvi.
4. Kupec izbere termin
5. Sistem prikaže kupcu matriko sedežev z označenimi zasedenimi in rezerviranimi
sedeži.
6. Kupec izbere enega ali več prostih sedežev
7. Sistem označi izbrane sedeže kot rezervirane
8. Sistem zahteva vnos imena in št. kreditne kartice
9. Kupec vnese ime in št. kreditne kartice
10. Sistem komunicira z zunanjim sistemom ponudnika kreditnih kartic
11. Zunanji sistem vrne sporočilo o uspešni transakciji
12. Sistem označi sedeže kot prodane
13. Sistem prikaže zaslon z vstopnico/cami, ki vsebuje tudi referenčne št. vstopnic
14. Sistem pošlje e-pošto stranki z enakimi podatki kot v točki 12
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 409 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Primer alternativnega toka dogodkov – Kupi vstopnico preko interneta:
1.
2.
3.
Sistem prikaže seznam prireditev
Kupec izbere prireditev
Sistem vrne kupcu sporočilo, da so vse vstopnice na vseh terminih prodane.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 410 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Podtokovi
 Pri obsežnejših oz. ponavljajočih tokovih dogodkov si pogosto pomagamo s
podtokovi
 Podtokovi omogočajo ponovno uporabo dela toka dogodkov
 Primer podtokov:
1.
2.
3.
4.
5.
Sistem prikaže uporabniku seznam oseb
Uporabnik iz seznama izbere določeno osebo
Sistem prikaže podrobnosti osebe
Uporabnik lahko izbere brisanje osebe (glej Podtok A) ali ažuriranje
podatkov o osebi (glej Podtok B).
Sistem osveži prikaz
4A.1 Sistem izbriše podatke o osebi
4A.2 Sistem izpiše sporočilo o uspešnem brisanju podatkov o osebi
Podtok A
Podtok B
4B.1 Uporabnik ažurira podatke o osebi in spremembe potrdi
4B.2 Sistem izpiše sporočilo o uspešnem ažuriranju podatkov o osebi
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 411 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Komunikacija
 Komunikacija je povezava, ki prikazuje, da akter
uporablja sistem na nek način (primer uporabe) oz. da je
v okviru primera uporabe uporabljen nek zunanji sistem.
Komunikacija
Stranka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Kupi vstopnico
- 412 -
Bančni
sistem
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 UML ne predpisuje usmerjanja komunikacij,
usmerjanje je razširitev, ki je opredeljena v
RUP
 Komunikacija in usmerjenost
 kadar gre puščica iz akterja proti primeru uporabe to
pomeni, da je akter začetnik primera uporabe (uporablja
določeno funkcionalnost sistema)
 kadar gre puščica iz primera uporabe proti akterju (ali pa
puščic ni) to pomeni, da ti akterji sodelujejo pri
določenem primeru uporabe
 vsak primer uporabe mora imeti povezavo, ki je
usmerjena od akterja proti primeru uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 413 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Odvisnost “vključuje” - <<include>>:
 Vedno poteka le med dvema primeroma uporabe in sicer od
“izhodiščnega” primera uporabe, ki vključuje tudi drug primer
uporabe
 Omogoča ponovno uporabo primera uporabe
Odvisnost “vključuje”
Kupi vstopnico
Stranka
Plačaj s kartico
Rezerviraj
vstopnico
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 414 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Odvisnost “razširja” - <<extend>>:
 Vedno poteka le med dvema primeroma uporabe in sicer od
primera uporabe, ki razširja “izhodiščni” primer uporabe
 Omogoča, da se primer uporabe izvede pod določenim
pogojem (razširitvena točka - “extension point”).
Odvisnost “razširja”
<<extend>>
Stranka
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Kupi vstopnico
- 415 -
Pridobi dodaten
račun
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Generalizacija med
akterji
Generalizacija med akterji
 Prikazuje, da določen akter
lahko sistem uporablja tudi
na tak način kot določen
drugi akter.
Kupi vstopnico
Stranka
Rezerviraj
vstopnico
Prijavi bonus
Stranka “VIP”
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 416 -
Preglej bonus
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Generalizacija med
primeri uporabe
Generalizacija med primeri uporabe
 Omogoča, da določen
primer uporabe “razbijemo”
na bolj podrobne primere
uporabe
Plačaj s kartico
Plačaj z
bančno kartico
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 417 -
Plačaj s kreditno
kartico
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Meja sistema
 Mejo sistema lahko
eksplicitno prikažemo s
pomočjo pravokotnika
Meja sistema
Kupi vstopnico
Stranka
Rezerviraj
vstopnico
Prijavi bonus
Stranka “VIP”
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 418 -
Preglej bonus
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Možen pristop pri načrtovanju diagrama primerov
uporabe:
1. Identificiraj akterje
2. Identificiraj primere uporabe sistema
3. Poveži akterje in primere uporabe (ugotovi na kakšne
načine različni akterji uporabljajo sistem)
4. Odstrani odvečne primere uporabe (npr. neuporabljeni
primeri uporabe)
5. Odstrani odvečne akterje (npr. podvojeni akterji; akterji, ki
to niso ipd.)
6. Preveri in popravi morebitne napake
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 419 -
RUP – Zajem zahtev
RUP – zajem zahtev – primeri uporabe
 Pogoste napake pri načrtovanju primerov
uporabe:
1.
2.
3.
4.
Nejasno/nepravilno opredeljene meje sistema
Veliko število primerov uporabe na enem diagramu
Križanje povezav, nepreglednost diagrama
Primeri uporabe niso napisani s stališča akterja oz.
uporabnika (npr. “Kupi vstopnico” vs. “Prodaj vstopnico”)
5. Model primerov uporabe je podoben diagramu podatkovnih
tokov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 420 -
Primer
Kupi vstopnico
preko spleta
RUP – zajem zahtev – primeri uporabe
Plačaj preko
spleta
Stranka
Rezerviraj
vstopnico
Prijavi bonus
<<extend>>
Stranka “VIP”
Preglej bonus
Uredi prireditve
Referent
Dodeli stranki
status“VIP”
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 421 -
Unovči bonus
Spletni
plačilni
sistem
RUP – Zajem zahtev
RUP – zajem zahtev – pomembni izdelki
Model primerov
uporabe
Slovar
Akterji
Primeri uporabe
...
Dodatne
specifikacije
Opisi primerov uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 422 -
RUP – Zajem zahtev
RUP – zajem zahtev – Model primerov uporabe









Ime
Kratek opis
Tokovi dogodkov
Diagrami aktivnosti
in diagrami stanj
Diagrami primerov
uporabe
Posebne zahteve
Pred-pogoji
Po-pogoji
Razširitvene točke
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Model primerov
uporabe
Akterji
Primeri uporabe
...
Opisi primerov uporabe
- 423 -
Namesto alternativnega toka bi lahko
za nekatere tokove uporabili tudi podtokove.
RUP – zajem zahtev – Model primerov uporabe – primer opisa primera uporabe
RUP – Zajem zahtev
Register for Courses Use Case
1.
Brief Description
This use case allows a Student to register for course offerings in the current semester. The
Student can also modify or delete course selections if changes are made within the add/drop
period at the beginning of the semester. The Course Catalog System provides a list of all the
course offerings for the current semester.
The main actor of this use case is the Student. The Course Catalog System is an actor within the
use case.
2.
Flow of Events
The use case begins when the Student selects the "maintain schedule" activity from the Main
Form.
2.1 Basic Flow - Create a Schedule
1. The Student selects "create schedule."
2. The system displays a blank schedule form.
- 424 -
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
RUP – Zajem zahtev
RUP – zajem zahtev – Model primerov uporabe – primer opisa primera uporabe
2.2.3
Save a Schedule
At any point, the Student may choose to save a schedule without submitting it by selecting
"save". The current schedule is saved, but the student is not added to any of the selected
course offerings. The course offerings are marked as "selected" in the schedule.
2.2.4
Add Course Offering
The system verifies that the Student has the necessary prerequisites and that the course
offering is open. The system then adds the Student to the selected course offering. The
course offering is marked as "enrolled in" in the schedule.
2.2.5
Unfulfilled Prerequisites or Course Full
If in the "Add Course" sub-flow the system determines that the Student has not satisfied
the necessary prerequisites or that the selected course offering is full, an error message is
displayed. The Student can either select a different course offering or cancel the
operation, at which point the use case is restarted.
2.2.6
No Schedule Found
If in the "Modify a Schedule" or "Delete a Schedule" sub-flows the system is unable to
retrieve the Student's schedule, an error message is displayed. The Student
- 425 acknowledges the error and the use case is restarted.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
RUP – Zajem zahtev
RUP – zajem zahtev – dodatne specifikacije






Funkcionalnost
Uporabnost
Zanesljivost
Učinkovitost
Podpora
Omejitve pri načrtovanju
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 426 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:




Osnovni principi objektne usmerjenosti;
Jezik UML in proces RUP;
Zajem zahtev;
Objekta analiza in načrtovanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 427 -
Objekta analiza in načrtovanje
RUP – namen analize in načrtovanja
 Namen analize in načrtovanja je:
 Pretvoriti zahteve v načrt sistema;
 Razviti robustno arhitekturo sistema;
 Prilagoditi načrt izvedbenemu okolju.
 Povezava z drugimi postopki:
 Poslovno modeliranje postavi organizacijski kontekst
sistema.
 Postopek zajema zahtev je primarni vhod v postopek analize
in načrtovanja.
 Postopek izvedbe realizira sistem na osnovi načrta,
 …
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 428 -
Objekta analiza in načrtovanje
RUP – Analiza in načrtovanje – primerjava analize in načrtovanja
Analiza
Načrtovanje
 Se osredotoča na
razumevanje problema
 Se osredotoči na
razumevanje rešitve
 Idealizirano načrtovanje
 Operacije in atributi
 Obnašanje
 Zmogljivost rešitve
 Struktura sistema
 Blizu programski kodi
 Funkcijske zahteve
 Življenjski cikel objektov
 Majhen model
 Nefunkcionalne zahteve
 Velik model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 429 -
izdelek
e Končen
analize in načrtovanja
Objekta analiza in načrtovanje
RUP – Analiza in načrtovanje – vhodni in izhodni izdelki
Model primerov
uporabe
Model načrta
Analiza in
načrtovanje
Arhitektura
sistema
Slovar
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Dodatne
specifikacije
Podatkovni model
- 430 -
Objekta analiza in načrtovanje
RUP – Analiza in načrtovanje – vloge

Načrtovalec
Realizacija
primera uporabe
Arhitekt
Paket/
Podsistem
Arhitektura
sistema
Razred
Pregledovalec
arhitekture
Pregledovalec
načrta
Model načrta
Načrtovalec PB
Podatkovni model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 431 -
Objekta analiza in načrtovanje
RUP – Analiza in načrtovanje – koraki
Pregledovalec
arhitekture
Arhitekt
Načrtovalec
Analiza
arhitekture
Analiza
primerov
uporabe
Načrt
arhitekture
Analiza sočasnosti
in porazdeljenosti
Načrtovanje
podsistemov
Načrtovanje
primerov
uporabe
Pregled
načrta
Načrtovanje
razredov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Pregled
arhitekture
- 432 -
Pregledovalec
načrta
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
 Jezik UML in proces RUP;
 Objekta analiza in načrtovanje:
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Analiza arhitekture
Analiza primerov uporabe
Načrt arhitekture
Načrt primerov uporabe
Načrt podsistemov
Načrt razredov
- 433 -
Objekta analiza in načrtovanje
Analiza arhitekture
Dodatne
specifikacije
Smernice za
načrtovanje
Arhitektura
sistema
Slovar
Analiza
arhitekture
Izbrani primeri
uporabe za
realizacijo
Model primerov
uporabe
Model načrta
Poslovni model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 434 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture
 Osnovni koraki aktivnosti analiza arhitekture
sistema:
 Identifikacija ključnih abstrakcij
 Analiza potreb po sistemskih storitvah
 Opredelitev arhitekturnih ravni
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 435 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – Identifikacija ključnih abstrakcij
 V okviru identifikacije ključnih abstrakcij potrebno
identificirati začetne razrede analize
 tipično gre za poslovne entitete ter povezave med njimi –
prikažemo z razrednim diagramom.
Razredi analize ali
ključne abstrakcije
 Vhodi:
 Znanje o domeni (vključno s poslovnim
modelom, če obstaja)
 Zahteve
 Slovar
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 436 -
Objekta analiza in načrtovanje
RUP – Od razredov analize do izvedbenih elementov – komponent
Analiza
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Načrt
- 437 -
Izvedba
Objekta analiza in načrtovanje
Primer ključnih abstrakcij
 Nekaj ključnih abstrakcij s področja študijska
informatike…
Študent
Prijava
Izpitni rok
Vpis
Študijski
program
Predmet
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 438 -
Objekta analiza in načrtovanje
Primer ključnih abstrakcij
 Povezave med identificiranimi abstrakcijami…
Študent
Prijava
Izpitni rok
Vpis
Študijski
program
Predmet
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 439 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – analiza potreb po sistemskih storitvah
Želena funkcionalnost
Okolje implementacije
Dodatne
specifikacije
Arhitekt
Model primerov
uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Arhitekt je odgovoren za izbiro ustreznih načrtovalskih vzorcev
za realizacijo potrebnih sistemskih storitev (dostop do relacijske
podatkovne baze, uporaba digitalnih potrdil, obvladovanje
transakcij,…
- 440 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – analiza potreb po sistemskih storitvah
 Primeri sistemskih storitev:









Trajnost
Procesna komunikacija (IPC in RPC)
Usmerjanje sporočil
Porazdeljevanje
Obvladovanje transakcij
Nadzor nad procesi in sinhronizacija
Varnost
Odkrivanje, obravnavanje in poročanje o napakah
…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 441 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
 V analizi arhitekturne potrebno pretehtati tiste
arhitekturne vzorce, katerih izbira vpliva na
visoko nivojsko organizacijo modela sistema.
 Arhitekturne ravni predstavljajo aplikacijo z
različnih nivojev abstrakcije.
 Nivoji potekajo od aplikacijskih ravni na vrhu do izvedbenih
(za določeno tehnologijo specifičnih) nivojev na dnu
arhitekture.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 442 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
 Primeri arhitekturnih vzorcev:
 Model-view-controller: aplikacija je razdeljena na tri dele:
Model, ki vsebuje poslovna pravila in pripadajoče podatke,
View, ki prikazuje, kako je informacija izpisana uporabniku in
Controller-je, ki procesirajo uporabniške vhode.
 Pipes and Filters: tok podatkov potuje skozi cevi od filtra do
filtra. Vsak filter je korak procesiranja.
 Blackboard: je vzorec sodelovanja neodvisnih specializiranih
aplikacij nad skupno podatkovno strukturo za doseganje
skupne rešitve.
 …
 Aplikacija lahko uporablja več arhitekturnih
vzorcev…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 443 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
Aplikacijski podsistemi
(Application subsystems)
Poslovni podsistemi
(Business specific)
Vmesni nivo
(Middleware)
Sistemska programska oprema
(System software)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ločeni aplikacijski podsistemi, ki skupaj
tvorijo aplikacijski sistem. Specifične aplikacije
organizacije.
Številni ponovno uporabni podsistemi, ki so
specifični za aplikativna področja (npr.
telekomunikacije, bančništvo itd.)
Vmesni nivo sestavljajo razni pomožni podsistemi
(utility classes) in sistemi, ki so od platforme
neodvisni (npr. Storitve za porazdeljena in
heterogena okolja)
Zajema programsko opremo za dejansko
infrastrukturo, npr. operacijski sistemi, vmesniki do
specifičnih naprav ipd.
- 444 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
 Organizacijo arhitekturnih ravni pokažemo s
paketi.
 Paket je element modela, ki lahko vključuje
druge elemente modela.
 Uporaba:
 Organizacija modela v razvoju
 Enota upravljanja s konfiguracijami
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 445 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
 Paketi morajo biti organizirani v nivoje tako, da
imamo na:
 zgornjih nivojih arhitekture aplikacijsko specifične pakete,
 na spodnjih nivojih arhitekture strojno in operacijsko odvisne
pakete,
 na srednjih nivojih splošno namenske storitve.
 Prednost takšne delitve je čista razdelitev
odgovornosti. Aplikacije so bolj prožne in lažje
prilagodljive.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 446 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
 Ciklične odvisnosti so nezaželene…
A
A
A
B
B
B
C
C
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
A’
- 447 -
Objekta analiza in načrtovanje
RUP – Koraki analize arhitekture – opredelitev arhitekturnih ravni
 Arhitekturne plasti lahko modeliramo s pomočjo
paketov in stereotipa <<layer>>
<<layer>>
Application
<<layer>>
Ime ravni
<<layer>>
Business
Services
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 448 -
Razvoj po objektnem pristopu
Kje smo?
 Objektni pristop:
 Osnovni principi objektne usmerjenosti;
 Jezik UML in proces RUP;
 Objekta analiza in načrtovanje:
•
•
•
•
•
•
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Analiza arhitekture
Analiza primerov uporabe
Načrt arhitekture
Načrt primerov uporabe
Načrt podsistemov
Načrt razredov
- 449 -
Objektna analiza in načrtovanje
Analiza arhitekture
Dodatne
specifikacije
Slovar
Model primerov
uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Smernice za
načrtovanje
Arhitektura
sistema
Analiza
primerov
uporabe
Izbrani primeri
uporabe za
realizacijo
- 450 -
Analizirani
primeri uporabe
Razredi analize
Model načrta
(dopolnjen)
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe
 Osnovni koraki aktivnosti analiza primerov
uporabe:
 Dopolnitev opisov primerov uporabe
 Identifikacija potrebnih razredov za realizacijo posameznih
primerov uporabe
 Razdelitev odgovornosti posameznim razredom
 Identifikacija povezav (in dodatnih atributov) med razredi
 Podrobna analiza potrebnih sistemskih storitev
 Poenotenje razredov pridobljenih z analizo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 451 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – dopolnitev opisov primerov uporabe
 V okviru analize primerov uporabe opise
posameznih primerov uporabe dopolnimo s
podatki, potrebnimi za nadaljnji razvoj, ki jih že
imamo na razpolago.
Sistem preveri veljavnost kreditne
kartice. Pri tem se poveže s sistemom
“SKK” in uporabi njegovo spletno
storitev “CardCheck”.
Sistem preveri veljavnost
kreditne kartice.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 452 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe
 Osnovni koraki aktivnosti analiza primerov
uporabe:
 Dopolnitev opisov primerov uporabe
 Identifikacija potrebnih razredov za realizacijo posameznih
primerov uporabe
 Razdelitev odgovornosti posameznim razredom
 Identifikacija povezav (in dodatnih atributov) med razredi
 Podrobna analiza potrebnih sistemskih storitev
 Poenotenje razredov pridobljenih z analizo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 453 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
Model Načrta
Model Primerov Uporabe
Primer Uporabe
Realizacija Primera Uporabe
Diagrami Zaporedja
Diagrami sodelovanja
Primer Uporabe
Diagrami Razredov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 454 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Dinamika primera uporabe mora biti v celoti dodeljena
razredom, ki realizirajo ta primer uporabe
<<boundary>>
<<boundary>>
<<control>>
<<entity>>
<<entity>>
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 455 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Razredi analize:
<<boundary>>
<<boundary>>
<<control>>
<<entity>>
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
- 456 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Ikonski prikaz razredov analize:
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 457 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Mejni razred - <<boundary>>:
 Mejni razred je posrednik med okoljem in sistemom
 Ogradi sistem pred spremembami v okolici
 Odvisen od sprememb v okolju
 Več vrst mejnih razredov:
 Razredi uporabniškega vmesnika
 Razredi sistemskega vmesnika
 Razredi vmesnika do naprav
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 458 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Mejni razredi modelirajo interakcijo med okoljem
in sistemom
<<boundary>>
<<boundary>>
<<control>>
<<boundary>>
<<entity>>
<<entity>>
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
- 459 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Identifikacija mejnih razredov: “en mejni razred
za vsak par akter – primer uporabe”
 Primer:
Stranka
Kupi vstopnico
<<boundary>>
ZMStrankaKupiVstopnico
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Bančni
sistem
<<boundary>>
SVBančniSistem
- 460 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Smernice za oblikovanje mejnih razredov:
 Razredi uporabniškega vmesnika:
• Kateri podatki so posredovani uporabniku?
• Katere podatke posreduje uporabnik sistemu?
• Prototipi zaslonskih mask so lahko dobra osnova za načrtovanje
razredov uporabniškega vmesnika
 Razredi sistemskega vmesnika in vmesnika do naprav:
• Kateri protokoli so potrebni za komunikacijo?
• Če obstaja dobro definiran vmesnik do obstoječega sistema oz. do
naprave, odgovornosti mejnega razreda določimo na podlagi
definicije tega vmesnika.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 461 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Poslovni razred - <<entity>>:
Ključni koncept sistema, ki ga razvijamo
Od okolja je neodvisen
Hrani in upravlja podatke
Navadno gre za trajen razred
Njegovo obnašanje je strogo vezano na entiteto, ki jo
predstavlja
 Poslovni razred navadno ni vezan le na en primer uporabe





 V nekaterih primerih modeliramo tudi podatke o akterju, ki
jih hranimo znotraj sistema, čeprav je akter izven sistema.
Tak razred imenujemo tudi “zastopnik akterja” (surrogate).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 462 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Poslovni razredi hranijo in upravljajo ključne
podatke sistema
<<boundary>>
<<boundary>>
<<control>>
<<boundary>>
<<entity>>
<<entity>>
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
- 463 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Identifikacija poslovnih razredov: postopek kot
pri podatkovnem modeliranju – ključna
abstrakcija sistema v kontekstu primera uporabe
 Viri: ključne abstrakcije, tok primerov uporabe,
slovar, poslovni model
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 464 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Primer:
Kupi vstopnico
<<entity>>
Sedež
<<entity>>
Prireditev
Slovar
<<entity>>
Termin
<<entity>>
Stranka
Ključne abstrakcije
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
Vstopnica
“Zastopnik”
akterja Stranka
- 465 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
<<stereotip>>
ImeRazreda
atribut : tip = začVrednost
atribut : tip = začVrednost
atribut : tip = začVrednost
V analizi se na ukvarjaj s
podpisi (signaturami)
atributov
<<entity>>
IzbirniPredmet
atribut
predmetID :String=“100”
začetek : Time
konec: Time
številoDni: Enum
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Pri identifikaciji poslovnih
razredov si lahko
pomagamo z
generalizacijo
 Generalizacijo uporabimo,
ko en razred predstavlja
isto strukturo in
obnašanja kot več drugih
razredov
 V analizi uporabljamo le
med poslovnimi razredi
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 467 -
Račun
stanje
ime
številka
Dvigni()
Položi()
Osebni
Dvigni()
Varčevalni
VrniObresti()
Dvigni()
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Primer:
<<entity>>
Dogodek
<<entity>>
Prireditev
<<entity>>
Tekma
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
Koncert
<<entity>>
Zborovanje
<<entity>>
Film
- 468 -
<<entity>>
Trening
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Sledi identifikacija povezav med poslovnimi
razredi:
 V analizi iščemo povezave tipa asociacija
 Asociacija je strukturna povezava, ki modelira pomensko
povezavo med primerki razredov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 469 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Modelira pomensko povezavo med primerki razredov
<<entity>>
Študent
<<entity>>
IzbirniPredmet
Enostavna
povezava
je predpogoj za
<<entity>>
Urnik
<<entity>>
Predmet
Rekurzivna
povezava
Asociacija je strukturna povezava
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Vloga, ki jo igra razred v povezavi
<<entity>>
Profesor
<<entity>>
IzbirniPredmet
Nosilec
predmeta
Vodja katedre
Ime vloge
Predpogoj
<<entity>>
Predmet
<<entity>>
Katedra
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
glavniPredmet
<<entity>>
Urnik
<<entity>>
IzbirniPredmet
dodatniPredmet
<<entity>>
Urnik
dodaj študenta
odstrani študenta
<<entity>>
IzbirniPredmet
Vsaka povezava igra svojo vlogo
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
Števnost:
 Nedoločeno
 Točno ena
 Nič ali več (več, neomejeno)
1
0..*
*




Ena ali več
Nič ali ena
Določen interval
Več nepovezanih intervalov
1..*
0..1
2..4
2, 4..6
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
Števnost
<<entity>>
Študent
1
0..*
<<entity>>
Urnik
0..4
0..*
glavniPredmet
0..*
0..2
dodatniPredmet
<<entity>>
IzbirniPredmet
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
Navigacija – usmerjenost povezave:
Neusmerjena
Razred1
Razred2
Razred1 vidi Razred2 in Razred 2 vidi Razred1. Drug od drugega sta odvisna.
Usmerjena
Razred1
Razred2
Razred1 vidi Razred2, Razred2 pa Razreda1 ne vidi. Razred1 je odvisen od Razreda2,
Razred2 pa od Razreda1 ni odvisen.
Navigacijo podrobneje določimo v fazi načrtovanja in ima
pomembno vlogo pri implementaciji
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
<<boundary>>
ZMVpišiPredmet
1
<<control>>
KVpišiPredmet
1
Usmerjena povezava
<<entity>>
Urnik
0..4
0..*
glavniPredmet
0..*
0..2
<<entity>>
IzbirniPredmet
dodatniPredmet
Neusmerjena
povezava
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Identifikacija atributov in povezav, ki modelirajo
podatke poteka na enak način kot pri
podatkovnem modeliranju
<<entity>>
Stranka
 Primer:
<<entity>>
Prireditev
Ime
Opis
Trajanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Ime
Priimek
<<entity>>
Sedež
<<entity>>
Termin
<<entity>>
Vstopnica
Začetek
Status
- 477 -
Številka
Vrsta
Tribuna
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Kontrolni razred - <<control>>:
 Kontrolni razred koordinira dogajanje znotraj primera uporabe.
 Sistem lahko izvaja nekatere primere uporabe tudi brez kontrolnih
razredov, vendar le takšne, ki obsegajo le enostavno rokovanje s
shranjenimi podatki (npr. zapiši/ preberi atribut).
 Bolj kompleksni primeri uporabe navadno zahtevajo enega ali več
kontrolnih razredov, ki koordinirajo obnašanje objektov drugih
razredov v sistemu.
 Kontrolni razredi učinkovito ločijo mejne in poslovne razrede in s
tem naredijo sistem še bolj odporen na spremembe v okolju.
 Ločijo tudi obnašanje, ki je specifično za primer uporabe od
poslovnih razredov, s čimer omogočijo ponovno uporabo poslovnih
razredov v več primerih uporabe in celo različnih sistemih.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 478 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Tipični primeri kontrolnih razredov:
 Razred za upravljanje transakcij (transaction manager)
 Razred za usklajevanje virov (resource manager)
 Razred za obvladovanje napak (error handler)
 Kontrolni razredi modelirajo obnašanje, ki:
 je od okolice neodvisno - se ne spremeni, ko se spremeni okolica.
 definira kontrolno logiko (vrstni red dogodkov) in transakcije
znotraj primerov uporabe - se le malo spreminja, če se spremeni
struktura ali obnašanje poslovnih razredov.
 hkrati deluje nad vsebino več poslovnih razredov, pri čemer
kontrolni razred skrbi za koordinacijo.
 se ob vsakem aktiviranju ne izvaja na enak način (tokovi dogodkov
oblikujejo različna stanja).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 479 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Kontrolni razred koordinira obnašanje primera
uporabe
<<boundary>>
<<boundary>>
<<control>>
<<boundary>>
<<entity>>
<<entity>>
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
- 480 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Identifikacija kontrolnih razredov: na začetku
uporabimo pravilo “en kontrolni razred za vsak
primer uporabe”
 Primer:
Stranka
Kupi vstopnico
<<control>>
KKupiVstopnico
Kupi vstopnico
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 481 -
Bančni
sistem
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Navadno začnemo z identifikacijo enega kontrolnega
razreda na realizacijo primera uporabe.
 V nadaljevanju analize, ko izdelamo več realizacij pa
upoštevamo naslednje:
 Nekateri kontrolni razredi lahko sodelujejo v več primerih uporabe,
če so naloge le-teh tesno povezane.
 Različni kontrolni razredi lahko sodelujejo v enem primeru uporabe.
 Vsi primeri uporabe ne potrebujejo kontrolnega razreda. Na primer,
če je tok dogodkov v primeru uporabe vezan le na en poslovni
razred, lahko že mejni razred v sodelovanju s poslovnim razredom
realizira primer uporabe (ni potrebe po kompleksni koordinaciji).
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 482 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
Model primerov
uporabe
Kupi vstopnico
Stranka
Bančni sistem
Model načrta
<<boundary>>
ZMStrankaKupiVstopnico
<<entity>>
Prireditev
Ime
Opis
Trajanje
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
1
<<entity>>
Termin
1..* Začetek
<<boundary>>
SVBančniSistem
<<control>>
KKupiVstopnico
1
<<entity>>
Vstopnica
* Status
<<entity>>
Sedež
<<entity>>
Stranka
Ime
Priimek
- 483 -
Številka
Vrsta
Tribuna
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – identifikacija potrebnih razredov…
 Vaja:
 Identificirajte razrede analize, ki nastopajo v okviru
določenega primera uporabe iz podane problemske domene.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 484 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe
 Osnovni koraki aktivnosti analiza primerov
uporabe:
 Dopolnitev opisov primerov uporabe
 Identifikacija potrebnih razredov za realizacijo posameznih
primerov uporabe
 Razdelitev odgovornosti posameznim razredom
 Identifikacija povezav (in dodatnih atributov) med razredi
 Podrobna analiza potrebnih sistemskih storitev
 Poenotenje razredov pridobljenih z analizo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 485 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Za vsak tok dogodkov v okviru primera uporabe:


Ugotovimo kateri od identificiranih razredov v okviru toka
sodelujejo
Dodelimo odgovornosti posameznim razredom in
prikažemo sodelovanje med objekti razredov
Primer Uporabe
Diagrami Zaporedja
Diagrami sodelovanja
Realizacija primerov uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 486 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Dodeljevanje odgovornosti na podlagi
stereotipov:
 Mejni razredi
• Dinamika primera uporabe, ki zajema komunikacijo z akterjem
 Poslovni razredi
• Dinamika primera uporabe, ki zajema podatke (poslovne)
 Kontrolni razredi
• Dinamika, ki je specifična za primer uporabe ali pomembnejši del
toka dogodkov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 487 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Dodeljevanje odgovornosti na podlagi lokacije
podatkov (tipično vprašanje pri poslovnih razredih):
 Če so vsi podatki v enem razredu - dodeli
odgovornost temu razredu (načelo OO – podatki in
operacije skupaj).
 Če so podatki razpršeni po več razredih:
• Odgovornost dodeli enemu razredu ter vzpostavi
povezave z razredi, ki posedujejo podatke.
• Kreiraj nov (kontrolni) razred in mu dodeli odgovornost.
Dodaj povezave na razrede s podatki.
• Odgovornost dodeli obstoječemu kontrolnemu razredu.
Dodaj povezave na razrede s podatki.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 488 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Za podrobno opredelitev odgovornosti in povezav
med razredi si pomagamo z diagrami interakcije:
 Diagrami zaporedja
 Diagrami sodelovanja
 S pomočjo diagramov interakcije modeliramo
tokove dogodkov
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 489 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
Potrebnih je več diagramov interakcije
Osnovni tok
Alternativni tok 1
Alternativni tok 2
Alternativni tok 3
Alternativni tok 4
Alternativni tok 5
Alternativni tok n
AF3
AF1
AF2
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Diagrami sodelovanja
– Poleg interakcije kažejo
tudi povezave
– Boljši za prikaz vzorcev
sodelovanja
– Boljši za prikaz vseh
učinkov na posamezen
objekt
– Lažji za uporabo v fazi
brainstorminga
 Diagrami zaporedja
– Eksplicitno kažejo
zaporedje sporočil
– Boljši za prikaz celotnega
toka dogodkov
– Boljši za specifikacijo
dogodkov, ki potekajo v
realnem času ter
zapletenih scenarijev
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
DIAGRAMI ZAPOREDJA - UML
Objekt, ki uporablja storitev
Objekt, ki zagotavlja storitev
(predaja odgovornost)
(izvaja odgovornost)
:Ponudnik
:Odjemalec
Življenjska črta
objekta
Č
A
S
1: IzvediOdgovornost
1.1: IzvediDrugo
Odgornost
Sporočilo
Fokus
(aktivnost objekta)
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Rekurzivno
sporočilo
- 492 -
Hierarhično
številčenje
sporočil
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
:ZMStrankaKupiVstopnico
:KKupiVstopnico
:Prireditev
:Termin
:Vstopnica
:Sedež
Kupec
1: PričniNakup( )
2: VrniSeznamPredstav( )
3: VrniSeznamPredstav( )
4: PrikažiSeznamPredstav( )
5: IzberiPredstavo( )
6: VrniPodrobnostiPredstave( )
7: VrniPodrobnePodatekOPredstavi( )
9: PrikažiPodrobnostiInTerminePredstave( )
8: VrniSeznamterminovZaPredstavo( )
10: IzberiTermin( )
11: VrniSeznamSedeževZaIzbranTermin( )
12: VrniSeznamSedeževInNjihovStatusZaTermin( )
13: VrniStatusZaTermin( )
14: PrikažiMatrikoProstihSedežev( )
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 493 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Fragmenti za prikazovanje podtokov, alternativnih
tokov, zank na skupnem diagramu
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 494 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Diagrami zaporedja dobro prikazujejo zaporedje
 Tok dogodkov opisuje zaporedje akcij
 Diagrami zaporedja so zato zelo primerni za zapis toka
dogodkov v bolj formalni obliki
 Diagrami sodelovanja dobro prikazujejo vzorce
sodelovanja med objekti
 Dobra osnova za iskanje povezav med razredi in
odgovornosti razredov
 Diagrame zaporedja pretvorimo v diagrame
sodelovanja
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 495 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
DIAGRAMI SODELOVANJA - UML
Objekt, ki uporablja storitev
(predaja odgovornost)
Objekt, ki zagotavlja storitev
Povezava
(izvaja odgovornost)
:Odjemalec
:Ponudnik
Smer
1: IzvediOdgovornost
Sporočilo
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
32: PrikažiSporočiloOUspešnemNakupuZRefŠt( )
21: ZahtevajVnosKKInImena( )
14: PrikažiMatrikoProstihSedežev( )
9: PrikažiPodrobnostiInTerminePredstave( )
4: PrikažiSeznamPredstav( )
22: VnesiImeInKK( )
15: IzberiSedeže( )
10: IzberiTermin( )
5: IzberiPredstavo( )
1: PričniNakup( )
Kupec
SKK
26: IzvediTransakcijo
:ZMStrankaKupiVstopnico
:SVBančniSistem
23: ZaključiNakup( )
16: RezervirajIzbraneSedeže( )
11: VrniSeznamSedeževZaIzbranTermin( )
6: VrniPodrobnostiPredstave( )
2: VrniSeznamPredstav( )
25: IzvediTransakcijo( )
24: IzračunajCeno( )
:KKupiVstopnico
7: VrniPodrobnePodatekOPredstavi( )
3: VrniSeznamPredstav( )
27: ProdajSedežZaTermin( )
19: RezervirajSedežZaTermin( )
17: PreveriStatus( )
12: VrniSeznamSedeževInNjihovStatusZaTermin( )
:Prireditev
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
8: VrniSeznamterminovZaPredstavo( )
- 497 -
29: VrniŠtevilkoKarte( )
28: OznačiRezervacijoKotProdano( )
20: KreirajRezervacijoZaTermin( )
18: VrniStatusZaTermin( )
13: VrniStatusZaTermin( )
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Na podlagi diagrama sodelovanja razdelimo
odgovornosti
Diagram sodelovanja
:Odjemalec
:Ponudnik
// IzvediOdgovornost
Diagram razredov
Ponudnik
// IzvediOdgovornost
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 498 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
<<boundary>>
ZMStrankaKupiVstopnico
<<control>>
KKupiVstopnico
PričniNakup ()
PrikažiSeznamPredstav ()
IzberiPredstavo ()
PrikažiPodrobnostiInTerminePredstave ()
IzberiTermin ()
PrikažiMatrikoProstihSedežev ()
IzberiSedeže ()
ZahtevajVnosKKInImena ()
VnesiImeInKK ()
PrikažiSporočiloOUspešnemNakupuZRefŠt ()
<<boundary>>
VrniSeznamPredstav ()
VrniPodrobnostiPredstave ()
VrniSeznamSedeževZaIzbranTermin ()
RezervirajIzbraneSedeže ()
ZaključiNakup ()
IzračunajCeno ()
SVBančniSistem
IzvediTransakcijo ()
<<entity>>
<<entity>>
Sedež
Prireditev
Številka
Vrsta
Tribuna
Ime
Opis
Trajanje
VrniSeznamSedeževInNjihovStatusZaTermin ()
PreveriStatus ()
RezervirajSedežZaTermin ()
1..1
VrniSeznamPredstav ()
VrniPodrobnePodatekOPredstavi ()
1..1
0..*
0..*
<<entity>>
Vstopnica
Termin
0..*
Začetek
VrniSeznamterminovZaPredstavo ()
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
<<entity>>
1..1
Status
VrniStatusZaTermin ()
KreirajRezervacijoZaTermin ()
OznačiRezervacijoKotProdano ()
VrniŠtevilkoKarte
()
-
499
Stranka
0..*
1..1
Ime
Priimek
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Preverimo skladnost:
 Odvečne odgovornosti (iz vidika vseh razredov)
 Nepovezane odgovornosti znotraj enega razreda (dva
razreda?)
 Razredi z eno samo odgovornostjo (ali so potrebni?)
 Razredi brez odgovornosti (nihče ne potrebuje?!)
 Boljše porazdelitve odgovornosti
 Razredi, ki so v interakciji z mnogimi drugimi razredi
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 500 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
<<boundary>>
ZMStrankaKupiVstopnico
<<control>>
KKupiVstopnico
PričniNakup ()
PrikažiSeznamPredstav ()
IzberiPredstavo ()
PrikažiPodrobnostiInTerminePredstave ()
IzberiTermin ()
PrikažiMatrikoProstihSedežev ()
IzberiSedeže ()
ZahtevajVnosKKInImena ()
VnesiImeInKK ()
PrikažiSporočiloOUspešnemNakupuZRefŠt ()
<<boundary>>
VrniSeznamPredstav ()
VrniPodrobnostiPredstave ()
VrniSeznamSedeževZaIzbranTermin ()
RezervirajIzbraneSedeže ()
ZaključiNakup ()
IzračunajCeno ()
SVBančniSistem
IzvediTransakcijo ()
<<entity>>
<<entity>>
Sedež
Prireditev
Številka
Vrsta
Tribuna
Ime
Opis
Trajanje
?
VrniSeznamSedeževInNjihovStatusZaTermin ()
PreveriStatus ()
RezervirajSedežZaTermin ()
1..1
VrniSeznamPredstav ()
VrniPodrobnePodatekOPredstavi ()
1..1
0..*
0..*
<<entity>>
Vstopnica
Termin
0..*
Začetek
VrniSeznamterminovZaPredstavo ()
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
<<entity>>
<<entity>>
1..1
Status
VrniStatusZaTermin ()
KreirajRezervacijoZaTermin ()
OznačiRezervacijoKotProdano ()
VrniŠtevilkoKarte
()
-
501
Stranka
0..*
1..1
Ime
Priimek
razred brez
odgovornosti
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Sledi identifikacija preostalih povezav:
 V analizi iščemo povezave tipa asociacija
 Nekatere povezave (zlasti med poslovnimi razredi) smo že
identificirali – po potrebi jih le še dopolnimo
 V načrtovanju lahko nekatere od asociacij pretvorimo v
odvisnosti, saj so enostavnejše za implementacijo – tipično
gre za asociacije med mejnimi in kontrolnimi oz. kontrolnimi
in poslovnimi razredi
 V okviru podrobnejšega opredeljevanja povezav preverimo
tudi druge vidike povezav – kot npr. odnos celota/del
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 502 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Agregacija: modelira odnos celota - del
Celota/agregat
<<entity>>
Študent
1
del
0..*
<<entity>>
Urnik
0..4
0..*
glavniPredmet
0..*
0..2
dodatniPredmet
<<entity>>
IzbirniPredmet
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Premislek
 Kontekst, neodvisnost delov od celote?
Razred1
Razred2
asociacija
Razred1
Razred2
agragacija
Ko si v dvomih, uporabi asociacijo
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Agregacija modelira “šibko lastništvo”:
 Del je lahko del več celot.
 Del lahko obstaja dlje kot obstaja celota. Tudi če celoto
uničimo, del ostane.
 “Močna oblika” agregacije je kompozicija:
 Del je lahko del le ene celote.
 Del lahko obstaja le dokler obstaja celota. Če celoto uničimo,
uničimo tudi vse njene dele.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 505 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Kompozicija:
Razred1
Razred2
kompozicija
 Diskusija - kompozicija ali agregacija?
<<entity>>
Študent
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
1
0..*
?
- 506 -
<<entity>>
Urnik
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
Primera:
Kakšna je števnost?
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Asociacijski razred:
<<entity>>
UrnikIzbirniInfo
status
 Razred, povezan s povezavo
 Vsebuje lastnosti povezave
 En primerek na
povezavo
// označi kot izbran()
// označi kot neizbran()
// ali je izbran?()
0..*
<<entity>>
Urnik
0..*
<<entity>>
UrnikGlavniIzbirniInfo
ocena
// ali je izdelal?()
// vnesi oceno()
// vrni oceno()
dodatniPredmet
0..2
<<entity>>
IzbirniPredmet
glavniPredmet
0..4
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Diskusija: Ali bi kje postavili kompozicijo/asociacijo?
<<entity>>
<<entity>>
Sedež
Prireditev
Številka
Vrsta
Tribuna
Ime
Opis
Trajanje
VrniSeznamSedeževInNjihovStatusZaTermin ()
PreveriStatus ()
RezervirajSedežZaTermin ()
1..1
VrniSeznamPredstav ()
VrniPodrobnePodatekOPredstavi ()
1..1
0..*
0..*
<<entity>>
<<entity>>
Vstopnica
Termin
0..*
Začetek
VrniSeznamterminovZaPredstavo ()
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
1..1
Status
VrniStatusZaTermin ()
KreirajRezervacijoZaTermin ()
OznačiRezervacijoKotProdano ()
VrniŠtevilkoKarte ()
- 509 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
Diagram sodelovanja
1: izvediOdgovornost
:Odjemalec
Razredni diagram
Odejmalec 0..*
:Ponudnik
Povezava
Navigacija (pogojno!)
0..*
Ponudnik
Osnovni ponudniki
izvediOdgovornost()
Povezava v diagramu sodelovanja pomeni povezavo v razrednem diagramu !
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
 Podrobna opredelitev asociacije:
 Navigacija:
• Če vsa sporočila na vseh diagramih, ki prikazujejo interakcijo med
objektoma dveh razredov potekajo le v eno smer, lahko povezavo
usmerimo.
• Upoštevamo VSE tokove dogodkov.
 Števnost:
• Števnosti med poslovnimi razredi smo že določili.
• Pri ostalih razredih je vprašanje enako: koliko primerkov enega
razreda (objektov) bo hkrati v interakciji s primerkom drugega
razreda (objekta) in obratno.
• Pogoste števnosti med mejnimi in kontrolnimi razredi so: 0..1 in
1..1. Vendar se lahko pojavljajo tudi drugačne števnosti!
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 511 -
Diagram VOPC – View of participation classes
Pogled na razrede, ki sodelujejo v primeru uporabe
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – razdelitev odgovor. in ident. povezav
<<boundary>>
ZMStrankaKupiVstopnico
<<control>>
PričniNakup ()
PrikažiSeznamPredstav ()
IzberiPredstavo ()
PrikažiPodrobnostiInTerminePredstave ()
IzberiTermin ()
PrikažiMatrikoProstihSedežev ()
IzberiSedeže ()
ZahtevajVnosKKInImena ()
VnesiImeInKK ()
PrikažiSporočiloOUspešnemNakupuZRefŠt ()
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
KKupiVstopnico
1..1
<<boundary>>
0..1
SVBančniSistem
VrniSeznamPredstav ()
VrniPodrobnostiPredstave ()
1..1 VrniSeznamSedeževZaIzbranTermin ()
RezervirajIzbraneSedeže ()
ZaključiNakup ()
IzračunajCeno ()
0..1
1..1
IzvediTransakcijo ()
0..1
0..1
0..*
0..*
<<entity>>
Sedež
<<entity>>
Prireditev
Številka
Vrsta
Tribuna
Ime
Opis
Trajanje
VrniSeznamSedeževInNjihovStatusZaTermin ()
PreveriStatus ()
RezervirajSedežZaTermin ()
1..1
VrniSeznamPredstav ()
VrniPodrobnePodatekOPredstavi ()
1..1
0..*
0..*
0..*
<<entity>>
Vstopnica
<<entity>>
Termin
0..*
Začetek
VrniSeznamterminovZaPredstavo ()
- 512 -
1..1
Status
VrniStatusZaTermin ()
KreirajRezervacijoZaTermin ()
OznačiRezervacijoKotProdano ()
VrniŠtevilkoKarte ()
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – sistemske storitve
 Osnovni koraki aktivnosti analiza primerov
uporabe:
 Dopolnitev opisov primerov uporabe
 Identifikacija potrebnih razredov za realizacijo posameznih
primerov uporabe
 Razdelitev odgovornosti posameznim razredom
 Identifikacija povezav (in dodatnih atributov) med razredi
 Podrobna analiza potrebnih sistemskih storitev
 Poenotenje razredov pridobljenih z analizo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 513 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – sistemske storitve
 Sestavi seznam vseh potrebnih sistemskih storitev
 Sestavi seznam razredov, ki potrebujejo sistemske
storitve
Razred analize
Sistemska storitev
 Opiši lastnosti sistemskih storitev
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – sistemske storitve
 Preslikava med razredi in sistemskimi storitvami
Razred
Sistemska storitev
Prireditev
Trajnost
Termin
Trajnost
Vstopnica
Trajnost, Varnost?
Sedež
Trajnost
KKupiVstopnico
Porazdelitev
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – sistemske storitve
 Lastnosti sistemskih storitev
 Trajnost za razred Vstopnica:
 Granulacija: od 15 do 25 bajtov
 Kapaciteta: do 10.000.000 vstopnic
 Pogostost dostopa
•
•
•
•
 Itd.
Kreiranje: do 10.000 na dan
Branje: do 50.000 na uro
Spreminjanje: do 500 na dan
Brisanje: do 50 na dan
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – sistemske storitve
 Kakšne bi bile lahko lastnosti trajnosti za razred
Predstava?
 Granulacija?
 Kapaciteta?
 Pogostost dostopa?
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 517 -
Objektna analiza in načrtovanje
Ponovimo za vsak primer uporabe
RUP – Koraki analize primerov uporabe
 Osnovni koraki aktivnosti analiza primerov
uporabe:
 Dopolnitev opisov primerov uporabe
 Identifikacija potrebnih razredov za realizacijo posameznih
primerov uporabe
 Razdelitev odgovornosti posameznim razredom
 Identifikacija povezav (in dodatnih atributov) med razredi
 Podrobna analiza potrebnih sistemskih storitev
 Poenotenje razredov pridobljenih z analizo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 518 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 519 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – poenotenje
 Osnovni koraki aktivnosti analiza primerov
uporabe:
 Dopolnitev opisov primerov uporabe
 Identifikacija potrebnih razredov za realizacijo posameznih
primerov uporabe
 Razdelitev odgovornosti posameznim razredom
 Identifikacija povezav (in dodatnih atributov) med razredi
 Podrobna analiza potrebnih sistemskih storitev
 Poenotenje razredov pridobljenih z analizo
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 520 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – poenotenje
<<boundary>>
<<control>>
<<entity>>
<<entity>>
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe - poenotenje
Rezultat poenotenja razredov
je enoten načrt. Pogledi VOPC še
vedno ostanejo, vendar
uporabljajo skupne razrede.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 522 -
Objektna analiza in načrtovanje
RUP – Koraki analize primerov uporabe – poenotenje
Slovar
Model Načrta
Dodatne
Specifikacije
Model Primerov Uporabe
Razredi Analize
Objektna analiza in načrtovanje
Od razreda do kode
 Razredne diagrame lahko pretvorimo v kodo
nit main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, ExtCtrls, StdCtrls, Buttons, NxScrollControl,
NxCustomGridControl, NxCustomGrid, NxGrid, NxColumns, NxColumnClasses,
ComCtrls;
<<boundary>>
ZMStrankaKupiVstopnico
<<control>>
PričniNakup ()
PrikažiSeznamPredstav ()
IzberiPredstavo ()
PrikažiPodrobnostiInTerminePredstave ()
IzberiTermin ()
PrikažiMatrikoProstihSedežev ()
IzberiSedeže ()
ZahtevajVnosKKInImena ()
VnesiImeInKK ()
PrikažiSporočiloOUspešnemNakupuZRefŠt ()
KKupiVstopnico
1..1
<<boundary>>
0..1
SVBančniSistem
VrniSeznamPredstav ()
VrniPodrobnostiPredstave ()
1..1 VrniSeznamSedeževZaIzbranTermin ()
RezervirajIzbraneSedeže ()
ZaključiNakup ()
IzračunajCeno ()
0..1
1..1
IzvediTransakcijo ()
0..1
0..1
0..*
0..*
<<entity>>
Sedež
<<entity>>
Prireditev
Številka
Vrsta
Tribuna
Ime
Opis
Trajanje
VrniSeznamSedeževInNjihovStatusZaTermin ()
PreveriStatus ()
RezervirajSedežZaTermin ()
1..1
VrniSeznamPredstav ()
VrniPodrobnePodatekOPredstavi ()
1..1
0..*
0..*
0..*
<<entity>>
Vstopnica
<<entity>>
Termin
0..*
Začetek
VrniSeznamterminovZaPredstavo ()
1..1
Status
VrniStatusZaTermin ()
KreirajRezervacijoZaTermin ()
OznačiRezervacijoKotProdano ()
VrniŠtevilkoKarte ()
type
T1to9 = set of 1..9;
TMatrix = array[1..9, 1..9] of T1to9;
TRows = array[1..9, 1..9] of byte;
TCols = array[1..9, 1..9] of byte;
type
Tf_main = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
bb_solve: TBitBtn;
sg_Possibilities: TStringGrid;
bb_load: TBitBtn;
bb_save: TBitBtn;
bb_clear: TBitBtn;
b_chkrow: TButton;
b_chkcol: TButton;
ng_TablePlate: TNextGrid;
b_SetGrid: TButton;
col1: TNxTextColumn;
col2: TNxTextColumn;
col3: TNxTextColumn;
col4: TNxTextColumn;
col5: TNxTextColumn;
col6: TNxTextColumn;
col7: TNxTextColumn;
col8: TNxTextColumn;
col9: TNxTextColumn;
sd_save: TSaveDialog;
od_open: TOpenDialog;
Button1: TButton;
b_solveRest: TButton;
sg_steps: TStringGrid;
procedure bb_loadClick(Sender: TObject);
procedure bb_clearClick(Sender: TObject);
procedure b_chkrowClick(Sender: TObject);
procedure b_chkcolClick(Sender: TObject);
procedure b_SetGridClick(Sender: TObject);
procedure bb_saveClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure b_solveRestClick(Sender: TObject);
private
{ Private declarations }
procedure CheckCell( x, y: byte );
procedure CheckRow( x: byte );
procedure CheckCol( y: byte );
…
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 524 -
Razred z atributi in metodami
Student
- name: String
+ addSchedule (theSchedule: Schedule, forSemester: Semester)
+ hasPrerequisites(forCourseOffering: CourseOffering) : boolean
# passed(theCourseOffering: CourseOffering) : boolean
class Student
{
private String name;
public void addSchedule (Schedule theSchedule; Semester forSemester) {
}
public boolean hasPrerequisites(CourseOffering forCourseOffering) {
}
protected boolean passed(CourseOffering theCourseOffering) {
}
}
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 525 -
Podporni in globalni razredi
<<utility>>
MathPack
- randomSeed : long = 0
- pi : double = 3.14159265358979
+sin (angle : double) : double
+cos (angle : double) : double
+random() : double
class MathPack
{
private static randomSeed long = 0;
private final static double pi = 3.14159265358979;
public static double sin(double angle) {
}
public static double cos(double angle) {
}
public static double random() {
}
}
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 526 -
Asociacija
Schedule
Student
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
class Schedule
{
public Schedule() { }
private theStudent;
}
class Student
{
public Student() { }
private Schedule theSchedule;
}
- 527 -
Enosmerna asociacija
Student
Schedule
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
class Student
{
public Student() { }
private Schedule theSchedule;
}
class Schedule
{
public Schedule() { }
}
- 528 -
Vloge pri asociaciji
Professor
instructor
CourseOffering
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
class Professor
{
public Professor() {}
private CourseOffering
theCourseOffering;
}
class CourseOffering
{
public CourseOffering () {}
private Professor instructor;
}
- 529 -
Števnost asociacij
Schedule
0..4
primaryCourses
CourseOffering
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
class Schedule
{
public Schedule() {}
private CourseOffering[]
primaryCourses =
new CourseOffering[4]
}
class CourseOffering
{
public CourseOffering() {}
}
- 530 -
Vmesni razred
0..2
0..*
Schedule
0..4
0..*
primaryCourses
alternateCourses
CourseOffering
ExaminationInfo
- grade: Char = I
Realizacija vmesnega razreda
je stvar odločitve v načrtovanju
0..*
Schedule
alternateCourses
1
0..4
ExaminationInfo
ExaminationInfo
- grade: Char = I
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 531 -
0..2
CourseOffering
Rekurzivna asociacija
import java.util.Vector;
0..*
Course
prerequisites
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
class Course
{
public Course() {}
// Števno neomejena asociacija
// je shranjena kot vektor
private Vector prerequisites;
}
- 532 -
Agregacija
Schedule
0..*
1
class Schedule
{
public Schedule() { }
private Student theStudent;
}
import java.util.Vector;
Student
class Student
{
public Student() { }
private Vector theSchedule;
}
Java nima eksplicitnega konstrukta za agregacijo.
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 533 -
Generalizacija (dedovanje)
GroundVehicle
+ licenceNumber:
int
0..*
class GroundVehicle
{
public int licenseNumber;
public void register() { }
}
+ register()
1
Truck
+ tonnage: float
+ getTax()
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
class Truck extends
GroundVehicle
{
public float tonnage;
public void getTax() { }
}
- 534 -
Abstraktni razredi
abstract class Animal
{
public abstract void talk();
}
Animal
{Abstract}
+ talk () {abstract}
Lion
+ talk ()
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
Tiger
+ talk ()
class Tiger extends Animal
{
public Tiger() { }
public void talk() { }
}
- 535 -
Koledar predavanj
Predavanja v 2012
IBM
Innovation
Center
 03.01.2012:
 10.01.2012:
SCRUM
ORACLE
SOA
 17.01.2012:
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 544 -
Poglavje V
Modelno usmerjen razvoj
 MDA – Model Driven Architecture in MDD – Model-Driven Development.
 Razlike med MDA/MDD in klasičnim pristopom k razvoju IS
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 545 -
Razlogi za pojav pristopa
 Vedno večje število različnih implementacijskih
tehnologij, hiter razvoj, menjava, …
 Razvijalci se morajo specializirati za ozka področja, ki
se pogosto spreminjajo
 Že med izdelavo sistema se pojavljajo nove, boljše
različice tehnologij
 Prehod na drugo tehnologijo pogosto pomeni, da je
potrebno aplikacijo razviti na novo oz. so potrebne
obsežne prilagoditve
 Možnost za izboljšanje: Razvoj PO na podlagi
modelov?
Model Driven Development
 Dvig nivoja abstrakcije, na katerem nastaja
programska oprema
 Razvijalci naj se posvetijo predvsem funkcijam
sistema, ne pa tehnološkim podrobnostim
 Opis funkcionalnosti na visokem abstraktnem
nivoju, neodvisnem od uporabljene platforme in
tehnologije
 Opis sistema z uporabo vizualnih modelov
 Ideja MDD ni nova (npr. podat. modeliranje)
Model Driven Architecture…
 Model Driven Architecture:
 je standardizirano ogrodje za razvoj programske opreme na
podlagi modelov, nastal v okviru OMG
 predvideva avtomatizirano transformacijo visoko abstraktnih
modelov v modele na nižjem nivoju abstrakcije in nato teh v
delujočo kodo
 ne predpisuje konkretnih tehnik za opis modelov, predlaga
uporabo UML + OCL (nova različica za podporo MDA),
obstajajo tudi druge možnosti
Model Driven Architecture
 MDA predvideva tri osnovne vrste modelov glede
na njihovo stopnjo abstrakcije:
 PIM (platform independent model) je model na visokem
abstraktnem nivoju
 PSM (platform specific model) je model na nivoju, ki
upošteva konstrukte implementacije
 Programska koda je model na najnižjem nivoju, ki jo je
mogoče pretvoriti v izvedljivo kodo oziroma jo interpretirati
 Predvideva transformacije med modeli, ki naj bi
bile avtomatizirane…
Model Driven Architecture - koncept
CIM
PIM
PIM → PSM x
PIM → PSM y
Tehnologija/platforma x
PSM x
Tehnologija/platforma y
Most med
PSM x in PSM y
PSM y
PSM x → K x
PSM y → K y
Delujoča izvorna koda sistema
Koda x
Most med
Kodo x in Kodo y
Koda y
Kritike MDA
 Ni učinkovitega jezika za zapis PIM
 Ni učinkovitih transformacijskih orodij (delno
generiranje ni dovolj)
 Standardi MDA so v začetni fazi razvoja
 Z uporabo sodobnih razvojnih orodij, ogrodij in
procesov je moč produktivnost povečati že v
okviru klasičnega razvoja
Primerjava klasičnega razvoja in MDD…
Klasičen
razvoj
…
Zajem zahtev
Večinoma
besedilo
…
Zajem zahtev
Analiza
Načrtovanje
Diagrami in
besedilo
Analiza – izdelava
PIM
Kodiranje
Diagrami in
besedilo
Načrtovanje – tran.
PIM v PSM
…
Koda
Kodiranje – tran.
PSM v Kodo
…
MDD
Večinoma
besedilo
PIM
PSM
Koda
generiranje
V MDD je bistvena izdelava PIM in izbira ustreznih implementacijskih tehnologij,
precej pa se zmanjša pomen klasičnega kodiranja.
Primerjava klasičnega razvoja in MDD…
Orodje za modeliranje /
Transformacijsko orodje

Poveča
se
pomen
analitičnih
vlog in hkrati zmanjša
izdelavo / preverjanje PIM
pomen vlog implementacije
PSM
Izbira platform,
PIM možnih novih arhitektur,
 Nekaj
vlog: vzorcev,
nastavitve orodja itd.
izbere,
 Analitik in načrtovalec PIM na podlagi izdelkov
zajema zahtev
ter
z orodjem
določi
izdelkov poslovnega modeliranja izdelata model PIM.
generira
izdela
 Izdelovalec PSM s pomočjo
Orodje zaorodja
izdelavo /za transformiranje PIM pretvori
preverjanje
v enega ali več modelov
PSM.definicije
Pred transformacijo
mora izbrati
Izdelovalec PSM
transformacije
ciljne platforme, arhitekture,
vzorce, tehnologije itd.
izdela
Definicija je vloga,
 Analitik
Razvijalec
definicij
transformacij
ki skrbi za izdelavo
in
transformacije
načrtovalec
PIM transformacij za transformacijska orodja.
definicij
Razvijalec def.
transformacij
Pregled prednosti in slabosti MDA
 MDD prinaša vrsto prednosti že v današnji obliki:
 višja produktivnost zaradi generiranja (celo do
40%)
 boljša arhitektura zaradi razvoja na višjem nivoju
abstrakcije
 višja stopnja skladnosti nastale kode
 v prihodnosti naj bi MDD potekal tako, kot danes
delujejo prevajalniki programskih jezikov
Pregled prednosti in slabosti MDA
 Na drugi strani pa ne smemo zanemariti kritik:
 Predpogoj za uspeh MDD (MDA) je ustrezen jezik
za zapis PIM.
 MDD bo uporaben šele s 100% generiranjem
kode.
 Pravi MDD s trenutnimi tehnologijami ni izvedljiv,
delni MDD pa ne prinaša nobene bistvene
prednosti.
Implikacije morebitne uveljavitve MDA
 Uveljavitev MDA v praksi bi prinesla vrsto
sprememb:
 Vloge:
• nove vloge, nova znanja
• manjši pomen vlog implementacije
• večji pomen vlog analize
 Proces:
• več časa za analizo in zajem zahtev
• velik del klasičnih aktivnosti implementacije bi izvedla
orodja (generiranje)
• bližje zaporednemu (slapovnemu) razvoju
 Osrednji pomen bi dobili izdelki analize, ki bi med drugim
predstavljali tudi “izvorno kodo”.
 Velik pomen orodij za generiranje.
MDA in podpora orodij…
 Orodja za razvoj na podlagi MDA:





orodja za preslikavo iz PIM v PSM
orodja za preslikavo PSM v kodo
orodja za preslikavo PIM v kodo
prilagodljiva transformacijska orodja
orodja za definiranje transformacij
 Današnja orodja dajo dovolj ugodnosti, ki jih
ponuja MDA, da bi bila uporabna.
 Poln potencial MDA še ni dosežen!
MDA in podpora orodij…
 Orodja, ki imajo dostopno evaluacijsko verzijo:









Compuware OptimalJ
ObjectFrontier FronierSuite professional
InnoQ iQgen
Interactive Objects Software ArcStyler
Objecteering Objecteering/UML
Metanology MDE
Aonix Ameos
Codagen Technologies Codagen Architect 3.2
Rational Software Architect
Uradni seznam zavezanih družb in skupin na uradni strani o razvoju
MDA organizacije OMG
MDA in podpora orodij
 Primeri orodij:





Teleologic TAU Generation2
Sosy OlivaNova Model Execution System
Tata Consultancy Services MasterCraft
Consyst REP++Studio
Borland Delphi 8
POVZETEK PREDAVANJ
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 560 -
Koledar predavanj
Predavanja v 2012
IBM
Innovation
Center
 03.01.2012:
 10.01.2012:
SCRUM
ORACLE
SOA
 17.01.2012:
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 561 -
Programski jeziki,
Principi razvoja
Arhitekture IR,
Ogrodja, vzorci,…
Razvoj IS
Fokus: obvladovanje razvoja!
Večje skupine
Metodologija strukturnega razvoja
Metodologija objektnega razvoja
Metodologije
Agilna metodologija SCRUM
V
Modelno usmerjen razvoj
Storitveno usmerjen razvoj s SOA
RAZVOJ INFORMACIJSKIH SISTEMOV
Bolonjski študijski program I. stopnje
©Laboratorij za podatkovne tehnologije
- 562 -
V