Red social para el ocio nocturno
Abstract
En este Trabajo de Fin de Grado he desarrollado una aplicación para dispositivos Android que es una red social enfocada al ocio nocturno. Mi aplicación Partying out!, tiene diversas funcionalidades variadas: ofrecer información sobre los locales de ocio general, sobre eventos concretos, de qué personas van a ir a dichos eventos, comunicación entre usuarios por distintas vías: por medio de chats entre usuarios o chats-foro asociados a los locales; buscador de locales y eventos, poder emitir publicaciones y visualizar la de los usuarios a los que sigues, ver a qué lugares han ido tus amigos, poder compartir eventos, entre otras.
Full text
T abajo de Fin de G ado en Ingenie
´
ıa In o m´
a ica
Facul ad de In o m´
a ica
Uni e sidad Complu ense de Mad id
Red social pa a el ocio noc u no
Social ne wo k o nigh leisu e
Au o :
Ma io Jim´
enez Gu i´
e ez
P o eso di ec o :
I ´
an Ga c
´
ıa-Maga i˜
no Ga c
´
ıa
Doble G ado en Ingenie
´
ıa In o m´
a ica - Ma em´
a icas
Cu so 2021-2022
2
3
Resumen
En es e T abajo de Fin de G ado he desa ollado una aplicaci´on pa a disposi i os And oid que es
una ed social en ocada al ocio noc u no. Mi aplicaci´on, Pa ying ou !, iene di e sas uncionalidades
a iadas: o ece in o maci´on sob e los locales de ocio gene al, sob e e en os conc e os, de qu´e pe sonas
an a i a dichos e en os, comunicaci´on en e usua ios po dis in as ´ıas: po medio de cha s en e
usua ios o cha s- o o asociados a los locales; buscado de locales y e en os, pode emi i publicaciones
y isualiza la de los usua ios a los que sigues, e a qu´e luga es han ido us amigos, pode compa i
e en os, en e o as.
Palab as cla e
And oid, il o colabo a i o, aplicaciones m´o iles, Ja a, Py hon, PHP.
Abs ac
In his End o Deg ee P ojec I ha e de eloped an applica ion o And oid de ices, which is a social
ne wo k ocused on nigh leisu e. My applica ion, Pa ying ou !, has e y di e se unc ionali ies: o
o e in o ma ion abou clubs, conc e e e en s, who a e going o hose e en s, communica ion be ween
use s in a a ie y o ways: by cha s be ween use s o cha - o um linked o hose clubs; sea ch engines
o e en s and clubs, o be able o sha e publica ions and isualize you ollowed ones’, o see which
places you iends ha e gone o, o sha e e en s, among o he s.
Keywo ds
And oid, collabo a i e il e ing, mobile applica ions, Ja a, Py hon, PHP.
4
´
Indice gene al
1. In oducci´on 7
2. Es ado del a e 11
2.1. An´alisisdelacompe encia................................... 11
2.1.1. Jaleo........................................... 11
2.1.2. Bcle e app ....................................... 11
2.1.3. Ins ag am........................................ 12
2.1.4. Mee up ......................................... 12
2.1.5. Fe e .......................................... 12
2.1.6. Exceed ......................................... 14
2.1.7. E en b i e........................................ 14
2.2. Modelodenegocio ....................................... 15
3. Desa ollo de la app 17
3.1. Tecnolog´ıasusadas....................................... 17
3.1.1. And oidS udio..................................... 17
3.1.2. Ja a........................................... 17
3.1.3. Gi hub.......................................... 18
3.1.4. MySQL ......................................... 18
3.1.5. Xampp ......................................... 18
3.1.6. Balsamiq ........................................ 18
3.1.7. La ex .......................................... 18
3.1.8. PHP........................................... 18
3.1.9. Py hon ......................................... 19
3.2. Casosdeuso .......................................... 19
3.3. Modelodeda os ........................................ 29
3.3.1. Diag ama en idad- elaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3.3.2. Implemen aci´on..................................... 30
3.4. A qui ec u a .......................................... 33
3.4.1. Pa ´onSingle on .................................... 33
3.4.2. Modelo Vis a P esen ado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.4.3. Pa ´onViewHolde .................................. 35
3.5. Dise˜no y pan allas de la aplicaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.5.1. Pan alla de login y egis a se . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.5.2. Pan alladeinicio.................................... 36
3.5.3. Pan alladelocales................................... 37
3.5.4. P´aginadepe il..................................... 38
3.5.5. P´agina de publicaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5
6´
INDICE GENERAL
3.5.6. P´agina de e en o conc e o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.5.7. P´agina de cha s de usua io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.5.8. P´agina de cha de usua io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.5.9. P´agina de cha de local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.5.10. Pan alla de compa i publicaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5.11. Pan alla de c ea cha de usua io . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.5.12. Pan alla de c ea cha de local . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.5.13.Pan alladebuscado .................................. 47
3.5.14. Men´u de na egaci´on in e io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.6. Mo o de ecomendaci´on.................................... 48
3.6.1. Recomendaci´on basada en popula idad . . . . . . . . . . . . . . . . . . . . . . . . 50
3.6.2. Fil ocolabo a i o................................... 50
4. In e acci´on con usua ios 61
4.1. Encues a p e ia al desa ollo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
4.2. Encues a de expe iencias de usua io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5. Conclusiones y u u o 65
5.1. Conclusiones .......................................... 65
5.2. T abajo u u o ......................................... 66
A. Anexo 71
A.1. AnexoI: cues iona io gene al . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
A.2. AnexoII: cues iona io de usabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
A.3. AnexoIII: P o o ipos en Balsamiq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Cap´ı ulo 1
In oducci´on
Mo i aci´on
G acias a los a ances en la comunicaci´on y ecnolog´ıa hemos sido es igos de la eno me e oluci´on
que ha supues o la i upci´on de los el´e onos m´o iles en nues as idas. [6] M´as del 70 % de la
poblaci´on mundial en 2015 en´ıa acceso a es e ipo de ecnolog´ıa. En conc e o, en la ac ualidad damos
po sen adas odas las uncionalidades que nos o ecen los sma phones o el´e onos in eligen es. Desde
pode comunica nos de mane a ins an ´anea de mul i ud de o mas po odo el globo has a pode usa
el m´o il como gps, en e muchas o as. [10]
Dicha e oluci´on no pod ´ıa se explicada sin el concep o de aplicaciones m´o iles. Es as aplicaciones
son accesibles desde p ´ac icamen e de la o alidad de los sma phones mode nos. En es e sen ido,
podemos di e encia dos me cados de aplicaciones mayo i a ios: Google Play y Apple S o e, que o ecen
aplicaciones m´o iles pa a disposi i os con sis emas ope a i os And oid e iOS espec i amen e.
Algunos da os sob e dicho me cado a ene cuen a son: en el p ime cua o de 2021 los usua ios de
And oid pod´ıan elegi en e 3.48 millones de apps. Po o o lado, en la Apple App S o e 2.22 millones
de apps. 1De hecho, emos que en la Apple App S o e el n´ume o de aplicaciones o ecido no pa a de
c ece , es o con as a con un es udio que a i maba que exis ´ıan ap oximadamen e 800000 aplicaciones
en 2013,[18] es deci , hay un c ecimien o muy signi ica i o del n´ume o de aplicaciones. 2Seg´un un
es udio el uso medio dia io del m´o il en homb es es de 166.78 minu os y en muje es de 154.26.[2]
Po o a pa e, debemos ene en cuen a que la pandemia Co id-19 ha enido consecuencias muy
impo an es en es e sec o pues o que ha acele ado cie as endencias que se e´ıan obse ando en los
a˜nos an e io es, ales como el aumen o del uso de aplicaciones m´o iles, la au oma izaci´on de cie as
a eas, el uso de apps pa a pode con a es a los e ec os noci os que ha enido en nues as idas,
la c ecien e exposici´on a las edes sociales, el ele abajo en e muchos o os.[13] Al mismo iempo, a
pesa de la pandemia, emos como la gen e empieza a ol e a cie as ac i idades sociales que du an e
la pandemia es aban amenazadas. En es e sen ido, debemos des aca la eape u a de los locales de
ocio noc u no, mayo con ac o social en luga es p´ublicos o casas en e una la ga lis a de aspec os.
Nues a mo i aci´on es pode o ece una aplicaci´on que o ezca in o maci´on de p ime a mano sob e
es os e en os sociales y adem´as pode hace uso de dicha app pa a pode socializa y i i expe iencias
comple amen e di e en es con pe sonas a ines que elijamos, e i ando as´ı algunos de los p oblemas que
el mundo de la noche iene, como la poca in o maci´on de p ecios o cie as conduc as.
[11]
1h ps://www.s a is a.com/s a is ics/276623/numbe -o -apps-a ailable-in-leading-app-s o es/
2h ps://www.s a is a.com/s a is ics/779768/numbe -o -a ailable-apps-in- he-apple-app-s o e-qua e /
7
8CAP´
ITULO 1. INTRODUCCI ´
ON
Obje i os
Nues o obje i o es pode desa olla una aplicaci´on And oid que pe mi a o ece uncionalidades
has a aho a in´edi as en conjun o con la ambici´on de pode conec a pe sonas de mane a ´ısica y a
a ´es de dicha he amien a pode elimina la ba e a social que se ha o iginado po di e sos ac o es
ales como la pandemia, el c ecien e uso de edes sociales como bu buja y no como una ´ıa pa a conoce
nue as pe sonas. Algunas de es as uncionalidades son:
1. O ece los mejo es luga es pe sonalizados seg´un las p e e encias del usua io pa a pode desa o-
lla su ida social y i i nue as expe iencias.
2. Pode in e ac ua con amigos de mane a di ec a po medio de cha s y de mane a indi ec a
publicando los e en os a los que uno asis e, los luga es a los que ha ido o publicaciones en las
que se compa e con enido.
3. Tene un pe il a modo de iden idad i ual en el que los dem´as puedan e publicaciones, as´ı
como los e en os y luga es donde se ha es ado.
4. Tene cha s- o o asociados al local conc e o donde se pueda in e ac ua con odos los usua ios
que ayan a i a dicho e en o.
5. Pode cha ea con amigos de mane a indi idual o po medio de g upos.
6. Pode o ece e en os en los que se pueda in i a a amigos selec i amen e.
Me odolog´ıa
Se ha seguido una me odolog´ıa ´agil p opia en la que el abajo se iba aumen ando de mane a
inc emen al. Se han cogido aspec os de Sc um [4] pe o sob e odo de KanBan [1] al di idi las a eas
seg´un ´ambi o y aumen ando unciones del p oyec o. En las p ime as i e acciones me cen ´e en la
de inici´on de la idea y en gene a p o o ipos de la aplicaci´on, pos e io men e, una ez la idea es aba
bien de inida, me cen ´e en la implemen aci´on donde se desglos´o la pa e de la ges i´on de la base
de da os con el desa ollo en And oid. Pos e io men e, es as se unie on y se a˜nadie on unciones de
mane a inc emen al.
Es uc u a
Es e abajo de in de g ado es a compues o po la p esen e memo ia y po el c´odigo empleado,
as´ı como la ges i´on de la base de da os. El c´odigo del p oyec o se encuen a en h ps://gi hub.com/
mjgma io/ gin o1.gi . La memo ia se o ganiza en 5 cap´ı ulos.En el cap´ı ulo 1 se p esen a el ema,
las mo i aciones a la ealizaci´on de dicho abajo, los obje i os impues os, la me odolog´ıa empleada y
la es uc u a gene al de la memo ia. En el cap´ı ulo 2 un an´alisis de la compe encia de las aplicaciones
compe ido as que o ecen unciones simila es, con un es udio de i ado de es e, as´ı como un modelo
de negocio esumido. En el cap´ı ulo 3 una desc ipci´on de las ecnolog´ıas empleadas y las azones
de su uso, Se p esen an los casos de uso m´as impo an es, pa ones de dise˜no, diag amas de clase,
modelos de da os, a qui ec u a y desc ipci´on de c´omo unciona el sis ema de ecomendaciones. En el
cap´ı ulo 4 se in e ac ´ua con los usua ios en las di e sas i e acciones del desa ollo pa a p egun a le
sob e la aplicaci´on. En el cap´ı ulo 5 las conclusiones del p oyec o y abajos u u os de mejo a.
In oduc ion
Thanks o he ad ances in echnology and communica ion we ha e been wi nesses o he g ea
e olu ion ha he i up ion o mobile phones has supposed o ou li es. [6] Mo e han 70 % o he
wo ld popula ion has access o his so o echnology. In pa icula , nowadays, we ake o g an ed
cu ing-edge unc ionali ies ha sma phones o e us. F om communica ing in ins an aneously in a
a ie y o ways o use i as a GPS, among o he uses. [10]
Such e olu ion could no be explained wi hou he concep o mobile apps. These applica ions a e
accesible by p ac ically he majo i y o mode n sma phones. In his sense, we can di e en ia e wo
ma ke s: Google Play and Apple S o e, which o e mobile apps o de ices wi h ope a i e sys ems
And oid and iOS, espec i ely.
Some da a abou ha ma ke o be aken in o accoun a e: in he i s qua e o 2021 And oid use s
could choose be ween 3.48 million o apps. On he o he hand, in Apple app 2.22 million o apps we e
o e ed.3In ac , we see ha he numbe o apps in Apple App S o e does no s op g owing, acco ding
o a s udy he numbe o apps ha exis ed was abou 800000 in 2013,[18] in o he wo ds, he e is a
e y sign ican g ow h in he numbe o apps.4Acco ding o an s udy, he a e age daily use in male
people was 166.78 minu es by day and in emale 154.26. [2]
On op o ha , we ha e o conside ha Co id-19 has had e y impo an consequences in his
sec o because i has speed up some o he endencies ha we e being obse ed on p e ious yea s, such
as he g owing use o mobile apps, au oma iza ion o ce ain asks, he use o apps o o se he e ec s
he pandemic has had o ou li es, he g owing numbe o hou s o exposi ion o social ne wo ks, he
emo e wo king, among o he s. [13] Besides, despi e he pandemic we see how people a e s a ing o
come back o social ac i i ies ha du ing he pandemic we e h ea ened, in connec ion wi h ha , we
should highligh somes aspec s such as he eco e y o clubs, g ea e social con ac s in public places
and houses.
Ou mo i a ion is o be able o o e an app ha shows upda ed in o ma ion abou social e en s and
o make use o his app o socialize and li e comple ely di e en expe iences wi h a ine people ha
we choose, a oiding he p oblems ha nigh wo ld poses, such as he lack o in o ma ion o p ices o
some beha iou s.
[11]
Objec i es
Ou aim is o be able o o e an And oid applica ion ha allow some unc ionali ies since now
un eleased as a whole, wi h he ambi ion o connec people ace- o- ace and by his pla o m dele e he
social dis ance ha has been o igina ed by di e en cause such as he pandemic, he usage o social
ne wo ks as a bubble and no as a way o mee new people. Some o hese unc ionali ies a e:
3h ps://www.s a is a.com/s a is ics/779768/numbe -o -a ailable-apps-in- he-apple-app-s o e-qua e /
4h ps://www.s a is a.com/s a is ics/779768/numbe -o -a ailable-apps-in- he-apple-app-s o e-qua e /
9
16 CAP´
ITULO 2. ESTADO DEL ARTE
Figu a 2.6: Exceed
(a) (b)
Figu a 2.7: E en b i e
pode lle a a cabo a eas de man enimien o y ampliaci´on del so wa e. A la ez, se ealiza ´an cam-
pa˜nas publici a ias del p oduc o po In e ne , p ime o en oc´andonos en un nicho conc e o, el p´ublico
jo en, pa a, pos e io men e, expandi el ango de edad.
Cap´ı ulo 3
Desa ollo de la app
3.1. Tecnolog´ıas usadas
En es e apa ado se exponen las he amien as empleadas en el desa ollo de Pa yingOu !, indicando
el po qu´e de su uso.
3.1.1. And oid S udio
And oid S udio [7]es el en o no de desa ollo po excelencia pa a el desa ollo de aplicaciones en
And oid.
Es a he amien a disponible pa a odos los sis emas ope a i os m´as usados: Windows, MacOs o Linux,
o ece in inidad de acilidades a la ho a del dise˜no de los documen os xml, de esc i u a de c´odigo y
he amien as Lin pa a de ec a p oblemas de endimien o o usabilidad. 1Asimismo, se eligi´o es e
sis ema ope a i o pues o que con cla idad es el m´as usado con 2500 millones de disposi i os And oid
en 2019. 2
3.1.2. Ja a
Ac ualmen e son dos los lenguajes pa a aplicaciones en And oid m´as empleados: Ja a y Ko lin. Me
decan ´e po el uso de Ja a debido a que es compa ible con la mayo ia de disposi i os And oid y po
los conocimien os adqui idos du an e la ca e a y la amilia idad con ´el. 3 4
C eado po James Gosling y come cializado po p ime a ez en 1995 po Sun Myc osys ems.5Sus
aplicaciones son compiladas a by ecode, pudi´endose ejecu a en cualquie m´aquina i ual de Ja a sin
impo a la a qui ec u a. Es un lenguaje de p og amaci´on o ien ado a obje os que iene di e en es
aspec os que lo di e encian: posee un ecolec o de basu a y es independien e de la pla a o ma en la
que se ejecu a.6
Adem´as, pa a el desa ollo de nues a aplicaci´on se combina con XML pa a el aspec o isual de la
aplicaci´on. 7
1h ps://de elope .and oid.com/s udio/ eleases/index.h ml
2h ps://www. he e ge.com/2019/5/7/18528297/google-io-2019-and oid-de ices-play-s o e- o al-numbe -s a is ic-keyno e
3h ps://openwebina s.ne /blog/ko lin- s-ja a/
4h ps://en.wikipedia.o g/wiki/Ja a_(p og amming_language)
5h ps://web.a chi e.o g/web/20070127143602/h p:// oday.ja a.ne /jag/old/g een//
6h ps://www.o acle.com/ja a/ echnologies/
7h ps://www. i5.com.a /wiki/Que_es_XML.php
17
18 CAP´
ITULO 3. DESARROLLO DE LA APP
En gene al, Ja a acili a la implemen aci´on de pa ones a qui ec ´onicos y una amplia eusabilidad de
clases pa a p oyec os de ´ambi o muy di e en e.
3.1.3. Gi hub
Reposi o io que si e pa a el con ol de e siones del p oyec o. El p oyec o es indi idual; sin em-
ba go, puede que se amplie en el u u o y Gi Hub es la mejo pla a o ma pa a desa olla un p oyec o
conjun o.8
El enlace al c´odigo del p oyec o es: h ps://gi hub.com/mjgma io/ gin o1.gi .
3.1.4. MySQL
Sis ema de bases de da os elacionales desa ollado bajo licencia GPL (Gene al Public License) po
O acle. Es conside ado como la base de da os de c´odigo abie o m´as popula del mundo 9 10. Se usa
un lenguaje de pe iciones es uc u ado (SQL), con ope aciones CRUD (c ea e, ead, upda e, dele e).
Se emplea dicho sis ema po su escalabilidad, adem´as de po la adap aci´on a los da os que maneja
Pa yingOu !
3.1.5. Xampp
Xampp 11 es un paque e de so wa e lib e que in eg a el sis ema de bases de da os MySQL, el
se ido Apache e in ´e p e es pa a lenguajes de sc ip PHP y Pe l. Dis ibuido median e licencia
GNU. Se usa po su acilidad de uso y compa ibilidad con nues a aplicaci´on
3.1.6. Balsamiq
Balsamiq 12 es usado pa a el dise˜no de p o o ipos, es eo de in e aces y dise˜no de la aplicaci´on.
Se p esen a en el anexo A.3 la imagen de algunos p o o ipos ealizados en la ase de dise˜no inicial con
Balsamiq.
3.1.7. La ex
Sis ema de composici´on de ex o o mado po ´o denes cons uidas a pa i de comandos TeX. Usado
pa a la edacci´on de memo ia debido al amplio desa ollo de paque es que amplian la uncionalidad
con g an acilidad y al ajus e de la co eci´on con el o ma o del documen o.
3.1.8. PHP
Lenguaje de p og amaci´on usado pa a la comunicaci´on con la base de da os. Las en ajas que
iene son a ias: se puede u iliza con cualquie se ido , sopo a una g an can idad de bases de da os
di e en es y b inda sopo e comple o pa a la comunicaci´on con o os p o ocolos. 13
A su ez, es un lenguaje obus o que nos si e pa a p e eni SQL injec ion con el obje o de ene
consul as a la base de da os segu a. 14
8h ps://docs.gi hub.com/es/ eposi o ies/managing-you - eposi o ys-se ings-and- ea u es/
managing- eposi o y-se ings/managing- eams-and-people-wi h-access- o-you - eposi o y
9h ps://db-engines.com/en/ anking
10h ps://es.wikipedia.o g/wiki/MySQL
11hh ps://www.apache iends.o g/es/index.h ml
12h ps://balsamiq.com/
13h ps:// ecnologias.anexia.es/blog/cuando-y-po -que-u iliza -php#.YmXOVdpBxD8
14h ps://www.baulphp.com/p e eni -la-inyeccion-sql-en-php-ejemplo-comple o/
3.2. CASOS DE USO 19
3.1.9. Py hon
Py hon [3] es el lenguaje de p og amaci´on po excelencia pa a el machine lea ning y aplicaciones de
in eligencia a i icial. En la ac ualidad, es uno de los m´as popula es debido a la c ecien e impo ancia
del big da a y la in eligencia a i icial.
Es un lenguaje de al o ni el in e p e ado cuya iloso ´ıa hace hincapi´e en la legibilidad de su c´odigo.
Usa ipado din´amico y con eo de e e encias pa a la ges i´on de memo ia.
En esa misma l´ınea, des aca po su sencillez y po la can idad de lib e ´ıas de sopo e con las que
cuen a. En conc e o, des acan NumPy [8], pa a el c´alculo con ma ices y ec o es, Sciki -lea n [12],
biblio eca que implemen a algo i mos de ap endizaje au om´a ico, o Pandas, que pe mi e el an´alisis de
da os a a ´es de se ies y da a ames, en e muchas o as.
Es e se usa jun o la he amien a bo le.py pa a pode ejecu a lo en el se ido y pode se usado como
una API(applica ion p og amming in e ace). 15
3.2. Casos de uso
Se p esen an los casos de uso de la aplicaci´on. Po lo gene al, es os cons an de una desc ipci´on,
p econdici´on (que indica las condiciones que se deben cumpli an es de lle a se a cabo), la secuencia
no mal (que indica c´omo se desa olla dicho caso de uso), la pos condici´on (condici´on que se cumple a
pos e io i despu´es de ealiza se), excepciones (p oducidas en pasos de la secuencia no mal que pueden
implica la no ealizaci´on del caso de uso) y comen a ios. En odos los casos de uso, excep o en el de
Regis a usua io e Inicia sesi´on se omi e que el usua io ha iniciado sesi´on en la secci´on de p econdici´on.
Caso de uso Regis a usua io
Desc ipci´on Un usua io sin cuen a se egis a y acaba eniendo cuen a
P econdici´on N&A
Secuencia no mal
1 El usua io iene abie a la aplicaci´on
2 El usua io selecciona la opci´on de egis a se
3 El usua io in oduce la in o maci´on solici ada pa a
cada campo
4 El usua io pulsa egis a
5 Se alidan que los da os son co ec os y que se cum-
plen las condiciones de unicidad de la base de da os
Pos condici´on El usua io queda egis ado con la in o maci´on p opo cionada. Se gua da
en la base de da os su e-mail, con ase˜na, nomb e, en e o as. Se le a anza
al usua io a su p´agina de inicio y puede inicia sesi´on en la app
Excepciones
Paso Acci´on
5 Da os con o ma o e ´oneo(de cualquie pa ´ame o)
5 Campos obliga o ios sin ellena
5 No coincide el campo con ase˜na con epe i con a-
se˜na
5 El nomb e, co eo o el´e ono ya es ´an egis ados en
la base de da os
Comen a ios N&A
15h ps://bo lepy.o g/docs/de /
20 CAP´
ITULO 3. DESARROLLO DE LA APP
Caso de uso Inicia sesi´on
Desc ipci´on Inicia sesi´on
P econdici´on El usua io iene una cuen a egis ada
Secuencia no mal
1 El usua io ab e la aplicaci´on
2 El usua io selecciona la opci´on de inicia sesi´on
3 El usua io in oduce el usua io(el nomb e) y la con-
ase˜na
4 El usua io pulsa login
5 El sis ema comp ueba que los da os es ´an bien o -
ma eados
6 El sis ema comp ueba que los da os ya es ´an egis-
ados en la base de da os y son co ec os
Pos condici´on El usua io ha iniciado la sesi´on, es anspo ado a la pan alla de inicio
Excepciones
Paso Acci´on
5 Los da os no es ´an bien o ma eados
5 Fal a alg´un campo po ellena
6 El pa usua io/con ase˜na no es ´a en la base de da os
Comen a ios N&A
Caso de uso Ve pan alla p incipal
Desc ipci´on El usua io e la pan alla p incipal, en la que se encuen an a ias lis as.
Lis as
1 lis a de luga es ecomendados
2 luga es en los que ´el ha es ado, con la echa en la que es u o
3 luga es d´onde han es ado sus amigos
4 lis a de publicaciones de seguidos
P econdici´on
Secuencia no mal
1 El usua io p esiona el bo ´on de la pan alla p incipal o inicia la
app
2 El sis ema le mues a la pan alla p incipal con las lis as an e io es
y el men´u de na egaci´on
Pos condici´on El usua io e la pan alla p incipal
Excepciones
Comen a ios N&A
3.2. CASOS DE USO 21
Caso de uso Ve local
Desc ipci´on El usua io pulsa en el bo ´on de un local y le apa ece oda su in o maci´on y
unciones asociadas .
Funciones
1 Nomb e del local
2 Desc ipci´on del local
3 Imagen del local
4 Lis a de elaciones asociados al local
5 Lis a de amigos que han ido
6 Lis a de cha s asociados al local
7 Lis a de e en os asociados al local
P econdici´on
Secuencia no mal
1 El usua io pulsa el pe il del local(po la pan alla de
inicio o de pe iles) o b´usqueda
2 El sis ema le mues a el pe il del local
Pos condici´on El usua io isualiza el pe il del local
Comen a ios N&A
Caso de uso Visualiza el pe il de un usua io (pa e de publicaciones)
Desc ipci´on El usua io isualiza el pe il(pa e de publicaciones) de o o usua io
P econdici´on
Secuencia no mal
1 El usua io pulsa el pe il de un usua io(en pan alla p incipal, cha ,
en e o as) o bo ´on publicaciones en pe il
2 Se mues an las publicaciones del usua io y bo ones de luga-
es,seguidos y seguido es
Pos condici´on El usua io isualiza las publicaciones del usua io y bo ones de luga-
es,seguidos y seguido es
Excepciones
Comen a ios N&A
Caso de uso Pun ua el local
Desc ipci´on El usua io pun ´ua el local con una escala del 1 al 10
P econdici´on El usua io no ha o ado al mismo local
Secuencia no mal
1 Pulsa el bo ´on pun ua el local
2 El usua io in oduce el alo de la pun uaci´on
3 El usua io pulsa el bo ´on de inaliza la pun uaci´on
4 El sis ema egis a la pun uaci´on del usua io sob e el local
Pos condici´on La o aci´on queda egis ada en el sis ema
Excepciones
Paso Acci´on
3 El usua io ya ha pun uado el local
3 El o ma o in oducido no es ´alido
Comen a ios N&A
22 CAP´
ITULO 3. DESARROLLO DE LA APP
Caso de uso Visualiza los seguido es de un usua io
Desc ipci´on El usua io isualiza los seguido es de o o usua io
P econdici´on
Secuencia no mal
1 El usua io pulsa el bo ´on seguido es en el pe il de
un usua io
2 Se mues an los seguido es del usua io
Pos condici´on El usua io isualiza los seguido es del usua io y bo ones de luga es,seguidos
y publicaciones
Excepciones
Comen a ios N&A
Caso de uso Visualiza los seguidos de un usua io
Desc ipci´on El usua io isualiza los seguidos de o o usua io
P econdici´on
Secuencia no mal 1 El usua io pulsa el bo ´on seguidos en el pe il de un usua io
2 Se mues an los seguidos del usua io
Pos condici´on El usua io isualiza los seguidos del usua io y bo ones de luga es,seguidos
y publicaciones
Excepciones
Comen a ios N&A
Caso de uso Visualiza los locales donde ha es ado un usua io
Desc ipci´on El usua io isualiza los locales donde ha es ado un usua io
P econdici´on
Secuencia no mal 1 El usua io pulsa el bo ´on de luga es en el pe il de un usua io
2 Se mues an los locales donde ha es ado el usua io
Pos condici´on El usua io isualiza los locales donde ha es ado el usua io y co espondien e
bo ones del pe il.
Excepciones
Comen a ios N&A
Caso de uso Pa icipa en el cha de un local
Desc ipci´on Al usua io se le mues a la opci´on de pode pa icipa en el cha del local
P econdici´on El usua io no es ´a egis ado en dicho cha del local
Secuencia no mal
1 El usua io pulsa el cha de un local(desde la pan alla del local)
2 Se mues a la opci´on de pa icipa en el cha de un local
3 Si da a no, el usua io uel e a la pan alla del local
3 Si da a acep a , el usua io accede al cha del local
Pos condici´on En caso de s´ı, el usua io isualiza el cha y queda egis ado en el cha del
local
Excepciones
Comen a ios N&A
3.2. CASOS DE USO 23
Caso de uso En ia mensaje en el cha de un local
Desc ipci´on El usua io en ´ıa mensajes
P econdici´on El usua io es ´a dado de al a en el cha de un local
Secuencia no mal
1 El usua io eclea el mensaje
2 El usua io pulsa el bo ´on de en ia
3 El sis ema alida que odo es ´a bien o ma eado
4 El sis ema egis a el mensaje en el cha de local
Pos condici´on El mensaje puede se isualizado po odo los in eg an es del cha y gua -
dado en la BBDD(base de da os)
Excepciones Paso Acci´on
3 El mensaje es ´a mal o ma eado
Comen a ios N&A
Caso de uso Ve mensajes del cha de un local
Desc ipci´on El usua io e mensajes del cha de un local
P econdici´on El usua io es ´a dado de al a en el cha de un local
Secuencia no mal 1 El usua io pulsa el cha de un local(desde la pan alla del local)
2 El sis ema mues a los mensajes del cha del local
Pos condici´on El usua io isualiza los mensajes del cha y puede en ia mensajes
Excepciones
Comen a ios N&A
Caso de uso Ve lis a de cha s en e usua ios
Desc ipci´on El usua io e la lis a de cha s pe sonales o denados po echa del ´ul imo
mensaje jun o con los mensajes no le´ıdos de cada cha
P econdici´on
Secuencia no mal
1 El usua io pulsa el bo ´on de cha s de la ba a de na egaci´on
2 El sis ema mues a los nomb es de dichos cha s en o den de in e -
acci´on
Pos condici´on El usua io e la lis a de cha s y puede accede a es os
Excepciones
Comen a ios N&A
Caso de uso Ve cha de usua io
Desc ipci´on El usua io e los mensajes del cha de usua io
P econdici´on El usua io pe enece a dicho cha
Secuencia no mal
1 El usua io pulsa en dicho cha pe sonal po medio de la lis a de
cha s o no i icaciones
2 El sis ema mues a los mensajes de dicho cha
Pos condici´on El usua io e los mensajes de dicho cha
Excepciones
Comen a ios N&A
24 CAP´
ITULO 3. DESARROLLO DE LA APP
Caso de uso En ia mensaje en el cha de usua ios
Desc ipci´on El usua io en ´ıa mensajes
P econdici´on El usua io en ´ıa un mensaje en el cha de usua ios
Secuencia no mal
1 El usua io eclea el mensaje
2 El usua io pulsa el bo ´on de en ia
3 El sis ema alida que odo es ´a bien o ma eado
4 El sis ema egis a el mensaje en el cha de local
Pos condici´on El mensaje puede se isualizado po odo los in eg an e del cha y gua dado
en la BBDD
Excepciones Paso Acci´on
3 El mensaje es ´a mal o ma eado
Comen a ios N&A
Caso de uso A˜nadi usua io al cha de usua ios
Desc ipci´on El usua io a˜nade al o o usua io al cha de usua ios
P econdici´on El usua io pe enece al cha de usua ios
Secuencia no mal
1 El usua io pulsa el bo ´on de a˜nadi usua io
2 El usua io eclea el nomb e del usua io que quie e a˜nadi y pulsa
inaliza
3 El sis ema alida que el ex o es ´a bien o ma eado
4 El sis ema comp ueba que el usua io no es ´a ya en el cha y que
el usua io exis a.
5 El sis ema egis a al usua io en el cha de usua io
Pos condici´on El usua io indicado comienza a pe enece al cha y puede usa odas sus
uncionalidades
Excepciones
Paso Acci´on
3 El mensaje es ´a mal o ma eado
4 El usua io con dicho nomb e no exis e
4 El usua io ya pe enece al cha
Comen a ios N&A
Caso de uso Visualiza la pan alla del buscado
Desc ipci´on El usua io isualiza la pan alla del buscado .
P econdici´on
In o maci´on 1 Lis a de publicaciones m´as des acadas de mane a global
2 Lis a de locales m´as des acados
Secuencia no mal 1 El usua io pulsa el bo ´on de busca de la ba a de na egaci´on
2 El sis ema le mues a la pan alla del buscado
Pos condici´on El usua io puede isualiza la pan alla del buscado
Excepciones
Comen a ios N&A
3.2. CASOS DE USO 25
Caso de uso Segui a un usua io
Desc ipci´on El usua io sigue a o o usua io
P econdici´on El usua io no sigue al usua io que quie e segui
Secuencia no mal
1 Pulsa el bo ´on segui del pe il de o o usua io
2 El sis ema le mues a la pan alla del pe il
3 El usua io pulsa el bo ´on de segui
4 El sis ema egis a dicho seguimien o
Pos condici´on Queda egis ado en el sis ema que un usua io sigue a o o
Excepciones
Comen a ios N&A
Caso de uso Visualiza una publicaci´on conc e a
Desc ipci´on El usua io isualiza una publicaci´on conc e a
P econdici´on
Secuencia no mal
1 El usua io pulsa una publicaci´on(desde el pe il de un usua io o
pan alla de inicio)
2 Se mues a la publicaci´on con echa y desc ipci´on.
Pos condici´on El usua io isualiza la publicaci´on y su in o maci´on asociada
Excepciones
Comen a ios N&A
Caso de uso Cambia desc ipci´on de usua io
Desc ipci´on El usua io cambia la desc ipci´on de su pe il
P econdici´on
Secuencia no mal
1 El usua io pulsa el bo ´on de u pe il en la pan alla de su pe il
2 El sis ema le o ece dos opciones del pe il que el usua io puede
con igu a : la desc ipci´on y la o o de pe il
3 El usua io in oduce la desc ipci´on que quie e que sea la que e-
emplace a la ac ual.
4 El sis ema alida que lo in oducido es ´a bien o ma eado
5 El usua io pulsa el bo ´on de inaliza
6 El sis ema le mues a la pan alla del pe il donde puede isualiza
la nue a desc ipci´on
Pos condici´on El usua io isualiza la pan alla del pe il donde se mues a la nue a desc ip-
ci´on
Excepciones 3 El ex o in oducido es ´a mal o ma eado
Comen a ios N&A
Caso de uso Ru a pa a i a un local
Desc ipci´on Se mues a la u a en Google Maps de c´omo i al local desde la ubicaci´on
del usua io
P econdici´on
Secuencia no mal
1 El usua io pulsa el´ıcono de Google Maps de un local en la pan alla
de inicio o en la pan alla del local
2 El sis ema le edi ige a Google Maps con la u a pa a i al local
Pos condici´on El usua io puede na ega pa a llega a la u a o ecida en la aplicaci´on de
Google Maps
Excepciones
Comen a ios N&A
32 CAP´
ITULO 3. DESARROLLO DE LA APP
-id e en o: iden i icado ´unico pa a cada e en o.
-id local: dado que cada e en o es ´a asociado a un solo local, ep esen o es a elaci´on a˜nadiendo dicha
cla e o ´anea a la abla e en os.
-nomb e e en o:nomb e del e en o, no eniendo po qu´e se ´unico.
-desc ipci´on: a cha que indica aspec os p incipales del e en o y mensajes publici a ios del local sob e
el e en o.
- echa: imes amp que ep esen a la echa de celeb aci´on del e en o, usada pa a il a en e e en os
que ya han sucedido y aquellos que ienen que sucede .
-Edad min: edad m´ınima pa a pode asis i .
-Edad max: edad m´axima pa a pode asis i .
-P ecio: p ecio del e en o, en el u u o se a˜nadi ´an o os a ibu os y elaciones como p ecio de las
di e sas bebidas o di e en es modalidades de p ecio.
Tabla de publicaciones
Con iene la in o maci´on de publicaciones de usua ios. Sus a ibu os son:
-id: iden i icado ´unico pa a cada publicaci´on .
- id use : dado que cada publicaci´on la ealiza un solo usua ia, ep esen o es a elaci´on a˜nadiendo dicha
cla e o ´anea(id del usua io) a la abla publicacion.
- echa: imes amp que ep esen a la echa de publicaci´on.
-Desc ipci´on: a cha que indica la desc ipci´on de la publicaci´on.
-n clicks: n´ume o de clicks pa a indica la popula idad de la publicaci´on. En el u u o se a˜nadi ´an m´as
a ibu os en es e sen ido pa a pe sonaliza m´as las ecomendaciones de publicaciones.
A pa i de aho a oy a in oduci las ablas de las di e sas elaciones que no son 1:n. Hay di e sas
mane as de ep esen a a es as elaciones m:n, pe o he p e e ido usa ablas con las cla es o ´aneas de
cada abla, m´as, en algunas ocasiones, a ibu os dis in i os de la elaci´on.
Tabla de ha leido el mensaje
Indica si un usua io ha leido el mensaje. Sus a ibu os son:
-id use : iden i icado ´unico pa a cada publicaci´on .
-id mensaje: id del mensaje que se ha leido
Tabla de pe enece use cha
Indica si un usua io pe enece a un cha . Sus a ibu os son:
-id use : iden i icado del usua io(cla e o ´anea).
-id cha : iden i icado del cha (cla e o ´anea).
-Fecha: imes amp que indica el momen o en el que el usua io comenz´o a o ma pa e del cha .
Tabla de pe enece use cha local
Igual que an es pe o con cha s de locales.
Tabla de elaciones
Indica si un usua io es elaciones p´ublicas de un local. Es os apa ece ´an en la p´agina del local pa a
que los usua ios puedan comunica se con ellos. De momen o, la ges i´on de los e en os e in o maci´on de
locales es ´a pensada de mane a cen alizada, aunque en e siones pos e io es se espe a una descen a-
lizaci´on, y es os pod ´an a˜nadi e en os y modi ica aspec os de e en os y del local. Aunque ambi´en
he a˜nadido una abla ges o local que indica lo dicho aunque no se le da el uso espe ado en es a
e si´on. Sus a ibu os son:
-id elacion: iden i icado del usua io elaciones(cla e o ´anea).
-id local: iden i icado del cha del local(cla e o ´anea).
Tabla de a a e en o
Indica si un usua io a a un e en o. Sus a ibu os son:
-id use : iden i icado del usua io(cla e o ´anea).
-id e en o: iden i icado del e en o(cla e o ´anea).
Tabla de seguido seguido
3.4. ARQUITECTURA 33
Indica elaci´on en e un seguido y un seguido
-id seguido : iden i icado del usua io seguido (cla e o ´anea).
-id seguido: iden i icado del usua io seguido(cla e o ´anea).
Tabla de ha es ado local
Indica si un usua io ha es ado en un local.
-id use : iden i icado del usua io que ha es ado(cla e o ´anea).
-id local: iden i icado del local(cla e o ´anea).
- echa: imes amp que indica cuando es u o el usua io.
Tabla de desc ipci´on
A pesa de se una elaci´on 1:n, usada pa a no alen iza las ope aciones en la BBDD y la aplicaci´on.
-id use : iden i icado del usua io (cla e o ´anea).
-con enido: con enido de la desc ipci´on.
Tabla de o o pe il
Tabla pa a mos a la u a de la o o de pe il de cada usua io.
-id use : iden i icado del usua io (cla e o ´anea).
-id o o pe il: a cha con la u a del pe il en el se ido .
Tabla de o o publicacion
A pesa de se una elaci´on 1:n, usada pa a no alen iza las ope aciones en la BBDD y la aplicaci´on.
-id publicacion: iden i icado de la publicaci´on (cla e o ´anea).
-id o o publicacion: u a de la o o de la publicaci´on.En el u u o se pod ´an dise˜na di e sos aspec os
pa a pode in oduci m´as o os en una publicaci´on, e ique as, comen a ios, en e o as.
Tabla de egis o cha use
Tabla usada pa a lle a el egis o de la echa en la que el usua io es la ´ul ima ez que isualiza un
cha . Usada con el in de mos a los mensajes no le´ıdos del cha po el usua io.
-id use : iden i icado del usua io (cla e o ´anea).
-id cha : id del cha de usua io (cla e o ´anea).
echa ul imo acceso: imes amp que e leja la echa del ´ul imo acceso.
Tabla de pun uaci´on e en o
Tabla usada pa a lle a el egis o de la pun uaci´on ealizada po los usua ios sob e un e en o.
-id use : iden i icado del usua io (cla e o ´anea).
-id e en o: iden i icado del e en o que es pun uado (cla e o ´anea).
-pun uacion : double que indica la pun uaci´on del e en o.
Tabla de pun uaci´on local
Tabla usada pa a lle a el egis o de la pun uaci´on ealizada po los usua ios sob e un local.
-id use : iden i icado del usua io (cla e o ´anea).
-id local: iden i icado del local que es pun uado (cla e o ´anea).
-pun uacion e en o : double que indica la pun uaci´on del local.
Se p esen an en la siguien es igu as 3.2 y 3.3 la implemen aci´on de la BBDD con o sin elaciones
3.4. A qui ec u a
Se p esen an los pa ones de dise˜no usados m´as impo an es en la aplicaci´on. Los pa ones de dise˜no
son soluciones elegan es a p oblemas de so wa e que son e icien es, gene ales y que a o ecen el c´odigo
de calidad y es uc u ado.
3.4.1. Pa ´on Single on
El pa ´on Single on [16] consis e en ene solo una ins ancia de clase de dicho obje o, es deci , en
caso de no habe sido c eado dicho obje o se c ea con un cons uc o p i ado, y en caso con a io, se
34 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.2: Diag ama de BBDD sin elaciones
de uel e la ins ancia del obje o ya c eado.
En mi p oyec o se usa en a ias ocasiones: pa a ene una ins ancia de la sesi´on y adem´as es a iene un
a ibu o que es usua io de la sesi´on. Una ez se inicia la sesi´on, se c ean ambos, pa a as´ı pode accede
a la a iable id del usua io, necesa ia a la ho a de ob ene in o maci´on de la BBDD. Po a˜nadidu a, se
usa pa a mejo a la e iciencia en ambas pan allas de un cha conc e o: an o de usua io como de locales.
Es o se debe a que es a pan alla se es ´a ac ualizando con inuamen e pa a mos a los mensajes del cha
ac ualizado. En onces, en ez de c ea cada ez que se ealiza dicha pe ici´on una Reques Queue con
el consiguien e consumo de memo ia y p´e dida de e iciencia, se usa el pa ´on Single on pa a eu iliza
la cola de pe iciones en cada ac ualizaci´on de los mensajes. Se p esen an en las siguien es igu as 3.4,
3.5 y 3.6 los diag amas de clase de dichos ejemplos.
3.4.2. Modelo Vis a P esen ado
El modelo Vis a P esen ado [19] es un pa ´on de dise˜no que si e pa a sepa a la in e acci´on con
el usua io y la is a con espec o al modelo y a amien o de los da os mien as que el p esen ado se
enca ga de coo dina ambos.
Usado en las p ime as i e acciones pues o que en p ime a ins ancia, se pens´o en usa la aplicaci´on con
almacenamien o local. En es e pa ´on el modelo con olaba las ope aciones CRUD sob e la base de
da os local SQLi e. El p oblema e a que de es e modo no se pe mi ´ıa la in e acci´on en e di e en es
usua ios. Adem´as el almacenamien o de la in o maci´on solo se pe mi ´ıa de o ma local y no pe ma-
nen emen e en un se ido . Y, del mismo modo, la is a se enca ga de la in e acci´on con el usua io,
ob eniendo pe iciones y d´andole in o maci´on. En la e si´on inal, se usa c´odigo en PHP ex e no pa a
comunica se con la base de da os y ealiza las consul as SQL de e minadas. Desde And oid se hacen
3.5. DISE ˜
NO Y PANTALLAS DE LA APLICACI ´
ON 35
Figu a 3.3: Diag ama de BBDD con elaciones
dichas eques al se ido y es e solo se dedica a pa sea los da os.
3.4.3. Pa ´on ViewHolde
El pa ´on ViewHolde 16es un pa ´on de dise˜no que se usa en And oid pa a c ea lis a din´amicas
de una mane a e icien e. En p ime luga , iene los siguien es elemen os: el ecycle View, que es el
ViewG oup que se enca ga de con ene a las is as de us da os. Cada elemen o se de ine po un
obje o con enedo de is as ( iewholde ), cuando es e se c ea la ecycle View lo incula a sus da os
(se ex iende de Recyle .ViewHolde ). La ecycle View ealiza es a inculaci´on median e llamadas al
adap ado .
En nues a aplicaci´on es e pa ´on se usa en odos los usos de en los que apa ezcan lis as (en la pan alla
de inicio, locales, pe il, en e o as). Se p esen a en la igu a 3.7 el diag ama de clases de un ejemplo
de uso en la aplicaci´on.
3.5. Dise˜no y pan allas de la aplicaci´on
En es e apa ado se exponen median e diag amas de clase y de in e acci´on las p incipales ac i idades
y componen es de c´odigo.
16h ps://de elope .and oid.com/guide/ opics/ui/layou / ecycle iew?hl=es-419
36 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.4: Pa on single on 1
3.5.1. Pan alla de login y egis a se
Es a es la pan alla de en ada de la aplicaci´on. Pa a hace uso de las uncionalidades de la aplicaci´on
el usua io debe hace login. Pa a ello, debe ene una cuen a, en caso de no ene la debe egis a se.
Pa a inicia sesi´on, el usua io in oduce su nomb e y con ase˜na y pulsa login, y la aplicaci´on c ea el
single on que lle a como pa ´ame os a es os (en caso de que el usua io y con ase˜na sean ´alidos) y el
id de uel o po la BBDD que iden i ica al usua io pa a odas las ope aciones. Pa a la comp obaci´on de
que el usua io y la con ase˜na sean co ec as, se hace una eques a login.php, que es ´a alojado en el
se ido que almacena los a chi os de la aplicaci´on, y es e de uel e un JSON. Dicho Json con iene la
espues a de si es ´alida, en caso de se ´alida se accede a InicioAc i i y; en caso con a io, se indica un
mensaje de e o , al igual que si el o ma o de los da os in oducidos no es co ec o. Al mismo iempo,
en caso de egis a se, du an e el egis o hay que in oduci el nomb e, con ase˜na, co eo y el´e ono.
Una ez in oducidas el sis ema alida que los da os son co ec os llamando al igual que an es a un
a chi o PHP que se conec a con la base de da os emo a, inse use .php, que comp ueba si el nomb e
y el co eo egis ado no es aban ya egis ados, y si no, inse a el usua io en la abla de usua ios de
la BBDD; es e de uel e un Json y se pasa a InicioAc i i y. Se adjun a un diag ama de secuencia con
dichas acciones en la igu a 3.8 . Adem´as, se adjun an ambas pan allas en la igu a 3.9.
3.5.2. Pan alla de inicio
Pan alla en la que el usua io en a despu´es de inicia sesi´on o egis a se. A es a ambi´en se puede
accede desde el men´u de na egaci´on de abajo. En es a pan alla emos 4 lis as en o ma de ecycle -
iews: la 1, si ios en los que has es ado, que indica los locales en los que el usua io ha es ado y la
echa en las que es u o, se puede pincha a ellos pa a accede a la p´agina de local; la 2, ecomendados
pa a i, apa ecen los locales ecomendados pa a el usua io seg´un sus gus os y los luga es en los que
ha es ado con el mo o de ecomendaci´on; la 3, si ios en los que has en es ado us amigos, his o ial de
locales de los usua ios a los que se sigue y el usua io que ha ido a dicho local y la echa; la 4, lis a de
publicaciones de amigos, o denadas po echa las publicaciones de los usua ios a los que se sigue, se
puede accede pinchando a ellas. Las 3 p ime as lis as an acompa˜nadas de un ´ıcono de Google Maps
3.5. DISE ˜
NO Y PANTALLAS DE LA APLICACI ´
ON 37
Figu a 3.5: Pa on single on 2
que edi ige la aplicaci´on a Google pa a mos a e la u a desde u ubicaci´on has a el luga donde se
encuen a el local pulsado.
Pa a ob ene dichos da os, p ime amen e, la lis a de si ios se ob iene haciendo un eques al se ido
con el a chi o e ch si ios han es ado en el que de uel e un Json con la in o maci´on deseada. Dicho
json se pa sea pa a ob ene la lis a de locales. Despu´es de ello, se llama al m´e odo llena Recycle Si-
iosHasEs ado() que c ea un adap ado siguiendo el pa ´on ViewHolde ya explicado, y despu´es se ija
al ecycle View co espondien e. Asimismo, la in o maci´on es an e se accede de una mane a simila :
los si ios ecomendados con el sis ema de ecomendaci´on que ya se explica ´a; los si ios en los que han
es ado us amigos con e ch si ios en los que han es ado seguidos.php y c eando despu´es el adap ado
Si iosHanEs adoAmigosAdap e y ijando el ecycle View co espondien e; y la lis a de publicaciones
con e ch publicaciones inicio.php y PublicacionesAdap e Inicio como adap ado .
Del mismo modo, cada elemen o iene un lis ene asociado de modo que si se pulsa se accede al local
o a la publicaci´on co espondien e.
Adem´as si se desliza la pan alla hacia abajo desapa ece el men´u de na egaci´on in e io y es e uel e
a apa ece si se desliza hacia a iba. Se mues a un diag ama de secuencia asociado en la igu a 3.10.
Adem´as, se mues a la pan alla en la igu a 3.11.
3.5.3. Pan alla de locales
Pan alla en la que se mues a la in o maci´on gene al del local: su nomb e, imagen de pe il y
desc ipci´on. El bo ´on de he es ado si e pa a indica que un usua io ha es ado en dicho local. Tenemos
di e en es lis as en o ma de ecycle Views asociadas al local: p ime amen e, apa ece una lis a con los
seguidos del usua io que han es ado en dicho local; una lis a con los usua ios que son elaciones del
local pa a pode con ac a y pedi m´as in o maci´on; lis a de e en os enide os que se celeb an en el
local, a los que se puede pincha pa a i al e en o conc e o y ob ene m´as in o maci´on suya; y pa a
inaliza , la lis a de cha s- o o asociados al local en los que se puede pa icipa .
Pa a ob ene dicha in o maci´on, p ime o, se llama al m´e odo ob ene In oGene al() en el que se conec a
con el a chi o e ch in o local.php, donde se ob ene el nomb e y la desc ipci´on del local, adem´as de la
localizaci´on. La lis a de amigos que han es ado se accede po medio de e ch amigos han ido local.php
38 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.6: Pa on single on 3
y usando el adap ado AmigosHanEs adoAdap e ; los elaciones, con e ch elaciones local.php y el
adap ado RelacionesAdap e ; y la lis a de e en os de la misma mane a. Po o o lado, si se pulsa el
bo on de ha es ado se in oduce el usua io en la abla de la BBDD en la que se indica que el usua io ha
es ado en el local. Adem´as, si se pulsa a cada e en o o usua ios, es e accede a la pan alla del e en o o a
la pan alla del pe il del usua io. El bo ´on de Maps una ez pulsado edi ige a la aplicaci´on de Google
Maps que mues a la u a pa a i al local desde la ubicaci´on del usua io. El bo ´on de pun ua lle a
a la ac i idad de Pun ua LocalAc i i y, en ella el usua io puede pun ua el local. Pa a e i a que un
usua io pueda ealiza in ini as o aciones, se limi a el n´ume o de o aciones a 3. Una ez in oducida
la o aci´on, en una escala del 1 al 10, se alida, llamando a inse pun uacion local.php, que egis a la
o aci´on en la BBDD. Se puede ol e al local, pulsando al bo ´on de a ´as de la ac i idad de pun ua .
Del mismo modo, cada ez que se accede a es a ac i idad se ac ualiza el n´ume o de clicks del local,
ac ualiz´andose en la BBDD. Adem´as, si el usua io pincha el bo ´on de Mos a cha s se accede a la
ac i idad de Mos a Cha sLocalAc i i y, en ella se mues an los cha s del local a los que se puede
accede , pulsando se accede a la pan alla de dicho cha , que aho a se explica ´a.
Se mues a el diag ama de secuencia de la ac i idad en la igu a 3.12. Se mues an las pan allas en la
siguien e igu a 3.13.
3.5.4. P´agina de pe il
Es a p´agina compues a po 4 ac i idades, en odas ellas enemos los siguien es elemen os: en la
pa e de a iba a modo de Ba Layou enemos la o o del pe il, el nomb e del usua io y su desc ipci´on;
el bo ´on de segui (en caso de se noso os apa ece el bo ´on de Mi pe il) o siguiendo pa a deja de
segui si el usua io lo desea pulsando dicho bo ´on; seguidos de los bo ones de siguiendo y seguido es y
de publicaciones y luga es. Es os ´ul imos 4 lle an a di e sas ac i idades, la p ime a es el que apa ece
po p ime a ez cuando amos al pe il del usua io, que consis e en la lis a de publicaciones; la 2, la
lis a de luga es en los que ha es ado; y la 3 y 4, la lis a de seguido es y seguidos espec i amen e.
Pa a pode accede a los da os gene ales, se llama en el p ime caso a ob ene Lis aPublicaciones()
que llama a e ch publicaciones usua io.php. P ime amen e, se accede a la in o gene al con el nomb e
y la desc ipci´on, adem´as, en caso de ene o o de pe il se ecupe a de ol iendo la u a de la o o
del pe il, es a se ca ga con la ayuda de la lib e ´ıa Picasso. De la misma mane a, se accede a la lis a
3.5. DISE ˜
NO Y PANTALLAS DE LA APLICACI ´
ON 39
Figu a 3.7: Pa on ViewHolde ejemplo
de publicaciones y se llama a llena Recycle Publicaciones() que c ea un PublicacionesAdap e con el
pa ´on ViewHolde . En los casos de la pan alla de luga es, siguiendo y seguido es, se ope a de mane a
simila , p ime o se ealiza un eques al a chi o PHP co espondien e del se ido , pos e io men e se
accede a la in o gene al de la misma mane a, y luego se ob iene la lis a co espondien e c eando el
adap ado adecuado(Luga esAdap e o Usua iosAdap e ).
En caso de se el pe il del usua io p opio, si el usua io pulsa el bo ´on Mi pe il es e accede a la ac i idad
Pe ilCon igu acionAc i i y, que pe mi e cambia la desc ipci´on y la o o de pe il de usua io, que en ´ıa
eques s a sus co espondien es a chi os PHP y sube la imagen al se ido si co esponde. Se mues an
dichas pan allas en la igu a 3.14, en la igu a 3.15 la con igu aci´on del pe il y en la 3.16 el esul ado
del cambio de con igu aci´on.
3.5.5. P´agina de publicaci´on
En la pa e supe io de la p´agina enemos un bo ´on de a ´as que inaliza la ac i idad, la imagen
de pe il y el nomb e de usua io. Despu´es, el con enido de la publicaci´on con su co espondien e des-
c ipci´on. En pos e io es e siones se a˜nadi ´a la opci´on de comen a .
En p ime luga , se accede a la in o maci´on gene al de la mane a usual, llamando a los a chi os PHP
( e ch in o publicacion.php), donde se ob iene el nomb e del usua io, la desc ipi´on del usua io, adem´as
de la u a de la o o de pe il y la u a de la publicaci´on que es ´a alojada en el se ido .
Si se pulsa a la o o de pe il se pasa a la ac i idad del pe il del usua io que es au o de la publicaci´on.
Finalmen e, se ac ualiza, el n´ume o de clicks de la publicaci´on en la BBDD llamando a upda e publicacion clicks.php.
Se mues a dicha pan alla en la igu a 3.17.
3.5.6. P´agina de e en o conc e o
En dicha p´agina se mues a la in o maci´on gene al del e en o en la pa e de a iba: nomb e, echa,
desc ipci´on, edad m´ınima y m´axima y p ecio. Adem´as de un bo ´on pa a indica que as a i y que as´ı
40 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.8: Diag ama de secuencia Login
lo puedan e los dem´as usua ios. Adicionalmen e, apa ece una lis a de los usua ios que an a i al
e en o.
P ime o, se accede a la in o maci´on gene al con el m´e odo ob ene In oGene al() en el que se llama
a e ch in o e en o conc e o.php que de uel e un json con la in o maci´on gene al. Pos e io men e, a
e ch use s que an a e en o.php en la que se de uel e la lis a con los usua ios que an y se c ea
el adap ado adecuado, Usua iosVanAEs a Adap e . Se puede pulsa a cada usua io accediendo a la
pan alla de su pe il. Po a˜nadidu a, el bo ´on Voy a i in oduce al usua io en la lis a de la BBDD
de los usua ios que an a i en caso de no es a p e iamen e. En caso con a io, se elimina el use del
e en o. Se ealiza dicha uncionalidad po medio de los a chi os PHP: Dele e om use a a e en o y
inse use a a e en o. Adem´as, se puede in oduci la opini´on del usua io sob e el e en o, el usua io
pulsa el bo ´on de pun ua , es e ab e la ac i idad de Pun ua E en oAc i i y, en la que el usua io
in oduce la pun uaci´on, pudiendo in oduci solo una(se comp ueba en el PHP). Se mues a dicha
pan alla en la igu a 3.18
3.5.7. P´agina de cha s de usua io
En dicha p´agina se mues a la lis a de cha s de usua io a los que pe enece, que apa ecen en o den
de mensajes ecibidos de m´as de ecien es, adem´as del n´ume o de mensajes no le´ıdos de cada cha . Al
pulsa a es os se accede al cha en conc e o.
3.5. DISE ˜
NO Y PANTALLAS DE LA APLICACI ´
ON 41
(a) (b) (c)
Figu a 3.9: Paginas de login y egis o
48 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.17: Pan alla publicaci´on conc e a
Una ez el usua io empieza a eclea el sis ema le o ece b´usquedas que se ajus en a los il os in-
oducidos. Pa a ealiza es o se a˜nade un lis ene al ex o de b´usqueda que se ac i a una ez el
usua io in oduce algo al ex o. En onces, se ealiza una b´usqueda en la BBDD po medio del a chi-
o e ch busqueda au ocomple e.php en el que se de uel e una lis a de locales que coinciden con lo
pedido. Despu´es se c ea el LocalesAdap e Busqueda, el adap ado de ello, y se asocia al ecycle de
b´usqueda. El usua io puede pulsa cualquie local de dicha lis a pa a accede a ´el, o ambi´en puede
busca el local di ec amen e y pulsa el bo ´on de busca .
Se adjun a un diag ama de ac i idad de la pan alla en la igu a 3.25. Se adjun a la pan alla en la igu a
3.26.
3.5.14. Men´u de na egaci´on in e io
Compues o po los´ıconos de home, buscado , compa i , pe il y cha . Es os´ıconos una ez pulsados
lle an a las ac i idades inicio, buscado , compa i ,pe il del usua io (se pasa el id del usua io que lo
enemos g acias al single on c eado al inicio de la sesi´on) y cha s de usua io. Es a ba a de na egaci´on
o ma pa e de es as 5 pan allas p incipales adem´as de la pan alla de locales.
3.6. Mo o de ecomendaci´on
Se han implemen ado di e en es mo o es de ecomendaci´on. Se usan pa a los locales ecomendados
de la p´agina de inicio. Si bien, pa a u u as e siones se ex ende ´an pa a o ece ecomendaciones en
cualquie pan alla, adem´as de se usado en el buscado pa a pe sonaliza las b´usquedas y o ece en
la lis a de palab as suge idas aquellas que el usua io equie a, adem´as de no solo o ece locales sino
3.6. MOTOR DE RECOMENDACI ´
ON 49
(a) (b) (c)
Figu a 3.18: Pan alla de e en os
50 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.19: Diag ama de secuencia cha s
ambi´en e en os. P esen amos es os 2 mo o es
3.6.1. Recomendaci´on basada en popula idad
Se implemen a sin necesidad de c´odigo adicional. Pa a ello, se usa el campo de la BBDD de locales
de n´ume o de clicks, que se ac ualiza cada ez que un usua io acceda a la pan alla del local en conc e o.
En onces, en la consul a SQL es a se o dena po es e campo. En el mo o inal se usa pa a sol en a
di e sos p oblemas iniciales que iene el mo o basado en un il o colabo a i o que aho a p esen a ´e
en p o undidad.
3.6.2. Fil o colabo a i o
En p ime luga , el il o colabo a i o [17] [15] 17 consis e en el p oceso de il a obje os po medio
de las opiniones de o as pe sonas, en nues o caso, los obje os co esponden a locales. Pa a ello, se
usan las opiniones m´as adecuadas seg´un el ipo de il o pa a o ece ecomendaciones pe sonalizadas.
Puede habe di e en es ipos de a ings, desde num´e icos has a bina ios, adem´as es os pueden ob ene se
de di e sas o mas, pueden se expl´ıci os como es el caso de nues a aplicaci´on, es deci , p egun ando
di ec amen e la opini´on al usua io; o impl´ıci os, que son in e idos g acias a la acci´on de los usua ios.
17h ps://medium.com/geekcul u e/ ecommende -sys em-a83668653d95
3.6. MOTOR DE RECOMENDACI ´
ON 51
Figu a 3.20: Lis a de cha s del usua io con los mensajes no le´ıdos
En nues o caso, nos hemos cen ado en la pun uaci´on que exp esan los usua ios sob e los locales, sin
emba go, en u u as e siones de la aplicaci´on se inc emen a ´a la can idad de in o maci´on que se iene
sob e el usua io, con in o como d´onde hace click, cu´an o iempo pasa en cada pan alla o geolocalizaci´on
pa a sabe en qu´e locales suele es a pa a pode o ece ecomendaciones m´as p ecisas.
El il o colabo a i o es ´a es udiado y encaja muy bien en di e en es escena ios que cumple a ias
condiciones: ela i as a la dis ibuci´on de los da os: hay muchos obje os, hay muchos a ings po
obje o, hay m´as pun uaciones que obje os que ecomenda y cada usua io alo a m´ul iples obje os.
Nues a aplicaci´on una ez en ma cha con el n´ume o de usua ios espe ados cumple los 4 aspec os.
Rela i as a la esencia de los da os: pa a cada usua io en la comunidad, hay o os usua ios que ienen
gus os simila es y la e aluaci´on de obje os equie e gus o pe sonal. Es o se cumple en nues a aplicaci´on
pues o que los luga es en los que sale la gen e ienen un componen e emocional muy al o.
Rela i as a la pe sis encia de los da os: los obje os pe manecen y los gus os igual. En gene al, los locales
suelen pe manece y los gus os cambian, pe o an ligados a endencias que se p olongan du an e a ios
a˜nos.
El il o colabo a i o se basa en la asunci´on de que la gen e con gus os simila es pun ua ´a de mane a
pa ecida. El il ado basado en con enido se basa en que los obje os con ca ac e ´ıs icas semejan es
se ´an alo ados de una mane a pa ecida. De hecho, es e ipo de il ado puede sob e especializa se, po
lo gene al, ecomienda obje os que encajan exac amen e con las ca ac e ´ıs icas espec´ı icas del usua io.
El il ado colabo a i o iene la p opiedad de no edad que di ige al usua io a obje os m´as inespe ados
52 CAP´
ITULO 3. DESARROLLO DE LA APP
(a) (b)
Figu a 3.21: Pan alla de cha conc e o con la de a˜nadi usua io al cha
3.6. MOTOR DE RECOMENDACI ´
ON 53
(a) (b) (c)
Figu a 3.22: Pan alla de compa i publicaci´on
54 CAP´
ITULO 3. DESARROLLO DE LA APP
(a) (b) (c)
Figu a 3.23: Pan alla de c ea cha de usua io y su esul ado
3.6. MOTOR DE RECOMENDACI ´
ON 55
(a) (b) (c)
Figu a 3.24: Pan alla de c ea cha de local y su esul ado
56 CAP´
ITULO 3. DESARROLLO DE LA APP
Figu a 3.25: Diag ama de secuencia buscado
y di e en es.[9]
Hay dos ipos de il os colabo a i os: los basados en memo ia que equie en que odos los a ings
es ´en almacenados en memo ia, y los basados en modelos que pe iodic´amen e c ean un esumen de las
pun uaciones o line. Nos cen amos en los p ime os, aunque es os ienen el inco enien e de no escala
pa a un g an n´ume o de usua ios. Po ello, en e siones u u as se end ´a un modelo h´ıb ido en el que
se ha ´an cie as p ecompu aciones.
Los dos algo i mos m´as amosos de il o colabo a i o son: los ecinos m´as ce canos basados en usua ios
y en obje os.
En el p ime o de ellos, los ecinos m´as ce canos basada en el usua io se gene an p edicciones
de pun uaciones basadas en las pun uaciones de usua ios simila es.
P ime o pa a gene a la ecindad de los usua ios pa ecidos se usan di e en es m´e odos, el m´as popula
de ellos es la simili ud del coseno 18 [5]. Se de ine de es a mane a: dados ec o es A, B,
sim coseno(A, B) = cos(θ) = A·B
||A||||B|| =Pn
i=1 AiBi
pPn
i=1 A2
ipPn
i=1 B2
i
En onces, se cogen los N m´as simila es de dicha m´e ica. Los que ienen simili ud −1 indican exac a-
men e lo con a io, 0 no co elaci´on y 1 exac amen e iguales.
18h ps://www.sciencedi ec .com/ opics/compu e -science/cosine-simila i y
3.6. MOTOR DE RECOMENDACI ´
ON 57
(a) (b) (c)
Figu a 3.26: Pan alla del buscado
64 CAP´
ITULO 4. INTERACCI ´
ON CON USUARIOS
(a) (b)
Figu a 4.5: P o o ipo
Cap´ı ulo 5
Conclusiones y u u o
5.1. Conclusiones
En es e T abajo Fin de G ado se ha desa ollado una aplicaci´on m´o il que da in o maci´on sob e
los locales de ocio noc u no y p o ee he amien as pa a pode conec a a sus usua ios.
Los usua ios pueden cha ea po medio de cha s de usua io con o os usua ios adem´as de po cha s- o o
asociados a los locales que ecuen an. Adem´as pueden encon a la mejo in o maci´on de los locales
de ocio de una mane a pe sonalizada, di ec a o indi ec a. Po o o lado, pueden in e ac ua con sus
amigos de mane a indi ec a publicando sus pensamien os o im´agenes, en e o as acciones.
Dicha aplicaci´on se ha podido desa olla g acias a And oid S udio, he amien a po excelencia pa a el
desa ollo de aplicaciones And oid que pe mi e el uso de Ja a, lenguaje o ien ado a obje os donde se
han usado di e en es pa ones de dise˜no. Pa a la pa e de la ges i´on de da os con la BBDD se ha usado
PHP que in e comunica el p og ama en And oid con la BBDD de una mane a segu a y consis en e.
Adem´as de usa Py hon pa a cons ui el mo o de ecomendaci´on.
Du an e el desa ollo se han cumplido los obje i os p incipales del mismo, y adem´as se ha podido
pe cibi la complejidad que iene su desa ollo debido a que son necesa ios conocimien os de ma e ias
di e sas: bases de da os, p og amaci´on o ien ada a obje os, in eligencia a i icial, ingenie ´ıa del so -
wa e, Ja a, Py hon, PHP, ges i´on emp esa ial, cibe segu idad, dise˜no de sis emas in e ac i os, en e
o as. Pa yingou ! ecoge es os conocimien os ob enidos du an e la ca e a y pues os en p ´ac ica con
es e abajo.
Conclusions
In his End o Deg ee P ojec a mobile applica ion has been de eloped o gi e in o ma ion abou
clubs and i suppo s ools o connec hei use s wi h each o he .
Use s can cha by use cha s wi h o he use s in addi ion o cha s- o um associa ed wi h he clubs hey
end o go. Besides, hey can ind he bes in o ma ion abou clubs in a pe sonalized way, di ec ly o
indi ec ly. On he o he hand, hey can in e ac wi h hei iends in an indi ec way by publishing
hei hough s, images among o he s.
Such applica ion has been de eloped hanks o And oid S udio, ool by excellence o build And oid
app ha suppo s Ja a use, objec o ien ed language whe e di e en design pa e ns ha e been used.
To manage he da abase PHP has been o communica e And oid wi h he da abase in a sa e and
consis en way. Apa om using Py hon o build he ecommenda ion engine.
Du ing he de elopmen he main objec i es ha e been achie ed , u he mo e, he complexi y o i s de-
elopmen can be pe cei ed because i is equi ed knowledge om di e en subjec s such as da abases,
65
66 CAP´
ITULO 5. CONCLUSIONES Y FUTURO
objec o ien ed design, a i icial in elligence, so wa e enginee ing, Ja a, Py hon, PHP, business mana-
gemen , in e ac i e sys em design, among o he s. Pa yingOu ! uses ha knowledge lea n h oughou
he deg ee and pu in o p ac ice wi h hese p ojec .
5.2. T abajo u u o
En p ime luga , cabe des aca el g an n´ume o de uncionalidades que con iene nues a aplicaci´on.
A pesa de ello, se puede amplia , en es e apa ado se mues an una se ie de nue as uncionalidad pa a
la mejo a del p oyec o u u o.
A˜nadi la uncionalidad de c ea ies as. El usua io pod ´a c ea ies as an o p´ublicas como
p i adas, en las p i adas pod ´a es ingi que la in o maci´on sob e la ies a solo lo puedan e
las pe sonas que ´el elija.
La posibilidad de c ea cha s asociados al local que no sean odos p´ublicos, es deci pode a˜nadi
p i ados en los que puedan habla solo g upos de pe sonas de una mane a es ingida.
Da la uncionalidad de no i icaciones, sob e e en os que puedan in e esa al usua io ales como
mensajes que ecibe, ecomendaciones de locales o la ac i idad de amigos.
Tene una mayo in o maci´on sob e la ac i idad del usua io pa a as´ı pode ene m´as da os y
pode ealiza po ello mejo es ecomendaciones pe sonalizadas al usua io.
Sabe la ubicaci´on exac a del usua io pa a comp oba qui´enes es ´an en un local conc e o u
o ece le mejo es ecomendaciones a iempo eal dependiendo de qui´enes es ´an en o os locales.
Amplia la BBDD. En la ac ualidad, la can idad de in o maci´on es muy limi ada. Hace un
es udio y pode amplia la, an o de una mane a cen alizada como se hace aho a, como de una
o ma m´as descen alizada pa a aho a ecu sos.
Pode en ia a chi os en cha s. Es os a chi os pueden se a iados desde im´agenes has a ´ıdeos,
pasando po un pd sob e la in o maci´on de un e en o.
Pode paga en adas po medio de la aplicaci´on, y as´ı compa i lo po la aplicaci´on a cambio
de que los locales o ezcan descuen os po ello.
Aumen a la capacidad del se ido . En la ac ualidad, enemos un se ido g a ui o, po lo que
la elocidad es limi ada. Po ello, a medida que aumen en usua ios se ´a p imo dial ene un buen
ancho de banda del se ido y capacidad de almacenamien o mayo pa a gua da a chi os.
El sis ema de ecomendaci´on ac ualmen e se cen a en p o ee ecomendaciones de locales, es o
se puede expandi a suge i e en os y pe sonas que puedan esul a in e esan es pa a el usua io.
Posibilidad de subi a chi os como o os o ´ıdeos a las pan allas de locales o e en os.
´
Indice de igu as
2.1. Jaleoapp ............................................ 12
2.2. Bcle e ............................................. 13
2.3. Ins ag am ........................................... 14
2.4. Mee up ............................................. 14
2.5. Fe e .............................................. 15
2.6. Exceed ............................................. 16
2.7. E en b i e ........................................... 16
3.1. Modelo en idad- elaci´on BBDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2. Diag ama de BBDD sin elaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3. Diag ama de BBDD con elaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.4. Pa onsingle on1 ....................................... 36
3.5. Pa onsingle on2 ....................................... 37
3.6. Pa onsingle on3 ....................................... 38
3.7. Pa onViewHolde ejemplo .................................. 39
3.8. Diag ama de secuencia Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.9. Paginasdeloginy egis o .................................. 41
3.10. Diag ama de secuencia inicio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.11. Pan alla de inicio, si se desliza hacia a iba apa ece el men´u de na egaci´on . . . . . . . 43
3.12. Diag ama de secuencia local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.13. Pan alla del local, opini´on, google Maps y cha s del local . . . . . . . . . . . . . . . . . 45
3.14. Pan alla del pe il de publicaciones, seguidos, seguido es y luga es . . . . . . . . . . . . 46
3.15. Pan alla con igu aci´on del pe il . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.16. Resul ado del cambio de con igu aci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.17. Pan alla publicaci´on conc e a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.18.Pan alladee en os ...................................... 49
3.19. Diag ama de secuencia cha s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.20. Lis a de cha s del usua io con los mensajes no le´ıdos . . . . . . . . . . . . . . . . . . . . 51
3.21. Pan alla de cha conc e o con la de a˜nadi usua io al cha . . . . . . . . . . . . . . . . . 52
3.22. Pan alla de compa i publicaci´on . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.23. Pan alla de c ea cha de usua io y su esul ado . . . . . . . . . . . . . . . . . . . . . . 54
3.24. Pan alla de c ea cha de local y su esul ado . . . . . . . . . . . . . . . . . . . . . . . . 55
3.25. Diag ama de secuencia buscado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.26.Pan alladelbuscado ..................................... 57
3.27. Diag ama de ac i idad sis ema ecomendado . . . . . . . . . . . . . . . . . . . . . . . 59
4.1. P egun ascues iona io1 ................................... 62
4.2. P egun ascues iona io1 ................................... 62
67
68 ´
INDICE DE FIGURAS
4.3. Resul ados medio de p egun as . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.4. Resul adosp egun as ..................................... 63
4.5. P o o ipo ............................................ 64
A.1.P o o ipo ............................................ 73
A.2.P o o ipo ............................................ 74
A.3.P o o ipo ............................................ 74
Bibliog a ´ıa
[1] Muhammad O ais Ahmad y col. ((Kanban in so wa e enginee ing: A sys ema ic mapping s udy)).
En: Jou nal o Sys ems and So wa e 137 (2018), p´ags. 96-113.
[2] Ionu Andone y col. ((How age and gende a ec sma phone usage)). En: P oceedings o he
2016 ACM in e na ional join con e ence on pe asi e and ubiqui ous compu ing: adjunc . 2016,
p´ags. 9-12.
[3] I e Challenge -P´e ez, Yane D´ıaz-Rica do y Robe o An onio Bece a-Ga c´ıa. ((El lenguaje de
p og amaci´on Py hon)). En: Ciencias Holgu´ın 20.2 (2014), p´ags. 1-13.
[4] Juyun Cho. ((Issues and Challenges o agile so wa e de elopmen wi h SCRUM)). En: Issues in
In o ma ion Sys ems 9.2 (2008), p´ags. 188-195.
[5] Najim Dehak y col. ((Cosine simila i y sco ing wi hou sco e no maliza ion echniques.)) En:
Odyssey. 2010, p´ag. 15.
[6] Wadzani Gadzama, Bi us Joseph y Ngubdo Aduwamai. ((Global sma phone owne ship, in e ne
usage and hei impac s on humans)). En: Resea chGa e (2019).
[7] Ted Hagos. And oid S udio IDE Quick Re e ence: A Pocke Guide o And oid S udio De elop-
men . Ap ess, 2019.
[8] Cha les R Ha is y col. ((A ay p og amming wi h NumPy)). En: Na u e 585.7825 (2020), p´ags. 357-362.
[9] Jona han L He locke y col. ((E alua ing collabo a i e il e ing ecommende sys ems)). En: ACM
T ansac ions on In o ma ion Sys ems (TOIS) 22.1 (2004), p´ags. 5-53.
[10] TC Melewa y Nichola Smi h. ((The In e ne e olu ion: some global ma ke ing implica ions)).
En: Ma ke ing in elligence & planning (2003).
[11] And ea Mill´an Mo eno y col. ((Re a o de la ida noc u na de Mad id)). En: (2019).
[12] Fabian Ped egosa y col. ((Sciki -lea n: Machine lea ning in Py hon)). En: he Jou nal o machine
Lea ning esea ch 12 (2011), p´ags. 2825-2830.
[13] Washing on San illan. ((El ele abajo en el COVID-19)). En: CienciAm´e ica: Re is a de di ul-
gaci´on cien ´ı ica de la Uni e sidad Tecnol´ogica Indoam´e ica 9.2 (2020), p´ags. 65-76.
[14] Bad ul Sa wa y col. ((I em-based collabo a i e il e ing ecommenda ion algo i hms)). En: P o-
ceedings o he 10 h in e na ional con e ence on Wo ld Wide Web. 2001, p´ags. 285-295.
[15] J Ben Scha e y col. ((Collabo a i e il e ing ecommende sys ems)). En: The adap i e web.
Sp inge , 2007, p´ags. 291-324.
[16] K zysz o S encel y Pa ycja Weg zynowicz. ((Implemen a ion a ian s o he single on design
pa e n)). En: OTM Con ede a ed In e na ional Con e ences.On he Mo e o Meaning ul In e ne
Sys ems”. Sp inge . 2008, p´ags. 396-406.
[17] Lyle H Unga y Dean P Fos e . ((Clus e ing me hods o collabo a i e il e ing)). En: AAAI
wo kshop on ecommenda ion sys ems. Vol. 1. Menlo Pa k, CA. 1998, p´ags. 114-129.
69
70 BIBLIOGRAF´
IA
[18] Nicolas Vienno , Edwa d Ga cia y Jason Nieh. ((A measu emen s udy o google play)). En: The
2014 ACM in e na ional con e ence on Measu emen and modeling o compu e sys ems. 2014,
p´ags. 221-233.
[19] Yang Zhang y Yanjing Luo. ((An a chi ec u e and implemen model o Model-View-P esen e
pa e n)). En: 2010 3 d in e na ional con e ence on compu e science and in o ma ion echnology.
Vol. 8. IEEE. 2010, p´ags. 532-536.
Ap´endice A
Anexo
A.1. AnexoI: cues iona io gene al
P egun as cues iona io 1:
1)Cu´an o sueles sali po semana?
M´as de 4
3
2
1
Nunca
2) ¿Cu´an as eces sales po disco ecas/mes?
M´as de 8
7
6
3
2
1
Nunca
3)¿Sabes al luga /es que as a i de an emano?
S´ı
No
4)¿Sabes po d´onde sale la gen e a ´ın a i?
S´ı
No
5)¿Te gus a conoce gen e o es a solo con u c´ı culo?
Conoce gen e
Es a solo con u c´ı culo
Ambas
6)¿Te gus a liga en disco ecas?
S´ı
No
Depende
7)¿Te gus a ´ıa sabe d´onde sale la gen e que conoces?
S´ı
71
72 AP´
ENDICE A. ANEXO
No
Depende
8)¿Te gus a ´ıa pode conoce a la gen e que es ´a en la disco eca an es de sali ?
S´ı
No
Depende
9)¿Te gus a hace copas o ies as p i adas?
S´ı
No
Depende
10)¿Te gus a asis i a copas o ies as p i adas?
S´ı
No
Depende
11)¿Te gus a ´ıa ecibi opiniones pe sonalizadas sob e d´onde sali ?
S´ı
No
12)¿Te gus a ´ıa sabe los p ecios de an emano de los luga es que ecuen as ?
S´ı
No
13)¿Usas alguna aplicaci´on que in oluc e alguna de las an e io es unciones? En caso
a i ma i o, di cu´al.
A.2. AnexoII: cues iona io de usabilidad
Respues as en odas las p egun as del 1 al 7:
1)C eo que Pa yingou ! es muy complejo
2)C eo que Pa yingou ! es in ui i a
3)C eo que Pa yingou ! iene unciones bien implemen adas y cohe en es
4)Pa yingou ! es di ´ıcil de usa
5)C eo que las unciones de Pa yingou ! son ´u iles
6)Usa ´ıa Pa yingou !
7)C eo que Pa yingou ! iene un dise˜no inconsis en e
A.3. AnexoIII: P o o ipos en Balsamiq
Algunos p o o ipos en Balsamiq en las igu as A.1, A.2 y A.3.
A.3. ANEXOIII: PROTOTIPOS EN BALSAMIQ 73
(a) (b) (c)
Figu a A.1: P o o ipo