Slovenská technická univerzita v Bratislave

FAKULTA ELEKTROTECHNIKY A INFORMATIKY

Katedra informatiky a výpočtovej techniky

Odbor: INFORMATIKA


Zber a spracovanie normatívnych dát pre elektromyografiu

(ponuka)

Tímový projekt


Tím č. 1: Bc. Pavol Boďo

Bc. Michal Ďurdina

Bc. Zdeno Kubo

Bc. Vladimír Trgo

Bc. Zoltán Varga

Október 2000


 

Obsah

1. Tím

2. Motivácia

3. Čo môžeme poskytnúť

3.1 Plán projektu

3.2 Čo ponúkame

3.3 Bezpečnosť.

4. Predpokladané zdroje

4.1 Nároky na vývojové pracovisko

4.2 Nároky výsledného systému

5. Ponúkané témy podľa priority

6. Rozvrh členov tímu (zimný semester)

7. Návrh zmien organizácie predmetu

 

1. Tím

Náš tím tvorí päť študentov prvého ročníka inžinierskeho štúdia na Fakulte elektrotechniky a informatiky Slovenskej technickej univerzity v Bratislave. Počas štúdia aj v rámci svojich mimoškolských aktivít získali množstvo vedomostí z rôznych oblastí informatiky. Nasleduje predstavenie jednotlivých členov nášho tímu.

Bc. Pavol Boďo – je už dva roky zamestnancom firmy SWH s.r.o., ktorá sa zaoberá tvorbou softvéru. Pracoval s viacerými typmi databáz ako sú Oracle, SAS, SQL server, Access alebo MySQL. Zúčastnil sa tvorby mnohých internetových aplikácií, kde tvoril statické a dynamické stránky (pomocou technológie SAS Internet, Oracle WebDB, JSP, PHP a JavaScript). Aktívne pracoval aj na vývoji ekonomického softvéru, v ktorom si precvičil dlhodobú tímovú prácu (vyše roka). Taktiež má skúsenosti s tvorbou aplikácií v jazykoch Java, MS Basic, C/C++, Pascal, Lisp a Prolog.

Bc. Michal Ďurdina – sa zameriava najmä na riešenia spracovania dát a komunikáciu po počítačovej sieti. Má niekoľkoročné praktické skúsenosti s vývojom distribuovaných aplikácií väčšieho rozsahu. Taktiež je dlhšie obdobie členom vývojárskeho tímu, v ktorom zastáva programátorské a analytické úlohy. Medzi programovacie jazyky, ktoré aktívne ovláda, patria Object Pascal, C++, Java, Assembler a Lisp. Ovláda databázové prostredia Interbase a Oracle, ktoré programuje pomocou jazyka SQL. Na vývoj klientských aplikácií najradšej používa vývojové prostredie Borland Delphi a JBuilder.

Bc. Zdeno Kubo – sa venuje vývoju databázovo orientovaných aplikácií typu klient-server. Ovláda C/C++, Pascal, Assembler, Lisp, Prolog, Perl, PowerScript , SQL a PLSQL. Má praktické skúsenosti s vývojovými prostrediami Microsoft Visual Studio, Borland C, Borland Pascal, Turbo Assembler, GC LISP, Arity Prolog a PowerBuilder. Pracuje s databázovými systémami Oracle a Sybase SQL. Má tiež skúsenosti s HTML a JavaScriptom. Má znalosti aj z oblasti neurónových sietí, umelej inteligencie a z oblasti optického rozpoznávania znakov. V súčasnosti rozširuje svoje vedomosti o Jave, Active Server Pages a venuje sa vývoju internetových aplikácií.

Bc. Vladimír Trgo – sa zaoberá vývojom aplikácií v prostredí Microsoft Visual C++. Ovláda tiež základy práce v Microsoft Visual Basic a Visual J++. Má skúsenosti s databázovými systémami Access, Visual FoxPro a Progress. Ovláda SQL aj tvorbu WWW stránok. Absolvovaním predmetov Počítačové siete III., Databázové systémy II. a Manažment v softvérovom inžinierstve získa ďalšie vedomosti využiteľné pri riešení tohto tímového projektu.

