• Nebyly nalezeny žádné výsledky

Bakal´aˇrsk´a pr´ace Aplikace pro neurorehabilitace

N/A
N/A
Protected

Academic year: 2022

Podíl "Bakal´aˇrsk´a pr´ace Aplikace pro neurorehabilitace"

Copied!
58
0
0

Načítání.... (zobrazit plný text nyní)

Fulltext

(1)

Z´ apadoˇcesk´ a univerzita v Plzni Fakulta aplikovan´ ych vˇed

Katedra informatiky a v´ ypoˇcetn´ı techniky

Bakal´ aˇ rsk´ a pr´ ace

Aplikace pro

neurorehabilitace

(2)

Podˇ ekov´ an´ı

Dˇekuji pˇredevˇs´ım vedouc´ımu bakal´aˇrsk´e pr´ace Ing. Romanu Mouˇckovi, Ph.D. za jeho podporu a cenn´e rady. D´ale bych chtˇel podˇekovat pan´ı Mgr.

Ivanˇe Herejkov´e za ochotu pˇri ˇreˇsen´ı praktick´e ˇc´asti bakal´aˇrsk´e pr´ace a v ne- posledn´ı ˇradˇe dˇekuji vˇsem pacient˚um, kteˇr´ı byli ochotni pod´ılet se na testo- v´an´ı v´ysledn´e aplikace.

(3)

Prohl´ aˇ sen´ı

Prohlaˇsuji, ˇze jsem bakal´aˇrskou pr´aci vypracoval samostatnˇe a v´yhradnˇe s pouˇzit´ım citovan´ych pramen˚u.

V Plzni dne 17. ˇcervna 2016

David Jaroˇs

(4)

Abstract

This thesis deals with chosen technical and software resources used as a part of a neurorehabilitation, i.e. brain disabilities treatment. The work contains a basic overview of the current methods and the applications used for the neurorehabilitation. It mentions the main advantages and differences between the rehabilitative applications and the ordinary applications without the rehabilitative nature. It describes their use in a rehabilitation process and deals with their functionality and the beneficial effects on patients. The work includes the design and the implementation of the application used for the neurorehabilitation purposes. The application is focused on the speech and the memory exercises as a part of the speech therapy at the logopaedics lab at the Department of Neurosurgery in the University Hospital in Pilsen.

Abstrakt

Tato pr´ace se zab´yv´a vybran´ymi technick´ymi a programov´ymi prostˇredky pouˇz´ıvan´ymi pro neurorehabilitace jako souˇc´ast l´eˇcby postiˇzen´ı mozku. Pr´ace nab´ız´ı z´akladn´ı pohled na souˇcasn´e metody a aplikace slouˇz´ıc´ı k tˇemto ´uˇce- l˚um. Zmiˇnuje hlavn´ı v´yhody a rozd´ıly oproti bˇeˇzn´ym aplikac´ım bez rehabili- taˇcn´ıho charakteru. Popisuje jejich nasazen´ı v procesu rehabilitac´ı a zab´yv´a se jejich funkˇcnost´ı a pozitivn´ımi pˇr´ınosy pro pacienty. Souˇc´ast´ı pr´ace je na- vrˇzen´ı a realizace aplikace slouˇz´ıc´ı k neurorehabilitaˇcn´ım ´uˇcel˚um. V´ysledn´a aplikace je zamˇeˇrena na logopedick´a a pamˇet’ov´a cviˇcen´ı slouˇz´ıc´ı k rehabilita- c´ım pacient˚u na logopedick´e laboratoˇri na Neurochirurgick´e klinice Fakultn´ı nemocnice v Plzni.

(5)

Obsah

1 Uvod´ 1

2 Podstata neurorehabilitac´ı 2

2.1 Plasticita mozku . . . 2

2.2 Proces rehabilitac´ı . . . 3

2.3 Souˇcasn´e hry v neurorehabilitac´ıch . . . 4

2.4 Funkˇcnost her . . . 7

3 Z´akladn´ı poˇzadavky na hry pro neurorehabilitace 9 3.1 Design her . . . 9

3.1.1 Rehabilitaˇcn´ı platforma . . . 10

3.1.2 V´yvoj rehabilitaˇcn´ı platformy . . . 11

4 Specifikace poˇzadavk˚u 12 4.1 Pˇredmˇet specifikace . . . 12

4.2 Obecn´y popis . . . 12

4.2.1 Kontext syst´emu . . . 12

4.2.2 Funkce produktu . . . 14

4.2.3 Tˇr´ıdy uˇzivatel˚u . . . 16

4.2.4 Provozn´ı prostˇred´ı . . . 16

4.2.5 Bezpeˇcnostn´ı poˇzadavky . . . 16

5 Objektovˇe orientovan´y n´avrh aplikace 17 5.1 Kontext syst´emu . . . 17

5.2 Architektura syst´emu . . . 17

5.3 Pˇrehled tˇr´ıd . . . 18

5.4 Datab´aze . . . 20

6 Implementace 23 6.1 Framework WPF . . . 23

6.2 Datab´aze . . . 23

(6)

OBSAH OBSAH

6.3 Implementace jednotliv´ych cviˇcen´ı . . . 24

6.3.1 Slovn´ı z´asoba . . . 24

6.3.2 Sar´ˇ ada . . . 25

6.3.3 Pˇresmyˇcky . . . 26

6.3.4 Pamˇet’ . . . 27

6.3.5 Rady slov . . . .ˇ 29 6.3.6 Doplˇnov´an´ı textu . . . 30

6.4 Implementace glob´aln´ıho nastaven´ı . . . 32

7 Testov´an´ı aplikace 33 7.1 N´avrh testov´an´ı aplikace . . . 33

7.2 Nalezen´e probl´emy bˇehem testov´an´ı . . . 34

7.3 Shrnut´ı testov´an´ı . . . 36

8 Z´avˇer 37 A Uˇzivatelsk´a pˇr´ıruˇcka 41 A.1 Slovn´ı z´asoba . . . 42

A.2 ˇSar´ada . . . 44

A.3 Pˇresmyˇcky . . . 45

A.4 Cviˇcen´ı Pamˇet’ . . . 46

A.5 ˇRady slov . . . 48

A.6 Doplˇnov´an´ı textu . . . 48

A.7 Glob´aln´ı nastaven´ı . . . 49

(7)

1 Uvod ´

C´ılem t´eto pr´ace je sezn´amit ˇcten´aˇre s pouˇzit´ım aplikac´ı a her v oblasti neurorehabilitac´ı. Z´aroveˇn je tak´e c´ılem navrˇzen´ı a realizace vlastn´ı aplikace pro neurorehabilitace s vyuˇzit´ım poznatk˚u z´ıskan´ych bˇehem studia souˇcas- n´ych metod a syst´em˚u pro rehabilitace a tr´enink mozku.

Vyuˇzit´ı poˇc´ıtaˇcov´ych her v t´eto oblasti v´yraznˇe vzrostlo v posledn´ıch de- seti letech. Hlavn´ım pˇr´ınosem jejich vyuˇzit´ı je zlepˇsov´an´ı procesu uˇcen´ı a zotaven´ı z mrtvice, traumatick´ych poranˇen´ı mozku a neuromuskul´arn´ıch po- ruch. Zlepˇsov´an´ı procesu uˇcen´ı zajiˇst’uj´ı pˇredevˇs´ım d´ıky zv´yˇsen´ı motivace pˇri tr´eninku pacient˚u. To je jejich hlavn´ı pˇrednost oproti ˇradˇe pˇr´ıstroj˚u, kter´e tak´e nab´ızej´ı dlouhodob´e tr´enov´an´ı, avˇsak maj´ı probl´em s udrˇzen´ım z´ajmu pacienta o l´eˇcbu po celou dobu tr´enov´an´ı. Hry, kter´e kombinuj´ı v´yhody kla- sick´ych z´abavn´ych poˇc´ıtaˇcov´ych her a tr´enov´an´ı mozku, se naz´yvaj´ı

”serious games“. Je d˚uleˇzit´e zabr´anit obecn´emu povˇedom´ı, ˇze

”serious games“ jsou

”m´enˇe z´abavn´e“ neˇz bˇeˇzn´e poˇc´ıtaˇcov´e hry. Motivace uˇzivatele by vˇsak mˇela b´yt maximalizov´ana a mˇela by b´yt stejnˇe d˚uleˇzit´a jako tr´enovac´ı aspekt hry.

O takov´eto hry roste st´ale z´ajem ze strany zdravotnick´ych zaˇr´ızen´ı na cel´em svˇetˇe.

”Serious games“ se tak pomalu st´avaj´ı z´akladn´ı sloˇzkou neurorehabili- tac´ı.

Pouˇzit´ı her v neurorehabilitac´ıch nab´ız´ı moˇzn´e siln´e zv´yˇsen´e motivace pacienta k l´eˇcbˇe a tr´enov´an´ı. Samotn´ym hr´am vˇsak v souˇcasn´e dobˇe chyb´ı takov´e vlastnosti, kter´e by pacienty mohly motivovat dlouhodobˇe. Jsou tedy m´enˇe

”poutav´e“ oproti klasick´ym hr´am, kter´e naopak postr´adaj´ı terapeutic- kou ´uˇcinnost. C´ıl konkr´etn´ı neurorehabilitaˇcn´ı hry by mˇel b´yt na jednu stranu dostateˇcnˇe n´aroˇcn´y, ale na druhou stranu ne aˇz pˇr´ıliˇs obt´ıˇzn´y. Hra mus´ı m´ıt nejist´y v´ysledek se zpˇetnou vazbou, kterou by mˇela odmˇeˇnovat ´usil´ı pˇri hran´ı, a to nejen pˇri jej´ım ´uspˇeˇsn´em dokonˇcen´ı. ´Ukol hry je dobr´e prezentovat tak, aby podnˇecoval pacienta ke hˇre. Samotn´a hra by mˇela vyvol´avat urˇcit´y z´aˇzi- tek z hran´ı a odr´aˇzet kaˇzdodenn´ı ˇcinnost uˇzivatele.

(8)

2 Podstata neurorehabilitac´ı

D˚uleˇzitou souˇc´ast´ı l´eˇcby postiˇzen´ı mozku jsou pr´avˇe neurorehabilitace.

Nejˇcastˇejˇs´ı pˇr´ıˇcinou postiˇzen´ı mozku jec´evn´ı mozkov´a pˇr´ıhodanebolimozkov´a mrtvice. Jedn´a se o postiˇzen´ı zp˚usoben´e selh´an´ım krevn´ıho z´asobov´an´ı nˇe- kter´e z ˇc´ast´ı mozku. Dle dostupn´ych zdroj˚u je v 80 – 85 % zp˚usobeno krevn´ı sraˇzeninou (trombus). V takov´em pˇr´ıpadˇe jde o ischemickou c´evn´ı mozko- vou pˇr´ıhodu, kter´a se v ˇCesk´e republice vyskytuje dokonce 2x ˇcastˇeji neˇz v jin´ych vyspˇel´ych st´atech. Dalˇs´ı pˇr´ıˇcinou CMP je krv´acen´ı do mozku, jeˇz je zp˚usobeno prasknut´ım c´evy.

C´evn´ı mozkov´a pˇr´ıhoda je ˇcastou pˇr´ıˇcinou smrti, jde pˇribliˇznˇe o 20 % postiˇzen´ych touto pˇr´ıhodou. Naopak 40 % pacient˚u se uzdrav´ı ´uplnˇe bez tr- val´ych n´asledk˚u. Zbytek onemocnˇen´ych pˇreˇzije s v´aˇzn´ymi trval´ymi n´asledky.

Tˇemi je napˇr´ıklad ochrnut´ı, ˇc´asteˇcn´a ztr´ata hybnosti, porucha pamˇeti, poru- cha ˇreˇci, porucha orientace v prostoru a jin´e. Pro pˇredch´azen´ı nebo alespoˇn zm´ırnˇen´ı tˇechto n´asledk˚u jsou pr´avˇe velmi d˚uleˇzit´e zmiˇnovan´e rehabilitace.

[Vit(2011)][Wik(2015b)]

2.1 Plasticita mozku

Obnoven´ı funkc´ı mozku je v nˇekter´ych pˇr´ıpadech moˇzn´e. Doch´az´ı k si- tuac´ım, kdy se nˇekter´a ˇc´ast mozku obnov´ı samovolnˇe, nˇekdy zase jin´a ˇc´ast mozku nahrad´ı ztracenou funkci. Mohou b´yt tak´e vytv´aˇreny nov´a synaptick´a spojen´ı v d˚usledku tzv.neuronov´e plasticity. Tato funkce nemiz´ı s vˇekem, mo- zek se tak dok´aˇze uzdravit po jeho poˇskozen´ı. Je to vˇsak proces, kter´y trv´a i nˇekolik mˇes´ıc˚u a vyˇzaduje aktivn´ı zapojen´ı pacienta pˇri sv´ych rehabilitac´ıch.

Optimismus a motivace pacienta bˇehem l´eˇcby je v´ıce neˇz d˚uleˇzit´a a dok´aˇze v´ysledek rehabilitac´ı ovlivnit nejv´ıce. [CogniFit(2010)]

Plasticita mozku byla objevena teprve v 60. letech minul´eho stolet´ı. Dˇr´ıve se tvrdilo, ˇze jedin´ymi buˇnkami v lidsk´em tˇele, u kter´ych nedoch´az´ı k obnovˇe, jsou pr´avˇe buˇnky mozkov´e. Vˇeˇrilo se, ˇze se kaˇzd´y rod´ı s koneˇcn´ym poˇctem asi 100 miliardami nervov´ych bunˇek. A pokud tak nˇejak´a buˇnka zemˇre, nikdy nedojde k jej´ı obnovˇe. Stejnˇe tak se pˇredpokl´adalo, ˇze mozek nen´ı schopn´y vytv´aˇret nov´e nervov´e cesty. V´yzkumy vˇsak potvrdily, ˇze tomu tak nen´ı. Je tˇreba vˇsak poznamenat, ˇze nov´e neurony rostou ve vˇetˇs´ı m´ıˇre zhruba do

