De elopmen o an And oid applica ion as a
pe sonalised isual ehabili a o o pa ien s wi h
Macula Degene a ion
Desa ollo de una aplicación And oid como ehabili ado
isual pe sonalizado pa a pacien es con Degene ación
Macula
Deg ee in Compu e Science 2021-2022
Facul y o Compu e Science
Au ho s:
Escoba Sua ez, Daniela Alejand a
Ma ín Puebla, Alba Ma ía
Núñez Conde, Ma ía
Rod íguez Pe ei a, Diego Alejand o
Supe ised by:
Guija o Ma a-Ga cía, Ma ía
Recas Pio no, Joaquín
Collabo a o s:
González Vides, Leonela
González Mon e o, Ma ía Guadalupe
II
De elopmen o an And oid Applica ion as a
Pe sonalised Visual Rehabili a o o Pa ien s wi h
Macula Degene a ion
Desa ollo de una Aplicación And oid como
Rehabili ado Visual Pe sonalizado pa a Pacien es con
Degene ación Macula
Compu e Science’s Final P ojec By:
Escoba Sua ez, Daniela Alejand a
Ma ín Puebla, Alba Ma ía
Núñez Conde, Ma ía
Rod íguez Pe ei a, Diego Alejand o
Supe ised by:
Guija o Ma a-Ga cía, Ma ía
Recas Pio no, Joaquín
Collabo a o s:
González Vides, Leonela
González Mon e o, Ma ía Guadalupe
Final P ojec 2021-2022
Facul y o Compu e Science
Complu ense Uni e si y o Mad id
Mad id, 2022
III
IV
Dedica ion
We dedica e his app o he Macula Degene a ion pa ien s. We hope ha his
p ojec imp o es hei li es.
We also wan o dedica e his p ojec o all he eache s who ha e augh us
h oughou ou uni e si y educa ion.
Finally, o all ou lo ed ones.
Acknowledgmen
We exp ess ou deepes g a i ude o Leonela González Vides and Ma ía
Guadalupe González Mon e o o hei suppo , ad isemen , and inpu on he ma e .
We wan o hank Ma ía Guija o Ma a-Ga cía and Joaquín Recas Pio no o
making his p ojec possible.
V
Abs ac
The Age- ela ed Macula Degene a ion (AMD) is an illness ha c ea es one o
mo e s ains in he ision ha may a ec signi ican ly in he e e yday li e o whoe e
su e s i . I is a disease ha a lic s mos ly o people o ad anced age and, nowadays,
hei ea men s a e no mode nized o he digi al e a. In he p esen day, i is mainly
es ed and exe cised h ough pape , as he e is no enough in es men o digi alize,
which would make easie he ea men o he pa ien , he e o e, make easie he
p o essional wo k.
The objec i e o his p ojec is o de elop an applica ion ha helps bo h
pa ien s wi h age- ela ed macula degene a ion and p o essionals who wo k wi h
hem. This applica ion allows he p o essionals o keep acking o he p og ess o hei
pa ien s, in his way hey can ollow up on he e olu ion o he macula degene a ion
and he p og ess o he exe cises ha he pa ien is doing.
The applica ion has e alua ions, which can be used by p o essionals o
p ope ly moni o he pa ien s. Thanks o hem i is es ablished he loca ion o he
e e ence do o he pa ien , o help hem see co ec ly, he e o e, he app allows a
pe sonalised usage. This do is he place whe e he pa ien has o look so ha he s ain
goes o ha loca ion, allowing hem o see wha hey wan wi h he pe iphe ic ision.
Besides, he app has 17 exe cises o help he pa ien ’s isual ehabili a ion.
These exe cises ha e di e en ca ego ies, om iden i ying le e s and igu es o
ecognizing pa s o he ace and e e yday objec s. Said exe cises can be
ecommended by he p o essional h ough a pe sonalized analysis using pa ien ’
clinic da a.
The aid o he p ojec is ha he pa ien , besides being able o exe cise wi h
he p o essional, also may do i on hei own able om he com o o hei house
wi hou losing hei ollow-up. Gi ing he oppo uni y o doing exe cises mo e
equen ly han he adi ional way whe e he ehabili a ion is only made in pe son.
Keywo ds:
Macula degene a ion, ehabili a o , applica ion, echnologies, And oid, AMD.
Reposi o y access:
D i e: h ps://d i e.google.com/ ile/d/1BMZCqh 4l nn FVDEH-m7-
u X_YG9nJo/ iew?usp=sha ing
Gi Hub: h ps://gi hub.com/DaniEscUCM/VisualRehabili a o .gi
VI
Resumen
La Degene ación Macula Asociada a la Edad (DMAE) es una en e medad
que p oduce una o a ias manchas en la isión que puede a ec a
signi ica i amen e en el día a día de las pe sonas que lo padecen. Es e as o no
ocula es diagnos icado mayo i a iamen e a las pe sonas de edad a anzada, y
ac ualmen e, los a amien os no se han ac ualizado a la e a digi al. Hoy en día se
u ilizan p incipalmen e p uebas y eje cicios en papel debido a que no hay su icien e
in e sión en digi aliza lo, lo cual acili a ía el a amien o a los pacien es, y po
consiguien e, el abajo de los p o esionales.
El obje i o de es e p oyec o es desa olla una aplicación que ayude an o a
las pe sonas que su en de la degene ación macula asociada a la edad como a los
p o esionales de la salud que abajan con es e ipo de pacien es. Es a aplicación
pe mi e lle a un seguimien o de los pacien es con los que el p o esional abaja, en
el que pod án segui la e olución de la degene ación macula y el p og eso de los
eje cicios que a ealizando el pacien e.
La aplicación cuen a con e aluaciones, las cuales pueden se u ilizadas po
los p o esionales pa a ealiza un seguimien o adecuado de los pacien es. G acias a
es o se puede de e mina dónde ubica el pun o de e e encia del pacien e, el cual
es di e en e según la pe sona, pa a ayuda le a e co ec amen e, po lo que la app
pe mi e un uso pe sonalizado. Dicho pun o indica el luga donde iene que ija la
is a pa a que la mancha quede en esa ubicación, pe mi iendo así e su obje i o
con la is a pe i é ica.
A su ez, la aplicación cuen a con 17 eje cicios pa a ayuda a los pacien es
en su ehabili ación isual. Es os eje cicios son de dis in as ca ego ías, desde
iden i ica le as y igu as has a econoce pa es de una ca a y obje os de la ida
co idiana. Dichos eje cicios pueden se ecomendados po el p o esional haciendo
un análisis pe sonalizado con el uso de los da os clínicos del pacien e.
La in ención del p oyec o es que el pacien e, además de pode ealiza los
eje cicios jun o con el p o esional, ambién pueda p ac ica con su able a pe sonal
desde el con o de su casa sin pe de seguimien o alguno del p og eso y de los
esul ados. Dando la opo unidad de hace eje cicios más ecuen emen e que po
la ía adicional donde la ehabili ación es e ec uada únicamen e de mane a
p esencial.
Palab as cla e
Degene ación macula , ehabili ado , aplicación, And oid, ecnologías,
DMAE.
Acceso al eposi o io:
D i e: h ps://d i e.google.com/ ile/d/1BMZCqh 4l nn FVDEH-m7-
u X_YG9nJo/ iew?usp=sha ing
Gi Hub: h ps://gi hub.com/DaniEscUCM/VisualRehabili a o .gi
VII
Index
Dedica ion ............................................................................................................... IV
Acknowledgmen ................................................................................................... IV
Abs ac ..................................................................................................................... V
Resumen .................................................................................................................. VI
Figu es index ........................................................................................................... IX
Chap e 1 – In oduc ion ....................................................................................... 10
1.1. S a e o he a ........................................................................................................ 10
1.2. Objec i e ................................................................................................................ 16
Chap e 2 - Wo kplan ............................................................................................ 18
2.1 Requi emen s ........................................................................................................... 18
2.1.1 Requi emen s o imp o ing usabili y .............................................................................. 19
2.2 So wa e modelling ................................................................................................. 19
2.3 Tasks dis ibu ion ...................................................................................................... 20
Chap e 3 - App design......................................................................................... 23
3.1 ¿Why And oid? ........................................................................................................ 24
3.2 Use Cases ................................................................................................................ 24
3.2.1. Pa ien ................................................................................................................................ 24
3.2.1.1 Pa ien Main Menu ..................................................................................................... 25
3.2.2 P o essional ......................................................................................................................... 25
3.2.2.1 P o essional Main Menu ............................................................................................. 26
3.2.2.2 P o essional Pa ien ..................................................................................................... 26
3.2.2.3 P o essional New Pa ien ............................................................................................ 26
3.2.2.4 P o essional P o ile ...................................................................................................... 28
3.2.3 E o p oo ing ...................................................................................................................... 29
3.3 Da abase ................................................................................................................. 31
3.3.1 Au hen ica ion Da abase ................................................................................................. 31
3.3.2 Real-Time Da abase .......................................................................................................... 32
Chap e 4 - Pa ien e alua ion ............................................................................. 37
4.1 D awing Do s in he co ec coo dina es ............................................................... 37
4.2 Manual inpu om p o essional.............................................................................. 38
4.3 Fi s Tes .................................................................................................................... 39
4.4 Second Tes .............................................................................................................. 40
4.5 Resul s om he es s ............................................................................................... 40
Chap e 5 - Exe cises ............................................................................................. 42
VIII
5.1 Fi s exe cise ............................................................................................................ 43
5.2 Second exe cise ..................................................................................................... 43
5.3 Thi d exe cise ........................................................................................................... 44
5.4 Fou h exe cise ........................................................................................................ 44
5.5 Fi h exe cise ............................................................................................................ 44
5.6 Six h exe cise ........................................................................................................... 44
5.7 Se en h exe cise ..................................................................................................... 44
5.8 Eigh h exe cise ........................................................................................................ 45
5.9 Nin h exe cise .......................................................................................................... 45
5.10 Ten h exe cise ....................................................................................................... 45
5.11 Ele en h exe cise .................................................................................................. 45
5.12 Twel h exe cise ..................................................................................................... 46
5.13 Thi een h exe cise ................................................................................................ 46
5.14 Fou een h exe cise .............................................................................................. 47
5.15 Fi een h exe cise .................................................................................................. 47
5.16 Six een h exe cise ................................................................................................. 47
5.17 Se en een h exe cise ........................................................................................... 48
5.18 Pause ...................................................................................................................... 48
5.19 Focus do se ings .................................................................................................. 49
5.20 Cha s in o ma ion ................................................................................................. 49
Chap e 6 - Resul s ................................................................................................. 51
6.1 Technologies used .................................................................................................. 52
6.2 API Ve sion Adap a ions ......................................................................................... 54
6.3 Sc een Size Adap a ions ......................................................................................... 55
Chap e 7 - Conclusions ....................................................................................... 57
Chap e 8 - Con ibu ions ...................................................................................... 58
8.1 Daniela Alejand a Escoba Sua ez ........................................................................ 58
8.2 Diego Alejand o Rod íguez Pe ei a ....................................................................... 59
8.3 Alba Ma ía Ma ín Puebla ....................................................................................... 62
8.4 Ma ía Núñez Conde ................................................................................................ 64
Bibliog aphy ........................................................................................................... 66
Appendix ................................................................................................................ 69
A. Figu es ....................................................................................................................... 69
IX
Figu es index
Figu e 1 Cen al Vision Tes : Amsle g id es ................................................................... 11
Figu e 2 Eyeca e: Amsle g id es ................................................................................... 12
Figu e 3 Amsle G ids: Amsle g id es ............................................................................ 13
Figu e 4 Ve ana Vision Tes .............................................................................................. 14
Figu e 5 MaculaTes e ...................................................................................................... 15
Figu e 6 Gan Cha ......................................................................................................... 22
Figu e 7 Fi s design ........................................................................................................... 23
Figu e 8 Balsamiq design .................................................................................................. 23
Figu e 9 App design .......................................................................................................... 24
Figu e 10 Ma e ial Design ecommenda ions ................................................................ 29
Figu e 11 Con i m message ............................................................................................. 30
Figu e 12 Un illed ields ..................................................................................................... 30
Figu e 13 E o message.................................................................................................... 30
Figu e 14 E o in ield ........................................................................................................ 31
Figu e 15 Fi ebase Au hen ica ion ................................................................................... 32
Figu e 16 Rela i e coo dina es ........................................................................................ 38
Figu e 17 G id example .................................................................................................... 38
Figu e 18 Calcula ed Focus ............................................................................................. 40
Figu e 19 Weigh ed calcula ed ocus............................................................................. 40
Figu e 20 Do s se ing ........................................................................................................ 49
Figu e 21 Exe cise cha .................................................................................................... 49
Figu e 22 Ci cle Image View sample .............................................................................. 53
Figu e 23 Compa ible And oid de ices .......................................................................... 54
16
ision es , is simila o he Amsle g id, bu unlike he o he applica ions
discussed abo e, i is no possible o selec which a eas he pa ien is unable o
see, because he es only checks i he pa ien sees any blu y o missing lines,
o ha he lines appea wa y o ben , so i is only possible o suspec ha he
pa ien has a isual di icul y bu is unable o do any hing else o ea i o o a
leas ell which pa s he pa ien is unable o see, unlike he o he apps ha he
es could be e alua ed by an oph halmologis .
o The applica ion does no suppo ull sc een, and i seems ha is
de eloped o only phones al hough in he Play S o es i says ha is o
all de ices, because he e was ound ha he g id layou o almos
e e y hing does no each he o al o he sc een bu only a pa o i ,
and wi h ha , all objec s a e pa ially seen. Also, he bu ons and he
images a e small, which makes i di icul o see o e en people ha do
no ha e any isual di icul ies, and wi h ha , he e is no desc ip ion o
some o he bu ons, which makes i di icul o know wha a bu on
does.
o Eye Ca e Plus is mos ly ocused on exe cises, hese exe cises a e o
di e en ypes o eye p oblems, he e a e di e en ca ego ies ha hey
o e , such as exe cises o s imula ion, lazy eye, d y eye,
accommoda ion spasm, elaxa ion, and eye muscles. The applica ion
o e s a ound 50 exe cises a he ime o w i ing, ne e heless, he
applica ion does no o e any exe cise o macula degene a ion. As
said be o e, i can only sugges ha a pa ien has macula
degene a ion bu is unable o de e mine whe e could be he pa ien ’s
ocus poin , o his eason, i is no possible o de elop any exe cise.
o Eye Ca e Plus o e s some o he exe cises wi h audio included, so he
pa ien does no ha e o ac i a e Talkback.
o The use is unable o in e ac in any o m wi h he exe cises. They we e
made o only ollow o pu sue igu es, s a ics o wi h mo emen .
o The applica ion o e s acing he pa ien p og ess, showing he p og ess
o each day o he week, and ace he p og ess o each ca ego y o
exe cises.
o Eye Ca e Plus also o e s 5 di e en aining plans. Some o hem a e
bed ime aining, d y eye aining, and lazy eye aining. All o he plans
a e paid, so because o his cos , none o hem could be es ed.
1.2. Objec i e
Gene al Objec i e: To de elop an applica ion ha allows pa ien s wi h Age- ela ed
Macula Degene a ion o ca y ou pe sonalised exe cises o imp o ing hei sigh .
Making i possible o P o essionals o keep ack o hei pa ien ’s p og ess and
gene a ing a ocus do ha will guide he pa ien s on whe e o posi ion hei eyes
while doing he exe cises o a as e ehabili a ion.
17
Speci ic Objec i es:
• G an p o essionals and pa ien s access o pa ien in o ma ion. Wi h
he de elopmen o an in e ace whe e bo h use s can see g aphs
o he p og ess made by he pa ien in each exe cise and see i he
pa ien is imp o ing.
• Tes ing he pa ien 's isual di icul ies. An ini ia ion es whe e he
ocus do is calcula ed, an algo i hm akes as inpu he coo dina es
o he blind spo s and gene a es a ocus do .
• Adap ing he ocus do and exe cises o he pa ien
• Allow he pa ien o ca y ou eye’s exe cises. Se en een di e en
exe cises o choose om all o hem wi h an inc easing le el o
di icul y. These exe cises ha e e alua ion mechanisms o making
p og ess acke s.
18
Chap e 2 - Wo kplan
This sec ion will explain he s eps ha we e aken o comple e he p ojec .
These include de ining he p oblem, planning he de elopmen o sol e he p oblem
and he de elopmen i sel .
2.1 Requi emen s
The ollowing equi emen s we e gi en by Leonela González Vides, he op ical
echnician who helped us wi h his disse a ion's op ical aspec s.
Requi emen s o Tes s:
• Se e al ini ial es s and calib a ion es s a e needed o ob ain isual da a, all
unde he supe ision o he p o essional use .
• Manual en y o he da a by he p o essional, including pe sonal da a and he
in o ma ion on blu y o blank spo s. Ha e he op ion o undo o s a o e
again.
• Tes he ci cula g ill o he igh eye, le eye and bo h, showing poin s o check
whe he he pa ien sees i , ixing hei sigh on a cen al poin . The pa ien
sepa a ed om he sc een a 10cm. Each inding do will be on sc een o 3
seconds.
• Wi h he ci cula g id, he pa ien can indica e he a eas in which hey canno
see, speci ying whe he i is he igh eye, le eye o bo h. The pa ien should
be 10cm away om he sc een. Op ion o undo o s a o e again. The es
may be epea ed
• The pa ien ’s ocus do coo dina e is calcula ed and may be changed by he
p o essional du ing he es .
• The es ’s ci cula g id is 10 cm in diame e wi h ho izon al and e ical lines
sepa a ed by 0,5 cm.
• Tes s may be epea ed o e alua e he pa ien 's pe o mance by he
p o essional in cha ge.
• The eco ds o he es s, esul s and ocus ob ained will be sa ed in he
da abase.
• Any es may be skipped i necessa y.
Requi emen s o Accoun s:
• Use s will need an accoun o access he applica ion's unc ionali ies. The
au hen ica ion will be done by email and a passwo d. I he pa ien use does
no ha e an email, i will be p o ided wi h a use name, and hey will use ha
use name and a passwo d o log in ins ead o he email and passwo d.
• The e a e wo main ypes o accoun s: P o essional and Pa ien . A P o essional
accoun has associa ed se e al pa ien s, and a Pa ien accoun has jus one
associa ed P o essional.
• A Pa ien can only be c ea ed by a p o essional, as i is needed o add
echnical in o ma ion abou he pa ien ’s sigh .
19
• The da abase will sa e he pa ien 's p og ess, wi h he exe cises ha ha e been
done and i he ocus is ac i a ed o no .
• A P o essional has access o he da a o his Pa ien s, a P o essional can also do
exe cises, and he s a is ics will be sa ed in he Pa ien ha has been p e iously
chosen.
• The p o essional may add o edi hei pa ien 's da a.
Technical Requi emen s:
• Only o able s wi h And oid ope a ing sys ems.
• The e should no be any ads.
Requi emen s o Exe cises:
• The pa ien s a is ics may be displayed using g aphics ha show success ul and
unsuccess ul esul s o each exe cise.
• Exe cises a y in di icul y, he i s ones being he easies .
• The ocus do is used o helping he pa ien s loca e he images.
• I he ocus do is ac i a ed, i will appea in he exe cises o p o ide isual aid.
• S a ic exe cises: Recognise shapes, le e s and objec s ha appea on he
sc een.
2.1.1 Requi emen s o imp o ing usabili y
The ollowing equi emen s we e made o imp o e he usabili y o he
applica ion, o people wi h low sigh o use com o ably.
All elemen s in he app allow sc een eade s. The macula degene a ion
pa ien s a e no blind; howe e , hey may wan o need o ac i a e ools such as
alkback o help hem wi h na iga ion. Also, he design o he pa ien iew has been
adap ed o hose wi h poo ision by ha ing big and sepa a ed bu ons, high con as
colou s and la ge on s.
Fo helping wi h he use o sc een eade s echnologies such as Talkback, NVDA
o JAWS, was used he a ibu e “con en desc ip ion” in all he elemen s ha we e
images ha did no con ain ex . This a ibu e is wha is going o be ead ins ead o
an image i a alkback is used.
Ou ex sizes a e con igu ed using “sp” which s ands o scalable pixels[10], his
makes i possible o use s o change he size o he ex s in he se ings o hei and oid
de ice. I hey ha e p e iously con igu ed hei able o use big le e s he app will
adap and will unc ion wi h bigge size le e s.
2.2 So wa e modelling
The Sc um amewo k was used o de elop his P ojec [11]. This amewo k aims
o c ea e a pa e n o ac ions ha will aid in he collabo a i e de elopmen o a
p ojec , especially a so wa e p ojec . The p ima y ea u e o his amewo k is ha i
needs egula submissions ha p og ess o e ime un il he p ojec is comple ed.
20
This so wa e de elopmen me hodology is ecommended o complex
p ojec s wi h a lack o well-de ined asks, such as his one. This echnique was chosen
since he asks equi ed o he p ojec we e unknown due o he eam's lack o
amilia i y wi h echnologies such as And oid S udio and wha esponsibili ies should
be conside ed.
This implemen a ion o Sc um s a ed wi h he P oduc Backlog. In his phase,
he eam was documen ed in And oid S udio [12] and in da abases compa ible wi h
And oid S udio so ha he e could be made a be e planning o he p ojec . Once
his was o e , he di e en asks we e dis ibu ed. The P oduc Backlog phase had a
du a ion o 2 mon hs.
The ollowing s ep o he amewo k was he Sp in s, which consis o egula
submissions, wi hin an in e al o one mon h. These submissions we e shown o he
u o s, and eedback was gi en so ha i could be added o he ollowing i e a ion.
In his phase, he e we e weekly mee ings whe e all he membe s alked abou hei
p og ess and helped each o he i needed.
The las phase o so wa e de elopmen p ocess consis ed in es ing he app
on op ical echnicians ha wo k wi h he inal use s and unde s and hei needs,
sugges ions o changes we e gi en, and hey we e apidly implemen ed and
uploaded so ha he inal use s could gi e us u he eedback.
In addi ion, he eam planned o c ea e mee ings e e y ime ha conside able
changes in he applica ion we e made by any o he membe s. Be o e he b anch
was me ged in o he de elop b anch, each membe , o a leas wo o hem,
inspec ed he code o he membe ha in oduced he changes. Wi h he inspec ion,
he e could be sugges ions, ecommenda ions, changes, disapp o al, o app o al. i
he eam app o ed o he changes, he changes we e app o ed, and he speci ic
b anch was me ged in o de elop. In his way, i is ensu ed ha all he changes ha
go h ough de elopmen a e unc ional and wo k wi h he es o he p ojec .
2.3 Tasks dis ibu ion
Fo dis ibu ing he asks, he eam made use o he se ice ha he ool ClickUp
p o ides [13]. The ollowing s a es we e used o dis inguish he asks: Bugs o ix, To do,
To do u gen , On P og ess, and Comple e. ClickUp has he op ion o add owne s o
he di e en asks, which was use ul, as he owne ecei ed an email i ano he pe son
had changed he ask's s a e. Pai p og amming was used o complex asks,
a anging mee ings o wo people and p og amming simul aneously.
A he beginning he main ask was he design o he applica ion, done by all
he membe s o he p ojec ha included discussions wi h he p o essional
collabo a o s. Followed by a lea ning p ocess and e sions adap a ions. Then, he
asks we e dis ibu ed mainly in h ee eams: da abase and login (Ma ía y Diego),
pa ien s’ e alua ion (Daniela), and exe cises (Alba). Howe e , his eams we e
lexible, especially in common wo k a eas (such as he da abase is used in bo h he
e alua ions and exe cises).
21
Since he beginning o he end o he p ojec , he e we e mon hly mee ings
wi h supe iso s and p o essional collabo a o s o discuss equi emen s and ques ions,
as seen in he documen a ion gi en “Ac as.pd ”. Also, i was a cons an
communica ion h ough email.
In he Figu e 6 Gan Cha ha shows he dis ibu ion o he di e en asks, as
well as he pe iod o ime in which hey we e done, as explained be o e. The
applica ion e sions shown o p ojec supe iso s and p o essionals a e ma ked wi h
ed lines.
22
Figu e 6 Gan Cha
23
Chap e 3 - App design
Leonela González Vides, he op ical echnician who assis ed us wi h he op ical
pa s o his esea ch, ga e us he i s design o he app (Figu e 7 Fi s design). This i s
p e iew o wha he app would look like, was made wi h a Powe Poin , and included
a gene al o e iew o wha bu ons we e equi ed and how he exe cises unc ioned.
F om his i s p o o ype, i was decided o use a able in ho izon al iew, because i
was needed o he ac i i ies o ha e a ce ain leng h ha was no ealis ic wi h small
po able de ices. This design was used o c ea e a mo e de ailed and complex one
using he Balsamiq wi e aming[14] ool (Figu e 8 Balsamiq design). This wi e ame was
used as a e e ence du ing he de elopmen phase; howe e , i was no ully adhe ed
o, as shown in Figu e 9 App design.
Figu e 7 Fi s design
Figu e 8 Balsamiq design
24
Figu e 9 App design
3.1 ¿Why And oid?
I was decided o de elop he app on And oid de ices because hey a e mo e
common han any o he ope a ing sys em. The da a ob ained by s a coun e [15]
shows ha mobile de ices wi h And oid as he ope a ing sys em in Ap il 2022 make
up 70,52% o he mobile ope a ing sys em ma ke sha e, and he pe cen age o
able s wi h And oid as hei ope a ing sys em in Ap il 2022 was 46,12%.
B eaking down he da a, he applica ion o be accessible o a wide ange o
use s, i needs o be compa ible wi h And oid sys ems.
3.2 Use Cases
This chap e shows he di e ences be ween he wo ypes o use s. When he
app is i s ini ialised he i s hing ha appea s is o answe i he pe son who uses he
app is a Pa ien o a P o essional as depending on hese, he menus seen will be
di e en as well as he au hen ica ion mechanism.
3.2.1. Pa ien
Pa ien s a e supe ised by a p o essional, and hey can pe o m exe cises o
check hei da a, es his o y and exe cises s a is ics. A Pa ien accoun can only be
c ea ed by a p o essional, and hey ecei e a nume ic code o be able o sign up in
he applica ion. Because o his, a pa ien accoun canno exis wi hou p o essional
supe ision. The passwo d o a Pa ien is he numbe gi en a he momen o
egis a ion. I a pa ien loses his numbe , he can ask he p o essional ha c ea ed his
accoun as he will ha e his numbe on his pa ien ’s lis .
25
As a pa ien , you ha e wo op ions o accessing he app. I i is he i s ime
you en e he app, you mus choose o egis e , whe e you will ha e o en e you
email. Once you ha e egis e ed, you can use he egula access which is o log in.
3.2.1.1 Pa ien Main Menu
Follows he gene al design o imp o e he usabili y o people wi h isual
impai men s by using big size le e s. A he op o he main menu, is he use ’s name.
Benea h he use ’s name, a e wo main bu ons. he i s one is “da a” o check he
pe sonal in o ma ion, es his o y, and exe cise esul s. The second bu on is o access
he lis o exe cises. The menu has a smalle bu on o log ou .
The colou selec ion was impo an . Mos o he ac i i ies ela ed o he pa ien
ha e a dis inc i e sepa a ion be ween ed and blue. I he pa ien is colou blind o
has simila condi ions, he colou s will be o e w i en by he ones chosen in de ice
se ings. This op ion is a ailable in all and oids since And oid Lollipop[16].
This same menu is also displayed when accessed om he p o essional menu.
The p o essional has an a ow o go back o hei main menu. They can al e , dele e,
o c ea e a new es in he da a window, in addi ion o seeing he same in o ma ion
as he pa ien .
Following he same idea o big, sepa a ed bu ons, he exe cises menu
selec ion enume a es se en een exe cises ha he pa ien can make on hei own o
wi h hei p o essional. Same does he es his o y and exe cises his o y.
The main o he pa ien egis a ion is big on s and wi h less as possible ex ,
maximizing he possibili y o independence o he pa ien . I sepa a es he p ocess by
beginning wi h asking o he nume ic code gi en by he p o essional. This code,
which is also he use passwo d, is asked wice, o a oid mis akes. Then he pa ien will
ype hei desi ed use name. The signing in is simila o he egis a ion, bu only one
page asking o he use name and passwo d. I will gi e messages in case o mis akes.
3.2.2 P o essional
P o essionals supe ise ze o o mo e Pa ien s. They can see hei pa ien ’s
in o ma ion and hei s a is ics as well as pe o m pa ien ’s exe cises This las unc ion
was implemen ed in case a P o essional wan o p ac ise some exe cises wi h hei
pa ien in he clinic. P o essionals can add new pa ien s and add he in o ma ion
needed as well as pe o ming he ision es . Once he ision es is done, he app will
p o ide a posi ion o he ocus do , and he p o essional can change i s loca ion.
As a P o essional, you ha e wo op ions o s a using he app egis e ing i you
lack an accoun o login in.
32
by Google [21]. This Au hen ica ion module allows di e en ways o au hen ica ing o
he applica ion, which allows o c ea e me hods o au hen ica e wi h email-
passwo d, phone numbe , Google accoun , Facebook, Mic oso , Gi Hub, Apple,
Twi e , Yahoo and o he s. This ea u e o ha ing mul iple ways o au hen ica e a use
may be help ul in he u u e i he app is accep ed by he public and g ows in
popula i y.
The only da a ha is a ailable o de elope s a e: he email ha was used by
he use when egis e ing, he session p o ide (email, phone, Google, Facebook,
Gi Hub), he da e in which he accoun was c ea ed, he da e o he las ime ha
he use had access o he da abase o used he applica ion, and he use ID, as
shown in Figu e 15 Fi ebase Au hen ica ion.
The use ID a ibu e gene a ed by he Au hen ica ion ool will be used o make
connec ions be ween he Au hen ica ion con aine and bo h he Fi ebase’s Real ime
Da abase and Cloud S o age, allowing o iden i y which da a belongs o a speci ic
use . Also, because o Fi ebase’s Au hen ica ion ID, no only he applica ion can sa ely
s o e he use 's passwo d bu also secu e Real ime and Cloud S o age da abases by
c ea ing ules inside he da abase o es ic he da a access o only hose use s ha
ha e logged in p io o he da a eques .
3.3.2 Real-Time Da abase
The da abase implemen ed in he app was buil using Fi ebase “Real ime”
Da abase[22]. The Fi ebase Real ime Da abase is a cloud-hos ed NoSQL da abase
wi h di e en op ions depending on he use 's needs. In his case, i was decided on
“Real ime” as i is specialised in synch onising da a in eal- ime.
Wi h Fi ebase Real ime Da abase, i can be s o ed all he da a in a JSON
o ma , which simpli ies he ask o adap ing he da a ha is al eady managed o
s o ed o a speci ic o ma . Be o e implemen ing he da abase, all he da a collec ed
inside he applica ion was s o ed in JSON o ma in a ile con ained in he phone's
in e nal s o age; so, when he ime comes o implemen he da abase, he p ocess o
adap ing o build and s o e in he da abase was a luen ask.
Thanks o he Real ime da abase, all he da a can be synch onised be ween
de ices a a easonable speed. Thanks o his, when a pa ien is doing exe cises, he
p o essional can wa ch he p ocess in Real ime. Fo example, whene e a pa ien
inished an exe cise, he p o essional in cha ge could see he esul s in a manne o
Figu e 15 Fi ebase Au hen ica ion
33
li le ime. This ea u e p opo iona e ha a pe son could change he de ice and ge
back all he in o ma ion ha has p e iously in he o he de ice. This comes in handy
when a pa ien is going o isi a p o essional. I he pa ien does no b ing wi h him his
able , he could use he p o essional’s de ices o any o he de ice ha he pa ien
could each o .
One o he mos signi ican ad an ages o he Real ime da abase is ha i is
cloud-based. This is one ea u e ha eally helps people ha a e beginning a big
p ojec because, wi h he cloud-based da abase, all he da a does no ha e o be
s o ed on a se e . This is hanks o he Real ime ha ing an SKD buil -in ha i is no
necessa y o build o main ain a se e . This is because Real ime is buil wi h Fi ebase’s
Cloud Func ions. Cloud Func ions helps un back-end code wi hou se e s, such as
es ing and unning da abase changes, egis e ing a use wi h Au hen ica ion, and
checking he secu i y ules.
The Real ime da abase, al hough i seems like i can only wo k wi h good
in e ne connec ions o enable he as eal- ime ha he p oduc appea s o o e , i
also has an excellen op imisa ion o when he use is o line o wi h no in e ne . In his
p ojec i was used one p ima y s a egy, i s , when he da a is modi ied, he changes
a e s o ed in he de ice’s in e nal s o age, o make su e he in o ma ion is ne e los
any ime o unde any condi ions, and la e , wi h he help o his ea u e, when he
de ice comes online, i can upload all he da a wi h he de ice’s in e nal s o age, o
also wi h he use o local cache on he de ice. Wi h his, when he de ice is wi h poo
connec ion, o e en wi hou connec ion, he applica ion can s ill un, s o e he da a
secu ed, and all hese wi hou losing any da a o ea u es.
Wi h he Fi ebase ool, he da a can be secu ed, using use -based secu i y. Can
wo k oge he wi h Fi ebase’s Au hen ica ion ool, o secu e all he da a s o ed in he
Real ime da abase, so no one wi h no p ope au hen ica ion can access he
in o ma ion.
The Real-Time con aine is used o s o ing all he in o ma ion abou he
pa ien ’s heal h and imp o emen s, as well as being he connec ion be ween a
p o essional and his pa ien s. The da a in his da abase is o ganised using JSON
objec s.
The da abase's p ima y key is “macula ehab-de aul - db”, which con ains he
alue o he o he i e keys: Numbe O P o essionals, Pa ien , Pa ien sNume icCodes,
and P o essional.
Numbe O P o essionals: This key- alue pai ep esen s he numbe o p o essionals ha
ha e made an accoun on he applica ion. This numbe s a s a 100.
Pa ien :
• Key: The au hen ica ion numbe gi en by Fi ebase when he pa ien accoun
is c ea ed.
• Value:
o Pa ien Nume icCode: Is he code o he pa ien o ge access o he
applica ion.
34
o P o essionalUID: is he p o essional iden i ica ion numbe ha helps ind
he p o essional in cha ge o he pa ien .
Pa ien sNume icCodes: He e he nume ic codes gene a ed by he p o essional a e
s o ed. I only s o es he codes ha ha e been gene a ed and ha a e no ye used
by a pa ien o c ea e an accoun . This helps o ind i he code in oduced by he
pa ien du ing egis a ion is co ec , ha his code was undoub edly gene a ed by a
p o essional, and ha i was al eady no being used by any o he pa ien .
P o essional: i lis s he p o essional's unique iden i ie gi en by he au hen ica o when
c ea ing he accoun . He e all he in o ma ion, ei he p o essional o pa ien in o is
s o ed. In each o hese keys:
• name: Gi en name o he p o essional
• numbe O Pa ien s: his numbe is used o c ea e he pa ien ’s nume ic code,
which helps iden i y he p o essional’s pa ien s. This ield is simila o
Nume O P o essionals and also s a s in 100.
• P o essionalNume icCode: is he alue ob ained om he
Nume O P o essionals alue. This alue is used o gene a e he pa ien ’s
nume ic code.
• uid: is he use ’s unique iden i ie gene a ed by he Fi ebase Au hen ica o .
• con ac _in o: p o essional’s con ac in o ma ion.
o email_add ess: p o essional’s email add ess.
o phone_numbe : p o essional’s phone numbe .
• pa ien s: Lis o p o essional’s pa ien s. Each pa ien is iden i ied using he
nume ic code gene a ed by he p o essional.
o Key: The nume ic code. This nume ic code is cons uc ed using: The i s
h ee numbe s a e he iden i ica ion numbe o he p o essional.
Because o his, each p o essional’s pa ien s a s wi h he same h ee
numbe s. The ollowing h ee numbe s a e made by he numbe o
pa ien s a p o essional has. The las wo numbe s a e gene a ed
andomly. These andom numbe s we e c ea ed o educe he
p obabili y o mis aking use s' IDs and a oiding using ano he use 's ID.
o Values:
▪ es s: lis o he es ealised o he pa ien wi h each key made
om he da e on which he es ook place. Then o each es ,
he e a e: he ocus calcula ed when he es was pe o med and
he esul s o each es wi h he coo dina es ha ill he s ain lis ed.
▪ a : pa ien ’s isual acui y.
▪ c : pa ien ’s isual ield.
▪ checkBox: a lis o Booleans alues o each checkbox illed ou in
he pa ien ’s o m by he p o essional. Each checkbox is a pa ien
di icul y.
▪ da e: he da e o when he pa ien ’s da a and he accoun we e
c ea ed.
▪ da e_o _bi h: pa ien ’s da e o bi h.
▪ diagnos ic: pa ien 's diagnosis, which is mos likely o be macula
degene a ion associa ed wi h age, bu i could include o he
diagnoses i he pa ien s su e om some hing else.
35
▪ exe cises:
• exe cisesIn oLis : con ains a lis o exe cises. Each exe cise
has:
o imes_comple ed: he numbe o imes an exe cise
was pe o med.
o esul sLis : con ains a lis o each exe cise a emp .
Each a emp con ains:
▪ coun e Co ec : co ec s ob ained in he
exe cise.
▪ coun e Failed: ailed esul s in he exe cise.
• exe cises_acomplished: he numbe o exe cises ha he
pa ien has comple ed, namely, he numbe o exe cises
wi h mo e co ec esul s han ailed.
▪ ocus: con ains wo alues, “ i s ” indica ing he x coo dina e o
he ocus do and “second” indica ing he y coo dina e o he
ocus do .
▪ ocusIsOn: indica es i he ocus was on o o las ime.
▪ ocus_size: he size o he ocus, is a decimal numbe be ween 1
and 2.
▪ gende : indica es masculine, eminine, o no indica ed
▪ hasAccoun : indica es i he pa ien c ea ed an accoun .
▪ da e_las _ es : da e o he las pe o med es .
▪ name: pa ien ’s i s name.
▪ i s _las Name: pa ien ’s i s las name.
▪ second_las Name: pa ien ’s second las name.
▪ obse a ions: commen s om he p o essional abou he pa ien .
▪ pa ien _nume ic_code: nume ic id c ea ed o iden i y a pa ien .
▪ pa ien _uid: unique au hen ica ion id o he pa ien ’s accoun .
This ield is gene a ed when a pa ien accoun is c ea ed, and
he numbe is gene a ed au oma ically by he Fi ebase
Au hen ica ion ool.
▪ pa ien _use name: The pa ien ’s accoun use name o e-mail.
This ield is also c ea ed when a pa ien egis e s in o he
applica ion.
▪ p o essional_name: pa ien ’s p o essional name
▪ p o essional_uid: p o essional’s au hen ica ion id. This id is
gene a ed by he Fi ebase Au hen ica ion ool.
3.3 Cloud S o age
Las and leas , Clouds S o age is mainly used o s o e la ge iles which a e no
always needed and a e leas impo an han he p ima y da a o he pa ien s and
p o essionals.
Fi ebase’s Cloud S o age is an objec s o age se ice wi h he capabili ies and
scale o Google’s Cloud [23]. In his p ojec , Cloud S o age was used o s o e hea y
36
use -gene a ed da a ha exceeds he capabili ies and unc ionali y o Fi ebase’s
Real ime da abase ha was discussed be o e.
Cloud S o age has he capabili y o obus ope a ions, whe e i can pe o m
uploads and downloads o objec s ega dless o he use ’s in e ne connec ion and
ne wo k s eng h. These obus ope a ions mean ha bo h downloads and uploads
can s op i he applica ion loses in e ne connec ion and es a he p ocess when he
in e ne is e-es ablished; also, i beha es depending on he ne wo k s eng h,
bandwid h and ype, sa ing he use s ime and cos .
Fi ebase also wo ies abou he secu i y o Cloud S o age. Because o his hey
in eg a ed Cloud S o age wi h Fi ebase Au hen ica ion. Wi h Au hen ica ion, he
p ojec was p og ammed and decla ed wi h he da abase’s ules, so he da a in
Cloud S o age can only be accessed wi h he use s ha au hen ica ed be o e. These
ules can g ow and each o he ypes o ules, o g an access no only by
Au hen ica ion bu also depending on he ilename, he size o he ile, he con en
ype, and o he ypes o me ada a.
In his p ojec , Fi ebase’s Cloud S o age is used o s o e he use -gene a ed
p o ile’s pho os, because he e a e la ge iles, much mo e han he main da a, and
a e no always accessed. These iles a e no always accessed o c ea ed because i
is no equi ed o a p o essional o upload a pho. E en i a p o essional uploads a
pho o o his p o ile, ha pho o is no equen ly downloaded o needed. In conclusion,
he iles used a e hea ie and less c i ical han he o he da a managed in he
applica ion. Fo his eason, his da a is kep in a di e en loca ion and no in he
Real ime Da abase.
37
Chap e 4 - Pa ien e alua ion
When a P o essional adds a new pa ien , a i s e alua ion may be sol ed a e
indica ing pe sonal da a. These es s a e mean o be unde p o essional supe ision.
And can only be done om he p o essional's accoun . Each es can be skipped i
he p o essional conside s i app op ia e. The e is p e ious in o ma ion abou he s ain
ha can be uploaded and wo di e en e alua ions o de e mine he blind spo o
he pa ien . Bo h he upload and he es s a e epea ed o he le eye, he igh eye
and bo h eyes.
Each a ay o coo dina es is sa ed in he da abase by he da e o c ea ion,
since he es can be epea ed h ough he sessions o see he p og ess. The inal
coo dina e o he ocus do is also sa ed and la e used in he exe cises. The ocus
es can be seen in he esume s ain in he es ’s his o y.
The e is a special p ocess o smalle de ices. I he able is unde 10 cm, he
es s won’ be able o be aken. Howe e , he manual inpu om he p o essional may
be illed wi h a smalle ci cle ha adap s o he sc een size. As o he ac i i ies ha e
layou s o sc een sizes unde 700dp.
4.1 D awing Do s in he co ec coo dina es
The ci cles a e d awn using “me ic uni s”, which is he size o each squa e in
he g id. Since objec s on he sc een a e measu ed in pixels, and i is needed in
cen ime es, i is used a unc ion o “pixels pe inches”, and om ha i is ans o med.
Also, he measu e mus be a na u al numbe , a pixel canno be pa ially used. In a
able wi h a wid h o 10 o mo e cen ime es, he me ic uni is hal a cen ime e, and
he size o he ci cle is calcula ed as wen y imes he me ic uni : [24]
𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡=[ 𝑝𝑖𝑥𝑒𝑙𝑠 𝑝𝑒𝑟 𝑖𝑛𝑐ℎ𝑒𝑠∗0.19685]
𝑠𝑖𝑧𝑒=𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡∗ 20
Fo de ices wi h a wid h unde 10 cen ime es (only he manual inpu can be
illed), he me ic uni will be he wid h o he sc een di ided by 20, so he size o he
ci cle is he wid h o he sc een. The me ic uni is loo ounded so he ci cle does no
go o -sc een. The size o he ci cle is calcula ed om he me ic uni o a oid small
a ia ions om ound numbe s ha may dealignmen elemen s in he sc een.
𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡=⌊𝑠𝑐𝑟𝑒𝑒𝑛 𝑠𝑖𝑧𝑒 𝑖𝑛 𝑝𝑖𝑥𝑒𝑙𝑠
20 ⌋
𝑠𝑖𝑧𝑒= 𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡∗ 20
Fo all he e alua ions he e a e one o se e al do s in which he pa ien 's ision
is e alua ed. Each do mus appea in he spaces be ween he lines in he g id.
Knowing ha he ci cle o mula in Ca esian coo dina es is 𝑥2+ 𝑦2= 𝑟2 [25] and he
g id is seen as a squa e g id and each space is a coo dina e in ela ion o he cen e,
hen i he p e iously men ioned coo dina es o he squa e g id a e limi ed by he
38
ci cle (Figu e 17 G id example), o each (x, y) coo dina es and adius (in his case
10) 𝑥2+ 𝑦2≤ 𝑟2.[26]
Howe e , hese coo dina es would be in he line’s in e sec ions ins ead o he
emp y space. So, he posi ions wi hin he sc een a e mo ed hal a me ic uni o he
cen e (i he coo dina e is nega i e, i will be by addi ion, and i he coo dina e is
posi i e, i will be by sub ac ion) and nei he x no y can be ze o.
The coo dina es sa ed in he da abase a e ela i e coo dina es, wi h no
ela ion o he sc een size o pixels, as shown in Figu e 16 Rela i e coo dina es.
𝑥 𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒=𝑐𝑖𝑟𝑐𝑙𝑒 𝑐𝑒𝑛𝑡𝑟𝑒+ (𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡∗ 𝑟𝑒𝑙𝑎𝑡𝑖𝑣𝑒 𝑥 𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒)±𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡
2
Obse a ion: In And oid S udio, he coo dina es sys em s a s in he op le co ne o
images, so he coo dina es in ela ion o he cen e a e opposi es o a common
Ca esian coo dina e sys em o he y-axes. So, x nega i e alues a e on he le and
y nega i e on he op. Same wi h coo dina es om he sc een.[27]
4.2 Manual inpu om p o essional
The e a e ools ha p o essionals use o measu e he blind spo o he Macula
Degene a ion pa ien . This in o ma ion can be uploaded h ough he g ided ci cle.
When he sc een is ouched, an e en is isen gi ing he coo dina es wi hin he
sc een.[28]
These coo dina es a e compa ed o possible coo dina es in he g id. In he
e en ha he coo dina es a e wi hin a squa e in he g id, a do will appea o
disappea . The e o e, each alid coo dina e is gi en a maximum and minimum x
coo dina e, he same happens wi h he y coo dina e.
𝑥 and 𝑦: coo dina es om e en .
𝑥𝑚𝑖𝑛 and 𝑥𝑚𝑎𝑥: coo dina es limi ing alid coo dina e in he x-axes o a speci ic alid
poin .
𝑦𝑚𝑖𝑛 and 𝑦𝑚𝑎𝑥: coo dina es limi ing alid coo dina es in he y-axes o a speci ic alid
poin .
𝑥𝑚𝑖𝑛 ≤𝑥 ≤ 𝑥𝑚𝑎𝑥 and 𝑦𝑚𝑖𝑛 ≤𝑦≤ 𝑦𝑚𝑎𝑥 hen he do ela ed o 𝑥𝑚𝑖𝑛,
𝑥𝑚𝑎𝑥, 𝑦𝑚𝑖𝑛 and 𝑦𝑚𝑎𝑥
is ac i a ed o deac i a ed.
Figu e 17 G id example
Figu e 16 Rela i e coo dina es
39
I he 𝑥 and 𝑦 coo dina es do no ma ch wi h any alid coo dina es, hen no
do s a e ac i a ed o deac i a ed.
The limi ing alue o each coo dina e is calcula ed om whe e he do s a e
d awn, hose a e e e enced o he cen e o he squa e in he g id. Then he
maximums and minimum a e added o sub ac ed by hal a me ic uni :
𝑥𝑚𝑖𝑛 =𝑥 𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒−𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡
2
𝑥𝑚𝑎𝑥 =𝑥 𝑐𝑜𝑜𝑟𝑑𝑖𝑛𝑎𝑡𝑒 + 𝑚𝑒𝑡𝑟𝑖𝑐 𝑢𝑛𝑖𝑡
2
The e is a epea bu on o s a o e wi h a clea g id.
4.3 Fi s Tes
Be o e each es comes an explana ion ob ained om he p o essional
Leonela González:
1. P ess anywhe e on he sc een when he do can be seen. This helps he pa ien
o concen a e on he ac i i y wi hou ha ing o ind a bu on o p ess and may
be di icul o see.
2. Co e gen ly, wi hou p essu e, he le , igh o non-eyes.
3. Place he sc een a 15 cm.
4. Look a he cen e do and do no mo e he head du ing he es .
The es consis s o a cen al do ha blinks h ee imes hen a second do ha
also blinks h ee imes. The blinking helps d ag he a en ion back o he cen e and
o hen ind he do . This will happen epea edly un il he second do appea s on all
he coo dina es. The cen e do is o ca ch he a en ion o he pa ien and he
second one is o be ound by he pa ien . The la es do ollows he alid coo dina es
wi hin he ci cula g id, om le o igh and up o down, he o de does no ma e .
In he end, he es may be epea ed.
The blinking p og am uses Ja a.lang lib a y Time s, i is mainly used wi h a o al
ime and ick in e al [29]. E e y 0.5 seconds he do (ei he he cen e o he inding
one) will appea o disappea . Then, a e 3 seconds (and a e appea ing and
disappea ing h ee imes) i will s a a ce ain ac ion. When he cen e do has inished
blinking i will s ay isible, he coo dina e o he inding do will change and will s a
blinking. A e inding do ime is up, i will disappea and ini ia e he cen e do
blinking. This occu s unless i is he inal do , in ha case he es will end and show he
bu ons o s a o e o con inue.
This es akes be ween 17 and 28 minu es, depending on how as he pa ien
inds he do .
40
4.4 Second Tes
Iden ical o he manual inpu om he p o essional, he only di e ence is ha
i is illed by he pa ien o indica e dis o ions in he g id. Be o e each es i has
ins uc ions like he i s es , also gi en by Leonela González (can be seen in documen
IndicacionesAc i idadesE aluacion.pd ):
1. Touch he spaces whe e i is wa y, blu y, dis o ed lines, missing o shadowed
a eas.
2. Co e gen ly, wi hou p essu e, he le , igh o non-eyes.
3. Place he sc een a 15 cm.
Same as he manual inpu om he p o essional, he i s ouch wi hin a alid
coo dina e ac i a es he do and a second ouch deac i a es i . The e is a epea
bu on o s a o e .
This es was o iginally mended o be done wi h an Amsle G id, bu o help he
da a compa ison wi h he i s es and he p o essional inpu , i was changed o be
also in he ci cula g id wi h Leonela González app o al.
4.5 Resul s om he es s
A e a deb ie o he esul o each es , i is calcula ed as a gene al s ain,
aking common and uncommon do s. The ocus do is ob ained by he means o he
x and y coo dina es, espec i ely, om all he di e en es s, hen he epea ed
coo dina es weigh mo e. The mo e a coo dina e appea s in di e en es s, he ocus
do is mo ed mo e close o ha coo dina e. The ocus do does no need o be a
“ alid coo dina e”, meaning i can go anywhe e wi hin he g ided ci cle.
The ocus is seen as in Figu e 18 Calcula ed Focus, he blue do ( ocus do ) is
placed in he middle o he ed do s ( esul s om es s), which means ha he do s
appea ed uni o mly in se e al es s in hose coo dina es. Howe e , i any coo dina e
appea s mo e o en han o he s, he ocus do will be mo ed o he mo e epea ed
do s, showed in Figu e 19 Weigh ed calcula ed ocus, in which he ocus do is a he
in e sec ion o wo lines. Same esume coo dina es om he es s, di e en ocus do .
Figu e 18 Calcula ed Focus
Figu e 19 Weigh ed calcula ed ocus
41
I he p o essional disag ees wi h he esul ing ocus do , i may be mo ed
whe e e he p o essional conside s app op ia e (wi hin he ci cle). The coo dina es
can be ese o he ini ial calcula ed alue.
48
his and he nex exe cise he poin s a e calcula ed his way because as hey a e he
las exe cises, hey a e he mos demanding, and pa ien s ha ha e made i o his
a ha e al eady p ac iced enough in he p e ious exe cises and migh need a
g ea e challenge.
The exe cise will inish ei he when he pa ien inds all he speci ied le e s o
he gi en ime is o e . The de aul ime is g ea e because, as explained be o e, his
exe cise is e y demanding when i comes o calcula ing he inal sco e.
This exe cise does no ha e any ocus do . Ins ead, i has wo ed guiding lines
on he op and bo om o each line which canno be disabled, o ul il he
equi emen s o he expe Leonela González, he same si ua ion occu s on he nex
exe cise.
5.17 Se en een h exe cise
The se en een h exe cise is simila o he six een h. The pa ien mus ind he
same le e s, bu his ime in la ge lines. The way o gi ing eedback is di e en ,
ins ead o changing he colou o he le e s, he whole ec angle a ound he le e
changes o a anslucid g een, so ha he use can s ill see he le e behind i , which
keeps black.
In o al hey a e 27 co ec le e s, he e o e, he use can ha e up o 27 co ec
answe s and up o an in ini e numbe o inco ec answe s.
The dis ance be ween le e s and he size o he le e s is e y small, and his
exe cise con ains mo e ex han he six een h, making i he mos di icul . Besides his,
he calcula ion o co ec and inco ec answe is e y demanding, as explained on
exe cise six een, so he use has a challenge. To help hem wi h his, he co ec
bu ons a e p opo ionally bigge han he w ong ones o gi e hem an ad an age
and no make hem eel discou aged.
5.18 Pause
The pause unc ionali y is implemen ed in all exe cises. I gi es he pa ien he
oppo uni y o s op he exe cise and hen e u n o i . All exe cises use ime s, one way
o ano he . The pause consis s in aking he emaining ime in he ime and s opping
i . The emaining ime is collec ed in e e y ick o he ime . Then when i is es a ed
he exe cise, a new ime is se wi h he emaining ime.
Also, when pause, he menu is displayed which includes he e u n o he
exe cise bu on. In his menu, i is con ained a home bu on o e u n o he selec ion
o exe cises. The e is also a se ings bu ons which sends he use o he se ings
windows whe e hey may adjus he ocus do .
F om exe cise 14 o 17, he e is no ocus do . Howe e , he pa ien s ill has
access o he pause and se ing bu ons.
49
5.19 Focus do se ings
The ocus do se ings may be changed in he pa ien main menu ( om pa ien
o p o essional home page), in each exe cise desc ip ion and in he pause menu o
he exe cises. The iew is as shown in Figu e 20 Do s se ing.
As he expe Guadalupe González eques ed, a se ing o change do size was
added. The size is be ween he o iginal size o he uni and he double i . I has a
simpli ied in e ace o wo bu ons, one o inc ease he size and he o he o dec ease
i . Using he same “d aw do ” unc ion used o ep esen he ocus do in he exe cises
o show he size, as i changes by p essing he bu ons. F om his unc ion he size is
de e mined and, ins ead o he da abase coo dina e, i is used as he cen al
coo dina e (0,0).
Finally, he e is he ac i a e/deac i a e ocus swi ch. When ac i a ed i will
appea in he exe cises as isual e e ence as explained be o e.
The se ing bu on icon was aken om Fla icon.
5.20 Cha s in o ma ion
The applica ion s o es all he in o ma ion ega ding he esul s o he ac i i ies
ha he pa ien pe o ms o e ime in he da abase. Each ime he pa ien inishes an
exe cise is sa ed he numbe o co ec answe s and he numbe o inco ec answe s
ha he pa ien go . In his p ojec , he da a ega ding he pa ien ’s esul s we e
chosen o be shown by a cha ins ead o showing a lis o each esul , as shown in
Figu e 21 Exe cise cha . The eason o his choice o implemen a ions was o imp o e
he da a isualisa ion, speeding he ime o he p o essional o ead he pa ien ’s
esul and acili a ing he isualisa ion o he pa ien s since he pa ien s ha e mo e
di icul y seeing ex .
To implemen his ea u e in o he applica ion, he e was used he Ja a lib a y
MPAnd oidCha men ioned in he echnology used sec ion. Fi s o all, is illing up he
Figu e 20 Do s se ing
Figu e 21 Exe cise cha
50
da a ha is e ie ed om he da abase. Then he da a is sepa a ed in o wo
da ase s, he i s one is he co ec answe s and he second one is he w ong answe s.
La e is o choose he colou s o each ba ep esen ing he da a, and he size o he
ba s and ex s. Fo he colou s, i was decided o ollow he Nielsen usabili y p inciple
[29], whe e he colou s ma ch he al eady ones ha could be seen in he applica ion,
blue o co ec answe s and ed o he inco ec ones. This colou dis inc ion is old
by a desc ip ion ha speci ies he colou ep esen a ion. Wi h each ba , he e is also
a numbe indica ing how many he e a e in he ba , so he use does no ha e o
sea ch wha is he numbe ha ep esen s he ba . In addi ion, a he op o e e y
g oup o wo ba s is loca ed a label desc ibing he numbe o a emp s he g oup is.
The e is also a maximum numbe o esul s ha a e shown a a ime, which was chosen
o be i e esul s, so he use is no o e loaded wi h in o ma ion, bu a he same ime,
he use can na iga e h ough he cha o sea ch o mo e and olde esul s. Also, he
cha allows o zoom in and zoom ou , and mo e ho izon ally o e ically; all hese
op ions we e implemen ed in he case he use is mo e com o able wi h a di e en
size o iew, and in his way be unable o see be e he cha .
51
Chap e 6 - Resul s
The i s e sion o he applica ion consis ed o jus he basic s uc u e, use
au hen ica ion and a s aigh o wa d exe cise. The pu pose o his e sion was o show
he u o s o his p ojec he main menus and he da abase, so hey could check i he
implemen a ion was going in he igh di ec ion. This e sion was shown on he 21 o
Feb ua y 2022. The eedback ecei ed was posi i e, and he only sugges ion made
was o change he exe cise because a he beginning o he implemen a ion, a
dynamic exe cise was made, bu hese kinds o exe cises all ou side he p ojec ’s
scope (s a ic exe cises).
The second e sion was shown o he p ojec u o s and Ma ía Guadalupe
Gonzalez. The i s e sion was shown on he 24 h o Ma ch 2022. The changes needed
we e he ollowing:
• G aphs o showing he p og ess made by he Pa ien .
• Changing he exe cise desc ip ions so ha hey’ e mo e unde s andable.
• Fixing he ansla ion e o s.
The hi d e sion was shown on he 21s o Ap il 2022. To he u o s, Ma ía
Guadalupe Gonzalez, and Da id Peña Quineche. This e sion had he p e ious
changes implemen ed and he ollowing new equi emen s we e added:
• Fixing layou disa angemen s.
• Making he app compa ible wi h small able s.
• The manual in oduc ion es should adap o he sc een.
• Fixing exe cises 16 and 17 so hey i in o small able s.
• Fixing he da abase o make i compa ible wi h old And oids.
• Making he app wo k o line, wi h he op ion o upload p og ess.
The p ojec was las es ed wi h op ical specialis s on he 9 h o May. This e sion
had all he sugges ions o he las mee ing implemen ed. They ga e us a lis o
ecommenda ions and hings ha should be changed:
• The dis ance ecommended o do he exe cises should be said a he
beginning o he exe cises.
• The ocus do should be cus omisable in size.
• The de aul ime o each exe cise should be se o 5 seconds.
• The ins uc ions o do he exe cises should be said ou loud au oma ically.
• Make cups o ea appea compulso y a leas once in exe cise 10.
These las changes we e all implemen ed. A new execu able was gene a ed
and gi en back o he app es e s, hey esponded wi h posi i e eedback and no
mo e sugges ions.
52
6.1 Technologies used
And oid S udio: And oid S udio is an In eg a ed De elopmen En i onmen (IDE) o
building apps in And oid’s ope a ing sys em apps. I was implemen ed o bo h he
de elopmen and es ing o he applica ion.[12]
Mobile able s: They we e used o ge a mo e ealis ic iew o how he app would look
like, as he And oid S udio de ice emula o has a limi ed numbe o de ices o y he
app on. So, o ge a be e idea o how he app would look, i had o be es ed he
APK on se e al de ices wi h di e en p opo ions and di e en APIs.
Balsamiq: Balsamiq is a wi e aming ool ha helped us c ea e a isual s uc u e o
he app o use as a guideline du ing de elopmen .[14]
Fi ebase: Fi ebase is a pla o m ha helps de elop applica ions. Fi ebase wo ks o
And oid bu also o iOS and Web de elopmen . In his p ojec , Fi ebase was used o
build he da abase, au hen ica e use s and s o e hei da a on Google’s cloud se e .
[19]
Gson: Gson is a Ja a se ializa ion/dese ializa ion lib a y ha helps con e Ja a
Objec s in o hei JSON ep esen a ion and om a JSON s ing in o an equi alen Ja a
Objec [32]. In his p ojec , Gson was used o simpli y he ask o passing objec s
in o ma ion in he in en s be ween ac i i ies, whe e he Ja a Objec is con e ed in o
a JSON s ing om he sou ce ac i i y and hen he JSON s ing is con e ed back in o
he Ja a Objec in he des ina ion ac i i y. Gson was also used o s o e and e ie e
da a om he da abase, because he da abase used in his p ojec wo ks wi h JSON
o ma ed objec s. And las i was used o ead and w i e in o he iles om he
de ice’s in e nal s o age. The lib a y is unde he license:
h p://www.apache.o g/licenses/LICENSE-2.0.
Lo ie: Lo ie is a Ja a lib a y ha wo ks wi h And oid, iOS, Web, and Windows o make
and show anima ions in he applica ion[33]. Lo ie pa ses anima ions made om
Adobe A e E ec s and expo s he anima ion in o a JSON and hen ende s na i ely
he anima ion on he mobile. In his p ojec , Lo ie was used o impo ee-copy igh
anima ions made by he Lo ie communi y om Lo iesFiles in o he applica ion o
make be e -sui ed anima ions o people wi h macula degene a ion, in o de o
show mo e isible e ec s o he applica ion. Lo iesFiles[8] is a web page whe e
anyone can download anima ions, mos o he anima ions a e o ee and wi hou
copy igh , bu he e is also a ma ke place o buy o sell anima ions. The lib a y is unde
he license: h p://www.apache.o g/licenses/LICENSE-2.0.
MPAnd oidCha : MPAnd oidCha is a Ja a lib a y ha wo ks wi h And oid o make
and in eg a e cha s in o he applica ion [34]. The e is also an iOS e sion o his lib a y
called Cha s [35]. In his p ojec , he MPAnd oidCha lib a y was used o make ba
cha s o display he pa ien 's exe cise esul s, in o de o show a p og ess his o y o he
pa ien . The lib a y is unde he license: h p://www.apache.o g/licenses/LICENSE-2.0.
And oid-Image-C oppe : And oid-Image-C oppe is a Ja a lib a y o And oid ha
helps o c op images selec ed by he use [36]. Wi h his lib a y, he use could zoom
an image, o a e i , selec i om mul i-sou ce, and cus omise he shape, limi s and
s yle o he image. In his p ojec , And oid-Image-C oppe was used o implemen he
53
p o ile ac i i y, whe e a use can selec a pho o om he de ice’s galle y and pe o m
any o he ac ions men ioned abo e. The lib a y is unde licence:
h p://www.apache.o g/licenses/LICENSE-2.0.
Ci cleImageView: Ci cleImageView is a Ja a lib a y o And oid o show images wi h
a ci cle shape om he o iginal bi map made om lib a ies like Picasso [37] ( ha also
was used in his p ojec ). In his applica ion, Ci cleImageView was used o show a
p o ile pic u e wi h he shape o a ci cle as show in Figu e 22 Ci cle Image View
sample, which is a common shape ha is seen in o he apps ha uses p o ile’s pho os
like h ps://www.linkedin.com. The lib a y is unde he license:
h p://www.apache.o g/licenses/LICENSE-2.0.
Picasso: Picasso is a Ja a lib a y o And oid o image downloading and caching.
Picasso handles imageView ecycle and uses minimal memo y esou ces wi h
complex image ans o ma ion and au oma ic memo y caching. In his p ojec , i was
used o download images om Fi ebase Cloud S o age [38]. The lib a y is unde he
license: h p://www.apache.o g/licenses/LICENSE-2.0.
ClickUp: ClickUp is an App ha helps o ganise asks and keep ack o hei s a e[13].
The app p o ides a collabo a i e ool o gene a ing asks, gi e hem p io i y and
assign hem o membe s o he eam.
Gi Hub: Gi Hub is an online ool wi h e sion con ol ha uses gi [39]. In his p ojec , i
was used o hos he code, sha e and wo k collabo a i ely wi h he eam o ack he
changes made in any se o iles.
Figu e 22 Ci cle Image View sample
54
6.2 API Ve sion Adap a ions
In his p ojec , i was decided o implemen an applica ion ha would be
a ailable o he mos pe cen age o people possible while main aining he
applica ion unc ionali y. The objec i e was o make possible ha he people ha has
a low income, who use old able s and phones, o y he applica ion and gi e hem
he oppo uni y o ehabili a e hei sigh . Fo his eason, he app had o go h ough
adap a ions o be unc ional o all he APIs ha we e in ended o be a ailable.
The And oid minimum API e sion selec ed o his p ojec was API 16: And oid
4.1 (Jellybean). This API e sion makes he applica ion be compa ible wi h 100% o he
de ices a ailable in May 2022. The pe cen ages o he usage o he APIs can be seen
in Figu e 23 Compa ible And oid de ices. A he same ime, he maximum API e sion
es ed eached API 33, which is he highes API ha could be es ed om he i ual
de ices a ailable in And oid S udio.
Figu e 23 Compa ible And oid de ices
The i s obs acle was o ind lib a ies ha suppo ed his ange o APIs. So, e e y
lib a y chosen and used in he applica ion wo ks wi h e e y one o he APIs in he
ange men ioned abo e.
The i s lib a y impo ed was all he Fi ebase’s ools. In hese lib a ies, i was no
un il he upda e o e sion 30.0.0, ha he i ebase-co e was emo ed om he
dependencies [40]. Wi h ha dependency dele ed, he Da abase and all he
Fi ebase ela ed ools can wo k wi h all he And oid e sions a ailable.
The second obs acle was ha om API 16 o API 18, he Ou Pu S amW i e
Ja a class does no use S anda dCha se s. Fo his eason, he use s using API below
18, when w i ing da a o a ile in he de ice’s in e nal s o age. Fo example, when
sa ing he pa ien ’s da a, he applica ion canno co ec ly sa e he La in Cha ac e s.
Because o his, he use s wi h API below 18 would no be able o co ec ly see La in
cha ac e s like ‘ñ’ o le e s wi h accen s. None heless, hey can use all he unc ions
55
ega ding da a s o age and wi h he da abase, and i hei name is w i en only in
English cha ac e s, hey would ne e no ice i .
The hi d adap a ion was made o include he Lo ie lib a y. The obs acle was
ha om API 25, Lo ie anima ions ha a e impo ed o he layou a e speci ied in he
XML ile, bu in he APIs below 25, he View has o be c ea ed inside o he class ha
ex ends AppCompac Ac i i y using he in la e unc ion. Because o his, all he layou s
ha inco po a ed a Lo ie View had o be mo ed o he Ja a class.
The ou h obs acle is ega ding he language suppo o he applica ion. The
APIs below 23 manage he Locale class and he applica ion's con igu a ion
di e en ly. Because o his, all APIs canno change he language eely. This p oblem
was sol ed using he de ice’s de aul language. Fo his eason, he use s ha execu e
he applica ion in hese e sions o And oid will ha e he de ice’s de aul language
and would no be able o change om ha . None heless, he app will be o ally
unc ional, and i he use changes he de ice language, he applica ion will change
o ha language.
Las bu no leas , he i h adap a ion was ega ding abou he layou s. The i s
p oblem was ha he layou s o API 16 we e ha ing p oblems co ec ly showing some
o he ac i i ies and Views, such as Sc ollViews and he Views ha we e using
esou ces om he d awable olde . This p oblem was only in API 16, he es o he
e sions wo ked pe ec ly wi h all he layou s and Views. To adap he applica ion o
API 16, an XML layou was c ea ed exclusi ely o API 16 o each ac i i y. The second
p oblem was wi h he bu on’s colou s. The oldes APIs, om he API 16 o API 19, we e
ha ing p oblems showing he p ope ly colou s o he bu ons, whe e he colou s we e
in pu ple o in g ey ins ead o hei o iginal colou ha mas mainly whi e, ed, and blue.
The solu ion o his p oblem was o change he View a ibu e
“and oid:backg oudTin ” o he a ibu e “app:backg oudTin ” o all he bu on’s
View a ibu es. In his way, he newes APIs can adap o he oldes ones, and he
bu on's colou s show co ec ly.
6.3 Sc een Size Adap a ions
Following he in en ion o making he applica ion o his p ojec o each as
many people as possible, he e was made ano he adap a ion. In his case, he
in en ion is o make he app wo k wi h di e en sc een sizes, e go, o make he app
wo k o mos de ices. To make his possible i was c ea ed layou s a ian s depending
on he de ice’s sc een.
The p ojec applica ion is p ima ily a ge ed owa ds able de ices because
his ype o de ice p o ides a la ge sc een ha allows showing bigge and mo e
isible layou s, helping hose pa ien s ha ha e isual di icul ies. Bu , a he same ime,
i was desi ed o each mos o he capable de ices, like bigge phones, smalle
able s, o huge able s. And because each one has a di e en sc een size, and a
di e en esolu ion, no all he layou s wo k wi h all de ices. Fo his eason, i was
necessa y o c ea e a ian s o he same layou , changing he size, he aspec , o he
layou o he Views, o make all objec s isible and co ec ly posi ioned.
56
Two di e en layou s we e made, one o mode a e/big able s and one o
smalle de ices. Depending on he de ice’s wid h, a layou would be chosen. De ices
g ea e han 700dp which a e no mally able s will choose he “ able display”, and
smalle de ices will choose he “de aul display”. The di e ences be ween hese wo
layou s a e he ex size and he pe cen ages o he guidelines ha we e used as a
guide o placing each elemen .
The Table display has an a e age on size o 40sp while he de aul display has
an a e age on size o 20sp.
57
Chap e 7 - Conclusions
The exis ence o an applica ion specialized in macula degene a ion, o
p ac ice and ehabili a e he ision wi h exe cises, is e y signi ican o pa ien s wi h
his disabili y, as hey can now ehabili a e om he com o o hei own home and
wi h a g ea e and highe equency as hey migh no be able o ha e appoin men s
wi h hei heal h p o essional e e y day. And wi h an applica ion like his hey will no
need o wai o con inue wi h hei ehabili a ion p ocess.
The app was de eloped in i s o ali y o sa is y he pa ien s necessi ies o
p og ess in hei ehabili a ion, wi h o wi hou hei p o essional supe ision. Helping
hei au onomy and le ing he p o essional in cha ge be awa e o hei p og ess.
F om he esea ch documen ed in he “S a e o A ”, i could be said wi h
ce ain y ha he e is no o he applica ion ha in eg a es a cus omisable ocus do ,
ob ained om he e alua ions. The ocus do ea u e helps he pa ien s o p og ess
quickly as hey a e cons an ly eminded o whe e o posi ion hei eyes. I is hoped
ha he ocus do ea u e, which was i s ly used in he p ojec , will be implemen ed
in u u e isual ehabili a o apps. Ano he ea u e ha makes he ehabili a o unique
is he combina ion o eye-e alua ions wi h a a ie y o ee exe cises.
The pa ien p og ess acking is an essen ial pa o hei medical appoin men s
because hei p o essional can see he e olu ion o hei pa ien s jus checking he
applica ion. The pa ien s hemsel es can see he p og ess hey a e making which can
encou age hem o p ac ice mo e and imp o e hei sigh o he poin whe e hey no
longe need o use he app.
E alua ions made wi h expe s in he ma e we e highly posi i e as hey hink
his is a g ea ool o gi e o someone wi h AMD. I was well- ecei ed due o he
ad ance made by he au oma ic calcula ed ocus do . Also, he exe cises we e said
o be p ac ical and unc ional.
In he ma e o compa ibili y, And oid is he mos common ope a ing sys em,
and his applica ion wo ks wi h 100% o he And oid de ices, as i wo ks wi h any API
equal o g ea e han 16. The ad an age o his ex eme compa ibili y is i s inclusi i y:
i allows people wi h lacking esou ces ha hey canno a o d buying a new able
o use he applica ion wi h an old able .
Wi h he help o his applica ion mo e pa ien s can be eached. Addi ionally,
hey ha e a be e ehabili a ion because hey can p ac ise doing exe cises mo e
equen ly, as hey do no equi e an appoin men wi h he p o essional, also in he
com o o doing i whene e hey wan and on hei pe sonal space.
64
8.4 Ma ía Núñez Conde
• Da abase c ea ion and connec ion wi h he and oid s udio p ojec : The
con igu a ion o a new da abase wi h Fi ebase and he adjus men s needed
on he p ojec o i o ha e access o he da abase. Gi ing access o he
da abase web page o all he eam membe s o hem o d op all da a o o
ge an o e iew o he da a managed.
• Da abase da a en y: Deploymen o CRUD ins uc ions ega ding he Real ime
da abase in which use da a is s o ed. The c ea ion o wo ja a classes:
P o essional and Pa ien , o an easy access and a da a exchange
mechanism.
• The s udy o he IDE And oid S udio o a co ec implemen a ion o he
applica ion and he s uc u e needed o he applica ion o be scalable and
easy o unde s and.
• C ea ion o he i s e sion o use iden i ica ion: Deploying he i s e sion o
use da a and passwo d managemen ha was la e upda ed o a google
au hen ica ion mechanism o be e secu i y.
• Connec ion be ween use s: Gene a ing a me hod o associa ing pa ien s o
p o essionals, making use o hei use ID.
• C ea ion o he base s uc u e o he p ojec : building o he base ac i i ies
(use page, home, se ings) and in e ac ion be ween hem.
• Adap i e layou : Making use o an adap i e layou ha wo ks wi h
pe cen ages a he han wi h pixel dimensions o p o ide a mo e
he e ogeneous display on di e en de ices.
• Design o an App logo, using Adobe Illus a o .
• Implemen a ion o a me hod o iew passwo ds while hey a e being w i en,
by adding an eye icon ha when clicked shows he passwo d in no mal
cha ac e s.
• C ea ing he pa ien -sign up o m and connec ing i o a da abase wi h he
help o a ans e objec named pa ien .
• Synch onizing he p o essional logging wi h i ebase’s au h echnology, o
adding secu i y o he app.
• Modi ica ion o he se en een h exe cise, changing he s uc u e and adding
bu ons o each le e ins ead o he old e sion whe e he ex was all oge he
in one ex iew.
• Fi s p o o ype o he p o essional page, whe e a p o essional had a lis o
pa ien s o choose om and analyse hei da a.
• C ea ing he Ac i i y o se ings, his ac i i y allows use s o deac i a e he ocus
do as well as changing he ocus do size.
• In he exe cise se en een h and six een h, adding an ex a ac i i y ha shows
he le e s ha need o be clicked in a big size, because he p e ious e sion
had he le e s ha needed o be clicked in a small size. This change was a
sugges ion made in he las s ages o es ing wi h use s.
• Taking no es du ing each mee ing and w i ing a summa y wi h he main opics
discussed, as well as he decisions made.
• Doing wo e sions o each layou , one o displays wide han 700dp and o he
o displays sho e han 700dp. The main di e ences be ween hese wo
65
layou s we e he ex size and he pe cen ages o he guidelines ha was used
as a guide.
• Following he ecommenda ions o he inal use s and adding an ac i i y
be o e he Exe cise’s lis ac i i y whe e use s a e eminded o he dis ance hey
should keep be ween hei eyes and he de ice.
• Adding some go back bu ons, o an easy na iga ion as well as implemen ing
he go back me hods needed so ha he use could no end up in an in ini e
loop.
• T ansla ion o some s ings om English o Spanish. As well as adding new s ings
o he p ojec .
• Tes ing he Da abase s uc u e, doing eques s o he Fi ebase’s da abase and
ying o in oduce unexpec ed da a o see he da abase eac ion and
helping wi h he debugging p ocess.
• Tes ing he Exe cises ha we e done by o he membe s and epo ing he bugs
ound so ha hey could do he debugging.
• Tes ing he Layou s in di e en de ices, hemes, and sizes. T ying on se e al
And oid S udio emula o s as well as on di e en de ices such as able s and
sma phones. A e he es ing, co ec ing all he layou - ela ed bugs
encoun e ed.
• Adjus ing he ex sizes o hem o i all de ices.
• Doing a Gan cha ha shows he imeline ha he p ojec ollowed and he
people esponsible o each ask.
• Gi Hub managemen . Wi h he in e ac ion o di e en b anches and e e ing
changes.
• Memo y d a ing, o ma ing and e ision o he pa s made by o he eam
membe s.
66
Bibliog aphy
[1] “Cen al Vision Tes - Aplicaciones en Google Play.”
h ps://play.google.com/s o e/apps/de ails?id=com.eyeexam es .cen al isio
n&hl=es&gl=US (accessed May 08, 2022).
[2] L. Seg e, “Amsle G id: A Tes o Macula Degene a ion and O he Vision
P oblems,” All Abou Vis., Accessed: May 26, 2022. [Online]. A ailable:
h ps://www.allabou ision.com/condi ions/amsle -g id.h m.
[3] “Eyeca e- Amsle G id Eye Tes - Aplicaciones en Google Play.”
h ps://play.google.com/s o e/apps/de ails?id=com.eyeca eapp&hl=es&gl=U
S (accessed May 08, 2022).
[4] “Amsle G ids en App S o e.” h ps://apps.apple.com/es/app/amsle -
g ids/id982604083 (accessed May 08, 2022).
[5] “Ve ana Vision Tes en App S o e.” h ps://apps.apple.com/es/app/ e ana-
ision- es /id1507459848 (accessed May 08, 2022).
[6] “Home | Macula es e .” h ps://www.macula es e .com/ (accessed May 08,
2022).
[7] “(632) MaculaTes e App Demo (English) - YouTube.”
h ps://www.you ube.com/wa ch? =1iPMNHVGXHU (accessed May 08, 2022).
[8] “Simply Visio - Aplicaciones en Google Play.”
h ps://play.google.com/s o e/apps/de ails?id=com.simply.simplyVisio&hl=es&
gl=US (accessed May 08, 2022).
[9] “Eye Exe cises & T aining Plans - Apps on Google Play.”
h ps://play.google.com/s o e/apps/de ails?id=com.eyeexam es .eyeca eplu
s&hl=en_US&gl=US (accessed May 10, 2022).
[10] “Di e encias en e PX, DP y SP en And oid | OpenWebina s.”
h ps://openwebina s.ne /blog/di e encias-en e-px-dp-y-sp-en-and oid/
(accessed May 10, 2022).
[11] “Me odología Sc um: cómo aplica el mé odo Sc um | APD.”
h ps://www.apd.es/me odologia-sc um-que-es/ (accessed May 11, 2022).
[12] “Download And oid S udio and SDK ools | And oid De elope s.”
h ps://de elope .and oid.com/s udio?hl=es&gclid=Cj0KCQjwsdiTBhD5ARIsAIp
W8CJZoJyieCwkiY_ZY _K 6jX8S Mdmj ejIHC4z2LxkmJOGO_JmbkAaAjzMEALw_
wcB&gcls c=aw.ds (accessed May 08, 2022).
[13] “Download ClickUpTM | Mobile & Desk op App, Ch ome, Alexa, Google Home.”
h ps://clickup.com/download?u m_sou ce=google&u m_medium=cpc&u m
_campaign=gs_cpc_ 3_nnc_b and_ ial_all-de ices_ is_lp_x_all-
depa men s_alpha_clickup&u m_con en =all-coun ies_kw- a ge _ ex _all-
indus ies_clickup-app&u m_ e m=e_clickup
app&gclid=Cj0KCQjwsdiTBhD5ARIsAIpW8CL0RxOsu2mp0eRRxWnC_dzT-
czY2lOiXj-28agmQAL4sPF p6gzg8kaA i EALw_wcB (accessed May 08, 2022).
67
[14] “Balsamiq Company In o — We’ e Good People, and We Ca e! | Balsamiq.”
h ps://balsamiq.com/company/#map (accessed May 08, 2022).
[15] “Table Ope a ing Sys em Ma ke Sha e Wo ldwide | S a coun e Global S a s.”
h ps://gs.s a coun e .com/os-ma ke -sha e/ able /wo ldwide (accessed May
08, 2022).
[16] “How o Tu n on Colo Blind Mode in And oid 5.0 | Tom’s Guide.”
h ps://www. omsguide.com/us/colo -blind-mode-and oid-5.0,news-
20475.h ml (accessed May 09, 2022).
[17] J. Nielsen, Usabili y Enginee ing. 1994.
[18] “Design - Ma e ial Design.” h ps://ma e ial.io/design (accessed May 10, 2022).
[19] “Fi ebase.” h ps:// i ebase.google.com/ (accessed May 08, 2022).
[20] “Fi ebase Au hen ica ion | Acceso mul ipla a o ma simple y sin cos o.”
h ps:// i ebase.google.com/p oduc s/au h?hl=es (accessed May 10, 2022).
[21] “Fi ebase Real ime Da abase | Fi ebase Documen a ion.”
h ps:// i ebase.google.com/docs/da abase?hl=es (accessed May 10, 2022).
[22] “Fi ebase Real ime Da abase | Almacena y sinc oniza da os en iempo eal.”
h ps:// i ebase.google.com/p oduc s/ eal ime-da abase?hl=es (accessed
May 10, 2022).
[23] “Cloud S o age pa a Fi ebase | Almacena y en ega con enido con acilidad.”
h ps:// i ebase.google.com/p oduc s/s o age?hl=es (accessed May 10, 2022).
[24] “Inches o cm con e e .” h ps://www.inches- o-cm.com/ (accessed May 06,
2022).
[25] “Ci cle - Wikipedia.” h ps://en.wikipedia.o g/wiki/Ci cle (accessed May 03,
2022).
[26] “Midpoin ci cle algo i hm - Wikipedia.”
h ps://en.wikipedia.o g/wiki/Midpoin _ci cle_algo i hm (accessed May 03,
2022).
[27] “How do and oid sc een coo dina es wo k? - S ack O e low.”
h ps://s acko e low.com/ques ions/11483345/how-do-and oid-sc een-
coo dina es-wo k (accessed May 07, 2022).
[28] “Mo ionE en | And oid De elope s.”
h ps://de elope .and oid.com/ e e ence/and oid/ iew/Mo ionE en
(accessed May 07, 2022).
[29] “Time | And oid De elope s.”
h ps://de elope .and oid.com/ e e ence/ja a/u il/Time (accessed May 10,
2022).
[30] “Los cua o p incipios del buen diseño de Donald No man | | Webno a Diseño
Web a Medida.” h ps://webno a.com.a /los-cua o-p incipios-del-buen-
diseno-de-donald-no man/ (accessed May 11, 2022).
[31] “MediaPlaye | And oid De elope s.”
h ps://de elope .and oid.com/ e e ence/and oid/media/MediaPlaye
68
(accessed May 10, 2022).
[32] “google/gson: A Ja a se ializa ion/dese ializa ion lib a y o con e Ja a
Objec s in o JSON and back.” h ps://gi hub.com/google/gson (accessed May
08, 2022).
[33] “ai bnb/lo ie-and oid: Rende A e E ec s anima ions na i ely on And oid and
iOS, Web, and Reac Na i e.” h ps://gi hub.com/ai bnb/lo ie-and oid
(accessed May 08, 2022).
[34] “PhilJay/MPAnd oidCha : A powe ul And oid cha iew / g aph iew
lib a y, suppo ing line- ba - pie- ada - bubble- and candles ick cha s as well
as scaling, panning and anima ions.”
h ps://gi hub.com/PhilJay/MPAnd oidCha (accessed May 08, 2022).
[35] “danielgindi/Cha s: Beau i ul cha s o iOS/ OS/OSX! The Apple side o he
c osspla o m MPAnd oidCha .” h ps://gi hub.com/danielgindi/Cha s
(accessed May 08, 2022).
[36] “A hu Hub/And oid-Image-C oppe : Image C opping Lib a y o And oid,
op imized o Came a / Galle y.” h ps://gi hub.com/A hu Hub/And oid-
Image-C oppe (accessed May 08, 2022).
[37] “hdodenho /Ci cleImageView: A ci cula ImageView o And oid.”
h ps://gi hub.com/hdodenho /Ci cleImageView (accessed May 08, 2022).
[38] “squa e/picasso: A powe ul image downloading and caching lib a y o
And oid.” h ps://gi hub.com/squa e/picasso (accessed May 08, 2022).
[39] “Gi Hub.” h ps://gi hub.com/ (accessed May 30, 2022).
[40] “Fi ebase And oid SDK Release No es | Fi ebase Documen a ion.”
h ps:// i ebase.google.com/suppo / elease-no es/and oid#2022-03-24
(accessed May 10, 2022).
69
Appendix
A. Figu es
A. I Second exe cise
A. II Thi d exe cise
A. III Fou h exe cise
A. VI Se en h exe cise
A. V Six h exe cise
A. IV Fi h exe cise
70
A. XII Thi een h exe cise
A. XI Twel h exe cise
A. IX Ten h exe cise
A. X Ele en h exe cise
A. VIII Nin h exe cise
A. VII Eigh h exe cise
71
A. XIII Fou een h exe cise
A. XIV Fi een h exe cise
A. XVI Se en een h exe cise
A. XV Six een h exe cise