25
1 Razvoj informacionih sistema Prof. dr Pere Tumbas [email protected] Prof. dr Predrag Matković [email protected]

Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

  • Upload
    others

  • View
    19

  • Download
    0

Embed Size (px)

Citation preview

Page 2: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

2

Procesni modeli razvoja informacionog sistema

Model prototipskog razvoja

Prikupljanje i

selektiranje

zahteva

Brzi

diza

jn

Redefin

isanje

pro

totip

a

Evaluacija

prototipa od

korisnika

Inži

njer

ski

proiz

vod

Izgradnja

prototipa

START

STO

P

Page 3: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

3

Procesni modeli razvoja informacionog sistema

Karakteristike:

Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije, sa ciljem da korisnik da svoj sud i odluči u pogledu zahteva;

Funkcionalna specifikacija proizvoda čini ulaz koji omogućuje preskakanje aktivnosti dizajna.

U najranijem periodu korisnik vidi način kako će se njegovi zahtevi zadovoljiti;

Komponente su najčešće korisnički interfejs, da bi se ostvarila povratna sprega sa korisnikom.

Konačna verzija rešenja se tek kasnije specificira i dizajnira;

Page 4: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

4

Procesni modeli razvoja informacionog sistema

Karakteristike:

Aktivnosti dizajna se inicijalno preskaču, i izrađuje primitivna verzija softvera koju korisnik može i samostalno razvijati;

Korisnik aktivno učestvuje u razvoju softvera, što obezbeđuje unapređenje kvaliteta;

Page 5: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

5

Procesni modeli razvoja informacionog sistema

Prednosti modela prototipskog razvoja:

Povećana brzina i kreativnost u razvoju.

Stalno obezbeđenje radne verzije proizvoda, koji služi analizi funkcionalnosti, performantnosti, adaptibilnosti i troškova.

Korisnik je stalno i maksimalno uključen i može menjati svoje zahteve što unapređuje kvalitet proizvoda.

Page 6: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

6

Procesni modeli razvoja informacionog sistema

Slabosti i nedostaci prototipskog modela

razvoja:

Nemogućnost kvalitetne i tačne procene i planiranja resursa.

Korisnik uočava radnu verziju softvera neznajući kako su njegovi delovi povezani, neznajući da aspekti kvaliteta u izgradnji nisu uzeti u obzir;

Korisnik viđenu radnu verziju smatra konačnom i nije spreman čekati dogradnju, već se smatra prevarenim;

Projektanti čine kompromise u izgradnji da bi se prototipovi stavili što pre u funkciju, pa tako manje kvalitetna rešenja ostaju u upotrebi;

Page 7: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

7

Procesni modeli razvoja informacionog sistema

Slabosti i nedostaci prototipskog modela razvoja:

Razvoj je dosta nekontrolisan.

Velika je verovatnoća da se zamena prototipa sa pravim proizvodom neuspešno okonča.

Dokumentacija za pravi proizvod uglavnom retko bude napravljena.

Neophodan je dogovor na startu projekta kojim bi se saglasili projektant i korisnik da prototip služi kao mehanizam definisanja zahteva, a sistem se razvija u cilju zadovoljenja kvaliteta i mogućnosti održavanja;

Page 8: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

8

Procesni modeli razvoja informacionog sistema

Spiralni model

Analiza rizika

inicijalnih zahteva

Analiza rizika na

korisničkim reakcijama

Donošenje odluke DA - NE !

Inicijalni prototip

Naredni nivo

Razvijeni sistem

Inžinjering

(razvoj narednog nivoa proizvoda)

Razvoj alternativa i analiza rizika

Kumulativni troškovi

Planiranje

Prikupljanje zahteva

i planiranje projekta

Planiranje na korisničkim

komentarima

Procene korisnika

Procene korisnika

Page 9: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

9

Procesni modeli razvoja informacionog sistema

Karakteristike:

Model se predstavlja spiralom sa četiri vrste

aktivnosti: planiranje, analiza rizika,

inženjering i ocenjivanje.

Tokom svakog ciklusa se identifikuje,

analizira i umanjuje rizik koji predstavlja

uslov za prelazak u novi ciklus;

Rad se terminira kada se konstatuje da je

rizik veliki;

Page 10: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

10

Procesni modeli razvoja informacionog sistema

Karakteristike:

Inženjering se obavlja u svakom ciklusu po

modelu vodopada ili modelu prototipskog

razvoja.

Broj aktivnosti raste, koliko se ciklusi

udaljuju od centra spirale;

Svakom iteracijom se razvija kompletnija i

složenija verzija softvera, ali se realizuju i

značajno viši troškovi;

Ukoliko se rizik ne identifikuje i analizira na

vreme, on može proizvesti brojne negativne

posledice;

Page 11: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

11

Procesni modeli razvoja informacionog sistema

Prednosti spiralnog modela:

U kratkom vremenskom intervalu se

realizuje funkcionalan proizvod.

Fleksibilnost u upravljanju fazom

inženjeringa i mogućnost kombinovanja

različitih pristupa.

Svaki ciklus razvoja se završava ocenom

rizika, koja predstavlja osnovu daljeg

razvoja;

Ponavljanje strogo definisanog redosleda

koraka pri čemu se stalno smanjuje stepen

apstrakcije u realizaciji;

Page 12: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

12

Procesni modeli razvoja informacionog sistema

Najrealniji model razvoja softvera za velike sisteme, jer omogućuje brzu reakciju na uočeni rizik;

Poseduje ugrađenu sistematičnost i temeljitost modela vodopada, ali istovremeno i mogućnost izvođenja iteracija i prototipskog razvoja;