(9)

Podstata neurorehabilitac´ı Proces rehabilitac´ı

25. roku a pak tvorba nov´ych v´yraznˇe kles´a. To ovˇsem neznamen´a, ˇze ani v pozdˇejˇs´ım vˇeku nov´e buˇnky nemohou vznikat. Schopnost tvorby nov´ych neuron˚u se naz´yv´a neurogeneze. Tvorba nov´ych bunˇek je podm´ınˇena exis- tenc´ı tzv. kmenov´ych bunˇek, kter´e se nach´az´ı v gyru dentatu, hipokampu, pˇr´ıpadnˇe vprefront´aln´ı k˚uˇre. Takov´eto buˇnky pak maj´ı schopnost se rozdˇelit a vytvoˇrit plnohodnotn´y neuron, kter´y pak putuje do c´ılov´e oblasti mozku.

Samotn´aplasticita mozku pˇredstavuje pˇredevˇs´ım posilov´an´ı nebo tvoˇren´ı no- v´ych cest mezi jiˇz vznikl´ymi neurony. Takov´a funkce mozku je celoˇzivotn´ı.

Tyto cesty propojen´ych neuron˚u jsou v mozku vytv´aˇreny jeho kaˇzdodenn´ım pouˇz´ıv´an´ım. Pˇri z´ısk´av´an´ı nov´ych poznatk˚u jsou cesty vytv´aˇreny a posilo- v´any. Naopak nepouˇz´ıvan´e jiˇz zaveden´e cesty zanikaj´ı a nahrazuj´ı je jin´e.

Elektrick´e sign´aly tak mohou cestovat ´uˇcinnˇeji po tˇechto novˇe zaveden´ych cest´ach, a efektivnˇeji tak vyhodnotit konkr´etn´ı probl´em. Pokud dojde k po- ˇskozen´ı nˇejak´e ˇc´asti mozku, z nepoˇskozen´ych axon˚u rostou nov´a nervov´a za- konˇcen´ı k pˇripojen´ı neuron˚u, jejichˇz vazby byly zranˇen´ım pˇreruˇseny. T´ımto se vytv´aˇr´ı nov´a cesta k dosaˇzen´ı potˇrebn´e funkce v jin´e nepoˇskozen´e ˇc´asti mozku. [Neuroplasticity(2010)] [CogniFit(2010)]

2.2 Proces rehabilitac´ı

Rehabilitace jsou pˇredch´azeny prvotn´ı f´az´ı l´eˇcby, kdy je pacient zpravidla um´ıstˇen na jednotce intenzivn´ı p´eˇce. Tam jsou kromˇe zajiˇstˇen´ı z´akladn´ıch funkc´ı postiˇzen´emu pod´av´any l´eky, jeˇz rozpouˇst´ı krevn´ı sraˇzeninu, nebo za- stav´ı krv´acen´ı do mozku. Aˇz po t´eto nezbytn´e hospitalizaci pˇrich´az´ı f´aze neurorehabilitac´ı. Je nutn´e zaˇc´ıt vˇcas, jelikoˇz obnova funkc´ı je nejrychlejˇs´ı pr´avˇe v prvn´ıch dnech ˇci t´ydnech po prodˇelan´ec´evn´ı mozkov´e pˇr´ıhodˇe. Pˇri re- habilitaci je vhodn´a pˇr´ıtomnost fyzioterapeut˚u, neuropsycholog˚u, logoped˚u, ergoterapeut˚u a jin´ych dle potˇreb konkr´etn´ıho pacienta. Dle souˇcasn´e praxe neurorehabilitac´ı se l´eˇcba prov´ad´ı pˇribliˇznˇe po dobu p˚ul roku po mozkov´e mrtvici.

Jakmile vˇsak pacient opust´ı nemocnici, zpravidla dojde ke sn´ıˇzen´ı doby a frekvence rehabilitac´ı, protoˇze jiˇz nen´ı pod st´al´ym dohledem terapeut˚u. V t´eto f´azi pr´avˇe pˇrich´azej´ı na ˇradu moˇzn´a ˇreˇsen´ı v podobˇe her a aplikac´ı, kter´e neust´al´y dohled nevyˇzaduj´ı. Pokud bude tento typ l´eˇcby efektivn´ı a pacient bude aktivnˇe tr´enovat, m˚uˇzou b´yt pr´avˇe hry t´ım nejlepˇs´ım ˇreˇsen´ım neurore- habilitac´ı po prodˇelan´ec´evn´ı mozkov´e pˇr´ıhodˇe nebo jin´e poruˇse mozku.

Hry a aplikace se v neurorehabilitac´ıch st´avaj´ı velmi ´uˇcinn´ymi n´astroji, a

(10)

Podstata neurorehabilitac´ı Souˇcasn´e hry v neurorehabilitac´ıch

to pˇredevˇs´ım pr´avˇe d´ıky moˇznosti zv´yˇsen´ı motivace a aktivn´ıho pˇr´ıstupu ze strany pacienta. Takov´eto hry by mˇely splˇnovat nˇekolik poˇzadavk˚u, abychom je mohli pouˇz´ıt jako rehabilitaˇcn´ı n´astroj pˇredevˇs´ım pˇri l´eˇcbˇe n´asledk˚u spo- jen´ych s c´evn´ı mozkovou pˇr´ıhodou. Hern´ı ´ukoly by mˇely b´yt postaveny tak, aby odpov´ıdaly poˇzadavk˚um, kter´e po pacientovi vyˇzaduje terapeut bˇehem procesu rehabilitac´ı. ´Ukoly by vˇsak mˇely co nejv´ıce odpov´ıdat tak´e schopnos- tem dan´eho pacienta, a to tak, aby udrˇzely urˇcitou ´uroveˇn motivace. D˚uleˇzit´e tak´e je, aby se pacient zamˇeˇroval v´ıce na dosaˇzen´ı urˇcit´eho hern´ıho c´ıle neˇz na to, ˇze prov´ad´ı nucenˇe rehabilitaˇcn´ı cviˇcen´ı. Je potˇreba se zamˇeˇrit tak´e na stranu terapeuta. Ten by mˇel m´ıt moˇznost vhodnˇe monitorovat pacientovy pokroky z´ıskan´e hran´ım, jeˇz je moˇzno tak´e vyuˇz´ıt jako dalˇs´ı motivaˇcn´ı faktor hry pro pacienta. Pro nˇeho je zpˇetn´a vazba rovnˇeˇz velmi d˚uleˇzit´a, a to ve formˇe odmˇeny za proveden´e

”usil´ı“ bˇ´ ehem tr´enov´an´ı.

Pokusy o vytvoˇren´ı levn´eho a efektivn´ıho ˇreˇsen´ı rehabilitac´ı nejsou nov´e.

Zkoum´an´ı rehabilitaˇcn´ıho potenci´alu bˇeˇzn´ych poˇc´ıtaˇcov´ych her sahaj´ı aˇz do 80. let minul´eho stolet´ı. V pozdˇejˇs´ıch letech bylo pouˇzito mnoho pˇr´ıstup˚u pro zaveden´ı poˇc´ıtaˇcov´ych her a aplikac´ı do oblasti rehabilitac´ı, jelikoˇz s rozvojem modern´ıch technologi´ı a zp˚usob˚u interakce uˇzivatele se hry staly vhodn´e i k tˇemto ´uˇcel˚um.

2.3 Souˇ casn´ e hry v neurorehabilitac´ıch

Her, kter´e se zab´yvaj´ı neurorehabilitacemi ˇci tr´eninkem mozku, je cel´a ˇrada. ˇCasto slibuj´ı pozitivn´ı a pozorovateln´e ´uˇcinky tohoto typu l´eˇcby jiˇz po nˇekolika dnech. Ovˇsem to, co m´ın´ıme slovem

”hra“, m˚uˇze b´yt ch´ap´ano od- liˇsnˇe. Existuj´ı bˇeˇznˇe dostupn´e hry kaˇzd´emu uˇzivateli, kter´e maj´ı svoji webo- vou verzi. D´ale hrou m˚uˇze b´yt pˇr´ımo rehabilitaˇcn´ı n´astroj vyˇzaduj´ıc´ı dalˇs´ı vybaven´ı. T´ım jsou myˇsleny nˇejak´e senzory ˇci jin´a zaˇr´ızen´ı sleduj´ıc´ı ˇcinnost uˇzivatele jin´ym zp˚usobem neˇz interakc´ı bˇeˇzn´ym ovl´ad´an´ım poˇc´ıtaˇce nebo mobiln´ıho zaˇr´ızen´ı. Takov´e n´astroje slouˇz´ı pˇr´ımo terapeut˚um, resp. zast´avaj´ı jejich ˇcinnost v dom´ac´ım prostˇred´ı pacient˚u l´eˇc´ıc´ıch se po neurologick´ych onemocnˇen´ıch.

Jak jiˇz bylo zm´ınˇeno v pˇredchoz´ı kapitole, myˇslenka pouˇzit´ı her v rehabi- litac´ıch nen´ı ´uplnˇe nov´a a sah´a aˇz do 80. let minul´eho stolet´ı. ˇSirˇs´ıho vyuˇzit´ı v rehabilitac´ıch se vˇsak hry doˇckaly v roce 2005, kdy byla pro kapesn´ı kon- zole Nintendo DS vyvinuta hra Brain Age a tento typ her se tak dostal do povˇedom´ı bˇeˇzn´ych uˇzivatel˚u. Konzole disponovala dvˇema displeji, z toho

(11)

Podstata neurorehabilitac´ı Souˇcasn´e hry v neurorehabilitac´ıch

jedn´ım dotykov´ym, a mikrofonem. Hra tak byla ovl´ad´ana jak dotykem, tak i hlasem. Sest´avala se z nˇekolika d´ılˇc´ıch ´ukol˚u, napˇr´ıklad: 20 jednoduch´ych v´ypoˇct˚u, ˇcten´ı nahlas, ˇcasov´y rozd´ıl mezi analogov´ymi hodinami, ˇreˇsen´ı ma- tematick´ych rovnic, poˇcet slabik ve fr´az´ıch a jin´e. Odpovˇedi uˇzivatel musel bud’ zapsat ruˇcnˇe na dotykov´em displeji, nebo odpovˇedˇet hlasem s t´ım, ˇze ˇslo o co nejkratˇs´ı ˇcas odpovˇedi. Aplikace n´aslednˇe uk´azala tˇri nejlepˇs´ı hr´aˇcovy v´ysledky a pˇr´ıpadnˇe tak´e porovnala s ostatn´ımi hr´aˇci uloˇzen´ymi v zaˇr´ızen´ı, kter´e jich umoˇzˇnovalo uloˇzit aˇz ˇctyˇri. [Wik(2015a)]

Od t´e doby se moˇznosti pouˇzit´ı tˇechto her v´yraznˇe rozˇs´ıˇrily, avˇsak z´akladn´ı princip tˇechto aplikac´ı z˚ustal stejn´y.

Webov´e aplikace jsou snadno dostupn´e kaˇzd´emu uˇzivateli, a to jak v pla- cen´e podobˇe, tak i zdarma. ˇCasto se nejedn´a o jednu hru, sp´ıˇse jde o jak´ysi denn´ı program sest´avaj´ıc´ı z nˇekolika her. Takov´e programy, kter´e se t´ımto zab´yvaj´ı, nemus´ı nutnˇe b´yt urˇceny pouze pro pacienty, kteˇr´ı prodˇelali c´evn´ı mozkovou pˇr´ıhodu nebo podobn´e onemocnˇen´ı. M˚uˇzou slouˇzit jen jako tr´enink mozku pro zdrav´e uˇzivatele (a ve vˇetˇsinˇe pˇr´ıpad˚u tomu tak je). Nejzn´amˇejˇs´ı je spoleˇcnost Lumosity. Zab´yv´a se tr´eninkov´ym programem zaloˇzen´ym na hr´ach, kognitivn´ıch a neuropsychologick´ych ´ukolech zlepˇsuj´ıc´ı pamˇet’, pozor- nost ˇci rychlost ˇreˇsen´ı. Konkr´etnˇeLumosity pouˇz´ıv´a 70 milion˚u lid´ı na cel´em svˇetˇe. Uv´ad´ı, ˇze jejich hry jsou navrhov´any vˇedci. Tr´eninkov´y program je bezplatn´y, nicm´enˇe nab´ıdne jen velmi omezen´e mnoˇzstv´ı her oproti placen´e premium verzi. Ta je zpoplatnˇena $15 na mˇes´ıc nebo $80 na rok. Obdobn´e sluˇzby nab´ız´ı napˇr´ıklad tak´eNeuroNation, kter´e je takˇrka stejn´ym zp˚usobem zpoplatnˇeno. Verze zdarma nab´ız´ı cviˇcen´ı pouze s osmi hrami, zpoplatnˇen´a verze nab´ız´ı tˇechto her 60. Cena na mˇes´ıc je $14 a za rok $84. Aplikace fun- guj´ı na principu denn´ıho tr´eninku, kdy jsou uˇzivateli na kaˇzd´y den pˇripraveny konkr´etnˇe u tˇechto spoleˇcnost´ı 3 hry. [Mitroff(2014)]

