Upload
vladimir-vidanovic
View
93
Download
10
Embed Size (px)
Citation preview
Uvod u softversko inženjerstvoUvod u softversko inženjerstvo
dr Zoran Jeremić[email protected]
1T‐1: Uvod u softversko inženjerstvo
Sadržajj
1. Osnovne informacije o predmetu
2. Softver i njegov značaj
3 S ft k i ž j t3.Softversko inženjerstvo
4 Osnovni pojmovi i osnovne paradigme4. Osnovni pojmovi i osnovne paradigme
2T‐1: Uvod u softversko inženjerstvo
Informacije o predmetuj p
Naziv: Softversko inženjerstvoj
ESPB: 6
Uslov: Uvod u objektno programiranje Uslov: Uvod u objektno programiranje
Semestar: 5
Predavanja: 2 Predavanja: 2
Laboratorijske vežbe: 2
Auditorne vežbe: 1 Auditorne vežbe: 1
Broj časova aktivne nastave: 75
3T‐1: Uvod u softversko inženjerstvo
Cilj predmetaj p
Upoznavanje sa savremenim softverskim inženjerstvom, p j j ,teorijom i praktičnim postupcima u procesu razvoja softvera u svim fazama njegovog životnog ciklusa.
Ishod predmeta: Studenti će biti osposobljeni da projektuju jednostavne
softverske sisteme na bazi poznavanja rada alata koji će bitisoftverske sisteme na bazi poznavanja rada alata koji će biti prikazani tokom kursa.
4T‐1: Uvod u softversko inženjerstvo
Sadržaj predmetaj p
1. Uvod u softversko inženjerstvo. j
2. Metodologije razvoja softvera.
3 Životni ciklus razvoja sofvera3. Životni ciklus razvoja sofvera.
5T‐1: Uvod u softversko inženjerstvo
Sadržaj predmeta (2)j p ( )
4. Uvod u modelovanje korišćenjem ULM-a.j j
5. Definisanje zahteva korišćenjem UML Use Case dijagrama.
6T‐1: Uvod u softversko inženjerstvo
Sadržaj predmeta (3)j p ( )
6. Definisanje strukture korišćenjem UML dijagrama j j j gklasa. Realni domen Domen modela
autobus
vozilo
automobil
autobus
modeluje
modeluje
solja
modeluje
7T‐1: Uvod u softversko inženjerstvo
Sadržaj predmeta (4)j p ( )
7. Modelovanje ponašanja korišćenjem UML dijagrama j p j j j ginterakcija.
8T‐1: Uvod u softversko inženjerstvo
Sadržaj predmeta (5)j p ( )
8. Modelovanje stanja korišćenjem UML statechart dijagrama.
Marital
single
Marital
married
divorced
9T‐1: Uvod u softversko inženjerstvo
Sadržaj predmeta (6)j p ( )
9. Dijagrami aktivnosti. Camera Behavior
Check Objects
Safety Controller Behavior
Side Object Detectedj
in Camera
Is object Detected?[no] Detection data
Side Object Detected
[yes]
Alarm Deciding
Side?
[left] [right]
Left Alarm Right Alarm
[left] [right]
10T‐1: Uvod u softversko inženjerstvo
Sadržaj predmeta (7)j p ( )
10. Pregled CASE alata za UML modelovanje.
11. Dizajn paterni.
12. Testiranje softvera i upravljanje kvalitetom.
13. Evolucija softvera i održavanje.
11T‐1: Uvod u softversko inženjerstvo
Praktična nastava
U skladu sa temom obrađenom u okviru predavanja.
Demonstracija praktičnog razvoja softverskih sistema tehnikama predstavljenim na predavanjima, korišćenjem odabranih CASE alataodabranih CASE alata.
Program predmeta usklađen sa preporukama IEEE/ACMProgram predmeta usklađen sa preporukama IEEE/ACM Computing Curriculum:CE2004 Computer Engineering Body of Knowledge: CE-SWE 0-9.
12T‐1: Uvod u softversko inženjerstvo
Literaturate atu a
Osnovna: prezentacije sa predavanja UML vodič za korisnike, Booch, Rumbaugh, Jacobson, 506 strana
(ili bilo koje drugo uputstvo za UML)( j g p )
Dodatna: I. Sommerville, Software Engineering, 6th ed., Addison-Wesley,
Reading MA 2000 (ISBN: 020139815X)Reading, MA, 2000. (ISBN: 020139815X) R.S. Pressman, Software Engineering: A Practitioner's Approach,
McGraw Hill, NY, 5th ed., 2001. (ISBN: 0072496681) M F l K S tt UML Di till d A B i f G id t th St d d M. Fowler, K. Scott, UML Distilled: A Brief Guide to the Standard Object Modeling Language, 2nd ed., Addison-Wesley, Reading, MA, 1999. (ISBN: 020165783X) G Booch Object Oriented Analysis and Design with Applications G. Booch, Object-Oriented Analysis and Design with Applications, 2nd ed., Addison-Wesley, Reading, MA, 1994. (ISBN: 0805353402) 13T‐1: Uvod u softversko inženjerstvo
Ocena znanjaj
Predispitne obaveze Poena Završni ispit Poena
Praktična nastavaPraktična nastava(vežbe)-2 zadatka x 15 bodova
30 2 kolokvijumaili pismeni ispit iz 2 dela 50
Akti t i ž jAktivnost i angažovanje-2x10 bodova 20
14T‐1: Uvod u softversko inženjerstvo
Studentski zadaci
2 zadatka koji se realizuju radom po grupamaj j p g p
Svaki zadatak nosi po 25% od konačne ocene: 10% za učešće u aktivnostima na dodeljenom zadatkuj 15% za izvršenje dodeljenih aktivnosti
Zadaci predstavljaju softverske probleme koji prate d j i d d lj j t d ti t k tpredavanja i dodeljuju se studentima u toku semestra na
vežbama u zakazanim terminima.
Student na raspolaganju ima 3 sedmice predviđene za Student na raspolaganju ima 3 sedmice predviđene za ispunjenje datih obaveza, nakon čega nije moguće predati zadatak.
T‐1: Uvod u softversko inženjerstvo 15
Studentski zadaci
Da bi se u potpunosti realizovao zadatak student treba p pda izvrši 3 aktivnosti: Brainstorming (prezentovanje ideje) :
• Student iznosi svoju ideju za rešavanje problema• Student komentariše ideje svojih kolega• Student ocenjuje ideje svojih kolega
Ocenu ove aktivnosti čine:• Ocene koje je student dobio od svojih kolega,• Ocene koju je student dobio od nastavnika,• Aktivnosti i angažovanju studenta na realizaciji zadatka, kritičkom
osvrtu na ideje svojih kolega,• Ocene koju je student dobio za procenu ideja svojih kolega,
T‐1: Uvod u softversko inženjerstvo 16
Studentski zadaci
Predlaganje sopstvenog rešenja• Student koristi ArgoUML alat da kreira sopstveni UML dijagram koji
predstavlja rešenje problema. Procena rešenja kolega
• Student vrši procenu rešenja najmanje četvorice kolega na osnovu definisanih kriterijuma,
Ocenu ove aktivnosti čine:• Procene rešenja koje su dali drugi studenti,• Procena rešenja koju je dao nastavnik,• Aktivnost i angažovanje koje je student ispoljio prilikom izvršenja os a ga o a je oje je s ude spo j o p o še ja
aktivnosti,• Kvalitet procene koju je student izvršio.
T‐1: Uvod u softversko inženjerstvo 17
Studentski zadaci
Pored opisanih zadataka, student je u obavezi da popuni p , j p p3 dodatne ankete koje se odnose na realizovane aktivnosti.
Prva anketa se popunjava pre podele zadataka, a zatim po jedna anketa nakon svakog zadatka.
T‐1: Uvod u softversko inženjerstvo 18
2010/2011
jan-okt 2011 j Prijavljeno 67 studenta Položilo 39 studenta (58,21%) Struktura ocena
6 7 8 9 10
Prosečna ocena 8,59
6 7 8 9 10
0 7 13 8 11
19T‐1: Uvod u softversko inženjerstvo
2009/2010
jan-okt 2010 j Prijavljeno 73 studenta Položilo 44 studenta (60,27%) Struktura ocena
6 7 8 9 10
Prosečna ocena 8,61
6 7 8 9 10
3 7 10 8 16
20T‐1: Uvod u softversko inženjerstvo
Registracija studenatag j
Obavezna za sve studente (rok 30.10.2011)( ) http://viser.learningdesignpatterns.org
T‐1: Uvod u softversko inženjerstvo 21
T‐1: Uvod u softversko inženjerstvo 22
Softver i softversko inženjerstvoSoftver i softversko inženjerstvo
Osnovni pojmovi i paradigme
23T‐1: Uvod u softversko inženjerstvo
Motivacijaot ac ja
Značaj softveraj
Softver ima ogroman uticaj na bilo koji aspekt društva
24T‐1: Uvod u softversko inženjerstvo
Softver je svuda
25
Softver je svudaSo t e je s uda
26T‐1: Uvod u softversko inženjerstvo
Softver je svudaSo t e je s uda
27T‐1: Uvod u softversko inženjerstvo
Neki popularnip p
Socijalna mreža nastala 2004. godine
Mark Zuckerberg (Harvard)
Više od 500 miliona aktivnih korisnika
50% aktivno svaki dan
Najbrže rastuća demografska grupa su oni od 35 i više godina
Više od milion software developera i preduzimača.
Više od 350,000 aktivnih aplikacija na Facebook platformi.
Više od 250 aplikacija sa više od milion mesečno aktivnih korisnika.
Blokiran u nekoliko zemalja: Pakistan, Sirija, Kina, Vijetnam, Iran i S.Koreja.j
T‐1: Uvod u softversko inženjerstvo 28
Neki popularnip p
Preko 78 miliona videa ukupno
Preko 6 miliona videa mesečno.
Preko 200,000 videa dnevno.
45 terabajta prostora.
100 miliona posetilaca mesečno.
A sve je počelo kada su 3 momka 2005 godine napravili softver zbog A sve je počelo kada su 3 momka 2005. godine napravili softver zbog problema koji su imali da međusobno razmene video fajlove sa žurke.
Novembra 2005 YouTube je zvanično započeo sa radom, a oktobra 2006. godine Google ga je otkupio za 1 65 milijardi $godine Google ga je otkupio za 1,65 milijardi $.
Kritike na račun: distribucije copyright materijala, zaštite privatnosti, kontraverznih sadržaja
U nekim zemljama zabranjen pristup
T‐1: Uvod u softversko inženjerstvo 29
Trenutno stanje civilizacijee ut o sta je c ac je
30T‐1: Uvod u softversko inženjerstvo
Značaj softvera u ljudskim životima
• Milenijumski Bug (Y2K) !
Značaj softvera u ljudskim životima
– Upozorenje o Y2K dekadu pre2000.B dž t Kli t l d Y2K– Budžet Klintonove vlade za Y2K oko 3.4 milijarde USD
31
Značaj softvera
Postao je
Značaj softvera
Postao je pokretačka
snaga
Značaj Motor koji
pokreće proces Ključna razlika modernih j
softverap pdonošenja odluka
proizvoda i usluga
Osnova za moderna nauučna istraživanja i rešavanja problema
32
Značaj softveraačaj so t e a
Ugnježden je u sisteme svih vrsta: transportne, g j j p ,medicinske, telekomunikacione, vojne industrijske procese, održavanje, kancelarijske proizvode,... Lista je skoro beskonačnaskoro beskonačna.
Softver je praktično neizbežan u modernom svetu.
Ulaskom 21 ek polako će postati pokretač no ih Ulaskom u 21 vek, polako će postati pokretač novih napredaka u svim oblastima od osnovnog obrazovanja do genetskog inženjerstva.
33T‐1: Uvod u softversko inženjerstvo
Vrste softvera
Desktop aplikacijep p j Aplikacije koje se izršavaju na lokalnim računarima. Obuhvataju
sve neophodne fukncionalnosti i ne moraju biti povezani na računarsku mrežu ili Internetračunarsku mrežu ili Internet.
Interaktivne aplikacije Aplikacije koje se izvršavaju na udaljenom računaru a kojima p j j j j j
korisnici pristupaju sa svoji PC računara ili terminala. Ove aplikacije obuhvataju i web aplikacije kao što su komercijalne aplikacije.
Ugnježdeni kontrolni sistemi Kontrolni sistemi koji kontrolišu i upravljaju hardverskim
uređajima Brojčano najviše je ovakvih tipova aplikacijauređajima. Brojčano, najviše je ovakvih tipova aplikacija.
34T‐1: Uvod u softversko inženjerstvo
Vrste softvera
Sistemi za serijsku obraduj Poslovni sistemi namenjeni za obradu podataka u velikim
serijama. Obrađuju veliki količinu ulaznih podataka i kreiraju izlazizlaz.
Aplikacije za zabavu Softver namenjen prvenstveno ličnoj upotrebi i zabavi korisnika.j p j p
Sistemi za modelovanje i simulacije Ovo su sistemi koje su razvili naučnici i inženjeri za modelovanje
fizičkih procesa i situacija.
T‐1: Uvod u softversko inženjerstvo 35
Problemi u razvoju softvera
36T‐1: Uvod u softversko inženjerstvo
Najčešći problemiajčešć p ob e
Finalni softverski proizvod ne ispunjava očekivanja p p j jkorisnika.
Teško ga je proširiti i unaprediti: Ukoliko kasnije želite da dodate novu funkcionalnost što je skoro nemoguća misija.
Loša dok mentacija Loša dokumentacija.
Loš kvalitet: česte greške, komplikovano korišćenje,...
Viš i ći šk i š j č ki Više vremena i veći troškovi nego što je očekivano.
37T‐1: Uvod u softversko inženjerstvo
38T‐1: Uvod u softversko inženjerstvo
NaravnoNaravno
Ovakve stvari se nikada ne dešavaju.dešavaju.
P š39
PogrešnoT‐1: Uvod u softversko inženjerstvo
Softverski horor
• Greška na lanserut lit A i 5 jsatelita Ariane 5 je
uzrokovana greškom u softverkoj funkciji za j jkonvertovanje iz 64-bitne float vrednosti u 16-bitnu celobrojnu vrednostcelobrojnu vrednost.
40
Softverski horor
• Klimatski orbiter se srušioM t bna Mars u septembru
1999. zbog “glupe greške” : pogrešnih g p gjedinica u programu.
41
Softverski horor
• Nekoliko smrtnih l č j (1985 1987)slučajeva (1985-1987)
pacijenata koji su se lečili od raka usled prevelike pdoze zračenja koja je nastala kao posledica greške (nepravilnogreške (nepravilno rešavanje konkurentnih aktivnosti) u softveru Th 25Therac-25
42
Softverski horor
• Sistem za kontrolu leta u D l j j 1989Dalasu je u jesen 1989. godine poludeo a kontrolori su morali da prate avione na papiru.
43
Softverski horor
• Strateška vazdušna k d SAD jkomanda SAD‐a je 9.novembra 1979. god. dobila uzbunu jer je vojni kompjuterski komandni i kontrolni sistem izvestio o lansiranju sovjetskih raketalansiranju sovjetskih raketa prema SAD‐u, što je bila posledica toga da je i li i dsimulirani napad interpretiran kao stvarni.
44
Softverski horor
• Za vreme zalivskog rata 1991 di S d j k il1991. godine Scud projektil je ubio 28 i ranio 98 američkih vojnika, jer je sistem za kontrolu Patriot antiraketnog sistema zakazao zbog greškezakazao zbog greške (akumuliranja vremenskog vakuma)
45
CHAOS izveštaj o uspehu projekataC OS eštaj o uspe u p oje atawww.standishgroup.com/
46T‐1: Uvod u softversko inženjerstvo
Zaključak
Programiranje nije dovoljno!
Nije dovoljno dati sve od sebe: moraš znatij jšta treba da uradiš, i onda dati sve od sebe.
- W. Edwards Deming -
47T‐1: Uvod u softversko inženjerstvo
I s obzirom na tos ob o a to
Pametna osoba rešava problemPametna osoba rešava problem.Mudra osoba ih izbegava.
- Albert Einstein -
48T‐1: Uvod u softversko inženjerstvo
RešenjeRešenje
Softversko inženjerstvo
T‐1: Uvod u softversko inženjerstvo 49
Softversko inženjerstvoj
Inženjerska disciplina koja se bavi svim aspektima j p j pprodukcije softvera od ranih faza specifikacije sistema do održavanja sistema nakon stavljanja u upotrebu.
Inženjerska disciplina Korišćenjem odgovarajućih teorija i metoda rešavanja problema i
imajući u vidu specifičnosti organizacije i finansijska ograničenja.imajući u vidu specifičnosti organizacije i finansijska ograničenja.
Svi aspekti produkcije softvera Ne samo tehnički proces razvoja. Takođe obuhvata upravljanje
projektom, razvoj alata, metoda, itd., koji podržavaju proces produkcije softvera.
50T‐1: Uvod u softversko inženjerstvo
Najčešće postavljana pitanja u vezi softverskog i ž j tinženjerstva
Pitanje Odgovorj g
Koji su to ključni izazovi sa kojima sesuočava softversko inženjerstvo?
Borba sa sve većim razlikama, zahtevima za smanjenjemvremena isporuke i razvojem pouzdanog softvera.
Koji su troškovi softverskog inženjerstva? Oko 60% su troškovi razvoja softvera, 40% su troškovitestiranja Za softver prilagođen korisniku troškovitestiranja. Za softver prilagođen korisniku, troškovievaluacije često prevazilaze troškove razvoja.
Koje su najbolje tehnike i metodesoftverskog inženjerstva?
Upravljanje svim softverskim projektima i njihov razvojmoraju biti profesionalni. Različite tehnike su pogodne zarazličite tipove sistema. Na primer, igre se uvek razvijajup p , g j jkorišćenjem velikog broja prototipova dok se sistemi zakontrolu zahtevaju razvoj kompletne i detaljnespecifikacije. S toga, nema najbolje metode.
Koje novine je uneo Web u softversko Web je doveo do pojave softverskih servisa i mogućnostiinženjerstvo? razvoja distribuiranih servisno orjentisanih sistema. Razvoj
Web sistema je doveo do značajnog napredka u razvojuprogramskih jezika i višestruke upotrebe softvera.
51T‐1: Uvod u softversko inženjerstvo
Osnovne karakteristike dobrog softverag
Karakteristika OpisKarakteristikaproizvoda
Opis
Održivost Softver mora biti napravljen na takav način da može lako daevaluaira u skladu sa promenama zahteva korisnika. To je kritičnakarakteristika s obzirom na promenljivost poslovnog okruženjakarakteristika s obzirom na promenljivost poslovnog okruženja.
Poudanost i bezbednost Softverska pouzdanost obuhvata skup karakteristika kao što supouzdano izvršenje funkcija, bezbednost i sigurnost. Pouzdansoftver ne sme da uzrokuje dovede do fizičkih ili ekonomskihposledica u slučaju otkaza. Zlonamerni korisnici ne smeju biti umogućnosti da pristupe sistemu ili ga ugroze.
Efikasnost Softver ne sme nepotrebno da troši sistemske resurse kao što sumemorija i procesorsko vreme. Efikasnost stoga obuhvata vreme
d b d i k išć j ij itdodgovora, vreme obrade, iskorišćenje memorije, itd.
Prihvatljivost Softver mora biti prihvatljiv za one korisnike za koje je napravljen.Ovo znači da mora biti razumljiv, upotrebljiv i kompatibilan sadrugim sistemima koji se koriste.
T‐1: Uvod u softversko inženjerstvo 52
g j
Značaj softverskog inženjerstvaj g j
Sve više, pojedinci i društvo zavise od složenih , p jsoftverskih sistema. Neophodno je da brzo i ekonomično proizvodimo pouzdane sisteme.
Mnogo je jeftinije (gledano dugoročno) korišćenje metoda i tehnika softverskog inženjerstva za izradu softverskih sistema nego jednostavna implementacijasoftverskih sistema nego jednostavna implementacija programa kao što se to radi na malim programima za ličnu upotrebu.
Za većinu tipova sistema, većina troškova su troškovi promene softvera nakon što je stavljen u upotrebu.
T‐1: Uvod u softversko inženjerstvo 53
Aktivnosti softverskog procesag p
Specifikacija softvera – korisnici i inženjeri definišu p j jsoftver koji treba izraditi i ograničenja u toku tog procesa.
Razvoj softvera – softver se dizajnira i implementira.
Kontrola i validacija softvera – softver se proverava da bi se utvrdilo da li ispunjava korisničke zahteve.
Evolucija softvera – softver se modifikuje u skladu sa promenama zahteva korisnika i tržišta.
T‐1: Uvod u softversko inženjerstvo 54
Zbog čega je softversko inženjerstvo složeno?bog čega je so t e s o e je st o s o e o
55T‐1: Uvod u softversko inženjerstvo
Sistemski pristup razvoju softverap p j
Cilj softverskog inženjerstva je da razvoj softvera približi j g j j j pnauci i inženjerstvu i udalji ga od ad-hoc pristupa razvoju čiji su ishodi nepredvidljivi a koji su intenzivno korišćeni u prošlosti i dalje se koristeprošlosti i dalje se koriste.
56T‐1: Uvod u softversko inženjerstvo
Veličina projektap j
Razvoj veoma velikih sistema zahteva korišćenje j jrazličitog skupa metoda u poređenju sa razvojem malih sistema,
57T‐1: Uvod u softversko inženjerstvo
Osnovni principi softverskog inženjerstvap p g j
Osnovni principi koji se mogu primeniti na sve vrste p p j g psoftverskih sistema, bez obzria na razvojne tehnike koje se koriste:
Si t t b ij ti k išć j lji i j Sisteme treba razvijati korišćenjem upravljivog i jasnog razvojnog procesa. Naravno koriste se različiti procesi za različite tipove softvera.P d i f č j i Pouzdanost i performanse su značajne za sve vrste sistema.
Veoma je bitno razumevanje i upravljanje specifikacijom i zahtevima softvera (šta softver treba da radi).
Tamo gde je to moguće bolje je koristiti postojeći softver nego razvijati novi.
T‐1: Uvod u softversko inženjerstvo 58
Softversko inženjerstvo i Webj
Web je danas platforma za izvršenje aplikacija i j p j p jogranizacije češće koriste Web aplikacije nego lokalne sisteme.
Web servisi omogućavaju da se aplikativnim funkcijama pristupa preko Weba.
Clo d comp ting je prist p obe beđi anj rač narskih Cloud computing je pristup obezbeđivanju računarskih servisa gde se pokreću udaljene aplikacije. Korisnici ne kupuju softver nego plaćaju njegovu upotrebu.p j g p j j g p
T‐1: Uvod u softversko inženjerstvo 59
Softversko inženjerstvo za Webj
Ponovna upotreba softvera je dominantan pristup za p j p pkonstruisanje Web aplikacija. Prilikom izgradnje ovakvih sistema treba razmišljati o upotrebi
postojećih softverskih komponenti i sistemapostojećih softverskih komponenti i sistema.
Web sistemi se mogu razvijati i isporučivati inkrementalno. Jasno je da nije praktično definisanje svih zahteva za ovavke j j p j
sisteme unapred.
Korisnički interface je ograničen mogućnostima Web browserabrowsera. Tehnologije kao što je AJAX omogućavaju bogat korisnički interfejs
koji se kreira unutar Web browsera.
T‐1: Uvod u softversko inženjerstvo 60
Studija slučaja – Bolnički informacioni sistemj j
Informacioni sistem koji se koristi u bolnicama i jklinikama.
Koristi centralizovanu bazu podataka o pacijentima, ali je takođe moguće pokrenuti je na lokalnom PC, tako da se može koristiti i u bolnicama koje nemaju mrežnu infrastrukturu.infrastrukturu.
Kada lokalni sistemi imaju siguran mrežni pristup, koriste informacije o pacijentu iz baze podataka, ali mogu downloadovati i koristiti lokalne kopije o pacijentima koje nisu povezane sa bazom podataka.
T‐1: Uvod u softversko inženjerstvo 61
Bolnički informacioni sistem - ciljevij
Da se generišu informacije koje omogućavaju g j j g jmenadžerima u zdravstvu da izvrše da li je funkcionisanje institucije usklađeno sa lokalnim i vladinim propisimavladinim propisima.
Da obezbede medicinskom osoblju pravovremene informacije kojima se olakšava tretman pacijenata.informacije kojima se olakšava tretman pacijenata.
T‐1: Uvod u softversko inženjerstvo 62
Organizacija bolničkog informacionog sistemag j g g
T‐1: Uvod u softversko inženjerstvo 63
Bolnički informacioni sistem – osnovne karakteristike
Prećenje procesa lečenja bolesnikaj p j Lekari mogu kreirati zapise za pacijente, menjati informacije u
sistemu, pratiti istoriju lečenja itd. Sistem podržava zbirne preglede informacija o pacijentu tako da doktori mogu brzo steći uvid uinformacija o pacijentu, tako da doktori mogu brzo steći uvid u osnovne probleme i tretmane koji su primenjivani.
Praćenje pacijenta Sistem nadgleda zapise o pacijentima koji su uključeni u tretman i
upozorenja o detektovanim potencijalnim problemima.
Administrativno izveštavanje Administrativno izveštavanje Sistem generiše mesečne menadžerske izveštaje koji prikazuju
broj lečenih pacijenata na svakom odeljenju koji su primljeni i otpušteni lekovi koji su prepisani troškovi lečenja itdotpušteni, lekovi koji su prepisani, troškovi lečenja, itd.
T‐1: Uvod u softversko inženjerstvo 64
Bolnički informacioni sistem – potencijalni problemip j p
Privatnost Veoma je bitno voditi računa o poverljivosti informacija o
pacijentu. One ne smeju biti dostupne nikome osim autorizovanom medicinskom osoblju i samom pacijentuautorizovanom medicinskom osoblju i samom pacijentu.
Pouzdanost Neke vrste bolesti uzrokuju da pacijenti postanu rizični, za sebe, j p j p , ,
za okolinu. Sistem mora upozoriti medicinsko osoblje o takvim pacijentima.
Sistem mora biti dostupan kada je potreban. U suprotnom je p j p p jmoguće da lekar ne može da prepiše odgovarajuću terapiju pacijentu.
T‐1: Uvod u softversko inženjerstvo 65
Workshop - različite studije slučajap j j
IS studentske službe IS aerodroma
IS digitalne biblioteke
IS za poslovnu
IS GSP-a
IS poreske uprave IS za poslovnu korespodenciju
IS banke
IS poreske uprave
IS apoteke
IS kadrovske službe IS za praćenje
dokumenata u l k ž j
IS kadrovske službe
IS za dijagnostiku vozila
poslovnom okruženju
Knjigovodstveni IS
...
T‐1: Uvod u softversko inženjerstvo 66
Workshop - različite studije slučajap j j
Osnovne informacijej
Ciljevi
Organizacija Organizacija
Osnovne karakteristike
Potencijalni problemi Potencijalni problemi
T‐1: Uvod u softversko inženjerstvo 67
IS studentske službe – grupa I g p
Pristup studentima i profesorimap p
Čuvanje informacija o studentima
Korisnici sistema: studenti profesori i administratori Korisnici sistema: studenti, profesori i administratori
Prijavljivanje ispita
Raspoloživost sistema dostupnost sa udaljene lokacije Raspoloživost sistema, dostupnost sa udaljene lokacije
Treba da bude pouzdan
Mogućnost izmene podatakaMogućnost izmene podataka
Funkcionalnosti za studente (javno dostupne), funkcionalnosti za nastavnike i administracijufunkcionalnosti za nastavnike i administraciju.
T‐1: Uvod u softversko inženjerstvo 68
IS studentske službe
Baza podataka – centralizovana, data layer, p , y ,sinhronizacija baza podataka
Web aplikacija – Web browser pristup,
Pretraga za studente
Različit stepen privilegijap p g j
Prijave ispita
Praćenje finansijskog stanja Praćenje finansijskog stanja
Uvid u profile studenata (ograničen)
T‐1: Uvod u softversko inženjerstvo 69
IS studentske službe
Problemi mogućnost pojave greške, narušavanje g p j g , jprivatnosti, regulisanje posebnih slučajeva
T‐1: Uvod u softversko inženjerstvo 70
Bankarski IS – grupa IIg p
Baza podataka sa korisničkim nalozima,p ,
Pregleda stanja računa
Klijenti i zaposleni Klijenti i zaposleni
Klijenti pristupaju preko Interneta, zaštićen pristup pin, password.p
Pristup preko mreže, plaćanje, provera računa, stanja
Distribuirana organizacija, glavni server i filijale sa Distribuirana organizacija, glavni server i filijale sa lokalnim serverima – sinhronizacija podatak
Pristup računima preko filijale, Interneta, bankomata
T‐1: Uvod u softversko inženjerstvo 71
Bankarski IS
Plaćanje karticomj
SMS obaveštavanje
Uvid u kreditnu sposobnost građana Uvid u kreditnu sposobnost građana
Problemi: sigurnost računa korisnika
Privatnost o transakcijama korisnika Privatnost o transakcijama korisnika,
Konstantno održavanje napajanja sistema i pouzdanost
T‐1: Uvod u softversko inženjerstvo 72
IS GSP-a – grupa IIIg p
Informacije o linijama, informacije o prijavama, j j , j p j ,informacije o prodajnim mestima.
Svakodnevni uvid putnika, SMS obaveštavanje, pitanja građana
Problemi: Pouzdanost sistema, pouzdanost mreže operatoraoperatora
Umreženi IS.
T‐1: Uvod u softversko inženjerstvo 73
Bibliotečki IS – grupa IVg p
Administrativni softver za ažuriranjej
Dostupan i radnicima i čitaocima
Radne stanice i server Radne stanice i server
Provera klijenata koji su u biblioteci
Ciljevi: upis članova ažuriranje knjiga izdavanje knjiga Ciljevi: upis članova, ažuriranje knjiga, izdavanje knjiga, poštovanje ograničenja,
Organizacija bazirana na ograničenom pristupu Organizacija bazirana na ograničenom pristupu
2 baze međusobno povezane: knjige i korisnici
T‐1: Uvod u softversko inženjerstvo 74
Bibliotečki IS
Backup sistemp
Problem: pristupanje preko Interneta, brzina i količina podataka.
T‐1: Uvod u softversko inženjerstvo 75
Uvod u softversko inženjerstvoUvod u softversko inženjerstvo
dr Zoran Jeremić[email protected]
76T‐1: Uvod u softversko inženjerstvo