Razvoj informacionih sistema - ef.uns.ac.rs 3 Razvoj informacionih sistema Razvoj informacionog sistema

Embed Size (px)

Text of Razvoj informacionih sistema - ef.uns.ac.rs 3 Razvoj informacionih sistema Razvoj informacionog...

  • 1

    Razvoj

    informacionih

    sistema

    Prof. dr Pere Tumbas ptumbas@ef.uns.ac.rs

    Prof. dr Predrag Matković pedja@ef.uns.ac.rs

    mailto:ptumbas@ef.uns.ac.rs mailto:ptumbas@ef.uns.ac.rs mailto:ptumbas@ef.uns.ac.rs mailto:ptumbas@ef.uns.ac.rs mailto:ptumbas@ef.uns.ac.rs mailto:ptumbas@ef.uns.ac.rs mailto:ptumbas@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs mailto:djovica@ef.uns.ac.rs

  • 2

    Razvoj informacionih sistema

    Struktura softverskog inženjeringa Razvojni principi,

    Metodi,

    Sredstva (alati) i

    Procedure.

    Izbor uslovljen: individualnim i kreativnim

    postupkom razvoja, različitošću sistema i

    različitošću okruženja.

  • 3

    Razvoj informacionih sistema

    Razvoj informacionog sistema

    Metode

    Intervju Grupno ispitivanje Brain-storming SWOT analiza

    Funkcionalno orijentisano Strukturisano Objektno orijentisano Planiranje znanja

    Tabele odlučivanja Procesno orijentisano programiranje Struktruno planiranje programa Objektno orijentisano programiranje

    Faza

    analize

    Planiranje

    Izvedba

    Sredstva Dijagrami Tabele Sheme/Slike/Prikazi

    Dijagrami Tabele I/O analiza HIPO IPO

    Blok dijagrami Strukturogrami Dijagrami strukture

    CASE alati 4GL tehnike SQL standard

    Nadzor

    sistema

    Izvedba

    Planiranje

    Faza

    analize

    Principi Dvo-nivoosko planiranje Iterativost (???) Odlučnost Projektni rad Odložene odluke Osiguranje kvaliteta Modelsko posmatranje Samodokumentovanje

    Posmatranje sa aspekta životnog ciklusa Funkcionišući modeli Spiralni model V model

    Koraci razvoja

    Opšta

    očekivanja

  • 4

    Razvoj informacionih sistema

    Razvojni principi - određuju način izvršenja rada.

     Opšti principi - modelovanja, iteracija,

    dokumentovanja, ..

     Metodološki koraci - modeli razvoja softvera

    (model životnog ciklusa, model vodopada,

    spiralni model, 4GT model, model prototipskog

    razvoja, kombinovani model).

    Metodi - propisani sistematski načini u izvršavanju

    pojedinih zadataka razvoja softvera.

     Mogu se kombinovati i ne postoji najbolji.

     Strukturiraju se po različitim kriterijumima.

     Pravilan izbor podrazumeva minimalne troškove i

    visoki kvalitet proizvoda.

  • 5

    Razvoj informacionih sistema

    Alati - automatizovana ili poluautomatizovana

    podrška metodima.

     CASE tehnologije.

    Procedure - sistemi metoda i alata u realizaciji

    razvoja.

     Opredeljuje ih - priroda problema i očekivanje

    korisnika.

     Definišu - redosled metoda/koraka, rezultate -

    izlaze koraka, kontrole radi obezbeđenja

    kvaliteta.

  • 6

    Razvoj informacionih sistema

    Metodologije - jedinstveni sistemi metoda.

     SADT,

     ISAC,

     James Martin,

     Gane and Sarson,

     SSADM,

     De Marco,

     SDM- Pandata,

     Lorensen,

     Martin and Odell,

     RUP

  • 7

    Razvoj informacionih sistema

    Životni ciklus:

     Prilikom idealnog razvoja informacionog

    sistema, proces razvoja je linearan.

    Identifikacija i izbor projekata

    Inicijalizacija projekata

    i planiranje

    Analiza sistema

    Dizajn sistema

    Implemen- tacija

    sistema

    Održavanje sistema

  • 8

    Razvoj informacionih sistema

    Životni ciklus:

     Nakon implementacije prve verzije javljaju se –

    novi ili izmenjeni zahtevi korisnika, potrebe za

    algoritmima koji će ubrzati rad softvera, okruženje

    postavlja svoje zahteve, tehnološki razvoj nameće

    potrebu za daljim izmenama, ...

     Ciklus se ubrzo ili za godinu-dve ponavlja.

  • 9

    Razvoj informacionih sistema

     U zavisnosti od značaja koji se pojedinim fazama razvoja softvera i informacionog sistema pridaje, forme organizacije i upravljanja razvojem, iskustva zaposlenih i prirode proizvoda, razlikuju se:

     Preskriptivni procesni modeli razvoja – konvencionalni procesni modeli sa delimično različitim tokom procesa razvoja ali sa istim generičkim aktivnostima;

     Model vodopada,

     Inkrementalni procesni modeli razvoja

     Inkrementalni model,

     RAD model,

  • 10

    Razvoj informacionih sistema

     Razvojni procesni modeli:

     Model prototipskog razvoja,

     Spiralni model,

     Specijalizovani procesni modeli:

     Model zasnovan na komponentama,

     Procesni model sjedinjenog procesa

    (Unified Process)

     Kombinovani procesni model

  • 11

    Razvoj informacionih sistema

     Procesni modeli agilnog razvoja:

     Extreme Programming (XP)

     Adaptive Software Development (ASD)

     Dynamic Systems Development Method

    (DSDM)

     Scrum

     Crystal

     Feature Driven Development (FDD)

     Agile Modeling (AM)

  • 12

    Procesni modeli razvoja informacionih sistema

     Model vodopada

    Analiza zahteva

    Verifikacija

    Promene u zahtevima

    Verifikacija

    Specifikacija zahteva

    Verifikacija

    Projektovanje

    Verifikacija

    Implementacija

    Verifikacija

    Integracija

    Verifikacija

    Funkcionisanje i

    održavanje

    Isporuka

    proizvoda

    Razvoj

    Održavanje

  • 13

    Procesni modeli razvoja informacionih sistema

     Karakteristike:

     Sačinjavaju ga aktivnosti koje se

    sukcesivno obavljaju;

     Iterativne interakcije između susednih

    aktivnosti;

     Svaka aktivnost poseduje strogo definisane

    ulaze i izlaze;

     Pretpostavka realizacije naredne aktivnosti

    su rezultati realizacije prethodne aktivnosti;

  • 14

    Procesni modeli razvoja informacionih sistema

     Karakteristike:

     Realizacija softvera je posledica obavljenih

    svih aktivnosti razvoja bez izuzeća;

     Najstariji model koji je najšire i najviše

    primenjivan do danas;

     Kombinuje se sa ostalim modelima, većini

    čini osnovu;

     Obezbeđuje solidnu dokumentaciju i lakše

    održavanje;

  • 15

    Procesni modeli razvoja informacionih sistema

     Prednosti modela vodopada:

     strogo definisani i kontrolisani proces,

    kojeg karakterišu standardizovane i

    detaljno opisane aktivnosti u svim fazama

    razvoja,

     uključeno testiranje odnosno verifikacija

    izvršenih aktivnosti i dobijenih rezultata na

    kraju svake faze razvoja,

     detaljna i kvalitetna dokumentacija, koja se

    generiše u svim fazama razvoja,

    istovremeno kada se izvršavaju pojedine

    aktivnosti i

     relativno laka zamena pojedinih učesnika u

    procesu razvoja.

  • 16

    Procesni modeli razvoja informacionih sistema

     Nedostaci modela vodopada:

     nefleksibilna podela aktivnosti razvoja u

    posebne faze i nedostatak povratne sprege

    između faza,

     greške koje se ne otklone u pojedinim

    fazama razvoja kada se vrši testiranje ili

    verifikacija proizvoda, mogu imati stravično

    distorziono dejstvo na razvoj u celini,

     nemogućnost obavljanja iteracija tokom

    realizacije razvoja jer iste izazivaju ozbiljne

    probleme i konfuziju u primeni modela,

     teška prilagodljivost neizvesnosti koja

    uglavnom egzistira na startu projekta, kada

    je korisniku veoma teško da eksplicitno

    navede sve svoje zahteve prema softveru,

  • 17

    Procesni modeli razvoja informacionih sistema

     Nedostaci modela vodopada:

     dugotrajan proces razvoja te korisnik mora

    biti veoma strpljiv i istrajan jer su mu radne

    verzije softvera dostupne tek na kraju

    aktivnosti razvoja, a do tada postoji samo

    pisana specifikacija funkcionalnosti

    budućeg softvera,

     samo potpuno gotov proizvod je upotrebljiv

    od korisnika,

     visoki razvojni troškovi.

  • 18

    Procesni modeli razvoja informacionih sistema

     Inkrementalni model

    Inicijalni koncept

    funkcionalnosti

    Analiza zahteva

    Projektovanje

    arhitekture

    Faza 1: Detaljni dizajn, kodiranje,

    testiranje i distribucija

    Faza 2: Detaljni dizajn, kodiranje,

    testiranje i distribucija

    Faza n: Detaljni dizajn, kodiranje,

    testiranje i distribucija

  • 19

    Procesni modeli razvoja informacionih sistema

     Inkrementalni model

     Karakteristike:

     Model u osnovi poseduje model vodopada

    pošto svaki inkrement predstavlja

    pojedinačno primenjen model vodopada;

     Potpuno se razvija inicijalni podskup

    soft