V ˇcesk´em prostˇred´ı je tˇreba zm´ınit napˇr´ıklad neziskovou spoleˇcnostMen- tem, kter´a funguje od listopadu 2014 a je tvoˇrena pˇrev´aˇznˇe odborn´ıky z oblasti psychologie. Lze ˇr´ıci, ˇze jde tak´e o obdobu Lumosity. Nab´ız´ı denn´ı tr´enink, na kter´y je pˇripraveno 5 her n´ahodnˇe vybran´ych ze sady nˇekolika des´ıtek. Z her je moˇzno zm´ınit tˇreba rozpozn´an´ı siluety mˇesta, jeˇz je oproti vzoru otoˇcen´a v prostoru. D´ale napˇr´ıklad nalezen´ı spr´avn´eho pl´aˇstˇe vyob- razen´e hrac´ı kostky nebo spojov´an´ı teˇcek, aby vytvoˇrily smyslupln´y tvar.

Nach´az´ı se zde i hry, kter´e vyuˇz´ıvaj´ı vˇedomosti tr´enovan´eho. Moˇzno je tˇreba zm´ınit h´ad´an´ı zn´am´e osobnosti za pomoci nab´ızen´ych indici´ı ˇci rozpozn´an´ı postupnˇe odkr´yvan´eho pˇredmˇetu na obr´azku. To vˇse v pˇridˇelen´em ˇcasov´em limitu. Mentem je zdarma na vyzkouˇsen´ı po dobu 7 dn´ı. D´ale pak poˇzaduje

(12)

Podstata neurorehabilitac´ı Souˇcasn´e hry v neurorehabilitac´ıch

platbu ve v´yˇsi 190 Kˇc/mˇes´ıc, 390 Kˇc/3 mˇes´ıce nebo 990 Kˇc/rok.

D´ale je vhodn´e zm´ınit obˇcansk´e sdruˇzen´ıCEREBRUM, kter´e si klade za c´ıl sdruˇzovat osoby s prodˇelan´ym poranˇen´ı mozku, zprostˇredkov´avat jim kon- takt s pˇr´ısluˇsn´ymi odborn´ıky a obecnˇe zv´yˇsit povˇedom´ı o n´asledc´ıch poranˇen´ı mozku a moˇznostech rehabilitace. Obˇcansk´e sdruˇzen´ı se pod´ıl´ı na realizaci nˇekolika projekt˚u, kter´e pom´ahaj´ı pr´avˇe osob´am po poranˇen´ı mozku vr´a- tit se do zamˇestn´an´ı a obecnˇe zv´yˇsit jejich zamˇestnanost. V r´amci sv´eho rehabilitaˇcnˇe-rekondiˇcn´ıho programu sdruˇzen´ı nab´ız´ı mimo jin´e tr´enink ko- gnitivn´ıch funkc´ı a pamˇeti, kde kromˇe tradiˇcn´ıch metod pouˇz´ıv´a i poˇc´ıtaˇcovou aplikaci Neurop, pomoc´ı n´ıˇz je moˇzno klientovi vytvoˇrit cviˇcen´ı podle jeho schopnost´ı a individu´aln´ıch potˇreb. Program trv´a 18 t´ydn˚u, mezi dalˇs´ı jeho aktivity patˇr´ı napˇr´ıklad l´eˇcebn´a tˇelesn´a v´ychova, ergoterapie a podp˚urn´a sku- pina. Aktivity rehabilitaˇcnˇe-rekondiˇcn´ıho programu jsou zpoplatnˇeny v roz- mez´ı 80 – 100 Kˇc/lekce.

Vˇetˇsina tˇechto her motivuje pacienty mimo jin´e pomoc´ı ˇzebˇr´ıˇck˚u um´ıstˇen´ı dle z´ıskan´eho sk´ore jak pro urˇcitou hru, tak pro cel´y tr´enink. Pˇri pravideln´em tr´eninku je zˇrejm´e, ˇze um´ıstˇen´ı uˇzivatele bude stoupat, coˇz je motivaˇcn´ı k dal- ˇs´ımu zlepˇsov´an´ı. Typick´e pro hry u vˇsech zm´ınˇen´ych tr´eninkov´ych program˚u je ˇcasov´y limit. Na kaˇzd´y den je vygenerov´ano nˇekolik samostatn´ych ´ukol˚u - her, kter´e vyˇzaduj´ı nˇekolikaminutovou pozornost uˇzivatele. Pˇr´ıkladem her m˚uˇze b´yt napˇr´ıklad hra na pamatov´an´ı poˇrad´ı pr˚uchodu vyobrazen´ymi body a n´asledn´e opakov´an´ı pˇredveden´eho smˇeru. Nebo tˇreba zn´am´a hra na co nej- rychlejˇs´ı volbu barvy (napsanou) nadepsan´eho vzoru, kter´y ve v´yznamu slova znamen´a jinou barvu.

Tyto spoleˇcnosti sv˚uj tr´eninkov´y program a hry poskytuj´ı pˇredevˇs´ım jako webov´e aplikace pro pouˇzit´ı na desktopu s klasick´ym ovl´ad´an´ım pomoc´ı myˇsi.

Pokud se ale zamˇeˇr´ıme na hry pro dotykov´a zaˇr´ızen´ı, napˇr´ıklad na Google Play se nach´az´ı ˇr´adovˇe stovky aplikac´ı zamˇeˇruj´ıc´ı se na kognitivn´ı tr´enink, tr´enink mozku a neurorehabilitace. Vˇetˇsina tˇechto aplikac´ı je sestavena z nˇe- jak´e mnoˇziny jednoduch´ych her, resp. jednoduˇse zpracovan´ych, ale o to ob- t´ıˇznˇejˇs´ıch pro uˇzivatele, hr´aˇce. Nˇekter´e z v´yˇse uveden´ych spoleˇcnost´ı (Lumos- tiy, NeuroNation) maj´ı i svoji mobiln´ı aplikaci. Naopak tˇreba Elevate, kter´e je srovnateln´a s Lumosity nebo NeuroNation, je zamˇeˇrena pouze na tato dotykov´a zaˇr´ızen´ı se syst´emem Android nebo iOS. Cenovˇe se pohybuje na ponˇekud niˇzˇs´ı ´urovni. Na mˇes´ıc stoj´ı $5, na rok $45.

Dalˇs´ı speci´aln´ı kategori´ı v oblasti her pro neurorehabilitace je vyuˇzit´ı virtu´aln´ı reality, resp. poˇc´ıtaˇcovˇe interaktivn´ı simulace prostoru. Pˇr´ıkladem

(13)

Podstata neurorehabilitac´ı Funkˇcnost her

m˚uˇze b´ytVirtualRehab, kter´y vyuˇz´ıv´a technologii videoher. Ned´ılnou souˇc´ast´ı syst´emu jsou r˚uzn´e senzory. V pˇr´ıpadˇeVirtualRehab Hands m˚uˇzou b´yt reha- bilitace zamˇeˇreny na ruce. Senzor detekuje pˇresn´e pohyby prst˚u, d´ıky ˇcemuˇz je moˇzno zlepˇsovat jemnou motoriku ruky cviˇcen´ım s prsty nebo z´apˇest´ım a jejich zruˇcnost v reakci na konkr´etn´ı sc´en´aˇr rehabilitaˇcn´ı hry. Tr´enink se vˇsak m˚uˇze zamˇeˇrit i na fyzick´y pohyb horn´ıch a doln´ıch konˇcetin nebo rovno- v´ahu vyuˇzit´ım napˇr´ıklad stabilometrick´e ploˇsiny Nintendo Wii Fit Balance Board, kter´a sn´ım´a rozloˇzen´ı v´ahy pacienta. T´ımto m˚uˇze napˇr´ıklad pacient ovl´adat m´ıˇc s c´ılem dotknout se jin´eho m´ıˇce. D´ıky t´eto technologii m˚uˇze pa- cient prov´adˇet sv´a plnohodnotn´a rehabilitaˇcn´ı cviˇcen´ı bez neust´al´eho dozoru terapeuta. Data mohou b´yt odes´ıl´ana a terapeut tak m˚uˇze monitorovat sv´eho pacienta. Tyto rehabilitace tak´e poskytuj´ı objektivn´ı mˇeˇren´ı ´uˇcinnosti l´eˇcby.

Je moˇzno mˇeˇrit napˇr´ıklad rychlost pohybu konˇcetin, mnoˇzstv´ı chyb, rozsah pohybu atd.

2.4 Funkˇ cnost her

Aˇckoli zm´ınˇen´e spoleˇcnosti a jejich aplikace slibuj´ı velk´e pˇr´ınosy a odvra- cen´ı nemoc´ı, demence a podobnˇe, vlastnˇe zat´ım neexistuje opravdu pˇresvˇed- ˇ

civ´y d˚ukaz, ˇze tomu tak skuteˇcnˇe je. Na toto t´ema byla provedena ˇrada studi´ı.

Testovan´e osoby byly vˇetˇsinou rozdˇeleny do dvou nebo i v´ıce skupin a po ur- ˇ

citou dobu hr´aly hry. Pˇriˇcemˇz jen jedna skupina opravdu tr´enovala s hrami, kter´e maj´ı ´udajn´y

”rehabilitaˇcn´ı“ charakter, kdeˇzto druh´a obdrˇzela

”pouze“

klasick´e poˇc´ıtaˇcov´e hry bez tohoto charakteru. Nˇekdy byla souˇc´ast´ı studie i dalˇs´ı tzv. kontroln´ı skupina, kter´a neproch´azela l´eˇcbou pomoc´ı her, a slouˇzila tedy jen jako porovn´an´ı s ostatn´ımi skupinami. Studie se vˇetˇsinou zamˇeˇruj´ı jak na ´uˇcinnost her, tak i na jejich atraktivitu. V´ysledky studi´ı jsou peˇclivˇe dokumentov´any, funkˇcn´ı zlepˇsen´ı a celkovˇe pozitivn´ı vliv byl sice v nich za- znamen´an, ovˇsem ale povaha tˇechto studi´ı nebyla ˇcasto dostateˇcnˇe objektivn´ı a mohla b´yt v tomto smyslu zaujat´a. Studie byly ˇcasto prov´adˇeny na mal´ych poˇctech testovan´ych osob ve skupin´ach a po relativnˇe kr´atkou dobu, a tak nepˇrinesly opravdu pˇresvˇedˇciv´e tvrzen´ı a doloˇzen´ı d˚ukaz˚u funkˇcnosti tˇechto her. D´ale je studi´ım ˇcasto vyˇc´ıt´ano, ˇze se tak´e nezamˇeˇruj´ı tolik na zm´ınˇenou atraktivitu, ˇcili na zkoum´an´ı

”z´aˇzitku“ z tˇechto her, coˇz je velmi d˚uleˇzit´y aspekt ke zv´yˇsen´ı motivace pacient˚u. Na druhou stranu toto zkoum´an´ı nen´ı

´

uplnˇe jednoduch´e. V minulosti se prov´adˇelo pomoc´ı dotazn´ık˚u zamˇeˇruj´ıc´ı se jak na hern´ı z´aˇzitek, tak i na n´avykovost. [Wiemeyer(2014)]

Na konci ˇr´ıjna roku 2014 Stanford Center a Institut Maxe Plancka za

(14)

Podstata neurorehabilitac´ı Funkˇcnost her

pomoci pˇredn´ıch svˇetov´ych neurolog˚u a psycholog˚u pˇrezkoumali tyto hry a n´aslednˇe prohl´asili, ˇze vyvracej´ı existenci vˇedecky potvrzen´eho d˚ukazu o funkˇcnosti kognitivn´ıch her, kter´y nˇekter´e spoleˇcnosti uv´adˇely. Spousta tvr- zen´ı tak nen´ı zaloˇzen´ych na vˇedeck´ych d˚ukazech, n´ybrˇz pouze na jak´ychsi domnˇenk´ach. Na druhou stranu hran´ı tˇechto her nepˇrin´aˇs´ı rozhodnˇe jak´e- koli negativn´ı dopady. Jen st´ale neexistuje jednoznaˇcn´e stanovisko o jejich opravdov´em fungov´an´ı a vlivu na l´eˇcbu.

Konkr´etnˇe se v prohl´aˇsen´ıStanford Center aInstitutu Maxe Plancka na- pˇr´ıklad p´ıˇse, ˇze pˇresvˇedˇciv´a tvrzen´ı o funkˇcnosti her jsou hodnˇe pos´ılena d´ıky reklam´am zm´ınˇen´ych spoleˇcnost´ı a d˚uvˇeryhodn´ych zpravodajsk´ych zdroj˚u.

Vˇedeck´a literatura nepotvrzuje tvrzen´ı, ˇze kognitivn´ı a neurorehabilitaˇcn´ı hry zlepˇsuj´ı kognitivn´ı dovednosti v kaˇzdodenn´ım ˇzivotˇe, nebo alespoˇn zabraˇnuj´ı jejich zpomalen´ı ˇci dok´aˇz´ı odvr´atit onemocnˇen´ı mozku. D´ale je uvedeno, ˇze je zapotˇreb´ı prov´est dalˇs´ı v´yzkumy, neˇz bude moˇzn´e vyvodit jednoznaˇcn´e z´avˇery.

Cituji souhrnn´e prohl´aˇsen´ı:

