Beruflich Dokumente
Kultur Dokumente
Contents
1. Cover Page
2. Contents 3. Introduction 4. Phase 1 Planning 5. Phase 2 Project Plan 6. Phase 3 High-level Design . !e"ort o# $esting and De"lo%&ent '. Data(ase Design ). *""lication Code 1+. ,ser -uide 11. $ea& .eader/s *ssess&ent 12. $ea& 0e&(er 1valuation
Introduction
Overview The Wine N Dine !WND" #ro$ect is desi%ned to #rovide an a##lication where &sers can share reci#es and drin' #airin%s( The mobile web a##lication is a )ront end web*inter)ace that allows &sers to loo'&#, modi)y, add and )avorite reci#es contained within the a##lication+s bac'end database( The intent is to #rovide an a##lication that s&##lies drin' reci#es while also allowin% the &ser to add comments and s&%%estions )or com#lementary )oods with each reci#e( There are ty#ical bartender reci#es mobile a##lications in the mar'et, b&t the val&e add o) WND is to allow a &ser to c&stomi,e searches and even add their #ersonal reci#es( Team Overview Ana Weaver - Ana brin%s years o) e.#erience in b&siness systems and #ro$ect mana%ement to the %ro&#( Blaine Smith - Blaine brin%s his 'nowled%e o) codin% and scri#tin% lan%&a%es to the %ro&#( Daniel Primavera - Daniel brin%s his e.#erience with databases and b&siness systems to the %ro&#( Scott Brewer - Scott brin%s his e.#erience in #ro$ects and b&siness systems develo#ment to the %ro&#( Taylor Richard - Brin%s his e.#erience in #ro$ect mana%ement and a##lication develo#ment to the %ro&#( Why Wine N Dine (WND)? We chose to create the Wine N Dine a##lication beca&se the conce#t was )easible within the time)rame available, and there is a de)inite mar'et )or a drin' reci#e and #airin% a##( /rom a technical stand#oint, the a##lication elements are sim#le eno&%h to $&sti)y the 01 wee' timeline the Mobile Web A##lication co&rse allows )or( /ort&nately, the ma$ority o) o&r %ro&#+s e.#erience revolves aro&nd the a&.iliary )&nctions o) a##lication2system develo#ment3 allowin% &s to ta'e a realistic a##roach to #lannin% and re4&irements analysis( /rom this analysis, we determined there was a mar'et demand )or WND and the technical com#onents co&ld be com#leted within the %iven time )rame(
Table of Content
0 5verview(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 6 7 Pro$ect /easibility((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 6 7(0 Technical /easibility((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 6 7(7 8conomic /easibility((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 6 7(9 5r%ani,ational /easibility(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((6 7(: ;hallen%es(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 6 7(< Additional Pro$ect 5##ort&nities(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((= 7(1 Pro$ect 5b$ectives((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( = 7(6 Pro$ect ;onstraints and Ass&m#tions(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((= 7(= Pro$ect Ris's((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( = 9 Pro#osed Sol&tion((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0> 9(0 B&siness Re4&irements((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((0> 9(7 Architect&re(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 00 9(9 Develo#ment(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 00 9(: Testin%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 00 9(< Milestones(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 00 9(<(0 Phase ?: Plannin% (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 00 9(<(7 Phase ?? - Analysis and @? Desi%n((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((07 9(<(9 Phase ???* @? ?m#lementation(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((07 9(<(: Phase ?A - A##lication ?m#lementation(((((((((((((((((((((((((((((((((((((((((((((((((((((07 9(<(< Phase ?A - Demo and /inal Release(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((07 : Pro$ect Reso&rces((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 07 :(0 Roles and Res#onsibilities((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((07 :(7 ?ss&e 8scalation(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 09 :(9 Pro$ect Materials (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0: < Pro$ect A##roach(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0: <(0 Develo#ment Model((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0: <(7 ;omm&nication Mana%ement((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((0: <(7(0 Stat&s &#dates(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0: <(7(7 Team meetin%s (((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0: <(9 ;han%e Mana%ement((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0: <(: Testin%((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0<
<(< Doc&mentation((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0< 1 8stimate((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0< 6 Sched&le((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 0< = A##rovals((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 01 =(0 Database creation(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( :> =(0(0 ** Database: Bmwa7B((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( :> =(0(7 ** Table str&ct&re )or table Bcate%oryB((((((((((((((((((((((((((((((((((((((((((((((((((((((:> =(0(9 ** Table str&ct&re )or table BcommentsB((((((((((((((((((((((((((((((((((((((((((((((((((((:> =(0(< ** Table str&ct&re )or table Bdrin'B((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((:0 =(0(6 ** Table str&ct&re )or table B)avoritesB((((((((((((((((((((((((((((((((((((((((((((((((((((((:0 =(0(= ** Table str&ct&re )or table B)oodB(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((:0 =(0(0> ** Table str&ct&re )or table B#airin%B(((((((((((((((((((((((((((((((((((((((((((((((((((((((:0 =(0(07 ** Table str&ct&re )or table B&sersB((((((((((((((((((((((((((((((((((((((((((((((((((((((((((:7 My Cro&#: Cro&# 7 Team Deader: Scott Brewer(((((((((((((((((((((((((((((((((((((((((((((:: My Name: Daniel Primavera(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((:: ? eval&ate other team members+ contrib&tion to the #ro$ect as )ollows: (((((((((((:: 5n scale o) 0>(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( :: 0> is the hi%hest((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( :: *(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( :: Team member E7: Name FDaniel PrimaveraFFFFFFFFFFF FFFFF Score: F0>FFFFF( (:: Team member E9: Name FBlaine Smith FFFFFFFFFFFFFFFFFFFF Score: F0>FFFFF(((:: Team member E:: Name FTaylor RichardFFFFFFFFFFFFFFFFFFF Score: F0>FFFFF( (:: Team member E<: Name FAna Weaver FFFFFFFFFFFFFFFFFFFF Score: F0>FFFFF(((:: Team member E1: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF(((((((:< Team member E6: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF(((((((:< Team member E=: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF(((((((:< Team member EG: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF(((((((:< Team member E0>: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF(((((((:<
Overview
With the overwhelmin% &se o) mobile devices thro&%ho&t the world, the need )or mobile web a##lications has increased drastically( When the ty#ical cons&mer is loo'in% )or a #artic&lar item or has a bit o) time to s#are, their )irst choice is to t&rn to their smart#hones )or %ames, search a##lications, service oriented %ad%ets and other easy to &se mobile a##lications( The com#etitive mar'et o) mobile web a##lications has %enerated a need to come &# with a more rob&st yet chea#er a##lication to #rovide the services that the cons&mers are now e.#ectin% )rom mobile technolo%y( The WND Wine N Dine #ro$ect is desi%ned to #rovide e.actly that( With all the )oodies and drin' desi%ners o&t there, the intent is to #rovide an a##lication that s&##lies drin' reci#es while also allowin% the &ser to add comments and s&%%estions )or com#lementary )oods with each reci#e( There are ty#ical bartender reci#es mobile a##lications in the mar'et, b&t the val&e add o) WND is to allow a &ser to c&stomi,e searches and even add their #ersonal reci#es as well(
"
7(: ;hallen%es
The #ro$ect may #resent challen%es as o&tlined below:
@n'nown delivery time )or codin% and testin% @n'nown technical re4&irements Pro$ect sta)) will re4&ire s&bstantial trainin% in order to com#lete #ro$ect tas's
The )ollowin% ass&m#tions are re)lected on the Pro$ect Plan: Pro$ect team members will be available as needed to com#lete #ro$ect tas's and ob$ectives( The Pro$ect team will a##rove and e.ec&te all details o) the Pro$ect Plan( Pro$ect team members will adhere to the ;omm&nications Plan( All #ro$ect #artici#ants will abide by the %&idelines identi)ied within this #lan( The Pro$ect Plan may chan%e as new in)ormation and iss&es are revealed( All chan%es m&st be re)lected and trac'ed on the #ro$ect #lan(
)iti-ation Strate-y
;lose collaborative e))ort and dedication to the #ro$ect by team ;om#rehensive comm&nications #lan, )re4&ent meetin%s, ti%ht #ro$ect mana%ement oversi%ht ;ontin&ed research on codin% content and sim#le #lan Sco#e intially de)ined in #ro$ect #lan, reviewed by team3 #ossible sim#li)yin% o) sco#e Re)er bac' to Pro$ect S#onsor re4&irements o)ten Timeline may have to be contino&sly reviewed and #lan modi)ied accordin%ly Pro$ect S#onsor and Pro$ect Mana%er to identi)y 'nowled%e %a#s and #rovide trainin%, as necessary
#ro$ect Definition Narrow Hnowled%e Devel o) @sers Pro$ect Sco#e ;ree# ;ons<ant Deliverables &nclear Timeline 8stimates @nrealistic
*: Hnowled%eable o) &ser area only *: Sco#e %enerally de)ined, s&b$ect to revision ': Well de)ined
'i&ely Some what li&ely /nli&el y Some what li&ely Some what li&ely
*: Timeline ass&mes sim#le )&nctionality and 'nowled%e ): Team well versed in b&siness o#erations im#acted by technolo%y , lac' o) codin% 'nowled%e may ca&se delay ': ?denti)ied and enth&siastic ': @nderstands val&e I s&##orts #ro$ect
#ro$ect 'ea+er hip Steerin% ;ommittee e.istence Absence o) ;ommitment Devel2Attit&de o) Mana%ement
/nli&el y /nli&el y
;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members
Ri & Absence o) ;ommitment Devel2Attit&de o) @sers Absence o) Mid* Mana%ement ;ommitment #ro$ect StaffinPro$ect Team Availability Physical Docation o) Team #revents e))ective mana%ement Pro$ect Team+s Shared Wor' 8.#erience creates #oor wor'in% relationshi# Wea' @ser Partici#ation on Pro$ect Team
Ri & 'evel '()(* ': @nderstands val&e I s&##orts #ro$ect ': Most &nderstand val&e I s&##ort #ro$ect ): Distrib&ted team ma'es availability 4&estionable ): Team is acc&stomed to wor'in% virt&ally ':Team has wor'ed to%ether in limited ca#acity in the #ast ': @sers are #art*time team members y
)iti-ation Strate-y ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members @se o) ?ntranet #ro$ect website, ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members
/nli&el y
#ropo e+ Sol1tion
This #ro$ect will #rovide a mobile web a##lication that will be a )ront end to a MJSKD database that will store the drin' reci#es and ima%es is available )or each drin'( ?n addition, the &ser can also add comments to their reci#es and any servin% or )ood s&%%estions( The search )&nctionality is sim#le to &se and rob&st and #rovides m<i#le search criteria( The &ser is also able to add reci#es to the a##lication as well(
9(7 Architect&re
This section o) the doc&ment #rovides the technical bl&e#rint o) the a##lication( %1nctional Specification /&nctional s#eci)ications will be determined d&rin% Phase ?? o) the #ro$ect( Technical Specification Technical s#eci)ications will incl&de the )ollowin% !i) a##licable": Networ' Dia%rams Plat)orm s#eci)ications Develo#ment lan%&a%es Peri#heral s#eci)ications
Sec1rity Specification Sec&rity S#eci)ications and analysis will be determined d&rin% Phase ?? o) the #ro$ect(
9(9 Develo#ment
This section o) the doc&ment will encom#ass the )eat&res to be incl&ded in each release or #hase o) the develo#ment #rocess(
9(: Testin%
This section describes both the overall a##roach to testin% as well as #rovides details on what will be tested, when the testin% will occ&r and who will be res#onsible )or the testin%(
9(< Milestones
The )ollowin% re#resent 'ey #ro$ect milestones, with estimated com#letion dates:
)ile tone
#ro$ect Re o1rce
Re pon ibilitie Mana%es #ro$ect in accordance to the #ro$ect #lan Serves as liaison to the Pro$ect S#onsor Receive %&idance )rom Pro$ect S#onsor Provide overall #ro$ect direction Direct2lead team members toward #ro$ect ob$ectives and timelines Landles comm&nication between team members Mana%es the #ro$ect b&d%et @nderstand the #ro$ect re4&irements ;omm&nicate stat&s o) individ&al tas's to Pro$ect Mana%er Review and a##rove #ro$ect deliverables ;reates or hel#s create wor' #rod&cts ;oordinates #artici#ation o) wor' %ro&#s, individ&als and sta'eholders Provide 'nowled%e and recommendations Lel#s identi)y and remove #ro$ect barriers Ass&re 4&ality o) #rod&cts that will meet the #ro$ect %oals and ob$ectives ?denti)y ris's and iss&es and hel# in resol&tions
Pro$ect Partici#an ts
Blaine Smith, Dan Primavera, Taylor Richard, Ana Weaver, Scott Brewer
S#onsor(
#ro$ect 7pproach
chan%e mana%ement re4&irements( Nearly all s&ch mana%ement #olicies, however, need to incl&de: Name o) chan%e initiator Doc&mentation re%ardin% the nat&re o) the chan%e ;han%e im#act analysis ;han%e re$ection 2 a##roval
<(: Testin%
A testin% #lan will be develo#ed as #art o) the )&nctional s#eci)ication #hase o) the develo#ment #ro$ect( This will incl&de a detailed test #lan, as the analyst develo#ers &nderstand more abo&t the com#onents that will re4&ire testin%(
<(< Doc&mentation
Doc&mentation re4&irements will be identi)ied d&rin% the desi%n #hase o) the #ro$ect(
, timate
Pro$ect cost is estimated as minimal d&e to develo#ment and overall #ro$ect e))ort bein% com#leted by Pro$ect Team Members( Minimal costs to incl&de: P&blishin% o) a##lication costs Devices re4&ired )or testin%
Sche+1le
The #ro$ect sched&le will be com#leted once all #ro$ect tas's have been de)ined and #rioriti,ed(
7pproval
I have read the above Project Plan and will abide by its terms and conditions and pledge my full commitment and support for the Project Plan. #ro$ect Spon or: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; #ro$ect )ana-er: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Steerin- Committee )ember: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Steerin- Committee )ember: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Steerin- Committee )ember: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Steerin- Committee )ember: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Table of content
0( Short #ro$ect descri#tion 9 7( Dist o) im#ortant re4&irements 9 9( Possible ris's : :( System Architect&re < <( Technolo%ies < 1( Doc&mentation < 6( K&ality ;ontrol and Testin% < =( Pro$ect Brea'down with time e))orts estimation 1 G( Pro$ect delivery #lan by sta%es 6 0>( B&d%et details G 00( Payment terms 00 07( Warranty 00 09( Maintenance and s&##ort terms 00 0:( ?n)ormation 00
Technical #art
!< Short #ro$ect De cription The Wine N Dine !WND" #ro$ect is desi%ned to #rovide an a##lication where &sers can share reci#es and drin' #airin%s( The mobile web a##lication will be a )ront end web*inter)ace that allows &sers to loo'&#, modi)y, add and )avorite reci#es contained within the a##lication+s bac'end database( The intent is to #rovide an a##lication that s&##lies drin' reci#es while also allowin% the &ser to add comments and s&%%estions )or com#lementary )oods with each reci#e( There are ty#ical bartender reci#es mobile a##lications in the mar'et, b&t the val&e add o) WND is to allow a &ser to c&stomi,e searches and even add their #ersonal reci#es( The )ront end o) the a##lication will be dynamic LTMD )orm elements %enerated thro&%h PLP( ?nter)ace stylin% will be driven by ;SS9 and any additional inter)ace )&nctionality s&##orted with Mavascri#t and MK&ery( The bac'*end databases will be driven, maintained and inter)aced thro&%h MySKD( The #ro$ect ob$ectives incl&de: 0( ;om#lete )ront*end inter)ace desi%n o) WND a##lication 7( ;om#lete bac'*end desi%n and architect&re 9( ;om#lete )ront*end inter)ace )&nctionality :( B&ild de)a< database o) reci#es :( Tie )ront*end inter)ace to bac'*end databases <( Test system )&nctionality 1( Test system stability =( Release Wine N Dine A##lication "< 'i t of important re41irement 0( @ser A&thentication System !@AS" 0(0 System to create &sers 0(7 System to validate &ser credentials 0(9 System to modi)y &ser details 7( @ser+s ability to add entries in reci#e database 7(0 @ser inter)ace to add reci#es 7(7 System to validate new entries 9( @ser+s ability to search reci#e database 9(0 @ser inter)ace to 4&ery database by reci#e name, drin' name or c&isine 9(7 ?nter)ace to dis#lay res<s dynamically !ability to handle varyin% n&mber o) res<s" :( @ser ability to N)avorite+ certain entries in the reci#e database( :(0 @ser ability to ta%2&n*ta% a reci#e as a )avorite
items
<( Retrieval o) base data )or reci#e table <(0 Cather list o) reci#es to be incl&ded in database by de)a< <(7 Cather list o) drin' #airin%s to be incl&ded in database by de)a< 0< #o ible Ri &
Ri & #ro$ect Si.e 8stimated Pro$ect Sched&le Team Si,e at Pea' Ri & 'evel '()(* 'i&elih oo+ of ,vent )iti-ation Strate-y
;lose collaborative e))ort and dedication to the #ro$ect by team ;om#rehensive comm&nications #lan, )re4&ent meetin%s, ti%ht #ro$ect mana%ement oversi%ht ;ontin&ed research on codin% content and sim#le #lan Sco#e intially de)ined in #ro$ect #lan, reviewed by team3 #ossible sim#li)yin% o) sco#e Re)er bac' to Pro$ect S#onsor re4&irements o)ten Timeline may have to be contino&sly reviewed and #lan modi)ied accordin%ly Pro$ect S#onsor and Pro$ect Mana%er to identi)y 'nowled%e %a#s and #rovide trainin%, as necessary
#ro$ect Definition Narrow Hnowled%e Devel o) @sers Pro$ect Sco#e ;ree# ;ons<ant Deliverables &nclear Timeline 8stimates @nrealistic
*: Hnowled%eable o) &ser area only *: Sco#e %enerally de)ined, s&b$ect to revision ': Well de)ined
'i&ely Some what li&ely /nli&el y Some what li&ely Some what li&ely
*: Timeline ass&mes sim#le )&nctionality and 'nowled%e ): Team well versed in b&siness o#erations im#acted by technolo%y , lac' o) codin% 'nowled%e may ca&se delay
Ri & Steerin% ;ommittee e.istence Absence o) ;ommitment Devel2Attit&de o) Mana%ement Absence o) ;ommitment Devel2Attit&de o) @sers Absence o) Mid* Mana%ement ;ommitment #ro$ect StaffinPro$ect Team Availability Physical Docation o) Team #revents e))ective mana%ement Pro$ect Team+s Shared Wor' 8.#erience creates #oor wor'in% relationshi# Wea' @ser Partici#ation on Pro$ect Team
Ri & 'evel '()(* ': ?denti)ied and enth&siastic ': @nderstands val&e I s&##orts #ro$ect ': @nderstands val&e I s&##orts #ro$ect ': Most &nderstand val&e I s&##ort #ro$ect ): Distrib&ted team ma'es availability 4&estionable ): Team is acc&stomed to wor'in% virt&ally ':Team has wor'ed to%ether in limited ca#acity in the #ast ': @sers are #art*time team members y
'i&elih oo+ of ,vent /nli&el /nli&el y /nli&el y /nli&el y Some what li&ely /nli&el y /nli&el y
)iti-ation Strate-y ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members @se o) ?ntranet #ro$ect website, ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members ;ontin&ed comm&nication across all team members
/nli&el y
The system will consist o) the )ollowin% ma$or sections: 0( LTMD< web a##lication 7( Server*side a##lication
6< Technolo-ie Cro&# 7 s&%%ests b&ildin% the system &sin% the )ollowin% technolo%ies: 0( #*# * To handle dynamically %eneratin% LTMD where necessary 7( *T)' * To handle inter)ace content o) web a##lication 9( CSS0 * To handle stylin% the content o) web a##lication :( =ava cript * To handle inter)ace and )ront*end web a##lication behavior and lo%ic <( =>1ery * To handle cascaded inter)ace and )ront*end web a##lication behavior 1( )yS>' ? To handle system+s database mana%ement 8< Doc1mentation Cro&# 7 will #rovide: 0( #ro$ect #lan * Li%h*level technical descri#tion o) WND a##lication 7( Commente+ So1rce Co+e ? So&rce )iles and data &sed to im#lement WND web a##lication( Also to incl&de )&nctional descri#tions o) a##lication code, commented within so&rce( 9( Technical Doc1mentation ? Doc&ments s#eci)yin% technical )eat&re set and methodolo%y o) a##lication+s so&rce code 9< >1ality Control an+ Te tinCro&# 7 will im#lement the )ollowin% tests: 0( %1nctional Te tin- ? 0(0 A&thentication /eat&res O ;reate, modi)y, mana%e and delete &sers O Password validation )&nctionality 0(7 ?nter)ace )&nctionality O Desi%n elements dis#layed as e.#ected O /ront*end inter)ace lo%ic 7( #erformance Te tin- ? 8ns&re res#onse times are within acce#table ran%es 9( Destr&ctive Testin% :( @sability Testin% <( Sec&rity Testin% :< #ro$ect Brea&+own with time effort e timation Timeline and #rice in this #ro#osal are re)erred to the entire a##lication( @ Sta-e(Ta & ,ffort()an? *o1r
0(7
Sta-e 3mplementation " 7(0 7(0(0 7(0(7 7(7 7(9 7(: 7(< 7(1 7(6 7(6(0 7(6(7 7(= 7(=(0 7(=(7 7(=(9 7(G 7(G(0 7(G(7 7(G(9 DB ;reation ;reate database str&ct&re and relationshi#s Po#&late database with base data DB methods and 4&eries PLP bac'end lo%ic Desi%n @ser ?nter)ace ;reate Desi%n 8lements ?m#lement @ser ?nter)ace Aalidation Service ;reate &ser Modi)y @ser Database ?nte%ration Aiew reci#es2#airin%s Add reci#es2#airin%s Modi)y reci#es2#airin%s /avorites Add )avorite Remove )avorite Modi)y )avorite 01 0> 1 0> 0< 7> 9 0< 07 = : 0: 1 : : 0> < 0 :
Sta-e Te tin- an+ other >7 ta & 0 9(0 Acce#tance testin% o) whole system 0>
Sta-e Deployment 5
:(0
A##lication de#loyment
Total estimated man*ho&rs: !A0 A< #ro$ect +elivery plan by ta-e The #ro$ect will be im#lemented in the )ollowin% sta%es: Sta%e 0( Analysis and Desi%n Tas's Deliverables 8stimate !wor' days" Total man*ho&rs by sta%e 'abor cate-ory Senior so)tware en%ineer Wor' #lan creation3 Technical architect&re desi%n3 Wor' #lan and technical architect&re 0 =
Staff 41antity 0
Sta%e 7( ?m#lementation
Tas's
DB ;reation,;reate database str&ct&re and relationshi#s,Po#&late database with base data,DB methods and 4&eries,PLP bac'end lo%ic,Desi%n @ser ?nter)ace,;reate Desi%n 8lements,?m#lement @ser ?nter)ace,Aalidation Service,;reate &ser,Modi)y @ser,Database ?nte%ration,Aiew reci#es2#airin%s,Add reci#es2#airin%s,Modi)y reci#es2#airin%s,/avorites,Add )avorite,Remove )avorite,Modi)y )avorite Wor'in% a##lication with some b&%s
Deliverable s
7>
016
Staff 41antity 0 7 7
Sta%e 9( testin% and other KA Tas's Tas's Deliverables 8stimate !wor' days" Total man*ho&rs by sta%e 'abor cate-ory So)tware test en%ineer Acce#tance testin% o) all system3 /&lly wor'in% a##lication 7 0> Staff 41antity 7 )an?ho1r per per on <
Sta%e :( De#loyment
Tas's Deliverables
0 =
Staff 41antity 7
Total #ro$ect time)rame: 6 wee's Total estimated e))orts: 0G9 man*ho&rs Time e))orts by labor cate%ory: 'abor cate-ory Senior so)tware en%ineer So)tware en%ineer Web desi%ner So)tware test en%ineer %inancial !C< B1+-et Detail Senior so)tware en%ineer Web desi%ner So)tware test en%ineer So)tware en%ineer B1+-et Calc1lation 'abor Cate-ory D1ration()an?ho1r Co t per cate-ory Tot al co t per cate -or 9> @SD2hr 7< @SD2hr 0= @SD2hr 7< @SD2hr D1rationB man?ho1r 97 0>< 9= 0>
y Senior so)tware en%ineer Web desi%ner So)tware test en%inneer So)tware en%ineer 97 9= 0> 0>< 9> @SD 7< @SD 0= @SD 7< @SD G1> @SD G<> @SD 0=> @SD 717 < @SD :60 <
Total !@SD"
0=<
7<(:G@SD
7++itional Service Doc&mentation and /AK * 1>> @SD ;lient sta)) ed&cation * 0>>> @SD Total #rice i 80!6 /SD< The total cost incl&des: 9 Months o) )ree b&% )i.in%( /inal deliverables in accordance with #ro$ect wor' sco#e listed in #ro#osal Develo#ment and testin% e))orts to create the entire #ro$ect The above #rice does not incl&de any third*#arty com#onents or services, e(%( money trans)er char%es, #&rchased hardware and so)tware com#onents !e(%( o#eratin% system, database server"( !!< #ayment term Pre*#ayment : 9>P Price: 0=G< @SD A)ter com#letion o) Sta%e 7 : 9>P Price: 0=G< @SD A)ter com#letion o) Sta%e : : :>P Price: 7<7< @SD Methods o) #ayment: Cro&# 7 acce#ts Cro&# 7 acce#ts Cro&# 7 acce#ts Cro&# 7 acce#ts #ayment #ayment #ayment #ayment via via via via wire trans)er( chec'( certi)ied chec'( money order(
Payment Notes: Cro&# 7 will #rovide so&rce code once #ayment is received in )&ll(
!"< Warranty All errors that are discovered within the )irst three months o) system o#eration will be )i.ed at no additional cost( !0< )aintenance an+ 1pport term We #rovide any necessary maintenance and third*level s&##ort( Maintenance costs are ne%otiable, b&t we o))er the )ollowin% standard #ac'a%es: 0> ho&rs 7< ho&rs 9> ho&rs Per Lo&r 09> @SD 77> @SD 90> @SD 0< @SD
Deneral 3nformation
!5< 3nformation Hey Services: Mobile Web A##lication Develo#ment3 Database Mana%ement Hey S'ills: PLP, Mavascri#t, LTMD, ;SS9, MK&ery and MySKD Docation: @SA Team 8.#ertise: Web A##lications !6< Contact Detail
Daniel Primavera Taylor Richard Ana Weaver Blaine Smith Scott Brewer
WND De$i!n
i!" #evel
Table o) ;ontents
0(> ?ntrod&ction 0(0 0(7 7(> Bac'%ro&ndRRRRRRRRRRRRRRRRRRRRRR(R(9 Desi%n CoalsRRRRRRRRRRRRRRRRRRRRRR(((9
0 ?ntrod&ction
0(0 - Bac'%ro&nd
8ach year, more and more #eo#le re#lace their older mobile #hones with smart devices( With this yearly in)l&. o) &sers, increasin%ly more and more #eo#le reach )or their device more o)ten to solve their daily #roblems, ma'e their lives sim#ler, and share tidbits abo&t their lives( Smart devices are ta'in% over as the tool o) choice )or 4&ic' and sim#le tas's, which is re#lacin% the des'to# com#&ter( While smart#hone &sa%e has e.#loded, so has social media( This can come in )orm o) social networ's, blo%%in%, boo'mar'in% sites, and )or&ms( These ty#es o) social media are 4&ic'ly becomin% a way )or &sers to comm&nicate their #assions( Millions and millions o) #eo#le consider themselves to be )oodies ( They ta'e to resta&rants to discover new c&isines, delicacies, and drin's( This advent&re is o)ten not shared amon% #eo#le who have a common interest over the web, b&t yet between a )ew local )riends( Many boo's have been written abo&t )ood #airin%s and every so o)ten, a new boo' comes o&t with &#dates dishes and drin's( This can become a len%thy #rocess and some readers may lose interest over time( 5ther /oodies o)ten #&rchase these boo's to 'ee# &# on the newest trends and most #o#&lar #airin%s, b&t this can %et e.#ensive over time( The most im#ortant #oint is that the reader cannot add their comments or s&%%estions )or other readers( They sim#ly become a cons&mer o) someone else+s s&%%estions and not a contrib&tor(
The mobile web based a##lication will be a )ront*end web*inter)ace that allows &sers to loo'&#, modi)y, add and )avorite reci#es contained within the a##lication+s bac'end database( The intent is to #rovide an a##lication that
s&##lies drin' reci#es while also allowin% the &ser to add comments and s&%%estions )or com#lementary )oods with each reci#e( There are ty#ical bartender reci#es mobile a##lications in the mar'et, b&t the val&e add o) WND is to allow a &ser to c&stomi,e searches and even add their #ersonal reci#es(
7 Architect&re
7(0 - ?ntrod&ction Distrib&ted Web A##lication:
;lients will be thin web client, with all com#&tational lo%ic occ&rrin% server side There is no b&ilt*in ma.im&m n&mber o) clients allowed( The central server and the database server can be de#loyed on the same machine( The central server is also the a##lication server( ;lients are able to access a##lication server via e.ternal browser inter)ace !LTMD, MS, MK&ery"( ;lient inter)ace calls )&nctions o) a##lication, which then 4&eries database(
We will im#lement a 9*layer a##lication architect&re, with data access, b&siness and #resentation as the layers !as seen in )i%&re 7(7"( !< #re entation 'ayer E Landles all as#ects o) inter)acin% with the end*&ser( The ;lient Tier, which re#resents the s&##orted browsers )or the a##lication, will handle &ser in#&t, &ser control and the dis#lay o) data( To avoid malicio&s mani#&lation, b&siness lo%ic will remain a server*side3 only #resentation related lo%ic will be occ&rrin% client*side( "< B1 ine 'o-ic 'ayer * e.ec&tes b&siness lo%ic and dynamically %enerates web elements !LTMD", involved in the #resentation layer, based on that b&siness lo%ic( This tier allows hi%h*ris' lo%ic to occ&r o&tside o) a client environment( The a##lication also has the res#onsibility o) )ormattin% and e.ec&tin% data access lo%ic !tri%%ered by the ;lient Tier" to inter)ace with the database( 0< Data 7cce 'ayer E The data access layer handles data stora%e and access to the data( When the a##lication e.ec&tes b&siness lo%ic, 4&eries modi)yin% or accessin% data will hit the database( As shown in )i%&re 7(7, the Database and A##lication can r&n )rom the same central server machine( This architect&re )acilitates the )ollowin% bene)its: 0( Per)ormance and ;ost: As the database and a##lication r&n )rom a central server, two )&nctions can be )illed with the same hardware( Additionally, this eliminates the #otential )or #er)ormance slowdowns d&e to #hysically se#arated a##lication and database servers( 7( /le.ibility: As all clients are thin web clients, ma.im&m com#atibility client* side can be achieved( There are no #ro#rietary or con)lictin% inte%rations occ&rrin% to )acilitate anythin% other than web access(
9( Sec&rity: As the b&siness and data access lo%ic stay server*side, the ris' o) malicio&s mani#&lation o) that lo%ic is red&ced( This narrows the system+s sco#e o) v&lnerability to in$ection and server*side attac's( :( Modi)iability: As the system only s&##orts thin clients, the ris' o) cacheable chan%es a))ectin% the system are minimal( ;han%es to b&siness lo%ic and data access lo%ic can occ&r witho&t the ris' o) com#atibility loss( Dastly, chan%es to #resentation lo%ic can be easily modi)ied to s&##ort com#atibility chan%es in end*&ser devices( Compari on with Other 7rchitect1re The alternative )or o&r system wo&ld have been a )ormali,ed 9*tier architect&re( Lowever, this wo&ld have re4&ired additional hardware, inte%rations and e.tended set&# time( As this #ro$ect is on a short timeline, and access will be restricted on im#lementation, a 9*Dayer architect&re !still has 7 tiers" is the better o#tion( As the )&nctionality o) this im#lementation is sim#le in conce#t, #i#e*)ilter architect&re wo&ld be an overly com#licated im#lementation( The bene)it o) a #i#e* )ilter architect&re is best reali,ed in a #rocess*heavy a##lication with chained and events, threads and s&b*ro&tines( This a##lication does not have the com#le.ities, or de#th o) system to $&sti)y #i#e*)ilter architect&re(
7(7 - Data
The dia%ram below shows the home#a%e, alon% with screen shots o&tlinin% the lo%in #rocess( 5nce lo%%ed in, the &ser has the o#tion to view drin' reci#es that they have selected as their )avorites, search by 'eyword, browse by )ood #airin%, or s&%%est a new drin' reci#e and )ood #airin%(
The dia%ram below shows the #rocess )or searchin% by 'eyword( By sim#ly ty#in% in a drin' name, or the ty#e o) alcohol &sed in the drin', the &ser can 4&ic'ly #&ll &# a list o) drin's made with their 'eyword( /rom the res<s list, they can select an item to view the in%redients, directions on how to create the drin', and they can leave a comment on their o#inion o) the reci#e( /rom this screen they also have the o#tion to save the drin' to their )avorites list(
?n the ne.t dia%ram, the &ser is #resented with the o#tion to search )or a drin' by )ood #airin%( By clic'in% the dro# down men&, they can choose between bee), )ish, #or', or #o<ry to view a list o) s&%%ested #airin%s( As with the search by 'eyword o#tion, once the &ser has selected an item )rom the list, they can view the in%redients, directions on how to create the drin', and they can leave a comment on their o#inion o) the reci#e( /rom this screen they also have the o#tion to save the drin' to their )avorites list(
ue to errors that we ran into with the database on the cloud, the app has been tested and runs locally.
!hat functionalities have been tested with the app? (based on the "ser#s $uide) %unctionality testing within the application has been rigorously tested to ensure the end user e&periences what we have envisioned. !e have tested the search features including searching by 'eyword, food pairing, or drin' type. Testing also included user authentication, as well as the submission of new recipes, and navigation within the app.
!hich devices are used for testing the app? (laptops? smart phone?) Our app has been tested on both a laptop and smart phone. (n both cases, the functionality was the same.
(s there any )rd*party software (beside the standard+ ,hp-torm ( ., /A0,,, 1ed Hat 2loud) re3uired in the testing 4o, there is not any )rd party software besides the standard.
How is the app deployed (locally? cloud?) The app has been uploaded to the cloud, but because of running into issues
with the database on the cloud last wee', it is still pointed to the local database.
=(0
Database creation
?n order )or the system to wor' #ro#erly, the database mwa7 m&st be #resent( Within the database the )ollowin% tables m&st also be created and #o#&lated: ;ate%ory ;omments Drin' /avorites /ood Pairin% @sers
The table str&ct&res can be viewed below( The com#lete database creation scri#t mwa7(s4l can be )o&nd in this #ac'a%e( **
PR?MARJ H8J !BcommentsFidB", H8J B&serFidB !B&serFidB", H8J B)avoritesFidB !B)avoritesFidB", H8J B)oodFidB !B)oodFidB", H8J Bdrin'FidB !Bdrin'FidB" " 8NC?N8T?nnoDB D8/A@DT ;LARS8TT&t)=3
;R8AT8 TABD8 ?/ N5T 8S?STS B#airin%B ! Bdrin'FidB int!G" N5T N@DD, B)oodFidB int!G" N5T N@DD,
;R8AT8 TABD8 ?/ N5T 8S?STS B&sersB ! BidB int!G" N5T N@DD A@T5F?N;R8M8NT, B&sernameB varchar!0<" N5T N@DD, B&serF)nameB varchar!7<" D8/A@DT N@DD, B&serFlnameB varchar!7<" D8/A@DT N@DD, B&serFemailB varchar!9>" N5T N@DD, B#asswordB varchar!07" N5T N@DD, PR?MARJ H8J !BidB", @N?K@8 H8J B&serFlo%inB !B&sernameB,B&serFemailB" " 8NC?N8T?nnoDB D8/A@DT ;LARS8TT&t)= A@T5F?N;R8M8NTT9 3
Welcome to Wine N Dine< With all o) the )oodies and drin' desi%ners in today+s world, the intent o) o&r a##lication is to #rovide an a##lication that s&##lies drin' reci#es while also allowin% the &sers to add comments and s&%%estions )or com#limentary )oods with each reci#e( There are ty#ical bartender reci#es mobile a##lications in the mar'et, b&t the val&e add o) WND is to allow a &ser to c&stomi,e searches and even add their #ersonal reci#es as well( Table o) ;ontents Comments: ;omments are enabled once a &ser has created an acco&nt and s&ccess)&lly lo%%ed into Wine N Dine( Addin% a comment: 5nce yo& have lo%%ed into yo&r acco&nt, either search )or a )ood #airin% or select one )rom yo&r )avorites( ;lic' on the comments icon, and yo& will be #resented with a bo. to enter yo&r te.t( 5nce com#lete, clic's s&bmit( Favorites: /avorites are enabled once a &ser has created an acco&nt and s&ccess)&lly lo%%ed into Wine N Dine( Accessin% yo&r )avorites: Do% into yo&r acco&nt, and yo& will see an icon )or )avorites( ;lic' the icon, and yo& will see a list o) all drin's that yo& have selected as )avorites( Addin% a drin' to )avorites: 5nce yo& have lo%%ed into yo&r acco&nt, either search )or a )ood #airin% or select one )rom yo&r )avorites( ;lic' on the Add to /avorites icon, and the drin' will be added to yo&r )avorites list(
Logging in: ;reatin% an acco&nt: /rom the main home screen, yo& are #resented with )o&r o#tions( Jo& can search by )ood #airin%, search by 'eyword, lo%in to
yo&r acco&nt, or create an acco&nt( ;lic' on ;reate an Acco&nt, and enter in a &sername and #assword( ?) the &sername already e.ists, yo& will be as'ed to select another &sername( /or%ot #assword: ?) yo& )or%ot yo&r #assword, sim#ly clic' on the /or%ot Password lin', and yo&r will be #rom#ted to enter the email address that yo& created yo&r acco&nt with( A)ter s&bmittin% yo&r email address, yo&r #assword will be sent to yo& &sin% the email address yo& #rovided(
Searching: Search by 'eyword: /rom the home screen, yo& are #resented with two ways to search )or drin' reci#es( To search by 'eyword, clic' in the em#ty )ield titled Search by Heyword, and ty#e in what yo& are searchin% )or( /or e.am#le, vod'a or mar%arita( Search by #airin%: /rom the home screen, yo& are #resented with two ways to search )or drin' reci#es( To search by )ood #airin%, clic' on the dro# down men&, and select either bee), )ish, #or', or #o<ry( 5nce yo& have selected yo&r )ood #airin%, yo& will be #resented with an al#habetical list o) all the drin's that %o with that )ood #airin%(
Team Deader+s Assessment o) Cro&#: Scott Brewer My e.#erience wor'in% on this %ro&# #ro$ect has been a memorable one than's to my team members( ? )eel li'e we have all wor'ed to%ether really well, and whereas each o) &s have di))erent stren%ths and wea'nesses, each o) o&r s'ill sets have hi%hly com#limented each other( ? co&ldn+t ima%ine wor'in% with a better %ro&# o) individ&als who are hi%hly dedicated and committed to %ettin% the $ob done( ?t has been a #leas&re wor'in% with each o) them, and ? wish them all contin&ed s&ccess in both their colle%e and #ro)essional careers(
)3S50!" E )obile Web 7pp Development Seme ter #ro$ect E #eer ,val1ation
My Cro&#: Dro1p " Team Deader: Scott Brewer My Name: Daniel Primavera ? eval&ate other team members+ contrib&tion to the #ro$ect as )ollows: 5n scale o) 0> 0> is the hi%hest * Team member E7: Name FDaniel PrimaveraFFFFFFFFFFF FFFFF Score: F0>FFFFF Team member E9: Name FBlaine Smith FFFFFFFFFFFFFFFFFFFF Score: F0>FFFFF Team member E:: Name FTaylor RichardFFFFFFFFFFFFFFFFFFF Score: F0>FFFFF Team member E<: Name FAna Weaver FFFFFFFFFFFFFFFFFFFF Score:
F0>FFFFF Team member E1: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF Team member E6: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF Team member E=: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF Team member EG: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF Team member E0>: Name FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF Score: FFFFFFFF