You are on page 1of 52

Univerzitet u Novom Sadu Tehniki fakultet Mihajlo Pupin Zrenjanin

Informacioni sistem privatne ginekoloke ordinacije

DIPLOMSKI RAD

Mentor: Prof. dr Radosav Dragica

Student: Mii Marina Broj indeksa: 43/01-11 Smer: Dipl. inenjer informatike

Diplomski rad - IS privatne ginekoloke ordinacije Zrenjanin, 2006.

Marina Mii 43/01-11

Sadraj
1. Uvod.....................................................................................................................3 2. Opis posla............................................................................................................4 2.1. Najea oboljenja enskih polnih organa ....................................................4 2.2. Najee dijagnostike metode i intervencije u ginekologiji ........................4 2.3. Opis posla ......................................................................................................5 3. Snimak stanja.....................................................................................................7 3.1. Postojee stanje realnog sistema..................................................................7 3.2. Spisak dokumenata......................................................................................7 3.3. Organizaciona strukura i povezanost sa drugim sistemima.........................7
3.3.1. 3.3.2. Interna organizaciona struktura...............................................................7 Povezanost sa drugim sistemima.............................................................7

3.4. Radna mesta, odgovornosti i ovlaenja......................................................7 3.5. Zakonska regulativa.....................................................................................8 3.6. Lokalna pravila poslovanja..........................................................................8 3.7. Problemi.......................................................................................................8 3.8. Potrebe.........................................................................................................8 3.9. Odluke.........................................................................................................8 3.10. Automatizmi................................................................................................8 3.11. Perspektive razvoja sistema.........................................................................8 3.12. Organizacija rada.........................................................................................9 4. Logika realizacija UML ................................................................................10 4.1. UML..........................................................................................................10 4.2. Dijagrami...................................................................................................13 4.2.1. Dijagrami sluajeva korienja (Use Case Diagram).......................13 4.2.2. Dijagram klasa (Class Diagram) .....................................................22 4.2.3. Dijagram sekvenci (Sequence Diagram) .........................................25 4.2.4. Dijagram saradnje (Collaboration Diagram)....................................26 5. Modeli podataka...............................................................................................27 5.1. Konceptualni model podataka (CDM Conceptual Data Model)............27 5.2. Fiziki model podataka (PDM Physical Data Model)............................31 6. Opis aplikacije..................................................................................................32 6.1. Hardverski zahtevi.....................................................................................32 6.2. Softverski zahtevi ......................................................................................32 6.3. Instalacija ...................................................................................................32 6.4. Korienje aplikacije .................................................................................33 7. Objanjenje realizacije pojedinih dijaloga....................................................42 8. Zakljuak..........................................................................................................50 9. Literatura..........................................................................................................51 10. Prilog.................................................................................................................52

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

1. Uvod
Informacioni sistem privatne ginekoloke ordinacije je pravljen na osnovu sakupljenih podataka u jednoj od privatnih ginekolokih ordinacija u Zrenjaninu. Trenutno se u njoj ne koristi nikakav informacioni sistem, niti bilo kakva organizovana elektronska obrada podataka, ve se sve radi na papiru. Na osnovu podataka dobijenih u privatnoj ginekolokoj ordinaciji izraen je opis posla na osnovu kog je uraena analiza stvarnog stanja sistema. Ova analiza za cilj ima davanje realne slike sistema kao i ideje za njegovo poboljanje. Logika realizacija sistema je uraena pomou CASE alata Power Designer 10. i njegovih dijagrama: dijagrama sluajeva korienja, dijagrama klasa, dijagrama sekvenci i dijagrama saradnje koji su osnovni dijagrami za opisivanje sistema. Na osnovu tako preslikanog sistema izraen je konceptualni model podataka koji je osnova za buduu bazu podataka. U ovoj izradi korien je takoe Power Designer - ov alat za izradu konceptualnog modela podataka. U ovom alatu uraen je i fiziki model baze. Kreiran je SQL skript baze i baza je potom izvezena u Microsoft-ovu SQL bazu podataka. Sama aplikacija uraena je u razvojnom okruenju Microsoft Visual Studio.net 2003, programski jezik C#.

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

2. Opis posla 2.1. Najea oboljenja enskih polnih organa


1. Akutno zapaljenje Bartolinijevih lezda (Bartholinitis acuta), 2. Cista Bartonlinijeve lezde (Cystis glandulae Bartholini), 3. iljaste bradavice stidnice i vagine (Condylomata accuminata), 4. Kolpitis (Vaginitis), 5. Cervicitis (Cervicitis), 6. Endometritis (Endometritis), 7. Andeksitis (Adnexitis), 8. Metroragija (Metrorrhagia), 9. Karcinom vulve, 10. Fibromiomi materice, 11. Submukozni miom materice, 12. Rak grlia materice, 13. Rak tela materice, 14. Tumori jajnika, 15. Vezivnotkivni ovarijalni tumori, 16. Hormonski aktivni tumori (endokrini ovarijalni tumori), 17. Leukoplakija vulve, 18. Krauroza vulve, 19. Tuberkuloza enskog polnog organa, 20. Sindrom predmenstrualne napetosti.

2.2. Najee dijagnostike metode i intervencije u ginekologiji


Kolposkopija podrazumeva pregled vaginalnog dela grlia i sluzokoe vagine pomou kolposkopa, posebnog aparata koji uveliava posmatrano polje 10-20 puta. Ovaj pregled se nadovezuje na klasian ginekoloki pregled. Kolposkopski nalaz moe biti uredan ili patoloki. Uredan nalaz moe biti: ploasto slojeviti epitel, cilindrini epitel (ectopia) ili normalna zona transformacije. Patoloki nalaz ukazuje na oboljenje i moe biti: aceto white, punktacija, mozaik, leukoplakia, jod negativno polje, atipina vaskulacija ili drugo. Celioskopija ili laparoskopija je metoda direktnog posmatranja trbunih organa. U ginekologiji ova metoda se koristi za pregled organa male karlice. Izvodi se pomou aparata cevastog oblika koji se naziva celioskop ili laparoskop. Vri se u optoj anesteziji. Insuflacija jajovoda ili produvavanje jajovoda je intervencija pri kojoj se kroz kanal grlia materice pod odreenim pritiskom ubacuje u materinu duplju a kroz nju i jajovode u duplji male karlice, odnosno materinu upljinu, ugljen - dioksid u gasovitom stanju i time se proverava da li su jajovodi prolazni.

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Histerosalpingografija slui za utvrivanje prolaznosti materice s tim da je ova metoda pouzdanija od insuflacije jajovoda jer ne samo da daje podatke o prolaznosti ili neprolaznosti jajovoda ve prua i informacije o obliku materine duplje i o mestu eventualne prepreke, zapuenja ili deformacija. Punkcija Duglasovog prostora se vri u dijagnostike i terapijske svrhe: za dobijanje sadraja najnieg dela trbune duplje kako bi se na osnovu njegovih osobina odredila dijagnoza postojeeg stanja ili radi pranjenja stranog sadraja iz punktiranog prostora i eventualnog ubrizgavanja rastvora potrebnih lekova u taj prostor. Amniocenteza slui za dobijanje potrebne koliine plodove vode radi ispitivanja njenih biohemijskih svojstava i sadraja elijskih elemenata. Papanikolau test ili PAP test je metoda koja se radi pre kolposkopskog pregleda. Sterilnim tapiem se uzima uzorak vaginalnog sekreta i meri se stepen njegove kontaminacije i na osnovu karakteristika deskvamisanih elija postavlja se citoloka dijagnoza. Papanikolau test ima 5 grupa: 1,2,3. grupa je normalan nalaz a 4. i 5. grupa ukazuju na malignitet. CTG pregled se vri u poslednjem mesecu trudnoe. CTG pregledom se meri broj sranih otkucaja bebe i na osnovu toga se proverava da li je plod u dobrom zdravstvenom stanju. Ultrazvuni pregled slui da konstatujemo promene na materici (oblik, veliina, graa, promene koje se zapaaju u materici; npr.miomi - tumori). Zatim se opisuju promene na jajnicima, njihova veliina i lokalizacija i eventualni tumori (veliina, gradja, da li je sadraj tean ili gust, ima li pregrada, kakve su pregrade, da li je kapsula tumora glatka ili nazubljena i kakav je odnos tumora prema okolnim organima u maloj karlici). Zatim se opisuje endometrijum - sluzokoa materice, njegova debljina u milimetrima i na kraju opisuju se promene u Duglasovom prostoru to jest da li ima u njemu stranog sadraja (tenost). Laboratorijske analize koje se najee rade su: sedimentacija (da li je upala ili nije), kompletna krvna slika (eritrociti, leukociti, hemoglobin, hematokrit, trombociti), fibrinogen (faktor koagulacije ), glikemija (eer u krvi), urea (mokraa), kreatinin (nalazi u mokrai).

