POSLOVNI INFORMACIJSKI SUSTAVI RAZVOJ INFORMACIJSKOG SUSTAVA Katedra za informatiku Ekonomski fakultet - Zagreb 1
Literatura Ž.Panian, K. Ćurko (ured.), Poslovni informacijski sustavi, Element, Zagreb, 2010. 3. poglavlje, str. 31-60
Sadržaj predavanja IS kao inženjerski proizvod Pristupi razvoju Projektni pristup razvoju informacijskog sustava Faze razvoja informacijskog sustava Načini razvoja informacijskog sustava Neke metode razvoja informacijskog sustava
IS kao inženjerski proizvod Kompleksni proizvodi – inženjerski proizvodi imaju karakteristike sustava za njihovu izgradnju odnosno razvoj potrebno je dobro poznavanje metoda, tehnika i alata izgradnje potrebno ih je neprestano održavati, jer bi bez održavanja nakon nekog vremena postali neupotrebljivi Principi razvoja inženjerskih proizvoda (iz područja arhitekture, strojarstva, elektrotehnike) mogu se primijeniti u informatici na razvoj IS-a
Ovladavanje kompleksnošću IS-a Tijekom razvoja arhitektura IS-a se opisuje skupom artefakata (dokumentacija koja opisuje sustav, a nije sam sustav) Artefakti se koriste prilikom razvoja i održavanja, jer opisuju funkcionalne i druge karakteristike IS-a (modele, definicije, specifikacije, nacrte …) U klasifikaciji artefakata može pomoći Zachmanov okvir arhitekture IS-a koji razmatra razvoj kroz: karakteristike IS-a uloge sudionika u razvoju IS-a
SOS sat Studynet ScanMe Informatizacija bolnica
Karakteristike IS-a (inženjerskog proizvoda) Karakteristika proizvoda Opis karakteristike proizvoda Opis za proizvod «zgrada» Opis za proizvod «informacijski sustav» struktura (statika) što čini proizvod prostorije i njihov raspored poslovni objekti implementirani kao podaci u bazi podataka aktivnost (dinamika) kako se koristi proizvod (upotrebljavaju njegovi dijelovi) aktivnosti u prostorijama (jesti, spavati, raditi …) poslovni procesi implementirani kao računalni programi ili manualni proceduri mjesto korištenja gdje se koristi proizvod (obavljaju aktivnosti) Mjesta obavljanja aktivnosti mjesta pohrane ili obrade podataka korisnik proizvoda tko koristi proizvod domaćini, gosti, kućni ljubimci korisnici informacijskog sustava vrijeme korištenja kada se koristi proizvod kada se obavljaju aktivnosti (jesti, spavati, raditi) poslovni događaji koji pokreću poslovne procese motivacija za razvoj zašto se koristi proizvod “riješiti” povećanu potrebu za prostorom ostvarenje nekog poslovnog cilja
Uloge sudionika u razvoju IS-a- analogija s automobilom Uloga u razvoju / faza razvoja Svrha razvoja Artefakti planer / planiranje koncept (ideja, svrha) proizvoda koncept proizvoda (kontekstualni model) analitičar / analiza specifikacija proizvoda prema zahtjevima vlasnika (korisnika) poslovni model proizvoda (konceptualni model) dizajner / oblikovanje oblikovanje (dizajn) proizvoda prema prethodnoj specifikaciji dizajnerski model sustava (logički model) izvođač / izrada proizvedeni proizvod tehnološki model (fizički model) podizvođač / izrada proizvedena komponenta proizvoda komponentni model (fizički podmodel)
Arhitektura IS-a = karakteristike × uloge faza razvoja (uloga) Model struktura (podaci) aktivnost (procesi) mjesto (lokacije) korisnik (ljudi) Vrijeme (događaj) motivacija (razlozi) planiranje (planer) Koncept (kontekstualni) glavni poslovni objekti glavni poslovni procesi glavne poslovne lokacije glavne organizac. jedinice glavni poslovni događaji glavni poslovni ciljevi opis poslovne tehnologije analiza (analitičar) Poslovni model (konceptualni) entiteti (objekti) procesi lokacije organizac. jedinice događaji poslovni ciljevi oblikovanje ili dizajn (dizajner) model IS-a (logički) tablice aplikacijske funkcije čvorovi sustava uloge događaj sustava poslovna pravila opis informacijskog sustava izrada (izvođač) tehnološki model (fizički) zapisi računalne funkcije fizički čvorovi sustava korisnici izvršenje poslovni uvjeti izrada (podizvođač) kompo- nentni model polja programske naredbe adrese identiteti prekid poslovni poduvjeti Informacijski sustav podaci mreža organiza-cija raspored strategija
Redoslijed faza u životnom ciklusu IS-a uvijek odozgo prema dolje, slijedeći prirodni tijek životnog ciklusa, no s različitim varijacijama: vodopadni (kaskadni) spiralni iterativnih ili inkrementalni (koračajni) pristup
Vodopadni (kaskadni) pristup dosljedno završavanje svih zadataka unutar jedne faze jest preduvjet prelaska na novu fazu rezultati prethodne faze su ulazi u sljedeću fazu Nedostaci: predugo ukupno vrijeme razvoja zahtjevi poslovnog sustava za IS-om se zbog dugog razvoja mogu promijenili Planiranje/strategija informacijskog sustava Analiza poslovnog sustava Oblikovanje informacijskog sustava Izrada informacijskog sustava Uvođenje u rad informacijskog sustava Održavanje informacijskog sustava
Spiralni razvoj Planiranje – postavljanje ciljeva projekta razvoja IS- a i definiranje alternativa Analiza rizika – analiza alternativa, prepoznavanje rizika u razvoju IS-a i pronalaženje načina otklanjanja rizika Inženjerske aktivnosti razvoja IS-a – poslovi analize, oblikovanja i izgradnje IS-a Ocjena korisnika – korisnička provjera rezultata izgradnje IS-a u promatranoj spirali izrada rješenja analiza i razrješenje rizika planiranje sljedeće faze utvrđivanje ciljeva
Iterativni i inkrementalni (koračajni) pristup Početno planiranje Planiranje Analiza Izgradnja Ocjenjivanje Uvođenje u rad Oblikovanje
Projektni pristup razvoju ISa Razvoj IS - projekt Projekt je skup većeg broja međusobno povezanih aktivnosti koje valja obaviti u određenom roku da bi se izgradio određeni proizvod Sudionici na projektu razvoja IS-a: korisnici poslovodstvo (menadžment korisnika) informatičari (projektanti sustava, analitičari, organizatori, programeri)
Projektni pristup razvoju ISa Korisnici i menadžeri će primjenjivati novi IS Menadžeri upravljaju poslovnim sustavom i IS-om i trebaju: • biti upoznati sa stvarnim mogućnostima i koristima uvođenja IS-a, • davati smjernice u projektu razvoja IS-a, • ocijeniti različite mogućnosti razvoja, • osigurati uvjete razvoja (sredstva) Informatičari zajedno s korisnicima analiziraju poslovni sustav i definiraju zahtjeve Informatičari samostalno oblikuju i izgrađuju IS
Projektni pristup razvoju ISa Mogući razlozi neuspjeha u izgradnji IS: nedovoljna potpora poslovodstva korisnik nije aktivno uključen u projekt različita interpretacija korisničkih zahtjeva dijelovi IS-a nisu usklađeni raspoloživa oprema je neadekvatna pretjerana očekivanja korisnika loše vođenje projekta zanemarivanje okruženja poduzeća nedovoljna educiranost članova tima
Projektni pristup razvoju ISa Korištenjem suvremenih metoda, tehnika i alata osigurava se: • dobra komunikacija između sudionika razvoja IS-a, • izvršenje zadataka na standardan i provjeren način, • učinkovit nadzor projekta razvoja s ciljem uočavanja pogrešaka u ranim fazama, • razvojna strategija kojom se uklanja ad hoc (improvizirano, prigodno) rješavanje problema, a dovoljna pozornost posvećuje analizi poslovanja
Faze razvoja informacijskog sustava Životni ciklus razvoja informacijskog sustava (engl. System Development Life Cycle - SDLC) planiranje IS-a analiza poslovnog sustava oblikovanje IS izrada IS uvođenje u rad IS održavanje IS
Faze izgradnje IS: planiranje IS Strateški plan IS - potrebe, ciljevi, nedostaci postojećeg i plan izrade novog IS-a (Zašto IS) Zadaci: odrediti korisnike i opseg IS-a ustanoviti nedostatke postojećeg IS-a ustanoviti ciljeve novog IS-a odrediti mogućnosti “kompjuterizacije” IS izrada studije izvedivosti IS-a i plana razvoja IS-a Analiza kritičnih faktora uspjeha, analiza procesa
Faze izgradnje IS: analiza poslovnog sustava Zadaci: detaljno i precizno definirati (korisničke, informacijske) zahtjeve koji se postavljaju pred IS: korisnik postavlja zahtjeve analitičar (informatičar) analizira zahtjeve Rezultat analize je specifikacija zahtjeva (ŠTO IS treba raditi)
Faze izgradnje IS: analiza poslovnog sustava Zadaci: ustanoviti: poslovne procese poslovne objekte poslovne događaje Poslovni procesi su poslovi koje treba obaviti (u vezi s poslovnim objektima) Poslovni objekti su materijalni ili nematerijalni elementi o kojima IS treba bilježiti podatke Poslovni događaji pokreću izvršenje poslovnih procesa
Faze izgradnje IS: analiza poslovnog sustava specifikacija zahtjeva – korištenje standardnih grafičkih prikaza (tehnika), npr.: dijagram raščlanjivanja dijagram toka podataka dijagram korištenja dijagram entiteta veza matrica entiteti/događaji
Dijagram rasčlanjivanja
Dijagram toka podataka
Dijagram korištenja
Dijagram entiteta i veza KORIŠTENJE USLUGA PACIJENT STOMATOLOG Dijagram entiteta i veza
Matrica entitet/događaj
Faze izgradnje IS: oblikovanje ISa Zadaci: razrađuje se KAKO će IS raditi (specifikacija rješenja) U fazi oblikovanja treba utvrditi: strukturu podataka strukturu procesa definirati tehnološke i organizacijske uvjete
Faze izgradnje IS: oblikovanje IS Struktura podataka IS-a (dijagrami objekata) oblikuje se u bazu podataka na računalu ili nekom drugom mediju (npr. u kartoteci) ŠIFRA PREZIME IME ADRESA TELEFON DATUM ZAPOSLENJA 1234 Mamić Ana Savska 3 013246783 13.07.2001. 1235 Tolić Ivan Ilica 13 012349871 01.01.2005. 1236 Jakić Mirko Gajeva 5 014885511 01.06.2003. 1237 Palić Lana Kaptol 6 014678997 0112.1997.
Faze izgradnje IS: oblikovanje ISa Struktura procesa oblikuje se algoritmom (postupkom) a prikazuje se različitim tehnikama dijagrama: akcijski dijagram pseudokod dijagram toka programa .....
Akcijski dijagram Pseudokod
Pseudokod ako status pacijenta =1 tada ako vrsta osiguranja =1 tada cijena usluge= cijena *0,7 inače cijena usluge= cijena *0,8 kraj ako inače ako vrsta osiguranja =2 tada cijena usluge= cijena *0,9 inače cijena usluge= cijena kraj ako;
Faze izgradnje IS: oblikovanje IS-a Definiranje tehnoloških i organizacijskih uvjeta IS-a: potrebni programi potrebno računalo, mreža računala, druga tehnička oprema organizacijski i kadrovski uvjeti za rad IS-a
Faze izgradnje IS:izrada ISa Zadaci: “fizički” se stvara informacijski sustav stvaranje računalnih program- algoritmi se «pretvaraju» u programski kod (C, Java,…) stvaranje baze podatka pomoću jezika za rad s bazom podataka (SQL) provjera (testiranje) rada izrada dokumentacije
Faze izgradnje IS:uvođenje u rad novog IS-a Zadaci: instaliranje opreme i programske potpore prijenos (unos) podataka prelazak na nov način rada testiranje izobraziti korisnike za rad s novim IS-om Načini uvođenja: izravno uvođenje novog IS-a paralelno uvođenje novog i rad starog sustava postepeno uvođenje
Faze izgradnje IS:održavanje ISa Zadaci: uočiti i ispraviti greške i nedostatke IS-a tijekom njegova rada prilagoditi IS promjenama poslovnog sustava i novim zahtjevima
Načini razvoja informacijskog sustava vanjski razvoj (engl. Outsourcing) vlastiti razvoj (engl. Insourcing) kupnja gotovog rješenja unajmljivanje gotovog rješenja (engl. Hosting)
Neke metode razvoja PIS-a: Zajednički (združeni) razvoj aplikacije Brzi razvoj aplikacije Razvoj aplikacije ponovnim korištenjem ranije stvorenih komponenti Unificirani proces za razvoj softvera Agilne metode za razvoj softvera
Zajednički (združeni) razvoj aplikacije engl. Joint Application Development, JAD Glavne ideje metode: svi zainteresirani mogu se uključiti u rad rad u timu rad kroz radionice (engl. Workshop) dokumentiranje svih aktivnosti JAD se razvija kroz pet faza: definiranje JAD projekta istraživanje korisničkih zahtjeva pripreme za sjednicu sjednica završni dokument
Brzi razvoj aplikacije engl. Rapid Application Development, RAD Cilj metode: povećanje brzine razvoja (prototipiranje) povećanje kvalitete Temeljna karakteristika: snažna interakcija korisnika i informatičara u razvoju aplikacije
Razvoj aplikacije ponovnim korištenjem ranije stvorenih komponenti U razvoju nove aplikacije moguće je ponovno koristiti : cijelu aplikaciju komponente (module) softverskog proizvoda pojedine funkcije Prednosti: Povećana pouzdanost Smanjen rizik Djelotvorniji rad stručnjaka Udovoljavanje standardima Ubrzavanje razvoja proizvoda Problemi: Poteškoće u pronalaženju dijelova koji se mogu ponovno koristiti Projektanti nevoljko koriste ranije stvorene dijelove Mogućnost povećavanja troškova održavanja Pomanjkanje alata kojima bi se ubrzala implementacija ranije stvorenih komponenti
Unificirani proces za razvoj softvera Primjena: iterativni i inkrementalni proces razvoja složenih softverskih sustava Arhitektura : Horizontalna dimenzija – prikazuje dinamičku strukturu procesa (ciklusi ,faze, iteracije) Vertikalna dimenzija – prikazuje statičku strukturu (aktivnosti koje se obavljaju u pojedinim fazama i iteracijama)
Unificirani proces za razvoj softvera
Agilne metode za razvoj softvera Agile Software Development Manifesto (2001. g.) Temeljne vrijednosti agilnog programiranja: Više vrijede: Pojedinci i interakcije nego procesi i alati Softver koji radi nego sveobuhvatna dokumentacija Suradnja s klijentima nego pregovaranje oko ugovora Reagiranje na promjene nego slijeđenje plana
Agilne metode za razvoj softvera Najpoznatije metode za razvoj softvera temeljenog na agilnim principima: Ekstremno programiranje (engl. Extreme Programming, XP). Scrum Razvoj temeljen na osobinama (engl. Feature Driven Development). Skupina metoda Crystal (engl. Crystal Family of Methodologies). Metoda dinamičkog razvoja sustava (engl. Dynamic System Development Method). Prilagodljivi razvoj sustava (engl. Adaptive Software Development). Razvoj softvera otvorenog koda (engl. Open Source Software Development).