”M´ame n´amitky proti tvrzen´ı, ˇze kognitivn´ı a neurorehabilitaˇcn´ı hry uˇzivatel˚um nab´ızej´ı vˇedecky podloˇzenou cestu sn´ıˇzen´ı nebo odvr´acen´ı sl´abnut´ı kognitivn´ıch funkc´ı, jelikoˇz zat´ım neexistuje ˇz´adn´y pˇresvˇedˇciv´y vˇedeck´y d˚ukaz, ˇze tomu tak opravdu je. Slibovan´y vˇsel´ek tedy obe- reme o jeden z nejlepˇs´ıch d˚ukaz˚u, a to o ten, ˇze zdrav´e kognitivn´ı funkce ve st´aˇr´ı jsou odrazem dlouhodob´ych ´uˇcink˚u zdrav´eho ˇzivotn´ıho stylu. Pˇrehnan´e a zav´adˇej´ıc´ı tvrzen´ı vyuˇz´ıvaj´ı obav starˇs´ıch dospˇel´ych z bl´ıˇz´ıc´ıho se ´ubytku kognitivn´ıch funkc´ı. Doporuˇcujeme d´ale pokraˇcovat v podrobn´em pr˚uzkumu a ovˇeˇrov´an´ı t´eto problematiky.“ [Radford(2014)]

Spoleˇcnosti jako Lumosity neboNeuroNation sice ukazuj´ı uˇzivatel˚uv po- krok a zlepˇsen´ı v konkr´etn´ı hˇre oproti pˇredchoz´ım cviˇcen´ım, avˇsak to je pˇri- rozenou vlastnost´ı mozku pˇri pravideln´em prov´adˇen´ı urˇcit´e ˇcinnosti, a nen´ı tak d˚ukazem o zlepˇsen´ı kognitivn´ıch funkc´ı.

(15)

3 Z´ akladn´ı poˇ zadavky na hry pro neurorehabilitace

Obr´azek 3.1: Pˇr´ıklad sch´ematu UCD (User Centered Design)

3.1 Design her

D˚uleˇzit´ym aspektem pˇri vytv´aˇren´ı neurorehabilitaˇcn´ıh her je UCD (tzv.

User Centered Design), neboli maxim´aln´ı pˇrizp˚usoben´ı designu aplikace schop- nostem uˇzivatele se v n´ı orientovat.UCD je jedn´ım z pˇr´ıstup˚u k iterativn´ımu v´yvoji syst´emu. Klade se za c´ıl porozumˇet vˇsem poˇzadavk˚um c´ılov´ych uˇzi- vatel˚u uˇz v ran´em st´adiu n´avrhu v´ysledn´eho produktu tak, aby vyhovoval potˇreb´am budouc´ıch uˇzivatel˚u.UCD se sest´av´a z nˇekolika kl´ıˇcov´ych f´az´ı v´y- voje. Bˇehem vˇsech f´az´ı m˚uˇzeme z´ısk´avat informace od uˇzivatel˚u, a bˇehem v´yvoje tak zjiˇst’ovat, zda poˇc´ateˇcn´ı poˇzadavky byly spr´avnˇe interpretov´any (viz obr´azek 3.1). Dodrˇzov´an´ıUCD pˇrin´aˇs´ı znaˇcn´e v´yhody. Zav´adˇen´ı tako- v´ych produkt˚u je pˇr´ınosem jak pro ˇsirokou ˇsk´alu pacient˚u, tak i pro v´yrobce.

Pˇri n´avrhu UCD je nejd˚uleˇzitˇejˇs´ı zab´yvat se ot´azkou, kdo vlastnˇe jsou naˇsi koncov´ı uˇzivatel´e dan´e aplikace. V oblasti neurorehabilitac´ı jsou ˇcasto

(16)

Z´akladn´ı poˇzadavky na hry pro neurorehabilitace Design her

jako koncov´ı uˇzivatel´e uv´adˇeni pacienti, resp. ti, kteˇr´ı jsou aplikac´ı l´eˇceny.

Nesm´ıme vˇsak opomenout na person´al zdravotnick´ych. D´ale by tak´e mˇelo j´ıt i o manˇzela/ku, pˇr´ıpadnˇe peˇcovatele/ku ˇci jin´e rodinn´e pˇr´ısluˇsn´ıky pacienta.

Zab´yv´ame se tak´e t´ım, co dan´ı koncov´ı uˇzivatel´e pˇresnˇe potˇrebuj´ı.

Pro pacienta je z´asadn´ım poˇzadavkem na aplikaci

”poˇzitek“ z l´eˇcby. T´ım je obecnˇe myˇsleno to, ˇze n´aklady (tj. napˇr´ıklad: d´elka a intenzita l´eˇcby, po- zornost, cena a jin´e) nepˇrevaˇzuj´ı nad vn´ıman´ymi pˇr´ınosy. Pro dlouhodobou motivaci pacienta je tedy potˇreba vytvoˇrit v´ıce z´abavn´ych a rozmanit´ych

´ ukol˚u.

Cast´ˇ ym nedostatkem pˇri v´yvoji her je pr´avˇe mal´e zapojen´ı koncov´ych uˇzivatel˚u. Hry jsou tak vytv´aˇreny pro jak´esi

”pr˚umˇern´e uˇzivatele“, kteˇr´ı bˇe- hem l´eˇcby maj´ı st´ale stejn´e schopnosti. Pokud jsou pouˇz´ıv´any pr´avˇe k l´eˇcbˇe n´asledk˚u po zmiˇnovan´e c´evn´ı mozkov´e pˇr´ıhodˇe, nemus´ı vˇsak vyhovovat, je- likoˇz takov´ı pacienti ˇcasto netrp´ı jen poˇskozen´ım motoriky, ale tak´e poˇsko- zen´ım kognitivn´ıch funkc´ı. Nemuseli by tak tuto rehabilitaˇcn´ı aplikaci v˚ubec b´yt schopni vlivem tˇechto poruch pouˇz´ıvat. Jde tˇreba o sn´ıˇzenou schopnost zpracov´an´ı vizu´aln´ıch a zvukov´ych informac´ı, sn´ıˇzenou schopnost pamˇeti, po- zornosti a psychomotorick´ych dovednost´ı. Pouˇzit´ı UCD je vˇsak pr´avˇe pro postiˇzen´e osoby zejm´ena starˇs´ıho vˇeku velmi d˚uleˇzit´e, podstatnˇe v´ıce neˇz v jin´ych oblastech. UCD se zamˇeˇruje na pacientovy schopnosti, a je tak ne- zbytn´y v prvn´ı f´azi navrhov´an´ı rehabilitaˇcn´ıch her. Je to soubor metod, kter´e se zab´yvaj´ı zvl´aˇstn´ım omezen´ım, z´ajmy a potˇrebami konkr´etn´ıho uˇzivatele.

[Juhani Heinil¨a (Ed.)(2005)] [Joel C. Perry(2010)]

3.1.1 Rehabilitaˇ cn´ı platforma

Terapeut by mˇel vymyslet pl´an l´eˇcby pacienta na z´akladˇe poˇzadovan´eho zlepˇsen´ı funkc´ı a schopnost´ı. O toto pl´anov´an´ı se op´ır´a jeho pacient, terapeut se op´ır´a o jeho spolupr´aci a ´uˇcast v l´eˇcebn´em programu. Tento rehabilitaˇcn´ı proces by mˇel b´yt integrov´an do jedn´e platformy. Proces mus´ı b´yt cyklick´y – pl´anov´an´ı, realizace a hodnocen´ı v´ykonnosti. Po revidov´an´ı se cyklus opakuje.

Bˇehem procesu pl´anov´an´ı se terapeut snaˇz´ı pˇrizp˚usobit program l´eˇcby tak, aby co nejl´epe dosahoval poˇzadovan´ych c´ıl˚u, ale z´aroveˇn respektoval schopnosti a omezen´ı pacienta. Pokud probˇehne tento proces, m˚uˇze nastat realizace. Pacient dostane pˇr´ıstup k sadˇe her a ´ukol˚u, jeˇz je navrˇzena pˇr´ımo pro nˇej. Pˇri kaˇzd´em tr´eninku pacienta jsou ukl´ad´ana potˇrebn´a data, kter´a si jeho terapeut n´aslednˇe pˇreˇcte pomoc´ı vhodn´eho softwaru ve vhodn´em for-

(17)

Z´akladn´ı poˇzadavky na hry pro neurorehabilitace Design her

m´atu. Terapeut provede hodnocen´ı l´eˇcby a na z´akladˇe nˇeho opˇet provede

´

upravy ve f´azi pl´anov´an´ı. Cyklus se takto opakuje.

3.1.2 V´ yvoj rehabilitaˇ cn´ı platformy

V´yvoj prototypu platformy, kter´a je struˇcnˇe pops´ana v pˇredchoz´ıch od- stavc´ıch, vyˇzaduje iterativn´ı pˇr´ıstup. Proces je sloˇzen z f´aze sbˇeru poˇzadavk˚u, specifikace poˇzadavk˚u, n´avrhu, implementace, testov´an´ı a nasazen´ı. Ve f´azi sbˇeru poˇzadavk˚u se nejprve zab´yv´ame t´ım, kdo naˇsi aplikaci bude pouˇz´ıvat.

Jak jiˇz bylo ˇc´asteˇcnˇe zm´ınˇeno v pˇrech´azej´ıc´ı ˇc´asti textu pˇri popisu UCD, je v´ıce neˇz vhodn´e, aby se tito uˇzivatel´e z´uˇcastnili v´yvoje platformy. To zna- men´a, ˇze v t´eto f´azi mus´ı n´avrh´aˇri pˇresnˇe popsat informace o budouc´ıch uˇzivatel´ıch, tj. schopnosti, omezen´ı, oˇcek´avan´y vˇek, zkuˇsenosti s konkr´etn´ı technologi´ı, prostˇred´ı, ve kter´em bude aplikace pouˇzita apod. F´aze sbˇeru po- ˇ

zadavk˚u zahrnuje rozhovory s uˇzivateli z pˇredem definovan´e skupiny, kteˇr´ı poskytuj´ı velmi cenn´e informace. Uˇziteˇcn´a jsou tak´e pozorov´an´ı ´uˇcastn´ık˚u pˇr´ımo v prostˇred´ı, ve kter´em jsou aplikace kaˇzdodennˇe pouˇz´ıv´any. ´Uˇcelem je co nejv´ıce nahl´ednout do re´aln´eho prostˇredn´ı naˇs´ı aplikace.

D´ale nast´av´a f´aze specifikace poˇzadavk˚u. Ta se sest´av´a z vytvoˇren´ı po- ˇ

zadavk˚u uˇzivatel˚u na aplikaci. Jde o definov´an´ı funkc´ı a vlastnost´ı, jeˇz spln´ı z´ajmy vˇsech z´uˇcastnˇen´ych osob. Tak´e jde o alespoˇn nast´ınˇen´ı c´ıl˚u hry nebo

´

urovn´ı obt´ıˇznosti.

Dalˇs´ı f´az´ı je f´aze n´avrhu. Jedn´a se o vytvoˇren´ı vizu´aln´ı pˇredstavy budouc´ı funkcionality aplikace. Funkˇcn´ı hra je vytvoˇrena aˇz ve f´azi implementace dle z´ıskan´ych dat z pˇredchoz´ıch f´az´ı v´yvoje rehabilitaˇcn´ı platformy. N´asleduje testov´an´ı, ide´alnˇe akceptaˇcn´ı (UAT) pˇr´ımo na c´ılov´em zaˇr´ızen´ı v konkr´etn´ım prostˇred´ı, kter´e je poˇzadov´ano ve specifikaci. Po oprav´ach nalezen´ych pro- bl´em˚u ve f´azi testov´an´ı m˚uˇze jiˇz pˇrij´ıt na ˇradu fin´aln´ı nasazen´ı rehabilitaˇcn´ı platformy. [Joel C. Perry(2010)]

(18)

4 Specifikace poˇ zadavk˚ u

4.1 Pˇ redmˇ et specifikace

Pˇredmˇetem specifikace je neurorehabilitaˇcn´ı aplikace zamˇeˇruj´ıc´ı se pˇrede- vˇs´ım na rehabilitaci ˇreˇcov´ych funkc´ı. Aplikace je tak´e pˇredmˇetem praktick´e ˇ

c´asti m´e bakal´aˇrsk´e pr´ace. Jedn´a se o desktopovou aplikaci pro poˇc´ıtaˇce s ope- raˇcn´ım syst´emem Windows, kter´a bude obsahovat logopedick´a a pamˇet’ov´a cviˇcen´ı. Aplikace bude slouˇzit k rehabilitac´ım pacient˚u na logopedick´e labo- ratoˇri na Neurochirurgick´e klinice Fakultn´ı nemocnice v Plzni.

Zadavatelem aplikace je pan´ı Mgr. Ivana Herejkov´a, vedouc´ı logopedie na Neurochirurgick´e klinice.

4.2 Obecn´ y popis

4.2.1 Kontext syst´ emu

V logopedick´e laboratoˇri ve FN Plzeˇn je pouˇz´ıv´ano mnoho metod slouˇz´ı- c´ıch k tr´eninku ˇreˇcov´ych funkc´ı pacienta dle konkr´etn´ı nemoci. Kromˇe cviˇcen´ı pouˇz´ıvaj´ıc´ı klasick´e metody rehabilitac´ı jako je pouˇzit´ı r˚uzn´ych fyzick´ych pˇredmˇet˚u, tiˇstˇen´ych text˚u, obr´azk˚u a knih, se v laboratoˇri pouˇz´ıvaj´ı poˇc´ı- taˇcov´e aplikace. Takov´e aplikace jsou pouˇz´ıv´any v desktopov´e podobˇe, kdy pacient sed´ı u klasick´eho poˇc´ıtaˇce s monitorem, kl´avesnic´ı a myˇs´ı. Aplikace jsou tedy pˇrizp˚usobeny tomuto ovl´ad´an´ı.

