Razvoj IS u distribuiranom okruženju · 1. “FRONTALNI” PRISTUP, RAZVOJ SISTEMA U JEDNOM...
Transcript of Razvoj IS u distribuiranom okruženju · 1. “FRONTALNI” PRISTUP, RAZVOJ SISTEMA U JEDNOM...
Razvoj IS u distribuiranom okruženju
2/47
Karakteristike razvoja IS u distribuiranom okruženju
Pojam i namena modela, ciljevimodeliranjaLogički i fizički aspekti modelaStatički i dinamički aspekti modelaModel životnog ciklusa razvoja ISIterativno – inkrementalni razvoj
3/47
Pojam i namena modela
• Model je simplifikacija realnosti
• Model nekog sistema je apstrakcija tog realnog sistema iz odreñenog uglaposmatranja
• Namena modela: bolje razumevanjesistema koji se razvija
4/47
Šta je vizuelno modeliranje?
Računarski sistem
Poslovni proces
Narudžbina
Stavka
Dostava
“Modeliranje ‘snima’ bitnedelove sistema.”
Dr. James Rumbaugh
Vizuelno modeliranje jemodeliranje korišćenjemstandardnih grafičkihnotacija
5/47
Ciljevi modeliranja
• omogućava da se specificira struktura i ponašanje sistema
• daje šablon koji usmerava konstrukcijusistema
• dokumentuje projektne odluke koje se donose
• pomaže vizuelizaciju sistema• omogućava ispitivanje projektnih odluka po
relativno niskoj ceni
6/47
Različiti sistemi
Komponente(reusable
components)
Vizuelno modeliranjeolakšava ponovno korišćenje koda (reuse)
7/47
ISTORIJA
• “HEROJSKO DOBA” - REŠAVANJE PROBLEMA ISKLJU ČIVO PROGRAMIRANJEM
DO 1970, KOD MNOGIH TRAJE I DALJE
• STRUKTURNE METODE: STRUKTURNA ANALIZA I STRUKTURNO PROJEKTOVANJE
1965 –1985
• KONVENCIONALNI PRISTUP (danas): MODELI PODATAKA, BAZE PODATAKA I JEZICI IV GENERACIJE
1980 – TRAJE I DALJE
• OBJEKTNE METODE1980 – I DALJE
• STANDARDI - UML 1998 I DALJE
8/47
ISTORIJA
upravljanjedatotekama upravljanje
bazamapodataka upitni jezici
Evolucija obrade podatakat
transakcioniizveštaji batch obrade
fleksibilniizveštaji
ad hoc izveštaji
podaci u programima
9/47
ISTORIJA
interaktivnimodeli
kompjuterskimodeli
mašine zaračunanje
simboličkimodeli
tEvolucija modela
10/47
ISTORIJA
Konvergencija evolucija obrade podatakai modeliranja
interaktivnimodeli
modeliranjeupitnijezici
podaci
korisnik
dijalog
Logički i fizički aspekti modela
12/47
Logički i fizički aspekti modela
Logički model sistema opisuje postojanje i značenje ključnih apstrakcija i mehanizamakoji obrazuju prostor problema ili definišuarhitekturu sistema
• Fizički model sistema opisuje konkretnusoftversku i hardversku kompoziciju
13/47
Logički i fizički aspekti modela
Logički model: struktura i relacijeizmeñu klasa i struktura i relacijeizmeñu objekata
• Fizički model: arhitektura modula i arhitektura procesa
Statički i dinamički aspekti modela
15/47
Statički i dinamički aspekti modela
�Statički aspekti modela se fokusiraju nanjegovu strukturu (model podataka)
�Dinamički aspekti modela se fokusiraju nanjegovo ponašanje (model procesa)
�Realni sistemi imaju dinamičko ponašanje: • objekti se kreiraju i uništavaju
• objekti šalju poruke nekim redosledom
• u mnogim sistemima spoljašnji dogañaji izazivajuoperacije izvesnih objekata
16/47
Pretpostavke za kvalitetan IS
JEDINSTVEN SISTEM OZNAČAVANJA� Paralelni sistem označavanja� Katalog predmeta poslovanja� Interni standardi i standari kvaliteta (ISO 9000)
JEDINSTVEN MODEL SISTEMA� Dekompozicioni dijagrami� Dijagrami toka podataka� Entitetni dijagrami� UML dijagrami
JEDINSTVENA (ne nužno jedna) BAZA PODATAKADISTRIBUIRANE APLIKACIJE
Model životnog ciklusa razvoja IS
18/47
Model životnog ciklusa razvoja IS(Waterflow)
definisanjestrategije
snimanje postojećeg
stanja
projektovanje
aplikativno modeliranje
implementacija
održavanje
19/47
Model životnog ciklusa razvoja IS• Definisanje strategije
• Snimanje postojećeg stanja• Projektovanje
• Aplikativno modeliranje• Implementacija
• Održavanje
20/47
Definisanje strategije
Definisanje strategije i ciljeva razvoja IS u skladu sa strategijom i ciljevima preduzećaIstraživanje savremenih pravaca razvoja
informacionih sistema� Sagledavanje mogućnosti savremenih
informacionih tehnologija� Utvrñivanje mogućnosti primene savremenih
informacionih tehnologija
Definisanje plana razvoja IS
21/47
Model životnog ciklusa razvoja IS
• Definisanje strategije
• Snimanje postojećeg stanja• Projektovanje
• Aplikativno modeliranje• Implementacija
• Održavanje
22/47
Analiza zahteva korisnikaDefinisanje zahteva iz dokumenata
Postupak odozdo-na-goreUlazna dokumenta,Kartoteke, fascikle (skladišta podataka)Izlazna dokumentaUzorci izveštaja,Organizacioni propisi o načinu rada� Da li postoje i koliko se poštuju� Da li postoji služba interne standardizacije� Da li su definisani normativi rada
23/47
Analiza zahteva korisnika:Definisanje zahteva intervjuom
Postupak odozgo-na-dolePripreme za izvoñenje intervjua� Liste rukovodilaca i vremenski raspored intervjua,� Teme za razgovor i potvrda termina,� Izbor opštih pitanja i probni intervju
Sagledavanje poslovanja top menadžmenta� Dekompozicija ciljeva, funkcija, procesa, potreba,
problema, projekata, organizacije, lokacije� Bolji odnosi tima i rukovodioca� Definisanje prioriteta i preporuka
24/47
Snimanje postojećeg stanja
Dokumentovanje - Strukturna sistem analiza
jasna grafička specifikacija, pogodna zakomunikaciju sa korisnikom
jasan i detaljan opis sistema (primenom metodeapstrakcije, sistem se na višim nivoima apstrakcijeopisuje jasno, a na nižim detaljno)
logička specifikacija procesa, (kako sistem sada radi, kako budući sistem treba da radi - ne kakoće biti implementiran)
25/47
Najčešći nalazi snimka postojećeg stanja:
Razvijene parcijalne aplikacije
Nejedinstven sistem označavanja
Nekonsultovanje zahteva korisnika
Nepostojanje adekvatne dokumentacije
26/47
Model životnog ciklusa razvoja IS
• Definisanje strategije
• Snimanje postojećeg stanja• Projektovanje
• Aplikativno modeliranje• Implementacija
• Održavanje
27/47
Projektovanje
Analiza strukture sistema� Identifikacija procesa u sistemu� Definisanje tokova podataka� Definisanje skladišta podataka� Identifikacija interfejsa koji učestvuju u tokovima
podataka
Izrada modela sistema� Definisanje objekata sistema� Definisanje veza i relacija izmeñu objekata sistema
28/47
Po završetku projekta -
Definisanje načina realizacije informacionogsistema� Izbor sistemskog softvera� Izbor koncepta skladištenja podataka� Izbor softverskih alata� Utvrñivanje nosioca realizacije razvoja
Specifikacija potrebnih resursa
29/47
Model životnog ciklusa razvoja IS
• Definisanje strategije
• Snimanje postojećeg stanja• Projektovanje
• Aplikativno modeliranje• Implementacija
• Održavanje
30/47
Aplikativno modeliranje
Fizička realizacija IS
Generisanje baza podatakaIzrada aplikacija� Programiranje logike aplikacije� Kreiranje grafičkog interfejsa prema korisniku
� Definisanje menija, izgleda formi, upita
� Definisanje standardnih izveštaja� Testiranje aplikacija� Definisanje rasporeda softverskih komponenti
31/47
Model životnog ciklusa razvoja IS
• Definisanje strategije
• Snimanje postojećeg stanja• Projektovanje
• Aplikativno modeliranje• Implementacija
• Održavanje
32/47
Implementacija
Postavljanje i fizi čko povezivanje opremeInstaliranje softvera� Instaliranje sistemskog softvera� Postavljanje baze podataka� Instaliranje aplikacija
Inicijalno formiranje baze podataka� Izrada pomoćnih aplikacija za formiranje baze podataka� Prikupljanje podataka za bazu podataka� Unos podataka u pomoćne datoteke� Prečišćavanje i sreñivanje podataka� Punjenje baze podataka
Obuka � neposredni korisnici, priprema, operativno rukovodstvo, top
menadžment
33/47
Model životnog ciklusa razvoja IS
• Definisanje strategije
• Snimanje postojećeg stanja• Projektovanje
• Aplikativno modeliranje• Implementacija
• Održavanje
34/47
Održavanje
KorekcijeInovacije
� detaljna analiza !
� testiranje !� dokumentovanje !
35/47
NEDOSTACI:1. “FRONTALNI” PRISTUP, RAZVOJ SISTEMA U
JEDNOM PROLAZUAnaliza celog sitema, projektovanje celog sistema,
implementacija celog sistema, uvoñenje celog sistema2. SLABA EFIKASNOST - DUGO VREME UVOðENJA
Realni rizik da se sistem promeni do završetka svih fazaciklusa.
3. NISKA EFEKTIVNOST"U proseku, samo oko 30% novih informacionih sistema u
potpunosti zadovoljava korisnika" – citat iz ranih 80-tih godina
⇒⇒⇒⇒⇒⇒⇒⇒ SOFTVERSKA KRIZA
Evolutivni prototipski razvoj IS
37/47
Evolutivni prototipski razvoj IS
validacija
održavanje
program
prototipskoformiranjespecifikacija
evolutivnimodel
... zahtev (?)
38/47
Evolutivni prototipski razvoj IS
� Višestruko ponavljanje životnog ciklusa, pri čemu rezultat svake iteracijepredstavlja jedan relativno mali, po pravilu korisniku značajan, deo projekta(inkrement).
KRITERIJUM: Dva do tri meseca razvoja za jedan inkrement
39/47
Iterativno – inkrementalni razvoj
Objektno-orijentisani pristupi kao osnovnuparadigmu imaju iterativno-inkrementalnirazvoj:
“PLANIRAJ MALO, ANALIZIRAJ MALO,
PROJEKTUJ MALO,
IMPLEMENTIRAJ MALO!”
40/47
Iterativni životni ciklus:
Planiran i organizovanPredvidiv
Pravi izmene uz manje ‘potrese’Baziran je na razvoju izvršnih komponenti, nedokumentacije
Korisnik i projektant kroz proces formirajumeñusobni odnosManje rizičan
41/47
Tri važne karakteristikeiterativnog životnog ciklusa
Kontinuirana integracija
Frekventne izvršne realizacije
Smanjenje rizika kroz stalno testiranje
42/47
Krajnja dobit
Tim je u stanju da završi projekat u odreñenom vremenuMoguće je neke od problema ostavitiza kasnije cikluseSvi koji učestvuju u projektu mogubolje da organizuju posao
43/47
CASE -Computer Aided Software Engeneering
min vrememax produktivnostmax kvalitetmax pouzdanoststandardizacija SW
44/47
Alati za razvoj IS - CASE alati
BpWin - PlatinumErWin - PlatinumOracle DesignerRational Rose - IBMParadigm Plus
45/47
Podele CASE
horizontalna� za više faze životnog ciklusa (analiza, dizajn)� za srednje faze životnog ciklusa (izrada aplikacija,
implementacija)� za niže faze (podrška eksploataciji)
vertikalna� upravljanje, planiranje, praćenje� tehnički alati� podrška projektu (rečnici, skladišta)
prema broju korisnika� jednokorisnički� višekorisnički (mrežni)