2.3. Opis posla


Pregled se zakazuje telefonom ili lino. Pacijentkinja ostavlja ime i prezime, a sestra joj zakazuje slobodan termin i obavetava je o terminu. Kada pacijentkinja dodje u ordinaciju, ako nema nikoga na redu, prima se i pacijentkinja koja nema zakazan pregled. Pacijentkinja dolazi u prijemnu sobu i daje sestri line podatke: ime i prezime. Medicinska sestra pronalazi zdravstveni karton pacijenta ili otvara novi u sluaju da pacijentkinja dolazi prvi put. Ako dolazi prvi put, potrebno je da dostavi sledee podatke medicinskoj sestri: ime i prezime, datum roenja, zanimanje, adresa, mesto boravka, broj telefona, krvna grupa Jul 2006. Zrenjanin 5

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

ene, krvna grupa mua, broj poroaja, broj abortusa, datum prve menstruacije, datum poslednje menstruacije. Ako je pacijentkinja ranije ve dolazila daje samo ime i prezime i sestra na osnovu toga pronalazi karton. Karton sestra dostavlja doktoru, a pacijentkinja odlazi u ekaonicu. Doktor prilikom pregleda donosi objektivni kliniki nalaz i odreuje dijagnozu. Donetu dijagnozu doktor upisuje u zdravstveni karton pacijenta. Ako je potrebno leenje, doktor propisuje terapiju, odnosno daje recepte koje medicinska sestra overava. Ukoliko terapija obuhvata leenje injekcijama medicinska sestra daje injekciju i doktor to upisuje u karton. Nakon toga ulazi se u sobu za pregled gde doktor ustanovljava tegobe zbog kojih pacijentkinja dolazi. Na osnovu anamnestikih podataka doktor odreuje koju e vrstu pregleda da izvri, zavisno da li je pacijentkinja trudna ili nije. Kod pacijentkinja koje nisu trudne vri se klasian ginekoloki pregled, i zavisno od tegoba u konkretnom sluaju od laboratorije trae laboratorijske analize. Zatim se trai nalaz vaginalnog sekreta, vaginalni i cervikalni bris na biogram i antibiogram. Potom se uzima razmaz za Papanikolau test Na osnovu toga koja je grupa odreuje se dalji dijagnostiki tretman i terapija. Na osnovu ovih nalaza odreuje se terapija, koja moze biti konzervativna terapija sa inekcijama, tabletama, punkcijama i operativna terapija (operacije). U sluaju sumnjivog nalaza radi se biopsija grlia (uzima se iseak) i alje nalaz na patohistoloki pregled u laboratoriju. Posle ovih pregleda vri se ultrazvuni pregled vaginalnom ili abdominalnom sondom preko trbuha. Napominjem da se vrsta pregleda odredjuje na osnovu bolesti pacijentkinje. Ukoliko je problem pacijenta ozbiljan i doktor proceni da ne moe da ukae pomo pacijentu on ga upuuje kod lekara specijaliste. Tada doktor prepisuje uput koji takode medicinska sestra overava. Posle odreene terapije zakazuje se kontrola pacijentu, i ukoliko stanje pacijenta nije dobro terapija mu se produava ili upuuje kod lekara specijaliste. Kada je doktor zavrio pregled karton se vraa u kartoteku i tom prilikom se zavodi u knjizi protokola bolesnika. I time je zavrio leenje pacijenta. Nakon pregleda medicinska sestra overava recepte, upute, naplauje pregled (klasini, ultrazvuni, laboratorijske nalaze) i izdaje raun. Medicinski materijal (injekcije, vate, uloske, tablete, vaginalete, tenosti za razmaze) ordinacija naruuje od dobavljaa. Kad poalje narudbenicu, dobija robu i raun. Uplauje, alje uplatnicu i dobija priznanicu od dobavljaa.

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

3. Snimak stanja 3.1. Postojee stanje realnog sistema


Trenutno ne postoji informacioni sistem. Sve se obavlja runo - sva dokumentacija je na papiru.

3.2. Spisak dokumenata


U ordinaciji se koristi sledea dokumentacija: Izvetaj sa pregleda, Protokol, Uput laboratoriji ili lekaru specijalisti, Recept, Raun.

3.3. Organizaciona struktura i povezanost sa drugim sistemima 3.3.1 Interna organizaciona struktura
Ova ordinacija raspolae sa 6 prostorija: ekaonica, prijemna soba, prostorija za preglede i intervencije, soba sa dva kreveta za oporavak posle intervencije, garderoba (sa kartotekom) i mokri vor.

3.3.2. Povezanost sa drugim sistemima


Najvaniji sistemi sa kojima razmenjuje podatke i dokumenti koje razmenjuju su: Laboratorija Uput - zahtev za laboratorijskom analizom Laboratorijski nalaz Ustanova lekara specijaliste Uput lekaru specijalisti

3.4. Radna mesta, odgovornosti i ovlaenja


Radna mesta i opis najvanijih zaduenja: U ovoj ordinaciji od radnog osoblja radi; lekar specijalista ginekolog, medicinska sestra i higijeniarka.

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Lekar ginekolog ima najvanije odgovornosti i ovlaenja, on je zaduen za preglede, unos podataka na upute i recepte. Medicinska sestra pomae u radu lekaru, unosi podatke o novim pacijentima i pronalazi kartone postojeih pacijenata i dostavlja ih lekaru pre pregleda. Takoe overava recepte, upute i izdaje raune pacijentima. Higijeniarka brine o higijeni i istoi, odrava ordinaciju istom.

3.5. Zakonska regulativa


Rad u ordinaciji se vri prema Zakonu o zdravstvenom osiguranju i Zakonu o zdravstvenoj zatiti.

3.6. Lokalna pravila poslovanja


Potuje se pravilnik o unutranjoj organizaciji.

3.7. Problemi
Jedan od najveih problema je nepostojanje informacionog sistema, ne postoji raunarski program koji bi pokrio delatnosti ordinacije, i slino.

3.8. Potrebe
Potrebe ordinacije su: pretraga pacijentkinja po jednom, ili vie kriterijuma, lakoa korienja, razni statistiki podaci (izvetaji..)

3.9. Odluke
Sve vanije odluke koje se odnose na pacijenta donosi ginekolog. On odluuje o vrsti terapije koja e se primenjivati, kao i da li e se leenje nastaviti u toj ustanovi, ili e se pacijentkinja poslati u neku drugu zdravstvenu ustanovu.

3.10. Automatizmi
Automatska obrada jo ne postoji. Program bi trebao automatski da prijavljuje greke koje nastaju prilikom unosa raznih podataka, da vri razne pretrage

3.11. Perspektive razvoja sistema


Pravljenje informacionog sistema ginekoloke ordinacije koji e biti pouzdan i praktian.

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

3.12. Organizacija rada


Snimkom stanja realnog sistema uoeno je da svi zaposleni nemaju predznanje za rad na raunaru i kao najefikasnije reenje se nudi unoenje podataka u program onim redom i dinamikom kojom odgovarajui dogaaji nastaju (umesto da bude zaposlena jedna osoba koja e unositi podatke sa papirnih nosilaca). Paralelnom papirnom dokumentacijom i evidencijom omoguuje se bezbednost podataka. Najmanje jednom godinje se obavlja kontrola zapisa (dokumenata i elektronskih formi) koji prate dogaaje realnog sistema, itd. Uvoenje informacionog sistema bi dovelo do bolje organizacije rada u ordinaciji.

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

4. Logika realizacija UML 4.1. UML


UML je nastao kao rezultat unifikacije najpoznatijihh metoda OO modeliranja G.Booch-a, I.Jacobson-a (OOSE metod) i J.Rumbaugh-a (OMT metod), sa ciljem da se omogui: 1. Modeliranje sistema korienjem objektno-orijentisanih koncepata do izvrnih komponenti 2. Reavanje problema skaliranja u kompleksnim sistemima 3. Kreiranje jezika modeliranja koji mogu da koriste i ovek i maina. tehnika, od