Inspirace pro jednotliv´a cviˇcen´ı v m´e aplikaci poch´azej´ı z existuj´ıc´ıch apli- kac´ı zab´yvaj´ıc´ıch se kognitivn´ım tr´eninkem mozku a ˇreˇcov´ych funkc´ı. Nˇekolik takov´ych aplikac´ı mi bylo pan´ı Herejkovou pˇredstaveno. Cviˇcen´ı v m´e aplikaci byla zvolena tak, aby co nejv´ıce vyhovovala jej´ım rehabilitaˇcn´ım cviˇcen´ım, kter´a v logopedick´e laboratoˇri prov´ad´ı. Pro takov´e ´uˇcely pouˇz´ıvala aˇz ˇctyˇri r˚uzn´e aplikace, a proto jsem usoudil, ˇze je to zbyteˇcnˇe sloˇzit´e. Pro nˇekter´a cviˇcen´ı tak´e pan´ı Herejkov´a radˇeji zvolila pap´ır m´ısto interaktivn´ı poˇc´ıtaˇcov´e verze. Z´aroveˇn nˇekter´a cviˇcen´ı obsahovala pˇr´ıliˇs mnoho nastaven´ı a sloˇzit´e ovl´ad´an´ı. Naopak nˇekter´a specifick´a nastaven´ı j´ı chybˇela. Tak´e bylo poˇzadav- kem, aby nemusela samostatnˇe spouˇstˇet vˇsechny aplikace, ale mˇela vˇsechna

(19)

Specifikace poˇzadavk˚u Obecn´y popis

pouˇz´ıvan´a cviˇcen´ı ovl´adan´a z jednoho rozhran´ı.

Nˇekter´e aplikace pouˇz´ıvan´e dosud v logopedick´e laboratoˇri pop´ıˇsi podrob- nˇeji.

HAPPYneuron

Pˇr´ıkladem takov´e aplikace je HAPPYneuron, kter´a je na logopedii nej- pouˇz´ıvanˇejˇs´ı. Jedn´a se o soubor jednoduch´ych kognitivn´ıch cviˇcen´ı. Aplikace tedy obsahuje cviˇcen´ı nejen pro tr´enink ˇreˇcov´ych funkc´ı, ale tak´e pro tr´e- nink pamˇeti, koncentrace, logick´eho myˇslen´ı a vizu´alnˇe-prostorov´e orientace.

V tˇechto pˇeti oblastech obsahuje celkem dvacet her. Veˇsker´e v´ysledky jsou monitorov´any a po proveden´ı urˇcit´eho poˇctu cviˇcen´ı je tak moˇzno analyzovat slab´e a siln´e str´anky konkr´etn´ıho pacienta - uˇzivatele. Aplikace nen´ı urˇcena jen pacient˚um jako rehabilitace po ´urazu a l´eˇcbˇe, ale tak´e bˇeˇzn´ym lidem jako

´

uˇcinn´y n´astroj pro bystˇren´ı mozku a zastaven´ı sl´abnut´ı jeho funkc´ı, ke kte- r´emu, jak sami uv´ad´ı, doch´az´ı jiˇz kolem 40. roku vˇeku. Ze zm´ınˇen´ych cviˇcen´ı pro tr´enink ˇreˇcov´ych funkc´ı nab´ız´ıHAPPYneuron ˇctyˇri. Jedn´a se o P´ısmen- kov´y sal´at, kde uˇzivatel bˇehem urˇcen´e doby nach´az´ı slovo ukryt´e v mˇr´ıˇzce 4 x 4 p´ısmena. P´ısmena slova se nach´azej´ı v sousedn´ıch pol´ıˇck´ach, v moˇznos- tech nastaven´ı je i varianta s diagon´aln´ım um´ıstˇen´ım soused˚u. D´ale je zde nab´ızena hra, nebo sp´ıˇse cviˇcen´ı, tzv.ˇsar´ada, kde uˇzivatel sestavuje slova ze slabik um´ıstˇen´ych v mˇr´ıˇzce. Pro jednoznaˇcnˇejˇs´ı pouˇzit´ı vˇzdy vˇsechna slova patˇr´ı k vybran´emu t´ematu, a slova jsou bud’ dvojslabiˇcn´a, nebo trojslabiˇcn´a.

Dalˇs´ım cviˇcen´ım je doplˇnovaˇcka neboli doplˇnov´an´ı mnoˇziny slov do textu s vynechan´ymi m´ısty dle smyslu. Posledn´ım cviˇcen´ım je Hledej slova. Jde o hled´an´ı skryt´eho slova pomoc´ı seznamu pomocn´ych slov s ˇc´asteˇcnˇe spoleˇc- n´ymi p´ısmeny. Hled´an´ı spr´avn´ych p´ısmen a pozic je prov´adˇeno na principu hry zn´am´e pod n´azvem Logik nebo Mastermind, tedy podle oranˇzov´e barvy pozn´ame spoleˇcn´e p´ısmeno a podle zelen´e i jeho spr´avnou pozici.

Sada program˚u Mentio

Dalˇs´ımi aplikacemi stoj´ıc´ımi za zm´ınku je sada program˚u od spoleˇcnosti Mentio. Z nich bych se chtˇel zm´ınit pˇredevˇs´ım o aplikaciMentio slovn´ı z´asoba.

Jednoduch´a aplikace, jak uˇz n´azev napov´ıd´a, slouˇz´ı k tr´enov´an´ı slovn´ı z´asoby pacienta, pˇr´ıpadnˇe i napˇr´ıklad dˇet´ı v pˇredˇskoln´ım vˇeku. Cviˇcen´ı spoˇc´ıv´a v rozpozn´av´an´ı n´ahodnˇe vybran´ych obr´azk˚u ze zvolen´ych tematick´ych okruh˚u.

(20)

Specifikace poˇzadavk˚u Obecn´y popis

Dle zvolen´eho cviˇcen´ı pak uˇzivatel aplikace zvol´ı spr´avnou odpovˇed’ bud’ z mnoˇziny vybran´ych slov, nebo jej s´am nap´ıˇse za pomoci p´ısmen zobrazen´ych v n´ahodn´em poˇrad´ı. V podobn´em duchu nab´ız´ı pouze ˇcten´ı slova nebo jeho opis.

4.2.2 Funkce produktu

Aplikace se sest´av´a z nˇekolika ve smyslu implementace jednoduch´ych re- habilitaˇcn´ıch cviˇcen´ı. C´ılem je nahradit nˇekolik souˇcasnˇe pouˇz´ıvan´ych aplikac´ı a pouˇz´ıvan´a cviˇcen´ı upravit potˇreb´am logopedie a sestavit do jedn´e aplikace.

Souˇcasnˇe je poˇzadavkem snadn´a ´uprava a vkl´ad´an´ı dat do datab´aze pˇrede- vˇs´ım pro ´uˇcely rozˇsiˇrov´an´ı okruh˚u slov v aplikaci.

Se zadavatelkou Ivanou Herejkovou je dohodnuto zahrnut´ı n´asleduj´ıc´ıch cviˇcen´ı.

Sar´ˇ ada

Cviˇcen´ı ˇSar´ada inspirovan´e cviˇcen´ım ze zm´ınˇen´e aplikaceHAPPYneuron.

Toto cviˇcen´ı upravit tak, aby mˇelo jednoduˇsˇs´ı, nebo sp´ıˇse jednoznaˇcnˇejˇs´ı volbu ´urovn´ı (n´aroˇcnosti ˇreˇsen´ı) – volbu ˇcasov´eho limitu a dvou nebo tˇr´ısla- biˇcn´ych slov. D´ale je pak poˇzadov´ana moˇznost pˇr´ıpadn´eho pˇrid´av´an´ı nebo obmˇeny t´emat a slov.

Slovn´ı z´asoba

Dalˇs´ım cviˇcen´ım je realizace podobn´eho cviˇcen´ı ze zm´ınˇen´e aplikaceMen- tio slovn´ı z´asoba s v´yraznˇe jednoduˇsˇs´ım nastaven´ım volby cviˇcen´ı. Podobnˇe jako u pˇredchoz´ıho cviˇcen´ı opˇet s moˇznost´ı ´upravy a pˇrid´av´an´ı vlastn´ıch slov a obr´azk˚u.

Pˇresmyˇcky

V dalˇs´ım cviˇcen´ı se dostalo na realizaci klasick´ych pˇresmyˇcek. Jednotliv´a p´ısmena slova v pˇreh´azen´em poˇrad´ı maj´ı b´yt zobrazena jako tlaˇc´ıtka, kter´a

(21)

Specifikace poˇzadavk˚u Obecn´y popis

uˇzivatel vol´ı ve spr´avn´em poˇrad´ı. D´ale je vyˇzadov´ana moˇznost opravy v pˇr´ı- padˇe, ˇze se uˇzivatel splete. Pro jednoduˇsˇs´ı ˇreˇsen´ı je vyˇzadov´ano pˇredeps´an´ı tematick´eho okruhu, ze kter´eho je slovo vygenerov´ano.

Pamˇet’

Aˇckoli je aplikace, jak jsem jiˇz zm´ınil na zaˇc´atku kapitoly, zamˇeˇrena pˇre- devˇs´ım na logopedii a tr´enink ˇreˇcov´ych funkc´ı, dohodli jsme se i na pˇrid´an´ı cviˇcen´ı pamˇet’ov´eho. Typick´ym takov´ym cviˇcen´ım je rozprostˇren´ı nˇekolika objekt˚u po ploˇse. Na kr´atk´y okamˇzik jsou uˇzivateli zobrazena ˇc´ısla v rozmez´ı 0 – 9. ˇC´ısla urˇcuj´ı poˇrad´ı, v jak´em mus´ı uˇzivatel objekty zakliknout po jejich zmizen´ı z plochy. Bˇehem cviˇcen´ı mohou takov´eto objekty postupnˇe zvyˇsovat sv˚uj poˇcet, pˇr´ıpadnˇe tˇreba jenom zkracovat ˇcas zobrazen´ı ˇc´ısel. Dalˇs´ı modi- fikac´ı tohoto cviˇcen´ı je napˇr´ıklad pouˇzit´ı obr´azk˚u m´ısto ˇc´ısel. Poˇrad´ı je pak urˇceno bud’to zobrazen´ım obr´azk˚u v ˇradˇe, nebo poˇrad´ım zobrazen´ı v ploˇse.

Jelikoˇz kaˇzd´emu pacientovi nevyhovuj´ı pouze ˇc´ısla a m´a lepˇs´ı pamˇet’ na ob- r´azky, tato modifikace cviˇcen´ı je tak´e poˇzadavkem.

Slovn´ı ˇrady

Mezi obvykl´a slovn´ı cviˇcen´ı byla tak´e dohodnuta realizace klasick´ych slov- n´ıch ˇrad. Jedn´a se o cviˇcen´ı, kde je uˇzivateli zobrazen pˇredem urˇcen´y poˇcet slov, z nichˇz jedno patˇr´ı do okruhu slov jin´eho neˇz vˇsechny ostatn´ı. ´Ukolem uˇzivatele tak je takov´e slovo naj´ıt.

Doplˇnov´an´ı textu

D˚uleˇzit´e pro pacienta – uˇzivatele je tak´e porozumˇen´ı cel´emu textu a kon- textu slov, a ne jen slov˚um samotn´ym jako v pˇredchoz´ıch slovn´ıch cviˇcen´ıch.

Proto doˇslo k zaˇrazen´ı cviˇcen´ı, kde uˇzivatel do zadan´eho kratˇs´ıho textu vkl´ad´a na vynechan´a m´ısta slova dle v´ybˇeru podle smyslu textu.

(22)

Specifikace poˇzadavk˚u Obecn´y popis

4.2.3 Tˇ r´ıdy uˇ zivatel˚ u

Mezi typick´e uˇzivatele produktu bude patˇrit pˇredevˇs´ım pacient. Jedn´a se o osobu, pro kterou je pˇredevˇs´ım aplikace urˇcena. Pacient bude prov´a- dˇet rehabilitaˇcn´ı cviˇcen´ı, pozorovat pˇr´ıpadn´e zlepˇsen´ı ve v´ysledc´ıch oproti pˇredchoz´ım rehabilitac´ım.

Ned´ılnou souˇc´ast´ı je tak´e terapeut, kter´y rozum´ı dan´e problematice. Ten bude dohl´ıˇzet na pacienta bˇehem cviˇcen´ı, vol´ı vhodn´a cviˇcen´ı pro sv´eho pa- cienta, provede potˇrebn´a nastaven´ı a stejnˇe jako pacient bude pozorovat v´y- sledky.

Mezi dalˇs´ı uˇzivatele patˇr´ı spr´avce. Ten se bude starat o data v datab´azi, rozˇsiˇrovat nebo upravovat st´avaj´ıc´ı sady slov, apod. Takov´eto ´ukony m˚uˇze alespoˇn ˇc´asteˇcnˇe pˇrevz´ıt i terapeut. (viz diagram pˇr´ıpad˚u uˇzit´ı, obr´azek 5.1)

4.2.4 Provozn´ı prostˇ red´ı

Poˇzadavky na desktopovou aplikaci jsou n´asleduj´ıc´ı. Desktopov´y operaˇcn´ı syst´emWindowss podporouMicrosoft .NET Framework ve verzi alespoˇn 3.0.

D´ale je poˇzadov´ana moˇznost z´apisu na lok´aln´ı disk.

4.2.5 Bezpeˇ cnostn´ı poˇ zadavky

V r´amci aplikace jsou zpracov´av´ana data uˇzivatel˚u - v´ysledky ˇreˇsen´ych cviˇcen´ı vˇzdy pˇriˇrazen´e ke jm´enu (nebo pˇrezd´ıvce) uˇzivatele, nicm´enˇe nejsou ukl´ad´any ˇz´adn´e jin´e podrobnˇejˇs´ı ´udaje o uˇzivatel´ıch. Na zabezpeˇcen´ı aplikace a pˇredevˇs´ım tˇechto dat nejsou kladeny ˇz´adn´e zvl´aˇstn´ı poˇzadavky.

