OISv 02a Ucesnici-Metodi 2012

  • Upload
    dina-t

  • View
    219

  • Download
    0

Embed Size (px)

Citation preview

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    1/34

    ELEKTROTEHNIČKI FAKULTET U SARAJEVU OSNOVE INFORMACIONIH SISTEMA

    Osnoveinformacionih

    sistemaMetode, učesnici 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    2/34

    Sadržaj 

    • Učesnici u razvoju IS-a?

    • Cijena sistema/greške 

    • Značaj metoda, tehnike i alata u razvoju IS-a

    • Pregled metoda

    • Odakle početi? 

       2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    3/34

      vs

    realizacija računarski podržanog

    IS-a   2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

     y1, y2, ..., ym

    IS

    F1, F2, ..., Fz

     x1, x2, ..., xn

    T

    00110001001 011

    011111000 10...

    0011010110001..

     

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    4/34

    Učesnici u razvoju IS-a – nekad i sad

       2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

    Korisnik Poslovni

    analitičar 

    Tehnički 

    analitičar 

    (dizajner)

    Programer Računar 

    1001...

    ?

    Moderni računari su razvijeniu toku 2. svjetskog rata,primarno u vojne svrhe.

    Programiranje jepodrazumjevalo znanje o

    načinu njihovog unutrašnjegrada, zbog čega je bilo

    ograničeno na naučnike iinžinjere, pa su i upotreba itržište bili vrlo ograničeni. 

    HW performanse supočele da rastu sa

    pojavom tranzistora.Tokom 50-tih godinarazvijen prvi super

    računar.

    Cijena je ograničavalaposlovnu primjenu

    Poslovna primjena

    morala da sačeka do 60-ih godina i pojave

    programskih jezika poputCOBOL-a i FORTRAN-A.

    Novo zanimanjeprogramer.

    Razvoj sw je ostao vandomašaja širokog kruga

    korisnika do 80-ih godina ipojave PC-a i programskih jezika kao što su BASIC,C, PASCAL, ... kojima su

    korisnici mogli jednostavno razvijati sw.

    SW aplikacije kao što sudBase, LOTUS 1-2-3,WordPerfect stimulišu

    brzo prihvatanje računarai širenje tržišta.

    Razvojna okruženja nezahtjevaju mnogo

    treninga te razvoj sw

    dobija na zamahu

    U gužvi nastaloj usljedbrzog razvoja aplikacija saalatima koji se lako fokusnije bio na metodama i

    procesima razvoja.

    Pojava mrežnog sw,client-server modela

    baza podatakausložnjava pitanja

    projektovanja iodržavanja sw. 

    Popularizacija interneta,nove tehnologije, raznovrsna

    razvojna okruženja. 

    IT sistemi postajunezaobilazan resurs za širokispektar poslovnih područja,ali i svakodnevnog života

    pojedinca.

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    5/34

     

    korisnici…. 

       2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

    http://localhost/var/www/apps/conversion/tmp/scratch_1/The%20IT%20Crowd%20-%20Jen%20Brings%20the%20Internet%20to%20the%20Shareholders%20m.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_1/The%20IT%20Crowd%20-%20Jen%20Brings%20the%20Internet%20to%20the%20Shareholders%20m.flv

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    6/34

    Učesnici u razvoju IS-a – persp. korisnika

       2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

    Korisnik

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    7/34

    Učesnici u razvoju IS-a – persp. PA

       2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

    Poslovni

    analitičar 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    8/34

    Učesnici u razvoju IS-a – persp. TA

       2   0   1   0 .

       /   2   0   1   1 .  g  o   d   i  n  a 

    Tehnički 

    analitičar 

    (dizajner)

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    9/34

    Učesnici u razvoju IS-a – persp. programera

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Programer

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    10/34

    Učesnici u razvoju IS-a – persp. HW

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Računar 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    11/34

    Učesnici u razvoju IS-a – nekad i sad

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Korisnik Poslovni

    analitičar 

    Tehnički 

    analitičar 

    (dizajner)

    Programer Računar 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    12/34

    SDLC (rekapitulacija)

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

     ANALIZATreba da odgovori na pitanje:Šta treba da bude urađeno?  

    DIZAJNTreba da odgovori na pitanje:Kako ono što treba da budeurađeno, treba da budeurađeno?  

    KODIRANJE I TESTIRANJETreba da rezultira izvršnimkodom aplikacije.

    IMPLEMENTACIJA IOBUKA KORISNIKATreba da rezultiraimplementacijom sistema kod

    krajnjeg korisnika.

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    13/34

    Cijena sistema/greške 

    • Analiza

    • Dizajn

    • Razvoj

    • Implementacija/korištenje 

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    14/34

    Zaključak  

    • Analiza

    • Dizajn

    • Razvoj

    • Implementacija/korištenje 

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Treba nam recept koji će nam reći...  ... Šta da radimo?  ... Kako da radimo?

    ... I sredstva koje će automatizirati procese! 

    MetodTehnik 

    a

     Alat

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    15/34

    Pristupi – “Code fix” 

    • Ne predstavlja metod ali je pristup kojeg neki nastavljaju da koriste

    • Neki ga autori nazivaju i pristupom tipa “samo neka radi” • Inicijalno kupac može da u formi neke “slabe” specifikacije navede šta mu je potrebno

    (npr. skica) ili je specifikacija utemeljena na ekspertskom znanju developer-a o odgovarajućemposlovnom području 

    • Razvoj počinje brzim ciklusima kodiranja iza kojih slijedi popravka • S vremena na vrijeme developer može da demonstrira aplikaciju kupcima i dobija povratnu

    informaciju nakon čega nastavlja razvoj. • Većina vremena se provodi u kodiranju i otklanjanju grešaka. 

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Specifikacijasistema

    Konačna verzija

    Kodiranje Ispravljanjegrešaka 

    Kvalitet proizvoda je najčešće mali  Sistem često završava sa nekontrolisanom, zamršenom zbrkom koda kome nedostaje

    prilagodljivost, mogućnost ponovne upotrebe i saradnje  Sistemi koji se razvijaju “ad hok” se najčešće teško proširuju i održavaju 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    16/34

    Pristupi – Rapid Application Development (RAD)

    Pristup koji je nastao kao odgovor na izazove razvoja sw u distribuiranom okruženju, odnosno kaopokušaj odgovora na pitanje “kako da brzo napravimo sistem i da zadržimo kontrolu nad konačnimproduktom”. 

    Nakon što razvoj stigne do unaprijed definisane tačke, razvojni tim demonstrira sw, kupac testira išalje povratne informacije da tim podesi programiranje u željenom pravcu. 

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Zahtjevi

    Dizajn

     Verifikacija Razvoj TestiranjeKonačna verzija

    Fino

    podešavanje 

    Petlja sa povratnom spregom

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    17/34

    Pristupi – Waterfall

    Nastao 60-ih godina u mornarici SAD

    Na kraju svake faze tim kompletira rezultate

    U narednu fazu prelazi se tek ako je kupac odobrio rezultat prethodne faze U slučaju da su potrebne promjene vrlo je teško vratiti se u prethodnu fazu 

    Pristup je upravljan ciljevima, zadacima i dokumentacijom koja može biti i vrlo obimna 

    Značajna pažnja se posvećuje planiranju 

    Pogodan za sisteme u kojima su zahtjevi kupca strogi i unaprijed poznati

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Koncept

    Zahtjevi

    Dizajn

    Kodiranje

    Testiranje

    Implementacija

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    18/34

    Pristupi – Isporuke po

    etapama

    • Modifikacija waterflow pristupa ukojoj se funkcije sistema, a nakondetaljne analize i osnovnog dizajna,isporučuju u etapama 

    • Kupac može najprije dobiti diosistema koji je za njega značajniji, aostatak kasnije

    • Moraju se u obzir uzeti međusobne

    zavisnosti komponenata

    • Rizik cijelog projekta se smanjuje jer se prave manji dijelovi

    • Vraćanje u prethodnu fazupredstavlja poteškoću 

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Koncept

     Analiza zahtjeva

    Osnovni dizajn

    Kodiranje

    Testiranje

    Implementacija

    Det. dizajn etapa 1

    Kodiranje

    Testiranje

    Implementacija

    Det. dizajn etapa 2

    ...

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    19/34

    Pristupi – Iterativni/spiralni

    pristup• Razvoj i

    poboljšavanjesistema krozvišestruke iteracije 

    2010./2011. godina 

    Zahtjevi  Analiza i dizajn

    Implementacija

    Test

    Okruženje Procjena

    Ugradnja

    Planiranje

    Poslovnomodeliranje i

    inicijalnoplaniranje

    RUP – RationalUnifiedProcess

    • Predviđanje -pojašnjavanjezahtjeva zajedno skupcem

    • Planiranje – Planprojekta koji opisujezadatke, zavisnosti,resurse

    • Razvoj – razvoj,kodiranje i testiranje

    • Stabilizacija – finalnotestiranje i isporukakupcu

    predviđanje 

    planiranjerazvoj

    stabilizacija

    Odobrenizahtjevi

    Odobrenplan

    F-jespremne

    Isporuka

    MSF  – Microsoft Solutions Framework

     XP - ExtremeProgramming

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    20/34

    Pristupi – Agilne metode

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Četiri decenije razvoja softvera.  U početku je bio haos.  Radi toga je uveden red.

    ... previše reda 

    Manifest agilnog razvoja

    "Mi pronalazimo bolje načine razvoja softvera čineći i pomažući drugima da to čine. Kroztaj rad naučili smo vrijednovati: 

    Pojedince i odnose iznad Procesa i alata

    Funkcionalan softver iznad Iscrpne dokumentacije

    Saradnju s kupcem iznad Pregovaranja i ugovora

    Reagovanje na promjenu iznad Praćenja plana 

    To jest, premda su stvari s desna bitne, mi vrednujemo stvari s lijeva više" 

     Agile Alliance (više autora) 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    21/34

    Pristupi – Agilne metode

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

     Agilni principi

    Prihvatanje promjena, čak i kasno u razvoju  Česte isporuke cijelog softvera  Management i razvojni tim moraju tijesno sarađivati

    svakodnevno

    Projekt čine motivirani pojedinci  Kontinuitet razvoja i jednostavnost

    Funkcionalan softver je jedina mjera napretka

    Samoorganizacija i samoprilagodljivost

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    22/34

    Primjer - CDM Classic metod

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Tip:  CDMC.ppt

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    23/34

    Primjer - CDM Fast Track

    metod

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    24/34

    Primjer - CDM Fast Track

    metod

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    25/34

    Primjer – Extreme programming (XP)

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

     Agilna metoda koju mogu da koriste timovi male i srednje veličinekoji rade na razvoju programa u uslovima kada se zahtjevi brzomjenjaju

    Zasnovan na osnovnim vrijednostima, a podržavaju ga aktivnosti,praksa i principi

    Osnovne vrijednosti: Jednostavnost

    (... YAGNI)

    Komunikacija(fokus na usmenojkomunikaciji, ne nadokumentaciji)

    Povratna sprega(kupac-developer)

    Hrabrost(samopozdanje da seprogramira brzo i akotreba da se pravi izpočetka) 

    Praksa: Planiranje igre

    (plan na višem nivou za narednu verziju ili iteraciju)  Male verzije (česte verzije)  Metafora (zajednička vizija, termini i jezik)  Jednostavan dizajn

    Testiranje(automatizovani testovi, razvoj testova prije koda)

    Refaktorisanje (poboljšanje dizajna koda)  Programiranje u paru

    Kolektivno vlasništvo  Radna nedelja 40 sati

    Kupac član tima  Standardi u kodiranju

    ...

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    26/34

    Primjer – Extreme programming (XP)

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Na prvom ali i drugim sastancima sa korisnikom sedefiniraju priče korisnika (user stories) kojeodređuju šta program trebao da uradi. 

    U “igri planiranja” procjeni se vrijeme potrebno zaimplementaciju pojedinih priča i zajedno sakorisnikom se isplaniraju izdanja koja će korisniktestirati.

    Za svako izdanje isplaniraju iteracije (ovo tim možebez korisnika). Kupac opisuje timu testoveprihvatljivosti.Testovi prihvatljivosti se provode na svakom većemkoraku, a u provođenju aktivnu ulogu ima kupac. Kupac se konstantno upućuje u stanje razvoja (npr.kad god ima vremena) prikazivanjem trenutne radneverzije.

    Kratki dnevni jutarnji sastanci na kojima sedogovaraju zadaci za datu iteraciju i dodjeljujuprogramerskim parovima.

    Programerski parovi najprije razvijaju kod zafunkcije testiranja, a tek potom funkcionalni diokoda.

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    27/34

    Recept???

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    ?

    TIM,pozitivna atmosfera,

    liderstvo,

    iskustva/“know-how”  

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    28/34

     

    TIM 

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    http://localhost/var/www/apps/conversion/tmp/scratch_1/The%20IT%20Crowd%20_%20Team%20Players%20_%20Channel%204.flvhttp://localhost/var/www/apps/conversion/tmp/scratch_1/The%20IT%20Crowd%20_%20Team%20Players%20_%20Channel%204.flv

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    29/34

    Učesnici u razvoju IS-a – nekad i sad

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Korisnik Poslovni

    analitičar 

    Tehnički 

    analitičar 

    (dizajner)

    Programer Računar 

    ? ?

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    30/34

    Demonstracija

    • Pitanja:

    • Kolika su odstupanja?

    • Kako unaprijediti proces?

    • Šta ne treba mijenjati? 

    • ...

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    31/34

    Izvori informacija

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    Dokumentacija

    Korisnici(strateški, taktičkii operativni nivo)

    Stari sistem (aplikacija, izvještaji,izvorni kod, korisnička dokumentacija ) 

    Ljudi koji održavaju ilisu učestvovali u razvojustarog sistema

    Intervju

    Pregleddokumentacije

    Upitnici

    Pregled korisničke i sistemske

    dokumentacije

    Pregled izvještaja 

    Observacija

    Pregled izvornog

    koda

    JAD sesije

    Web-basedGroupware

    ERD dijagrami

    Modeliranje procesa

    DFD dijagrami

    Funkcijski dijagrami

    Prikupljanje inf.(Information gathering)

     Analiza potreba(Requirements analysis)

    • jedan od najznačajnijih i najobimnijihizvora informacija• kompleksna, delikatna i “skupa” tehnika • nikada se ne fokusirati na samo jedanizvor informacija• menadžeri često imaju šire vizije irazumijevanje cjeline; otvoreniji zapromjene i poboljšanja • operativno osoblje bolje razumije dnevneoperacije i problematiku• ljudi koji su učestvovali u razvoju starogsistema poznaju sistem i mogu pružitiinformacije koje su ukodirane u sistemu;često znaju više od toga kako sistem radinego krajnji korisnici

    • manje “skupa” tehnika • nije nužno prisustvo analitičara (e-mail,pošta, ...) • kreiranje dobrog upitnika i instrumentarija

     je delikatan zadatak• pogrešno struktuirani i provedeni upitnicimogu voditi pogrešnim zaključcima 

    • vrlo iskoristiva tehnika za razmjenu ideja ipostizanje saglasnosti• ne zahtjevaju eksplicitne sastanke• korisnicima daju slobodu u izboruvremena reakcije• specifičan tip intervjua u kojem učestvujeviše zainteresiranih strana i koji ima za ciljda se postigne konsenzus i/ili projekatpokrene naprijed sa mjesta gdje je stao• skupa tehnika i zahtjeva detaljnupripremu• ako se ne vodi dobro može degenerisati u

    forume za iznošenje mišljenja 

    • zahtijevna i ne previše zabavna tehnika • omogućiti uvid u predviđenu organizacijuposla, procedure i aktivnosti• pregled dokumenata koji cirkulišu usistemu• otkriti zahtjeve korisnika koji nisuotkriveni u drugim izvorima; npr. sistem je

    dugo u upotrebi, te se određeni zahtjevi jednostavno podrazumijevaju• mogu dati dobar pregled korisničkihzahtjeva podržanih starim sistemom 

    • pregled izlaza iz starog sistema možepomoći da se složi mozaik fukcionalnostisistema• odlučiti koji će izvještaji biti zadržani,promijenjeni ili odbačeni 

    • saznati koji dio sistema sistema korisnicikoriste i na koji način • saznati koji dio sistema korisnici ne koristei saznati zašto 

    • nastojati što manje uticati na stvarni tokprocesa

    • otkriti korisničke zahtjeve implementirane

    u starom sistemu (složeni algoritmi ili jednostavnija poslovna pravila)

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    32/34

    Analiza...

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

    ?

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    33/34

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a 

  • 8/18/2019 OISv 02a Ucesnici-Metodi 2012

    34/34

    Pitanja

    ?

       2   0   1   0 .

       /   2   0   1   1 .

      g  o   d   i  n  a