Jezik je prihvaen kao standardni jezik modeliranja (OMG - Object Management Group) 1997. godine, a u izradi finalnog proizvoda, pored autora UML-a, uestvovao je tim sastavljen od predstavnika najveih amerikih proizvoaa hardvera i softvera: Hewlett-Packard, I-Logix, IBM, Oracle, Platinum Technology Rational Software, Texas Instruments, Unisys, itd. Jedinstveni jezik modeliranja podataka (Unified Modeling Language, UML) je standardni jezik za specifikaciju, vizuelizaciju, konstrukciju i dokumentaciju razvoja softverskih sistema. Namena UML-a je poveanje produktivnosti, skraenje vremena razvoja i poboljanje kvaliteta softverskog sistema. UML nije metoda razvoja softvera ve, kao jezik za modeliranje sistema koji se zasniva na objektno-orijentisanom (OO) pristupu, predstavlja samo deo (izabrane) metode razvoja softvera. Sam UML ne zavisi od metode i samog procesa razvoja u kome e se primeniti, mada je najkorisniji ako se primeni u razvojnom procesu koji je vo|en korisnikim funkcijama, usredsreen na arhitekturu, iterativan i inkrementalan. UML moe da se koristi u razliitim fazama razvoja, od specifikacije zahteva do testiranja zavrenih, gotovih sistema. Cilj UML-a je da opie statiku strukturu i dinamiko ponaanje razliitih tipova sistema, kao to su: informacioni sistemi, tehniki sistemi, sistemi u realnom vremenu, distribuirani sistemi, sistemski softver, poslovni sistemi, itd. Elementima modela predstavljaju se standardni OO koncepti: klase, objekti, poruke, veze meu objektima (asocijacija, zavisnost, generalizacija). Svaki element ima definisano znaenje i grafiku reprezentaciju. Elementi se mogu klasifikovati u strukturne elemente, elemente ponaanja, grupiue elemente, elemente oznaavanja i elemente povezivanja. Strukturni elementi UML-a predstavljaju statiki deo koji ukljuuje kako konceptualne tako i fizike elemente modela. Osnovni strukturni elementi su klasa, interfejs, korisnik, korisnika funkcija, komponenta, vor. Klasa je opis skupa objekata koji imaju iste atribute i operacije, veze i semantiku.

Jul 2006. Zrenjanin

10

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Interfejs je kolekcija opisa operacija koje moe da izvri (usluga koje moe da prui) klasa. To je skup poruka koji se moe poslati klasi, namenjen je korisnicima klase i ne ukljuuje implementaciju tih operacija. Korisnika funkcija (use case) prikazuje jednu funkciju sistema kako je vidi spoljni korisnik (actor). To je opis skupa akcija koje sistem izvrava da bi proizveo ponaanje koje eli specifini korisnik. Korisnika funkcija, dakle, slui da struktuira ponaanje u modelu. Komponenta je fiziki deo sistema koji je saglasan sa nekim skupom interfejsa i realizuje ga. Komponenta moe biti izvorni ili izvrni program. Komponente mogu da se grupiu u pakete. vor je fiziki element koji postoji u vreme izvravanja i predstavlja raunarski resurs, sistem ili ureaj. Skup komponenti moe da bude smeten na jednom voru a moe i da se premesti sa jednog na drugi vor. Grafika reprezentacija strukturnih elemenata UML-a data je na slici 1.
ime_klase atribut : [tip:[poc.vred]] operacija()
korisnicka funkcija
korisnik

a)

b)

c)

ime_kom ponente

cvor

d)

e)

Slika 1: a) klasa b) korisnika funkcija c)korisnik d)komponenta e)vor Elementi ponaanja - Ovaj skup elemenata predstavlja dinamiki deo UML modela. To su, pre svega, interakcija i maina stanja. Interakcija je ponaanje koje ukljuuje skup poruka koje se razmenjuju meu objektima u specifinom kontekstu. Grafiki, poruka se predstavlja usmerenom linijom du linka izmeu objekata (slika 2).
poruka o1:klas1 1: o2:klas2

Slika 2: poruke meu objektima Jul 2006. Zrenjanin 11

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Maina stanja je ponaanje koje opisuje niz stanja kroz koja prolazi objekat ili interakcija u toku svog ivota. Stanje se grafiki predstavlja zaobljenim pravougaonikom. Grupiui elementi - Ovi elementi predstavljaju organizacioni deo UML modela, tj. dekompoziciju modela, i ukljuuju koncept paketa. U paket se mogu smestiti strukturni elementi, elementi ponaanja, pa i drugi grupiui elementi - paketi. Paketi postoje samo u vreme razvoja sistema i predstavljaju, za razliku od komponenti, konceptualni element. Grafiki,

ime paketa

Elementi oznaavanja - Elementi oznaavanja odnose se nadeo UML modela za objanjenja. To su komentari koji opisuju, rasvetljavaju, i uvode napomene i ogranienja o elementima modela. Osnovni element oznaavanja je beleka koja se pridruuje elementu ili kolekciji elemenata. Grafiki,
beleska

Elementi povezivanja - U UML-u postoje tri osnovne vrste elemenata zavisnost, asocijacija i generalizacija.

povezivanja:

Zavisnost je semantika relacija izmeu dva elementa u kojoj promena jednog (nezavisnog) elementa moe da utie na semantiku drugog (zavisnog) elementa. Asocijacija je strukturna veza koja opisuje skup linkova (veza izmeu objekata). Posebna vrsta asocijacije je agregacija, koja predstavlja strukturnu vezu celine i njenih delova. Asocijacija moe da bude usmerena, moe da ukljui ime, uloge elemenata koje povezuje i kardinalnost veze. Generalizacija je veza celina/deo u kojoj objekti elementa koji se specijalizuje (deo) mogu u svakom trenutku zameniti objekte elementa koji je njihovo uoptenje. Ova veza moe da se uspostavi me|u raznim elementima modela - npr. meu klasama, korisnicima, itd. Grafiki, razni elementi povezivanja prikazani su na slici 3.
klasa1 klasa1 0..n uloga2 klasa1 klasa1

1..n uloga1 klasa2 klasa2 klasa2 klasa2

a)zavisnost

b)asocijacija c)agregacija

d)generalizacija

Jul 2006. Zrenjanin

12

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Slika 3: elementi povezivanja meu klasama Dijagrami- Dijagrami su grafike strukture koje opisuju pojedine delove ili aspekte sistema koriste}i grafiki prikaz elemenata UML modela i obino se pridruuju jednom pogledu. Pogledi predstavljaju razliite aspekte sistema koji se modelira. U UML-u postoji devet vrsta dijagrama: 1. Dijagram klasa 2. Dijagram objekata 3. Dijagram korisnikih funkcija 4. Dijagram sekvenci (redosleda) 5. Dijagram saradnje 6. Dijagram stanja 7. Dijagram aktivnosti 8. Dijagram komponenti 9. Dijagram razmetaja Svaki pogled na sistem koristi vie vrsta dijagrama za prikazivanje svog sadraja a, sa druge strane, jedna vrsta dijagrama moe da se koristi za prikazivanje delova modela u raznim pogledima na sistem.

4.2. Dijagrami
Logika realizacija je izvedena uz pomo dva dijagrama UML-a: dijagrama sluajeva korienja i dijagrama klasa.

4.2.1. Dijagrami sluajeva korienja (Use Case Diagram)


Model sluajeva korisenja predstavlja opis funkcionalnosti sistema sa aspekta korisnika. Dijagrami sluaja korienja sadre uesnike i sluajeve korisenja kao i veze izmeu njih. Svaki sluaj korienja se detaljno opisuje. Cilj modeliranja sluajevima korienja je dobijanje jasnog i preciznog opisa osnovnih funkcija sistema koji predstavljaju osnovu za dalju analizu i projektovanje sistema. U ovom radu postoji 7 dijagrama sluajeva korienja: Use Case pregled, Use Case doktori, Use Case izvetaji, Use Case ostali nalazi, Use Case pacijenti, Use Case zakazivanje i Use Case uesnici. Name Zakazivanje pregleda Provera slobodnog termina Ostavljanje imena i prezimena Izdavanje kartona Code Zakazivanje_pregleda Provera_slobodnog_termina Ostavljanje_imena_i_prezimena Izdavanje_kartona Parent Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is

Jul 2006. Zrenjanin

13

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11 ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is ordinacije' Object-Oriented Model 'oom is 14