(23)

5 Objektovˇ e orientovan´ y n´ avrh aplikace

5.1 Kontext syst´ emu

Obr´azek 5.1: Diagram pˇr´ıpad˚u uˇzit´ı

5.2 Architektura syst´ emu

Pro realizaci aplikace jsem se rozhodl pouˇz´ıt tˇr´ıvrstvou architekturu, a oddˇelit tak vrstvu prezentaˇcn´ı, aplikaˇcn´ı a datovou.

(24)

Objektovˇe orientovan´y n´avrh aplikace Pˇrehled tˇr´ıd

5.3 Pˇ rehled tˇ r´ıd

V hlavn´ı tˇr´ıdˇe aplikace App jsou udrˇzov´any instance tˇr´ıdy DataObject a User. Tˇr´ıdaDataObject vytvoˇren´ım instance vytvoˇr´ı spojen´ı s datab´az´ı a bˇe- hem bˇehu aplikace se instance dalˇs´ıch tˇr´ıd dost´avaj´ı k dat˚um prostˇrednictv´ım hlavn´ı tˇr´ıdyApp. Instance tˇr´ıdy DataObject zajiˇst’uje veˇskerou komunikaci s datab´az´ı. Instance tˇr´ıdy User je vˇzdy v App maxim´alnˇe jedna, a to z toho d˚uvodu, ˇze pˇrihl´aˇsen´y uˇzivatel m˚uˇze b´yt nejv´yˇse jeden.

Tˇr´ıdaMainWindow se star´a o vykreslen´ı hlavn´ıho okna aplikace. VMa- inWindow je um´ıstˇen prvekframe, do nˇehoˇz jsou vkl´ad´any jednotliv´e str´anky, kter´e zajiˇst’uj´ı funkˇcnost a poˇzadovan´e vlastnosti aplikace. Ve vykreslovac´ı ˇ

c´asti (xaml) je nastaveno mimo jin´e napˇr´ıklad pozad´ı a vlastnosti spoleˇcn´e pro vˇsechny str´anky vkl´adan´e do hlavn´ıho okna aplikace.

Hlavn´ı str´anka MainPage se zobraz´ı po spuˇstˇen´ı aplikace. Obsahem je z´akladn´ı navigace aplikac´ı, jako jsou tlaˇc´ıtka, kter´a umoˇzn´ı uˇzivateli volbu cviˇcen´ı a dalˇs´ı nastaven´ı aplikace (viz obr´azek 5.3).

Po kliknut´ı na zvolen´e cviˇcen´ı uˇzivatelem se pˇred zobrazen´ım samotn´eho cviˇcen´ı zobraz´ı nastaven´ı. Jeho vykreslen´ı zajiˇst’uje tˇr´ıda Settings. Ta je jed- notnou ˇsablonou pro vykreslen´ı potˇrebn´eho nastaven´ı vˇsech cviˇcen´ı v aplikaci.

Obsahuje typick´e formul´aˇrov´e prvky, jako jsou radio buttons a checkbuttons.

V´ypis poˇzadovan´ych obsah˚u jednotliv´ych nastaven´ı je ˇreˇsen pomoc´ı kompo- nenty ItemsControl, kter´a v zadan´e ˇsablonˇe vyp´ıˇse obsah listu.

Instance tˇr´ıdy Settings vyuˇz´ıvaj´ı rozhran´ıISettings, kter´e implementuj´ı jednotliv´e tˇr´ıdy zajiˇst’uj´ıc´ı funkˇcnost cviˇcen´ı (tj.Vocabulary, Syllables, Anagrams, Memory, Series a Refilling). Implementace rozhran´ı instanc´ım tˇr´ıd Settings zajiˇst’uje z´ısk´an´ı potˇrebn´ych dat (tj. pˇredevˇs´ım list˚u) pro zobrazen´ı v nasta- ven´ı. D´ıky tomu m˚uˇzou informace z´ıskat zpˇet tˇr´ıdy jednotliv´ych cviˇcen´ı, coˇz je potˇrebn´e z d˚uvodu spr´avn´e funkˇcnosti dle nastaven´ı uˇzivatele.

Tˇr´ıdaDataObject zajiˇst’uje komunikaci s datab´az´ı, jej´ı instance je vytv´a- ˇrena po spuˇstˇen´ı aplikace v hlavn´ı tˇr´ıdˇe App. Dalˇs´ı tˇr´ıdy z GUI UserProfile, ResultPage aUserAdd se staraj´ı o zobrazen´ı dat z´ıskan´ych zDataObject (viz objektovˇe orientovan´y n´avrh na obr´azku 5.2).

(25)

Objektovˇe orientovan´y n´avrh aplikace Pˇrehled tˇr´ıd

Obr´azek 5.2: Objektovˇe orientovan´y n´avrh aplikace

(26)

Objektovˇe orientovan´y n´avrh aplikace Datab´aze

Obr´azek 5.3: Hlavn´ı obrazovka aplikace

5.4 Datab´ aze

V datab´azi je realizov´ano nˇekolik entit zajiˇstuj´ıc´ı ukl´ad´an´ı slov. Hlavn´ı entitou (tabulkou) je Words, kter´a v datab´azov´em modelu pˇredstavuje slovo a jednoduˇse slouˇz´ı k jeho uchov´an´ı. To tedy znamen´a, ˇze kromˇe kl´ıˇc˚u kaˇzd´y z´aznam obsahuje pouze slovo jako atributword. TabulkaCategoriesuchov´av´a okruhy slov pro tabulku Words. Categories je tedy s tabulkou Words ve vztahu 1:N.

Ve stejn´em vztahu jsou i tabulky CategoriesSyllables a WordsSyllables, kter´e ale uchov´avaj´ı slova pro cviˇcen´ı Sar´ˇ ada. Kromˇe toho, ˇze uchov´avaj´ı specifick´a data pro toto cviˇcen´ı, jsou v tabulce WordsSyllables i uloˇzeny jed- notliv´e slabiky slova tak, jak se maj´ı pouˇz´ıt v aplikaci. K tomu slouˇz´ı atributy number of syllables pro poˇcet slabik (2 nebo 3), d´ale atributy first syllable, second syllable a third syllable pro jednotliv´e slabiky.

Velmi podobnˇe jsou navrˇzeny i tabulkyCategoriesPictures aWordsPictu- res, kter´e umoˇzˇnuj´ı realizovat cviˇcen´ıSlovn´ı z´asoba.Id jednotliv´ych slov pˇred- stavuje tak´e n´azev obr´azku s pˇr´ıponoujpgpˇr´ısluˇs´ıc´ı dan´emu z´aznamu - slovu.

(27)

Objektovˇe orientovan´y n´avrh aplikace Datab´aze

V tabulce WordsPicures je kromˇe obvykl´ych atribut˚u tak´e hodnota location nab´yvaj´ıc´ı hodnot True neboFalse. Hodnota pˇredstavuje um´ıstˇen´ı obr´azku.

Pokud je hodnotaTrue, znamen´a to, ˇze je obr´azek souˇc´ast´ı souboru aplikace (obvykle v Program Files v pˇr´ısluˇsn´e sloˇzce jako exe), tj. jedn´a se o origi- n´aln´ı obr´azek vydan´y jako souˇc´ast instalaˇcn´ıho bal´ıˇcku. V pˇr´ıpadˇe hodnoty False je dan´e slovo um´ıstˇeno v aplikaˇcn´ıch souborech (typicky v AppData).

Hodnota False tedy znamen´a, ˇze takov´e slovo bylo vloˇzeno uˇzivatelem za po- moci glob´aln´ıho nastaven´ı aplikace. Jedn´a se tak o rozˇs´ıˇren´ı, kter´e se v OS Windows projev´ı pouze tomu uˇzivateli, kter´y takov´e provedl.

Pro potˇreby cviˇcen´ıDoplˇnov´an´ı textu je realizov´ana tabulka Texts, kter´a uchov´av´a vˇsechny texty pro toto cviˇcen´ı. M´ısto pro slova, kter´a uˇzivatel do- plˇnuje, jsou oznaˇcena znaˇckami

”{{s}}“, kdes je slovo, kter´e je po uˇzivateli vyˇzadov´ano jako spr´avn´e.

Dalˇs´ı tabulky uchov´avaj´ı uˇzivatelsk´a data. Jedn´a se o tabulkuUsers, kde jsou uchov´ana jm´ena uˇzivatel˚u. D´ale pak UsersResults, kter´a uchov´av´a z´a- znamy o v´ysledc´ıch. Tabulky jsou ve vz´ajemn´em vztahu 1:N, nebot’ jeden uˇzivatel m˚uˇze m´ıt v´ıce v´ysledk˚u, ale jeden v´ysledek pˇr´ısluˇs´ı pr´avˇe jednomu uˇzivateli. V tabulce UsersResults je vˇzdy uloˇzeno id game, neboli ˇc´ıslo pˇr´ı- sluˇsn´e hry - cviˇcen´ı, ke kter´e z´aznam o v´ysledku pˇr´ısluˇs´ı. D´ale je pak uloˇzen ˇ

cas (time), za jak dlouho bylo cviˇcen´ı od sv´eho spuˇstˇen´ı dokonˇceno. Atri- but number of true vyznaˇcuje poˇcet spr´avn´ych odpovˇed´ı ze vˇsech moˇzn´ych - number. Dalˇs´ı atribut number of true je vyuˇzit pouze u nˇekter´ych cviˇcen´ı a vyznaˇcuje poˇcet chybn´ych pokus˚u, kter´e vˇsak uˇzivatel opravil a neprojev´ı se tak u pˇredchoz´ıch atribut˚u entity UsersResults. V neposledn´ı ˇradˇe je sa- mozˇrejmˇe nutnost´ı i id user pˇr´ısluˇs´ıc´ı uˇzivateli v Users.

(28)

Objektovˇe orientovan´y n´avrh aplikace Datab´aze

Obr´azek 5.4: N´avrh ERA modelu datab´aze

(29)

6 Implementace

Vzhledem k tomu, ˇze je poˇzadavkem specifikace vytvoˇren´ı desktopov´e aplikace pro operaˇcn´ı syst´em Windows, rozhodl jsem se implementovat apli- kaci vyuˇzit´ım Microsoft n´astroj˚u, jazyka C# a frameworku .NET ve v´yvo- jov´em prostˇred´ıVisual Studio.

6.1 Framework WPF

Pro ´uˇcely okenn´ı aplikace jsem pouˇzil.NET framework WPF (Windows Presentation Foundation). Jedn´a se o framework, kter´y nahrazuje starˇs´ıWin- dows Forms. Mezi jeho hlavn´ı v´yhody patˇr´ı zejm´ena nez´avislost na rozliˇsen´ı, moˇznost tvorby pomoc´ı jazyka XAML (na b´azi XML), animace a vysok´a podpora multim´edi´ı.

Pro nez´avislost na rozliˇsen´ıWPF zav´ad´ı jako jednotku d´elkyDIP (Device Independent Pixel) a vektorovou grafiku, ˇc´ımˇz zjednoduˇsuje pouˇzit´ı na r˚uz- n´ych zaˇr´ızen´ıch.WPF pouˇz´ıv´a pro vykreslen´ıDirect3D, kter´e m´enˇe zatˇeˇzuje procesor. Oproti Widnows Forms umoˇzˇnuje jednoduchou tvorbu bohat´ych GUI aplikac´ı bez omezen´ı na z´akladn´ı komponenty. Pouˇzit´ı jazyka XAML velmi pˇrehlednˇe oddˇeluje prezentaci od samotn´e logiky aplikace. Tomu po- m´ahaj´ı tak´e bindingy, kter´e napojuj´ı objekty pˇr´ımo na komponenty GUI, a nen´ı potˇreba tak jejich vytv´aˇren´ı a definice vC# k´odu.

