utilising user profiles to drive a mobile event recommendation system
TRANSCRIPT
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
1/174
NOTTINGHAMTRENTUNIVERSITY
SCHOOLOFSCIENCEANDTECHNOLOGY
Utilising user profiles to drive a mobile event
recommendation system
by
Samson Aiyegbusi
in
2016
Project report in part fulfilment
of the requirements for the degree of
achelor of Science !ith "onours
in
#omputer Science
1
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
2/174
I hereby declare that I am the !le a"th!r !# th$ re%!rt& I a"th!r$e the
N!tt$'(ham Tre't U'$)er$ty t! le'd th$ re%!rt t! !ther $'t$t"t$!' !r $'d$)$d"al
#!r the %"r%!e !# ch!larly reearch&
I al! a"th!r$*e the N!tt$'(ham Tre't U'$)er$ty t! re%r!d"ce th$ re%!rt by
%h!t!c!%y$'( !r by !ther mea'+ $' t!tal !r $' %art+ at the re,"et !# !ther
$'t$t"t$!' !r $'d$)$d"al #!r the %"r%!e !# ch!larly reearch&
S$('at"re
Sam!' A$ye(b"$
1
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
3/174
ABSTRACT
U$'( m!der' tech'!l!(y t! ma-e rec!mme'dat$!' t! %e!%le .$th %art$c"lar
$'teret ha %r!)ed t! be '! $m%le ta-& Th$ %r!/ect e0%l!re "$'( ema't$ctech'!l!($e a a mea' #!r cla$#y$'( %r!#$le #!r "er $' !rder t! %r!)$de
them .$th rele)a't a'd acc"rate rec!mme'dat$!'& C!'$der$'( the '"mber !#
%e!%le .h! !.' mart %h!'e $'creae+ the rec!mme'dat$!' .$ll %r!)$ded
thr!"(h a m!b$le a%%l$cat$!' a each acc!"'t ca' be %er!'al$ed #!r a %art$c"lar
"er& I' !rder t! determ$'e .hether the rec!mme'dat$!' .ere "e#"l t! "er+
.h$lt c!m%ar$'( t! $m$lar a%%l$cat$!'+ a "r)ey .a d$tr$b"ted a'd the re"lt
%r!)ed the %r!/ect t! be a "cce&
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
4/174
ACKNOWLEDGEMENTS
F$rtly+ I .!"ld l$-e t! tha'- my m!ther #!r be$'( a' ama*$'( r!le m!del a'd #!r
%r!)$d$'( me .$th the tre'(th a'd $'%$rat$!' t! !)erc!me a'y !btacle& May
y!"r !"l ret $' %er#ect %eace&
I .!"ld al! l$-e t! e0%re my dee%et a%%rec$at$!' #!r my br!ther+ a they
ha)e ($)e' me the "'c!'d$t$!'al l!)e a'd "%%!rt thr!"(h!"t my e't$re l$#e& I
.$ll #!re)er be (rate#"l #!r all y!" ha)e d!'e #!r me&
Grat$t"de al! (!e t! my %r!/ect "%er)$!r+ Dr Taha Oma'+ #!r the c!'ta't
("$da'ce a'd "%%!rt thr!"(h!"t my #$'al year a'd th$ %r!/ect&
Lat b"t de#$'$tely '!t leat+ I .!"ld l$-e t! tha'- my (!!d #r$e'd Da)$d
2"cha'a' a he ha t"c- by a'd a$ted .$th ma$'ta$'$'( the hardh$% #r!m
th$ #$'al year&
3
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
5/174
TABLE OF CONTENTS
AS$%A#$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&' '
A#()*+,-./--)$S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'' '
$A,- * #*)$-)$S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&'
,'S$ * '/U%-S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&3
,'S$ * $A,-S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&3'
#"AP$-% 1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&1
')$%*.U#$'*)&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&1
1&1 'ntroduction&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&1
#"AP$-% 2&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&4
#*)$-3$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&4
2&1 -vents&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&4
&1&1 4hat are E)e't5&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&6
&1& E0$t$'( E)e't M!b$le A%%l$cat$!'&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&7
2&2 User Profiling&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&5
&&1 4hat $ Uer 8r!#$l$'(5&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&9
&& H!. $ Uer 8r!#$l$'( "ed $' A%%l$cat$!'5&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&1:
&&3 O't!l!($cal Uer 8r!#$l$'(&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&11
&&6 E0$t$'( $m%leme'tat$!' !# Uer 8r!#$l$'( $' M!b$le A%%l$cat$!'&&&&&&13
2& %ecommender systems&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&14
6
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
6/174
&3&1 4hat are Rec!mme'der Sytem5&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&16
&3& 4hat are C!llab!rat$)e F$lter$'( Rec!mme'dat$!'5&&&&&&&&&&&&&&&&&&&&&&&&1;
&3&3 E0$t$'( A%%l$cat$!' That Ue C!llab!rat$)e F$lter$'( rec!mme'dat$!'
1&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&116
APP-).'3 A *)$*,*/> #,ASS-S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&124
APP-).'3 *)$*,*/> *B-#$S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&128
APP-).'3 # *)$*,*/> ').''.UA,S&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&12
APP-).'3 . ,A#( *3 $-S$')/&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&16
APP-).'3 - -$A $-S$')/&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&1;
APP-).'3 /A)$$ #"A%$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&14
APP-).'3 / P,A))')/ .*#U-)$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&147
9
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
11/174
LIST OF FIGURES
F$("re 1 BE)e'tbr$te $'teret elect$!' %a(e BA%% St!re+ :1;&&&&&&&&&&&&&&&&&&&&13
F$("re BI'ta(ram Search E0%l!re %a(e BA%% St!re+ :1;&&&&&&&&&&&&&&&&&&&&&16
F$("re 3 BAma*!' Sh!%%$'( 2a-et BAma*!'&c!&"-+ :1;&&&&&&&&&&&&&&&&&&&&&&&&&&&1
F$("re > BS$(' "% %a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&39
F$("re 9 BRec!mme'dat$!' %a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&6:
F$("re 1: BCh!e' e)e't %a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&61
F$("re 11 BAdd E)e't 8a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&6
F$("re 1 B4atch L$t %a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&63
F$("re 13 BCale'dar 8a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&66
F$("re 16 BUer 8r!#$le O't!l!(y C!'ce%t Ma%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&67
F$("re 17 BNe. "er e,"e'ce d$a(ram&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&6;
F$("re 1; BL!($' Se,"e'ce D$a(ram&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&6 BS8AR@L ,"ery "$'( e'a $' Netbea'&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;
F$("re 9 B@"ery$'( Uer 8r!#$le Clae&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;3
F$("re 3: BSect$!' !# the re"lt #r!m ,"ery $' JML F!rmat&&&&&&&&&&&&&&&&&&&&&&&&&&;6
F$("re 31 BC!de #!r e0tract$'( "er %r!#$le #r!m ta(&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;6
F$("re 3 B%h%MyAdm$' l!($' %a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;7
F$("re 33 BAll Table&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;;
F$("re 36 BUer Table C!l"m'&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;;
F$("re 37 BCate(!ry Table&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&;7
F$("re 7 BCh!e' e)e't #r!m Career cate(!ry&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&>7
F$("re 73 B8r!ce a#ter .atch b"tt!' $ %reed&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&>9
F$("re 7; BCale'dar 8a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&9:
1
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
14/174
F$("re 7< BC!'te't=2aed rec!mme'dat$!'&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&91
F$("re 7> BSelect$'( Fr$e'd&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&9
F$("re 79 BF$lter$'( rec!mme'dat$!' by #r$e'd&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&93
F$("re ;: BC!llab!rat$)e a%%r!ach&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&97
F$("re ;1 BSelect$'( I'teret 8r!ce&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&9;
F$("re ; BRec!mme'dat$!' %a(e&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&9;
F$("re ;3 BSearch E)e't&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&9
https://www.sqlite.org/selfcontained.htmlhttps://www.sqlite.org/selfcontained.htmlhttps://www.sqlite.org/serverless.htmlhttps://www.sqlite.org/zeroconf.htmlhttps://www.sqlite.org/transactional.htmlhttps://www.sqlite.org/selfcontained.htmlhttps://www.sqlite.org/selfcontained.htmlhttps://www.sqlite.org/serverless.htmlhttps://www.sqlite.org/zeroconf.htmlhttps://www.sqlite.org/transactional.html -
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
44/174
A'!ther d$ad)a'ta(e !# th$ $ that $t $ l!. a $t l!c- the .h!le #$le #!r .r$t$'(
a'd ha '! cach$'( mecha'$m !# $t !.' BTal-&%h%&'et+ :1;&
The !ther !%t$!' $ $t "e a cl!"d databae t!ra(e+ .h$ch are databae that are
t!red !' the cl!"d that !##er !'=dema'd el#=er)$ce ! that "er ca' ma'a(e
c!m%"t$'( ca%ab$l$t$e .$th!"t h"ma' $'teract$!' #r!m the er)$ce %r!)$der&
8are&c!m !##er th$ #ac$l$ty e'abl$'( "er t! create databae at '! c!t a'd
%r!)$de a l$brary a)a$lable t! ma'y !%erat$'( ytem l$-e IOS a'd A'dr!$d t!
a$t $' $'teract$'( .$th $t cl!"d t!ra(e& O'e !# the b$((et ad)a'ta(e !#
cl!"d t!ra(e $ that $t ha #at a"t!mated rec!)ery #r!m #a$l"re a e)eryth$'(
bac-ed "% !' the cl!"d+ .h$ch !##er better %er#!rma'ce a'd calab$l$ty& A .ell
a th$+ $t $ de)$ce $'de%e'de't+ there#!re+ m"lt$%le "er .h! ha)e acce t!
the a%%l$cat$!' .$ll be able t! acce the$r acc!"'t a the$r crede't$al .$ll rema$'
the ame+ he'ce+ "er .$ll '!t ha)e t! .!rry ab!"t l!$'( the$r acc!"'t $' the
"'#!rt"'ate cae !# them l!$'( the$r m!b$le de)$ce+ a $t .$ll '!t a##ect the$r
acc!"'t $'#!rmat$!' BDatabae Ma'a(eme't+ :1;& The d$ad)a'ta(e !# "$'(
the cl!"d databae t!ra(e $ that there are ec"r$ty a'd %r$)acy $"e a'd th$
$ a del$cate matter a the %r!%!ed a%%l$cat$!' re,"$re crede't$al "ch a a
"er'ame a'd %a.!rd that "er may al! "e !ther er)$ce that re,"$re the
ame $'#!rmat$!' a'd a th$ !%t$!' ha %!!r $de't$ty a'd acce ma'a(eme't
BSe'+ :1; $t ma-e th$ !%t$!' le !# a ch!$ce d"e t! lac- !# tr"t&
The #$'al !%t$!' t! be c!'$dered $ a MyS@L databae .h$ch $ !'e !# the m!t
%!%"lar S@L databae ma'a(eme't ytem beca"e !# the ad)a'ta(e $t
%r!)$de t! $t "er !'e ma$'ly be$'( that $t .!r- !' ma'y !%erat$'( ytem
a'd "%%!rt ma'y %r!(ramm$'( la'("a(e "ch a 8H8+ 8ERL+ C+ C+ a'd
AVA& A .ell a th$+ $t $ releaed "'der a' !%e'=!"rce l$ce'ce+ there#!re+
there $ '! c!t t! "e $t& 4$th re(ard t! mem!ry "a(e+ MyS@L %re)e't
mem!ry lea- th" e'abl$'( e##$c$e't !l"t$!' #!r $'#!rmat$!' t!ra(e& A $'(le
databae ca' h!ld "% t! > Terabyte !# data+ alth!"(h the de#a"lt l$m$t $ 6 G2
9
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
45/174
BH"b8a(e+ :1;& Data ec"r$ty m"t be ta-e' $'t! c!'$derat$!' a cl!"d
databae t!ra(e d!e '!t %r!)$de m"ch c!'#$de'ce $' th$ #$eld .herea .$th a
MyS@L databae+ "'a"th!r$ed acce t! data $ '!t %!$ble $'ce $t $ %r!tected
.$th e'cry%ted databae %a.!rd& S%ec$al a"th!r$ty a'd r$(ht are "b/ected
!'ly t! a"th!r$ed e'try& It $ .$th data ec"r$ty layer that %r!tect $'#!rmat$!'
#r!m male#$c c!de a'd %r!(ramme& A "'$,"e "er ID that $ %re=%ec$#$ed .$ll
be rec!('$ed by the h!t ytem a'd all!.ed t! m!d$#y %r!cee a'd %er#!rm
!%erat$!'& M!re!)er+ data ca' be rec!)ered "$'( bac-"%+ cach$'( a'd l!( #$le
$# they are c!rr"%ted !r l!t& Ret!rat$!' !# data $ e'"red $' MyS@L .h$ch
%r!)$de m!re c!'#$de'ce a the de)el!%er .$ll be the !'ly !'e .$th a"th!r$ed
acce t! the "er $'#!rmat$!' BH"b8a(e+ :1;& H!.e)er+ a %er#!rma'ce a'd
calab$l$ty are al! -ey #act!r t! ta-e $'t! c!'$derat$!' a the %r!%!ed
a%%l$cat$!' $ a' A'dr!$d a%%l$cat$!'+ the de)$ce 'eed a .ay t! be able t!
c!''ect t! the MyS@L databae&
U$'( A8I BA%%l$cat$!' 8r!(ramm$'( I'ter#ace+ a%%l$cat$!' are able t!
c!mm"'$cate .$th !ther a%%l$cat$!'+ $# a' A8I .ere t! be de)el!%ed the' $t ca'
e'able c!mm"'$cat$!' #r!m the m!b$le a%%l$cat$!' t! a' a%%l$cat$!' that "e a
MyS@L databae t! retr$e)e $'#!rmat$!'& A' A8I reemble a S!#t.are a a
Ser)$ce BSaaS .h$ch cl!"d er)$ce %r!)$de $'ce de)el!%er d! '!t 'eed t!
tart #r!m cratch e)ery t$me they .a't t! de)el!% a %r!(ramme a all er)$ce
!%erat$!' l$-e earch$'( #!r a' e)e't ca' be d!'e $' the A8I& All the cl$e't
%r!(ramme ha t! d! call the meth!d a'd e'd !)er !me $'#!rmat$!' #!r the
A8I a'd %r!ce a'd ret"r' a re%!'e t! the cl$e't a%%l$cat$!'+ he'ce red"c$'(
the %r!(ramm$'( !' the cl$e't $de B8r!(rammable4eb+ :1;&
A#ter d$c"$'( d$##ere't databae !l"t$!'+ $t ha bee' dec$ded that a MyS@L
databae .$ll be "ed a $t ad)a'ta(e c!)er the d$ad)a'ta(e !# b!th S@L$te
a'd Cl!"d databae& A .ell a th$+ by creat$'( a'd %r!)$d$'( a' A8I+ !ther
3:
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
46/174
de)el!%er ca' ea$ly create the$r !.' rec!mme'der ytem #r!m $m%ly call$'(
the meth!d the A8I %r!)$de a $t red"ce the %r!(ramm$'( !' the cl$e't $de&
&4 unctional 9 )on:unctional %equirements
&4&1unctional %equirements
3&6&1&1 Uer Acc!"'t Re,"$reme't
= Uer m"t be able t! create a' acc!"'t= Uer m"t be able t! L!($'= Uer m"t be able t! L!(!"t= Uer m"t tay l!((ed $' !'ce the a%%l$cat$!' $ cl!ed a'd !%e'ed a(a$'
$# they are already l!((ed $'
%equirements Bustification
A me't$!'ed $' the %re)$!" cha%ter+ B?a'!/e+ G$rae a'd M"-h!%adhyay+ :1;
$de't$#$e "er %r!#$l$'( a the %r!ce !# $de't$#y$'( the data ab!"t a "er
$'teret d!ma$'& I' !rder t! ca%t"re a'd $de't$#y data #!r $'d$)$d"al "er+
e'abl$'( them t! create the$r !.' acc!"'t a$t $' ach$e)$'( th$ (!al& A .ell
a th$+ $t e'able rec!mme'dat$!' t! be %er!'al$ed #!r each "er&
3&6&1& E)e't Re,"$reme't
= A%%l$cat$!' m"t h!. "er a l$t !# e)e't= E)e't m"t be cate(!r$ed= Each e)e't m"t h!. the "er that created the e)e't
%equirements Bustification
BE)e'ted"cat$!'&c!m+ :1; e0%la$' that there are ma'y d$##ere't ty%e !#
e)e't .h$ch are held #!r d$##ere't !cca$!' a'd ca'+ there#!re+ be cate(!r$ed
e%arately& Cate(!r$$'( thee e)e't $'t! e%arate l$t e'able the e)e't t! be
cla$#$ed t! the$r re%ected cate(!ry a'd $m%r!)e the clar$#$cat$!' a'd d$c!)ery
#!r each e)e't a "er are there#!re able t! earch #!r a %art$c"lar e)e't $# they
are $'tereted $' a %art$c"lar cate(!ry&
31
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
47/174
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
48/174
= Uer m"t be able t! add a' $'teret $# $t $ '!t already $' the l$t $#
$'teret %r!)$ded= Uer m"t be able t! cha'(e the$r $'teret
%equirements Bustification
B?a'!/e+ G$rae a'd M"-h!%adhyay+ :1; re#er t! ta-$'( a -'!.led(e=bae
a%%r!ach t! "er %r!#$l$'(+ there#!re+ by %r!)$d$'( "er .$th a de#$'ed l$t !#
$'teret $' !rder t! a)!$d the c!ld tart %r!blem that BAd!ma)$c$" a'd T"*h$l$'+
::7 re#er t!& A .ell a th$+ e)e' $# "er d$c!)er that the$r $'teret are '!t
.$th$' the l$t %r!)$ded+ they ca' the' e'ter .hat they are $'tereted $'&
3&6&1&; Add$'( E)e't Re,"$reme't
= Uer m"t be able t! add e)e't= Uer m"t be able t! ee all the e)e't they ha)e %!ted= Uer m"t be able t! ee all $'#!rmat$!' !' h!. ma'y "er are
.atch$'( the e)e't they ha)e %!ted $' the a%%l$cat$!'= Uer m"t be able t! "%date !'ly the e)e't they ha)e %!ted
%equirements Bustification
The E)e't ect$!' $' the %re)$!" cha%ter d$c"e h!. E)e't Or(a'$er
%r!m!te the$r e)e't t! ma-e a d$rect !r $'d$rect re)e'"e #r!m ra$$'(
a.are'e+ there#!re+ by %r!)$d$'( th$ #eat"re t! "er+ E)e't Or(a'$er .$ll be
able t! ach$e)e the$r (!al&
Uer ha)e me't$!'ed $"e $' retr$e)$'( tat$t$c !' the e)e't they ha)e
%!ted .$th the E)e'tbr$te a%%l$cat$!'+ he'ce+ "er ha)e t! "'$'tall a'd the'
$'tall the a%%l$cat$!' a(a$' $' !rder t! #$0 th$ re!cc"rr$'( $"e& T! addre th$+
%r!)$d$'( tat$t$c !# the am!"'t !# "er that are .atch$'( the$r e)e't ($)e
the %r!m!ter a (!!d !)er)$e. !# the am!"'t !# "er that ha)e h!.' $'teret
$' the$r %!ted e)e't&
3&6&1&< Rec!mme'der Sytem Re,"$reme't
= A%%l$cat$!' m"t Rec!mme'd e)e't baed !' the "er $'teret
33
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
49/174
= A%%l$cat$!' m"t Rec!mme'd e)e't baed !' "er #r$e'd= A%%l$cat$!' m"t $'#!rm "er !' the ba$ !# the rec!mme'dat$!'= A%%l$cat$!' m"t be able t! rec!mme'd e)e't t! "er baed !'
$'teret that .ere %ec$#$ed by the "er
%equirements Bustification
A#ter d$c"$'( the d$##ere't ty%e !# rec!mme'der ytem $' the %re)$!"
cha%ter .h$ch are C!llab!rat$)e+ C!'te't=baed a'd ?'!.led(e=baed
rec!mme'der ytem+ $t eemed that the ad)a'ta(e !# each rec!mme'der
ytem c!)er !me !# the d$ad)a'ta(e !# the !ther rec!mme'der ytem&
Rec!mme'd$'( e)e't baed !' "er $'teret $' %art$c"lar ty%e !# e)e't $ a
#eat"re !# a c!'te't=baed rec!mme'der ytem+ .herea+ rec!mme'd$'(
e)e't baed !' "er .$th $m$lar $'teret $ a #eat"re !# a C!llab!rat$)e
rec!mme'der ytem a'd rec!mme'd$'( e)e't baed !' %ec$#$ed "er
$'teret $ a #eat"re !# a -'!.led(e=baed rec!mme'der ytem& Im%leme't$'(
thee a%ect !# each rec!mme'der ytem .$th$' the a%%l$cat$!'+ there#!re+
c!)er the #la. !# the !%%!$'( rec!mme'der ytem&
3&6&1&> O%e' S!"rce Re,"$reme't
= S!"rce c!de m"t be a)a$lable #!r %"bl$c "e
%equirements Bustification
The E)e'tbr$te a%%l$cat$!' !##er a' A8I #!r the$r e)e't+ h!.e)er+ they d!
'!t !##er the !"rce c!de #!r the$r rec!mme'der ytem a'd 'e$ther d!e
E)e'tG$a't& There#!re+ de)el!%er are "'able t! "e the$r rec!mme'der
ytem $' the de)el!%me't !# the$r !.' a%%l$cat$!'+ h!.e)er+ th$
a%%l$cat$!' !"rce c!de .$ll be a)a$lable #!r %"bl$c "e t! #"rther de)el!% !r
t! "e #!r the$r !.' a%%l$cat$!'&
36
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
50/174
&4&2)on:unctional %equirements
3&6&&1 Sec"r$ty Re,"$reme't
= Uer crede't$al h!"ld be a#ely ec"red
%equirement Bustification
A d$c"ed $' the %re)$!" cha%ter+ each "er %r!#$le h!"ld be %er!'al$ed #!r
each $'d$)$d"al "er+ there#!re $# the "er acc!"'t $ '!t a#ely ec"red the'
!ther "er .h! ha)e "'a"th!r$ed acce may $'ter#ere .$th the ,"al$ty !# the
rec!mme'dat$!' by elect$'( e)e't that the a"th!r$ed "er ha '! $'teret $'+
there#!re+ each acc!"'t m"t be -e%t ec"re&
3&6&& 8er#!rma'ce Re,"$reme't
= A%%l$cat$!' h!"ld be t$me e##$c$e't .he' l!ad$'( e)e't= A%%l$cat$!' h!"ld '!t ta-e "% a l!t !# mem!ry !' de)$ce
%equirement Bustification
L!!-$'( at the re)$e. !# the c"rre't a%%l$cat$!'+ $t eem that "er are
e'$t$)e t! the .ay they $'teract .$th the a%%l$cat$!'+ there#!re+ $t ca' be a$d
that $# the a%%l$cat$!' ta-e t!! l!'( t! l!ad e)e't+ "er .$ll (et #r"trated a'd
$' re%!'e t! th$+ they .$ll %!t 'e(at$)e re)$e. ab!"t th$ a%%l$cat$!' .h$ch
ca' there#!re deter 'e. %!te't$al "er #r!m "$'( the a%%l$cat$!'&
A .ell a th$+ a%%l$cat$!' that ta-e "% t!! m"ch mem!ry te'd t! be the !'e
that "er rem!)e #r!m the$r m!b$le de)$ce+ there#!re $' !rder t! ma$'ta$' l!'(=
term "e !# the a%%l$cat$!'+ $t 'eed t! be mem!ry e##$c$e't&
3&6&&3 Uab$l$ty Re,"$reme't
= Uer h!"ld '!t re,"$re "er t! lear' h!. t! "e the a%%l$cat$!' t! be
able t! "e $t= A%%l$cat$!' $c!' h!"ld be ea$ly $de't$#$ed
%equirements Bustification
37
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
51/174
I' the %re)$!" cha%ter+ $t .a d$c"ed that there are ma'y d$##ere't -$'d !#
e)e't+ .h$ch there#!re mea' there $ '!t a %ec$#$c a(e l$m$t #!r "er t! "e
the a%%l$cat$!' a there are e)e't that attract %e!%le !# all a(e& I' !rder t!
cater #!r th$+ the a%%l$cat$!' h!"ld ha)e #eat"re that are $m%le t! "'derta'd
#!r a'y "er ! that $# they are #$rt t$me "er !r "er that ha)e '!t "ed the
a%%l$cat$!' #!r a l!'( t$me+ they .$ll ha)e '! %r!blem $' "$'( $t& U$'( $c!'
that ca' be ea$ly $de't$#$ed beca"e they are c!mm!' $' e)ery a%%l$cat$!'+
e'able "er t! already ha)e !me #am$l$ar$ty .he' "$'( the a%%l$cat$!' #!r the
#$rt t$me&
3&6&&6 Rel$ab$l$ty Re,"$reme't
= A%%l$cat$!' h!"ld '!t crah "'der a'y c$rc"mta'ce
%equirements Bustification
D"e t! a '"mber !# 'e(at$)e re)$e. #!r the E)e'tbr$te a%%l$cat$!'+ $t ca' be a$d
that "er .h! are #am$l$ar .$th "$'( th$ er)$ce are e'$t$)e t! the er)$ce
the a%%l$cat$!' %r!)$de+ #!r e0am%le+ !'e !# the "er a$d +ninstalling. I really
,ant to love this app" but no matter ho, many times I hit refresh it never
,orks. I have to uninstall and reinstall to get the latest stats on my events.
ope. #i this and I!d give it 4 or / starsP& Th$ h!. that !'e $"e that may
be m$'!r+ ca' lead t! "er ($)$'( a l!. rat$'(+ b"t by addre$'( th$ $"e+ $t
ca' cha'(e a "er %er%ect$)e !' the a%%l$cat$!' dramat$cally+ a th$ "er had
!r$($'ally ($)e' the a%%l$cat$!' a =tar rat$'(+ b"t by !l)$'( th$ $"e+ they
.ere .$ll$'( t! ($)e 6 !r 7=tar rat$'(+ .h$ch h!. h$(h "er at$#act$!'+ he'ce
the 'eed #!r th$ re,"$reme't&
&7 System %equirements
&7&1"ard!are %equirements
= A'dr!$d M!b$le De)$ce
3;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
52/174
%equirements Bustification
The ch!$ce !# a%%l$cat$!' .a bet.ee' IOS a'd A'dr!$d beca"e they are b!th
mar-et leader B...&$dc&c!m+ :17+ h!.e)er+ A'dr!$d c!'tr!l >&> !# the
mar-et+ c!m%ared t! the 13&9 that IOS c!'tr!l .h$ch there#!re a$ted $' the
dec$$!' !# ch!!$'( A'dr!$d !)er IOS& A .ell a th$+ de)el!%$'( !' a' A'dr!$d
de)$ce d!e '!t re,"$re a de)el!%er l$ce'ce .herea de)el!%$'( !' IOS d!e+
.h$ch $ $'c!')e'$e't+ he'ce $t .a dec$ded t! de)el!% !' a' A'dr!$d de)$ce&
&7&2Soft!are %equirements
= Net2ea' IDE= A'dr!$d St"d$! IDE= e'a L$brary= a)a 8r!(ramm$'( La'("a(e= MyS@L Ser)er
%equirement Bustification
D"e t! the #am$l$ar$ty !# A'dr!$d t"d$!+ the de)el!%er dec$ded t! "e th$ a the
de)el!%me't e')$r!'me't #!r the A'dr!$d a%%l$cat$!' $'tead !# the Ecl$%e IDE&
The a%%l$cat$!' .$ll 'eed a databae t! t!re the "er e)e't+ there#!re $'
!rder t! ach$e)e the '!'=#"'ct$!'al re,"$reme't !# mem!ry e##$c$e'cy+ the
Net2ea' IDE .$ll be "ed t! t!re $'#!rmat$!' $' a MYS@L databae a'd t!
de)el!% the A8I ! that $'#!rmat$!' ca' be %aed t! the m!b$le de)$ce& I' !rder
t! $'te(rate the !'t!l!(y $' a)a+ the e'a l$brary .$ll be 'eeded he'ce .hy $t $
a re,"$reme't& 2!th IDE ca' be %r!(rammed $' the a)a %r!(ramm$'(
la'("a(e a'd the e'a l$brary $ a)a$lable $' a)a+ there#!re+ th$ $ the
%r!(ramm$'( la'("a(e that .$ll be "ed&
3
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
53/174
&6 Architecture
igure 6
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
54/174
igure 8
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
55/174
igure ;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
56/174
igure 5
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
57/174
igure 10
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
58/174
igure 11
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
59/174
The .atch l$t %a(e h!. a l$t !# e)e't that the "er ha h!.' a' $'teret $'&
I# the l$t !# e)e't $ e0ceed$'( the $*e !# the de)$ce cree'+ the' the l$t !#
e)e't ca' be cr!lled thr!"(h )ert$cally& Uer .$ll be able t! )$e. !r rem!)e
e)e't #r!m the .atch l$t by cl$c-$'( !' a' e)e't& A d$al!("e .$ll the' be h!.'
%r!)$d$'( the !%t$!' #!r the "er t! e$ther )$e. the e)e't !r rem!)e $t #r!m the$r
.atch l$t& I# the "er ch!!e t! )$e. the e)e't+ they are the' ta-e' t! the
ch!e' e)e't %a(e a'd $# they (! bac- they .$ll ret"r' t! the .atch l$t %a(e& I#
the "er ch!!e t! rem!)e the e)e't #r!m the$r .atch l$t $'tead+ the' they
.$ll be a-ed $# they are "re $# th$ $ the$r tr"e $'te't$!'+ t! %re)e't the b"tt!'
be$'( cl$c-ed by acc$de't+ a'd $# they a(ree t! rem!)e the e)e't the' they .$ll
be h!.' the "%dated .atch l$t&
66
igure 12
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
60/174
The cale'dar %a(e .$ll h!. a d!t !' each date t! $'d$cate t! the "er that !'e
!# the e)e'tB that they are .atch$'( B$'$de .atch l$t $ !' the date mar-ed&
Th$ ($)e the "er a clearer )$e. !# $de't$#y$'( .he' the e)e't they ha)e
ch!e' $ tart$'( .h$ch $ a m!re c!')e'$e't ta- tha' cl$c-$'( !' e)ery e)e't!' the .atch l$t $' !rder t! #$'d the date !# the e)e't& O'ce the "er ch!!e a
date .h$ch ha a d!t "'der'eath $t+ $t .$ll h!. a l$t !# e)e't !' that date a
.ell a the e)e't 'ame+ .he' the e)e't tart a'd .he' $t #$'$he&
67
igure 1
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
61/174
&; *ntology .esign
igure 14
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
62/174
&5 Sequence diagrams
&5&1)e! User
igure 17
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
63/174
&5&2,ogin
igure 16
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
64/174
&5&%ecommender System
Uer are able t! elect $'teret+ a'd !'ce they ha)e elected the$r $'teret+ a
meth!d $ $')!-ed t! rece$)e the rec!mme'dat$!' a'd $' d!$'( !+ thee
$'teret are %r!ceed .$th$' the !'t!l!(y t! ret"r' a l$t !# "er %r!#$le that
the !'t!l!(y d$c!)er thr!"(h ema't$c $'#ere'ce& O'ce the A8I ha a l$t !#
"er %r!#$le $t ca' the' earch thr!"(h the databae #!r !ther "er .$th $m$lar
"er %r!#$le a'd there#!re rec!mme'd e)e't that they are al! $'tereted $' a
a' a%ect !# c!llab!rat$)e #$lter$'(& The A8I al! earche thr!"(h e0ter'al A8I
t! retr$e)e e)e't t! %re)e't the c!ld tart %r!blem a'd the' de)$e a l$t !#
e)e't a'd e'd them bac- t! the a%%l$cat$!'&
&10 Project Plan
&10&1 /antt chart
See A%%e'd$0 F
&10&2 #ontingency Planning
A there are m"lt$%le d$##ere't de)el!%me't e')$r!'me't be$'( "ed $' !rder t!
"e a)a$lable tech'!l!($e t! ma-e the a%%l$cat$!' a e##$c$e't a %!$ble+
69
igure 18
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
65/174
ma$'ta$'$'( the d$##ere't c!de #$le ca' be c!'#"$'( a'd cater$'( #!r "'e0%ected
c$rc"mta'ce ca' be a c"mber!me ta-&
I' !rder t! cater #!r "'e0%ected c$rc"mta'ce "ch a data l!+ .here the
de)el!%me't c!de !r %r!/ect reearch bec!me "'!bta$'able #!r "'-'!.'
rea!'+ bac-="% 'eed t! be made t! e0ter'al de)$ce e'"re that there $
m"lt$%le )er$!' !# the de)el!%me't c!de a'd %r!/ect reearch+ a'd thee bac-=
"% 'eed t! be made each t$me a' "%date ha bee' made t! thee #$le&
A !'e ca' 'e)er be t!! a#e+ $')et$'( !me t$me t! creat$'( a Dr!%b!0
acc!"'t+ .h$ch $ a' !'l$'e #ac$l$ty that e'able "er t! t!re data !# "% t! 7G2
#!r #ree+ a'yth$'( m!re "er .$ll ha)e t! %ay+ e'"re that $' the "'l$-ely cae
that the de)el!%me't c!de a'd %r!/ect reearch $ l!t #r!m the e0ter'al de)$ce
a'd the c!m%"ter+ the' the .!r- ca' t$ll be retr$e)ed #r!m the !'l$'e #ac$l$ty&
A #$'al mea"re .$ll be et $' %lace #!r ec"r$'( the de)el!%me't c!de !' G$th"b+
a A'dr!$d St"d$! a'd Netbea' %r!)$de a Ver$!' C!'tr!l #eat"re #!r t!r$'( the
de)el!%me't c!de d$rectly t! G$th"b .$th!"t d!.'l!ad$'( a'y !ther a%%l$cat$!'&
7:
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
66/174
#"AP$-% 4
'P,--)$A$'*)
4&1 'ntroduction
The a$m !# the m!b$le a%%l$cat$!' $ t! ca%t"re "er $'teret a'd %r!)$de
rele)a't rec!mme'dat$!' baed !' thee $'teret& A#ter d$c"$'( the
%r!blem that are #aced .$th c"rre't $m$lar a%%l$cat$!' $' Cha%ter a'd
$de't$#y$'( a .ay t! !l)e the %r!blem .$th 'e. $dea a'd $'tr$cate %la''$'( $'
Cha%ter 3+ $t $ '!. re,"$red t! e0h$b$t the re"lt !# th$ by h!.$'( h!. "$'(
d$##ere't tech'!l!($e ca' be "ed a'd $'te(rated t!(ether $' !rder t! ach$e)e a
!l"t$!' t! the %r!blem at ha'd&
The tech'$cal$t$e !# the !l"t$!' .$ll be addreed $' th$ cha%ter+ h$(hl$(ht$'(
h!. d$##ere't %$ece .ere %rec!'ce$)ed a'd $m%leme'ted $' !rder t! adhere t!
the re,"$reme't tated $' the %re)$!" cha%ter+ e)e't"ally #$tt$'( t!(ether t!
%a$'t the %er#ect %$ct"re&
4&2 ethodology
4ater#all BTrad$t$!'al Meth!d!l!(y
The .ater#all m!del $ the m!t %!%"lar meth!d!l!(y .he' $t c!me t! the
ytem de)el!%me't l$#e cycle+ th$ meth!d!l!(y $ .$dely "ed .he' de)el!%$'(
a 'e. %$ece !# !#t.are& The de)el!%me't %r!cee $')!l)ed $' th$ m!del are
decr$bed a r$($d a'd l$'ear+ .$th et (!al .h$ch ha)e t! be c!m%leted be#!re
m!)$'( !'t! the 'e0t ta(e& The tr"ct"re !# th$ m!del #!c"e !' the
$m%!rta'ce !# %la''$'( a'd e'"r$'( that all tar(et are met !' t$me+ .$th the
71
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
67/174
de)el!%me't B$m%leme'tat$!' ta(e be$'( c!m%leted $' the %e'"lt$mate ta(e
.$th tr$ct re,"$reme't be#!re de)el!%$'(& S!me !# the ad)a'ta(e !# th$
m!del are the h$(h le)el !# d!c"me'tat$!' .h$ch $ re,"$red $' the re,"$reme't
ta(e+ th$ hel% $'creae the ,"al$ty a'd #"'ct$!'al$ty !# the de)el!%ed !#t.are&
Th$ m!del $ al! "e#"l #!r %r!/ect .h$ch ha)e team )ar$at$!'& Ne. team
member ca' bec!me #am$l$ar .$th the et (!al by "'derta'd$'( .hat ha
already bee' ach$e)ed& O' the !ther ha'd+ there are d$ad)a'ta(e t! th$
meth!d!l!(y& F$rtly+ a the de)el!%me't ta(e $ c!m%leted 'ear the e'd !# the
%r!/ect+ th$ mea' that %r!blem are !#te' !'ly #!"'d $' the Tet$'( ta(e at
the )ery e'd !# the %r!/ect BCMS&(!)+ ::7& Th$ mea' that a'y %!te't$al
%r!blem m$(ht '!t be %!tted "'t$l the e'd !# the %r!/ect+ th" ma-$'( $t hard
t! cha'(e the re,"$reme't .h$ch ha)e bee' et $' %lace& Th$ meth!d al!
$'cl"de a )at am!"'t !# deta$led d!c"me'tat$!' .h$ch ca' !#te' be
c!m%l$cated #!r "er t! read+ th" ma-$'( the "e#"l'e !# the d!c"me't
red"'da't BIt$'#!&am+ :1;&
E0treme 8r!(ramm$'( BJ8 Meth!d!l!(y
E0treme %r!(ramm$'( $ a meth!d!l!(y .h$ch $ cate(!r$ed a a' A($le
%r!ce+ .h$ch #!c"e !' the de)el!%er del$)er$'( d$##ere't #eat"re !# the
ytem+ a they are 'eeded& There#!re+ the de)el!%er $' th$ ty%e !# m!del
ha)e t! be able t! re%!'d t! a'y cha'(e t! the c"t!mer re,"$reme't& All
%art$e $')!l)ed $' th$ meth!d!l!(y $'cl"d$'( the ma'a(er+ de)el!%er+ a'd
c"t!mer are all ee' a e,"al+ there#!re rely$'( !' team.!r- t! !l)e the
%r!blem the %r!/ect $ addre$'(& The ma$' tre'(th !# ha)$'( a team.!r-
dr$)e' tr"ct"re $ that the c!mm"'$cat$!' bet.ee' the de)el!%er a'd
c"t!mer $ (!!d+ th" $m%r!)$'( the c"t!mer at$#act$!' a the re,"$reme't
are m!re l$-ely t! be m!re "$table #!r the c"t!mer& A d$ad)a'ta(e t! J8 $
that $t e'c!"ra(e the "e !# %a$r %r!(ramm$'(+ th$+ a a re"lt+ may ca"e
d"%l$cat$!' !# c!de .h$ch .$ll ta-e a l!'( t$me t! r"'& Add$t$!'ally+ a' a%ect
7
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
68/174
.h$ch th$ meth!d!l!(y d!e '!t c!)er $ the ,"al$ty !# de)el!%me't+ #!r a lar(e
%r!/ect th$ may $'creae the cha'ce !# #a$l"re a ,"al$ty %la''$'( hel% %r!d"ce
h$(her ,"al$ty ytem BIt$'#!&am+ :1;&
Rat$!'al U'$#$ed 8r!ce BRU8 Meth!d!l!(y
Rat$!'al U'$#$ed 8r!ce $ a' A($le meth!d!l!(y .h$ch m!)e a.ay #r!m the
r$($d tr"ct"re .h$ch #!r e0am%le a 4ater#all m!del .!"ld !##er& S!me !# the
ma$' ad)a'ta(e !# "$'( th$ a%%r!ach are that the tr"ct"re all!. #!r the
cha'($'( !# re,"$reme't d"r$'( the %r!/ect l$#ecycle& I' th$ meth!d!l!(y
eleme't are $'te(rated %r!(re$)ely BIt$'#!&am+ :1; .$th 'e. #"'ct$!'al$t$e
!# the !#t.are be$'( %r!d"ced a#ter m$'$ "b=ta(e !# the %r!/ect& The $terat$)e
'at"re !# th$ a%%r!ach !##er a (reat $m%act !' the %r!/ect $' re(ard t! h!.
each de)el!%me't e$!' .$ll be tr"ct"red+ there#!re+ each e$!' .$ll be ee'
a a m$'$ $terat$!' .h$ch .$ll be "ed a a be'chmar- #!r #"rther $m%r!)eme't&
U$'( th$ meth!d al! all!. the %r!/ect t! %!t %!te't$al r$- early+ th$ $
d!'e by "$'( a' $terat$)e a%%r!ach .h$ch $de't$#$e r$- d"r$'( thede)el!%me't !# a certa$' #eat"re&
A#ter d$c"$'( the %r! a'd c!' !# d$##ere't meth!d!l!($e addreed+ RU8
.a deemed the m!t be'e#$c$al a %r!blem ca' be addreed early !' $' the
$m%leme'tat$!'+ .h$ch a)!$d ha)!c at the e'd .he' tet$'( the
$m%leme'tat$!'& M!re!)er+ $t al! all!. #!r the re,"$reme't t! be re=aeed
a'd there#!re deemed #$t #!r %"r%!e #!r th$ %r!/ect&
73
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
69/174
4& *ntology creation
4&&1ut !hy an *ntologyC
76
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
70/174
At #ace )al"e+ $t c!"ld be ar("ed that there $ '! rea!' #!r "$'( a' !'t!l!(y #!r
$de't$#y$'( "er %r!#$le .he' a l$t !# "er %r!#$le ca' be tated a'd a$('ed t!
a "er baed !' the$r m!t c!mm!' earched+ !r the cate(!r$e they elect
e)e't #r!m+ h!.e)er+ $t d!e '!t addre the %r!blem !# re#$'$'( earche
baed !' "er $'teret a earch$'( #!r m"$c $ br!ad+ c!'e,"e'tly+ %r!)$d$'(
re"lt !# m"$c e)e't that may be $rrele)a't&
igure 1;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
71/174
F$("re 1> h!. the earch !# M"$c at e)e't#"l&c!m a'd a y!" ca' ee+ the
ch!e' e)e't ha $'#!rmat$!' e%arated #r!m each !ther+ the t$tle !# the e)e't
ha '! relat$!' t! $t be$'( a m"$c e)e't a'd 'e$ther d!e the decr$%t$!'+
there#!re -ey.!rd ca''!t be "ed t! $de't$#y e)e't th$ .ay& I')et$(at$'(
#"rther t! $de't$#y a'y m!re $'#!rmat$!' that the e)e't %r!)$de+ the e)e't#"l A8I
.a "ed& I' d!$'( !+ the m"$c ta( .a #!"'d .h$ch e0%la$' h!. th$ .a
ret"r'ed #r!m earch$'( #!r m"$c& De%$te th$+ there $ a l!t m!re $'#!rmat$!'
%r!)$ded that ca' $de't$#y th$ e)e't a !meth$'( ele rather tha' /"t a m"$c
e)e't& The decr$%t$!' h!. that $t $ $' relat$!' t! a #et$)al a'd a %arty& I# a
"er .a t! elect a' e)e't $t ca' be ded"ced that th$ e)e't $ $' m!re relat$!'
t! a m"$c #et$)al+ #!r e0am%le+ tha' a m"$c e)e't a th$ $ br!ad a'd m"$c
#et$)al $ !# m!re rele)a'ce+ h!.e)er+ beca"e !# h!. the e)e't .a decr$bed
th$ $'#!rmat$!' c!"ld '!t be $de't$#$ed+ he'ce the 'eed #!r a .ay t! $de't$#y th$
$'#!rmat$!' .$th!"t rely$'( !' %r!m!ter t! decr$be the e)e't $' a' e0%l$c$t
.ay&
U$'( a' !'t!l!(y+ thee relat$!'h$% ca' be ema't$cally $de't$#$ed by
$de't$#y$'( the -$'d !# e)e't the ch!e' e)e't bel!'( t! a'd the' ded"c$'( the
"er %r!#$le the ch!e' e)e't bel!'( t!&
4&&2*ntology #reation Process
The O't!l!(y creat$!' .a baed !' the !'t!l!(y de$(' c!'ce%t Bee #$("re 16
$' !rder t! $de't$#y "er %r!#$le thr!"(h ema't$c rea!'$'(& 8r!t( $ the
'ame !# the !#t.are "ed t! create the !'t!l!(y+ a $t clearly h!. the
h$erarchy !# clae a'd e'able the creat$!' !# Clae+ I'd$)$d"al+ Ob/ect
8r!%ert$e a'd Data 8r!%ert$e& M!re!)er+ 8r!t( ha a ema't$c rea!'er
.h$ch e'able -'!.led(e t! be $de't$#$ed #r!m l!. le)el+ $' th$ cae $t $ the
"er %r!#$le&
7;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
72/174
6&3&&1 Cla Creat$!'
igure 15
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
73/174
6&3&& Creat$'( Relat$!'h$%
igure 20
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
74/174
Ob/ect character$t$c $ "ed t! etabl$h d$##ere't -$'d !# relat$!'h$% #!r the
rea!'ed t! $'#er& I' th$ cae+ haFr$e'd ha a ra'(e !# 8er!'+ th$ there#!re
$m%l$e a #r$e'd !# a %er!' ca' !'ly be a %er!'& 2y ma-$'( th$ !b/ect %r!%erty
I')ere #"'ct$!'al a'd tat$'( $t $ the $')ere !# the $Fr$e'dO# !b/ect
%r!%erty+ the ema't$c rea!'er .$ll be able t! $de't$#y a %er!' be$'( a #r$e'd !#
a'!ther #r$e'd& F!r e0am%le+ $# %er!' A ha a #r$e'd called %er!' 2+ th$
there#!re mea' %er!' 2 $ a #r$e'd !# %er!' A&
igure 22
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
75/174
Sce'ar$!
M$chael a'd L$!'el+ b!th #r$e'd a'd U'$)er$ty t"de't+ l$-e t! -ee% "% t! date
.$th Var$ty F!!tball e)ery year+ .h$ch $ a c!m%et$t$!' bet.ee' t.! r$)al
U'$)er$t$e+ a'd ! they elect e)e't related t! Var$ty F!!tball& H!.e)er+
L$!'el al! l$-e Var$ty Te''$ .herea M$chael d!e '!t&
igure 2
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
76/174
igure 24
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
77/174
The tateme't $' ,"ery 1 c!"ld be read a ret"r' e)ery %er!' that ha a
#!!tball "er %r!#$le a'd #r!m the ce'ar$! ($)e' ab!)e+ the re"lt are c!rrect
a'd the ame $ a%%l$ed t! the ec!'d ,"ery& Th$ $ (!!d #!r ca%t"r$'(
-'!.led(e $' 8r!t(+ h!.e)er+ $# the !'t!l!(y $ t! be "ed #!r the de)el!%me't
!# the a%%l$cat$!' the' a' S8AR@L @"ery .!"ld 'eed t! be "ed a th$ $ .hat $
c!mm!'ly "ed am!'( a%%l$cat$!' a $t a' !##$c$al 43C Rec!mme'dat$!'
B43&!r(+ :1;& 8r!t( al! ha a' S8AR@L @"ery t!!l t! $'%"t ,"er$e&
igure 26
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
78/174
igure 28
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
79/174
igure 2; a'd the re"lt that .ere ret"r'ed $' the D$rect I'd$rect Fact ect$!' .ere
'!t $' the D$rect Fact ect$!'+ th$ mea' that all !# the re"lt .ere $'d$rect
#act a'd the S8A@R@L ,"ery $ able t! $de't$#y $'#erred #act #r!m the !'t!l!(y
created+ th" c!'cl"d$'( the !'t!l!(y creat$!' %r!ce&
4&&-Dtracting %elevant 'nformation from *ntology
I' !rder t! %r!)$de m!re re#$'ed earche !# e)e't baed !' "er $'teret+ the
clae !# the "er %r!#$le are 'eceary+ a th$ .$ll be "ed t! $de't$#y the
earch %hrae t! be "ed&
;6
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
80/174
igure 25
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
81/174
igure 0
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
82/174
4&4 'nstalling .atabase
4&4&1ySJ,
I' !rder t! $'te(rate the MyS@L databae .$th$' the Netbea' de)el!%me't
e')$r!'me't+ the MyS@L er)er 'eeded t! be $'talled .$th$' the ytem that $
"$'( the databae& Th$ $ $m%!rta't a the databae ca' !'ly be acceed $# the
MyS@L er)er $ r"''$'( a'd $' !rder t! r"' !r t!% the er)er+ the ytem
crede't$al are re,"$red+ th$ e'"re that !'ly a"th!r$ed "er ca' c!'tr!l the
MyS@L er)er tat"&
igure 2
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
83/174
4&4&2.atabase $ables
igure
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
84/174
"'$,"ely by the$r "er'ame .h$ch e'"re that !ther "er ca''!t bear the
ame "er'ame& O' each "er rec!rd+ the$r "er %r!#$le .$ll be t!red $' $t
re%ected c!l"m' ! that $t ca' be retr$e)ed a'd the ame (!e #!r the "er
#r$e'd&
6&6&& Cate(!r$e Table
igure 7
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
85/174
6&6&&3 E)e't 4atched E)e't Table
igure 6
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
86/174
4&7 Application Programming 'nterface
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
87/174
arch$tect"re+ $t $ the' re#erred t! a a REST#"l A8I a'd they "e HTT8 re,"et
t! %!t !r "%date data .$th the 8OST a'd 8UT re,"et+ retr$e)e data .$th the
GET re,"et a'd rem!)e data .$th the DELETE re,"et&
H!.e)er+ the %r!blem .$th REST $ that $t ha a tatele e0$te'ce+ th$ mea'
that the er)er d!e '!t t!re a'y tate ab!"t the cl$e't e$!' !' the er)er
$de .h$ch $ a %r!blem beca"e .eb er)$ce 'eed t! (et e0tra $'#!rmat$!' $'
each re,"et a'd the' $'ter%ret $t t! (et the cl$e't tate $' !rder t! ma'a(e
cl$e't $'teract$!'+ !' the !ther ha'd+ REST be$'( tatele $ the !'ly .ay t!
cale #!r ma'y c!'c"rre't "er& O'e ad)a'ta(e !# REST $ that $t "e a maller
mea(e #!rmat tha' SOA8 a SOA8 "e JML #!r all $t mea(e+ he'ce
ma-$'( $t mea(e $*e m"ch lar(er+ .herea REST "e JML a'd !ther #!rmat
"ch a SON a'd thee re,"et d! '!t re,"$re $'te'$)e %r!ce$'(+ th"
ma-$'( REST a m!re e##$c$e't !%t$!' BSearchSOA+ :1;&
A#ter d$c"$'( the a%ect !# b!th SOA8 a'd REST+ $t $ )ery clear that REST $
the m!t e##$c$e't !%t$!' .$th re(ard t! %r!ce$'( $'#!rmat$!' #r!m re,"et athe a%%l$cat$!' .$ll be #!r a m!b$le de)$ce a'd re,"$re a' e0te'$)e am!"'t !#
data+ he'ce %er#!rma'ce a'd calab$l$ty $ %aram!"'t& M!re!)er+ the
de)el!%me't e')$r!'me't $ A'dr!$d St"d$!+ #!r the m!b$le a%%l$cat$!'+ $t d!e
'!t %r!)$de a l$brary that "%%!rt SOA8 re,"et& 2aed !' th$+ a REST#"l .eb
er)$ce .$ll be de)el!%ed #!r the "e !# tra'%!rt$'( $'#!rmat$!'&
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
88/174
4&7&2%-S$ful AP' .evelopment
6&7&&1 Creat$'( REST#"l A8I
igure 8
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
89/174
igure 5
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
90/174
4&7&-Dternal AP'Ms
U$'( e0ter'al A8I that are related t! e)e't+ $t $ %!$ble t! e0te'd the c!%e
!# .here e)e't ca' be retr$e)ed #r!m+ a'd $' d!$'( ! %r!)$de "er .$th a
lar(er )ar$ety !# e)e't t! ch!!e #r!m& A .ell a th$+ a#ter $de't$#y$'( "er
%r!#$le bel!'($'( t! "er+ $t $ %!$ble t! !bta$' m!re re#$'ed decr$%t$!' !#
.hat the "er $ $'tereted $'+ he'ce "$'( th$ re#$'ed decr$%t$!' t! earch the
e0ter'al A8 #!r e)e't !# m!re rele)a'ce t! the "er&
6&7&3&1 A8I I'te(rat$!'
The E)e't#"l&c!m A8I $ the ch!e' A8I t! be "ed t! retr$e)e e)e't a
E)e'tbr$te e)e't are %!ted !' th$ %lat#!rm a .ell a !ther e)e't #r!m !ther
!"rce& The A8I meth!d that are %r!)$ded ca' !'ly be retr$e)ed $' JML+
h!.e)er+ .$th the #am$l$ar$ty !# "$'( the SAJ 8arer+ %ar$'( th$ $'#!rmat$!' $
'!t a %r!blem& T! red"ce the $m%leme'tat$!' $' the cl$e't BM!b$le A%%l$cat$!'+
retr$e)al !# the e)e't .$ll be d!'e .$th$' the E)e'tY!" A8I+ h!.e)er+ a the
e0tracted $'#!rmat$!' #r!m the E)e't#"l&c!m A8I .$ll '!t be t!red $' the
databae+ a th$ $ '!t e##$c$e't #!r the %ace $'$de the databae+ there 'eed
t! be a .ay t! e'd th$ $'#!rmat$!' t! the cl$e't .$th the e)e't that are .$th$'
the databae&
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
91/174
igure 41
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
92/174
6&7&3& Tet$'( A8I I'te(rat$!'
A'!ther %r!blem .$th the E)e't#"l&c!m A8I $ that the ID !# the e)e't $ '!t a
'"mer$cal )al"e+ th"+ the 'eed #!r the Str$'( E)e't ID c!l"m' $' the e)e't table
BSee F$("re 3;&
T! tet the A8I $'te(rat$!'+ a' HTT8 meth!d called #$'d e)e't .a created t!
ta-e a' ID a'd #r!m th$+ $t .!"ld be able t! $de't$#y $# the ID $ a te0t !r a
'"mer$cal )al"e+ $# $t $ a '"mer$cal )al"e+ the' the meth!d -'!. t! earch the
databae #!r the a%%r!%r$ate ID+ $# $t $ a te0t )al"e+ the meth!d -'!. t! earch
the E)e't#"l&c!m A8I #!r the e)e't ID&
igure 42 ou AP' find event /-$ method=
The #$'d e)e't GET meth!d re%r!d"ced the re,"$red $'#!rmat$!' .$th re%ect
t! the attr$b"te #r!m the E)e't table BSee F$("re 3; .$th the e0ce%t$!' !# the
e)e't $ma(e Bth$ .$ll be e0%la$'ed later !'& It $ '!. %!$ble t! !bta$' e)e't
$'#!rmat$!' #r!m the e0ter'al A8I .$th the A8I $'te(rat$!' meth!d
$m%leme'ted&
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
93/174
4&7&4 'ntegrating *ntology +ithin AP'
I'te(rat$'( the O't!l!(y $'$de the A8I .!"ld e'able "er %r!#$le t! be
$de't$#$ed d$rectly #r!m the e)e't "er ch!!e t! add t! the$r .atch l$t& O'ce
th$ $ d!'e+ the "er %r!#$le attr$b"te ca' the' be "%dated #!r the "er+ ! that
.he' the "er .a't t! rece$)e the$r rec!mme'dat$!'+ the HTT8 meth!d .$ll
!bta$' the "er %r!#$le d$rectly #r!m the "er rec!rd rather tha' ha)$'( t!
%r!ce the e)e't $' the$r .atch l$t $' the !'t!l!(y t! determ$'e the "er
%r!#$le = a th$ ca' be a t$mely ta- e%ec$ally .he' the "er ha ma'y e)e't $'
the$r .atch l$t&
6&7&6&1 Ide't$#y$'( E)e't
A $t ta'd+ the O't!l!(y $ "'able t! %r!ce the e)e't that are added t! the
.atch l$t a there c"rre'tly $ '!t a'y .ay t! cla$#y the ch!e' e)e't t! the
e)e't cla$#$cat$!' $' the O't!l!(y&
igure 4
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
94/174
igure 44
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
95/174
igure 47 ou obile application
A the acce t! the rele)a't data $ '!. a)a$lable+ $t $ %!$ble t! tart .$th the
creat$!' !# the m!b$le a%%l$cat$!' t! h!.cae the e)e't #r!m c"rre't "er a'd
e0ter'al !"rce&
>:
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
96/174
4&6&1.esign
igure 46
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
97/174
4&6&2#reating an Account
igure 48
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
98/174
igure 4;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
99/174
4&6&ie!ing All -vents
igure 45
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
100/174
The b"tt!' !' the e)e't %a(e re%ree't the !ther %a(e $' the a%%l$cat$!' #!r
the "er t! 'a)$(ate t!+ re%ree'ted by $c!' that are related t! the act$!'
$'$t$ated .he' the b"tt!' $ %reed& A'$mat$!' $ al! "ed .he' the b"tt!' $
%reed ! the "er -'!. that they ha)e %reed the b"tt!'& Im%leme't$'( all
!# thee mall #eat"re hel% t! $m%r!)e the lear'ab$l$ty !# the a%%l$cat$!' ! that
#$rt t$me "er are $mmed$ately a.are !# h!. t! "e the a%%l$cat$!'&
The e)e't are !bta$'ed by call$'( the meth!d that retr$e)e all the e)e't #r!m
the E)e'tY!" A8I .h$ch ret"r' all the data $' JML #!rmat .h$ch $ the'
%ared a'd h!.' $' )ar$!" l$t& The $ma(e #r!m the A8I .ere e'c!ded $'
2ae;6+ .h$ch $ a b$'ary t! te0t e'c!d$'( cheme& 2!th the Netbea' a'd
A'dr!$d St"d$! IDE ha)e the 'eceary l$brar$e #!r e'c!d$'( a'd dec!d$'(
2ae;6 te0t .h$ch e0%la$' h!. the 2ae;6 te0t .a dec!ded a'd c!')erted $'t!
a' $ma(e& 4$th c!'$derat$!' t! e##$c$e'cy+ th$ !%t$!' .a better tha' e'd$'(
the $ma(e URL #r!m the e0ter'al A8I a'd %ar$'( $t $' the m!b$le a%%l$cat$!'
a there are m"lt$%le $ma(e a'd th$ .$ll be t$me c!'"m$'( #!r the a%%l$cat$!'+
he'ce .hy e'c!d$'( a'd dec!d$'( the $ma(e .ere the ch!e' !%t$!'&
>7
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
101/174
4&6&4Posting -vents
igure 70
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
102/174
6&;&6&1 8!ted e)e't
igure 71
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
103/174
O'ce the "er ha h!.' a' $'teret $' a' e)e't by cl$c-$'( !' $t+ the e)e't
$ma(e $ h!.' $' a lar(er $*e %r!)$d$'( the "er .$th a (reater )$e. !# the
$ma(e& There $ a' arr!. at the b!tt!m !# the %a(e $'d$cat$'( that $t ca' be
%"lled "%+ th$ .a ch!e' t! $m%r!)e the lear'ab$l$ty !# the a%%l$cat$!' a $t
d!e '!t re,"$re a'y e0%la'at$!' !# h!. t! "e $t& O'ce th$ %a(e ha bee'
cha'(ed+ the e)e't deta$l are h!.' #!r the "er t! read a'd $# they .a't t!
-ee% trac- !# the e)e't+ they ca' add $t t! the$r .atchl$t& Uer may al! .a't
t! hare th$ e)e't t! the$r Faceb!!- %a(e a'd hare the deta$l !# the e)e't
.$th the$r #r$e'd& 2y %r!)$d$'( th$ #eat"re+ thee e)e't are able t! e0te'd t!
a' a"d$e'ce that may '!t be "$'( th$ a%%l$cat$!'+ th"+ $'crea$'( the
a.are'e #!r the e)e't .h$ch $' t"r' c!"ld lead t! m!re %e!%le atte'd$'( the
e)e't&
T! red"ce the am!"'t !# $'#!rmat$!' be$'( %aed thr!"(h!"t the a%%l$cat$!'
!'ly the e)e't ID a'd the e)e't $ma(e data .ere t!red& O'ce the "er ch!!e
a' e)e't+ the e)e't ID $ "ed a a %arameter t! call the #$'d e)e't GET
meth!d #!rm the E)e'tY!" A8I Bee #$("re 6+ h!.e)er+ t! %re)e't the
a%%l$cat$!' %r!ce$'( the e)e't $ma(e a(a$'+ th$ $ ta-e' #r!m the e)e't %a(e
!'ce the "er %ree $t+ he'ce .hy the e)e't $ma(e $ '!t e't thr!"(h the
#$'d e)e't GET meth!d&
The e)e't creat!r .a added t! the e)e't deta$l t! addre the $"e $' the
re)$e. $' Cha%ter !# %r!m!ter '!t rece$)$'( cred$t #!r the$r e)e't&
>>
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
104/174
4&6&6+atching -vents
6&;&;&1 Add$'( E)e't t! 4atch L$t
igure 7 9
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
105/174
igure 74
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
106/174
6&;&;& 4atch L$t
igure 77
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
107/174
6&;&;&3 Cale'dar
igure 76
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
108/174
igure 78
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
109/174
4&6&;anaging riends
A #r$e'd ma'a(eme't #eat"re .a $m%leme'ted ! that "er ca' add !ther
"er t! create the %!$b$l$ty !# rec!mme'd$'( e)e't that they are .atch$'(
.h$ch $ !# $m$lar $'teret& A .ell a th$+ $t $ %!$ble t! #$lter the #r$e'd !#
.h$ch rec!mme'dat$!' .!"ld be rece$)ed #r!m&
6&;&>&1 Add$'( Fr$e'd
igure 7;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
110/174
6&;&>& F$lter$'( Fr$e'd
igure 75
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
111/174
l$t& 4h$lt c!'$der$'( the e##$c$e'cy !# l!ad$'( e)e't !' the rec!mme'dat$!'
%a(e+ $t .a dec$ded t! ta-e a'!ther a%%r!ach t! rece$)$'( e)e't !# $m$lar
$'teret #r!m the "er #r$e'd&
The 'e0t a%%r!ach ta-e' .a t! "%date the add t! .atch meth!d $' the
E)e'tY!" A8I by "$'( the ta( attr$b"te $' the .atched e)e't table #!r a
d$##ere't %"r%!e !# $m%le t!r$'( the ame ta( ta-e' #r!m the !r$($'al e)e't&
The A8I meth!d .!"ld $'tead "e the ta( a'd decr$%t$!' $'#!rmat$!' $ ta-e'
a a %arameter a'd %r!ce the $'#!rmat$!' thr!"(h the O't!l!(y t! rece$)e the
earch %hrae that match that e)e't& Th$ earch %hrae .!"ld be re%ree'ted
a a ta( $' the .atched e)e't& Fr!m d!$'( !+ $t .a the' %!$ble t! ea$ly
$de't$#y the rele)a't e)e't !' the .atch l$t by the #r$e'd 'ame a'd the ta(&
T! #"rther $m%r!)e the e##$c$e'cy !# rece$)$'( the rec!mme'ded e)e't+ $t .a
al! dec$ded t! t!re the "er+ "er %r!#$le+ $' the m!b$le a%%l$cat$!' a th$
.!"ld be 'eeded t! $de't$#y the ta( !# the e)e't $' the .atched e)e't table&
A'!ther A8I meth!d .a created .h$ch ta-e the "er %r!#$le+ the "er'ame+a'd the #r$e'd a %arameter& The #r$e'd %arameter $ "ed t! retr$e)e all !#
the .atched e)e't that #r$e'd ha rated Badded t! the$r .atch l$t a'd the
"er'ame %arameter $ "ed t! e'"re that the e)e't rec!mme'ded are
c"rre'tly '!t .$th$' the$r !.' .atch l$t& O'ce the earch %hrae are #!"'d $'
the -'!.led(e bae #r!m "$'( the "er %r!#$le+ $t .a the' %!$ble t! #$lter !"t
the "''eceary e)e't #r!m the$r #r$e'd .atch l$t a'd ma-e $t a)a$lable #!r
"e .$th$' the m!b$le a%%l$cat$!'&
9;
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
112/174
6&;&9&1 Tet$'( C!llab!rat$)e A%%r!ach
igure 60
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
113/174
igure 61
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
114/174
O'ce the !'t!l!(y ha $de't$#$ed the "er %r!#$le #!r the "er+ $t $ the' %!$ble
t! retr$e)e e)e't #!r the "er a'd they are ta-e' t! the rec!mme'dat$!' %a(e
!'ce th$ ha bee' c!m%leted&
T! cater #!r "er .h! may '! l!'(er ha)e the ame $'teret+ they are able t!
cha'(e the$r $'teret #r!m the me'" #!r the !'t!l!(y t! reae the %r!#$le
that bel!'( t! the "er&
I# "er $'teret are '!t .$th$' the -'!.led(e bae they .$ll+ "'#!rt"'ately+ be
"'able t! rece$)e rec!mme'dat$!' #!r $t a'd the$r $'%"t .$ll be re/ected& T!
c!m%e'ate #!r th$ l$m$tat$!' "er are %r!)$ded .$th the ab$l$ty t! earch #!r
a'y e)e't they are $'tereted $' BSee Search$'( E)e't&
4&6&11 Searching -vents
The rec!mme'dat$!' that are %r!)$ded t! the "er are baed !' the "er
l!cat$!'& Th$ $ a %r!blem a "er may .a't t! #$'d %art$c"lar e)e't $' !ther
c$t$e rather tha' /"t the !'e they c"rre'tly l$)e $'&
igure 6
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
115/174
:1; ! that "er ca' ea$ly $de't$#y the c$ty !# the$r ch!$ce& 4h$lt c!'ce$)$'(
the %!$b$l$ty !# %ell$'( m$ta-e be$'( made+ the a%%l$cat$!' .$ll be able t!
$de't$#y $# the l!cat$!' d!e '!t e0$t+ th" $m%r!)$'( the acc"racy !# the
earche& The earch meth!d "ed t! retr$e)e the e)e't al! ta-e the ra'(e !#
h!. #ar the earch h!"ld e0te'd t! #r!m the ch!e' l!cat$!'& Th$ al! "ed t!
$m%r!)e the acc"racy !# earche& The GET meth!d "e thee %arameter t!
earch #!r e)e't .$th$' the databae that match the l!cat$!' a'd al! earche
the E)e't#"l&c!m A8I t! retr$e)e m!re e)e't&
A l$t !# e)e't $ %r!)$ded a a re"lt a'd "er are able t! ch!!e e)e't #r!m
th$ %a(e a'd add t! the$r .atch l$t&
4&6&12 #atering for -Disting users
Ta-$'( $'t! c!'$derat$!' that "er may $(' !"t #r!m the a%%l$cat$!'+ l!e the$r
m!b$le de)$ce !r acc$de'tly rem!)e the a%%l$cat$!'+ c!'t$'(e'cy %la' ha)e bee'
%"t $' %lace ! that rec!mme'dat$!' are t$ll %!$ble t! be made t! them&
6&;&1&1 Rec!)er$'( "er %r!#$le
A GET meth!d .a created .$th$' the E)e'tY!" A8I that retr$e)e the "er
%r!#$le .h$ch ha bee' $de't$#$ed by the$r act$)$ty $' the a%%l$cat$!'& Th$ meth!d
$ called e)ery t$me the "er $(' $'t! the a%%l$cat$!'+ th$ .ay the$r "er %r!#$le
.$ll 'e)er be l!t "'le they e0%l$c$tly rem!)e all !# the$r $'teret&
6&;&1& 8re)e't$'( "er #r!m be$'( $('ed !"t
a"t!mat$cally
A there are !ther a%%l$cat$!' that "er may "e !' the$r m!b$le+ they .!"ld
'eed t! c!'ta'tly cl!e a'd !%e' the E)e'tY!" a%%l$cat$!'& Ta-$'( ec"r$ty
$'t! c!'$derat$!'+ chec- ha)e bee' $' %lace t! e'"re that "er .$ll '!t ha)e
1::
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
116/174
t! $'%"t the$r crede't$al e)ery t$me they !%e' the a%%l$cat$!'& Th$ .ay "er
ca' #reely cl!e a'd !%e' the a%%l$cat$!' .$th!"t the ted$!" ta- !# c!'ta'tly
$'%"tt$'( the$r crede't$al&
4&8 ollo!ing Android /uidelines
A the a%%l$cat$!' $ de$(' #!r A'dr!$d m!b$le a%%l$cat$!'+ the$r ("$del$'e m"t
be #!ll!.ed t! e'"re that the a%%l$cat$!' ca' be "%l!aded t! the A'dr!$d 8lay
St!re&
4&8&1isual .esign and User 'nteraction
6&
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
117/174
4&8&2unctionality
6&
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
118/174
The E)e'tY!" meth!d ta-e !me .h$le t! %r!ce the "er $'teret+ th"+
ta-$'( l!'(er tha' ec!'d+ ! $' !rder t! c!m%ly .$th the %er#!rma'ce
("$del$'e+ %r!(re d$al!( ha)e bee' et $' %lace& M!re!)er+ the hared
%re#ere'ce are made t! "e a they t!re the JML re%!'e #!r the de#a"lt
cate(!r$e ! that they .!"ld !'ly ha)e t! l!ad !'ce+ a'd $# "er .a't t!
re#reh $t they ca' %re the re#reh b"tt!'& A .ell a th$+ #eedbac- $ %r!)$ded
t! "er !'ce they ca' ha)e made a' act$!' that re,"$re a tat" t! $'#!rm
them .hether the act$!' .a "cce#"l !r $# there ha bee' a %r!blem&
4&; Summary
T! c!'cl"de th$ cha%ter+ )ar$!" tech'$,"e ha)e bee' $'c!r%!rated $' !rder t!
%r!)$de e)e't t! "er+ .$th!"t d$cr$m$'at$'( them bet.ee' e0$t$'( a'd 'e.
"er& U$'( the RU8 meth!d!l!(y+ )ar$!" tet$'( ha bee' "ed at the e'd !#
d$##ere't de)el!%me't %hae e'"r$'( that the tech'!l!($e "ed are #"'ct$!'al
a'd able t! be "ed .$th$' the 'e0t de)el!%me't %hae&
Th$ cha%ter ha addreed "$'( a' !'t!l!(y t! d$c!)er 'e. $'teret baed !'
"er beha)$!"r .h$ch $ ca%t"red #r!m elect$'( e)e't+ a .ell a+ "$'(
#eat"re !# the a'dr!$d de)$ce a'd the REST#"l .eb er)$ce t! rec!mme'd e)e't
#r!m #r$e'd .$th $m$lar "er %r!#$le .h$ch all!. the "er t! ha)e e)e't
rec!mme'ded t! them #r!m d$##ere't l!cat$!' c!'$der$'( the$r #r$e'd ha)e
ch!e' e)e't .$th$' a'!ther l!cat$!'&
The 'e0t cha%ter .$ll d$c" $# the a$m a'd !b/ect$)e ha)e bee' ach$e)ed #r!m
de)el!%$'( th$ m!b$le a%%l$cat$!' a'd addre$'( the l$m$tat$!' !# the
tech'$,"e "ed&
1:3
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
119/174
#"AP$-% 7
%-SU,$S ? .'S#USS'*)
7&1 $esting
7&1&1lac@ oD $esting
2lac- b!0 tet$'( .a "ed t! e'"re that the #"'ct$!'al$ty !# the m!b$lea%%l$cat$!' ha bee' "cce#"lly $m%leme'ted+ th" meet$'( the #"'ct$!'al
re,"$reme't& Th$ mea' that the teter ha '! relat$!' t! the !#t.are a'd $
"'a.are !# h!. the ytem !%erate& U$'( th$ meth!d %r!)$de a' "'b$aed
a%%r!ach t! tet$'( the #"'ct$!'al$ty a'd e'"re better acc"racy !# the tet&
A tet %la' .a c!'tr"cted a'd #$lled t! ta-e '!te !# the re"lt #r!m the "er
"$'( the a%%l$cat$!' BSee A%%e'd$0 E& A a re"lt+ all the tet had bee' %aed
mea'$'( that the a%%l$cat$!' .a #"lly #"'ct$!'al&
7&1&2eta $esting
A the tet #!r the !#t.are #"'ct$!'al$ty had bee' %aed+ $t .a '!.
'eceary t! $de't$#y $# the a%%l$cat$!' .a #$t #!r %"r%!e& I' !rder t! mea"re
th$+ #$)e "er .ere ($)e' a' A'dr!$d de)$ce .$th b!th the E)e'tY!" a'd the
E)e'tbr$te a%%l$cat$!' $'talled a'd t!ld t! "e them b!th "'t$l they .ere
at$#$ed .$th them& O'e !# thee "er ha%%e' t! !r(a'$e e)e't $' the$r l!cal
c$ty+ .h$ch .!"ld %r!)$de #"rther $'$(ht $'t! h!. th$ a%%l$cat$!' .!"ld be'e#$t
them& A#ter.ard+ they .ere ($)e' a "r)ey t! c!m%lete c!m%ar$'( b!th !# the
a%%l$cat$!' $' !rder t! ee .h$ch a%%l$cat$!' .a better a'd m!re #$t #!r $t
%"r%!e&
1:6
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
120/174
See A%%e'd$0 E #!r "r)ey #!rm
7&1&&1 2eta Tet$'( Re"lt
O# the #$)e "er .h! "ed the a%%l$cat$!'+ they .ere a-ed t! ch!!e the
#eat"re that they l$-ed a'd they th!"(ht re,"$red #"rther $m%r!)eme't BSee
A%%e'd$0 E a'd a a re"lt+ a ma/!r$ty !# the #eat"re $m%leme'ted %r!)$ded
%!$t$)e #eedbac-+ e%ec$ally the rec!mme'dat$!' #eat"re a th$ $ the "'$,"e
ell$'( %!$'t !# the a%%l$cat$!'& The c!mme't %r!)$ded by the "er al!
h$(hl$(hted the $'t"$t$)e'e a'd the "er=#r$e'dl$'e !# the a%%l$cat$!'+ a .ell
a eae !# #$'d$'( a'd rece$)$'( rec!mme'dat$!'& Th$ h!. that "er are
m!re l$-ely t! "e "ch a' a%%l$cat$!' .he' e)ery deta$l a%%l$ed "rr!"'d $t
!le %"r%!e&
A'!ther #eat"re t! h$(hl$(ht $ the cale'dar #eat"re+ a th$ .a e0%ected t! be !#
(reat $m%!rta'ce t! the a%%l$cat$!' a $t .!"ld a$t .$th re%ree't$'( the$r
.atched e)e't m!re clearly& A .ell a th$+ de%$te %a$'( the tet thr!"(h
the blac- b!0 tet$'( meth!d+ the #eat"re .a deemed "'rel$able a '!ted by
m!t !# the "er&
1:7
igure 64
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
121/174
The "er .h! %r!m!te e)e't "((eted that the e)e't tat #eat"re 'eeded
#"rther $m%r!)eme't a $t !'ly h!. that the am!"'t !# %e!%le .atch$'( the
e)e't a'd they re,"eted #!r m!re $'#!rmat$!' t! be %r!)$ded&
igure 67
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
122/174
The "er .ere al! a-ed t! ra'- the rele)a'ce !# b!th !# the a%%l$cat$!'+
ra'($'( #r!m Very Rele)a't t! Far #r!m .hat I .a'ted $' !rder t! mea"re
the acc"racy !# the rec!mme'dat$!' .$th relat$!' t! the "er $'teret& N! "er
a$d that a'y !# the rec!mme'dat$!' %r!)$ded #r!m b!th !# the a%%l$cat$!'
.ere $rrele)a't !r #ar #r!m .hat they .a'ted+ h!.e)er+ 6: !# them a$d that
the rec!mme'dat$!' .ere Nearly there .$th the E)e'tbr$te a%%l$cat$!'+
mea'$'( that the rec!mme'dat$!' .ere cl!e t! the$r $'teret b"t '!t the -$'d
!# e)e't that they .!"ld be ha%%y t! %art$c$%ate $'& O' the !ther ha'd+ ;: !#
"er a$d that the rec!mme'dat$!' #r!m the E)e'tY!" a%%l$cat$!' .ere
)ery rele)a't+ .h$lt the rema$'$'( 6: a$d that $t .a rele)a't a'd .!"ld
ha%%$ly -ee% trac- !# thee e)e't&
7&2 .iscussion
Thr!"(h e%arate meth!d !# tet$'(+ $t .a %!$ble t! etabl$h .hether the
re,"$reme't $' Cha%ter 3 .ere met& The #$rt tet$'( meth!d %r!)ed t! h!.
that the a%%l$cat$!' .a #"lly #"'ct$!'al& H!.e)er+ a#ter %er#!rm$'( beta tet$'(+
the cale'dar #eat"re %r!)ed t! be dy#"'ct$!'al a'd "'rel$able a !met$me $t
.!"ld (! t! the c"rre't date a'd !met$me $t .!"ld '!t& Th$ .a d$a%%!$'t$'(
t! #$'d+ a $t .a de$red t! ma$'ta$' "er at$#act$!' at 1::&
De%$te th$+ the beta tet al! h!.ed that "er #!"'d the E)e'tY!"
a%%l$cat$!' t! be m!re "e#"l #!r the %"r%!e !# rec!mme'd$'( e)e't a !me
!# the$r c!mme't tate that the a%%l$cat$!' $ able t! ca%t"re the$r $'teret
.$th!"t e0%l$c$tly tat$'( .hat they are& Th"+ %r!)$'( t! be m!re de$red tha'
the E)e'tbr$te a%%l$cat$!' a all !# the "er cla$med that the E)e'tY!"
a%%l$cat$!' .a better #!r $t %"r%!e BF$("re ;7&
1:
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
123/174
7& ,imitations
A#ter d$c!)er$'( a .ay !# $m%leme't$'( the !'t!l!(y .$th$' the a%%l$cat$!'+ a
#la. .a d$c!)ered $' the meth!d !# d$c!)er$'( "er $'teret& A a -'!.led(ebaed $ "ed t! d$c!)er d$##ere't -$'d !# e)e't+ $t+ there#!re+ mea' that the
,"al$ty !# the rec!mme'dat$!' de%e'd !' the ,"al$ty !# the -'!.led(e bae
ha)$'( -ey.!rd that e##ect$)ely relate t! the e)e't& M!re!)er+ a'!ther l$m$tat$!'
ar$e a the E'(l$h la'("a(e ha .!rd that are amb$("!" !r may be "ed t!
decr$be a' e)e't meta%h!r$cally a'd there#!re thee .!rd may be "ed t!
$de't$#y e)e't !# .h$ch $t may ha)e '! relat$!'+ .h$ch $' t"r' red"ce the
,"al$ty !# the rec!mme'der ytem&
A .ell a th$+ the !'t!l!(y $de't$#$e "er $'teret at the #$rt m!me't they
elect a' e)e't that they l$-e& Th$ bec!me a' $"e a $t may $de't$#y a "er
$'teret t!! !!'+ th" rec!mme'd$'( them e)e't that they may '!t act"ally be
$'tereted $'&
F"rtherm!re+ the ,"al$ty !# the e)e't de%e'd !' h!. the "er decr$be the$r
e)e't& I# the "er d!e '!t "e c!mm!' .!rd t! decr$be the$r e)e't+ the' $t $
'!t %!$ble t! rec!mme'd e)e't t! "er .h! ha)e bee' $de't$#$ed a ha)$'( a
%!$ble $'teret& I' !rder t! e'"re "er decr$be the$r e)e't e##ect$)ely+ they
are a-ed t! e'ter ta( !# the$r e)e't+ ! that the$r e)e't ca' be $de't$#$ed a'd
%r!ceed thr!"(h the !'t!l!(y&
7&4 Summary
Th$ cha%ter $de't$#$ed the re"lt #r!m the %r!/ect de)el!%me't thr!"(h )ar$!"
tet a'd %r!)ed t! be "cce#"l .he' c!m%ar$'( t! a'!ther a%%l$cat$!'&
De%$te that+ !me $"e .ere br!"(ht t! atte't$!' a'd ha)e bee' addreed
acc!rd$'(ly&
1:>
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
124/174
The c!mme't "er %r!)$ded .$th a re#ere'ce #!r #"t"re $m%r!)eme't BSee
A%%e'd$0 E $'d$cate that there $ a de$re #!r a' $'creae $' cate(!r$e a'd t!
e'able "er t! add cate(!r$e t! the a%%l$cat$!' databae ! that e)e't ca'
be cate(!r$ed better t! !ther "er+ th"+ '!t rely$'( !' the rec!mme'dat$!'
#eat"re& A .ell a th$+ "er .!"ld al! l$-e t! rece$)e '!t$#$cat$!' )$a ema$l
a'd al! be '!t$#$ed .he' a "er ha re,"eted t! add them a a #r$e'd&
The #!ll!.$'( cha%ter .$ll %r!%!e %!$ble $m%r!)eme't $' !rder t! addre the
$"e ra$ed by the "er a'd h!. the l$m$tat$!' #!"'d ca' be !)erc!me&
1:9
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
125/174
#"AP$-% 6
#*)#,US'*)S ? U$U%- +*%(
6&1 #onclusion
A#ter $m%leme't$'( a%ect !# d$##ere't rec!mme'der ytem $'t! a m!b$le
a%%l$cat$!' t! %r!)$de "er .$th e)e't m!re "$ted t! the $'teret a'd
c!m%ar$'( $t .$th e0$t$'( a%%l$cat$!' $' !rder t! ee .h$ch .a better #$t #!r
%"r%!e+ the !"tc!me !# the re"lt !bta$'ed thr!"(h )ar$!" tet$'( %r!)ed t!
be better tha' e0%ected a "er .ere at$#$ed .$th the rec!mme'dat$!' that
they rece$)ed a'd (a)e them a e'e !# !.'erh$% a the$r acc!"'t tr"ly catered
#!r the$r $'teret& I' l$(ht !# th$+ t! tet the hy%!the$ !# "er %re#err$'(
rec!mme'dat$!' m!re %er!'al$ed t! them rather tha' (e'eral$ed #!r all
"er+ they .ere a-ed t! c!m%are E)e'tY!" B8r!%!ed A%%l$cat$!' t!
E)e'tbr$te BE0$t$'( A%%l$cat$!'& The re"lt %r!)ed the hy%!the$ t! be c!rrect
a "er ch!e E)e'tY!" a the better a%%l$cat$!'+ th"+ "cce#"lly ach$e)$'(
the a$m !# the %r!/ect&
6&2 uture !or@
6&2&1%ecommendations
The %re)$!" cha%ter h$(hl$(hted !me l$m$tat$!' !# the rec!mme'dat$!' a
-ey.!rd ca' be #!"'d #r!m a'y decr$%t$!' a'd ca'+ there#!re+ m$/"d(e the
"er $'teret baed !' the e)e't ch!e'&
I' !rder t! $m%r!)e the %rec$$!' !# the rec!mme'dat$!'+ mach$'e lear'$'(
tech'$,"e ca' be "ed t! mea"re the acc"racy !# e)e't a'd ee h!. $m$lar
11:
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
126/174
they are t! a "er %r!#$le by a'aly$'( the "e !# the -ey.!rd a'd h!. they
relate t! the e)e't&
A .ell a th$+ la'("a(e amb$("$ty $ a'!ther %r!blem a .!rd ca' be "ed $'
d$##ere't .ay t! ($)e m"lt$%le mea'$'(& Nat"ral la'("a(e %r!ce$'(
tech'$,"e ca' be "ed t! a$t $' $de't$#y$'( .hether thee -ey.!rd are
decr$b$'( the e)e't a'd a a re"lt acc"rately $de't$#y .h$ch cla$#$cat$!' the
e)e't bel!'( t!+ th" $m%r!)$'( the ,"al$ty !# the rec!mme'dat$!'&
6&2&2AP'
C"rre'tly+ the a%%l$cat$!' %r!(ramm$'( $'ter#ace BA8I !'ly !##er the meth!d $'
JML F!rmat& O##er$'( SON F!rmat a a' !%t$!' t! rece$)e data #r!m the HTT8
meth!d %r!)$de de)el!%er .$th m!re #le0$b$l$ty t! recreate the rec!mme'der
ytem .$th the te0t #!rmat that they are m!re c!m#!rtable .$th+ a a re"lt+
they .$ll '!t ha)e t! lear' a'yth$'( 'e. .$th %ar$'( the $'#!rmat$!'+ th"
a)$'( t$me d"r$'( the $m%leme'tat$!'&
6&2&-Dternal AP's
M!re e)e't ca' be %r!)$ded by ma'y d$##ere't !"rce& The %r!%!ed
a%%l$cat$!' !'ly "e !'e e0ter'al A8I t! retr$e)e m!re e)e't& 2y "$'( !ther
A8I l$-e the E)e'tbr$te A8I+ m!re e)e't ca' be %r!)$ded #!r the "er a'd
there#!re they ca' ha)e a lar(er )ar$ety !# e)e't rec!mme'ded t! them&
6&2&4#ategories
De#a"lt cate(!r$e .ere et $' %lace t! add ra'd!m'e ! that the e)e't
rec!mme'ded t! "er .ere't #$0ed t! the$r $'teret& The c!mme't #r!m the
beta tet h!.ed that "er .!"ld l$-e t! be able t! add m!re cate(!r$e t! the
databae ! that m!re e)e't are le br!ad a'd cate(!r$ed $m$larly& T! cater
t! th$+ a #eat"re c!"ld be $m%leme'ted .here the "er c!"ld tate the cate(!ry
111
-
7/25/2019 Utilising user profiles to drive a mobile event recommendation system
127/174
!# e)e't that they .!"ld l$-e a'd e)e't that relate t! that cate(!ry .!"ld be
rec!mme'ded #!r them& There#!re+ the eleme't !# ra'd!m'e %er!'al$at$!'
a'd c"t!m$at$!' .!"ld be %r!)$ded t! the "er&
6&2&7#alendar
Fr!m the re"lt+ the cale'dar #eat"re %r!)ed t! be d$a%%!$'t$'( a "er
deemed $t a "'rel$able+ a'd !me c!mme't h!.ed #r"trat$!' a "er
cla$med that $t ca' be a''!y$'(& I' !rder t! ma$' "er at$#act$!' at $t
!%t$m"m+ th$ #eat"re h!"ld be $m%r!)ed ! that $t re%!'d %er#ectly e)er t$me
the "er .$h t! "e $t&
6&2&6*ntology
I'teret ca' be cate(!r$ed $' ma'y d$##ere't .ay a'd thee 'e. $'teret are
$'tr!d"ced !)er t$me+ there#!re+ the !'t!l!(y c!'ta'tly 'eed "%dat$'( ! that
$t $ able t! -ee% "% .$th thee 'e.ly $'tr!d"ced $'teret ! that better
rec!mme'dat$!' ca' be made&
A .ell a th$+ $m%leme't$'( the #r$e'd #eat"re .$th the !'t!l!(y .!"ld be
$'teret$'( t! ee+ a $t .!"ld be able t! $de't$#y "er .$th $m$lar %r!#$le+ th"
rec!mme'd$'( m!re e)e't t! "er rather tha' /"t l$m$t$'( $t t! the e)e't
that the "er $ c"rre'tly .atch$'(& F!r e0am%le+ $# "er A l$-e m"$c+ art+
(ame a'd %!rt+ a'd "er 2 l$-e m"$c+ art a'd (ame+ c!'$der$'( they are
b!th #r$e'd+ the !'t!l!(y c!"ld be "ed t! $de't$#y that "er 2 c!"ld al! l$-e
%!rt+ th" ($)$'( them that "er %r!#$le a'd rec!mme'd$'( %!rt e)e't t!
them&
6&2&8)otifications
The c!mme't #r!m the "r)ey h$(hl$(hted that "er .!"ld l$-e t! rece$)e
'!t$#$cat$!' .he' a "er ha added them a a #r$e'd ! that they ca' add them
11
-
7/25/2019 Utilising user profile