Ostavljanje ostalih licnih podataka Otvaranje novog kartona Unos anamneze Unos dijagnoze Unos podataka o klasicnom pregledu Unos podataka o pregledu Unos podataka o CTG pregledu Unos podataka o ultrazvucnom pregledu Unos podataka o kolposkopskom i PAP pregledu Izdavanje uputa Zahtev za laboratorijski nalaz Stampanje uputa Stampanje podataka o pregledu Stampanje racuna Stampanje protokola Unos podataka o doktorima Izmena podataka o doktorima Brisanje podataka o doktorima Odabir doktora Odabir pacijenta Unos podataka o pacijentu Izmena podataka o pacijentu Brisanje podataka o pacijentu Jul 2006. Zrenjanin

Ostavljanje_ostalih_licnih_podat aka Otvaranje_novog_kartona Unos_anamneze Unos_dijagnoze Unos_podataka_o_klasicnom_pr egledu Unos_podataka_o_pregledu Unos_podataka_o_CTG_pregled u Unos_podataka_o_ultrazvucnom _pregledu Unos_podataka_o_kolposkopsko m_i_PAP_pregledu Izdavanje_uputa Zahtev_za_laboratorijski_nalaz Stampanje_uputa Stampanje_podataka_o_pregled u Stampanje_racuna Stampanje_protokola Unos_podataka_o_doktorima Izmena_podataka_o_doktorima Brisanje_podataka_o_doktorima Odabir_doktora Odabir_pacijenta Unos_podataka_o_pacijentu Izmena_podataka_o_pacijentu Brisanje_podataka_o_pacijentu

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11 ordinacije'

Tabela 1. Spisak svih sluajeva korienja

Slika 4. Use Case Diagram Pregled

Na slici 4. je predstavljen dijagram Use Case pregled. Na njemu se nalazi jedan uesnik Doktor i 7 sluajeva korienja: Unos anamneze, Unos dijagnoze, Unos podataka o pregledu koji moe biti: Unos podataka o klasinom pregledu, Unos podataka o CTG pregledu, Unos podataka o ultrazvunom pregledu ili Unos podataka o kolposkopskom i PAP pregledu.

Jul 2006. Zrenjanin

15

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Slika 5. Use Case diagram doktori Na slici 5 se nalazi dijagram Use Case doktori. Modelom je predvieno dodavanje, izmena i brisanje vie doktora koji mogu biti zaposleni u ordinaciji. Na ovom dijagramu se nalaze 2 uesnika: korisnik i doktor i 4 sluaja korienja: Odabir doktora, Unos podataka o doktorima, Izmena podataka o doktorima i Brisanje podataka o doktorima.

Jul 2006. Zrenjanin

16

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Slika 6. Use case diagram izvetaji Na ovom dijagramu se nalaze 4 uesnika: pacijent, sestra, korisnik i doktor, i 6 sluaja korienja: tampanje rauna, tampanje protokola, tampanje uputa, tampanje podataka o pregledu, Izdavanje uputa i Unos podataka o pregledu.

Jul 2006. Zrenjanin

17

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Slika 7. Use Case diagram ostali nalazi Na ovom dijagramu se nalazi 5 uesnika: Sestra, Doktor, Korisnik, Specijalista i Laboratorija mada je u sutini najbitniji Korisnik jer on obavlja radnje. Takoe se nalazi 3 Use Case-a: Izdavanje uputa, tampanje uputa i Zahtev za laboratorijski nalaz.

Jul 2006. Zrenjanin

18

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Slika 8. Use case diagram Pacijenti

Jul 2006. Zrenjanin

19

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Na slici 8 se nalazi dijagram sluajeva korienja Use Case pacijenti koji sadri 3 uesnika: Pacijent, Sestra i Korisnik i 8 sluajeva korienja: Ostavljanje imena i prezimena, Ostavljanje ostalih linih podataka, Otvaranje novog kartona, Izdavanje kartona, Unos podataka o pacijentu, Izmena podataka o pacijentu, Brisanje podataka o pacijentu, Odabir pacijenta.

slika 9. Use Case diagram uesnici Slika 9 prikazuje Use Case dijagram uesnici koji predstavlja hijerarhiju i organizacionu strukturu uesnika sistema.

Jul 2006. Zrenjanin

20

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 10 Use Case dijagram zakazivanje Poslednji Use case dijagram je Use case zakazivanje koji ima 3 uesnika: Pacijent, Sestra i Korisnik i 3 sluajeva korienja: Ostavljanje imena i prezimena, Provera slobodnog termina i Zakazivanje pregleda.

Jul 2006. Zrenjanin

21

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

4.2.2. Dijagram klasa (Class Diagram)


Dijagram klasa pripada statikom modelu sistema i prikazuje statiku strukturu klasa u sistemu. Klase predstavljaju objekte koje sistem obrauje, a mogu se nalaziti u razliitim tipovima meusobnih odnosa: asocijaciji (povezane jedna sa drugom), agregaciji (zavisne jedna od druge), specijalizaciji (jedna je specijalan sluaj - podklasa druge), ili spakovane (grupisane kao celina). Opis sistema moe da sadri vie dijagrama klasa. Statikim modelom sistema se opisuju entiteti sistema. Entiteti i veze izmeu njih predstavljeni su klasama i vezama izmeu klasa prikazanih na dijagramu klasa.

App paci j ent

Jul 2006. Zrenjanin

22

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 11 Dijagram klasa Klase su predstavljene bez vidljivih atributa i operacija da bi lepo stale na dijagram. Sledi spisak klasa i opis svake pojedinane klase.

Jul 2006. Zrenjanin

23

Name Code Parent Diplomski rad - IS privatne ginekoloke ordinacije Anamneza Anamneza Object-Oriented Model 'oom is ordinacije' Doktor Doktor Object-Oriented Model 'oom is ordinacije' Laboratorija Laboratorija Object-Oriented Model 'oom is ordinacije' Laboratorijski LaboratorijskiNa Object-Oriented nalaz laz Model 'oom is ordinacije' Mesto Mesto Object-Oriented Model 'oom is ordinacije' Ordinacija Ordinacija Object-Oriented Model 'oom is ordinacije' Pacijent Pacijent Object-Oriented Model 'oom is ordinacije' Pregled Pregled Object-Oriented Model 'oom is ordinacije' Racun Racun Object-Oriented Model 'oom is ordinacije' Sifre Sifre Object-Oriented Model 'oom is ordinacije' Uput Uput Object-Oriented Model 'oom is ordinacije' Ustanova kojoj UstanovaKojojS Object-Oriented se upucuje eUpucuje Model 'oom is ordinacije' App pregled AppPregled Object-Oriented Model 'oom is ordinacije' App doktor AppDoktor Object-Oriented Model 'oom is ordinacije' App pacijent AppPacijent Object-Oriented Model 'oom is ordinacije' Spisak SpisakPacijenata Object-Oriented pacijenata Model 'oom is ordinacije' Spisak pregleda SpisakPregleda Object-Oriented Model 'oom is ordinacije' Jul 2006. Zrenjanin Spisak doktora SpisakDoktora Object-Oriented Model 'oom is ordinacije'

Genera Visibili Abstra Marina te ty Mii 43/01-11 ct X public

Class Type Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public

Class

public 24

Class

public

