You are on page 1of 77

Government College University Faisalabad

Personal Mobile Assistant


By
Hafiz Faraz Mukhtar
2010-GCUF-1351-513
Project subitte! i" #artia$ fu$fi$$e"t of
%he re&uiree"ts for the !e'ree of
B(CH)*(+ )F ,C-./C.
-/
C)MPU%.+ ,C-./C.

0.P(+%M./% )F C)MPU%.+ ,C-./C.,
GC U/-1.+,-%23 F(-,(*(B(0
(u'ust 2014
Government College University Faisalabad
CERTIFICATE BY THE PROJECT SUPERVISOR
%his is to certify that Hafiz Faraz Mukhtar +o$$ /o5 1351 has successfu$$y co#$ete! the Fi"a$
Project "ae! as 6Perso"a$ Mobi$e (ssista"t7 at 0e#arte"t of Co#uter ,cie"ce3 GC U"i8ersity
Faisa$aba! to fu$fi$$ the #artia$ re&uiree"t of the !e'ree of B, 9C,:
-"ter"a$ .;ai"er
/ae< Miss Asma Sajid
,i'"ature<===========================
.;ter"a$ .;ai"er<
/ae<===============================
,i'"ature< ============================
Cairman
0e#arte"t of Co#uter ,cie"ce
GC U"i8ersity3 Faisa$aba!5
Government College University Faisalabad
B,C, F-/(* P+)>.C%
Fi"a$
?"o@ Pakista"
Project Advisor
<Asma Sajid>
Presented by<
!ro"# I$% & Com#"ter S'ien'e
,tu!e"t +e'A ,tu!e"t /ae
()*)+!CUF+,,-(+,*. Ha/i0 Fara0 M"1tar
$e#artment o/ Com#"ter S'ien'e
Government College University
Faisalabad
Government College University Faisalabad
Software Requirements Specification
Version <Version 5.3>
<Know Pakistan>
Client: <Windows Store App>
Team <Team 10>
!em"er #ame Primar$ %esponsi"ilit$
Amaila Ars&ad 'n(ormation )at&erin*
+ser 'nter(a,e
-o,.mentation
A/sa Saeed Codin*
Testin*
-o,.mentation
<Personal Mobile Assistant>
Table of Contents
Table of Contents...........................................................................................................................v
Revision History............................................................................................................................vi
*2 Introd"'tion..............................................................................................................................1
151 Pro!uct....................................................................................................................................... 1
1.2 Scope.......................................................................................................................................... 2
1.3 Business Goals...........................................................................................................................4
154 0ocue"t Co"8e"tio"s............................................................................................................... 7
1.5 References.................................................................................................................................. 7
2. Overall Description..................................................................................................................8
2.1 Product Features......................................................................................................................... 8
252 User C$asses a"! Characteristics...............................................................................................11
253 )#erati"' ."8iro"e"t................................................................................................................... 15
254 0esi'" a"! -#$ee"tatio" Co"strai"ts....................................................................................16
2.5 Assumptions and Dependencies...............................................................................................17
.2 F"n'tional Re3"irements%.....................................................................................................23
3.1 Use-Case 1................................................................................................................................26
3.2 Use-Case 2................................................................................................................................27
3.3 Use-Case 3................................................................................................................................28
3.4 Use-Case 4................................................................................................................................29
3.5 Use-Case 5:.............................................................................................................................. 31
3.6 Use-Case 6:.............................................................................................................................. 32
3.7 Use-Case 7:.............................................................................................................................. 33
4. Nonfunctional Requirements................................................................................................34
4.1 Performance Requirements.......................................................................................................34
4.2 Safety Requirements.................................................................................................................35
4.3 Security Requirements..............................................................................................................35
4.4 Software Quality Attributes......................................................................................................37
5. Other Requirements..............................................................................................................43
Appendix A: Glossary..................................................................................................................44
Appendix B: Analysis Models.....................................................................................................45
Appendix C: Design Models........................................................................................................53
Appendix D: Screenshots............................................................................................................54
Appendix E: Test Cases...............................................................................................................58
Appendix F: IV & V Report.......................................................................................................74
<Team 10E> SRS <Version 3> Page v
<Personal Mobile Assistant>
Revision History
Name Date Reason For Changes Version
<Team 10E> SRS <Version 3> Page vi
<Personal Mobile Assistant>
*2 Introd"'tion
*2* Prod"'t
Perso"a$ obi$e assista"ce is easy to use @hi$e sti$$ offeri"' a 8ery feature-rich e;#erie"ce5 Perso"a$
(ssista"t is a" i"cre!ib$y #o@erfu$3 a@ar! @i""i"'3 task a"a'er that $ets you focus o" @hatBs
i#orta"t5 Cero co#$icatio"5 Cero frustratio"5 Dith this a##$icatio" you 'et<
,y"c tasks o8er-the-air o" u$ti#$e !e8ices ru""i"' 20o 9i"c$u!i"' i),3 ), E: usi"' 0ro# bo;5
0ro# bo; sy"c su##orts sy"ci"' a$$ !ata3 i"c$u!i"' ,art *ists3 across ("!roi!3 i), a"! ), E
!e8ices5
Projects3 Check$ists or a si#$e #erso"a$ assista"t
+e#eati"' tasks @ith e"! !ates
%abbe! *ists for easy or'a"izatio" a"! 'rou#i"'
*a"!sca#e Ca$e"!ar 8ie@ @ith !ate arkers a"! !ate-fi$teri"'
Fuick (!!< Create tasks !irect$y fro the "otificatio" area3 or '$a"ce at the "uber of task !ue
to!ay5
Di!'ets that a$$o@ you to ark tasks !o"e !irect$y fro the hoe scree"5 /)%.< Di!'et @i$$
"ot @ork if the a## is o8e! to the ,0 Car!5
Hi!e or re-arra"'e $ists
Pass@or! Protectio"< *ock a$$ your tasks or i"!i8i!ua$$y #icke! *ists
0ra' G 0ro# tasks fro a"! to *ists
,art *ists< 0y"aic $ists base! o" sa8e! searches @ith a" o#tio"a$ !y"aic !ate ra"'e
Po@erfu$ !ate ra"'e searchi"' a"! fi$teri"'
.asy sorti"' by !ates3 $ists3 #riority3 status3 tit$e or a"ua$ sorti"'
,che!u$i"' of tasks usi"' ,tart 0ate G %ie
%a's< create key@or! ta'sH search for ta's or attach co"tacts as #eo#$e ta's
($ars< .asi$y create u$ti#$e a$ars #er task
(ttach Photos to your tasks usi"' the Caera or the Ga$$ery
-"sta"t Pre8ie@s< Pre8ie@ a"! e!it "otes or attache! #ictures fro the ai" $ist @ith a
<Team 10E> SRS <Version 3> Page 1
<Personal Mobile Assistant>
si"'$e ta#
Focus< Fuick to''$e bet@ee" your tasks a"! a refi"e! BfocusB $ist fro a"y 8ie@
(ctio"s< attach co"tacts or other Bactio"B i"foratio" to tasks
,tarre! %asks
Batch )#eratio"s< .!it3 0e$ete3 Mo8e3 %a'3 ,hare a"! ore
Mu$ti#$e %hees< Gra#hite3 B$ack3 Pi"k
,hare tasks
)#tiize! for a" u"$iite! "uber of tabbe! $ists @ith hu"!re!s of tasks #er $ist
Backu# G +estore< Create easy backu#s of your !atabase or restore fro a" e;isti"' o"e at a"y
tie
Back'rou"! autoatic sy"c at s#ecifie! i"ter8a$s
1.2 Scope
%he #ro!uct bei"' !e8e$o#e! is a task #erso"a$ obi$e assista"ce for the ("!roi! #$atfor5 -t @i$$
i"c$u!e ca#abi$ities to a!!Ireo8e tasks @eek$y or o"th$y basis as @e$$ as re#eat the task accor!i"' to
their "ee! a"! 'et rei"!er5 %he a##$icatio" @i$$ a$so be i"te'rate! @ith the ca$e"!ar feature5
Android is a obi$e o#erati"' syste 9),: base! o" the *i"u; ker"e$ that is curre"t$y !e8e$o#e!
by Goo'$e5 Dith a user i"terface base! o" !irect a"i#u$atio"3 ("!roi! is !esi'"e! #riari$y
for touchscree" obi$e !e8ices such as sart#ho"es a"! tab$et co#uters3 @ith s#ecia$ize! user
i"terfaces for te$e8isio"s 9("!roi! %1:3 cars 9("!roi! (uto:3 a"! @rist @atches 9("!roi! Dear5 %he ),
uses touch i"#uts that $oose$y corres#o"! to rea$-@or$! actio"s3 $ike s@i#i"'3 ta##i"'3 #i"chi"'3 a"!
re8erse #i"chi"' to a"i#u$ate o"-scree" objects3 a"! a 8irtua$ keyboar!5 0es#ite bei"' #riari$y
!esi'"e! for touchscree" i"#ut3 it a$so has bee" use! i" 'ae co"so$es3 !i'ita$ caeras3 a"! other
e$ectro"ics5
(s of 20113 ("!roi! has the $ar'est i"sta$$e! base of a"y obi$e ), a"! as of 20133 its !e8ices a$so se$$
ore tha" Di"!o@s3 a"! Mac ), !e8ices cobi"e!5(s of >u$y 2013 the Goo'$e P$ay store has ha!
o8er 1 i$$io" ("!roi! a##s #ub$ishe!3 a"! o8er 50 bi$$io" a##s !o@"$oa!e!5( !e8e$o#er sur8ey
co"!ucte! i" (#ri$JMay 2013 fou"! that K1L of obi$e !e8e$o#ers !e8e$o# for ("!roi!5(t Goo'$e
-I)20143 the co#a"y re8ea$e! that there @ere o8er 1 bi$$io" acti8e o"th$y ("!roi! users 9that ha8e
bee" acti8e for 30 !ays:3 u# fro 53M i$$io" i" >u"e 20135
<Team 10E> SRS <Version 3> Page 2
<Personal Mobile Assistant>
("!roi!Bs source co!e is re$ease! by Goo'$e u"!er o#e" source $ice"ses3 a$thou'h ost ("!roi! !e8ices
u$tiate$y shi# @ith a cobi"atio" of o#e" source a"! #ro#rietary soft@are5-"itia$$y !e8e$o#e! by
("!roi!3 -"c53 @hich Goo'$e backe! fi"a"cia$$y a"! $ater bou'ht i" 20053("!roi! @as u"8ei$e! i" 200K
a$o"' @ith the
fou"!i"' of the )#e" Ha"!set ($$ia"ceNa co"sortiu of har!@are3 soft@are3 a"! te$ecou"icatio"
co#a"ies !e8ote! to a!8a"ci"' o#e" sta"!ar!s for obi$e !e8ices5
("!roi! is #o#u$ar @ith tech"o$o'y co#a"ies @hich re&uire a rea!y-a!e3 $o@-cost a"! custoizab$e
o#erati"' syste for hi'h-tech !e8ices5("!roi!Bs o#e" "ature has e"coura'e! a $ar'e cou"ity of
!e8e$o#ers a"! e"thusiasts to use the o#e"-source co!e as a fou"!atio" for cou"ity-!ri8e" #rojects3
@hich a!! "e@ features for a!8a"ce! users or bri"' ("!roi! to !e8ices @hich @ere officia$$y re$ease!
ru""i"' other o#erati"' systes5 %he o#erati"' systeBs success has a!e it a tar'et for #ate"t $iti'atio"
as #art of the so- ca$$e! Osart#ho"e @arsO bet@ee" tech"o$o'y co#a"ies
Appli,ations

Application Framework
<Team 10E> SRS <Version 3> Page 3
Home Contacts Phone Browser

Activity
manager
Window
manager
Content
providers
View
System
Notification
manager
Package
manager
Telephony
manager
Resource
manager
Location
manager
G Talk service
OpenGL Free type Web kit
SGL SSL
SQLite
<Personal Mobile Assistant>

LINUX KENEL
1.3 Business Goals
("y ty#e of or'a"izatio"3 co#a"y or i"!i8i!ua$ !oes "ot s#o"sor this #roject3 #eo#$e @ho are
i"tereste! i" !e8e$o#i"' a##$icatio" a"! $ear"i"' "e@ tech"o$o'y are @e$coe to #artici#ate3 "o
fi"a"cia$ be"efit sha$$ be e;#ecte! for their co"tributio"5 %he 'oa$s a"! 'ui!e$i"es i!e"tify !esire!
attributes of the #erso"a$ obi$e (ssista"t5 %hese 'oa$s #ro8i!e a co"siste"t set of criteria that ust be
co"si!ere! @he" aki"' !esi'" !ecisio"s5 %hese 'oa$s a"! 'ui!e$i"e a$so #ro8i!e a set of !esire!
attributes a'ai"st @hich &ua$ity ca" be assesse!5 %he !esi'" 'oa$s a"! 'ui!e$i"es i"c$u!e the fo$$o@i"'<
Using object-oriented (OO) methodologies.
%he syste shou$! re#rese"t the #ri"ci#$es a"! objecti8es of a" )) syste5 -"herita"ce3
#o$yor#his3 abstractio"3 a"! e"ca#su$atio" are soe of the key i!eas of the )) etho!o$o'y a"!
shou$! be e#$oye! @he"e8er #ossib$e by the !esi'"5
Usability
%he usa'e of the #erso"a$ obi$e (ssista"t ust be i"tuiti8e5 %he 'ra#hica$ user i"terface ust be
!esi'"e! so that the user ca" easi$y u"!ersta"! ho@ to o#erate the a##$icatio" a"! "a8i'ate to a"!
fro 8arious features5 %he 'ra#hica$ user i"terface ust "ot !e#e"! o" e;te"si8e !ocue"tatio" or
trai"i"' for the user to $ear" ho@ to ru" the a##$icatio"5
Data integrity
%he user ust be ab$e to !e#e"! that !ata !is#$aye! by the syste is accurate a"! re$e8a"t5 %he
syste ust !eo"strate !ata i"te'rity by stori"' a"! retrie8i"' !ata Pas-e"tere!Q a"! Pai"tai"e!Q
by user i"#ut5 %his 'oa$ or 'ui!e$i"e @i$$ be a #riary e$ee"t by @hich the user @i$$ assess the
systeQs success i" eeti"' their "ee!s a"! re&uiree"ts5
<Team 10E> SRS <Version 3> Page 4
Display driver Camera driver Bluetooth
driver
Flash
Memory
Binder IPC
driver
USB driver Keypad driver Wi-Fi driver Audio drivers Power
management
<Personal Mobile Assistant>
Maintainabilit4& E5#andabilit4 6 Re"se
%he !esi'" of the a##$icatio" shou$! be ke#t f$e;ib$e to a$$o@ for the i"c$usio" of future features @ithout
causi"' ajor errors or co#$ete$y !isab$i"' the syste5 %he !esi'" shou$! co#arte"ta$ize
fu"ctio"a$ity i"to a##$icab$e subsystes to achie8e this 'oa$5 Future features ca" i"c$u!e3 but are "ot
$iite! to3 #ri"ti"' re#orts or !esi'"i"' i"8itatio"s5 ,ubsystes shou$! be i!e"tifie! a"! co"si!ere!
ca"!i!ates for reuse @he"e8er #ossib$e5 ( cobi"atio" of t@o a##roaches @as e#$oye! i" 'e"erati"'
the syste !esi'" a"! associate! !ocue"tatio"H the to#-!o@" a"! the i"cree"ta$ a##roach5 Use of
these a##roaches @as se$ecte! base! o" characteristics of the syste a"! i"itia$ a"a$ysis of the ,+,5
%he fo$$o@i"' key e$ee"ts or issues to the a##$icatio" @ere use! as the basis for se$ecti"' the
i"cree"ta$ a##roach<
,i"ce the #erso"a$ obi$e (ssista"t is associate! @ith a asterQs #roject3 a$$ !esire! fu"ctio"a$ity @i$$ be
!e$i8ere! i" o"e re$ease5 %herefore3 a$$ fu"ctio"a$ity @as k"o@" to the !esi'" tea u#fro"t5 %he
to#-!o@" a##roach @as use! to e8a$uate a"! !eco#ose the hi'h-$e8e$ fu"ctio"a$ity i"to sa$$er3
easi$y i!e"tifiab$e a"! !esi'"ab$e sectio"s5 %his @as a" i!ea$ a##roach for this syste as the
!esi'"ers k"e@3 u#fro"t3 the sco#e by @hich the #roject @as co"strai"e!5 %he !esi'"ers
!eco#ose! each fu"ctio"a$ area a"! the" co#are! the !issecte! o!e$s $ooki"' to i!e"tify areas
of o8er$a#5
%he i"cree"ta$ a##roach @as e8i!e"t by the !e8e$o#e"t of a" e8o$utio"ary #rototy#e5 %he #rototy#e
@as use! to 8erify a"! c$arify re&uiree"ts @ith stakeho$!ers @hi$e a$so #rese"ti"' #ote"tia$ GU- !esi'"
so$utio"s5 +e&uiree"ts @ere u#!ate! a"! #ro#er cha"'e co"tro$ #rocesses @ere #erfore! i" or!er
for those cha"'es to be i"c$u!e! i" the fi"a$ re$ease5 %he user @as ab$e to 8a$i!ate the f$o@ of e8e"ts as
the !esi'"ers u"!erstoo! the a"! e8o$8e! the syste to #erfor "ecessary fu"ctio"a$ity
Android -e0elopment Tools
%he ("!roi! ,0? i"c$u!es se8era$ too$s a"! uti$ities to he$# you create3 test3 a"! !ebu' your #rojects5
(s e"tio"e! ear$ier3 the (0% #$u'-i" co"8e"ie"t$y i"cor#orates ost of these too$s i"to the .c$i#se
-0.3 @here you ca" access the fro the 00M, #ers#ecti8e3 i"c$u!i"'<
<Team 10E> SRS <Version 3> Page 5
<Personal Mobile Assistant>
Android Em"lator
(" i#$ee"tatio" of the ("!roi! 8irtua$ achi"e !esi'"e! to ru" o" your !e8e$o#e"t co#uter5 2ou
ca" use the eu$ator to test a"! !ebu' your a"!roi! a##$icatio"s5
$al7i1 $eb"8 Monitorin8 Ser7i'e 9$$MS:
Use the 00M, #ers#ecti8e to o"itor a"! co"tro$ the 0a$8ik 8irtua$ achi"es o" @hich youQre
!ebu''i"' your a##$icatio"s5
Android Asset Pa'1a8in8 Tool 9AAPT:
Co"structs the !istributab$e ("!roi! #acka'e fi$es5
Android $eb"8 Brid8e 9A$B:
%he ADB is a c$ie"t-ser8er a##$icatio" that #ro8i!es a $i"k to a ru""i"' eu$ator5 -t $ets you co#y fi $es3
i"sta$$ co#i$e! a##$icatio" #acka'es3 a"! ru" she$$ coa"!s5
%he fo$$o@i"' a!!itio"a$ too$s are a$so a8ai$ab$e<
S;<ite.
( !atabase too$ that you ca" use to access the ,F*ite !atabase fi$es create! a"! use! by ("!roi!
Tra'e7ie=
Gra#hica$ a"a$ysis too$ for 8ie@i"' the trace $o's fro your ("!roi! a##$icatio"
M1S$Card
Creates a" ,0Car! !isk ia'e that ca" be use! by the eu$ator to siu$ate a" e;ter"a$ stora'e car!5
$5
Co"8erts >a8a 5c$ass byteco!e i"to ("!roi! 5!e; byteco!e5
A'ti7it4 Creator ,cri#t that bui$!s ("t bui$! fi $es that you ca" the" use to co#i$e your ("!roi!
a##$icatio"s @ithout the (0% #$u'-i"
%he ("!roi! .u$ator
%he eu$ator is the #erfect too$ for testi"' a"! !ebu''i"' your a##$icatio"s3 #articu$ar$y if you !o"Qt
ha8e a rea$ !e8ice 9or !o"Qt @a"t to risk it: for e;#erie"tatio"5 %he eu$ator is a" i#$ee"tatio" of
the 0a$8ik 8irtua$ achi"e3 aki"' it as 8a$i! a #$atfor for ru""i"' ("!roi! a##$icatio"s as a"y
("!roi! #ho"e5 Because itQs !ecou#$e! fro a"y #articu$ar har!@are3 itQs a" e;ce$$e"t base$i"e to use
for testi"' your a##$icatio"s5 ( "uber of a$ter"ati8e user i"terfaces are a8ai$ab$e to re#rese"t !iffere"t
har!@are co"fi'uratio"s3 each @ith !iffere"t scree" sizes3 reso$utio"s3 orie"tatio"s3 a"! har!@are
features to siu$ate a 8ariety of obi$e !e8ice ty#es5 Fu$$ "et@ork co""ecti8ity is #ro8i!e! a$o"' @ith
the abi$ity to t@eak the -"ter"et co""ectio" s#ee! a"! $ate"cy @hi$e !ebu''i"' your a##$icatio"s5 2ou
ca" a$so siu$ate #$aci"' a"! recei8i"' 8oice ca$$s a"! ,M, essa'es5 %he (0% #$u'-i" i"te'rates the
eu$ator i"to .c$i#se so that itQs $au"che! autoatica$$y @he" you ru" or !ebu' your #rojects5 -f you
<Team 10E> SRS <Version 3> Page 6
<Personal Mobile Assistant>
are"Qt usi"' the #$u'-i" or @a"t to use the eu$ator outsi!e of .c$i#se3 you ca" te$"et i"to the eu$ator
a"! co"tro$ it fro its co"so$e5 For ore !etai$s o" co"tro$$i"' the eu$ator3 (t this sta'e3 the eu$ator
!oes"Qt i#$ee"t a$$ the obi$e har!@are features su##orte! by ("!roi!3 i"c$u!i"' the caera3
8ibratio"3 *.0s3 actua$ #ho"e ca$$s3 the acce$eroeter3 U,B co""ectio"s3 B$uetooth3 au!io ca#ture3
battery char'e $e8e$3 a"! ,0 car! i"sertio"Iejectio"5
*2- $o'"ment Con7entions
<Describe any standards or typographical conventions that were followed when
writing this SRS, such as fonts or highlighting that have special significance. For
example, state whether italicized nouns represent external systems.
1.5 References
http://code.google.com/android/
http://code.google.com/android/download.html
http://code.google.com/android/intro/tutorial.html
https://creately.com/app
http://blog.soton.ac.uk
https://source.android.com/devices/tech/security/
https://source.android.com/devices/tech/security/
http://www.cise.uf.edu/class/cen3031fa13/SRS!"ample1#011.pdf
http://guru$on.com/1/oop%concepts/inheritance%and%
composition/aggregation% vs%composition%vs%association%di'erence%
comparison%between
http://msdn.microsoft.com/en%us/library/dd(0)((*.asp"
http://www.pluralsight.com/training/+ourses/,escription/vs#010%uml
http://www.pluralsight.com/training/+ourses/-able.f+ontents/vs#010%
uml
https://developer.android.com/guide/topics/security/security.html
https://developer.android.com/guide/practices/security.html.
http://mrbool.com/how%to%implement%shared%preferences%in%
android/#/3001i"$$3)m2345)
https://google%
styleguide.googlecode.com/svn/trunk/6avaguide.html1s3.(.#%class%
member%ordering
<Team 10E> SRS <Version 3> Page 7
<Personal Mobile Assistant>
http://msdn.microsoft.com/en%us/library/windows/apps/dn#0*/0).asp"
http://www.lsi.us.es/76avier6/investigacion3cheros/sv10.pdf
https://google%styleguide.googlecode.com/svn/trunk/6avaguide.html
http://softwaretestingfundamentals.com/test%case/
http://sachinsdate.wordpress.com/#013/0(/#0/non%functional%
re5uirements%in%mobile%applications/
(2 Overall Description
2.1 Product Features
%o-!o $ist sha$$ ser8e as
Ca$e"!ar
+ei"!er
)#tio" of s#ecific ties but "ot "ecessari$y5 +e'u$ar sche!u$i"' - .8e"ts that re#eat o" a @eek$y3
o"th$y basis5 +ei"!er #o#-u#s - ri"'to"es o" #ho"e ca" be use! for custoizabi$ity5 +eote access -
throu'h Goo'$e Ca$e"!ar or soe other @ay5 Feature re&uiree"t sha$$ be u#!ate! base! o" cha"'i"'
tre"! a"! i""o8atio"s5 0esi'"i"' i"terface sha$$ be !o"e accor!i"'$y5 (!!i"' throu'h e8e"ts fro
soethi"' $ike FacebookR 9@ish$ist: 1oice3 either #rerecor!e! or throu'h te;t to s#eech5 9@ish$ist:
Ca#abi$ity to recor! essa'es as rei"!ers o" the ca$e"!ar5
Vie= b4 da4& m"lti+da4& =or1 =ee1& =ee1& mont& or 4ear2
-"tuiti8e3 custoizab$e 8ie@ #ro8i!es a c$ea" e"8iro"e"t that #uts e8erythi"' at your fi"'erti#s5
Com#lete Tas1 Vie=
,ee a$$ ty#es of tasks3 "ot o"$y curre"t$y acti8e o"ce but co#$ete! a"! o8er !ue tasks as @e$$5
C"stomi0able time s'ale
0i8i!e each hour i" the 0ay a"! Mu$ti-!ay 8ie@s i"to 53 S3 103 153 303 S0-i"ute i"ter8a$s5 0is#$ay
@ork tie o"$y5
Re'"rrin8 e7ents
<Team 10E> SRS <Version 3> Page 8
<Personal Mobile Assistant>
-f a" e8e"t occurs at re'u$ar i"ter8a$s3 you o"$y "ee! to sche!u$e it o"ce5 2et you ca" o!ify or !e$ete
si"'$e occurre"ces @ithi" a recurri"' e8e"t5
Timed& all da4& and m"lti+da4 e7ents
Ca$e"!ar sco#e akes it easy to see the !uratio" of e8e"ts i" a"y @ay5 (utoatic ca$cu$atio" of the a'e
of year$y e8e"ts ."ter a 8a$ue for a #erso"Qs a'e or a" a""i8ersary a"! ca$e"!ar sco#e ca$cu$ates the
curre"t "uber for each successi8e year5 ("!roi!3 (##$e i#ho"e3 i#a!3 i#o! touch3 #a$ #re3 #i;i3 +-M
B$ackBerry3 @i"!o@s #ho"e M
*(> bit en'r4#tion
-t #ro8i!e 12M-bit e"cry#tio" su##ort3 @hich is "o@ the hi'hest $e8e$ of #rotectio" use! i" i"ter"et
cou"icatio"s5 ,ecure your ca$e"!ar !ata3 a"! sto# @orryi"' about u"authorize! access5
?eb Calendars
Ca$e"!ar sco#e akes it si#$e to sa8e a o"th ca$e"!ar i" H%M* to #ub$ish it to the @eb or to a
co#a"y i"tra"et5
C"stomi0able item tem#lates
2ou ca" use #re-!efi"e! ite te#$ates or create your o@"5 .ach ite te#$ate ca" ha8e custo
co$ors3 fo"t3 a"! sou"! a"! rei"!er o#tio"s5
Cate8ories
(ssi'" cate'ories to ites to easi$y fi"!3 sort3 or fi$ter the5
Colo"r reminder =indo=s
,et rei"!er for !iffere"t ite ty#es to ha8e their o@" co$or3 fo"ts3 sou"! o#tio"s3 etc5
Calendar 'olo"r +'oddin8
-!e"tify each of your ites @ith custo co$ors5
Sear'in8
2ou ca" search the ca$e"!ar for s#ecific ites or key @or!s5
Filterin8
Custoizab$e fi$ters a$$o@ you to co"tro$ @hat you see5 For e;a#$e3 o"$y eeti"'s3 or birth!ays or
@ork- or re$ate! tasks5
<Team 10E> SRS <Version 3> Page 9
<Personal Mobile Assistant>
Ar'i7in8
%he #ro'ra ca" archi8e o$! ites to a fi$e i" or!er to kee# ca$e"!ar !ata fi$es a"a'eab$e5
Ba'1"# and restore
Ca$e"!ar sco#e ca" create backu#s o" a$ost a"y e!ia 9f$o##ies3 har!-!ri8es3 reo8ab$e e!ia3 etc5:
+estore features a$$o@s users to restore ca$e"!ar !ata fro a backu# if the "ee! e8er arises5
Im#ort and e5#ort
%he #ro'ra su##ort !ata i#ort a"! e;#ort i" "ati8e a"! coo"$y- use! fi$e forat3 i"c$u!i"'
ca$e"!ar5 2ou ca" choose "ot to !u#$icate3 or to a$$o@ i#orte! ites to o8er@rite e;isti"' ites5
F"ll4 C"stomi0able Vie=s
,#ecify fo"t faces3 sizes3 a"! other setti"'s for each 8ie@5
Filter Pane
1ie@ ites @ith s#ecific te;ts o"$y5
$etailed #ane
1ie@ !etai$e! of a" ite i" your ca$e"!ar @ithout o#e"i"' it5
F"ll s'reen mode
%his o!e hi!es ost scree"s e$ee"ts so that you ca" 8ie@ ore of your ca$e"!ar5
@oom /eat"res
%ake a &uick $ook at the ites of a si"'$e !ay i" a"y ca$e"!ar 8ie@5 Custo ,etti"'s for the first !ay of
the @eek a"! the first @eek of the year choose a"y !ay of the @eek as your first !ay of the @eek3 a"!
s#ecify the first @eek of the year5
Color #rintin8 and #rint #re7ie=
Ca$e"!ar sco#e a$$o@s you to #re8ie@ a"! the" #ri"t ites for a"y ra"'e of !ates a"! hours usi"'
!iffere"t custoizab$e #ri"t5
R"n at s4stem start
<Team 10E> SRS <Version 3> Page 10
<Personal Mobile Assistant>
2ou ca" co"fi'ure ca$e"!ar sco#e to start autoatica$$y @he" you tur" o" your co#uter5
F"ll4 /"n'tional e7al"tion
%he free e8a$utio" 8ersio" @orks e;act$y $ike the re'istere! 8ersio"5
(2( User Classes and Cara'teristi's
%he ty#ica$ user of a" ("!roi! #ho"e is the ost fa8ore! user5 Users @ho ha8e a obi$e #ho"e or a
sii$ar !e8ice3 @hich is ca#ab$e of ru""i"' ("!roi! obi$e GP+, 9o#tio"a$: @i$$ be ab$e to use this
a##$icatio" for a"a'i"' their !ai$y task a"! rei"!ers5
!ra#i'al User Inter/a'e 9!UI:
%he ai" e$ee"t of the #erso"a$ obi$e (ssista"t !esi'" is the 'ra#hica$ user i"terface5 (fter
e;ai"i"' the a##$icatio"Qs re&uiree"ts3 a reoccurri"' thee is that the syste ust re'u$ar$y i"terface
@ith the user5 %his e$ee"tIcharacteristic3 therefore3 #rese"ts a" esse"tia$ #iece of the o8era$$ #uzz$e5
%he GU- @i$$ be res#o"sib$e for #ro8i!i"' echa"iss to #rese"t3 recei8e3 a"! retai" !ata to the user5
Furtherore3 it ust #rese"t these abi$ities to the user i" a" i"tuiti8e a""er5
%he #erso"a$ obi$e (ssista"tQs user i"terface @i$$ ru" i" a Di"!o@s e"8iro"e"t5 %he GU- @i$$ e"ab$e
the user to #erfor a$$ the i!e"tifie! syste fu"ctio"a$ities5 %he user i"terface @i$$ #ro8i!e fie$!s ab$e to
acce#t user i"#ut for 8arious !ata ites i" a$$ subsystes5 %he user i"terface @i$$ a$so #ro8i!e butto"s
or other sii$ar features to e"ab$e the user to retai"3 u#!ate3 or reo8e !ata fro the syste eory5
(s re&uire! by the syste re&uiree"ts3 the GU- @i$$ a$so #rese"t #re-!efi"e! !ata re#orts to the user
#riari$y i" the for of $ists5 ,oe of these $ists @i$$ a$$o@ the user to se$ect ites for o!ificatio" or
!e$etio" as "ee!e!5 0ue to the aou"t of !ata the syste ust #rese"t to the user 8ia the GU-3 the
#erso"a$ obi$e (ssista"tQs GU- ust be !esi'"e! to a;iize s#ace @hi$e tryi"' "ot to o8er@he$ the
user @ith !ata o" a"y o"e scree"5 ,oe subsystes ay re&uire u$ti#$e scree"s to achie8e this 'oa$
a"! e"sure that the syste reai"s user-frie"!$y5
F"n'tionalit4
Fu"ctio"a$ity is c$ose$y re$ate! to the GU- a"! #ro8i!es the basis by @hich the user i"terface is
co"structe!5 %his e$ee"t a$so #ro8i!es a crucia$ bri!'e bet@ee" the other t@o e$ee"tsH the GU- a"!
0ata Ma"a'ee"t5 %he !esi'" of the #erso"a$ obi$e (ssista"t ust take i"to co"si!eratio" a"!
#ro8i!e echa"iss for the syste to #erfor the 8arious fu"ctio"a$ities as !efi"e! by the ,+,5 %he
<Team 10E> SRS <Version 3> Page 11
<Personal Mobile Assistant>
re&uiree"ts se'e"t the systeQs fu"ctio"a$ity i"to fi8e features @hich3 fo$$o@i"' uch a"a$ysis3 a$so
eer'e! as the basis for i!e"tifyi"' subsystes for the !esi'"5 %he fo$$o@i"' bu$$ets #ro8i!e a hi'h-
$e8e$ break!o@" of the systeQs fu"ctio"a$ity base! o" the features out$i"e! i" the ,+,<
Te E7ent <ist J
%he e8e"t *ist feature co"sists of 8arious fu"ctio"s aie! at #ro8i!i"' the user @ith the abi$ity to
a"a'e i"foratio" accor!i"' to their tasks5 %he syste @i$$ ai"tai" o"e 'e"eric e8e"t *ist i" this
feature @hich @i$$ e;#a"! a"! co"tract as the user a!!s a"!Ior reo8es the tasks to a"! fro the
a##$icatio"5 %he user @i$$ a$so be e"ab$e! to #erfor basic fu"ctio"s o" each task such as e"teri"'3
u#!ati"'3 sa8i"'3 a"! !e$eti"' re$ate! !ata5
Reminder J
%he fu"ctio"a$ity e;hibite! by the rei"!er P$a""er feature e"ab$es the user to a"a'e the tasks by
setti"' the rei"!er5
Te To+$o <ist J
%he %o-0o *ist feature #ro8i!es fu"ctio"a$ity for e"ab$i"' the user to a"a'e a $ist of the acti8ities or
tasks "ee!e! to be #erfore! @ith #$a""i"' the e8e"ts 5 %he a##$icatio" @i$$ a$$o@ the user to se$ect
a"! a!! #rescribe! acti8ities to a to-!o $ist as @e$$ as e"ter u"i&ue acti8ities or tasks5 %his feature a$so
!efi"es 8arious fu"ctio"a$ities for the syste such as or'a"izi"' !iffere"t !ata 8ie@s a"! "otifyi"' the
user of o8er!ue a"! u#coi"' acti8ities5
Fa'tsAStats J
%he FactsI,tats feature co"sists of user fu"ctio"s for a"a'i"' the tasks accor!i"' the !ay3 @eek3
o"th or year3 a"! a"y other ra"!o !ata associate! @ith the e8e"t5 %his featureQs #riary
res#o"sibi$ities @i$$ be to #ro8i!e the user @ith echa"iss for e"teri"'3 u#!ati"'3 sa8i"'3 a"!
!e$eti"' !ata5
Boti/i'ation J
%he "otificatio" featureQs fu"ctio"a$ity a$$o@s the user to se$ect a"! 8ie@ #re-!efi"e! a$ars5 %he
syste @i$$ 'e"erate the se$ecte! re#ort usi"' syste !ata a"! #rese"t the re#ort to the user to 8ie@5
<Team 10E> SRS <Version 3> Page 12
<Personal Mobile Assistant>
$ata Mana8ement
%he $ast key e$ee"t of the De!!i"' (ssista"t is !ata a"a'ee"t5 0ata a"a'ee"t e"co#asses a$$
etho!s by @hich !ata is store!3 retrie8e!3 a"! reo8e! fro the a##$icatio"Qs eory5 %he
re&uiree"ts i!e"tify a $ar'e aou"t of !ata that the syste ust acce#t a"!3 subse&ue"t$y3 a"a'e
base! o" user i"#ut5 Base! o" these re&uiree"ts3 #ro8i!i"' echa"iss for a"a'ee"t of the !ata
becoes a" esse"tia$ e$ee"t to the user5 ("y i"abi$ity to store3 retrie8e3 or u#!ate !ata @ou$! be a
ajor !efect of the a##$icatio"5
%he #erso"a$ obi$e (ssista"t @i$$ use f$at fi$es to o8ersee the !ata a"a'ee"t e$ee"t5 %he
a##$icatio" @i$$ store "e@ !ata as @e$$ as o!ificatio"s to e;isti"' !ata to eory u"ti$ the user e$ects
to c$ose the a##$icatio"5 U#o" c$osi"'3 the syste @i$$ create or u#!ate a f$at fi$e by @hich the user ca"
access that !ata at a"y tie5

<Team 10E> SRS <Version 3> Page 13
<Personal Mobile Assistant>
(2. O#eratin8 En7ironment
%he a##$icatio" @i$$ be ru""i"' o" to# of the ("!roi! #$atfor5
%he core o#erati"' syste is bui$t o" to# of the *i"u; ker"e$5 ($$ !e8ice resources3 $ike caera
fu"ctio"s3 GP, !ata3 B$uetooth fu"ctio"s3 te$e#ho"y fu"ctio"s3 "et@ork co""ectio"s3 etc5 are accesse!
throu'h the o#erati"' syste5
%he ("!roi!T o#erati"' syste 9),: is a" o#e" #$atfor !e8e$o#e! by Goo'$eU to #o@er obi$e
!e8ices a"! ha"!sets5 %he i!ea behi"! the #$atfor is to a$i'" tech"o$o'y co#a"ies @ith obi$e
co#a"ies to #ro!uce a" o#e" o#erati"' syste that ca" be u#!ate! by a"y !e8e$o#er to i#ro8e the
#ro!uct for its users5
%he !e8e$o#e"t of this o#erati"' syste takes #$ace throu'h the use of a soft@are !e8e$o#e"t kit
9,0?: #ro8i!e! by Goo'$eU5 0e8e$o#ers ca" use this kit to create a##$icatio"s that @ork @ith the
<Team 10E> SRS <Version 3> Page 14
<Personal Mobile Assistant>
("!roi!T #$atfor to bri"' other a##$icatio"s i" a!!itio" to those i"c$u!e! @ith the ("!roi!T
o#erati"' syste itse$f5
%he ,0? i"c$u!es a" eu$ator that @i$$ he$# !e8e$o#ers test their a##$icatio"s o" the ),5 %he ), is
a$so bui$t u"!er the co"ce#t that each a##$icatio" is just as 'oo! as the a##$icatio"s that are i"c$u!e!5
0e8e$o#ers $ooki"' to create obi$e e;#erie"ces usi"' the ("!roi!T o#erati"' syste ca" !o so usi"'
a sta"!ar! (##$icatio" Pro'rai"' -"terface 9(P-: a$$o@i"' the to use a series of #roce!ure ca$$s to
access coo" e$ee"ts @ithi" the #$atfor5 %he (P- @i$$ a$so a$$o@ ites store! @ithi" the obi$e
e"8iro"e"t3 $ike co"tacts a"! a##oi"te"ts3 to i"te'rate @ith @eb ser8ices $ike o"$i"e ca$e"!ar a"!
eai$ ser8ices5
(##$icatio"s create! to ru" o" this o#erati"' syste are @ritte" usi"' the >a8a #ro'rai"' $a"'ua'e
a"! @i$$ ru" o" a custo !e8e$o#e! 8irtua$ achi"e e"8iro"e"t ru""i"' o" to# of a *i"u;U ker"e$5
%his @i$$ a$$o@ the base of the #$atfor to ru" a" o#erati"' syste base! o" *i"u;U a"! kee# a sa$$
foot#ri"t o" the !e8ice3 the 8irtua$ achi"e that @i$$ ru" the ), itse$f he$#s to se#arate the a##$icatio"s
fro the core ), a"! ca" i#ro8e the stabi$ity of the !e8ice5
-t @i$$ be i"teresti"' to see @hich !e8ices a"! carriers choose to su##ort the ("!roi!T o#erati"'
syste5 %his re$ati8e$y "e@ a"! 8ery o#e" #$atfor cou$! co#$ete$y cha"'e the @ay obi$e #ho"es a"!
other !e8ices are use! a"! @hat ser8ices are a8ai$ab$e for the5 %he fact that !e8e$o#e"t is o#e" to
a"y @ho @ish to atte#t it3 @i$$ a$so a$$o@ those @ith the "ee! to create custo a##$icatio"s for a
obi$e !e8ice to !o so @ithout re&uiri"' the #urchase of s#ecia$ soft@are a"! other ites3 @hich ca"
soeties be !ifficu$t to obtai"5
(2- $esi8n and Im#lementation Constraints
%his sectio" i!e"tifies a"! a!!resses factors take" i"to co"si!eratio" !uri"' the !esi'" #rocess5 Ma"y
of these factors @ere i!e"tifie! !uri"' the re&uiree"ts #hase a"! a!!resse! !uri"' the !esi'" #rocess5
Constraints
(s cou"ity of 8o$u"teers !e8e$o# this #roject3 the !e8e$o#e"t is ore $ike$y
to be affecte! by the "uber of co"tributors5
6("!roi!7 is a "e@ ), that is i" !e8e$o#e"t #hase the k"o@$e!'e of its ca#abi$ities "ee! to be
ac&uire! ra#i!$y3 @hich ha8e !irect #ro#ositio" to the tie of !e8e$o#e"t5
%he !esi'" takes i"to co"si!eratio" the fo$$o@i"' co"strai"ts<
%he a##$icatio" ust be co#$ia"t @ith the .c$i#se o#erati"' syste5
<Team 10E> SRS <Version 3> Page 15
<Personal Mobile Assistant>
%he syste ust be !e8e$o#e! usi"' >a8a5
%he syste ust ru" usi"' as i"ia$ resources as #ossib$e5
%he !e8e$o#e"t tea ust ha8e basic u"!ersta"!i"' of UM* a"! tra"s$ati"' UM* !esi'"s i"to
co!e5
%he 'ra#hica$ user i"terface ust !eo"strate the >a8a $ook a"! fee$5
($$ fu"ctio"a$ity ust be accessib$e by the user throu'h a GU-5
%he syste @i$$ e#$oy a !ata a"a'ee"t so$utio" that is >a8a co#$ia"t5
%he !e8e$o#e"t tea is $iite! to o"e #ro'raer5
%he a##$icatio" is !irect$y re$ate! to a asterQs #rojectI#ro'ra a"!3 therefore3 @i$$ be
i" accor!a"ce @ith a$$ U"i8ersity co!es a"! restrictio"s set forth for such #rojects
2.3 Assumptions and Dependencies
%he syste !esi'" is base! u#o" the fo$$o@i"' assu#tio"s a"! !e#e"!e"cies<
%he a##$icatio" @i$$ be co#$ia"t @ith the .c$i#se o#erati"' syste5
%he userQs #erso"a$ co#uter co"tai"s the >a8a ru"tie e"8iro"e"t5
%he user has -"ter"et access o" their #erso"a$ obi$e5
%he syste @i$$ be !esi'"e! a"! !e8e$o#e! usi"' object-orie"te! 9)): etho!o$o'ies5
%he syste @i$$ be #ro'rae! i" the >a8a #ro'rai"' $a"'ua'e5
%he user has a basic u"!ersta"!i"' of ho@ to !o@"$oa!3 i"sta$$3 a"! ru" >a8a c$ass fi$es5
%he !e8e$o#e"t tea has a basic u"!ersta"!i"' of UM* a"! tra"s$ati"' UM* !esi'"s i"to
co!e5
<Team 10E> SRS <Version 3> Page 16
<Personal Mobile Assistant>
%he 'ra#hica$ user i"terface @i$$ !eo"strate the >a8a $ook a"! fee$5
%he 'ra#hica$ user i"terface @i$$ e"ab$e the user to #erfor a$$ fu"ctio"a$ity !efi"e! i" the ,+,5
%he syste @i$$ #ro8i!e access to store! !ata5 %his re&uiree"t s#ecificatio" is $ike$y to be
affecte! by cha"'i"' ca#abi$ities of the ("!roi! ), a"! !ea"!i"' re&uiree"ts of the users5

6("!roi! Ca$e"!ar7 hea8i$y !e#e"!s o" ("!roi! ),3 @hich is i" !e8e$o#e"t #hase a"! it is ore $ike$y
to be u#!ate! fre&ue"t$y3 as the (P- cha"'es 6("!roi! ca$e"!ar7 is e;#ecte! to u#!ate accor!i"'$y5
Android Te'ni3"es /or Sa7in8 $ata
%he !ata #ersiste"ce tech"i&ues i" ("!roi! #ro8i!e o#tio"s for ba$a"ci"' s#ee!3 efficie"cy3 a"!
robust"ess<
Sared Pre/eren'es
Dhe" stori"' the U- state3 user #refere"ces3 or a##$icatio" setti"'s3 you @a"t a $i'ht@ei'ht echa"is
to store a k"o@" set of 8a$ues5 ,hare! Prefere"ces $et you sa8e 'rou#s of keyI8a$ue #airs of #riiti8e
!ata as "ae! #refere"ces5
Files
-tQs "ot #retty3 but soeties @riti"' to3 a"! rea!i"' fro3 fi $es !irect$y is the o"$y @ay to 'o5 ("!roi!
$ets you create a"! $oa! fi$es o" the !e8iceQs i"ter"a$ or e;ter"a$ e!ia5
S;<ite $atabases
Dhe" a"a'e!3 structure! !ata is the best a##roach3 ("!roi! offers the ,F*ite re$atio"a$ !atabase
$ibrary5 .8ery a##$icatio" ca" create its o@" !atabases o8er @hich it has tota$ co"tro$5
Content Pro7iders
+ather tha" a stora'e echa"is i" their o@" ri'ht3 Co"te"t Pro8i!ers $et
you e;#ose a @e$$-!efi"e! i"terface for usi"' a"! shari"' #ri8ate !ata5 2ou ca" co"tro$ access5
Basica$$y there are soe @ays you ca" store !ata i" ("!roi! <
,hare! Prefere"ces< Prriiti8e !ata stora'e 9boo$ea" ,tri"'s3 i"ts etc55:5
<Team 10E> SRS <Version 3> Page 17
<Personal Mobile Assistant>
-"ter"a$ ,tora'e< 0e8ice eory stora'e5
.;ter"a$ ,tora'e< ,tore #ub$ic !ata o" stora'e e!ia3 $ike ,0 car!s5
,F*ite 0atabase5
Dith ,hare! Prefere"ces @e ta$k about #era"e"t stora'e about the a##$icatio"5 %hat ea"s that if you
u"i"sta$$ the a##$icatio"3 a$$ your !ata @i$$ be $ost3 so this is a##$icatio" s#ecific5 -" co"trast 3 ,F*ite
stores structure! !ata i" a !atabase3 so e8e" @he" you !e$ete the a##$icatio" the !ata @o"Qt be $ost5
Moti7ation
("!roi! a##$icatio"s ca" store a##$icatio" !ata #ersiste"t$y i" a 8ariety of @ays5 ("!roi! ,hare!
Prefere"ces a$$o@s you to store a"! retrie8e #ersiste"t key-8a$ue #airs of #riiti8e !ata ty#es<
boo$ea"s3 f$oats3 i"ts3 $o"'s3 a"! stri"'s5
Users !esire the a##$icatio" state to sy"chro"ize!
(cross the 8arious !e8ices that they o@" 9obi$e3 tab$et etc:5 For e'< a user #$ayi"' ("'ry Bir!s *e8e$
4 i" her obi$e #ho"e ay @a"t to start at the sae $e8e$ o" her tab$et5
Basica$$y share! #refere"ce i" a"!roi! are use! to sa8e the state of a" acti8ity or to sa8e the i#orta"t
!ata @ithi" the sco#e of a" a##$icatio" ea"s !ata @i$$ reai" sa8e! ti$$ the a##$icatio" is i"sta$$e! i" the
!e8ices5 ,hare! Prefere"ce a$so @orks as ,essio"s @hich are use! for the autoatic $o'i" #rocess5
Obje'ti7e%
%o #ro8i!e k"o@$e!'e to the 8ie@er ho@ to use share! #refere"ce i" a"!roi!5
%o 'i8e basic i"tro!uctio" a"! usa'e of .!itor i" a"!roi!5
%o #ro8i!e k"o@$e!'e to the 8ie@er ho@ to #u$$ out fi$es fro ("!roi! .u$ator5
STORA!E ;UICCVIE?
Use ,hare! Prefere"ces for #riiti8e !ata
Use i"ter"a$ !e8ice stora'e for #ri8ate !ata
Use e;ter"a$ stora'e for $ar'e !ata sets that are "ot #ri8ate
Use ,F*ite !atabases for structure! stora'e
<Team 10E> SRS <Version 3> Page 18
<Personal Mobile Assistant>
("!roi! #ro8i!es se8era$ o#tio"s for you to sa8e #ersiste"t a##$icatio" !ata5 %he so$utio" you choose
!e#e"!s o" your s#ecific "ee!s3 such as @hether the !ata shou$! be #ri8ate to your a##$icatio" or
accessib$e to other a##$icatio"s 9a"! the user: a"! ho@ uch s#ace your !ata re&uires5
2our !ata stora'e o#tio"s are the fo$$o@i"'<
,hare! Prefere"ces
,tore #ri8ate #riiti8e !ata i" key-8a$ue #airs5
-"ter"a$ ,tora'e
,tore #ri8ate !ata o" the !e8ice eory5
.;ter"a$ ,tora'e
,tore #ub$ic !ata o" the share! e;ter"a$ stora'e5
,F*ite 0atabases
,tore structure! !ata i" a #ri8ate !atabase5
/et@ork Co""ectio"
,tore !ata o" the @eb @ith your o@" "et@ork ser8er5
("!roi! #ro8i!es a @ay for you to e;#ose e8e" your #ri8ate !ata to other a##$icatio"s N @ith
a co"te"t #ro8i!er5 ( co"te"t #ro8i!er is a" o#tio"a$ co#o"e"t that e;#oses rea!I@rite access
to your a##$icatio" !ata3 subject to @hate8er restrictio"s you @a"t to i#ose5 For ore
i"foratio" about usi"' co"te"t #ro8i!ers3 see the Co"te"t Pro8i!ers !ocue"tatio"5
Usin8 Sared Pre/eren'es
%he ,hare! Prefere"ces c$ass #ro8i!es a 'e"era$ frae@ork that a$$o@s you to sa8e a"! retrie8e
#ersiste"t key-8a$ue #airs of #riiti8e !ata ty#es5 2ou ca" use ,hare! Prefere"ces to sa8e a"y
#riiti8e !ata< boo$ea"s3 f$oats3 i"ts3 $o"'s3 a"! stri"'s5 %his !ata @i$$ #ersist across user sessio"s
9e8e" if your a##$icatio" is ki$$e!:5
User Pre/eren'es
,hare! #refere"ces are "ot strict$y for sa8i"' Ouser #refere"ces3O such as @hat ri"'to"e a user
has chose"5 -f youBre i"tereste! i" creati"' user #refere"ces for your a##$icatio"3 see Prefere"ce
<Team 10E> SRS <Version 3> Page 19
<Personal Mobile Assistant>
(cti8ity3 @hich #ro8i!es a" (cti8ity frae@ork for you to create user #refere"ces3 @hich @i$$ be
autoatica$$y #ersiste! 9usi"' share! #refere"ces:5
%o 'et a ,hare! Prefere"ces object for your a##$icatio"3 use o"e of t@o etho!s<
Get ,hare! Prefere"ces 9: - Use this if you "ee! u$ti#$e #refere"ces fi$es i!e"tifie! by "ae3
@hich you s#ecify @ith the first #araeter5
'et Prefere"ces9: - Use this if you "ee! o"$y o"e #refere"ces fi$e for your (cti8ity5 Because this
@i$$ be the o"$y #refere"ces fi$e for your (cti8ity3 you !o"Bt su##$y a "ae5
%o @rite 8a$ues<
15 Ca$$ e!it 9: to 'et a ,hare! Prefere"ces5 .!itor5
25 (!! 8a$ues @ith etho!s such as #utBoo$ea"9: a"! #ut,tri"'9:5
35 Coit the "e@ 8a$ues @ith coit9:
%o rea! 8a$ues3 use ,hare! Prefere"ces etho!s such as 'et Boo$ea"9: a"! 'et ,tri"'5
,hare! Prefere"ces is rea$$y a keyI8a$ue store @here o"e ca" sa8e a" i"foratio" u"!er certai" key5 %o
see the i"foratio" i" the store you "ee! to k"o@ the i#orta"t thi"' fro the !ata5 %his @i$$ ake
rea!i"' throu'h the i"foratio" su#er easy5 But as si#$e as itBs to kee# a ti"y bit of !ata as !ifficu$t itBs
to kee# a"! bro@se $ar'e structure! !ata si"ce you "ee! to !efi"e key for e8ery !ata3 i" a!!itio" you
ca"Bt rea$$y search i"si!e the !ata e;ce#t youB8e 'ot a certai" co"ce#t for "ai"' the secrets5
Introd"'tion to 'lasses "sed
,hare! Prefere"ces -"terface<
%his c$ass is use! to i#$ee"t the share! #refere"ces feature i" a"!roi!5 -t is use! for accessi"' a"!
o!ifyi"' the !ata @hich is retur"e! by the 'et,hare!Prefere"ces 9,tri"'3 i"t: etho!5 ($$ the c$ass ca"
share the o"$y o"e i"sta"ce of this c$ass for the i#$ee"tatio"5 Here are be$o@ soe coo"$y use!
etho!s<
(bstract Boo$ea" co"tai"s 9,tri"' key:< %his etho! is use! to 'et the resu$t i" either true or
fa$se @hich @i$$ te$$ that @hether PkeyQ ho$!i"' ,hare!Prefere"ces e;its or "ot5 -t @i$$ retur" true
it key e;ists5
<Team 10E> SRS <Version 3> Page 20
<Personal Mobile Assistant>
Pub$ic (bstract ,hare! Prefere"ces 'et ,hare! Prefere"ces9,tri"' "3 i"t o!e: < %his etho!
@i$$ retrie8e a"! ho$! the co"te"ts of the #refere"ce fi$e P"Q3 retur"i"' a ,hare! Prefere"ce
throu'h @hich a !e8e$o#er ca" o!ify a"! retrie8e its co"te"t 8a$ues5 %he i"sta"ce of the ,hare!
Prefere"ce object @i$$ retur" o"$y to a"y ca$$er for the sae "ae5
,tri"' " < %his is the user !efi"e "ae for accessi"' a"! o!ify the ,hare! Prefere"ces !ata5
i"t o!e < %his is the o#erati"' o!e5 0 is !efau$t for the M)0.=P+-1(%.5
abstract $o"'9,tri"' key3 $o"' 8a$ue: < %his etho! is use! to reteri8e a $o"' 8a$ue fro the ,hare!
Prefere"ces5
.!itor -"terface< %his is the i"terface @hich is use! for the o!ificatio" of ,hare! Prefere"ces co"te"ts5
($$ cha"'es that a !e8e$o#er akes i" a" e!itor are batche! a"! cha"'es are "ot co#ie! back to ori'i"a$
a'ai"5 Cha"'es @i$$ "ot ref$ect u"ti$ coit 9: or a##$y 9: etho! "ot ca$$e!5 Here are be$o@ soe
i#orta"t etho! that are use!<
(bstract 8oi! a##$y 9:< By ca$$i"' this etho!3 !ata @i$$ be o!ifie! #era"e"t$y5
(bstract boo$ea" coit 9: < %his etho! retur" true if cha"'es ha8e a!e a"! ref$ect cha"'es
o" ca$$5
(bstract ,hare!Prefere"ces5.!itor c$ear9: < %his etho! is use! to reo8e a$$ 8a$ues fro the
,hare! Prefere"ces5
(bstract ,hare! Prefere"ces5.!itor #ut Boo$ea"9,tri"' key3 Boo$ea" 8a$ue: < %his etho! @i$$
set the Boo$ea" 8a$ue i" ,hare! Prefere"ces @ith key for the retrie8a$ of 8a$ue5
(bstract ,hare! Prefere"ces5.!itor #ut ,tri"'9,tri"' key3 ,tri"' 8a$ue:< %his etho! is use! to
#ut the ,tri"' 8a$ue i" ,hare! Prefere"ces a"! key is to retrie8a$ of the 8a$ue5
(bstract ,hare! Prefere"ces5.!itor reo8e 9,tri"' key: < %his etho! is use! to reo8e the
8a$ue that is ho$!i"' the key5
.2 F"n'tional Re3"irements%
%he first #hase sha$$ ha8e the fo$$o@i"' fu"ctio"a$ities
15 *oca$ ca$e"!ar @ith P%o-0oQ $ist5
<Team 10E> SRS <Version 3> Page 21
<Personal Mobile Assistant>
25 *oca$ ca$e"!ar sy"chro"izatio" @ith o"$i"e a##$icatio" such as +%M
Local Calendar
*oca$ ca$e"!ar sha$$ ha8e the fo$$o@i"' fu"ctio"a$ities
View calendar
a5 Mo"th @ise 8ie@ for se$ecte! year
i5 2ear sha$$ be se$ecte! or keye! i"5
ii5 .ach o"th sha$$ be se$ecte! to 8ie@ the e"tire e8e"ts $ist of it5
iii5 User sha$$ be ab$e to !e$ete e8e"ts o"e by o"e or a$$ at a tie5
i85 User sha$$ ha8e o#tio" to !e$ete a$$ e8e"ts for the se$ecte! year5
b5 Deek @ise 8ie@ for the se$ecte! year a"! o"th
i5 User sha$$ se$ect year a"! o"th for 8ie@i"' @eeks of the o"th
ii5 User sha$$ ha8e o#tio" to 8ie@ a$$ the e8e"ts of the @eek
iii5 User sha$$ ab$e to a!!I!e$ete e8e"t for the se$ecte! @eek
Add/Delete/Modify Events
a5 User sha$$ a!! e8e"t for the se$ecte! !ate
a: User sha$$ ha8e o#tio" to se$ect !ate a"! tie5
b: User sha$$ a!!I!e$ete e8e"t for the se$ecte! !ate a"! tie
15 More tha" o"e e8e"t sha$$ be a!!e! to se$ecte! !ate a"! tie
25 User sha$$ ha8e o#tio" to se$ect ico" to be sho@" at the e8e"t
35 -" case of abse"ce of the ico"3 syste sha$$ sho@ the !efau$t ico"5
c: User sha$$ co"fi'ure the "otificatio" etho! for the se$ecte! e8e"t
i. This notification method should override the global settings
ii. User shall have option to snooze the notification, which will be
reminded again in 5 minutes.
<Team 10E> SRS <Version 3> Page 22
<Personal Mobile Assistant>
b. User shall delete an event or the entire events for the selected date.
c. User shall modify the following properties of an event
i. Modify date and time
ii. Modify alert style
iii. Modify content of the event
d. Alert style configuration
a) User shall have option to configure the following property of alert style
i. User shall have option to choose the music to play
1. In case of absence of the music, system shall play the default
music
ii. User shall have option to choose
1. Only music
2. Music and vibrator
3. Volume level of the alert style
b) User shall configure notification method and time globally
i. Example: user may want to notify 5 minutes before all the events
Online synchronization
User shall have option to configure online calendar synchronization with service
such as RTM
a. User shall have option to save credential for service such as RTM
b. User shall have options to configure automatic/manual synchronization with
online service.
<Team 10E> SRS <Version 3> Page 23
<Personal Mobile Assistant>
i. When configured automatic, system shall check the availability of
the connection and shall synchronize automatically
ii. User shall have option to configure time interval for auto
synchronization
1. Shall be once in a day
2. Shall be once in 5 minutes.
b. System shall synchronize with online application and update automatically
c. System shall notify user when it was unable to connect with the service while in
automatic mode.
Logical Data Requirements
User sha$$ create rei"!ers i" a"y o"e of t@o @ays
15 Usi"' +%M #$u'-i" for FireFo; 9see +%M @ebsite for ore !etai$s:
25 Usi"' 6("!roi! Ca$e"!ar7
251 6("!roi! Ca$e"!ar7 sha$$ be sy"chro"ize! @ith +%M @he"e8er there is co""ecti8ity @ith the
+%M ,er8er5
2.2 Use-Case 1
Add an event in calendar
Identifier UC-1
Purpose
Priority High
Pre-
conditions
Add event
<Team 10E> SRS <Version 3> Page 24
<Personal Mobile Assistant>
Post-
conditions
Event successful added in database
Typical Course of Action
S# Actor Action System Response
1
Actor add the event Event added
Alternate Course of Action
S# Actor Action System Response
1
No event added No response
2
Actor add the event
Event not added
successfully
Ta"le 1: +C11
2.3 Use-Case 2
Delete an event
Identifier UC-2
Purpose
Priority Lo
Pre-
conditions
Event !ust added
Post-
conditions
Event deleted fro! database
<Team 10E> SRS <Version 3> Page 25
<Personal Mobile Assistant>
Typical Course of Action
S# Actor Action System Response
1
"elete an event #uccessfully deleted
Alternate Course of Action
S# Actor Action System Response
1
No event delete No response
2
$rong deletion "eleted successfully
Ta"le 2: +C12
2.4 Use-Case 3
Search an event
Identifier UC-%
Purpose #earch an event fro! events added
Priority &ediu!
Pre-
conditions
Event !ust added
Post-
'rose the list
<Team 10E> SRS <Version 3> Page 26
<Personal Mobile Assistant>
conditions
Typical Course of Action
S# Actor Action System Response
1
Clic( on #earch icon #earch list appear
Alternate Course of Action
S# Actor Action System Response
1
Clic( on search icon Cannot find event
2
#earch list not appear
Ta"le 3: +C13
2.5 Use-Case 4
Edit an event
Identifier UC-)
Purpose Edit event if any changing needed to be done
Priority &ediu!
<Team 10E> SRS <Version 3> Page 27
<Personal Mobile Assistant>
Pre-
conditions
Event !ust added
Post-
conditions
Event edit
Typical Course of Action
S# Actor Action System Response
1
Clic( on edit icon "one
2
Change event "one
Alternate Course of Action
S# Actor Action System Response
1
Clic( on edit icon Not done correctly
Ta"le 3: +C13
(2D Use+Case ,
Edit an ask
Identifier UC-*
Purpose Edit tas( if any changing needed to be done
<Team 10E> SRS <Version 3> Page 28
<Personal Mobile Assistant>
Priority &ediu!
Pre-
conditions
+as( !ust added
Post-
conditions
+as( edit
Typical Course of Action
S# Actor Action System Response
1
Clic( on edit icon "one
2
Change tas( "one
Alternate Course of Action
S# Actor Action System Response
1
Clic( on edit icon Not done correctly
Ta"le 5: +C15
2.7 Use+Case D%
Attach Reminder
Identifier UC-,
<Team 10E> SRS <Version 3> Page 29
<Personal Mobile Assistant>
Purpose -e!inder added to done or( on ti!e
Priority High
Pre-
conditions
#elect re!inder
Post-
conditions
Notification of the event
Typical Course of Action
S# Actor Action System Response
1
Clic( on re!inder icon
.pen list of different
re!inders
2
#elect re!inder -e!inder Added
Alternate Course of Action
S# Actor Action System Response
1
#elect re!inder -e!inder not added
Ta"le 4: +C14
2.8 Use-Case 7:
Remove Reminder
<Team 10E> SRS <Version 3> Page 30
<Personal Mobile Assistant>
Identifier UC-/
Purpose -e!ove to select ne one
Priority Lo
Pre-
conditions
-e!inder !ust added
Post-
conditions
No re!inder for event
Typical Course of Action
S# Actor Action System Response
1
Clic( on re!ove re!inder
No notification or re!inder
for tas(
Alternate Course of Action
S# Actor Action System Response
1
Clic( on re!ove re!inder Not done successfully
Ta"le 5: +C15
<Team 10E> SRS <Version 3> Page 31
<Personal Mobile Assistant>
2.9 Use-Case 8:
Mark as task completed
Identifier UC-0
Purpose
As the tas( or event finished !ar( it as
co!pleted
Priority High
Pre-
conditions
+as( !ust be added
Post-
conditions
+as( !ust be co!pleted
Typical Course of Action
S# Actor Action System Response
1
User clic( on !ar( option Co!pleted
Ta"le 6: +C16
<Team 10E> SRS <Version 3> Page 32
<Personal Mobile Assistant>
.2 Nonfunctional Requirements
3.1 Performance Requirements
Perfora"ce re&uiree"ts @ith coi"ci!e @ith the ("!roi! #$atfor $iitatio"s5
Perso"a$ assista"t is 8ery feature-rich2 -t is a$so 8ery f$e;ib$e a"! custoizab$e - @hate8er you "ee!5
DeB8e a$so #ut a $ot of effort i"to aki"' the #ro'ra rea$$y si#$e3 c$ea"3 a"! easy to use5-t is si#$e
yet #o@erfu$3 a"! a$so easy to use5
-t is suitab$e both for #erso"a$ a"! busi"ess use3 a"! it is bei"' use! by thousa"!s of users arou"! the
@ho$e @or$! i" a$$ ia'i"ab$e #rofessio"s5 %here are a$so soe Ohi!!e"O features3 $ike 'reat a"! fast
tech"ica$ su##ort for free& fre&ue"t u#!ates2
Ma"a'e both tasks a"! "otes5 .ach task has its o@" "ote& a"! you ca" a$so create task-i"!e#e"!e"t
"otes i" the to-!o $ist tree5
2ou ca" a$so a"a'e $ists of "o"-actio"ab$e ites3 such as i"8e"tories a"! i!eas5
2ou ca" ha8e the ites i" your $ists autoatica$$y "ubere!5
Choose fro ore tha" 240 co$orfu$ ico"s i" 4 sizes for your $ists a"! eos5
.asi$y reor!er this usi"' ouse 90ra' a"! 0ro#:
.asi$y o8e or co#y tasks usi"' ouse
Cut3 co#y a"! #aste this $ist a"! eos 9this a$$o@s you to create your o@" te#$ates:
+ei"!er easi$y acti8ate rei"!er for a"y of your tasks5
,i#$e rei"!er - choose the tie a"! !ate rei"!ers before !ue !ate3 a"! rei"!ers before start
!ate are a$so su##orte!3 as @e$$ as rei"!ers o" !ueIstart !ate
Mu$ti#$e rei"!ers ca" be sho@" at the sae tie
Ma"y custoizatio" o#tio"s - Make the rei"!er @i"!o@ a$@ays o" to#3 choose custo sou"! a"!
rei"!er beha8ior etc5
3.2 Safety Requirements
%his 'ui!e ais to #ro8i!e the basic i"fo ost #eo#$e @a"t to k"o@ about the security of their #ho"es3
a"! @he" to !o@"$oa!3 a"! @he" "ot to !o@"$oa! a##$icatio"s fro the ("!roi! Market5
-tBs y ho#e that this @i$$ he$# #eo#$e ake ore i"fore! !ecisio"s a"! be safe about their a##$icatio"
usa'e3 #ri8acy3 a"! !ata5 -t is y fir be$ief that ("!roi! is a fu"!ae"ta$$y safe #$atfor5 Dith soe
<Team 10E> SRS <Version 3> Page 33
<Personal Mobile Assistant>
coo" se"se3 !i$i'e"ce3 a"! the ri'ht k"o@$e!'e of the #ote"tia$ threats3 users ca" rest assure! a"!
e"joy their !e8ices ore thorou'h$y5
Dhi$e ost of these ti#s @i$$ a##$y to a"y of the "e@ a## stores a"! arkets "o@ a8ai$ab$e for ("!roi!3
this 'ui!e is @ritte" s#ecifica$$y for Goo'$eBs ori'i"a$ ("!roi! Market5
($so3 @hi$e this 'ui!e atte#ts to be as co#rehe"si8e as #ossib$e3 there ay be errors or
isju!'e"ts3 or just o#i"io"s that are subjecti8e5 P$ease rea! it @ith the i!ea i" i"! that itBs just a #art
of the i"foratio" you ay @a"t to co"si!er @he" !o@"$oa!i"' your a##s5
3.3 Security Requirements
("!roi! is a o!er" obi$e #$atfor that @as !esi'"e! to be tru$y o#e"5 ("!roi! a##$icatio"s ake use
of a!8a"ce! har!@are a"! soft@are3 as @e$$ as $oca$ a"! ser8e! !ata3 e;#ose! throu'h the #$atfor to
bri"' i""o8atio" a"! 8a$ue to co"suers5 %o #rotect that 8a$ue3 the #$atfor ust offer a" a##$icatio"
e"8iro"e"t that e"sures the security of users3 !ata3 a##$icatio"s3 the !e8ice3 a"! the "et@ork5
,ecuri"' a" o#e" #$atfor re&uires robust security architecture a"! ri'orous security #ro'ras5
("!roi! @as !esi'"e! @ith u$ti-$ayere! security that #ro8i!es the f$e;ibi$ity re&uire! for a" o#e"
#$atfor3 @hi$e #ro8i!i"' #rotectio" for a$$ users of the #$atfor5
("!roi! @as !esi'"e! @ith !e8e$o#ers i" i"!5 ,ecurity co"tro$s @ere !esi'"e! to re!uce the bur!e"
o" !e8e$o#ers5 ,ecurity-sa88y !e8e$o#ers ca" easi$y @ork @ith a"! re$y o" f$e;ib$e security co"tro$s5
0e8e$o#ers $ess fai$iar @ith security @i$$ be #rotecte! by safe !efau$ts5
("!roi! @as !esi'"e! @ith !e8ice users i" i"!5 Users are #ro8i!e! 8isibi$ity i"to ho@ a##$icatio"s
@ork3 a"! co"tro$ o8er those a##$icatio"s5 %his !esi'" i"c$u!es the e;#ectatio" that attackers @ou$!
atte#t to #erfor coo" attacks3 such as socia$ e"'i"eeri"' attacks to co"8i"ce !e8ice users to
i"sta$$ a$@are3 a"! attacks o" thir!-#arty a##$icatio"s o" ("!roi!5 ("!roi! @as !esi'"e! to both
re!uce the #robabi$ity of these attacks a"! 'reat$y $iit the i#act of the attack i" the e8e"t it @as
successfu$5
%his !ocue"t out$i"es the 'oa$s of the ("!roi! security #ro'ra3 !escribes the fu"!ae"ta$s of the
("!roi! security architecture3 a"! a"s@ers the ost #erti"e"t &uestio"s for syste architects a"!
security a"a$ysts5 %his !ocue"t focuses o" the security features of ("!roi!Bs core #$atfor a"! !oes
"ot !iscuss security issues that are u"i&ue to s#ecific a##$icatio"s3 such as those re$ate! to the bro@ser
or ,M, a##$icatio"5 +ecoe"!e! best #ractices for bui$!i"' ("!roi! !e8ices3 !e#$oyi"' ("!roi!
!e8ices3 or !e8e$o#i"' a##$icatio"s for
<Team 10E> SRS <Version 3> Page 34
<Personal Mobile Assistant>
("!roi! are "ot the 'oa$ of this !ocue"t a"! are #ro8i!e! e$se@here ("!roi! seeks to be the ost
secure a"! usab$e o#erati"' syste for obi$e #$atfors by re-#ur#osi"' tra!itio"a$ o#erati"' syste
security co"tro$s to<
Protect user !ata
Protect syste resources 9i"c$u!i"' the "et@ork:
Pro8i!e a##$icatio" iso$atio"
%o achie8e these objecti8es3 ("!roi! #ro8i!es these key security features<
+obust security at the ), $e8e$ throu'h the *i"u; ker"e$
Ma"!atory a##$icatio" sa"!bo; for a$$ a##$icatio"s
,ecure i"ter#rocess cou"icatio"
(##$icatio" si'"i"'
(##$icatio"-!efi"e! a"! user-'ra"te! #erissio"s
User security features
Software File system Encryption
Android 3.0 and later provides full file system encryption, so all user data can be encrypted in the
kernel using the decrypt implementation of AES128 with CBC and ESSIV: SHA256. The encryption
key is protected by AES128 using a key derived from the user password, preventing unauthorized
access to stored data without the user device password. To provide resistance against systematic
password guessing attacks (e.g. rainbow tables or brute force), the password is combined with a
random salt and hashed repeatedly with SHA1 using the standard PBKDF2 algorithm prior to being
used to decrypt the files system key. To provide resistance against dictionary password guessing
attacks, Android provides password complexity rules that can be set by the device administrator and
enforced by the operating system. File system encryption requires the use of a user password, pattern-
based screen lock is not supported.
Pass=ord Prote'tion
("!roi! ca" be co"fi'ure! to 8erify a user-su##$ie! #ass@or! #rior to #ro8i!i"' access to a !e8ice5 -"
a!!itio" to #re8e"ti"' u"authorize! use of the !e8ice3 this #ass@or! #rotects the cry#to'ra#hic key for
fu$$ fi$e syste e"cry#tio"5
Use of a #ass@or! a"!Ior #ass@or! co#$e;ity ru$es ca" be re&uire! by a !e8ice a!i"istrator5
<Team 10E> SRS <Version 3> Page 35
<Personal Mobile Assistant>
3.4 Software Quality Attributes
)r'a"ize 2our %asks5 Use fo$!ers3 ta's3 co"te;ts3 subtasks a"! ore to or'a"ize3 search a"! sort
throu'h your tasks5-#ro8e 2our Pro!ucti8ity5 custoizab$e a$ars3 a"! sortab$e o"$i"e to-!o $ist @i$$
he$# you reeber to co#$ete tasks o"-tie5
Go ("y@here5 Get this a##$icatio" o" your obi$e #ho"e3 i" your eai$3 o" your ca$e"!ar3 i"te'rate!
!irect$y i"to your @eb bro@ser3 a"! ore5
Collaborate5
.asi$y @ork @ith other #eo#$e o" share! #rojects @ith co$$aboratio" too$s5
Custoize5 ,e$ect fie$!s you @a"t to use a"! !efi"e ho@ you @a"t to 8ie@ your tasks5 Perso"a$ obi$e
assista"t is i"cre!ib$y f$e;ib$e a"! custoizab$e5 -#ort 2our .;isti"' %asks5 -f you a$rea!y use a task
a"a'er3 i#ort tasks fro a"y sources
Hotlist
( sart $ist that autoatica$$y fi'ures out @hatBs i#orta"t to you ri'ht "o@5
Filters
(##$y fi$ters to hi!e tasks a"! co"ce"trate o" @hatBs i#orta"t5
S'ed"ler
-t ca" a"a$yze the !etai$s of tasks to !eteri"e the best use of your $iite! tie5
Alarms
Get rei"!ers for tasks that are !ue soo"5 ($ars ca" arri8e 8ia eai$3 ss3 %@itter3 iPho"e or o" your
!eskto#5
Sort
,ort your $ist by u$ti#$e fie$!s3 to e"sure that i#orta"t tasks f$oat to the to#5
C"stomi0ation
Perso"a$ obi$e assista"t is f$e;ib$e e"ou'h to @ork @ith a"y !iffere"t sty$es of #ro!ucti8ity5
Sear'
-t has a #o@erfu$ Boo$ea" search fu"ctio" to he$# you ru" re#orts a"! fi"! s#ecific tasks5
Fileatta'ment
U#$oa! a"! attach fi$es to tasks so that you @i$$ a$@ays ha8e re$e8a"t fi$es at ha"!5
S"btas1s
,ubtasks a$$o@ you to break $ar'e tasks !o@" i"to sa$$er a"a'eab$e #ieces5
Calendar
8isua$$y see @hat your o"th $ooks $ike5 C$ick o" a !ay3 @eek or o"th to 8ie@ the tasks5
<Team 10E> SRS <Version 3> Page 36
<Personal Mobile Assistant>
3.5 Software Quality Attributes
%here are a "uber of &ua$ity characteristics that ca" a##$y to soft@are5 Pick the o"es ost i#orta"t to this
#ro!uct a"! !e8e$o# a sectio" for each o"e5 0efi"itio"s of the &ua$ity characteristics fo$$o@5
A''essibilit4
(ccessibi$ity is the !e'ree to @hich a #ro!uct3 !e8ice3 ser8ice3 or e"8iro"e"t is a8ai$ab$e to as a"y
#eo#$e as #ossib$e5 (ccessibi$ity ca" be 8ie@e! as the Oabi$ity to accessO a"! be"efit fro soe syste
or e"tity5 %he co"ce#t ofte" focuses o" #eo#$e @ith !isabi$ities or s#ecia$ "ee!s 9such as the Co"8e"tio"
o" the +i'hts of Perso"s @ith 0isabi$ities: a"! their ri'ht of access3 e"ab$i"' the use of assisti8e
tech"o$o'y5
A''"ra'4
(ccuracy of a easuree"t syste is the !e'ree of c$ose"ess of easuree"ts of a &ua"tity to that &ua"tityBs actua$
9true: 8a$ue5 %he #recisio" of a easuree"t syste3 re$ate! to re#ro!ucibi$ity a"! re#eatabi$ity3 is the !e'ree to @hich
re#eate! easuree"ts u"!er u"cha"'e! co"!itio"s sho@ the sae resu$ts5 ($thou'h the t@o @or!s #recisio" a"!
accuracy ca" be sy"o"yous i" co$$o&uia$ use3 they are !e$iberate$y co"traste! i" the co"te;t of the scie"tific etho!5
Ada#tation
(!a#tatio" i" co#uter scie"ce refers to a #rocess3 i" @hich a" i"teracti8e syste 9a!a#ti8e syste:
a!a#ts its beha8ior to i"!i8i!ua$ users base! o" i"foratio" ac&uire! about its user9s: a"! its
e"8iro"e"t5
A//ordabilit4
%he e;te"t to @hich soethi"' is affor!ab$e3 as easure! by its cost re$ati8e to the aou"t that the
#urchaser is ab$e to #ay5
A7ailabilit4
%he !e'ree to @hich a syste3 subsyste or e&ui#e"t is i" a s#ecifie! o#erab$e a"! coittab$e state
at the start of a issio"3 @he" the issio" is ca$$e! for at a" u"k"o@"3 i.e. a ra"!o3 tie5 ,i#$y #ut3
a8ai$abi$ity is the #ro#ortio" of tie a syste is i" a fu"ctio"i"' co"!itio"5 %his is ofte" !escribe! as
a issio" ca#ab$e rate5 Matheatica$$y3 this is e;#resse! as 1 i"us u"a8ai$abi$ity5
<Team 10E> SRS <Version 3> Page 37
<Personal Mobile Assistant>
Ca#abilit4
%he state of bei"' co#atib$eH i" @hich t@o or ore thi"'s are ab$e to e;ist or #erfor to'ether i"
cobi"atio" @ithout #rob$es or co"f$ict5
E//e'ti7eness
.ffecti8e"ess is the ca#abi$ity of #ro!uci"' a !esire! resu$t5 Dhe" soethi"' is !eee! effecti8e3 it
ea"s it has a" i"te"!e! or e;#ecte! outcoe3 or #ro!uces a !ee#3 8i8i! i#ressio"
Fle5ibilit4
F$e;ibi$ity is use! as a" attribute of 8arious ty#es of systes5 -" the fie$! of e"'i"eeri"' systes !esi'"3
it refers to !esi'"s that ca" a!a#t @he" e;ter"a$ cha"'es occur5 F$e;ibi$ity has bee" !efi"e! !iffere"t$y i"
a"y fie$!s of e"'i"eeri"'3 architecture3 bio$o'y3 eco"oics3 etc5 -" the co"te;t of e"'i"eeri"' !esi'"
o"e ca" !efi"e f$e;ibi$ity as the abi$ity of a syste to res#o"! to #ote"tia$ i"ter"a$ or e;ter"a$ cha"'es
affecti"' its 8a$ue !e$i8ery3 i" a tie$y a"! cost-effecti8e a""er5 %hus3 f$e;ibi$ity for a" e"'i"eeri"'
syste is the ease @ith @hich the syste ca" res#o"! to u"certai"ty i" a a""er to sustai" or i"crease
its 8a$ue !e$i8ery5 U"certai"ty is a key e$ee"t i" the !efi"itio" of f$e;ibi$ity5 U"certai"ty ca" create
both risks a"! o##ortu"ities i" a syste3 a"! it is @ith the e;iste"ce of u"certai"ty that f$e;ibi$ity
becoes 8a$uab$e5
$ata Corr"#tion
0ata corru#tio" refers to errors i" co#uter !ata that occur !uri"' @riti"'3 rea!i"'3 stora'e3
tra"sissio"3 or #rocessi"'3 @hich i"tro!uce u"i"te"!e! cha"'es to the ori'i"a$ !ata5 Co#uter3
tra"sissio" a"! stora'e systes use a "uber of easures to #ro8i!e e"!-to-e"! !ata i"te'rity3 or $ack
of errors5
<earnabilit4
-" soft@are testi"' $ear"abi$ity3 accor!i"' to -,)I-.C V12S3 is the ca#abi$ity of a soft@are #ro!uct to
e"ab$e the user to $ear" ho@ to use it5 *ear"abi$ity ay be co"si!ere! as a" as#ect of usabi$ity3 a"! is of
ajor co"cer" i" the !esi'" of co#$e; soft@are a##$icatio"s5
Usabilit4
Usabi$ity is the ease of use a"! $ear"abi$ity of a hua"-a!e object5 %he object of use ca" be a soft@are
a##$icatio"3 @ebsite3 book3 too$3 achi"e3 #rocess3 or a"ythi"' a hua" i"teracts @ith5 ( usabi$ity stu!y
ay be co"!ucte! as a #riary job fu"ctio" by a usability analyst or as a seco"!ary job fu"ctio"
by !esi'"ers3 tech"ica$ @riters3 arketi"' #erso""e$3 a"! others5 -t is @i!e$y use! i" co"suer
<Team 10E> SRS <Version 3> Page 38
<Personal Mobile Assistant>
e$ectro"ics3 cou"icatio"3 a"! k"o@$e!'e tra"sfer objects 9such as a cookbook3 a !ocue"t or o"$i"e
he$#: a"! echa"ica$ objects such as a !oor ha"!$e or a haer5
Testabilit4
%estabi$ity3 a #ro#erty a##$yi"' to a" e#irica$ hy#othesis3 i"8o$8es t@o co#o"e"ts the $o'ica$
#ro#erty that is 8arious$y !escribe! as co"ti"'e"cy3 !efeasibi$ity3 or fa$sifiabi$ity3 @hich ea"s
that cou"tere;a#$es to the hy#othesis are $o'ica$$y #ossib$e3 a"! the #ractica$ feasibi$ity of obser8i"'
a re#ro!ucib$e series of such cou"tere;a#$es if they !o e;ist5 -" short3 a hy#othesis is testab$e if there
is soe rea$ ho#e of !eci!i"' @hether it is true or fa$se of rea$ e;#erie"ce5 U#o" this #ro#erty of its
co"stitue"t hy#otheses rests the abi$ity to !eci!e @hether a theory ca" be su##orte! or fa$sifie! by the
!ata of actua$ e;#erie"ce5 -f hy#otheses are teste!3 i"itia$ resu$ts ay a$so be $abe$e! i"co"c$usi8e
S"stainabilit4
,ustai"abi$ity is ho@ bio$o'ica$ systes reai" !i8erse a"! #ro!ucti8e5 *o"'-$i8e! a"!
hea$thy @et$a"!s a"! forests are e;a#$es of sustai"ab$e bio$o'ica$ systes5 -" ore 'e"era$ ters3
sustai"abi$ity is the e"!ura"ce of systes a"! #rocesses5 %he or'a"izi"' for sustai"abi$ity is sustai"ab$e
!e8e$o#e"t3 @hich i"c$u!es the four i"terco""ecte! !oai"s< eco$o'y3 eco"oics3 #o$itics a"! cu$ture5

,ustai"abi$ity scie"ce is the stu!y of sustai"ab$e !e8e$o#e"t a"! e"8iro"e"ta$ scie"ce5
Sim#li'it4
,i#$icity is the state or &ua$ity of bei"' si#$e5 -t usua$$y re$ates to the bur!e" @hich a thi"' #uts o"
soeo"e tryi"' to e;#$ai" or u"!ersta"! it5 ,oethi"' @hich is easy to u"!ersta"! or e;#$ai" is si#$e3
i" co"trast to soethi"' co#$icate!5 ($ter"ati8e$y3 as Herbert (5 ,io" su''este!3 soethi"' is si#$e
or co#$e; !e#e"!i"' o" the @ay @e choose to !escribe it5 -" soe uses3 si#$icity ca" be use! to
i#$y beauty3 #urity3 or c$arity5 ,i#$icity ay a$so be use! i" a "e'ati8e co""otatio" to !e"ote a !eficit
or i"sufficie"cy of "ua"ce or co#$e;ity of a thi"'3 re$ati8e to @hat is su##ose! to be re&uire!5
Sa/et4
,afety is the state of bei"' OsafeO the co"!itio" of bei"' #rotecte! a'ai"st #hysica$3 socia$3 s#iritua$3
fi"a"cia$3 #o$itica$3 eotio"a$3 occu#atio"a$3 #sycho$o'ica$3 e!ucatio"a$ or other ty#es or co"se&ue"ces
of fai$ure3 !aa'e3 error3 acci!e"ts3 har or a"y other e8e"t @hich cou$! be co"si!ere! "o"-!esirab$e5
,afety ca" a$so be !efi"e! to be the co"tro$ of reco'"ize! hazar!s to achie8e a" acce#tab$e $e8e$ of risk5
<Team 10E> SRS <Version 3> Page 39
<Personal Mobile Assistant>
%his ca" take the for of bei"' #rotecte! fro the e8e"t or fro e;#osure to soethi"' that causes
hea$th or eco"oica$ $osses5 -t ca" i"c$u!e #rotectio" of #eo#$e or of #ossessio"s5
Rob"stness
-" co#uter scie"ce3 robust"ess is the abi$ity of a co#uter syste to co#e @ith errors !uri"'
e;ecutio"5 +obust"ess ca" a$so be !efi"e! as the abi$ity of a" a$'orith to co"ti"ue o#erati"' !es#ite
ab"ora$ities i" i"#ut3 ca$cu$atio"s3 etc5 +obust"ess ca" e"co#ass a"y areas of co#uter scie"ce3
such as robust #ro'rai"'3 robust achi"e $ear"i"'3 a"! robust "et@ork !esi'"5 %he har!er it is to
create u"ha"!$e! errors of a"y ty#e or for3 the ore robust the soft@are5 Fora$ tech"i&ues3 such
as fuzz testi"'3 are esse"tia$ to sho@i"' robust"ess si"ce this ty#e of testi"' i"8o$8es i"8a$i! or
u"e;#ecte! i"#uts5 ($ter"ati8e$y3 fau$t i"jectio" ca" be use! to test robust"ess5 1arious coercia$
#ro!ucts #erfor robust"ess testi"' of soft@are systes3 a"! is a #rocess of fai$ure assesse"t a"a$ysis5

Re"sabilit4
-" co#uter scie"ce a"! soft@are e"'i"eeri"'3 reusabi$ity is the $ike$ihoo! that a se'e"t of source
co!e ca" be use! a'ai" to a!! "e@ fu"ctio"a$ities @ith s$i'ht or "o o!ificatio"5 +eusab$e o!u$es a"!
c$asses re!uce i#$ee"tatio" tie3 i"crease the $ike$ihoo! that #rior testi"' a"! use has e$ii"ate!
bu's a"! $oca$izes co!e o!ificatio"s @he" a cha"'e i" i#$ee"tatio" is re&uire!5
Res#onsi7eness
+es#o"si8e"ess as a co"ce#t of co#uter scie"ce refers to the s#ecific abi$ity of a syste or
fu"ctio"a$ u"it to co#$ete assi'"e! tasks @ithi" a 'i8e" tie5 For e;a#$e3 it @ou$! refer to the abi$ity
of a" artificia$ i"te$$i'e"ce syste to u"!ersta"! a"! carry out its tasks i" a tie$y fashio"5

-t is o"e of
the criteria u"!er the #ri"ci#$e of robust"ess 5%he other three are obser8abi$ity3 reco8erabi$ity3 a"! task
co"fora"ce5
Reliabilit4
-" co#uter "et@orki"'3 a re$iab$e #rotoco$ is o"e that #ro8i!es re$iabi$ity #ro#erties @ith res#ect to the
!e$i8ery of !ata to the i"te"!e! reci#ie"t9s:3 as o##ose! to a" u"re$iab$e #rotoco$3 @hich !oes "ot
#ro8i!e "otificatio"s to the se"!er as to the !e$i8ery of tra"sitte! !ata5 %he ter re$iab$e !e$i8ery is a
sy"o"y for assure! !e$i8ery3 @hich is the ter use! i" the co"te;t of the (%M ,er8ice-,#ecific
Coor!i"atio" Fu"ctio"3 e5'5 for tra"s#are"t assure! !e$i8ery @ith ((*55
<Team 10E> SRS <Version 3> Page 40
<Personal Mobile Assistant>
( re$iab$e u$ticast #rotoco$ ay e"sure re$iabi$ity o" a #er-reci#ie"t basis3 as @e$$ as #ro8i!e #ro#erties
that re$ate the !e$i8ery of !ata to !iffere"t reci#ie"ts3 such as e5'5 tota$ or!er3 atoicity3 or 8irtua$
sy"chro"y5
+e$iab$e #rotoco$s ty#ica$$y i"cur ore o8erhea! tha" u"re$iab$e #rotoco$s3 a"! as a resu$t3 are s$o@er
a"! $ess sca$ab$e5 %his ofte" is "ot a" issue for u"icast #rotoco$s3 but it ay be a #rob$e
for u$ticast #rotoco$s5
Contin8en'4
Co"ti"'e"cy is the status of #ro#ositio"s that are "either true u"!er e8ery
#ossib$e 8a$uatio" 9i5e5 tauto$o'ies: "or fa$se u"!er e8ery #ossib$e 8a$uatio" 9i5e5 co"tra!ictio"s:5 (
co"ti"'e"t #ro#ositio" is "either "ecessari$y true "or "ecessari$y fa$se5 Pro#ositio"s that are co"ti"'e"t
ay be so because they co"tai" $o'ica$ co""ecti8es @hich3 a$o"' @ith the truth 8a$ue of a"y of
its atoic #arts3 !eteri"e the truth 8a$ue of the #ro#ositio"5 %his is to say that the truth 8a$ue of the
#ro#ositio" is contingent u#o" the truth 8a$ues of the se"te"ces @hich co#rise it5 Co"ti"'e"t
#ro#ositio"s !e#e"! o" the facts3 @hereas a"a$ytic #ro#ositio"s are true @ithout re'ar! to a"y facts
about @hich they s#eak5
-2 Other Requirements
<Define any other re!uirements not covered elsewhere in the SRS. "hese might include database
re!uirements, external #hardware, software, or communication$ interface re!uirements,
internationalization re!uirements, legal re!uirements, and reuse ob%ectives for the pro%ect.
<Team 10E> SRS <Version 3> Page 41
<Personal Mobile Assistant>
Appendix A: Glossary
<Define all the terms necessary to properly interpret the SRS, including acronyms and
abbreviations. &ou may wish to build a separate glossary that spans multiple pro%ects or the entire
organization, and %ust include terms specific to a single pro%ect in each SRS.
<Team 10E> SRS <Version 3> Page 42
<Personal Mobile Assistant>
Appendix B: Analysis Models
%he use cases create! a"! #rese"te! i" the ,+, @ere use! for the fu"ctio"a$ a"! beha8iora$ 8ie@#oi"t5
%he fu"ctio"a$ a"! beha8iora$ 8ie@#oi"ts !eo"strate! P@hatQ the syste "ee!e! to !o i" re'ar!s to
i"teractio"s @ith the user or i"ter"a$ #rocesses5
0ata-Mo!e$i"' 1ie@#oi"t
%he !ata-o!e$i"' 8ie@#oi"t out$i"es the syste !ata objects a"! their re$atio"shi#s5 0ata @as
i!e"tifie! for each of the fi8e subsystes5 (" e"tity re$atio"shi# !ia'ra 9.+0: @as !e8e$o#e! to
i!e"tify the !ata a"! the re$atio"shi# ao"' the objects i" each of those subsystes5 )"ce 'e"erate!3
the .+0 create! for each subsyste ser8e! as the basis for i!e"tifyi"' objects a"! their attributes a"!
etho!s5
ERD Diagrams:
<Team 10E> SRS <Version 3> Page 43
<Personal Mobile Assistant>
Class Diagram:
<Team 10E> SRS <Version 3> Page 44
<Personal Mobile Assistant>
<Team 10E> SRS <Version 3> Page 45
<Personal Mobile Assistant>
<Team 10E> SRS <Version 3> Page 46
<Personal Mobile Assistant>
Use Case
<Team 10E> SRS <Version 3> Page 47
<Personal Mobile Assistant>
Sequence Diagram:
<Team 10E> SRS <Version 3> Page 48
<Personal Mobile Assistant>
<Team 10E> SRS <Version 3> Page 49
<Personal Mobile Assistant>
<Team 10E> SRS <Version 3> Page 50
<Personal Mobile Assistant>
Appendix C: Design Models
< 'nclude the following design model( component diagram, deployment diagram.
<Team 10E> SRS <Version 3> Page 51
<Personal Mobile Assistant>
Appendix D: Screenshots



<Team 10E> SRS <Version 3> Page 52
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 53
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 54
<Personal Mobile Assistant>


<Team 10E> SRS <Version 3> Page 55
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 56
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 57
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 58
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 59
<Personal Mobile Assistant>

<Team 10E> SRS <Version 3> Page 60
<Personal Mobile Assistant>
Appendix E: Test Cases
Identifier +C-1
Priority Hi'h
Related
requirements(s)
/et@ork a8ai$abi$ity for i"sta$$atio"3
0e8ice ust be su##orte! the a##$icatio"5
Sort description 1erify that a##$icatio" ca" be i"sta$$e! successfu$$y5
Pre-condition(s) -"sta$$ a##$icatio"5
!"pected result(s) (##$icatio" shou$! be ab$e to i"sta$$ successfu$$y5
Post-condition(s) (##$icatio" shou$! be i"sta$$e!5
Ta"le 7: TC11
Identifier +C-2
Priority *o@
Related
requirements(s)
/et@ork ust be a8ai$ab$e3
0e8ice ust be su##orte!5
Sort description 1erify that a##$icatio" ca" be u"i"sta$$e! successfu$$y5
Pre-condition(s) (##$icatio" ust be i"sta$$e!5
<Team 10E> SRS <Version 3> Page 61
<Personal Mobile Assistant>
!"pected result(s) User shou$! be ab$e to u"i"sta$$ the a##$icatio" successfu$$y5
Post-condition(s) (##$icatio" u"i"sta$$e! successfu$$y5
Ta"le 10: TC12
Identifier +C-%
Priority Hi'h
Related
requirements(s)
1erify that first scree" is re"!ere! @ithi" the 5 seco"!s after start5
Sort description
1erify that a##$icatio" $o'o @ith a##$icatio" "ae is #rese"t i"
a##$icatio" a"a'er a"! user ca" se$ect it5
Pre-condition(s) (##$icatio" shou$! be i"sta$$e!5
Input data ,tart the a##$icatio"5
!"pected result(s)
(##$icatio" $o'o @ith a##$icatio" "ae shou$! be #rese"t i"
a##$icatio" a"a'er a"! user ca" se$ect it5
Post-condition(s) (##$icatio" $o'o a8ai$ab$e5
Ta"le 11: TC13
<Team 10E> SRS <Version 3> Page 62
<Personal Mobile Assistant>
Identifier +C-)
Priority Hi'h
Related
requirements(s)
/et@ork co""ectio"
Sort description
%he a## beha8es "ora$$y i" e"8iro"e"t @here co""ecti8ity is
"ot re$iab$e5
Pre-condition(s) %ur" o" "et@ork co""ectio"5
Input data %ur" off co""ectio"5
#etailed steps
Co"for !e8ice has a @orki"' co""ectio"5
,tart the a##5
Dhi$e your a## is ru""i"' c$ose the "et@ork co""ectio"5
Co"ti"ue usi"' a##5 Make sure fu"ctio"a$ity that re&uires
co""ecti8ity5
!"pected result(s) (## shou$! beha8e "ora$$y @he" "et@ork co""ectio" $ost5
Post-condition(s) (## beha8es "ora$$y5
Ta"le 12: TC13
<Team 10E> SRS <Version 3> Page 63
<Personal Mobile Assistant>
Identifier +C-*
Priority *o@
Related
requirements(s)
(ir#$a"e o!e o"5
Sort description (## beha8es "ora$$y i" air#$a"e o!e5
Pre-condition(s) (ir#$a"e o!e is off5
Input data )" the (ir#$a"e o!e5
#etailed steps
,tart the a##5
Perfor a" actio" that cause a co""ectio" atte#t5
%est @he" o" co""ecte! o" first ru" of the a##$icatio"
!"pected result(s) (## shou$! be beha8es "ora$$y i" air#$a"e o!e5
Post-condition(s) (## beha8es "ora$$y5
Ta"le 13: TC15
<Team 10E> SRS <Version 3> Page 64
<Personal Mobile Assistant>
Identifier %C-S
Priority Hi'h
Related
requirements(s)
%ask a"! e8e"t ust be a!!e!
Sort description (## #ro8i!es a @ay to a"a'e task "otificatio"s5
Pre-condition(s) /otificatio" ust be a!!e!
Input data ,et "otificatio"
#etailed steps
,tart a##5
*ook for a @ay to check a"y future task "otificatio"s5
*ook for a @ay to !e$ete future task "otificatio"s5
!"pected result(s) /otificatio" shou$! be !is#$aye! of set e8e"t or task5
Post-condition(s) /otificatio" !is#$aye!5
Ta"le 13: TC14
<Team 10E> SRS <Version 3> Page 65
<Personal Mobile Assistant>
Identifier %C-K
Priority Hi'h
Sort description
(## #ro8i!es error essa'es that are co"te;tua$3 user frie"!$y3 a"!
"ot 'e"eric5
.rror essa'es shou$! 8ery c$ear$y !efi"e @hat the error @as a"!
@hat "e;t ste#s are re&uire!5
Make sure that your a## !oes "ot !is#$ay e#ty #a'es5 -"
situatio"s @here co"te"t is "ot a8ai$ab$e to !is#$ay o" a #a'e3
#ro8i!e a##ro#riate error or he$# te;t to the user5
Pre-condition(s) .rror i" ru""i"' a##$icatio"5
Input data /ot -"sert a##ro#riate !ata5
#etailed steps
,tart a##5
Co"!uct usa'e e;ercises that resu$t i" a" error essa'e5
+e8ie@ the co"te"t of each essa'e5
!"pected result(s) -f a"y error 'e"erate a" error essa'e ust be !is#$aye!5
Post-condition(s) .rror essa'e 'e"erate5
Ta"le 15: TC15

<Team 10E> SRS <Version 3> Page 66
<Personal Mobile Assistant>
Identifier %C-M
Priority Hi'h
Related
requirements(s)
0ate3 tie a"! e8e"t "ae5
Sort description User e"ter the e8e"t "ae3 tie a"! !ate the" e8e"t is a!!e!5
Pre-condition(s) (!! a" e8e"t
Input data ."ter the e8e"t "ae or se$ecte! #re!efi"e! e8e"t5
#etailed steps
."ter e8e"t tit$e3
,e$ect !ate a"! tie5
!"pected result(s) .8e"t shou$! be a!!e! successfu$$y5
Post-condition(s) .8e"t successfu$$y a!!e! i" !atabase5
Ta"le 14: TC14
Identifier %C-V
Priority *o@
Sort description User se$ects the e8e"t a"! !e$ete!5
Pre-condition(s) .8e"t ust be a!!e!
Input data ,e$ect the e8e"t
<Team 10E> SRS <Version 3> Page 67
<Personal Mobile Assistant>
#etailed steps
,tart a##5
,e$ect the e8e"t that @a"ts to !e$ete5
C$ick o" !e$ete butto"5
!"pected result(s) .8e"t shou$! be !e$ete! successfu$$y5
Post-condition(s) .8e"t !e$ete!5
Ta"le 15: TC17
Identifier %C-10
Priority *o@
Sort description User search the e8e"t ca$e"!ar or i" #re!efi"e! e8e"ts
Pre-condition(s) .8e"t ust be a!!e!
Input data ."ter the e8e"t "ae
#etailed steps
."ter the e8e"t "ae that @a"ts to search5
C$ick o" ,earch butto"5
!"pected result(s) .8e"t shou$! be ,earch successfu$$y5
Post-condition(s) Bro@se the $ist
Ta"le 16: TC110
<Team 10E> SRS <Version 3> Page 68
<Personal Mobile Assistant>
Identifier %C-11
Priority Me!iu
Sort description .!it e8e"t if a"y cha"'i"' "ee!e! to be !o"e5
Pre-condition(s) .8e"t ust be a!!e! that @a"t to cha"'e5
Input data ,e$ect the e8e"t
#etailed steps
,e$ect the e8e"t that @a"ts to e!it5
Cha"'e the e8e"t
C$ick o" sa8e butto"
!"pected result(s) .8e"t shou$! be e!it successfu$$y5
Post-condition(s) .8e"t e!it5
Ta"le 17: TC111
<Team 10E> SRS <Version 3> Page 69
<Personal Mobile Assistant>
Identifier %C-12
Priority *o@
Sort description (## #ro8i!es a @ay to a"a'e task "otificatio"s5
Pre-condition(s) .8e"t ust be a!!e!
Input data ,e$ect the e8e"t
#etailed steps
,tart a##5
,e$ect the e8e"t that @a"ts to !e$ete5
C$ick o" !e$ete butto"5
!"pected result(s) .8e"t shou$! be !e$ete! successfu$$y5
Post-condition(s) .8e"t !e$ete!5
Ta"le 20: TC112
<Team 10E> SRS <Version 3> Page 70
<Personal Mobile Assistant>
Appendix F: IV & V Report
(Independent verification & validation)
I$ % $ Resource
Na!e #ignature
S# #efect #escription &ri'in Sta'e Status
(i" Time
)ours *inutes
1
2
%

Ta"le 2: 8ist o( non1tri0ial de(e,ts


<Team 10E> SRS <Version 3> Page 71

You might also like