Soubory XAML (.xaml) jsou ve Visual Studiu sp´arov´any s codebehind soubory .xaml.cs (C#), kter´e obsluhuj´ıXAMLk´od. [Vais(2011)]

6.2 Datab´ aze

K realizaci slovn´ıch cviˇcen´ı je ned´ılnou souˇc´ast´ı tak´e datab´aze. Vzhledem k tomu, ˇze vˇetˇsina cviˇcen´ı v aplikaci je slovn´ıch, je potˇreba pˇr´ıstupu k vˇetˇs´ımu mnoˇzstv´ı dat. V tabulk´ach jsou uloˇzena vˇsechna slova, kategorie (okruhy) slov, texty, ale i uˇzivatelsk´a data. Tˇemi kromˇe samotn´ych informac´ı o uˇzivateli – pacientovi jsou i data o v´ysledc´ıch proveden´ych cviˇcen´ı.

(30)

Implementace Implementace jednotliv´ych cviˇcen´ı

Vzhledem pouˇzit´ıMicrosoft Visual Studia je k tˇemto ´uˇcel˚um pouˇzita MS SQL Express LocalDB. Jedn´a se o funkci SQL Server Express, kter´a posky- tuje v´yvoj´aˇr˚um jednoduchou spr´avu a instalaci. M´ısto sloˇzit´e konfigurace serveru se zde pˇri bˇehu aplikace podle potˇreby pouze vytvoˇr´ı instance t´eto lok´aln´ı datab´aze. Pro spuˇstˇen´ı aplikace na bˇeˇzn´em PC s operaˇcn´ım syst´emem Windows je potˇrebn´a instalace MS SQL Express LocalDB s velikost´ı kolem 30 MB.

6.3 Implementace jednotliv´ ych cviˇ cen´ı

V n´asleduj´ıc´ıch odstavc´ıch struˇcnˇe pop´ıˇsi implementaci nˇekter´ych cviˇcen´ı.

6.3.1 Slovn´ı z´ asoba

Po spuˇstˇen´ı cviˇcen´ı dojde k n´ahodn´emu vybr´an´ı zvolen´eho poˇctu slov.

Tato slova jsou vˇzdy pˇriˇrazena k obr´azku, a jsou tak oˇcek´av´ana jako spr´avn´a odpovˇed’ od uˇzivatele. Cviˇcen´ı je moˇzno nastavit na dvˇe verze. Jednou z nich je moˇznost v´ybˇeru ze ˇctyˇr slov, druh´a umoˇzˇnuje zad´an´ı slova ruˇcnˇe, avˇsak ze zadan´e mnoˇziny p´ısmen. V obou variant´ach se v lev´e ˇc´asti pomoc´ı komponenty Image zobraz´ı vybran´y obr´azek (viz obr´azek 6.1).

Prvn´ı varianta v kaˇzd´e d´ılˇc´ı ´uloze vybere k jednomu slovu patˇr´ıc´ımu k obr´azku dalˇs´ı tˇri moˇznosti ze stejn´e kategorie, kter´e n´ahodnˇe zam´ıch´a a pˇrid´a do seznamu. Ten se vykresl´ı jako tlaˇc´ıtka v prav´e ˇc´asti tohoto cviˇcen´ı. Kaˇzd´e tlaˇc´ıtko v sobˇe jako Tag ukr´yv´a index, resp. poˇrad´ı zobrazen´ych moˇznost´ı.

Index spr´avn´eho slova z v´ybˇeru je v kaˇzd´e d´ılˇc´ı ´uloze uloˇzen. Pokud uˇzivatel zvol´ı jednu z moˇznost´ı, dojde pr´avˇe k porovn´an´ı tˇechto index˚u. Tlaˇc´ıtko se posl´eze zabarv´ı dle spr´avnosti volby na kr´atk´y ˇcasov´y ´usek, neˇz dojde k navigaci na dalˇs´ı ´ulohu.

Ve druh´e variantˇe dojde pouze k zobrazen´ı TextBox pro zad´an´ı slova uˇzivatelem bez moˇznosti v´ybˇeru.

(31)

Implementace Implementace jednotliv´ych cviˇcen´ı

Obr´azek 6.1: Uk´azka cviˇcen´ı Slovn´ı z´asoba

6.3.2 Sar´ ˇ ada

Hrac´ı plochu ve cviˇcen´ı ˇsar´ada tvoˇr´ı mˇr´ıˇzka slabik velikosti 6 x 5. Jednot- liv´e poloˇzky tvoˇr´ı tlaˇc´ıtka, kter´a jsou podobnˇe jako u jin´ych cviˇcen´ı vykres- lov´ana pomoc´ıbinding˚u. Tlaˇc´ıtka jsou vkl´ad´ana do WrapPanel. Pˇri zah´ajen´ı cviˇcen´ı je z datab´azov´e tabulky SyllablesWords vybr´ano 10 nebo 15 poloˇzek se slovy, kter´e tvoˇr´ı trojici nebo dvojici slabik dle nastaven´ı uˇzivatele. Jejich uloˇzen´ı po naˇcten´ı nepˇredstavuj´ı jen tlaˇc´ıtka, resp. jednotliv´e slabiky, ale i cel´a slova v seznamu ˇretˇezc˚u (viz obr´azek 6.2).

Aplikace vyˇck´av´a na reakci uˇzivatele, na stisk slabiky, ze kter´e chce sesta- vit slovo. Kaˇzd´e stisknut´ı inkrementuje poˇc´ıtadlo oznaˇcen´ych slabik a kon- troluje, zda jejich poˇcet odpov´ıd´a nastaven´e d´elce slova ve slabik´ach, tedy v pˇr´ıpadˇe tohoto cviˇcen´ı dvˇe nebo tˇri slabiky. Pokud ne, tlaˇc´ıtko je ozna- ˇ

ceno pˇr´ısluˇsnou barvou, aby si byl uˇzivatel vˇedom svoj´ı volby. Z´aroveˇn dojde k pˇrid´an´ı slabiky do StringBuilder, kter´y utv´aˇr´ı cel´e slovo tak, jak jej vol´ı uˇzivatel. Tak´e se zvolen´a tlaˇc´ıtka uloˇz´ı do seznamu pro zpˇetn´e z´ısk´an´ı refe- renc´ı na tlaˇc´ıtka, kter´a byla oznaˇcena. Kdyˇz je takto zvolen potˇrebn´y poˇcet slabik, doch´az´ı ke kontrole spr´avnosti sestaven´eho slova ve StringBuilder se

(32)

Implementace Implementace jednotliv´ych cviˇcen´ı

seznamem naˇcten´ych slov z datab´aze. Pokud takov´e slovo v seznamu existuje, tlaˇc´ıtka, jejichˇz slabiky ho tvoˇr´ı, jsou odebr´ana. Slovo je pˇrid´ano pod hrac´ı plochu jako jiˇz nalezen´e. Dalˇs´ım krokem je kontrola poˇctu nalezen´ych slov tak, aby v pˇr´ıpadˇe nalezen´ı vˇsech se ukonˇcil ˇcasovaˇc a doˇslo k navigaci na str´anku s v´ysledky ˇreˇsen´eho cviˇcen´ı. Pokud nalezen´e slovo neexistuje, resp.

neshoduje se s ˇz´adn´ym v seznamu, dojde k oznaˇcen´ı takov´ych tlaˇc´ıtek se slabikami ˇcervenou barvou na kr´atk´y ˇcasov´y ´usek pro informaci uˇzivatele o chybˇe. Takov´a tlaˇc´ıtka jsou z´aroveˇn vloˇzena do fronty a je spuˇstˇen ˇcasovaˇc, po jehoˇz uplynut´ı jsou tlaˇc´ıtka z fronty vybr´ana a oznaˇcena jejich p˚uvodn´ı bar- vou. Fronta je pouˇzita z toho d˚uvodu, zvol´ı-li uˇzivatel v tomto ˇcasov´em ´useku i dalˇs´ı slovo a opˇet chybnˇe, aby doˇslo ke spr´avn´emu pr˚ubˇehu pˇri oznaˇcov´an´ı p˚uvodn´ı barvou.

Ve vˇsech pˇr´ıpadech, kdy je zvolen potˇrebn´y poˇcet slabik k sestaven´ı slova, je po jeho zpracov´an´ı vymaz´an ˇretˇezec veStringBuilder, z´aroveˇn tak´e seznam stisknut´ych tlaˇc´ıtek. Z implementace je zˇrejm´e, ˇze aplikace akceptuje z vy- bran´ych slabik pouze slova, kter´a jsou z´ısk´ana ze slov vybran´ych z datab´aze pˇri zah´ajen´ı cviˇcen´ı. M˚uˇze se tak v ojedinˇel´em pˇr´ıpadˇe st´at, ˇze uˇzivatel na- lezne slovo, kter´e sice existuje v ˇcesk´em jazyce, avˇsak aplikace takov´e slovo neakceptuje. Eliminaci takov´eho jevu napom´ah´a uˇzˇs´ı v´ybˇer slov vˇzdy z jed- noho t´ematu, a tak niˇzˇs´ı pravdˇepodobnosti nalezen´ı takov´eho slova. Pokud je v hrac´ı mˇr´ıˇzce obsaˇzeno v´ıce stejn´ych slabik, nez´aleˇz´ı na tom, kter´e uˇzivatel vybere.

6.3.3 Pˇ resmyˇ cky

Podobnˇe jako v jin´ych cviˇcen´ıch je v prvotn´ı f´azi naˇc´ıt´an´ı nejprve vybr´an volen´y poˇcet slov ze zvolen´ych kategori´ı z pˇr´ısluˇsn´e tabulky v datab´azi. Kaˇzd´e slovo je pomoc´ı vytvoˇren´e permutaˇcn´ı metody pˇretvoˇreno na pole znak˚u se zmˇenˇen´ym poˇrad´ım. Pole je pomoc´ıbinding˚u vloˇzeno do aplikace jako tla- ˇ

c´ıtka, kter´a uˇzivatel vyb´ır´a podle spr´avn´eho poˇrad´ı (viz obr´azek 6.3).

Po zvolen´ı p´ısmena uˇzivatelem je takov´e tlaˇc´ıtko skryto a vloˇzeno do z´asobn´ıku. P´ısmeno se pˇrid´a do ˇretˇezce v TextBoxu, kde tvoˇr´ı p˚uvodn´ı slovo dle voleb uˇzivatele. V pˇr´ıpadˇe, ˇze si uˇzivatel svoji volbu rozmysl´ı, m´a moˇznost se vr´atit zpˇet pomoc´ı pˇr´ısluˇsn´eho tlaˇc´ıtka. K tomu je pr´avˇe vyuˇzit jiˇz zm´ınˇen´y z´asobn´ık, kter´y v tomto pˇr´ıpadˇe prvek – tlaˇc´ıtko odebere z vrcholu z´asobn´ıku a opˇet jej zviditeln´ı a z´aroveˇn odebere zTextBoxu.

Po dokonˇcen´ı jedn´e pˇresmyˇcky uˇzivatel stiskem tlaˇc´ıtka Zadat vygeneruje

(33)

Implementace Implementace jednotliv´ych cviˇcen´ı

Obr´azek 6.2: Uk´azka cviˇcen´ı ˇSar´ada

stejn´ym zp˚usobem dalˇs´ı pˇresmyˇcku, a to pˇresnˇe tolikr´at, kolik si nastavil.

Samozˇrejmost´ı je opˇet kontrola spr´avnosti zadan´eho slova v TextBoxu s p˚u- vodn´ım slovem bez pˇreh´azen´eho poˇrad´ı p´ısmen. Poˇcet spr´avn´ych slov je opˇet zaznamen´an do celkov´eho v´ysledku ˇreˇsen´ı tohoto cviˇcen´ı.

6.3.4 Pamˇ et’

Kl´ıˇcovou ˇc´ast´ı v tomto cviˇcen´ı jsou objekty, kter´e se k zapamatov´an´ı uˇzi- vateli v aplikaci zobrazuj´ı. Pro jejich zobrazen´ı je vyuˇzito WPF komponenty Canvas, do kter´e se vkl´adaj´ı pˇr´ısluˇsn´e kruˇznice (Ellipse), texty a obr´azky.

Po nastaven´ı parametr˚u cviˇcen´ı a jeho spuˇstˇen´ı uˇzivatelem dojde k vytvo- ˇren´ı objekt˚u s defaultn´ı barvou, zat´ım na pl´atnˇe skryt´e. S vyuˇzit´ımbinding˚u se takov´e objekty vloˇz´ı do pl´atna (Canvas). D´ale dojde k inicializaci dvou ˇ

casovaˇc˚u, kter´e se staraj´ı o spr´avn´e naˇcasov´an´ı volaj´ıc´ıch procedur, a t´ım o spr´avn´y pr˚ubˇeh cviˇcen´ı (viz obr´azek 6.4).

Nyn´ı nast´av´a f´aze pro samotn´y pr˚ubˇeh cviˇcen´ı. V kaˇzd´em d´ılˇc´ım ´ukolu tohoto cviˇcen´ı se uˇzivateli nejprve zobraz´ı n´apis vyz´yvaj´ıc´ı ho k pˇr´ıpravˇe

(34)

Implementace Implementace jednotliv´ych cviˇcen´ı

Obr´azek 6.3: Uk´azka cviˇcen´ı Pˇresmyˇcky

a soustˇredˇen´ı s bˇeˇz´ıc´ım ˇcasov´ym limitem zobrazen´ym pomoc´ıProgress baru pod pl´atnem. To je zajiˇstˇeno pr´avˇe jedn´ım ze zm´ınˇen´ych ˇcasovaˇc˚u. Pokud do- jde k vyprˇsen´ı ˇcasovaˇce, zobraz´ı se objekty v pl´atnˇe. Kruˇznice jsou n´ahodnˇe rozm´ıstˇeny se zajiˇstˇen´ım, ˇze nenastanou kolize. K zobrazen´ı ˇc´ıslic nebo ob- r´azk˚u v kruˇznic´ıch je vyuˇzit druh´y ˇcasovaˇc, kter´y je zobraz´ı rovnˇeˇz pouze na kratˇs´ı dobu takovou, aby si je uˇzivatel dok´azal zapamatovat.

Nyn´ı nast´av´a ˇcas pro interakci uˇzivatele, kter´y m˚uˇze v libovoln´em ˇca- sov´em ´useku klikat na kruˇznice (nyn´ı pr´azdn´e) v definovan´em poˇrad´ı dle zapamatovan´ych ˇc´ısel nebo obr´azk˚u. Kaˇzd´a kruˇznice m´a v sobˇe uloˇzen in- dex od 1 do n, kter´y definuje poˇrad´ı, podle nˇehoˇz se na kr´atk´y ˇcasov´y ´usek zobrazila ˇc´ısla (obr´azky). Dle tˇechto index˚u je pˇri kaˇzd´em kliknut´ı na kruˇz- nici aplikac´ı vyhodnocov´ano, zda interakce uˇzivatele byla spr´avn´a a dle toho vyznaˇcila barvou zvolenou kruˇznici. V pˇr´ıpadˇe spr´avn´e volby je vyobrazena zelenˇe a aplikace nad´ale ˇcek´a na dalˇs´ı kliknut´ı uˇzivatelem. V opaˇcn´em pˇr´ıpadˇe se kruˇznice logicky pˇrebarv´ı ˇcervenˇe. Z´aroveˇn dojde k zpˇetn´emu zobrazen´ı ˇc´ı- sel (obr´azk˚u) s opˇetovn´ym vyuˇzit´ım druh´eho ˇcasovaˇce, aby uˇzivatel mohl vidˇet, kde chyboval. K tomu dojde bez ohledu na dalˇs´ı pokusy uˇzivatele, v pˇr´ıpadˇe chyby se ˇreˇsen´ı d´ılˇc´ıho ´ukolu cviˇcen´ı ukonˇc´ı. Po vyprˇsen´ı ˇcasovaˇce

(35)

Implementace Implementace jednotliv´ych cviˇcen´ı

dojde opˇetovnˇe ke spuˇstˇen´ı prvn´ıho ˇcasovaˇce a opˇet k zobrazen´ı jiˇz popsan´e v´yzvy k pˇr´ıpravˇe a n´aslednˇe ke spuˇstˇen´ı dalˇs´ıho d´ılˇc´ıho ´ukolu.

D´ılˇc´ı ´ukoly jsou spuˇstˇeny tolikr´at, kolik si uˇzivatel zvolil v nastaven´ı cvi- ˇ

cen´ı. Pot´e je zobrazena obrazovka s v´ysledky uˇzivatele a v´ysledky jsou uloˇzeny do datab´aze. V pˇr´ıpadˇe nastaven´ı, aby se mnoˇzstv´ı zobrazuj´ıc´ıch se objekt˚u (kruˇznic) s pˇrib´yvaj´ıc´ımi ´ukoly zvyˇsovalo, doch´az´ı k vytv´aˇren´ı nov´ych ob- jekt˚u. Ty jsou pˇrid´any do pole existuj´ıc´ıch vˇzdy po tˇrech ´ukolech.

Obr´azek 6.4: Uk´azka cviˇcen´ı Pamˇet’

6.3.5 Rady slov ˇ

Vyuˇzit´ım slov rozdˇelen´ych do kategori´ı v datab´azi doˇslo k realizaci tohoto jednoduch´eho cviˇcen´ı. Pˇred spuˇstˇen´ım dojde k v´ybˇeru nastaven´eho poˇctu slov a zvolen´ych kategori´ı z datab´aze. N´aslednˇe v kaˇzd´e ´uloze dojde k v´ybˇeru jedn´e kategorie, kter´a je odliˇsn´a od kategorie, do kter´e spad´a aktu´aln´ı slovo z v´ybˇeru. Z tohoto okruhu jsou pak vybr´ana dalˇs´ı ˇctyˇri slova, kter´a jsou v n´ahodn´em poˇrad´ı vloˇzena do listu k vykreslen´ı jako tlaˇc´ıtka (viz obr´azek 6.5).

Implementace je velice podobn´a cviˇcen´ı slovn´ı z´asoba. Tlaˇc´ıtk˚um jsou

(36)

Implementace Implementace jednotliv´ych cviˇcen´ı

opˇet pˇridruˇzeny indexy dle jejich poˇrad´ı a pˇri stisku zvolen´eho slova uˇziva- telem doch´az´ı k porovn´an´ı s indexem slova z p˚uvodn´ıho v´ybˇeru. Opˇet dle spr´avnosti volby dojde k oznaˇcen´ı pˇr´ısluˇsnou barvou na urˇcit´y ˇcasov´y ´usek.

Obr´azek 6.5: Uk´azka cviˇcen´ı ˇRady slov

6.3.6 Doplˇ nov´ an´ı textu

Vˇsechna data pro toto cviˇcen´ı jsou uloˇzena v tabulce Texts. Tabulka ob- sahuje ˇcl´anek, jeˇz m´a slova, kter´a bude uˇzivatel bude doplˇnovat, vyznaˇcena znaˇckami

”{{“ pro poˇc´atek a

”}}“ pro konec. Slova mezi tˇemito znaˇckami jsou pak v textu nahrazena tlaˇc´ıtky s teˇckami. Tlaˇc´ıtka se po oznaˇcen´ı uˇziva- telem a n´asledn´ym v´ybˇerem vhodn´eho slova z v´ybˇeru nahrad´ı touto volbou (viz obr´azek 6.6).

Prvotn´ı f´az´ı tedy po z´ısk´an´ı dat z datab´aze je text parsovat dle zm´ınˇen´ych znaˇcek. Text je um´ıstˇen veWPF komponentˇeTextBlock. Text je podle znaˇcek rozdˇelen do pole ˇretˇezc˚u. Text vnˇe znaˇcek je jednoduˇse pˇrid´an doTextBlocku, ve druh´em pˇr´ıpadˇe je vytvoˇreno tlaˇc´ıtko. Tlaˇc´ıtko v sobˇe uchov´av´a index, kter´y je um´ıstˇen uvnitˇr znaˇcek, pro spr´avn´e pˇriˇrazen´ı slova. Slova nalezen´a uvnitˇr znaˇcek jsou z´aroveˇn pˇrid´ana do seznamu vˇcetnˇe indexu.

(37)

Implementace Implementace jednotliv´ych cviˇcen´ı

Obr´azek 6.6: Uk´azka cviˇcen´ı Doplˇnov´an´ı textu

Pˇr´ısluˇsn´a slova jsou dle index˚u v textu z´ısk´ana ze zm´ınˇen´eho seznamu a vloˇzena pomoc´ıbinding˚u pod text jako tlaˇc´ıtka s opˇet uloˇzen´ym pˇr´ısluˇsn´ym indexem slova. Uˇzivatel m´a nyn´ı pˇripraven´e prvky pro cviˇcen´ı na porozumˇen´ı kontextu ˇcl´anku. Nejprve je nutno oznaˇcit pˇr´ısluˇsn´e m´ısto v textu, kam se chyst´a doplnit poˇzadovan´e slovo z v´ybˇeru. Takov´e m´ısto (tlaˇc´ıtko) se pˇrebarv´ı a uloˇz´ı se jako poslednˇe stisknut´e (pro pˇriˇrazen´ı slova). Pokud jiˇz bylo nˇejak´e tlaˇc´ıtko stisknuto pˇred n´ım, to se zpˇet odznaˇc´ı. Dalˇs´ım oˇcek´avan´ym krokem uˇzivatele je v´ybˇer slova pro oznaˇcen´e m´ısto. Takov´e slovo se pak dopln´ı na vynechan´e m´ısto a pro dalˇs´ı potˇreby se reference na pr´avˇe stisknut´e tlaˇc´ıtko uloˇz´ı i k tlaˇc´ıtku v textu. Stisknut´e tlaˇc´ıtko z´aroveˇn zmiz´ı. V pˇr´ıpadˇe, ˇze v textu jiˇz na zvolen´em m´ıstˇe bylo nˇejak´e slovo uˇzivatelem zvoleno v pˇredchoz´ı volbˇe, takov´e slovo se zpˇet objev´ı ve v´ypisu slov pod textem, resp. se vymˇen´ı s pr´avˇe volen´ym, k ˇcemuˇz poslouˇz´ı uloˇzen´a reference v tlaˇc´ıtku.

T´ımto zp˚usobem uˇzivatel m˚uˇze doplnit vˇsechna vynechan´a m´ısta v textu.

Dalˇs´ım krokem tedy je kontrola spr´avnosti a uloˇzen´ı v´ysledk˚u. Algoritmus proch´az´ı vˇsechna tlaˇc´ıtka v textu. Pokud se index tlaˇc´ıtka uloˇzen´eho jako re- ference shoduje s indexem proch´azen´eho, jedn´a se o spr´avnˇe doplnˇen´e slovo, kter´e se pˇr´ısluˇsnˇe oznaˇc´ı a zaznamen´a do v´ysledk˚u. V opaˇcn´em pˇr´ıpadˇe je na

(38)

Implementace Implementace glob´aln´ıho nastaven´ı

m´ısto doplnˇeno slovo, kter´e tam m´a patˇrit a z´aroveˇn oznaˇceno jako ˇspatnˇe zvolen´e. Pak uˇz jen uˇzivatel m˚uˇze pokraˇcovat na str´anku se souhrnn´ym v´y- pisem v´ysledk˚u.

6.4 Implementace glob´ aln´ıho nastaven´ı

Souˇc´ast´ı aplikace je i moˇznost z´asahu do datab´azov´ych dat pomoc´ı uˇzi- vatelsk´eho rozhran´ı dostupn´ym z hlavn´ı str´anky aplikace tlaˇc´ıtkem

”Nasta- ven´ı“. Rozˇclenˇen´ı jednotliv´ych tabulek je realizov´ano pomoc´ı komponenty TabControl. K zobrazen´ı a editaci dat je vyuˇzito pˇredevˇs´ımDataGrid, do nˇe- hoˇz jsou v pˇr´ısluˇsn´ych z´aloˇzk´achTabControl vkl´ad´ana data z datab´aze. D´ıky SqlDataAdapter aDataTable pouˇzit´ych v implementaciCodeBehind str´anky Nastaven´ıje snadno realizov´ana moˇznost editace a pˇrid´av´an´ı z´aznam˚u v pˇr´ı- padˇe volby Uloˇzit, kde se pomoc´ı metody Update volanou nad pˇr´ısluˇsn´ym SqlDataAdapter aktualizuje konkr´etn´ı tabulka v datab´azi.

V pˇr´ıpadˇe z´aloˇzky pro ´upravu slov pro cviˇcen´ıSlovn´ı z´asoba je vkl´ad´an´ı slov realizov´ano odliˇsn´ym zp˚usobem, neˇz jsem zm´ınil v´yˇse. V tomto pˇr´ıpadˇe je nutno souˇcasnˇe vkl´adat i obr´azek. Ten se ukl´ad´a ve form´atu JPG. Tyto soubory jsou ukl´ad´any do samostatn´e sloˇzky vAppData uˇzivatele, kter´y apli- kaci pouˇz´ıv´a. N´azvy soubor˚u jsou tvoˇrenyid pˇr´ısluˇsn´eho ˇr´adku v tabulce slov WordsPictures pro cviˇcen´ı slovn´ı z´asoba.

Posledn´ı z´aloˇzka umoˇzˇnuje editaci a vkl´ad´an´ı z´aznam˚u pro cviˇcen´ı Do- plˇnov´an´ı textu. Podobnˇe jako u ´uprav jin´ych cviˇcen´ı je zde realizov´an v´ypis vˇsech z´aznam˚u. Zde se jedn´a o zkr´acen´e texty. Ty je moˇzno volbou tlaˇc´ıtka upravovat. Uˇzivateli se pot´e zobraz´ı cel´y text vTextBox. Slova, kter´a uˇzivatel bude ve cviˇcen´ı doplˇnovat, jsou v textech vyznaˇcena znaky

”{{“ a

”}}“. Pro uˇzivatelsky pˇr´ıjemnˇejˇs´ı ´upravu je zde tak´e tabulkaDataGrid, kter´a tato slova zobrazuje. Data pro DataGrid nejsou vˇsak uloˇzena nikde zvl´aˇst’, n´ybrˇz jsou z´ısk´ana pˇr´ımo z textu pomoc´ı regul´arn´ıch v´yraz˚u. Pˇrid´av´an´ı slov je zjednodu- ˇseno uˇzivateli oznaˇcen´ım slova v textu a stiskem pˇr´ısluˇsn´eho tlaˇc´ıtka. Takov´e slovo je pak doplnˇeno uveden´ymi znaky a pˇrid´ano do DataGrid. Opaˇcn´ym zp˚usobem funguje odeb´ır´an´ı slov, kter´e je moˇzno realizovat pomoc´ı tlaˇc´ıtka u z´aznamu v DataGrid.

Odkazy

Související dokumenty

Manu´ aln´ı ukl´ ad´ an´ı sn´ımk˚ u je umoˇ znˇ eno za pomoc´ı tlaˇ c´ıtka v informaˇ cn´ım panelu, takt´ eˇ z pokud je v nastaven´ı zapnuta moˇ znost vytv´ aˇ

Obr´ azek C7: Proud proch´ azej´ıc´ı obvodem a pr˚ ubˇ eh napˇ et´ı na oblouku pˇri zapojen´ı sp´ınan´ eho zdroje ( 5 - bez vybaven´ı AFDD). Obr´ azek C8: Frekvenˇ

Pokud uˇ zivatel po pˇ rihl´ aˇ sen´ı zvol´ı v menu tlaˇ c´ıtko M´ e, aplikace odeˇ sle poˇ zadavek na server k z´ısk´ an´ı vˇ sech seznam˚ u, kter´ e kdy dan´ y

Teˇ ziˇstˇ em bakal´ aˇrsk´ e pr´ ace je implementace origin´ aln´ı aplikace pro tvorbu animac´ı, jej´ıˇ z hlavn´ı konkurenˇ cn´ı v´ yhodou je podpora pro automatick´

Pˇredloˇ zen´ a bakal´ aˇrsk´ a pr´ ace se zab´ yv´ a odhadov´ an´ım geometrie dvou kamer z korespondenc´ı, za situac´ı kdy se vyskytuje v´ yznamn´ e mnoˇ zstv´ı

Je tˇ eˇ zk´ e urˇ cit, kter´ a ˇ c´ ast cviˇ cen´ı je nejn´ aroˇ cnˇ ejˇs´ı, protoˇ ze do hry vstupuje i pr´ ace pseudopilot˚ u, kteˇr´ı, vzhledem k enormn´ı

Jedn´ım ze z´ akladn´ıch c´ıl˚ u t´ eto pr´ ace bylo pr´ avˇ e vytvoˇren´ı hledaˇ cky dis- ponuj´ıc´ı displejem, na kter´ em by bylo moˇ zn´ e zobrazit vˇ etˇs´ı ˇ

Pˇri n´avrhu bylo tedy moˇzn´e se inspirovat d´ıky ˇc´asti t´eto pr´ace, kde byly analyzov´any konkurenˇcn´ı aplikace, viz 2.2.. Obr´azek 3.7: Wireframe seznamu lekc´ı