Class

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Tabela 2. Spisak svih klasa Klasa Anamneza ima sledee atribute: Licna_bolesti, Porodicna_bolesti, Ginekoloska_urednost, Ginekoloska_bolna, Ginekoloska_obilnost, Ginekoloska_podaci o deci, ID_anamneze, Broj abortusa, Broj porodjaja, Datum_prve_menstruacije, Datum_poslednje_menstruacije, Krvna_grupa i Krvna_grupa_muza. Klasa Anamneza nema neke posebne operacije sem set-era i get-era za svaki atribut. Klasa Doktor ima sledee atribute: ID doktora, Ime doktora i Prezime doktora. Nema neke posebne operacije sem set-era i get-era za svaki atribut. Klasa Spisak Doktora nema atribute ali ima operacije: Unesi podatke o doktoru, Brisi podatke o doktoru, Izmeni podatke o doktoru, Doktor postoji i Daj doktora. Klasa AppDoktor nema atribute, ima operacije: Unesi podatke o doktoru, Brisi podatke o doktoru, Izmeni podatke o doktoru, Izaberi doktora i Daj sve doktore. Klasa Pacijent ima atribute: Broj kartona, Datum rodjenja, Ime pacijenta, Prezime pacijenta, Telefon pacijenta, Adresa pacijenta, Mesto i Zanimanje. Klasa Spisak Pacijenata nema atribute ali ima operacije: Dodaj podatke o pacijentu, Obrisi podatke o pacijentu, Izmeni podatke o pacijentu, Doktor postoji i Daj pacijenta. Klasa AppPacijent ima operacije: Dodaj podatke o pacijentu, Obrisi podatke o pacijentu, Izmeni podatke pacijentu, Izaberi pacijenta i Daj sve pacijente. Klasa Raun ima atribute:Broj rauna, Datum uplate i Uplaeni iznos, nema operacije. Klasa Pregled ima atribute: Id pregleda, Opis, Objektivni kliniki nlaz, Naziv dijagnoze, Prepisana terapija, Komentar, Datum pregleda, Kolposkopija opis, PAP grupa. Nema opercije. Klasa Spisak Pregleda nema atribute ali ima operacije: Unesi podatke o pregledu, Brii podatke pregledu, Izmeni podatke o pregledu, Pregled postoji i Daj pregled. Klasa AppPregled ima operacije: Unesi podatke o pregledu, Brii podatke pregledu, Izmeni podatke o pregledu, Izaberi pregled i Daj sve preglede. Klasa Ordinacija ima atribute: ID ordinacije, Naziv ordinacije i Adresa ordinacije. Klasa Mesto ima sledee atribute: PTT i Naziv mesta. Nema operacije. Klasa Laboratorija ima atribute: ID laboratorije, ifra nalaza, Naziv laboratorije i Adresa laboratorije. Nema operacije. Klasa Laboratorijski nalaz ima atribute: Id vrste nalaza, Datum izdavanja nalaza i Nalaz. Nema operacije. Klasa Ustanova kojoj se upuuje ima atribute: Id ustanove, Naziv ustanove, nema operacije.

Jul 2006. Zrenjanin

25

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Klasa Uput ima atribute: ifra uputa, Datum upuivanja, Uputna dijagnoza, nema operacije. Klasa ifre ima atribute: Korisniko ime i ifra, nema operacije.

4.2.3. Dijagram sekvenci (Sequence Diagram)


Dijagram sekvenci se prikazuje komunikaciju izmeu skupa objekata, ostvarenu pomou poruka koje objekti meusobno razmenjuju u cilju ostvarivanja oekivanog ponaanja. Ima dve dimenzije: vertikalnu (za vreme) i horizontalnu (za objekte). Akcenat se stavlja na opisu sekvenci poruka odnosno na opisu poruka i njihovom redosledu, a nisu prikazane veze izmeu objekata. Jedan dijagram moe sadrati jedan ili vie scenarija. slika 12 Dijagram sekvenci unos novog pregleda

Na ovom dijagramu sekvenci je prikazan tok kontrole za dodavanje novog pregleda u spisak pregleda. Ovaj tok kontrole poinje tako to sa klijentske strane stie poruka za kreiranje pojavi klase Spisak pregleda. Nakon toga proverava se metodom Pregled Postoji(IdPregleda) da li se u spisku pregleda ovakav pregled ve nalazi. Ukoliko pregled postoji vraa se poruka da pregled sa tim ID-jem ve postoji a ukoliko ne, poziva se metoda za kreiranje i unose se podaci o pregledu. Zatim se objekat unosi u spisak pregleda i nakon svega toga prikazuje korisniku.

4.2.4. Dijagram saradnje (Collaboration Diagram)

Jul 2006. Zrenjanin

26

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Dijagram saradnje predstavlja dinamiki dijagram objekta kojim se opisuje saradnja i i interakcija odnosno komunikacija izmeu objekata u sistemu. Saradnja izmeu objekata prikazuje se objektima i njihovim meusobnim vezama. Komunikacija izmedju objekata se opisuje porukama koje objekti meusobno razmenjuju, ostvarujuci na taj nain oekivano ponaanje i odreenu funkcionalnost sistema. Ovi dijagrami opisuju realizaciju operacije, klase ili slucaja korisenja. Naglaena je veza izmeu objekata. Odraen je dijagram saradnje unos novog pregleda gde se vidi saradnja izmeu objekata klase pregled i spisak pregleda u okviru dodavanja novog pregleda u spisak pregleda.

slika 13. Dijagram saradnje unos novog pregleda

5. Modeli podataka 5.1. Konceptualni model podataka (CDM)


On je najpopularniji semantiki model podataka III generacije koji se koristi za projektovanje konceptualne eme baze podataka. Konceptualna ema predstavlja takav

Jul 2006. Zrenjanin

27

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

model realnog sistema i pripadajue baze podataka, koji ne zavisi od konkretne tehnologije sistema za upravljanje bazom podataka. Dobijeni konceptualni model podataka Power Designer 10.0.0.1077. moe lako prevesti u fiziki model podataka, a zatim i generisati konkretnu Bazu podatka. Osnovni elementi konceptualnog modela podataka su: entiteti, elementarni podaci, atributi, domeni, relacije. Na slici 14. je prikazan konceptualni model podataka dobijen iz dijagrama klasa.

slika 14. Konceptualni model podataka

Jul 2006. Zrenjanin

28

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Name Licna_bolesti Porodicna_boles ti Ginekoloska_ure dnost Ginekoloska_bol na Ginekoloska_obi lnost ID anamneze Ginekoloska_po daci o deci ID doktora Ime doktora Prezime doktora Broj abortusa Broj porodjaja Datum poslednje menstruacije Datum prve menstruacije Krvna grupa Krvna grupa muza ID laboratorije Sifra nalaza Naziv laboratorije Adresa laboratorije ID nalaza

Code LICNA_BOLES TI PORODICNA_B OLESTI GINEKOLOSKA _UREDNOST GINEKOLOSKA _BOLNA GINEKOLOSKA _OBILNOST ID_ANAMNEZE GINEKOLOSKA _PODACI_O_DE CI ID_DOKTORA IME_DOKTORA PREZIME_DOK TORA BROJ_ABORTU SA BROJ_PORODJ AJA DATUM_POSLE DNJE_MENSTR UACIJE DATUM_PRVE_ MENSTRUACIJ E KRVNA_GRUP A KRVNA_GRUP A_MUZA ID_LABORATO RIJE SIFRA_NALAZ A NAZIV_LABOR ATORIJE ADRESA_LABO RATORIJE ID_NALAZA

Domain

Data Type TXT TXT TXT TXT TXT TXT TXT

Length

Precisi on

TXT TXT TXT I I DT

DT

TXT TXT TXT TXT TXT TXT TXT 29

Jul 2006. Zrenjanin

Diplomski rad - IS privatne ginekoloke ordinacije Datum izdavanja nalaza Nalaz PTT Naziv mesta ID ordinacije Naziv ordinacije Kolposkopija opis Adresa ordinacije Komentar Broj kartona Datum rodjenja Ime pacijenta Prezime pacijenta Telefon pacijenta Adresa pacijenta Naziv dijagnoze Zanimanje ID pregleda Opis Objektivni klinicki nalaz PAP grupa Broj racuna Datum uplate Uplaceni iznos Korisnicko ime Sifra Prepisana terapija DATUM_IZDAV ANJA_NALAZA NALAZ PTT NAZIV_MESTA ID_ORDINACIJ E NAZIV_ORDIN ACIJE KOLPOSKOPIJ A_OPIS ADRESA_ORDI NACIJE KOMENTAR BROJ_KARTON A DATUM_RODJE NJA IME_PACIJENT A PREZIME_PACI JENTA TELEFON_PACI JENTA ADRESA_PACIJ ENTA NAZIV_DIJAGN OZE ZANIMANJE ID_PREGLEDA OPIS OBJEKTIVNI_K LINICKI_NALA Z PAP_GRUPA BROJ_RACUNA DATUM_UPLA TE UPLACENI_IZN OS KORISNICKO_I ME SIFRA PREPISANA_TE RAPIJA DT TXT TXT TXT TXT TXT TXT TXT TXT TXT DT TXT TXT TXT TXT TXT TXT TXT TXT TXT

Marina Mii 43/01-11

TXT TXT DT DC TXT TXT TXT

Jul 2006. Zrenjanin

30

Diplomski rad - IS privatne ginekoloke ordinacije Sifra uputa Datum upucivanja Uputna dijagnoza ID ustanove Naziv ustanove Datum pregleda SIFRA_UPUTA DATUM_UPUCI VANJA UPUTNA_DIJA GNOZA ID_USTANOVE NAZIV_USTAN OVE DATUM_PREG LEDA TXT DT TXT TXT TXT DT

Marina Mii 43/01-11

Tabela 3. Spisak Data item-a CDM-a

5.2 . Fiziki model podataka (PDM)