Bc. Zoltán Varga – má praktické skúsenosti s prácou v jazykoch C/C++, Pascal, Assembler, Lisp, Prolog a SQL. Má skúsenosti s prácou v integrovanom vývojovom prostredí Microsoft Developer Studio. Počas štúdia získal potrebné vedomosti z databázových systémov a základné znalosti UML. Vybrané predmety v inžinierskom štúdiu, ako Znalostné systémy, Databázové systémy II. a Manažment v softvérovom inžinierstve sú blízke zvolenej téme tímového projektu.

 

 

2. Motivácia

Určovanie diagnózy pacientov pomocou elektromyografie (EMG) je náročný proces. Myslíme si, že zavedenie informačných technológií do odvetia zdravotníctva prináša výraznú pomoc pri náročnej práci lekárov. Použitie informačných technológií v procese určovania EMG diagnózy sprehľadňuje a zefektívňuje prácu lekárov, ktorí prichádzajú do styku s veľkým množstvom údajov z EMG vyšetrení. Pomocou informačných technológií môžu tieto údaje evidovať a distribuovať medzi pracoviskami. Informačné technológie môžu pomôcť lekárom pri stanovení správnej diagnózy.

Máme veľký záujem na riešení tohto projektu, pretože nám umožňuje riešiť konkrétny problém z reálneho života. Naviac je pre nás lákavé nahliadnutie do lekárskeho zákulisia. Chceme nadviazať na kvalitnú prácu dvoch študentských tímov, ktoré riešili takýto projekt v minulom školskom roku. Veríme, že sa nám podarí prispieť k skvalitneniu diagnostikovania neurologických ochorení na Slovensku, ale vďaka nadväznosti projektu na EMG net aj na európskej úrovni.

 

 

3. Čo môžeme poskytnúť

3.1 Plán projektu

Pri tvorbe plánu vychádzame z pokynov predmetu Tímový projekt, v rámci ktorého projekt riešime. Počas riešenia plánujeme použiť vodopádový model životného cyklu softvérového systému doplnený o prototypovanie. Projekt budeme riešiť dva semestre. Po úvodnej analýze bude nasledovať špecifikácia požiadaviek a hrubý návrh. Výstupom zimného semestra bude prototyp vybraných častí systému spolu s príslušnou dokumentáciou. V letnom semestri vytvoríme podrobný návrh a implementáciu výsledného systému spolu s príslušnou dokumentáciou. Výsledný systém podrobíme dôkladnému testovaniu.

 

3.2 Čo ponúkame

Na vyriešenie daného problému použijeme klient-server architektúru (pozri obr.1). Na strane serveru uvažujeme centrálnu databázu, v ktorej sa ukladajú údaje z EMG vyšetrení a aplikáciu, ktorá umožní expertom prístup k týmto údajom. Aplikácia zabezpečuje administrátorské, štatistické a komunikačné funkcie (pozri obr.2). Medzi administrátorské funkcie patrí správa používateľov, správa nameraných údajov, evidencia požiadaviek a archivácia. Medzi štatistické funkcie patrí tvorba prehľadov, výpočet normatívnych údajov z nameraných hodnôt a generovanie požiadaviek na EMG vyšetrenia.

wpe7.jpg (4562 bytes)

Obr. 1: Architektúra systému

 

wpe5.jpg (24454 bytes) 

Obr. 2: Podrobná architektúra systému

 

Na serveri predpokladáme použitie operačného systému Red Hat Linux 6.2. Databázové funkcie zaručí MySQL 3.22.xx. Ako Web server sme zvolili Apache Web Server 1.3.x. Tvorbu dynamických stránok zabezpečí skriptovací jazyk PHP verzia 3.x. Časť informačného systému bude vytvorená v jazyku Java, preto sa predpokladá inštalácia JDK 1.2.x. Zvyšok systému tvoria statické a dynamické stránky (PHP).