Page 13: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

13

Procesni modeli razvoja informacionog sistema

Slabosti i nedostaci spiralnog modela:

Odsustvo veze prema postojećim standardima razvoja;

Zahteva više uniformnosti i konzistentnosti u razvoju;

Skup model za primenu na malim projektima jer analiza rizika zahteva specifične ekspertize koje su troškovno intenzivne.

Probleme stvara neblagovremeno otkrivanje rizika, koji multiplikuju probleme;

Relativno kratko vreme primene, oskudno iskustvo i veoma uska primena;

Page 14: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

14

Procesni modeli razvoja informacionog sistema

Model zasnovan na komponentama

"A" "B"

"C"

Model softver

komponenti

Model softver

komponenti

Model softver

komponenti

Komponente softvera

za ponovnu upotrebu

Komponente softvera

za ponovnu upotrebu

Page 15: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

15

Procesni modeli razvoja informacionog sistema

Model zasnovan na komponentama

Osnovni pristup je konfigurisati i

specijalizirati postojeće komponente

proizvoda.

Višestruko korišćenje uključuje:

Prethodno testiran kod,

Prethodno proveren dizajn,

Prethodno razvijene i korišćene specifikacije

zahteva,

Prethodno korišćene procedure testiranja.

Page 16: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

16

Procesni modeli razvoja informacionog sistema

Model zasnovan na komponentama

Koristi ponovnog korišćenja komponenti:

Podiže robustnost proizvoda.

Povećava produktivnost izrade troškova i smanjuje

troškove razvoja.

Podiže kvalitet proizvoda putem višestruko

proverenih komponenti.

Skraćuje vreme izrade.

Obezbeđuje adekvatnu dokumentaciju i lakše

razumevanje proizvoda.

Olakšava održavanje proizvoda.

Page 17: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

17

Procesni modeli razvoja informacionog sistema

Procesni model sjedinjenog procesa razvoja

(Unified Process)

Zasnovan na najboljim osobinama i pogodnostima konvencionalnih modela sa uvođenjem brojnih principa modela agilnog razvoja;

Preporučuje iterativni i inkrementalni proces razvoja, obezbeđujući evolutivnost;

Vremensku dimenziju čine ključni elementi UP su aktivnosti u sledećim fazama: inception, elaboration, construction i transition.

Page 18: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

18

Procesni modeli razvoja informacionog sistema

Procesni model sjedinjenog procesa razvoja

(Unified Process)

Page 19: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

19

Procesni modeli razvoja informacionog sistema

Procesni model sjedinjenog procesa razvoja

(Unified Process)

Početak: opšta vizija zahteva, inicijalni model slučajeva upotrebe, inicijalna procena rizika, plan projekta, prototipovi.

Elaboracija: analiza domena problema, postavljanje arhitekture sistema, razvoj plana projekta, identifikacija rizika

Konstrukcija: detaljni dizajn, razvoj komponenti i aplikacija, testiranje i njihova integracija, izrada uputstava i priručnika.

Tranzicija: predaja korisnicima, ispravka problema, dokumentovanje, obuka korisnika i sinhronizacija.

Page 20: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

20

Procesni modeli razvoja informacionog sistema

Procesni model sjedinjenog procesa razvoja

(Unified Process)

Drugu dimenziju modela čine procesi:

Poslovno modelovanje,

Zahtevi,

Analiza i dizajn,

Implementacija,

Testiranje,

Uvođenje.

Procesi se odvijaju kroz faze u svakoj

iteraciji manje ili više.

Page 21: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

21

Procesni modeli razvoja informacionog sistema

Procesni model sjedinjenog procesa razvoja

(Unified Process)

Poseduje prednosti i nedostatke identifikovane kod inkrementalnog modela i spiralnog modela jer podržava iteracije i permanentnu analizu rizika.

Page 22: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

22

Procesni modeli razvoja informacionog sistema

Agilni modeli razvoja

Veliki broj modela sa izraženom sličnošću i

filosofijom;

Principi agilnog procesa razvoja su:

Zadovoljenje korisnika ranom i neprestanom

isporukom upotrebljivog softvera,

Stalne izmene zahteva korisnika,

Kratki razvojni ciklusi,nekoliko nedelja do par

meseci,

Stalni interaktivan rad korisnika i inženjera,

Učesnici su motivisani, ljubazni, talentovani,

komunikativni “lice u lice”,

Jednostavnost,

Samoorganizovani timovi sa podelom

odgovornosti.

Page 23: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

23

Procesni modeli razvoja informacionog sistema

Agilni modeli razvoja

Agilni razvoj je neprikladan u sledećim

situacijama:

Nekooperativne organizacije,

Promenljivi procesi u organizacijama sa staloženim i

mirnim članovima tima vodi raspadu,

Veliki broj članova tima,

Posebno pogodan:

Timovi do 9 članova,

Specifični, kompleksni i visoko-promenljivi projekti,

Okruženje orijentisano na ljude i saradnju.

Page 24: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

24

Procesni modeli razvoja informacionog sistema

Kombinovani modeli

Prikupljanje i selekcija zahteva

AnalizaSpiralni

modelPrototip 4GT

4GT

Testi ranje

Iteraci je

Dizajn

Kodiranje

4GT

Iteraci je

Sistem

Održavanje

Page 25: Razvoj informacionih sistema - ef.uns.ac.rs · 3 Procesni modeli razvoja informacionog sistema Karakteristike: Razvija se inicijalni model softvera koji simulira njegove stvarne funkcije,

25

Hvala na pažnji!