Relacioni model predstavljamo putem eme koja je generisana od prethodnog CDM modela pomou paketa Power Designer 10.0.0.1077.

Slika 15. Fiziki model podataka

Jul 2006. Zrenjanin

P h ysi cal Da ta M od e l

31

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

6. Opis aplikacije 6.1. Hardverski zahtevi


Minimalni hardverski zahtevi: Pentium II na 300 MHz 64 MB RAM memorije Color SVGA monitor 15 ina 10 Gb hard disk CD ROM 32x Flopi disk drajv 3.5 ina Mi Tastatura Preporuljivi hardverski zahtevi: Pentium IV na 1.7 GHz 256 MB RAM memorije Color SVGA monitor 17 ina 40 Gb hard disk CD ROM 52x Flopi disk drajv 3.5 ina Mi Tastatura

6.2. Softverski zahtevi


Program je mogue koristiti na PC raunarima sa instaliranim WINDOWS XP Professional operativnim sistemom SP1. Potrebna rezolucija ekrana je 1024x768 piksela. Testiranje softvera vreno je na WINDOWS XP Professional operativnom sistemu SP2. Kompatibilnost sa WINDOWS 2000,98/95/ME operativnim sistemima nije zagarantovana. Takoe je potrebno instalirati Microsoft .NET Framework SDK v1.1. a za potrebe korienja baze podataka potrebno je imati instaliran SQL Server 2000.

6.3. Instalacija
Instalaciona verzija softvera se isporuuje u folderu Install. Ovaj folder sadri fajlove Setup.Ini, Setup.msi i jedan izvrni fajl Setup.Exe. Instalaciju pokrenuti aktiviranjem fajla Setup.Exe. Pojavljuje se prozor sa nazivom Welcome to the Setup Wizard. Aktivirajte taster Next. U prozoru Select installation folder izaberite destinaciju na koju elite da se aplikacija instalira aktiviranjem tastera Browse. Nakon odabira putanje, aktivirajte taster Next. U prozoru Confirm installation jo jednom aktivirajte taster Next nakon ega zapoinje instalacija aplikacije. Na kraju instalacije Jul 2006. Zrenjanin 32

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

aktivirajte taster Close. Zatim je potrebno povezati fajl baze podataka sa SQL Serverom 2000. Pokrenite SQL Server Enterprise Manager. Klikom na levi taster mia pristupate destinaciji: Console Root > Microsoft SQL Servers > SQL Server Group > (local). Klikom na desni taster mia na folder Databases otvara se iskaui meni. Odaberite opciju All Tasks, pa zatim Attach Database. U prikazanom dijalogu se navede putanja fajla koji sadri bazu (DIPLOMSKA.mdf), a nalazi se u folderu 'Data na cd-u.

6.4. Korienje aplikacije


Kada se pokrene fajl 'IS privatne ginekoloske ordinacije.exe' otvara se Splash Screen koji nosi pozdravnu poruku. Kada on nestane sa ekrana pojavljuje se glavna forma koja ne sadri glavni meni kako je to postalo uobiajeno za aplikacije ovakvog tipa, ve nekoliko dugmia kojima se moe lako prei na eljenu akciju.

slika 16. Glavna forma aplikacije Kada se klikne na unos novog pacijenta, otvara se forma za unos podataka o novom pacijentu.

Jul 2006. Zrenjanin

33

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 17. Forma za unos, izmenu podataka o pacijent Kada se potvrdi snimanje podataka klikom na Potvrdi, moe se pristupiti unosu Anamneze. Anamneza je opte zdravstveno stanje pacijenta, nezavisno od pregleda, koje se unosi obino na prvom pregledu. Ako je anamneza ranije uneena ona e se na ovoj formi iitati iz baze. Nije omoguena izmena ni brisanje anamneze.

slika 18. Forma za unos ili iitavanje anamneze Ako se eli uitavanje podataka ve postojeeg pacijenta, onda se sa glavne forme izabere opcija Uitavanje postojeeg pacijenta i otvara se forma za izbor pacijenta po kriterijumu: Broju kartona ili Prezimenu i imenu.

Jul 2006. Zrenjanin

34

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 19. Forma za izbor podataka postojeeg pacijenta Kada se pacijent odabere (klikom na Pronadji i odabirom u list boxu i Potvrdi) njegovi podaci se prenose na formu o podacima o pacijentu. Sa forme o podacima o pacijentu se poziva Uitavanje pregleda. Bira se vrsta pregleda koja eli da se uita klikom na njen naziv.

slika 20. Izbor vrste pregleda Ako ne postoje pregledi za odabranog pacijenta, aplikacija to javlja odgovarajuom porukom. Ako postoje, otvara se forma za unos pregleda zavisno od vrste pregleda koji je odabran. Ako je odabran Klasian ginekoloki pregled, otvara se sledea forma:

Jul 2006. Zrenjanin

35

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 21. Forma za unos podataka sa klasinog ginekolokog pregleda Ako se klikne na Ultrazvuni pregled otvara se forma za unos podataka sa ultrazvunog pregleda.

slika 22. Forma za unos podataka sa ultrazvunog pregleda Ako korisnik klikne na CTG pregled, otvara se forma za unos podataka sa CTG pregleda.

Jul 2006. Zrenjanin

36

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 23. Forma za unos podataka sa CTG pregleda I na kraju, unos podataka sa kolposkopije i/ili Papanikolau testa klikom na Kolposkopija i PAP test.

slika 24.Unos podataka sa kolposkopije i/ili Papanikolau testa Kao to se vidi na svakoj slici sa podacima sa pregleda, u gornjem delu forme pie koji je po redu pregled te vrste za odabranog pacijenta, i kliktanjem na dugmie prethodni, sledei mogu se prelistavati stari pregledi. Jul 2006. Zrenjanin

37

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

Takoe se moe vriti Izmena podataka sa pregleda klikom na dugme Kada se vrednosti promene obavezno je da se klikne na sauvale. Izvetaj o pregledima se moe dobiti klikom na posebno.

da bi se izmene i

za svaku vrstu pregleda

Osim unosa i iitavanja podataka o pregledima, za ve odabranog pacijenta se sa forme sa podacima o pacijentu moe prei na forme za

zatim formu za

slika 25. Forma za unos recepta ili

Jul 2006. Zrenjanin

38

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 26. Forma za unos uputa Ako je u ordinaciji zaposleno vie doktora, podaci o njima se pozivaju sa glavne forme klikom na dugme Podaci o doktorima i otvara se forma

Jul 2006. Zrenjanin

39

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 27. Forma za obradu podataka o doktorima gde je mogue vriti pregled, unos, izmenu i brisanje podataka o doktorima . Vano je na ovom mestu naglasiti da je jedino za doktore omogueno brisanje podataka jer oni mogu poeti i prestati da rade u ordinaciji, a podatke o pacijentima i pregledima po zakonu niko ne sme obrisati pa se i izmena tih podataka vrlo ograniava i ne preporuuje. Protokol ili spisak svih pregleda u datoj ordinaciji se dobija klikom na dugme sa glavne forme. Podaci o autoru ove aplikacije se takoe pokreu sa glavne forme klikom na gde se otvara forma sa osnovnim podacima o autoru.

slika 28. Forma o Autoru Poziv pomonog fajla (Help) se moe dobiti pokretanjem opcije

sa glavne forme. Postoje izvetaji o pacijentima, doktorima, pregledima, tampanje recepta, rauna, uputa i protokola. Primer jednog izvetaja je izvetaj o pacijentima.

Jul 2006. Zrenjanin

40

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

slika 29. Primer izvetaja spisak svih pacijenata

Jul 2006. Zrenjanin

41

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

7. Objanjenje realizacije pojedinih dijaloga