V nami navrhovanej architektúre rozlišujeme dva typy klientov (pozri obr. 1, obr. 2):

1. Klient pracujúci v on-line režime,

2. Klient pracujúci v on-line/off-line režime.

  1. Klient pracujúci v on-line režime - je realizovaný web aplikáciou, ktorú mu poskytuje server. Teda nie je potrebné na klientskej strane inštalovať a prevádzkovať žiadnu aplikáciu. Predpokladá sa, že web prehliadač je už u klienta nainštalovaný a používateľom (lekárom) je známe jeho používanie. Pomocou web aplikácie môžu lekári prijať požiadavky na meranie. Po vykonaní merania môžu prostredníctvom formulára odovzdať výsledky do centrálnej databázy.
  2. Klient pracujúci v on-line/off-line režime - vzhľadom na to, že sa nepredpokladá trvalé pripojenie, musí sa inštalovať klientska aplikácia. Táto aplikácia zabezpečuje lokálnu evidenciu nameraných údajov z EMG vyšetrení v off-line režime. Keď sa klient nachádza v on-line režime (po pripojení na Internet), môže prijať požiadavky na meranie a lokálne ich zaevidovať. Tiež môže poslať namerané hodnoty do centrálnej databázy.

Klientska aplikácia môže byť vyvinutá v jazyku Java alebo vo Visual C++. V prípade použitia jazyka Java je nutná inštalácia JDK 1.2.x.

 

3.3 Bezpečnosť.

Autentifikácia

V systéme sú registrovaní všetci používatelia (lekári). Po pripojení na server nasleduje autentifikácia, ktorá je realizovaná pomocou pridelených prihlasovacích mien a hesiel. Registrovať nových používateľov je možné iba pomocou aplikácie na strane servera.

Prenos cez Internet

Prenos informácií cez Internet je rôzne riešený pre oba typy klientov.

Klient pracujúci v režime on-line používa http protokol (web prehliadač). V prípade dôrazu na bezpečnosť sa použije prídavný kryptovací protokol SSL (Secure Socket Layer).

U klienta pracujúceho v režime on-line/off-line je prenos cez Internet zabezpečený pomocou modernej objektovej technológie RMI (Remote Method Invocation). Taktiež v prípade väčšieho dôrazu na bezpečnosť sa môže skombinovať s protokolom SSL, ktorý však v tomto prípade vyžaduje na oboch stranách inštaláciu JDK 2.x.

Strata údajov

Aby sa predišlo strate dlhodobo zbieraných a uchovávaných údajov, umožňuje systém ukladať údaje súčasne do viacerých databáz, ktoré sa môžu fyzicky nachádzať na iných miestach. Inou alternatívou alebo doplnkom je pravidelná archivácia na záložné médium.

 

 

4. Predpokladané zdroje

4.1 Nároky na vývojové pracovisko

Softvérové štúdio obsahuje väčšinu vývojových prostriedkov, ktoré plánujeme použiť a ktoré sú potrebné pre činnosť ponúkaného systému.

Softvér potrebný pri vývoji:

a) JDK 1.2.x (2.x v prípade použitia SSL)

b) MS Visual C++ 6.0

Apache Web Server 1.3.x

MySQL 3.22.xx

PHP verzia 3 a vyššie

InstallShield, HTML Help Workshop

MS FrontPage 98, MS IE 5.5, MS Office 97

 

Operačné systémy:

Windows NT

Red Hat Linux 6.2

 

Hardvérové vybavenie nachádzajúce sa v softvérovom štúdiu je postačujúce. Vzhľadom na to, že každý z členov tímu má možnosť pracovať na projekte aj v iných priestoroch, nepresahujú naše nároky na prístup do softvérového štúdia počet hodín vymedzených pre predmet Tímový projekt.

 

4.2 Nároky výsledného systému

Server