Klase i metode koje su koriene u aplikaciji su veim delom izgenerisane iz Power Designer-a klikom na Generate C# code u okviru Language opcije kada se nalazimo na Class diagram-u. Primer jedne od takvih klasa sa metodama koje ona koristi moe biti klasa AppPacijent.
/ ********************************************************************** * * Module: AppPacijent.cs * Author: Mayana * Purpose: Definition of the Class AppPacijent ********************************************************************** */ using System; using System.Data; using System.Data.SqlClient; public class AppPacijent { SqlConnection sqlConnection1 = new SqlConnection(); Pacijent paci = new Pacijent(); public AppPacijent() { string ConnString = ""; string SQL = ""; ConnString = @"workstation id=.;packet size=4096;integrated security=SSPI;data source=.;persist security info=True;initial catalog=DIPLOMSKA"; SQL=@"SELECT * FROM PACIJENT"; sqlConnection1.ConnectionString = ConnString; SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(SQL, sqlConnection1); sqlConnection1.Open(); DataSet dsPacijent = new DataSet(); sqlDataAdapter1.Fill(dsPacijent, "PACIJENT"); foreach (DataRow dr in dsPacijent.Tables["PACIJENT"].Rows) Pacijent pac = new Pacijent(); pac.BrojKartona=Convert.ToInt32(dr["BROJ_KARTONA"].ToString()); AppPozivaSpisakPacijenata.DodajPodatkeOPacijentu(pac); public int DodajPodatkeOPacijentu(Pacijent noviPacijent) { string SQL = ""; SQL=@"SELECT * FROM PACIJENT"; if (noviPacijent!=null) {

} }

AppPozivaSpisakPacijenata.DodajPodatkeOPacijentu(noviPacijent);

Jul 2006. Zrenjanin

42

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

SqlDataAdapter sqlDataAdapter2 = new SqlDataAdapter(SQL,sqlConnection1); DataSet dsPacijent = new DataSet(); sqlDataAdapter2.Fill(dsPacijent, "PACIJENT"); int broj = noviPacijent.BrojKartona; string ime = noviPacijent.ImePacijenta; string prezime = noviPacijent.PrezimePacijenta; string adresa = noviPacijent.AdresaPacijenta; string telefon = noviPacijent.TelefonPacijenta; string datum = noviPacijent.DatumRodjenja.ToString(); string zanimanje = noviPacijent.Zanimanje; string Mesto = noviPacijent.Mesto; DataRow row = dsPacijent.Tables["PACIJENT"].NewRow(); sqlDataAdapter2.InsertCommand = new SqlCommand("INSERT

INTO PACIJENT (BROJ_KARTONA,DATUM_RODJENJA,IME_PACIJENTA,PREZIME_PACIJENTA,TELEFON_P ACIJENTA,ADRESA_PACIJENTA,ZANIMANJE,Mesto) VALUES ("+broj+",CONVERT(DATETIME, '"+datum+"'),'"+ime+"','"+prezime+"','"+telefon+"','"+adresa+"','"+zan imanje+"', '"+Mesto+"')",sqlConnection1); dsPacijent.Tables["PACIJENT"].Rows.Add(row); sqlDataAdapter2.Update(dsPacijent, "PACIJENT"); } return 0; } public int ObrisiPodatkeOPacijentu(Pacijent postojeciPacijent) { AppPozivaSpisakPacijenata.ObrisiPodatkeOPacijentu(postojeciPacijent); string komandaDelete = "DELETE FROM PACIJENT WHERE BROJ_KARTONA = "+postojeciPacijent.BrojKartona+""; SqlCommand BrisanjeKomanda = new SqlCommand(komandaDelete,sqlConnection1); BrisanjeKomanda.ExecuteNonQuery(); return 0; } public int IzmeniPodatkeOPacijentu(Pacijent noviPacijent, Pacijent postojeciPacijent) { noviPacijent.BrojKartona=postojeciPacijent.BrojKartona; string komanda = "UPDATE PACIJENT SET BROJ_KARTONA="+noviPacijent.BrojKartona+",DATUM_RODJENJA='"+noviPacije nt.DatumRodjenja+"', IME_PACIJENTA='"+noviPacijent.ImePacijenta+"', PREZIME_PACIJENTA='"+noviPacijent.PrezimePacijenta+"',TELEFON_PACIJENT A='"+noviPacijent.TelefonPacijenta+"', ADRESA_PACIJENTA='"+noviPacijent.AdresaPacijenta+"', ZANIMANJE='"+noviPacijent.Zanimanje+"', Mesto='"+noviPacijent.Mesto+"' WHERE (BROJ_KARTONA="+postojeciPacijent.BrojKartona+")"; SqlCommand UpdateKomanda = new SqlCommand(komanda,sqlConnection1); UpdateKomanda.ExecuteNonQuery(); AppPozivaSpisakPacijenata.IzmeniPodatkeOPacijentu(noviPacijent, postojeciPacijent); return 0; }

Jul 2006. Zrenjanin

43

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

public Pacijent IzaberiPacijenta(int brojKartona) { string SQL = ""; SQL=@"SELECT * FROM PACIJENT WHERE BROJ_KARTONA ="+brojKartona+""; SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(SQL, sqlConnection1); DataSet dsPacijentIzm = new DataSet(); sqlDataAdapter1.Fill(dsPacijentIzm,"PACIJENT"); SpisakPacijenata noviSpisak = new SpisakPacijenata(); foreach (DataRow dr in dsPacijentIzm.Tables["PACIJENT"].Rows) { if (Convert.ToInt32(dr["BROJ_KARTONA"].ToString())==brojKartona) { paci.BrojKartona=Convert.ToInt32(dr["BROJ_KARTONA"].ToString()); paci.ImePacijenta=dr["IME_PACIJENTA"].ToString(); paci.PrezimePacijenta=dr["PREZIME_PACIJENTA"].ToString(); paci.AdresaPacijenta=dr["ADRESA_PACIJENTA"].ToString(); paci.Mesto=dr["Mesto"].ToString(); paci.DatumRodjenja=Convert.ToDateTime(dr["DATUM_RODJENJA"].ToString()) ; paci.Zanimanje=dr["ZANIMANJE"].ToString(); paci.TelefonPacijenta=dr["TELEFON_PACIJENTA"].ToString(); return(paci); break;

AppPozivaSpisakPacijenata.DodajPodatkeOPacijentu(paci); } bool ima = false; Pacijent novi = new Pacijent(); foreach(Pacijent pac in AppPozivaSpisakPacijenata.GetSadrzi()) { if(pac.BrojKartona==brojKartona) { ima = true; novi=pac; break; } else ima = false; } if(ima) return novi; else return null; }

Jul 2006. Zrenjanin

44

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

public Pacijent IzaberiPacPoPrezimenuIImenu(string prezime, string ime) { string SQL = ""; SQL=@"SELECT * FROM PACIJENT WHERE PREZIME_PACIJENTA ='"+prezime+"' AND IME_PACIJENTA='"+ime+"'"; SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter(SQL, sqlConnection1); DataSet dsPacijentIzm = new DataSet(); sqlDataAdapter1.Fill(dsPacijentIzm,"PACIJENT"); foreach (DataRow dr in dsPacijentIzm.Tables["PACIJENT"].Rows) { if (dr["PREZIME_PACIJENTA"].ToString()==prezime) if (dr["IME_PACIJENTA"].ToString()==ime) { paci.BrojKartona=Convert.ToInt32(dr["BROJ_KARTONA"].ToString()); paci.ImePacijenta=dr["IME_PACIJENTA"].ToString(); paci.PrezimePacijenta=dr["PREZIME_PACIJENTA"].ToString(); paci.AdresaPacijenta=dr["ADRESA_PACIJENTA"].ToString(); paci.Mesto=dr["Mesto"].ToString(); paci.DatumRodjenja=Convert.ToDateTime(dr["DATUM_RODJENJA"].ToString()) ; paci.Zanimanje=dr["ZANIMANJE"].ToString(); paci.TelefonPacijenta=dr["TELEFON_PACIJENTA"].ToString(); return(paci); break; } AppPozivaSpisakPacijenata.DodajPodatkeOPacijentu(paci); } bool ima = false; Pacijent novi = new Pacijent(); foreach(Pacijent pac in AppPozivaSpisakPacijenata.GetSadrzi()) { if(pac.PrezimePacijenta==prezime) if(pac.ImePacijenta==ime) { ima = true; novi=pac; break; } else ima = false; }

Jul 2006. Zrenjanin

45

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

if(ima) return novi; else return null;

public SpisakPacijenata DajSvePacijente() { string SQL = ""; SQL=@"SELECT * FROM PACIJENT"; SqlDataAdapter sqlDataAdapter3 = new SqlDataAdapter(SQL, sqlConnection1); DataSet dsDajSvePac = new DataSet(); sqlDataAdapter3.Fill(dsDajSvePac,"PACIJENT"); SpisakPacijenata noviSpisak = new SpisakPacijenata(); foreach (DataRow dr in dsDajSvePac.Tables["PACIJENT"].Rows) { Pacijent paci = new Pacijent(); paci.BrojKartona=Convert.ToInt32(dr["BROJ_KARTONA"].ToString()); paci.ImePacijenta=dr["IME_PACIJENTA"].ToString(); paci.PrezimePacijenta=dr["PREZIME_PACIJENTA"].ToString(); paci.AdresaPacijenta=dr["ADRESA_PACIJENTA"].ToString(); paci.DatumRodjenja=Convert.ToDateTime(dr["DATUM_RODJENJA"].ToString()) ; paci.Zanimanje=dr["ZANIMANJE"].ToString(); paci.TelefonPacijenta=dr["TELEFON_PACIJENTA"].ToString(); paci.Mesto=dr["Mesto"].ToString(); noviSpisak.DodajPodatkeOPacijentu(paci); } return noviSpisak; } public SpisakPacijenata AppPozivaSpisakPacijenata = new SpisakPacijenata(); }

Metode ove klase se pozivaju na formi sa podacima o pacijentima npr. u okviru procedure koja se izvrava klikom na dugme Potvrdi:
private void btnPotvrdi_Click(object sender, System.EventArgs e) { //snimi podatke i izbaci msgbox if (akcija=="unos") { try { if(txtBrKart.Text != "")

Jul 2006. Zrenjanin

46

Diplomski rad - IS privatne ginekoloke ordinacije


{

Marina Mii 43/01-11

Pacijent paci = new Pacijent(); paci.BrojKartona = broj1;

if(app.AppPozivaSpisakPacijenata.PacijentPostoji(broj1)) MessageBox.Show("Pacijent sa datim brojem kartona vec postoji","ID postoji", MessageBoxButtons.OK,MessageBoxIcon.Error); else { paci.ImePacijenta=txtIme.Text; paci.PrezimePacijenta=txtPrezime.Text; paci.AdresaPacijenta=txtAdresa.Text; paci.Zanimanje=txtZanimanje.Text; paci.TelefonPacijenta=txtTelefon.Text; paci.Mesto=txtMesto.Text; paci.DatumRodjenja=dtpDatRodj.Value; app.DodajPodatkeOPacijentu(paci); } } else {

MessageBox.Show("Morate upisati broj kartona","Greska - Prazno polje"); txtBrKart.Focus(); } } catch(Exception ex) { MessageBox.Show(ex.Message, "Greska!!!"); } MessageBox.Show("Klikom na dugme Anamneza unesite anamnezu za pacijenta", "info",MessageBoxButtons.OK,MessageBoxIcon.Information); grbPodaci.Enabled=false; btnIzmena.Enabled=true; } else if (akcija=="izmena") {grbPodaci.Enabled=true; string brk=txtBrKart.Text; int br=Convert.ToInt32(brk); Pacijent stari = app.IzaberiPacijenta(br); Pacijent novi = new Pacijent(); novi.BrojKartona=stari.BrojKartona;

Jul 2006. Zrenjanin

47

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

novi.ImePacijenta=txtIme.Text; novi.PrezimePacijenta=txtPrezime.Text; novi.AdresaPacijenta=txtAdresa.Text; novi.Mesto=txtMesto.Text; novi.Zanimanje=txtZanimanje.Text; novi.TelefonPacijenta=txtTelefon.Text; novi.DatumRodjenja=Convert.ToDateTime(dtpDatRodj.Value.ToShortDateStri ng()); app.IzmeniPodatkeOPacijentu(novi,stari); MessageBox.Show("Podaci su uspesno izmenjeni","Info",MessageBoxButtons.OK,MessageBoxIcon.Information); this.Close(); this.Dispose(); }

Takoe se na nekim mestima u aplikaciji koriste pomone metode koje se nalaze u okviru klasa nego su u okviru neke forme napisane i na potrebnom mestu upotrebljene. Kao na primer metoda VratiBrojPregleda koja vraa ukupan broj pregleda za odreenog pacijenta prema njegovom broju kartona glasi ovako:
public int VratiBrojPregleda(object sender, System.EventArgs e) { vratibrpr=0; brk=broj1; Pacijent p = new Pacijent(); SqlConnection con = new SqlConnection(); string ConnString = ""; ConnString = @"workstation id=.;packet size=4096;integrated security=SSPI;data source=.;persist security info=True;initial catalog=DIPLOMSKA"; con.ConnectionString=ConnString; string upit = @"SELECT ID_PREGLEDA,BROJ_KARTONA FROM PREGLED WHERE BROJ_KARTONA = "+brk+""; SqlDataAdapter da = new SqlDataAdapter (upit,con); DataSet ds = new DataSet(); con.Open(); da.Fill(ds,"PREGLED"); foreach (DataRow dr in ds.Tables["PREGLED"].Rows) { if (Convert.ToInt32(dr["BROJ_KARTONA"].ToString())==brk) vratibrpr++; } return vratibrpr; }

a poziva se ovde
private void formUnos_Load(object sender, System.EventArgs e) { broj=parent.broj; if (broj!="novi")

Jul 2006. Zrenjanin

48

Diplomski rad - IS privatne ginekoloke ordinacije


{

Marina Mii 43/01-11

} else { btnIzmena.Enabled=false; broj1=VratiMaxBRK(sender,e); broj=broj1.ToString(); pom = broj1+1; txtBrKart.Text=pom.ToString(); broj1=pom; vratibrpr=0; txtBrPregleda.Text="0"; br=0; akcija="unos"; } pomo=br; }

grbPodaci.Enabled=false; btnIzmena.Enabled=true; btnPotvrdi.Enabled=false; btnOdustani.Enabled=false; txtBrKart.Text=parent.broj; broj = txtBrKart.Text; broj1=Convert.ToInt32(broj); Pacijent vrati=app.IzaberiPacijenta(broj1); txtIme.Text=vrati.ImePacijenta; txtPrezime.Text=vrati.PrezimePacijenta; dtpDatRodj.Value=vrati.DatumRodjenja; txtAdresa.Text=vrati.AdresaPacijenta; txtZanimanje.Text=vrati.Zanimanje; txtMesto.Text=vrati.Mesto; txtTelefon.Text=vrati.TelefonPacijenta; br = VratiBrojPregleda(sender,e); txtBrPregleda.Text=br.ToString(); vratibrpr=br;

Jul 2006. Zrenjanin

49

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

8. Zakljuak
Realizacija ovog projekta sastojala se iz logikog projektovanja i implementacije modula Informacioni sistem privatne ginekoloke ordinacije. Logiko projektovanje je izvedeno u alatu Power Designer 10.0.0.1077. Korieni UML dijagrami su: dijagram sluajeva korienja, dijagram klasa, dijagram saradnje i dijagram sekvenci za pojedine delove pomatranog sistema. Implementacija je realizovana u Microsoft Visual Studio .NET okruenju. Dokumentacija je uraena u Microsoft Word-u 2003. Help fajl je uraen u Help and Manual 3.0. U posmatranoj privatnoj ginekolokoj ordinaciji kao i u veini zdravstvenih ustanova jedan od najveih problema je nepostojanje informacionog sistema koji bi pokrio njihove delatnosti kao i nedovoljna obuenost strunog osoblja za rad na raunaru. Zbog napretka informatikih tehnologija, neizbeno je okrenuti se uvoenju modernih sistema, koji e poveati produktivnost rada kroz automatizovan nain obrade podataka. Uvoenje informacionog sistema bi znatno ubrzalo i olakalo manipulaciju dokumentima, dovelo bi do bolje organizacije rada u ordinaciji, a samim tim i do poboljanja radne atmosfere kao i do poboljanja same nege bolesnika.

Jul 2006. Zrenjanin

50

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

9. Literatura
[1] Ivana Stanojevi, Duan Surla - Uvod u objedinjeni jezik modeliranja, Novi Sad, 1999 [2] Doc. Dr Biljana Radulovi, Ljubica Eremi, Zoltan Kazi - Odabrana poglavlja projektovanja informacionih sistema, Zrenjanin, 2001 [3] Mladenovi Dragomir, Zorica Bogdanovi, Aleksandra Mihailovi, Ginekologija i akuerstvo sa negom,Zavod za udbenike i nstavna sredstva, Beograd, 1996.

Jul 2006. Zrenjanin

51

Diplomski rad - IS privatne ginekoloke ordinacije

Marina Mii 43/01-11

10. Prilog
U prilogu je dostavljen cd sa potrebnim projektnim fajlovima (oom, cdm, pdm) u folderu Project, bazom podataka u folderu Data, dokumentacijom u folderu Doc, instalacionom verzijom softvera u folderu Install i na kraju aplikacijom u folderu Source sa podfolderima Aplikacija i Klase.

Jul 2006. Zrenjanin

52