Softvérové vybavenie servera už bolo popísané v kapitole 3.2. Všetok potrebný softvér pre server je voľne dostupný, čo má za dôsledok zníženie celkových finančných nákladov, ktorých v zdravotníctve nie je prebytok.

Vzhľadom na dlhú periódu medzi jednotlivými meraniami (teda aj dotazmi na server) a relatívne nízky počet pracovísk schopných tieto merania prevádzkovať, nie sú vysoké požiadavky na výkon serveru. Ani obsah evidovaných dát si nevyžaduje priestorové kapacity väčšie ako majú dnešné štandardné servery.

Klient pracujúci v režime on-line

Tento typ klientov nemá žiadne výnimočné nároky.

Klient pracujúci v režime on-line/off-line

V prípade použitia jazyka Java by sa u starších počítačov mohla prejaviť značná pomalosť u klientskej aplikácie, ktorá by v praxi mohla obmedziť používanie tohto systému. V prípade použitia jazyka Visual C++ by sa mala zaručiť dostatočná flexibilita aj u starších počítačov.

 

 

5. Ponúkané témy podľa priority

1. Zber a spracovanie normatívnych dát pre elektromyografiu (EMG)

2. Počítačová podpora hodnotenia programov v C jazyku (C)

3. Simulácia robotického futbalu (Robocup Soccer)

 

 

6. Rozvrh členov tímu (zimný semester)

 

7.20

8.15

9.15

10.10

11.10

12.05

13.05

14.00

15.00

15.55

16.55

17.50

18.50

19.45

 

8.10

9.05

10.05

11.00

12.00

12.55

13.55

14.50

15.50

16.45

17.45

18.40

19.40

20.35

Po APS2 – BP, ĎM, KZ, TV, VZ – ab 150 TK – BP, VZ – ab 150 PS3 – TV –    c 101 TP (možný čas č. 1) – BP, ĎM, KZ, TV, VZ – softvérové štúdio
ZS – BP, ĎM, KZ, VZ – d 108
Ut PG2 – BP – c801 OP – ĎM ns – ĎM, TV, VZ –d 208 MZŠ – TV – bc 150
St ASS – BP, ĎM, KZ, TV, VZ – cd 150 TP (možný čas č. 2) – BP, ĎM, KZ, TV, VZ – softvérové štúdio TK – BP, VZ – bc 150 TP (možný čas č. 3) – BP, ĎM, KZ, TV, VZ – softvérové štúdio
mrth – KZ – c 16
Št MZŠ–TV – b 704 ps3 – TV – d 109 pg2 – BP – CPU TMES – VZ – b 401 Tmes – VZ – c 119
nj – ĎM –b 03 PP – ĎM – b 704 ps3 – ĎM – d 109 pp – ĎM – d 201
Pi NS – ĎM, KZ, TV, VZ – e 701 ns – KZ –d 208

APS2 – Architektúra počítačových systémov 2

ASS – Architektúra softvérových systémov

MRTH – Metódy rozhodovania a teória hier

MZŠ – Matematické základy šifrovania

NJ – Nemecký jazyk

NS – Neurónové siete

PG2 – Počítačová grafika 2

PP – Paralelné programovanie

PS3 – Počítačové siete 3

TK – Teória kódovania

TMES – Teória modelovania ekonomických systémov

ZS – Znalostné systémy

 

BP – Boďo Pavol

ĎM – Ďurdina Michal

KZ – Kubo Zdeno

TV – Trgo Vladimír

VZ – Varga Zoltán

 

 

7. Návrh zmien organizácie predmetu

Pri vytváraní tímov treba klásť väčší dôraz na zaraďovanie členov do tímu spôsobom, ktorý zohľadňuje individuálne záujmy a osobné preferencie jednotlivých členov tímu. Zvýši sa tým efektivita práce celého tímu.

Vhodných kandidátov na funkcie vedúcich tímov by mali odporučiť vedúci projektov už pri prvom stretnutí tímu na základe vyplnených dotazníkov a osobných skúseností. Tým by vedúci tímov získali väčšiu autoritu a s tým súvisiace právomoci v tíme.