! ! Applying(Solution( Strategy( Principles(in( Demandware(( Student'Guide! Solution!Strategy!Certification!©!Demandware,!Inc.! ! July!2015!Page!1! ! ! Table(of(Contents( Introduction!................................................................................................................................................!6 About!the!Course!..................................................................................................................................!6 Course!Objectives!.................................................................................................................................!6 Module!Objectives!...............................................................................................................................!7 Evaluation!Criteria!......................................................................................................................................!9 Classroom!Evaluation!...........................................................................................................................!9 Spec!Review!&!Launch!Review!.............................................................................................................!9 Business!Requirements!........................................................................................................................!9 Client!Capabilities!...............................................................................................................................!10 Module!1:!The!Role!of!the!Solution!Strategist!.........................................................................................!11 Learning!Objectives!............................................................................................................................!11 Lesson!1.1:!!Solution!Strategy!Defined!...............................................................................................!11 Lesson!1.2:!!Solution!Strategy!is!a!Client!Facing!Role!.........................................................................!11 Lesson!1.3:!!Solution!Strategy!as!a!Project!Guide!...............................................................................!11 Conclusion!..........................................................................................................................................!12 Module!2:!Demandware!Objects!..............................................................................................................!13 Learning!Objectives!............................................................................................................................!13 Overview!............................................................................................................................................!13 Lesson!2.1:!The!Object!.......................................................................................................................!13 Discussion:!!Object!Brainstorm!...........................................................................................................!14 Lesson!2.2:!Demandware!System!Objects!..........................................................................................!14 Lesson!2.3:!Object!and!Attribute!Best!Practices!.................................................................................!17 Knowledge!Check!...............................................................................................................................!19 Knowledge!Check!Answers!.................................................................................................................!20 Module!3:!Demandware!Architecture!......................................................................................................!21 Learning!Objectives!............................................................................................................................!21 Overview!............................................................................................................................................!21 Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!2! ! ! Lesson!3.1:!The!Cartridge!...................................................................................................................!21 Lesson!3.2:!Pipelines!...........................................................................................................................!23 Lesson!3.3:!Pipelets!............................................................................................................................!26 Lesson!3.4:!Internet!Store!Markup!Language!(ISML)!.........................................................................!26 Lesson!3.5:!Decorator!.........................................................................................................................!26 Lesson!3.6:!Resource!Bundle!..............................................................................................................!27 Knowledge!Check!...............................................................................................................................!28 Knowledge!Check!Answers!.................................................................................................................!29 Module!4:!Solution!Design!\!Client!Analysis!.............................................................................................!30 Learning!Objectives!............................................................................................................................!30 Overview!............................................................................................................................................!30 Lesson!4.1:!Current!Platform!..............................................................................................................!30 Lesson!4.2:!Architecture!and!Data!Model:!The!Client!Context!..........................................................!31 Exercise:!!Review!the!Product!Spreadsheet!Template!.......................................................................!33 Lesson!4.3:!Content!............................................................................................................................!33 Knowledge!Check!...............................................................................................................................!35 Knowledge!Check!Answers!.................................................................................................................!36 Module!5:!!Solution!Strategy!Documentation!Analysis!............................................................................!37 Learning!Objectives!............................................................................................................................!37 Overview!............................................................................................................................................!37 Lesson!5.1:!!The!Project!Plan!..............................................................................................................!37 Exercise:!!Identifying!project!plan!elements!......................................................................................!38 Lesson!5.2:!!Operating!on!Demandware!Checklist!.............................................................................!38 Exercise:!!Resolving!an!incomplete!Operating!on!Demandware!checklist!.........................................!38 Lesson!5.3:!!Architecture!Diagram!......................................................................................................!38 Exercise:!!Architecture!Diagram!data!flow!error!resolution!...............................................................!39 Exercise!Answer!..................................................................................................................................!40 Lesson!5.4:!!Data!Model!.....................................................................................................................!40 Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!3! ! ! Lesson!5.5:!!Content!Inventory!&!Control!..........................................................................................!41 Exercise:!!SiteGenesis!Wireframe!Review!..........................................................................................!42 Lesson!5.6:!!Integrations!.....................................................................................................................!42 Lesson!5.6:!!Functional!Specification!Document!................................................................................!43 Knowledge!Check!...............................................................................................................................!45 Knowledge!Check!Answers!.................................................................................................................!46 Module!6:!Identify!Demandware!Implementation!Best!Practices!...........................................................!47 Learning!Objectives!............................................................................................................................!47 Lesson!6.1:!General!Architecture!Best!Practices!................................................................................!47 Lesson!6.2:!Storefront!Best!Practices!.................................................................................................!49 Discussion:!!Customization!Sample!....................................................................................................!61 Other!Object!Quotas!..........................................................................................................................!62 Lesson!6.3:!Mobile!Best!Practices!......................................................................................................!64 Mobile!Approach!Tradeoffs!................................................................................................................!66 Lesson!6.4:!International!Best!Practices!.............................................................................................!66 Knowledge!Check!...............................................................................................................................!77 Knowledge!Check!Answers!.................................................................................................................!79 Module!7:!!Platform!Customization!.........................................................................................................!81 Learning!Objectives!............................................................................................................................!81 Lesson!7.1:!Common!Deviations!from!SiteGenesis!............................................................................!81 Discussion:!Common!Deviations!from!SiteGenesis!............................................................................!81 Module!8:!Solution!Strategist!Launch!Readiness!Analysis!.......................................................................!83 Learning!Objectives!............................................................................................................................!83 Lesson!8.1:!Requirements!Applied!Workshop!....................................................................................!83 Overview!............................................................................................................................................!83 Business!Requirements!......................................................................................................................!83 Header!................................................................................................................................................!86 Footer!.................................................................................................................................................!87 Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!4! ! ! Global!Navigation!...............................................................................................................................!87 Homepage!..........................................................................................................................................!88 Product!Listing!Page!...........................................................................................................................!89 Product!Tile!........................................................................................................................................!90 Quickview!...........................................................................................................................................!90 Product!Detail!Page!............................................................................................................................!91 Search!Results!....................................................................................................................................!92 Cart!.....................................................................................................................................................!93 Checkout!\!Billing!................................................................................................................................!94 Checkout!\!Order!Confirmation!..........................................................................................................!95 My!Account!\!Landing!.........................................................................................................................!96 My!Account!\!Addresses!.....................................................................................................................!97 My!Account!–!Create!Account!............................................................................................................!98 Knowledge!Check!Answers!.................................................................................................................!99 Lesson!8.2:!Business!Manager!Launch!Review!.................................................................................!101 Knowledge!Check!.............................................................................................................................!121 Knowledge!Check!Answers!...............................................................................................................!123 Congratulations!......................................................................................................................................!125 Appendix!A!.............................................................................................................................................!126 Spec!Review!......................................................................................................................................!126 Launch!Review!..................................................................................................................................!138 Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!5! ! ! Introduction( About(the(Course( Audience! Partner!Strategists!and!Demandware!Solution!Strategists.! Duration! 2!Days! To!successfully!meet!the!objectives!of!this!course,!we!suggest!that! Partners!and!Strategists:! Prerequisites! System( Requirements( Course(Materials! ! Have!taken!Managing!The!Storefront!(MTS)!training.! ! Have!taken!Demandware!Administration!eLearning!training.! ! Have!taken!Managing!URLs!eLearning!training.! ! Have!taken!Platform!Overview!eLearning!training.! ! Have!taken!Managing!Content!eLearning!training.! ! Have!seen!the!following!Merchandising!Coffee!Talks!available!on! Xchange:! ! Customizing!Shopping!Experiences!through!Geolocation! ! SEO!Demystified:!Tips,!Tricks,!and!Best!Practices! ! Product!Detail!Page!Optimization!Best!Practices! ! Checkout!Optimization!Best!Practices! Computer!and!access!to!Business!Manager! ! Applying!Solution!Strategy!Principles!in!Demandware!Student!Guide! ! SiteGenesis!Wireframes! ! Data!Model!Template! ! Product!Spreadsheet!Template! ! FSD!Template! Course(Objectives Welcome!to!the!class,!Applying!Solution!Strategy!Principles!in!Demandware.!After!completing!this! course,!you!will!be!able!to:! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!6! ! ! ! Explain!the!role!and!value!of!the!Solution!Strategist! ! Define!and!describe!the!fundamental!building!blocks!of!the!Demandware!Commerce!Platform!and! their!best!practice!use! ! Analyze!a!client’s!capabilities!against!the!designed!solution!to!determine!if!the!solution!can!be!used! by!the!client!now!and!in!the!future! ! Identify!the!documentation!created!by!Solution!Strategists! ! Analyze!project!documentation!for!completeness!and!comprehensiveness! ! Determine!if!the!documented!solution!adheres!to!Demandware!implementation!best!practices!and! can!scale!globally! ! Identify!if!the!solution!is!ready!for!launch! Module(Objectives The!following!table!describes!the!objectives!for!each!module:! Module! Objectives! The!Role!of!the!Solution!Strategist! ! Define!the!role!of!the!Solution!Strategist! ! Define!the!value!of!the!Solution!Strategist!to!the!client! and!the!project!team! Fundamental!Components!of!the! Demandware!Environment!and! their!Extension! ! Define!a!Demandware!Object! ! Explain!the!system!objects!used!by!SiteGenesis! ! Demonstrate!the!best!practice!use!of!system!objects!and! when!it!is!appropriate!to!extend!them! Demandware!Architecture! ! Describe!the!core!development!building!blocks!that! make!up!the!Demandware!system! Solution!Strategy!Client!Analysis! ! Break!down!the!client’s!capabilities!and!reconcile!them! against!the!documented!solution! Solution!Strategy!Documentation! Analysis! ! Describe!the!document!types!used!in!a!project!and!their! use! ! Appraise!project!documentation!for!completeness!! Solution!Strategy!Implementation! ! Approach!Analysis! Summarize!Demandware!Implementation!best!practices! for:! ! General!architecture! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!7! ! ! ! General!storefront!features! ! Internationalization! ! Mobile/Responsive! Platform!Customization! ! Identify!deviations!from!SiteGenesis!and!advise!on!their! feasibility!within!the!platform’s!technology!constraints! Solution!Strategy!Launch! Readiness!Analysis! ! Appraise!the!storefront!for!conformity!to!the! documented!requirements!(requirements!applied! workshop)! ! Perform!a!final!review!of!Business!Manager!to!ensure! launch!critical!setup!has!been!completed! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!8! ! ! Evaluation(Criteria( Classroom(Evaluation( At!the!conclusion!of!the!classroom!training!each!Student!will!take!a!timed!multiple!choice!exam!to! demonstrate!consumption!of!the!material!presented!during!the!class.!!Each!Student!will!be!required!to! take!the!exam!through!the!Demandware!Learning!Management!System!and!will!need!to!answer!80%! of!the!questions!correctly!to!pass.!!Each!Student!may!attempt!to!take!the!exam!two!times.! Spec(Review(&(Launch(Review( As!part!of!the!Site!Readiness!Assessment,!the!Strategist!will!write!project!documentation!used!for!the! design!and!development!of!the!solution.!!The!Demandware!Solution!Strategist!assigned!to!the!SRA!will! complete!the!Spec!Review!and!Launch!Review!for!items!assigned!to!the!Solution!Strategist!(see! Appendix!A).!!There!will!be!an!initial!and!a!final!review!of!the!documentation.!!The!score!needed!to! pass!will!be!based!on!the!final!evaluation!of!the!Spec!Review!and!Launch!Review.!!This!assessment!may! be!completed!against!a!SRA!the!Student!completed!in!the!last!12!months!since!the!start!of!the!class!or! on!a!future!project.! ! Some!items!evaluated!by!the!Demandware!Solution!Strategist!may!not!be!written!by!the!student.!! These!elements!are!still!assessed!against!the!student!as!part!of!the!Strategist!role!is!to!influence!the! overall!project!not!just!the!components!authored!by!the!Strategist.! ! To!pass,!90%!of!the!items!must!be!marked!“Y”!in!the!final!review.!!All!of!the!items!deemed!launch! critical!must!me!marked!“Y”!in!the!final!review.! ! Business(Requirements( The!student!must!supply!business!requirements!for!the!project.!!The!Demandware!Solution!Strategist! will!use!the!business!requirements!to!determine!if!the!designed!solution!meets!those!requirements.! ! We!understand!that!requirements!are!a!point!in!time!representation!of!the!client!desired!functionality.!! The!Student!may!submit!additional!documentation!to!indicate!requirements!that!have!been!added!or! removed.! ! The!Demandware!Solution!Strategist!will!render!a!Pass/Fail!grading!on!this!section!at!their!discretion! based!on!the!documentation!supplied.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!9! ! ! Client(Capabilities( The!student!will!supply!documentation!outlining!the!client!capabilities!so!the!Demandware!Solution! Strategist!can!assess!the!end!usability!of!the!proposed!solution!for!the!client.! ! This!demonstrates!that!the!Student!has!assessed!the!client!and!has!appropriately!used!that! information!to!inform!the!solution!design.! ! The!Demandware!Solution!Strategist!will!render!a!Pass/Fail!grading!on!this!section!at!their!discretion! based!on!the!documentation!supplied.! ! Legend( Icon( Use( Business!Manager!Reference! ( Exercise!/!Activity! ( Discussion! ( Knowledge!Check! ( ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!10! ! ! Module(1:(The(Role(of(the(Solution(Strategist( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! • Describe!the!role!of!the!Solution!Strategist! • Describe!the!value!of!the!Solution!Strategist!to!the!client!and!to!the!project!team! Lesson(1.1:((Solution(Strategy(Defined( This!course!is!intended!to!educate!you!in!such!a!way!that!you!end!up!approaching!projects!like!a! Demandware!Solution!Strategist!but!before!we!can!successfully!do!that!you!must!understand!what! Solution!Strategy!is.!!Further,!you!must!also!understand!the!value!a!Solution!Strategist!delivers!to!both! the!client!and!the!project!team.! ! A!Solution!Strategist!is!a!key!member!of!the!implementation!team!and!works!on!the!project!from! inception!through!launch.!!Solution!Strategists!have!responsibility!for:! • • • • • • Requirements!gathering!and!definition! Fully!understanding!the!client,!their!business!and!their!capabilities! Authoring!project!documentation!like!Functional!Specifications! Providing!subject!matter!expertise!in!end\to\end!functionality!definition,!design,!deployment! and!operation!of!the!webstore! Driving!best!practice!adoption!of!the!Demandware!Ecommerce!platform!throughout!the!entire! customer!lifecycle! Ensuring!the!solution!is!usable!by!the!client!and!scales!well!for!the!future! Lesson(1.2:((Solution(Strategy(is(a(Client(Facing(Role( Solution!Strategists!work!directly!with!clients!through!the!implementation.!!Strategists!will!interface! with!the!client!to!gather!project!requirements,!review!and!refine!documentation,!demonstrate! storefront!functionality,!answer!questions,!and!provide!guidance!and!insight.!!This!runs!throughout!the! entire!project!lifecycle!from!kickoff!through!deployment.!!This!deep!involvement!in!the!project!and! understanding!of!the!Demandware!environment!makes!the!Strategist!a!subject!matter!expert!on!the! client’s!solution!and!how!it!meshes!with!the!Demandware!platform.! ! Lesson(1.3:((Solution(Strategy(as(a(project(guide( In!addition!to!the!client!facing!aspects!of!the!role,!the!Solution!Strategist!also!has!responsibility!to!the! project!team.!!The!Strategist!is!responsible!for!reviewing!the!work!of!the!other!team!members!to!make! sure!it!complies!with!the!documented!requirements,!functional!specification,!and!best!practice.!!As!a! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!11! ! ! result!of!this!oversight,!deviations!can!be!caught!early!on!and!resolved!before!ever!becoming!a!client! facing!problem.! ! Conclusion( Now!that!you!understand!more!about!what!a!Solution!Strategist!does!and!the!value!to!the!client!and! the!project!team,!we!will!switch!our!focus!to!the!Demandware!platform.!!Understanding!the!platform! is!paramount!to!being!a!valuable!Solution!Strategist.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!12! ! ! Module(2:(Demandware(Objects( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! • Define!an!object! • Describe!the!system!objects!used!by!SiteGenesis! • Demonstrate!the!best!practice!use!of!system!objects!and!when!it!is!appropriate!to!extend! them! Overview( Demandware!is!an!object!oriented!system!therefore!it!is!important!to!understand!some!basic! principles!of!object!oriented!systems.!!Full!courses!exist!on!object!oriented!systems,!design,!and! development.!!This!module!is!not!a!replacement!for!those!comprehensive!courses.!!This!module!will! only!introduce!high!level!concepts!important!for!a!Strategist!to!understand!to!be!successful!with!the! platform.! Lesson(2.1:(The(Object( An!object!is!a!self\contained!entity!that!contains!data.!!A!single!object!is!organized!in!such!a!way!that! the!data!describes!the!object.!!For!example!a!car!object!may!look!like!this:! Car! Name! Exterior!Color! Interior!Color! Horsepower! Torque! VIN! Transmission! The!car!object!would!only!contain!data!that!describes!the!car.!!It!would!not!contain!data!that!describes! something!else,!like!a!dog!for!example!(dog!data!would!be!housed!in!a!dog!attribute).! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!13! ! ! The!data,!like!“Name”!in!this!example,!is!housed!in!fields.!!These!fields!are!commonly!called!attributes.!! Attributes!by!definition!are!a!characteristic!or!are!used!to!describe!something!else.!!In!this!case!if!you! told!a!friend!that!you!were!going!to!describe!something!and!then!said:!name,!exterior!color,!interior! color,!horsepower,!torque,!VIN,!and!transmission!they!would!likely!say!that!you!were!talking!about!a! car!(or!at!minimum,!a!motor!vehicle).! ! ! Discussion:((Object(Brainstorm( Discuss!other!object!scenarios!from!real!life.!!Come!up!with!an!object!and!its!attributes.! ! Lesson(2.2:(Demandware(System(Objects( Demandware!SiteGenesis!leverages!System!Objects!that!describe!parts!of!the!site.!!SiteGenesis!should! be!the!starting!point!for!an!implementation!because!SiteGenesis!has!been!developed!to!interact!with! the!system!objects!eliminating!the!need!for!custom!code.!!The!more!system!objects!are!leveraged!the! more!a!site!will!remain!on!the!upgrade!path!without!needing!intervention.!!To!make!sure!the! implementation!is!leveraging!the!system!objects!you!first!must!recognize!them.! ! ! In!Business!Manager:!!Administration(>(Site(Development(>(System(Object(Definitions! At!the!time!of!this!writing!there!are!41!system!objects.! Object!ID! Object!Purpose! Basket! This!object!represents!a!shopping!cart.! BonusDiscountLineItem! This!object!is!used!along!with!BonusChoiceDiscount!to!represent!a! choice!of!bonus!products!discount.! Campaign! A!campaign!is!a!set!of!experiences!(or!site!configurations)!which!may! be!deployed!as!a!single!unit!for!a!given!time!frame.! Catalog! This!object!represents!a!Demandware!catalog.! Category! This!object!represents!a!category!in!a!product!catalog!and!houses! attributes!that!contain!category!data.!!The!category!object!is!often! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!14! ! ! used!(and!customized)!to!control!how!a!category!behaves!on!the! storefront!to!support!the!client’s!design!needs.! CategoryAssignment! This!object!represents!a!category!assignment!in!the!Demandware! framework.! Content! Represents!a!content!asset.!!The!content!object!houses!attributes! that!contain!content!data.!!In!the!case!of!an!HTML!attribute!type!like! ‘body’,!the!attribute!data!is!the!content!itself.!!The!content!object!is! often!customized!to!support!the!client’s!content!needs.! Coupon! This!object!represents!a!coupon!in!the!Demandware!framework.! CouponLineItem! This!object!is!sued!to!store!redeemed!coupons!in!the!basket.! CustomerActiveData! This!object!represents!the!active!data!for!a!Customer!in!the! Demandware!framework.! CustomerAddress! A!customer’s!address.! CustomerGroup! Customer!groups!provide!a!means!to!segment!customers!by!various! criteria.! CustomerPaymentInstrument! Represents!any!payment!instrument!(credit!card,!debit!card,!etc.)! stored!in!the!customer’s!profile.! Folder! This!object!contains!attributes!that!house!content!library!folder! attributes.!!The!content!library!folder!can!be!used!to!organize!content! and!to!also!drive!specific!content!display!on!the!storefront.!!It!is! common!to!see!content!rich!sites!leverage!library!folder!object! customization!to!drive!specific!content!display.! GiftCertificate! Represents!a!gift!certificate!that!can!be!used!to!purchase!products.! GiftCertificateLineItem! Represents!a!gift!certificate!line!item!in!the!cart.! Library! Represents!a!collection!of!content!assets!and!a!folder!hierarchy! organizing!these!content!assets.! Order! Represents!an!order.!!This!object!contains!attributes!that!house!order! data.!!! OrderAddress! This!object!contains!attributes!that!house!billing!address!and!shipping! address!data.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!15! ! ! OderPaymentInstrument! This!object!contains!attributes!that!house!payment!method!data.! OrganizationPreferences! This!is!a!container!for!custom!global!preferences.! PaymentCard! Represents!payment!cards!and!provides!methods!to!access!the! payment!card!attributes!and!status.! PaymentMethod! The!PaymentMethod!class!represents!a!logical!type!of!payment!a! customer!can!make!in!the!storefront.!!(credit!card,!gift!card,!gift! certificate,!paypal,!bill!me!later,!etc.).! PaymentTransaction! Represents!a!payment!transaction.! PriceAdjustment! Represents!an!adjustment!to!the!price!of!an!order.! PriceBook! Represents!a!price!book.! Product! This!object!contains!attributes!that!house!product!data.!!Some! product!data!is!exposed!on!the!storefront.!!The!product!object!is! often!customized!with!client!specific!attributes!to!support!the!data! model.! ProductActiveData! Represents!the!active!data!for!a!Product!in!the!Demandware! framework.! ProductInventoryList! The!ProductInventoryList!provides!access!to!ID,!description!and! defaultInStockFlag!of!the!list.! ProductInventoryRecord! The!ProductInventoryRecord!holds!information!about!a!Product's! inventory,!and!availability.! ProductLineItem! Represents!a!specific!product!line!item.! ProductListRegistrant! A!ProductListRegistrant!is!typically!associated!with!an!event!related! product!list!such!as!a!gift!registry.! Profile! Represents!a!customer!profile.! Promotion! Represents!a!promotion!in!the!Demandware!framework.! Recommendation! Represents!a!recommendation!in!the!Demandware!framework.! Shipment! Represents!an!order!shipment.! ShippingMethod! Represents!how!the!shipment!will!be!shipped.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!16! ! ! SitePreferences! SitePreferences!is!a!container!for!custom!site\level!attributes.! SlotConfiguration! ! SourceCodeGroup! A!source!code!group!defines!a!collection!of!source!codes.! Store! Represents!a!store!in!the!Demandware!framework.!!A!store!record!is! leveraged!by!the!store!locator.! ! ! In!Business!Manager:!!Administration(>(Site(Development(>(System(Object(Definitions! Open!the!Customer!Profile!object!and!click!on!the!Attribute!Definitions!tab.!!These!are!the!attributes! that!describe!the!Customer!Profile.!!The!data!housed!in!these!attributes!will!describe!a!specific! customer.!!All!of!the!system!objects!and!attributes!operate!in!this!same!way.!!For!example:! ! Customer! Data!Sample! First!Name! Samuel! Last!Name! Adams! Email! sam@revolutionist.com! Home!Phone! 123\456\7890! Birthday! 09/27/1722! Customer!Number! 000001! Gender! 1! ! ! Lesson(2.3:(Object(and(Attribute(Best(Practices( • • Use!system!objects!over!custom!objects!whenever!possible! o To!maintain!as!close!to!the!upgrade!path!as!possible!and!to!eliminate!unnecessary! customization,!always!leverage!a!system!object!before!looking!at!a!custom!object.! Use!system!attributes!over!custom!attributes!whenever!possible! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!17! ! ! ! o Use!of!system!attributes!is!preferred!to!minimize!customization.!!It!is!ok!to!create!a! custom!attribute!if!necessary!but!custom!attribution!should!only!be!a!viable!solution!if!a! system!attribute!does!not!exist!to!serve!the!same!purpose.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!18! ! ! ! Knowledge(Check( 1. The!data!housed!within!an!object:! a. Is!always!presented!on!the!storefront! b. Describes!the!attribute! c. Describes!the!object! ! 2. Customization!to!system!objects!and!attributes!is!appropriate!when:! a. System!attributes!do!not!exist!to!serve!the!need!of!the!data!model! a. System!objects!do!not!exist!to!serve!the!need!of!the!data!model! b. System!attributes!and!objects!do!not!exist!to!serve!the!need!of!the!data!model! c. It!feels!like!system!attributes!and!objects!do!not!exist!to!serve!the!need!of!the!data!model! ! ( Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!19! ! ! Knowledge(Check(Answers( 1. The!data!housed!within!an!object:! a. Is!always!presented!on!the!storefront! b. Describes!the!attribute! c. Describes!the!object! Answer:(c( ! 2. Customization!to!system!objects!and!attributes!is!appropriate!when:! a. System!attributes!do!not!exist!to!serve!the!need!of!the!data!model! b. System!objects!do!not!exist!to!serve!the!need!of!the!data!model! c. System!attributes!and!objects!do!not!exist!to!serve!the!need!of!the!data!model! d. It!feels!like!system!attributes!and!objects!do!not!exist!to!serve!the!need!of!the!data!model! Answer:(c( ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!20! ! ! Module(3:(Demandware(Architecture( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! • Define!a!cartridge!and!its!use!in!the!Demandware!framework! • Define!a!pipeline!and!its!use!in!the!Demandware!framework! • Define!a!pipelet!and!its!use!in!the!Demandware!framework! • Define!a!ISML!template!and!its!use!in!the!Demandware!framework! • Define!a!decorator!and!its!use!in!the!Demandware!framework! • Define!a!resource!bundle!and!its!use!in!the!Demandware!framework! Overview( Developers!leverage!the!Demandware!framework!to!develop!client!sites.!!Developers!do!this!through!a! programming!interface!called!Eclipse.!!Developers!download!an!add\in!to!Eclipse!that!gives!them! access!to!the!Demandware!platform.!!We!call!this!UX!Studio.!!In!this!module!we!will!examine!the!core! building!blocks!developers!use!to!build!client!sites.! ! As!effective!Solution!Strategists,!we!must!be!versed!in!development!terminology!and!understand!the! elements!so!we!can!relate!to!broader!project!conversations.!!As!you!go!through!this!section!you!will! want!to!be!able!to!define!and!understand!the!content!but!as!a!Strategist!you!are!not!expected!to!be! able!to!code!in!the!Eclipse!environment!like!a!developer.! Lesson(3.1:(The(Cartridge( A!cartridge!is!a!directory!structure!that!is!used!as!a!flexible!deployment!mechanism!for!customized! functionality.!!A!cartridge!can!contain!many!different!types!of!files:!static!files!such!as!CSS,!JavaScript,! and!images,!as!well!as!WSDL!files.!!There!are!also!folders!for!Demandware!specific!files:!pipelines,! scripts,!templates!and!form!definitions.! ! A!cartridge!is!fully!contained!in!one!directory.!!Every!cartridge!has!specific!sub\directories!where! certain!file\types!must!be!stored.!!For!instance,!all!Demandware!script!files!must!be!stored!in!a!scripts! folder:! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!21! ! ! ! All!cartridges!leveraged!by!the!store!need!to!be!part!of!the!cartridge!path!in!Business!Manager.!!It!is! possible!that!some!cartridges!will!exist!in!UX!Studio!but!not!be!referenced!in!the!cartridge!path.!!These! cartridges!may!be!used!by!a!developer!for!future!site!functionality!or!as!reference!materials!but!not!be! exposed!to!the!site.! ! ! Business!Manager!Path:!Administration(>(Sites(>(Manage(Sites(>([select(the(site(you(want(to(view](>( Settings(Tab! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!22! ! ! When!a!call!is!made!to!a!file,!the!Demandware!server!will!look!for!the!file!starting!with!the!first! cartridge!listed!in!the!cartridge!path.!!For!instance,!if!a!call!is!made!to!an!ISML!file!called!product.isml! and!that!file!is!located!in!two!cartridges!that!are!both!in!the!cartridge!path,!the!Demandware!server! will!use!the!first!one!it!finds.!!If!the!template!you!intended!to!render!is!in!the!second!cartridge!it!will! not!be!displayed!on!the!storefront!and!you!will!not!get!the!desired!result.!!This!is!important!when! naming!templates!and!when!thinking!about!the!order!in!which!the!directories!will!be!searched!for!a! matching!file.! ! Link!Technology!partners!create!cartridges!of!self\contained!functionality!that!can!be!installed!for!a! client!site!to!leverage.!!The!packaging!of!the!cartridge!allows!simple!and!bundled!functionality! integration.! Lesson(3.2:(Pipelines( A!pipeline!is!a!logical!model!of!a!particular!business!process,!similar!to!a!flowchart.!Demandware!UX! Studio!provides!a!visual!representation!of!the!process!within!the!Eclipse!IDE.!!Below!is!the!Product\ Show!pipeline!that!renders!the!product!detail!page!on!the!SiteGenesis!site.!!This!pipeline!is!invoked! when!a!user!clicks!on!a!product!tile!or!a!link!to!a!product!page.!!The!system!goes!to!the!start!node,!in! this!case!“Show”!and!runs!through!the!pipeline!to!render!the!product.isml!page!on!the!storefront!for! the!Product!ID!passed!into!it:! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!23! ! ! ! ! Pipelines!are!stored!in!XML!files!in!the!file!system,!both!locally!on!your!PC!and!on!the!server.!Pipelines! are!defined!and!stored!within!the!context!of!a!cartridge.! When!the!storefront!application!attempts!to!reference!a!pipeline!in!a!cartridge,!it!searches!for!the! pipeline!in!the!cartridge's!path!and!uses!the!first!one!it!finds.!In!other!words,!when!a!pipeline!with!the! same!name!exists!on!two!cartridges,!the!first!one!found!in!the!path!is!used.!Therefore,!it!is!best!to!use! unique!pipeline!names!to!ensure!that!the!framework!locates!the!correct!pipeline.! ! Pipelines!start!with!a!Start!Node!and!ultimately!end!with!an!Interaction!Node.!!We!will!use!a!simple! pipeline!as!an!example.!!We!will!call!this!the!Hello!pipeline.!!The!below!image!shows!the!Hello!pipeline! –!a!simple!depiction!of!a!simple!pipeline!that!invokes!a!page!to!the!end!user!saying!“Hello!World”.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!24! ! ! ! The!interaction!node!connects!to!an!ISML!template!(covered!later!in!this!module)!to!display!a! particular!page!to!the!user.!!In!this!case,!a!page!with!the!message!“Hello!World”.! ! Pipelines!are!called!through!the!Start!Node.!!Calling!a!pipeline!via!a!HTTP!request!requires!the!pipeline! name!and!start!node!at!the!end!of!the!storefront!URL:! http://instance.realm.client.demandware.net/on/ demandware.store/Sites-YourSite-Site/default! ! ! You!can!also!pass!parameters!via!HTTP!requests!using!the!following!syntax:! ! In!this!example!the!pipeline!would!be!called!through!the!browser!by!appending!/Hello\Start!to!the! storefront!URL:!!! http://instance.realm.client.demandware.net/on/ demandware.store/Sites-YourSite-Site/default/Hello-Start! ! Pipelines!can!have!one!of!two!possible!call!modes:!!Public!or!Private.! • Public!pipelines!can!be!called!by!the!browser!or!another!pipeline.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!25! ! ! • o In!the!URL!Rules!section!of!Business!Manager!Pipeline!Aliasing!is!available!to!deal!with! these!publically!accessible!pipelines!and!give!them!a!SEO!optimized!URL.! Private!pipelines!can!only!be!called!by!another!pipeline.! ! Pipelines!can!have!one!of!two!possible!connection!requirements:!!secure!or!insecure.! • • Secure!pipelines!must!be!invoked!over!HTTPS! Insecure!pipelines!can!be!invoked!over!HTTP!or!HTTPS! ! Lesson(3.3:(Pipelets( The!Demandware!API!is!accessible!through!pre\defined!scripts!called!pipelets.!!A!pipelet!executes!an! individual!business!function!within!a!Demandware!pipeline.!!Pipelets!are!pre\coded!pieces!of! functionality!provided!by!Demandware!but!you!can!also!write!your!own!scripts!that!leverage!the! Demandware!API!if!the!provided!pre\defined!pipelets!are!insufficient!for!your!business!function.! ! Lesson(3.4:(Internet(Store(Markup(Language((ISML)( ISML!templates!are!files!with!an!extension!of!.isml!which!define!how!data,!tags!and!page!markup!are! transformed!into!HTML,!sent!to!the!browser!for!rendering!to!the!customer!(leveraging!CSS!for!styling).!! ISML!leverages!special!tags!to!invoke!special!Demandware!specific!functionality!within!the!template.!! For!example,!the!<isscript>!tag!allows!for!the!embedding!of!a!Demandware!script!directly!in!the! ISML!template.!!The!<isscript>!tag!is!not!normally!an!available!tag!in!regular!HTML!markup.! ! ISML!templates!that!leverage!Demandware!scripting!to!render!dynamic!information!have!the!benefit! of!reuse.!!The!template!will!be!leveraged!for!a!given!call!but!the!information!provided!to!that!customer! will!be!unique!based!on!the!data!returned!to!the!page!from!the!API.!!If!you!think!about!a!product! listing!page!that!shows!a!grid!of!products,!the!page!itself!is!always!the!same!but!the!product!tiles!will! be!different!based!on!the!category!the!customer!is!on,!the!available!products!at!the!time!the!customer! is!browsing,!etc.!!In!this!example,!the!same!ISML!template!is!being!called!but!the!API!is!returning! different!data!making!the!New!Arrivals!page!different!than!the!Jackets!page.! Lesson(3.5:(Decorator( Within!an!ISML!template!the!<isdecorate>!tag!allows!you!to!include!another!ISML!template!to! surround!content.!!This!further!extends!the!template!functionality.!!The!decorator!contains!HTML,!CSS,! and!overall!design!of!a!page.!!This!decorator!is!itself!a!template!and!therefore!is!intended!to!be!reused.!! Within!the!decorator!template!there!is!a!section!denoted!by!a!<isreplace>!tag!that!is!a! placeholder!for!the!content!to!be!wrapped!by!the!decorator.!!In!the!image!below!the!header!and! global!navigation!is!wrapping!the!product!detail!page.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!26! ! ! ! ( Lesson(3.6:(Resource(Bundle( In!storefront!code!you!want!to!avoid!hard\coding!text!strings!that!become!visible!to!the!user.!!Titles,! labels,!messages,!button!and!field!names!should!all!be!externalized!by!using!resource!bundles!(a.k.a.! properties!files.).!!Also,!if!you!do!not!want!to!duplicate!ISML!templates!in!order!to!create!locale\specific! templates,!you!can!use!resource!bundles!to!keep!your!template!generic!and!reusable.! A!resource!bundle!is!a!file!with!a!.properties!extension!that!contains!the!hardcoded!strings!to!be!used! in!ISML!templates.!!In!SiteGenesis!bundles!are!loosely!named!by!the!functional!area!where!the!strings! are!used,!but!you!can!use!any!file!name!and!organization!you!want.! It!is!important!to!note!that!clients!will!only!have!access!to!the!resource!bundles!if!they!have!access!to! and!understand!how!to!use!UX!Studio.!!As!a!result,!it!is!important!to!consider!if!any!strings!in!the! resource!bundles!need!to!be!changed!to!support!the!client!messaging!requirements.!!If!so,!you!will! want!to!make!these!changes!in!the!resource!bundles!prior!to!launch.! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!27! ! ! ! Knowledge(Check( 1. What!is!the!purpose!of!a!cartridge:! a. Deploy!code!to!the!storefront! b. Provide!a!contained!directory!structure!for!custom!code! c. Access!the!Demandware!API! d. Format!the!page!for!the!browser! 2. What!is!the!purpose!of!a!pipeline:! a. Define!the!cartridges!used!by!the!storefront! b. Orchestrate!a!business!process!flow! c. Access!the!Demandware!API! d. Serve!as!a!reusable!wrapper! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! ! July!2015!Page!28! ! ! ( Knowledge(Check(Answers( 1. What!is!the!purpose!of!a!cartridge:! a. Deploy!code!to!the!storefront! b. Provide!a!contained!directory!structure!for!custom!code! c. Access!the!Demandware!API! d. Format!the!page!for!the!browser! Answer:(b( ! 2. What!is!the!purpose!of!a!pipeline:! a. Define!the!cartridges!used!by!the!storefront! b. Orchestrate!a!business!process!flow! c. Access!the!Demandware!API! d. Serve!as!a!reusable!wrapper! Answer:(b( ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!29! ! ! Module(4:(Solution(Design(X(Client(Analysis( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! ! Draw!the!connection!between!the!client!and!the!solution!design!process! ! Influence!the!discovery!process!to!ensure!usability!of!the!solution! Overview( At!the!end!of!an!implementation,!the!developed!and!tested!solution!will!be!handed!off!to!the!client! who!will!use!that!solution!day!in!and!day!out!to!operate!their!digital!commerce!channels.!!Each!client! will!be!unique.!!They!will!have!differences!in:! • • • • • • • Team!size! Team!skills! Preferences! Ability!to!scale! Knowledge!of!the!platform! Size!and!complexity!of!product!assortment! Size!and!complexity!of!site!content! ! Due!to!these!differences,!it!is!important!that!a!Strategist!fully!understand!the!client!and!these!nuances! to!make!sure!that!the!solution,!as!it!is!being!designed,!will!fit!will!with!the!client!who!will!need!to!use!it! at!the!end.!!A!solution!that!is!not!ultimately!usable!by!the!client!is!a!failed!one.! ! The!benefits!of!performing!a!client!analysis!during!the!discovery!phase!are!many!and!include:! • • • • • • • A!better!understanding!of!who!makes!up!the!team!(directly!and!indirectly)! A!understanding!of!team!members!skills!and!abilities! A!understanding!of!how!the!client!plans!to!compose!their!team!to!support!the!new!solution! The!ability!to!influence!the!design!before!it!has!been!created!to!align!with!the!client! A!effective!and!usable!solution!that!meets!capabilities!and!expectations! Increase!in!speed!to!market! Increase!in!client!satisfaction! Lesson(4.1:(Current(Platform( Most!times!teams!are!composed!based!on!the!current!business!situation.!!Depending!on!the!current! situation,!including!the!platform,!the!client!may!or!may!not!be!equally!well!positioned!for!life!on!the! Demandware!platform.!!You!will!want!to!take!note!of!the!current!platform,!skill!requirements,!and! business!processes!to!determine!a!fit!to!the!new!platform.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!30! ! ! ! Alternative!Platform!Models! • • Full!Service:!!In!this!platform!model!clients!tend!to!have!very!light!in\house!teams!because!they! rely!on!their!platform!provider!for!most!business!needs.!!This!may!include!product!setup,! content!setup,!campaign!management,!and!other!business!processes.! Licensed:!!In!this!platform!model!clients!are!used!to!working!internally!on!licensed!platform! software!running!on!owned!hardware.!!In!this!scenario!clients!are!accustomed!to!working! directly!with!their!internal!technology!partners!to!implement!and!enhance!their!existing!site.! Lesson(4.2:(Architecture(and(Data(Model:(The(Client(Context( Data!can!be!one!of!the!most!challenging!components!of!integration!and!it!can!vary!widely!from!one! client!to!the!next.! Scenario(A:((Full(PIM(system( In!this!scenario!the!client!has!a!fully!functional!Product!Information!Management!system.!!This!system! has!been!planned!in!the!site!architecture!and!all!product!information!will!be!entered!into!the!PIM! system!(the!system!of!record)!and!it!will!then!flow!into!Demandware.! ! You!will!want!to!confirm:! • • The!data!is!consistent! o While!all!the!data!will!flow!into!Demandware!that!does!not!mean!it!is!consistent.!!For! example,!will!all!size!small!items!have!an!attribute!of!“S”?!!If!not,!how!will!the!client! manage!inconsistencies?!!Will!source!systems!be!cleaned!up!or!will!the!client!need!to! actively!manage!this!in!Demandware?! The!PIM!system!can!be!easily!extended! o Depending!on!the!client’s!system,!it!is!possible!that!updates!to!add!future!data!will!be! difficult!to!manage.!!You!will!want!to!have!an!understanding!of!the!flexibility!of!the! system!of!record!for!future!business!needs.!!If!the!source!system!is!completely!inflexible! there!may!be!a!good!case!to!manage!some!data!outside!of!the!system.!!For!example:!! PIM!systems!tend!to!be!leveraged!by!the!entire!enterprise!(not!just!ecommerce).!!It!may! be!difficult!to!get!additional!fields!added!just!for!the!use!of!the!ecommerce!team.!!In! that!case,!base!data!may!come!from!the!PIM!while!supplementary!data!will!be!managed! outside!of!the!PIM.! Scenario(B:((Hybrid(PIM(and(Manual(System( In!this!scenario!the!client!has!a!fully!functional!Product!Information!Management!system.!!This!system! has!been!planned!in!the!site!architecture!but!not!all!product!information!will!be!housed!the!PIM! system.!!Some!data!will!exist!outside!of!the!PIM!system.!!In!this!case,!there!are!multiple!systems!of! record.!!This!is!the!most!common!scenario!(base!product!information!through!the!PIM!and! supplementary!information!outside!of!it).! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!31! ! ! ! You!will!want!to!confirm:! • The!client!has!a!viable!method!to!manage!external!data! o The!data!not!managed!through!the!PIM!system!will!need!to!be!entered!into!Business! Manager.!!There!are!several!ways!to!do!this:! ! The!merchant!can!enter!the!data!directly!into!Business!Manager.!!This!is! completely!manual.!!For!this!to!be!successful!the!client!needs!to!have!capacity!to! manage!this!currently!and!as!the!business!scales.!!This!means!that!either!the! client!has!headcount!to!manage!this!data!manually!or!the!assortment!is!small! enough!or!simple!enough!that!it!can!be!managed!manually.! ! The!client!builds!a!system!to!house!the!non!PIM!data.!!It!is!possible!that!the! legacy!system!is!difficult!to!update!and!it!is!easier!to!build!a!stand\alone!system! to!house!the!data.!!In!this!case,!you!must!determine!how!the!merchant!will! obtain!the!new!data!and!how!it!will!be!entered!into!the!new!system.!!If!the! merchant!will!enter!the!data!manually!then!the!same!considerations!from!the! previous!method!apply!here!as!well.!!The!benefit!to!having!a!system!of!some! kind!is!that!it!can!enforce!rules,!generate!Demandware!XML!and!load!into!the! system!either!through!a!job!or!through!manual!uploading.! ! The!client!will!use!a!spreadsheet!to!manage!the!data!and!generate!Demandware! XML.!!This!method!relies!on!the!merchant!to!enter!data!into!a!spreadsheet,!run!a! macro!to!create!XML,!and!then!manually!upload!it!into!Business!Manager.!!The! data!source!questions!presented!earlier!still!apply.!!An!added!layer!of!complexity! also!exists!in!that!the!system!(in!this!case!a!spreadsheet)!does!not!manage!errors! or!ensure!well\formed!XML.!!This!means!that!the!client!needs!to!have!the!skills! or!needs!to!be!able!to!tap!into!the!skills!to!troubleshoot!and!load!data.! Scenario(C:((Fully(Manual(System( In!this!scenario!the!client!has!no!backend!system!capable!of!feeding!data!into!Demandware.!!All!data! will!be!manually!managed!by!the!client.!!They!will!either!need!to!manually!enter!the!data!into!Business! Manager!or!will!utilize!a!tool!like!a!spreadsheet!to!generate!XML!to!load!into!Business!Manager.!!In!this! case,!offline!files!OR!Business!Manager!is!the!system!of!record.! ! You!will!want!to!confirm:! • • • • The!client!has!capacity!to!manage!the!necessary!data! The!client!has!the!skillset!to!manage!the!data! If!a!spreadsheet!will!be!used!to!generate!Demandware!XML!who!has!the!skillset!to! troubleshoot!and!modify!the!spreadsheet!in!the!future!(requires!knowing!XML!or!the!capacity! to!learn!XML!and!modify!spreadsheet!formulas!accordingly!to!generate!well\formed!XML).! The!attribute!choices!help!enforce!consistency!in!the!data! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!32! ! ! • For!example:!!Enum!of!String!type!attributes!are!helpful!to!enforce!the!exact!same!possible! values!for!a!given!attribute.!!When!being!managed!manually!by!a!client!there!is!no!error! checking!so!this!intentionally!imposed!constraint!can!be!helpful.! ! Exercise:((Review(the(Product(Spreadsheet(Template( • Discuss!the!worksheets,!XML!Output!Formula,!necessary!modifications,!limitations,!expansion! opportunities,!and!the!macro.! ( Lesson(4.3:(Content( Content!management!is!another!area!that!needs!to!be!considered!during!the!discovery!phase!in! context!of!the!client’s!abilities.!!Much!of!the!out!of!the!box!content!functionality!leverages!HTML.!!You! will!need!to!assess!their!ability!to!work!with!HTML.!!A!few!options!exist:! • • • • The!client!has!in!house!HTML!and!CSS!skills!to!leverage!the!out!of!the!box!functionality.! The!client!has!access!to!resources!that!have!HTML!and!CSS!skills! The!client!plans!to!hire!a!resource(s)!that!has!HTML!and!CSS!skills! The!client!does!not!have!HTML!and!CSS!skills!in!house,!will!not!be!expanding!headcount,!and! does!not!have!or!plan!to!work!with!external!resources! ! Depending!on!the!client’s!resourcing!plan!as!noted!above,!there!will!be!an!appropriate!level!of!content! customization.!!Possible!approaches!are:! ! • • • Leverage!Site!Genesis!setup!for!content!because!the!client!has!or!will!hire/contract!for!the! HTML!skills.! Customize!content!in!such!a!way!that!it!removes!the!need!for!the!client!to!write!HTML.!!This! typically!includes!a!good!amount!of!custom!attribution!to!support!the!design.!!While!this!is! more!manageable,!it!does!introduce!greater!confinement.!!The!client!will!need!to!be!tied!to! pre\defined!templates!that!naturally!limit!the!layout!options.! Develop!a!template!approach!to!the!HTML!so!you!can!carefully!document!how!to!modify!it!to! support!content!changes!on!the!storefront.!!This!approach!only!works!if!the!client!has! somewhat!technically!minded!team!members!who!can!read!HTML!and!copy!a!setup.!!Use! extreme!caution!with!this!approach.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!33! ! ! If!the!content!requirements!demand!a!high!degree!of!content!customization,!it!is!beneficial!to!create!a! custom!content!control!companion!document!that!outlines!the!proper!controls!to!achieve!the!desired! front!end!display.!!This!can!be!derived!from!the!FSD!and!data!model!and!should!include:! ! • • • • • • • • Rendering!templates!to!select! Asset!IDs!being!referenced! Content!folders!required! Other!attribution!required! Slot!type! Slot!rendering!template! Slot!custom!attribution! Asset!sizing!requirements! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!34! ! ! ! Knowledge(Check( 1. When!in!the!project!lifecycle!should!client!capability!be!assessed?! a. Discovery! b. Design! c. Development! d. QA! e. UAT! f. Go!Live! ! 2. A!client!will!be!managing!their!data!manually.!!What!tool!can!they!leverage!to!make!bulk!data! changes?!!More!than!one!answer!may!apply.! a. PIM!System! b. The!OMS! c. Excel!to!XML!workbook! d. Business!Manager! ! ! ( Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!35! ! ! Knowledge(Check(Answers( 1. When!in!the!project!lifecycle!should!client!capability!be!assessed?! a. Discovery! b. Design! c. Development! d. QA! e. UAT! f. Go!Live! Answer:(a( ! ! 2. A!client!will!be!managing!their!data!manually.!!What!tool!can!they!leverage!to!make!bulk!data! changes?!!More!than!one!answer!may!apply.! a. PIM!System! b. The!OMS! c. Excel!to!XML!workbook! d. Business!Manager! Answer:(c(&(d( ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!36! ! ! Module(5:((Solution(Strategy(Documentation(Analysis( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! ! Describe!the!document!types!used!in!a!project!and!their!use! ! Identify!gaps!in!project!documentation! Overview( To!ensure!delivery!of!a!successful!implementation!on!Demandware,!a!thorough!and!diligent! documentation!approach!should!always!be!used.!!First,!a!strategist!should!be!able!to!identify!gaps!in! documentation.!!In!other!words,!the!strategist!should!be!able!to!quickly!spot!key!elements!missing! from!the!documentation!set.!!Second,!a!strategist!is!required!to!identify!features!that!are!not!part!of! Demandware’s!core!feature!set!or!configuration!and!then!advise!on!the!feasibility!of!the!customization! and!its!adherence!to!Demandware!best!practice.! ! Lesson(5.1:((The(Project(Plan( The!project!plan!is!the!first!document!the!project!team!should!consider.!!It!underpins!all!other! deliverables!and!ensures!there!are!clear!expectations!within!the!various!teams!that!will!be!involved! with!the!project.! Information!in!the!project!plan!that!would!be!considered!mandatory:! Project(Plan(Topic( Topic(Detail( Examples( Timeline( Defines!phases!in!the!project! and!their!duration! Discovery,!Documentation,! Development,!Testing,!Quality! Assurance,!User!Acceptance! Testing,!Performance!Testing! Dependencies( Defines!which!phases!depend!on! Documentation!cannot!happen! another’s!completion!before! until!the!client!has!completed! they!can!commence! discovery!to!define!their!needs.! ! UAT!cannot!commence!until! Development!is!complete.! Stakeholders( Defines!who!is!responsible!for! the!different!aspects!of!the! project! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! Project!Manager! Technical!Lead! July!2015!Page!37! ! ! Business!Sponsor! Developer! Milestones( Defines!key!moments!in!the! project!and!sets!target!dates! Discovery!complete! Development!complete! End!to!end!testing!start! Training!start! Launch!date! ! ! Exercise:((Identifying(project(plan(elements( Review!Appendix!B!(in!resource!files)!–!Example!Project!Plan!and!identify!2!examples!from!each!of!the! 4!project!plan!topics!in!the!table!above.! Lesson(5.2:((Operating(on(Demandware(Checklist( The!Operating!on!Demandware!Checklist!serves!to!make!the!project!team!consider!some!of!the!key! areas!such!as!merchandising,!operations!&!administration!as!well!as!organizational!roles!within!the! client!organization.! It!does!not!serve!as!a!checklist!of!all!tasks!for!launch,!but!rather!it!is!designed!as!a!catalyst!to!force!all! parties!to!consider!what!needs!to!be!in!place!for!effective!site!operations!both!pre!and!post!launch.! ! ! Exercise:((Resolving(an(incomplete(Operating(on(Demandware(checklist( Review!Appendix!C!(in!resource!files)!–!Operating!on!Demandware!and!identify!where!client! responsibilities!have!incorrectly!been!assigned!to!the!implementation!partner.! Lesson(5.3:((Architecture(Diagram( The!Architecture!Diagram!is!an!essential!and!fundamental!part!of!the!project!documentation.!!It!should! be!created!as!early!as!feasibly!possible!as!it!is!critical!in!ensuring!all!integrations!are!well!considered! and!facilitates!a!complete!understanding!of!the!relationships!between!Demandware!systems,!LINK! technology!partners!and!other!3rd!party!systems!such!as!the!client’s!Enterprise!Resource!Planning! System!(ERP)!or!Product!Information!Management!(PIM).! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!38! ! ! As!part!of!the!diagram,!data!flows!and!formats!should!be!identified!at!a!high!level!–!for!example,! defining!the!flow!of!inventory!data!to!and!from!Demandware!and!the!client’s!PIM!systems!along!with! the!format!would!be!one!example!of!a!relationship!that!could!be!defined.! ! ! Exercise:((Architecture(Diagram(data(flow(error(resolution( Review!this!example!architecture!diagram!and!identify!where!2!key!data!flows!are!missing.!! Recommend!a!solution.! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!39! ! ! Exercise(Answer( 1. Catalog!feed!from!data!transformation!layer!to!Demandware!Staging!is!missing! 2. Customer!feed!from!Demandware!Production!to!data!transformation!layer!is!missing! ! ! Lesson(5.4:((Data(Model( In!previous!modules!we!discussed!aspects!of!the!data!model!including!objects,!object!extension,!and! the!client!ability!to!manage!the!data!requirements!of!the!solution.!!All!of!this!is!documented!in!the! Data!Model!spreadsheet!which!we!will!review!in!detail!later!in!this!course.! ! Additionally,!data!mapping!is!housed!in!the!Data!Model!Spreadsheet.!!It!contains!worksheets!organized! by!Demandware!object!such!as!category,!product,!customer,!price!books!and!inventory.!!Identifying!all! data!model!considerations!is!an!important!part!of!making!sure!there!are!no!issues!encountered!later!in! the!project.! ! Considerations!to!think!about!regarding!data!modeling! Topic( Description( Examples( High(Level(Data(Model( Conceptual!data!model! Entity!types,!relationships! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!40! ! ! Process(Overview( High!level!idea!of!how! SimpleFeed!Cartridge;!custom! Demandware!consumes!Catalog,! objects;!FTP/WebDav;!Jobs! Price!Book!&!Inventory! Product(Types( The!different!product!types!the! client!needs! Simple!Product!–!No!Variations! Variation!Master!&!Variation! Product! Product!Set! Product!Bundle! Demandware(XSD( XML!Schema!Definition!for! Demandware!data! Attributes,!naming!convention,! expected!data!values! Data(Mapping( Schema!Integration! Excel!Spreadsheet! Lesson(5.5:((Content(Inventory(&(Control( Clearly!documenting!the!content!assets!and!slots!and!assigning!IDs!to!them!in!a!logical!fashion!is! important!to!an!implementation!as!it!ensures!the!following!is!achieved:! • • • • Reduced!post!launch!overhead:! Client!business!teams!can!use!the!FSD/Wireframes!as!a!user!manual!to!guide!them!in!how!to! change!content.! Logical!naming!conventions!ensure!no!confusion!over!which!slots!belong!where.! Clearly!demonstrating!use!of!slots!allows!the!Solution!Strategist!to!assess!any!early!deviations! from!recommended!best!practice!–!such!as!using!too!many!slots!on!one!page,!which!can!have! negative!impacts!on!page!performance.! Demandware!provides!reference!documentation!which!can!and!should!be!used!as!the!basis!for! documentation:!!https://xchange.demandware.com/docs/DOC\16927! ! When!leveraging!SiteGenesis!functionality,!you!can!use!the!provided!(and!frequently!updated)! SiteGenesis!Wireframes.!!These!wireframes!contain!SiteGenesis!naming!of!slots.! ! ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!41! ! ! Exercise:((SiteGenesis(Wireframe(Review( Review!the!current!SiteGenesis!Wireframes:!!https://xchange.demandware.com/community/product\ and\solutions/documentation! ! Lesson(5.6:((Integrations( All!Demandware!implementations!leverage!integrations!in!some!way,!shape!or!form.!Basic!integrations! with!third!party!LINK!technology!that!would!be!common!includes!payment!processors,!ratings!&! reviews!and!Email!Service!Providers.! While!reviewing!documentation,!solution!strategists!should!be!aware!of!all!the!integrations!that!are! planned.!Thus,!the!first!thing!to!do!is!look!for!a!complete!list!of!all!integrations!that!are!expected.!! This!should!usually!have!been!detailed!in!a!summary!section!or!initiation!part!of!the!documentation! and!would!be!available!very!early!after!the!discovery!phase!of!the!project.!! ( ! Discussion:(Integrations(example(review( The!table!below!is!taken!from!a!real!client!FSD!and!shows!the!summary!of!integrations!that!would!be! expected!in!a!normal!project!documentation!specification.!At!this!level!only!minimal!details!are! required!i.e.!Integration!name!and!description,!so!that!the!strategist!or!reader!is!able!to!quickly! understand!and!interpret!what!3rd!party!integration!is!being!utilized.! Review!each!artifact!as!a!group!and!discuss!their!relationships!with!the!Demandware!platform!and! with!one!another.! Artifact( Description( Adyen( Payment!service!provider! Google( Provider!of!Web!Analytics!Reporting,!interactive! maps!and!driving!directions! Demandware( An!on\demand!ecommerce!platform!provider! Integration(Layer( An!abstract!representation!of!a!back\end! integration!framework!within!the!enterprise.!!May! be!implemented!via!the!use!of!an!ESB!or!similar! entity.! Staging(Instance( Part!of!the!Demandware!PIG.!!Used!to!preview! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!42! ! ! content!and!code!before!it!is!replicated!to!the! production!instance! Production(Instance( Instance!on!which!the!customer!facing!website(s)! run.!!Part!of!the!PIG.! PostNL( Drop!point!booking! ShopToMarket( Affiliate!aggregator! eCircle( Newsletter!and!mail!marketing!provider.!!This!is! the!current!assumption;!this!may!change!before! go!live.! Kiala( Drop!point!booking!provider! PeopleXS( Provider!of!job!information! Bazaarvoice( Leading!provider!of!product!ratings!and!reviews! ConnectFlow( Store!stock!database! Oracle( Provider!of!Customer!Relationship!Management! functionality.!!The!current!assumption!is!this!is!a! point!to!point!integration.!!An!alternative!is!that! the!integration!goes!through!the!integration!layer.! Lesson(5.6:((Functional(Specification(Document( The!Functional!Specification!Document!(FSD)!is!authored!by!the!Solution!Strategist.!!The!FSD!contains! functional!requirements!for!the!project!and!how!those!functional!requirements!translate!into!front! end!web!store!behavior!and!control.!!The!document!should!account!for!every!functional!requirement! and!should!contain!an!annotated!representation!of!every!page!on!the!storefront!and!every!state!of!the! page.!!It!serves!as!a!“source!of!truth”!regarding!how!the!site!is!to!behave!and!the!mechanisms!the! client!has!to!impact!that!behavior.! ! The!FSD!should!be!approved!by!the!client!and!then!used!by!developers!to!implement!the!requirements.!! It!is!then!passed!to!QA!to!confirm!the!solution!meets!the!requirements!and!again!used!in!UAT!for!the! client!to!confirm!the!site!meets!the!requirements.!!The!project!manager!also!leverages!the!FSD!to! manage!project!scope.!!The!Architect!leverages!the!FSD!to!check!for!alignment!between!the!front!end! and!the!system!architecture.!!As!a!result,!the!FSD!is!a!pivotal!document!for!the!entire!project!team.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!43! ! ! The!FSD!is!accompanied!by!the!other!project!documentation!like!the!Technical!Specification!Document! (TSD),!the!Data!Model,!and!the!content!inventory.! ! In!some!cases,!the!client!will!fully!adopt!portions!of!SiteGenesis!functionality!or!display.!!In!these!cases! it!would!be!best!practice!to!either!fully!design!and!annotate!the!pages!into!the!FSD!or!extract!the! sections!from!the!SiteGenesis!wireframes.!!The!worst!possible!approach!would!be!omitting!them!from! the!FSD.! ( ( Discussion:(Sample(FSD(Review( Review!the!sample!FSD!to!get!a!feel!for!the!format!of!the!document!and!the!content!of!the!document.! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!44! ! ! ! Knowledge(Check( 1. Using!a!content!inventory!tracking!system!allows!you!to:! a. Identify!the!content!necessary!to!support!the!design!and!track!it! b. Upload!content!into!Demandware! c. Create!slot!configurations! d. Transfer!responsibility!to!the!client! 2. The!FSD!is!leveraged!by!which!members!of!the!project!team?!!Check!all!that!apply.! ! Client! ! Development! ! Quality!Assurance! ! Architect! ! Project!Manager! ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!45! ! ! Knowledge(Check(Answers( ! 1. Using!a!content!inventory!tracking!system!allows!you!to:! a. Identify!the!content!necessary!to!support!the!design!and!track!it! b. Upload!content!into!Demandware! c. Create!slot!configurations! d. Transfer!responsibility!to!the!client! Answer:(a( 2. The!FSD!is!leveraged!by!which!members!of!the!project!team?!!Check!all!that!apply.! x! Client! x! Development! x! Quality!Assurance! x! Architect! x! Project!Manager! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!46! ! ! Module(6:(Identify(Demandware(Implementation(Best(Practices( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! • Identify!Demandware!implementation!best!practices!for:! o General!architecture! o Storefront! o Mobile/responsive! o Internationalization! Lesson(6.1:(General(Architecture(Best(Practices( Content(Slots( Demandware!content!slots!can!be!used!to!deliver!scheduled!and!targeted!content!to!a!customer!in!a! testable!manner!(in!contrast!to!content!assets!which!are!not!schedulable,!targetable,!or!testable).!! There!are!several!factors!to!consider!when!planning!your!use!of!content!slots.! • Static!or!infrequently!changing!content!should!always!be!designed!as!a!content!asset.!!For! example:!the!logo!in!the!header!or!the!set!of!links!in!the!footer.!!These!will!change!infrequently! and!do!not!need!to!be!scheduled,!targeted!or!tested.! • A!single!page!should!not!contain!more!than!6!content!slots.!!We!have!observed!performance! impacts!as!the!number!of!content!slots!delivered!on!a!single!page!exceeds!6.! ! Content(Quotas( Quota(Name( Description( Limit( Content(Objects( The!maximum!number!of! content!assets! 100,000! Folders( The!maximum!number!of!folders! 10,000! SubXFolders( The!maximum!number!of!sub\ folders!under!a!library!folder! 1,000! Libraries( The!maximum!number!of! content!libraries! 140! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!47! ! ! Slot(Configurations( The!maximum!number!of!slot! configurations! 10,000! ! Use(of(iFrames( An!iFrame!is!a!method!used!to!display!a!web!page!within!another!web!page.!!While!effective!at!doing! so,!iFrames!are!costly!when!it!comes!to!usability,!accessibility,!and!page!performance.!!As!a!result!it!is!a! Demandware!best!practice!to!ensure!implementations!avoid!the!use!of!iFrames.! Video( Video!content!is!increasing!in!popularity!and!therefore!needs!to!be!well!handled!in!a!successful!and! effective!implementation.!!Demandware!is!not!a!video!hosting!platform!and!therefore!should!never!be! identified!as!the!hosting!provider!of!video!content!for!any!site!section.! ! There!are!several!LINK!Technology!partners!that!provide!rich!media!functionality:!! https://xchange.demandware.com/community/marketplace! ! Additional!common!video!solutions!are!YouTube!and!Vimeo.! Accessibility( SiteGenesis!has!been!developed!to!support!fundamental!accessibility!standards.!!Customization!should! be!done!in!such!a!way!that!it!does!not!reduce!the!level!of!accessibility.!!It!will!be!important!to!capture! any!requirements!that!increase!the!level!of!accessibility.! Performance( There!are!several!techniques!that!should!be!followed!as!a!best!practice!to!ensure!the!highest!levels!of! site!performance.! • CSS!Sprites!–!Spriting!is!a!technique!to!combine!multiple!images!into!a!single!image!and!then! use!CSS!to!call!the!right!portion!of!the!image!at!the!right!time!in!the!right!location.!!This!reduces! the!number!of!http!server!calls!to!render!a!page!and!also!saves!on!bandwidth!which!is! especially!important!when!pages!are!rendered!over!a!cellular!or!low\bandwidth!connection.! • Minification!–!Minifying!is!a!process!resulting!in!smaller!JavaScript!files.!!It!eliminates!white! space,!unnecessary!characters,!and!depending!on!the!method!may!involve!shrinking!variable! names.!!The!resulting!smaller!file!increases!page!speed!by!loading!faster!than!the!larger!version.! • Combining!CSS!–!When!possible!it!is!also!a!best!practice!to!reduce!the!number!of!CSS!files!being! used.!!The!reduction!results!in!fewer!http!server!calls!and!results!in!a!faster!page!load.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!48! ! ! • Total!page!weight!should!not!exceed!1.5MB! ! Business(functions(separate(from(code( It!is!best!practice!to!separate!normal!business!functions!performed!within!Business!Manager!from! code!deployment!/!replication.!!For!example,!it!should!not!require!a!code!deployment!to!run!a! promotion.!!The!running!of!promotions!is!a!regular!business!practice.!!Making!it!dependent!on!a!code! deployment!immediately!renders!the!site!less!flexible!than!the!reference!application.! Lesson(6.2:(Storefront(Best(Practices( This!lesson!contains!best!practices!for!storefront!design!and!administration!organized!by!topical!area! and!storefront!site!section.! Catalog( Demandware!supports!multiple!catalogs!for!the!same!site.!!Only!one!is!ever!exposed!to!the!storefront! at!a!given!time.!!It!is!best!practice!to!always!have!(without!exception)!a!master!catalog!own!all!of!the! product!and!a!storefront!catalog!that!has!been!assigned!the!product.!!This!configuration!ensures!the! client!has!a!catalog!structure!to!support!current!and!future!business!needs.!!This!is!particularly!helpful! if!the!client!wants!to!support,!or!have!the!flexibility!to!support,!multiple!unique!storefronts!that!each! leverage!an!assortment!of!the!master!catalog.!!This!allows:! • The!client!to!maintain!one!and!only!one!record!of!the!product! • Have!unique!storefronts!for!each!of!the!sites!with!independent!navigation! • Easily!allow!for!expanding!sites!either!for!domestic!expansion!or!international!expansion! • Replicate!product!separately!from!the!storefront! • The!separation!of!the!product!data!from!the!storefront!catalog!data!assists!by!making! replication!and!jobs!smaller!in!file!size!increasing!performance.! ! This!screenshot!shows!that!the!storefront!catalog!owns!no!products!but!does!have!all!of!the!products! assigned!to!it!to!display!to!the!customer.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!49! ! ! Catalog(Quotas( Quota(Name( Description( Limit( SubXCategories(per(Category( The!number!of!sub\categories!that!can!be!created! 1,000! under!a!category! Catalogs( The!number!of!catalogs!that!can!be!created! 200! Options(per(product( The!maximum!number!of!options!that!a!product! can!have! 1,000! Products(per(bundle( The!maximum!number!of!products!that!can!be!in! a!bundle! 100! Products(per(Set( The!maximum!number!of!products!that!can!be!in! a!product!set! 100! Variants(per(Master( The!maximum!number!of!variants!that!can!be! associated!to!a!master! 1,000! ! Navigation( Site!global!navigation!should!always!be!built!to!mirror!the!storefront!catalog!navigation.!!This!ensures! the!client!has!the!most!flexibility!in!controlling!the!categories!that!appear!in!the!navigation!and!the! order!in!which!they!appear!in!the!navigation.! ! The!category!attribute!Show!in!Menu!Navigation!should!be!used!to!allow!clients!the!flexibility!to!show! some!but!not!all!categories!in!the!global!navigation.!!This!can!also!help!clients!who!leverage!the! category!refinement!show!a!different!set!of!categories!there!and!in!their!global!navigation.! ! Use!of!existing!attributes:!!If!the!global!navigation!needs!to!be!presented!in!a!particular!way,!look!first! to!the!existing!SiteGenesis!controls!before!any!customization:! • If!content!should!be!presented!in!the!global!navigation,!a!banner!as!depicted!in!the!screenshot! below,!you!should!leverage!the!out!of!the!box!Header!Nav!Menu!Banner!attribute.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!50! ! ! • ! If!the!categorization!should!appear!in!a!horizontal!fashion!where!categories!are!presented!from! left!to!right!you!can!leverage!the!Header!Menu!Orientation!attribute.! Header/Footer( • The!header!should!account!for!the!varying!levels!of!authentication:!!unauthenticated,! authenticated,!and!recognized! • The!footer!should!leverage!content!assets!so!the!client!can!easily!update!footer!links! o Any!elements!of!the!footer!that!house!logic,!like!an!email!signup!form,!should!be!coded! into!the!ISML!to!prevent!the!client!from!accidentally!altering!logical!code! Category(page/listing(page( • Quickview!(if!used)!should!always!have!a!link!to!the!full!product!detail!page! • Quickview!should!be!removed!from!a!mobile!break!point!(responsive)! • The!category!page!should!not!leverage!more!than!6!content!slots!to!maintain!performance! Product(Detail(Page( The!product!detail!page!should!account!for!the!varying!states!of!the!product!based!on!the!client’s! business!rules:! • • Inventory!rules!the!client!needs!to!support!(in!stock,!out!of!stock!but!still!on!site,!preorder,! backorder).! Promotional!messaging!for!item!and!order!level!discounts.! Data(Model( The!Data!Model!is!a!critical!component!of!Storefront!design.!!The!Data!Model!is!used!to!clearly!depict! the!data!landscape!necessary!to!support!the!client’s!solution.!!It!should!be!traceable!to!source!systems! as!well!as!the!other!project!documentation!like!the!Functional!Specification!Document.!!It!helps! organize!the!data!in!context!of!the!object!and.!!The!model!also!helps!expose!the!amount!of!manual! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!51! ! ! data!management!a!client!needs!to!maintain!–!if!the!quantity!exceeds!the!capacity!to!manage!there!is! an!operational!gap!inherent!in!the!design!that!needs!to!be!considered!and!resolved.! ! Demandware!supports!a!master!to!variant!relationship.!!The!data!model!has!a!section!where!variation! attributes!(the!attributes!that!cause!one!instance!of!the!product!to!differ!from!another)!are!defined.!!In! this!relationship!the!variants!are!the!purchasable!item!(the!SKU)!and!the!master!is!the!style!of!the! product!they!belong!to.! • For!example:!!A!shirt!(the!master)!comes!in!different!sizes!and!colors!(the!variants)!therefore! ‘size’!and!‘color’!are!both!variation!attributes!of!the!shirt!and!in!combination!define!the! orderable!item!the!customer!is!selecting!(shirt!in!color!red!and!size!large).! ! ! Exercise:((Review(the(Data(Model(Spreadsheet( The!Data!Model!document!can!be!found!here:!!https://xchange.demandware.com/message/30821! ! • The!data!model!should!only!be!extended!if!the!out!of!the!box!SiteGenesis!objects!and!attributes! are!insufficient!to!drive!the!data!needs!of!the!storefront! • The!data!model!should!be!clearly!depicted!using!the!data!model!spreadsheet.!!Header!fields! include:! Field! What!it’s!used!for! Field!Name! • Field!ID! • Source!of!Data! • Pre\Populated!Value! • • • • Applicable!Field!for!Client! • Captures!the!name!of!the!attribute.!!This! should!be!exactly!how!the!attribute!will!be! named!once!created!in!Business!Manager! Captures!the!ID!of!the!attribute!as!it!will!be! setup!in!Business!Manager! Captures!the!origin!of!the!data.!!Possible!origin! sources!include!but!are!not!limited!to:! Product!Information!Management!system! Order!Management!System! Entered!directly!into!Business!Manager! This!is!a!Y/N!field.!!Set!to!Yes!if!the!value!will!be! coming!from!the!client’s!feed.!!Set!to!No!if!the! client!will!be!manually!setting!this!value!in! Business!Manager.! This!is!a!Y/N!field.!!Set!to!Yes!if!this!field!maps! to!a!client’s!backend!system!and!will!be!used!in! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!52! ! ! Field! What!it’s!used!for! Client!Table!Name! • Client!Field!Name! • Data!Type! • Update!in!Demandware! • Display!on!Storefront! • Localization! • Description! • Sample!Data! • Required! • the!implementation.! If!the!data!origination!point!is!a!client!backend! system,!the!name!of!the!table!containing!the! data!should!be!captured!here.! If!the!data!origination!point!is!a!client!backend! system,!the!name!of!the!field!within!the!table! containing!the!data!should!be!captured!here.! This!should!capture!the!Demandware!attribute! type!being!used!to!house!the!attribute.!(e.g.! string,!Boolean,!enum!of!string,!enum!of! integer,!etc.)! This!is!a!Y/N!field.!!If!yes,!data!is!updatable!in! Demandware.!!If!no,!all!data!for!this!attribute!is! externally!managed.! This!is!a!Y/N!field!used!to!convey!if!the!data! housed!in!the!attribute!is!going!to!be!displayed! on!the!storefront.! Used!to!indicate!if!the!attribute!is!going!to!be! localized!and!if!so,!will!it!be!used!for!a!specific! locale.!!If!it!will!be,!indicate!the!locale!as!well.! Use!this!field!to!describe!the!purpose!of!the! data!housed!in!the!attribute!and!any!special! criteria!that!should!be!explained!like!valid! characters,!etc.! Provide!a!sample!of!the!data!as!it!will!be! expected!in!this!field.! This!is!a!Y/N!field!used!to!convey!if!this!data!is! required!(Y)!or!if!it!is!optional!(N).! Data(Model(–(Attribute(Types( Demandware!offers!many!different!attribute!types.!!Some!of!the!attribute!types!offered!are!queryable! in!Business!Manager!when!the!merchant!is!using!the!advanced!product!search!feature!to!locate! products.! Type! JavaScript!Type! String! Demandware!script!top! level!String!class! Description! Queryable!in!Business! Manager! Letters,!numbers,!and!punctuation.!! Usually,!this!is!a!word!or!a!sentence! Yes! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!53! ! ! Text! Demandware!script!top! level!String!class! Letters,!numbers,!and!punctuation.!! This!is!intended!for!larger!amounts!of! text,!such!as!descriptions! Html! Demandware!script! HTML!tags.!!This!is!intended!for!HTML! No! dw.content.MarkupText! tags!and!values.!!If!editing!HTML! class! attributes,!Business!Manager!allows! you!to!edit!them!in!an!HTML!editor,! whereas!this!is!not!possible!for!String! or!Text!data!types.! Integer! number! A!number!without!decimal!places! such!as!1,!2,!3,!or!4.! Number! number! Number.!!You!can!select!the!number! Yes! of!places!after!the!decimal!point!by! adding!a!scale!value.!!If!you!are! creating!a!custom!attribute!for!a! money!value,!use!the!Money!data! type.!!The!number!data!type!only!uses! the!values!of!the!decimal!in! calculations.!!For!example,!1/3!with!2! as!the!scale!is!processed!as!.33.!!If!you! multiply!this!number!by!3,!you!see!.99! rather!than!1.!!In!contrast,!the!Money! data!type!has!localized!rules!for! rounding!that!cause!numbers!to! provide!totals!as!expected!for!a! specific!currency.! Boolean! boolean! True!or!False! Yes! Date! Demandware!script!top! level!Date!class! MM/dd/yyyy! Yes! Date!+! Time! Demandware!script!top! level!Date!class! MM/dd/yyyy!:!h:mm!a! Yes! Image! Demandware!script! dw.content.MediaFile! class! An!image.!!Merchants!can!select!this! from!the!image!folder!structure.!! Developers!can!use!a!script!to! dynamically!retrieve!an!image!using!a! pipeline.! No! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! No! Yes! July!2015!Page!54! ! ! Email! String! Email!address.!!Business!Manager! Yes! requires!the!merchant!to!enter!a!valid! syntax!for!an!email!address.!!For! example,!it!requires!a!valid!extension! after!the!@!sign,!among!other! requirements.! Password! String! Password.!!This!displays!a!masked! No! field!and!confirmation!field!where!the! merchant!can!enter!a!password.!! Password!data!type!values!are! encrypted!on!export!and!can!be! encrypted!for!import.! Set!of! String! JavaScript!array!object! containing!string! The!attribute!value!is!zero!or!more! strings.!!This!is!used!when!you!want! the!merchant!to!enter!one!or!more! strings.!!Sets!do!not!contain! duplicates.! Yes! Set!of! Integer! (whole! numbers)! JavaScript!array!object! containing!number! The!attribute!value!is!zero!or!more! integers.!!This!is!used!when!you!want! the!merchant!to!enter!one!or!more! integers.!!Sets!do!not!contain! duplicates.! Yes! Set!of! Number! (any! number)! JavaScript!array!object! containing!number! The!attribute!value!is!zero!or!more! Yes! numbers.!!This!is!used!when!you!want! the!merchant!to!enter!one!or!more! numbers.!!Sets!do!not!contain! duplicates.! Enum!of! String! Demandware!script! dw.value.EnumValue! class!with!value!of!type! string,!maybe!in!a! JavaScript!array!object! The!attribute!value!is!zero!or!more! strings.!!This!is!used!when!you!want! the!merchant!to!select!one!or!more! fixed!values.!!Check!the!Multiple! checkbox!if!you!want!more!than!one! value!associated!with!the!attribute.! Yes! Enum!of! Integer! Demandware!script! dw.value.EnumValue! class!with!value!of!type! number,!maybe!in!a! JavaScript!array!object! The!attribute!value!is!zero!or!more! integers.!!Check!the!Multiple! checkbox!if!you!want!more!than!one! value!associated!with!the!attribute.! Yes! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!55! ! ! Options!available!when!setting!up!attributes!vary!by!type!of!attribute.!!Options!may!include:! • • • • • • • • • • ! Mandatory:!Check!this!box!if!this!field!is!required.! Externally(Managed:!Check!this!box!if!you!do!not!want!Business!Manager!users!to!be!allowed! to!edit!this!value.!This!is!used!for!attributes!with!values!fed!from!a!backend!system\of\record.! Value(Unit:!Enter!the!unit!of!value,!such!as!cm!for!centimeters!or!oz!for!ounces.! Minimum(Value:!Enter!the!minimum!allowable!value!for!the!attribute.! Maximum(Value:!Enter!the!maximum!allowable!value!for!the!attribute.! Scale:!Enter!the!number!of!decimal!places.! Field(Length:!Enter!the!field!length!to!display!the!attribute!as!a!number!of!characters.! Field(Height:!Enter!the!field!height!to!display!the!attribute!as!a!number!of!lines.! Select(Multiple:!Check!this!box!to!allow!merchants!to!select!multiple!values!when!assigning!a! value!for!the!attribute.! Regex:!This!option!is!only!available!for!string!attributes.!Enter!a!regular!expression!to!use!when! validating!the!attribute!in!a!storefront!form.!Use!Java!regular!expression!syntax.! Administration(–(Replication( Replication!is!the!process!by!which!data!and!code!move!from!one!instance!to!another.!!In!this!section! we!will!cover!best!practices!in!replication!from!a!platform!perspective.!!Replication!strategy!varies!from! client!to!client!based!on!their!individual!business!needs.! ! Replication!can!be!initiated!manually!or!on!a!schedule.!!Care!should!be!taken!to!make!sure!that!the! client’s!needs!and!workflow!are!being!met!by!the!replication!approach.!!If!they!expect!changes!to! move!into!production!at!a!regular!cadence,!a!scheduled!replication!approach!is!appropriate.!!If!the! client!expects!to!move!data!into!production!as!they!see!fit,!a!manual!approach!is!appropriate.!! Regardless!of!the!approach,!replication!must!be!a!topic!of!discussion!with!clients!and!should!be!well! documented.! ! ! Business!Manager!Path:!!Administration(>(Replication! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!56! ! ! Overview! • • • • Data!transfers!from!Staging!to!Production!or!to!Development! Data!does!NOT!transfer!from!Production!to!Development!or!Staging! o Note:!!Active!data!can!be!moved!into!Staging!through!a!manual!or!scheduled!import!job! Data!can!be!replicated!manually!or!on!a!set!schedule! Some!replication!groups!are!at!the!site!level!meaning!they!only!impact!the!site!being!replicated! while!other!replication!groups!are!at!the!organization!level!meaning!they!apply!to!all!sites.! Site!Replication!Groups! Organization!Replication!Groups! Cache!Settings! Catalogs! Content!Library! Customer!Lists! Coupons! Custom!Objects! Customer!Groups! Preferences! Custom!Objects! Price!Books! Payment! Sites! Preferences! Static!Content! Campaigns! Object!Definitions! Search!Indexes! ! Shipping!Methods! ! Slots! ! Source!Codes! ! Stores! ! Taxation! ! Site!URL!Management! ! URL!Redirects! ! ! Replication!Flow! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!57! ! ! ! ! ! Replication!Modes! Transfer:!!Copies!data!&!files!to!shadow!tables!&!folders!without!affecting!Production! Publish:!!Switches!the!pointers!to!newly!replicated!data!and!files! Undo:!!Switches!the!pointers!back!to!the!previous!set!of!data!and!files! ! What!is!Not!Replicated! • • • • • • • • • • • Customers! Active!Data! AB!Testing!Data! Gift!Certificates! Orders! Analytics!data! Operations!job!definitions! Alias! Robots! XML!Sitemap!configurations! Business!Manager!Users! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!58! ! ! • • • • • • Business!Manager!Roles! Error!Pages! Sequence!Numbers! Job!Schedules! Non\replicable!Custom!Objects! Inventory! ! Data!Replication!Best!Practices! • • • • • • • • • • • • • • • • • • Replicate!to!development!first!as!a!QA!process!and!then!to!production! One!replication!process!at!a!time! Avoid!replication!during!Demandware!Maintenance!Windows!(T,!Th!2am\7am!local!POD!time)! Avoid!replication!when!other!jobs!are!running! Avoid!replication!during!the!day! Publish!clears!cache!so!replicating!during!high!traffic!times!impacts!performance!(can!take!up!to! 15!minutes!for!the!cache!to!clear)! Limit!who!has!access!to!perform!replications! Identify!any!dependencies!between!replication!groups!so!you!can!replicate!them!together! When!possible,!separate!the!transfer!and!publish!steps!to!production!to!allow!for!verification! before!going!live! Disable!incremental!and!scheduled!indexing!if!you!are!replicating!search!indexes!(target!and! source)! Global!replication!groups:!!There!may!be!instance!specific!differences!between!these!groups!so! replication!is!not!recommended! o Custom!Objects! o Preferences!(global!and!site)! o Sites! Global!replication!groups:!!Static!Content!should!really!be!part!of!a!build.!!Assets!and!slots!are! site!specific.! Global!replication!groups!\!Object!Definitions:!!You!need!to!be!careful!and!understand!what! changes!have!been!made!before!you!engage!in!an!object!definition!replication.!!May!need!a! code!replication!to!go!along!with!the!data!replication.! When!changing!meta!data,!we!recommend!you!change!it!on!Staging,!then!replicate!“Object! definitions”!to!Development!and!Production.!!Above!statement!about!object!definitions!still! applies.! If!an!object!is!locked!it!will!not!be!included!in!the!replication.! No!manual!updates!or!changes!should!be!made!in!business!manager!on!target!or!source!system! when!replication!process!is!running.!! Jobs!should!not!be!running!on!the!target!system!that!changes!the!same!data!as!is!being! replicated.! Do!not!schedule!one!job!to!start!right!at!the!end!of!a!previous!job!–!the!previous!job!may!not! complete.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!59! ! ! Search!index!automatically!runs!when!a!replication!is!initiated!so!do!not!also!replicate!search! indexes.! o Exception:!!Changes!to!search! There!is!an!undo!feature!that!will!roll!back!only!the!last!replication.! If!you!run!into!an!error,!you!should!check!logs!in!both!source!and!target!instances!for!the!error.! If!replicating!multiple!groups!at!once!and!you!receive!an!error.!!Try!one!group!at!a!time!to!help! isolate.!!Logs!will!also!help.! Cache!should!never!be!cleared!directly!after!a!replication!finishes.!!The!replication!process! clears!the!cache!(on!publish).! • • • • • Administration(–(Roles(&(Permissions( Demandware!allows!clients!to!manage!users!who!have!access!to!Business!Manager,!through!user! management,!and!what!they!can!do!after!they!login,!through!role!management.!!It!is!best!practice!to! discuss!role!management!with!the!client!to!determine!what!roles!need!to!be!setup!and!who!those! roles!will!apply!to.!!Setting!all!users!to!Administrator!is!not!a!suggested!method!to!permission!users.! ! ! Business!Manager!Path:!!Administration(>(Organization(>(Users((or(Roles(&(Permissions)! ! ! Discussion:((Roles(&(Permissions( What!sort!of!permissions!would!you!extend!to!the!following!role!types?! • • • • Administrator! Merchandiser! UX!Designer! Search!Engine!Optimizer! ( SEO(Support( Meta!Data! It!is!a!best!practice!to!make!sure!templates!use!standard!data!as!the!default!meta!data.!!This!allows! clients!to!easily!make!sure!relevant!data!populates!into!the!meta!data!programmatically!while!still! giving!the!client!the!flexibility!to!override!as!necessary!using!the!SEO!Support!attributes.!!SiteGenesis! templates!will!follow!this!convention!by!default:! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!60! ! ! Page!Type! Meta!Tag! Default!Syntax! Product!Detail!Page! Title! <product\name>!\!<Site!Name>! Description! <product\description>!<Site!Name>! Keywords! <product\name>!<Site!Name>! Title! <category\name>! Description! <Site!Name>! Category!Page! Keywords! Content!Asset! ! <Site!Name>! Title! <asset!name>! Description! <Site!Name>! Keywords! <Site!Name>! ! In!addition!to!products,!categories,!and!content,!the!storefront!will!also!display!pipeline!pages!and!the! homepage!(a!sort!of!unique!pipeline).!!With!the!exception!of!the!homepage,!these!pipeline!pages!are! not!managed!in!Business!Manager,!therefore,!their!SEO!meta!data!is!not!managed!in!Business! Manager.!!As!a!result,!requirements!should!be!collected!to!map!the!pipeline!pages!exposed!on!the! storefront!to!their!meta!data!so!a!developer!can!code!it!into!the!page.!!Alternatively,!you!may!want!to! consider!a!customization!to!store!pipeline!page!meta!data!in!a!specific!content!asset!(one!for!each! pipeline)!to!allow!the!merchant!the!ability!to!change!the!meta!data!without!a!code!deployment!(uses! the!UpdatePageMetaData!pipelet).! ! ! Discussion:((Customization(Sample( Review!the!requirement!example!and!then!discuss!why!the!requirement!is!or!is!not!a!sound! customization.!!After!the!discussion!review!the!Requirement!Response!below!for!additional!details.! ! Requirement!example:! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!61! ! ! The!system!shall!allow!the!business!user!the!ability!to!specify!meta!title,!description!and!keywords!for! the!pipeline!pages!through!the!use!of!a!content!asset.!!The!system!shall!have!one!content!asset! designated!for!each!pipeline!page.! ! ! Requirement!Response:! ! This!requirement!is!also!an!example!of!the!line!of!thinking!that!Solution!Strategists!should!develop.!! The!Demandware!platform!provides!a!starting!point!(the!reference!application,!system!objects,!system! attributes,!system!functionality)!however!strategists!need!to!be!able!to!flex!the!platform!in!ways!that! ultimately!give!the!client!the!degrees!of!freedom!to!operate!their!storefront!with!as!little!developer! intervention!as!possible!while!at!the!same!time!not!limiting!the!inherent!flexibility!of!the!platform.!! This!customization:! • • • Leverages!existing!platform!functionality!(content!assets)! Increases!business!user!control!(gives!control!to!an!otherwise!uncontrollable!set!of!data)! Does!not!limit!any!other!platform!functionality! ! Other(Object(Quotas( Quota(Name( Description( Limit( A/B(Tests( Segments(Per(AB(Test( The!maximum!number!of! segments!allowed!in!a!single!AB! test! 5!(control!counts!as!a!segment)! Basket( Coupon(Line(Items(per(Basket( The!maximum!number!of! coupons!on!a!basket! 20! Gift(Certificate(Line(Items(per( Basket( The!maximum!number!of!gift! certificates!on!a!basket! 20! Payment(Instruments(per( Basket( The!maximum!number!of! payment!methods!in!a!basket! 20! Product(Line(Items(per(Basket( The!maximum!total!number!of! independent!and!dependent! 200! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!62! ! ! product!line!items!in!a!basket! Shipments(per(Basket( The!maximum!number!of!ship!to! addresses!for!a!basket! 20! Shipping(Line(Items(per(Basket( The!maximum!number!of! shipping!line!items!(shipping! charges)!for!a!basket! 70! Customer( Customer(Groups( The!maximum!number!of! customer!groups! 500! Explicit(Customer(Groups(per( Customer( The!maximum!number!of!explicit! 50! customer!groups!a!customer!can! be!member!of! Custom(Objects( NonXReplicable(Custom(Objects( The!maximum!number!of!non\ replicable!custom!objects! 400,000! Object(Type(Definitions( The!maximum!number!of! business!object!definitions! (system!and!custom!objects)! allowed! 300! Replicable(Custom(Objects( The!maximum!number!of! replicable!custom!objects! 400,000! Inventory( Product(Inventory(Lists( The!maximum!number!of! inventory!lists! 3,000! Product(Inventory(Records( Quota!limits!for!a!product! inventory!record! 30,000,000! Marketing( Coupon(Definitions( The!maximum!number!of!coupon! 1,500! definitions!(coupon!groups)! Source(Code(Groups( The!maximum!number!of!source! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! 5,000! July!2015!Page!63! ! ! code!groups! Price( Scaled(Prices(per(Product(Price( Table( Each!price!entry!allows!up!to!a! 20! maximum!number!of!scaled! entries!(for!bulk!discount!pricing)! Private(Keys(and(Certificates( Private(Keys(and(Certificates( The!maximum!number!of!Private! Keys!and!Certificate!entries!for!a! site! 30! Private(Keys(with(insufficient( key(size( The!maximum!number!of!Private! Keys!which!have!an!insufficient! key!size!(less!than!1024!bits!for! RSA!keys)! 0! Redirect(URLs( Redirect(URLs( The!maximum!number!of!redirect! 25,000! URL!records! Sites( Sites( The!maximum!number!of!sites!in! an!instance! 100! ! Lesson(6.3:(Mobile(Best(Practices( There!are!three!different!mobile!approaches:!!mobile!site,!mobile!app,!and!responsive!design.!!This! module!will!not!cover!the!strategic!differences!between!the!different!approaches!but!instead!will!focus! on!implementation!best!practices!and!considerations!for!mobile!site!and!responsive!design.! ! Mobile(Site( For!implementations!that!will!pursue!a!separate!mobile!storefront,!Demandware!offers!a!mobile! cartridge.!!The!cartridge!allows!for!user!agent!detection!that!then!triggers!mobile!pipelines.!!The! mobile!cartridge!leverages!mobile!specific!pipelines,!templates,!and!scripts.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!64! ! ! Mobile!cartridge!location:!!https://xchange.demandware.com/docs/DOC\16944! ! In!addition!to!the!mobile!cartridge,!the!site!alias!will!need!to!be!updated!to!handle!the!user!agent! detection!and!map!to!the!mobile!host!and!the!mobile!pipeline.!!For!example:! "m.mybrand.com": [ { "pipeline": "mHome-Show" } ], "www.mybrand.com": [ { "if-agent-contains": ["iphone", "ipod", "android"], "host": "m.mybrand.com" } ] ! Responsive(Design( For!implementations!that!pursue!responsive!design!there!are!several!considerations!that!should!be! fully!incorporated!into!the!design!approach.!!Project!documentation!should!clearly!depict!how!the!site! will!change!at!each!of!the!defined!break!points.! ! Responsive!break!points:!!These!are!the!defined!viewport!sizes!that!cause!the!responsive!template!to! change.!!Common!break!points!include,!but!are!not!limited!to:!!1280px,!1024px,!768px,!320px.!!Each! responsive!break!point!should!become!part!of!the!design.! ! Page!weight:!!With!responsive,!desktop!pages!alter!at!their!various!break!points!but!deliver!much!of! the!same!content!as!the!desktop!version.!!This!includes!media!like!images.!!This!is!another!reason!why! images!need!to!be!web!optimized!and!as!light!as!possible!so!they!render!quickly!over!cellular!networks.!! Remember,!just!because!an!image!is!not!displayed!to!the!user!at!a!mobile!break!point!doesn’t!mean! that!it!isn’t!requested!from!the!server.! ! Interaction!models:!!Interaction!models!on!the!desktop!do!not!always!translate!well!to!mobile!devices.!! As!a!result!it!is!important!to!avoid!the!use!of!popup!windows,!modals,!and!hover!states!at!mobile! breakpoints.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!65! ! ! Mobile(Approach(Tradeoffs( ! ! Lesson(6.4:(International(Best(Practices( Internationalization!is!a!strength!of!the!Demandware!platform.!Demandware!provides!a!solution!to! satisfy!local!requirements:! • Local!product!assortment!with!specific!country!pricing!&!marketing! • Content!in!native!languages! • Country!specific!features!(e.g.!payment!methods)! In!this!section,!we!will!see!how!to!use!Demandware!capabilities!related!to!multi\country,!multi\ language!and!multi\currency!in!order!to!build!a!strong!international!strategy.! ( Project(Methodology(&(organization( Globally,!an!international!rollout!project!is!built!through!4!main!steps:! • Planning:!to!define!goals,!understand!culture,!build!operations,!identify!risks!&!payment! methods,!and!take!into!consideration!the!local!legal!situation! • Elaboration:!to!check!infrastructure,!define!a!lead!site,!setup!site!structure!&!data! • Build:!to!translate!content!and!add!countries! • Configuration:!to!prepare!site!in!Business!Manager,!build!SEO!strategy!and!test! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!66! ! ! Internationalization(strategy! Your!internationalization!strategy!will!make!you!choose!from!several!different!approaches,!each!with! advantages!&!disadvantages:! ! • Option!1!=!single!international!site! o Build!1!unique!storefront!to!address!all!your!targeted!countries! www! ! ! ! • Option!2!=!group!sites! o Group!some!countries!together!(based!on!shared!currencies!or!legal!requirements!or! language)!and!you!build!several!sites!to!address!all!your!targeted!countries! www! ! www! ! ! ! • Option!3!=!1!site!for!each!country! o Each!targeted!country!has!its!own!website! www! www! www! www! ! ! ! ! ! ! As!we!said!before,!there!is!no!“best”!approach,!it!will!depend!on!your!context!and!constraints.!In!the! table!below,!we!give!some!information!to!help!determine!the!“best”!choice!for!your!needs:! ! ! OPTION!1!:!Single! International!Site! OPTION!2!:!Group!Sites! OPTION!3!:!1!Site!per!Country! Number!of!sites! 1! <!number!of!countries! (Clustered!by!currency! for!ex)! =!number!of!countries! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!67! ! ! ! OPTION!1!:!Single! International!Site! OPTION!2!:!Group!Sites! OPTION!3!:!1!Site!per!Country! Number!of!catalogs! 2! =!number!of!currency! groups!+!1! =!number!of!countries!+!1! Number!of! pricebooks! 1!by!currency! 1!by!currency!or!locale! 1!by!currency!or!locale! Complexity!of! management!in! Business!Manager! LOW! MEDIUM! HIGH! Flexibility!to!address! country!&!business! specifics! LOW! MEDIUM! HIGH! Complexity!in! organizational! management! LOW! Navigation! 1!navigation! Availability! Customization!is!required!to! serve!localized!experience! completely!customized!per!site! MEDIUM! 1!team!can!manage!all! countries!in!the!single!site! • • Limited!to!3000! inventory!list! All!products!are! available!for!all! countries! HIGH! Recommended!to!have!1!team!by! site!(=country)! Each!grouped!site!has!its! own!navigation! Limited!to!3000! inventory!list!by!site! Each!site!has!its!own!navigation! • • • Limited!to!3000! inventory!list!by!site! possible!to!un\/assign! products!to!specific! sites!! ! non\localized!attributes! like!Product!Photo!or! Refinement! Assignments!can!be! different!across! countries! Search!tuning! Can!be!localized! Can!be!localized.! ! But!regarding!analytics,!All!metrics!are!aggregated!per! Site,!so!no!country!breakdown!is!provided!out!of!the!box.! ! ! Analytics!are!available!by!site.( Merchandising! Generally!global!across!all! sites.!! Independent!per!site.!! It!is!possible!to!create!rules! for!Dynamic!Customer! Groups!based!on!the!selected! Best!compromise! between!pros!&!cons!of! options!1!&!3! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! If!Promotions!should!be!run!in! several!countries,!they!need!to!be! copied.!Import/Export!functions!of! Business!Manager!can!be!used!for! July!2015!Page!68! ! ! ! OPTION!1!:!Single! International!Site! OPTION!2!:!Group!Sites! Locale.!With!that!approach!all! elements!of!Campaigns! (Promotions,!Content!Slots,! Pricebooks,!Sorting!Rules)!can! be!localized!based!on!the! selected!Locale!or!identify!IP! Location.! Content! 1!Content!Library! ! AB!Test! Per!default!an!AB\Test!will! cover!all!countries.!If!you!set! a!Dynamic!Customer!Group! as!qualifier!you!can!fine\tune! the!scope!to!one!or!only! several!countries.!! OPTION!3!:!1!Site!per!Country! this.! ! 1!Content!Library!by!site! (=“cluster”)! Each!Site!comes!with!an!own! Content!Library.!With!Release!14.4! Demandware!added!a!shared!Library! across!sites!on!top.!So!it!is!easy!to! share!Contents!across!several!sites.! ! ! AB!Test!by!«!cluster!»! AB\Tests!are!Site!specific.!There!is! currently!no!possibility!to!run!a!single! AB\Test!across!multiple!Sites.!! ! ! ! ! ! In!order!to!select!an!option,!you!will!have!to!consider:! • Complexity!of!management!in!Business!Manager:!!Is!the!choice!manageable!by!business!teams! accountable!for!countries?!Do!the!needs!align!with!standard!Demandware!features!and!tools?!! • Flexibility!to!address!country!&!business!specifics:!Is!it!easy!to!reach!local!goals!and!needs!(for! example!specific!content!for!German!site)?!Is!the!strategy!compliant!with!differences!across! different!countries!(for!example!a!specific!payment!method!for!1!country,!different!sales! periods!etc.)?! • !Complexity!in!organizational!management:!!Does!the!strategy!bring!consequences!into!the! organization?!Is!there!a!need!to!ramp!up!specific!people!and!skills?!Is!the!change!management! realistic?! ! International(Content( For!content,!you!can!create!2!types!of!Libraries:!“Shared”!or!“Private”.!!For!shared!libraries,!content! can!be!shared!across!multiple!sites.!For!private!libraries,!access!is!limited!to!a!single!site.!Each!site!has!a! “site!library”!this!can!be!either!shared!or!private.!!The!site!library!cannot!be!deleted.! ! Search(Engine(Optimization(and(Domains( Internationalization!strategy!must!take!into!consideration!SEO!aspects:! • Careful!attention!should!be!paid!to!the!choice!of!domain!type.!There!are!both!operational!and! SEO!pros!and!cons!to!each.!For!SEO,!specific!geotargeting!steps!are!necessary!at!launch!for!the! international!site!to!be!recognized!and!displayed!in!country!specific!search!engines.!! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!69! ! ! Especially!within!the!former!Commonwealth!with!.co\Domain!(like!.co.uk!for!United!Kingdom)! TLD!it!is!very!common!to!use!.com!sites.!We!recommend!holding!all!local!TLDs!and!redirecting! them!to!subdomains!which!are!primarily!used!for!business.!! o Example:!Redirect!www.brand.de!to!http://de.brand.com!and!operate!from!there.!! • For!all!branded!material!like!package,!printings!etc.!you!can!use!the!unified!brand.com.!In! addition:!A!single!.com\Domain!helps!you!to!achieve!better!SEO!scores!as!all!contents!are! summed!up!in!their!weighting.!! • Since!14.2!it!is!possible!to!host!multiple!Sites!on!a!shared!Hostname.!! More!details!here:!https://xchange.demandware.com/docs/DOC\16208! • Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!70! ! ! Asia/Pacific( Demandware!offers!clients!a!direct!entry!method!to!operating!a!site!in!China!with!the!“China!Site! Acceleration!Service”!(CSAS)!and!the!dedicated!POD!hosted!in!Hong!Kong.!! ! CSAS!offers!an!ICP!BeiAn!(Filing)!&!China!CDN:! • Getting!a!valid!ICP!BeiAn!(Filing)!is!your!website’s!ticket!to!guaranteed!online!visibility!in!China! • Clients!have!to!sign!up!for!this!registration!with!help!of!local!Partners!like!Akamai! • Akamai!accelerates!your!Site!in!China!by!caching!static!content!locally! ! Local!hosting!through!Hong!Kong!POD!brings!minimum!response!times!&!fast!page!loads.!What!is!more,! scheduled!maintenance!windows!on!that!POD!are!optimized!to!business!use!in!APAC.! ! As!a!solution!strategist,!you!must!be!aware!of!functional!specificities!of!APAC!countries.!Examples!are:! ! In!China! o Language!used!into!storefronts!is!“Chinese!simplified”,!and!base!currency!used!is!RMB!! o Most!popular!payment!methods!are!Alipay!(Standard!Alipay!account,!Direct!bank! payment,!Quick!pay),!Tenpay!and!UnionPay.!Integration!payment!and!refunds!are!key! subject!during!solution!design.!! o Most!popular!shipping!method!is!COD!(Cash!on!delivery)!and!need!an!integration!with! Kuaidi100!to!get!shipping!status.!! o Any!code!and!reference!to!Facebook!and!Twitter!must!be!removed!from!the!storefront,! else!there!is!a!risk!to!have!a!completely!inaccessible!website.! o Chinese!social!networks!must!be!considerated:!Sina!Weibo,!Kaixin,!QQ!Zone,!Douban.! Single!Sign!On!with!Sina!Weibo!is!possible.! o Concept!of!“Billing!address”!in!China!does!not!exist,!so!checkout!&!user!account! Pipelines!and!emails!must!be!adapted!accordingly.! o All!maps!(for!example!for!store!locator)!cannot!be!implemented!through!Google!Map:! use!“Baidu!map”!as!an!alternative.! • In!Japan! o Language!used!is!Japonese,!and!base!currency!is!JPY!(Display!1,000 !or!¥!1,000).! Encoding!should!be!UTF\8!for!both!front\office!display!and!database.!! o Product!prices!are!input!by!admin!excluding!taxes.!The!taxes!needs!to!be!added!when! displaying!products!(5%).! o Most!popular!shipping!method!is!COD!(Cash!on!delivery).! o Customers!should!be!able!to!choose!the!time!they!want!to!be!delivered.! o Mix!of!social!networks!has!to!be!considered.! All!that!specificities!have!impacts!into!specifications,!wireframes,!use!cases!and!business!rules!into! storefront.! • ( ( Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!71! ! ! Deployment(strategy( To!build!your!“deployment!strategy”,!you!have!to!understand:! • Point!of!Delivery!(POD):!collection!of!computing,!networking,!and!storage!services!that!combine! to!host!a!multi\tenant!SaaS!application.!List!of!available!PODs!(with!location!&!timezone):( https://xchange.demandware.com/docs/DOCX6431! • «!REALM!»!describes!aggregation!of!services!(hardware!&!software)!that!Demandware!provides! for!your!storefront.!A!Realm!allows!for!the!deployment!of!sites!serving!multiple!brands,! geographic!regions!and/or!business!entities.!A!Realm!is!served!from!a!specific!POD!located!in!a! single!data\center! o 1!REALM=production!+!staging!+!dev(QA)!+!sandboxes!(5!by!default)! ! Your!websites!will!be!automatically!affect!into!a!POD.!Geographical!proximity!between!customers!and! POD!can!affect!storefront!performance!(response!time).!As!an!example,!to!reach!the!APAC!market!and! in!order!to!optimize!performance!(behind!“Great!Chinese!Firewall”),!DW!offers!a!POD!localized!directly! in!Asia.! ! In!a!single!Realm,!sites!have!an!inherent!relationship!for!data!replication,!code!deployment!and!user! administration:! • Shared!Objects:!Inventory!|!Pricing!|!Products!&!Product!Photography!|!Custom!Code!|! Customers*!|!Content!Assets*! • Site!Specific!Objects:!Content!Slots!|!Orders!|!Promotions!|!Site!Preferences/Configurations! ! Local!hosting!can!bring!Faster!Site!Performance!especially!in!the!Checkout!process!(https),!Local! Maintenance!Windows!(no!scheduled!interruptions!during!business!peak!times)!and!Independent!Job! Schedule!(e.g.!configures!job!starts!for!Product!Imports,!Price!&!Inventory!Updates,!etc.!according!to! local!night!times).!! ! Because!objects!can!be!shared!across!all!sites!within!a!Realm,!a!business!is!able!to!streamline! merchandising,!development,!QA,!support!and!maintenance!for!all!of!those!sites.!!This!streamlining! creates!significant!efficiencies!and!scalability.!!! • Sites!within!a!Realm!generally!share!a!merchandising!team!or!the!teams!work!collaboratively!on! schedules,!processes!and!priorities.! • Sites!within!a!Realm!generally!share!an!admin,!development!and/or!operations!team.!!Code,! jobs,!processes!and!functionality!need!to!be!scheduled,!prioritized!and!configured!in!such!a!way! to!address!the!needs!of!all!the!sites!within!the!Realm.!!Creating!individual!controls!at!the!site! level!in!these!areas!is!nearly!impossible!within!a!Realm!due!to!the!inherent!sharing!that!is! architected!within!the!sites!in!a!Realm.! NOTE:!this!sharing!does!not!limit!differentiation!of!sites!within!a!Realm!but!does!limit!the!business! processes!and!operating!models!of!the!sites!within!a!single!Realm.! ! At!the!end,!choosing!between!a!single!versus!multiple!REALM!into!your!internationalization!strategy! will!remains!to!choose!between!efficiency!and!control!as!sum\up!in!the!table!below:! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!72! ! ! SINGLE(REALM((Efficiency)( MULTIPLE(REALMS((Control)( Single!Partner!or!Development!Team! Multiple!Partners!or!Development!Teams! Common!Code!and!Release!Schedule! Divergent!Code!and!Release!Schedule! Shared!Merchandising!Practices!(common!view)!Across!Sites! Divergent!Merchandising!Practices!Between!sites! Shared!Support!&!Maintenance!Team!and!Schedule! Divergent!Support!&!Maintenance!Team!and!Schedule! Common!Project!Prioritization!&!Resourcing! Silo’d!Project!Prioritization!&!Resourcing! Shared!User!Rights!Management!! Silo’d!User!Rights!Management! ( Languages( «!Localize!»!vs!«!translate!»:!Do!not!just!translate!words!into!your!storefront,!use!real!knowledge!into! targeted!languages!to!ensure!a!localized!website!experience!for!your!customers!(with!common! expressions,!language!use!and!proper!spelling!to!protect!SEO).! !! In!order!to!localize!text!and!data,!use!localizable!capabilities!within!Business!Manager:! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! ! July!2015!Page!73! ! ! In!Business!Manager,!all!parameters!prefixed!with are!localizable,!i.e.!give!a!specific!value!for!a! given!locale.!In!the!same!way,!all!parameters!prefixed!with! are!not!localizable.!!It!is!highly!important! to!populate!data!in!the!‘default’!locale!for!the!site!and!possibly!the!organization!as!well.! ! The!Demandware!platform!has!built\in!fallback!logic!to!determine!the!content!to!display!to!the! storefront:! 1. Display!the!localized!file!(if!available)! 2. If!no!localized!file!exists,!show!the!site!‘default’!locale! 3. If!no!site!‘default’!file!exists,!show!the!organization!‘default’!locale! !! For!example:! • Site!default!locale!is!set!to!‘default’! • Included!site!locales!are!‘en_CA’,!‘fr_CA’,!‘default’! • Organizational!default!locale!is!set!to!‘en_CA’! • System!recognizes!that!the!customer!should!be!presented!with!localized!‘fr_CA’!content! however!the!system!does!not!find!the!localized!‘fr_CA’!content.!!The!system!then!follows!this! logic:! • If!no!‘fr_CA’!file,!look!for!a!‘default’!file! • If!no!‘default’!file,!look!for!a!‘en_CA’!file! ! Reference:!https://info.demandware.com/DOC1/topic/help/Localization/Localization.html ! ! ( Site>(Site(Preferences(>(Locales:! ! ! ( Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!74! ! ! Business!Manager!Path:((Administration(>(Organization(>(Organization(Profile(>(Default(Language:( ! ! ! ! In!Business!Manager,!“Stemmers”!must!be!declared!with!the!appropriate!language!for!each!index:!this! will!ensure!the!best!performance!for!the!search!&!navigation!engine!regarding!each!locale/language! considered!across!your!site(s).! ! ! Business!Manager!Path:!!Search(>(Search(Indexes(>(Product(Index((for(selected(locale)! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! ! July!2015!Page!75! ! ! ! Some!parts!of!your!templates!are!not!driven!by!Business!Manager,!in!that!case!make!sure!that!all!static! text!and!messages!hard\coded!into!templates!are!done!through!the!use!of!a!localized!resource!bundle! ! Also,!be!aware!that!static!images!are!also!localized:! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! ! July!2015!Page!76! ! ! ! Knowledge(Check( 1. Which!requirement!is!best!satisfied!through!use!of!a!content!slot?! a. The!client!needs!to!be!able!to!control!the!content!in!a!particular!area!of!the!site.! b. The!client!needs!to!be!able!to!test,!target,!and!schedule!the!content!in!a!particular!area!of!the! site.! c. The!system!should!display!defined!content!without!client!intervention.! 2. Which!of!the!following!are!ways!to!improve!site!performance?!!Check!all!that!apply.! ! Restrict!the!number!of!content!slots!on!a!single!page! ! Sprite!images! ! Minify!JavaScript! ! Combine!CSS!files! ! Optimize!image!format!and!sizing!for!the!web! ! Restrict!the!use!of!custom!attributes! ! ! 3. Demandware!best!practice!for!catalog!setup!is:! a. Shared!master!and!storefront!catalog! b. Separate!master!catalog!and!storefront!catalog! c. One!catalog!for!each!site! d. An!“on”!catalog!and!an!“off”!catalog! ! 4. Which!of!the!following!describe!the!purpose!of!a!data!model?!!Check!all!that!apply.! ! The!data!model!maps!the!association!between!systems!and!the!data! necessary!for!the!storefront.! ! The!data!model!helps!uncover!gaps!between!the!data!being!sent!and!the! data!exposed!on!the!storefront.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!77! ! ! ! The!data!model!should!not!leverage!custom!attributes!when!system! attributes!are!available.! ! The!data!model!helps!expose!the!degree!of!manual!data!management!that! a!client!will!need!to!take!on.! ! The!data!model!shows!the!types!of!attributes!and!data!for!each!object.! ! 5. Data!replicates:! a. From!development!to!staging!and!then!to!production! b. From!development!to!staging!and!production! c. From!staging!to!production! d. From!staging!to!development!and!production! e. From!staging!to!development!and!then!to!production! ! 6. A!client!can!override!SEO!Meta!Data!for!which!of!the!following!page!types?!!Check!all!that!apply.! ! Home! ! Category! ! Product! ! Content! ! Pipeline! ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!78! ! ! Knowledge(Check(Answers( 1. Which!requirement!is!best!satisfied!through!use!of!a!content!slot?! a. The!client!needs!to!be!able!to!control!the!content!in!a!particular!area!of!the!site.! b. The!client!needs!to!be!able!to!test,!target,!and!schedule!the!content!in!a!particular!area!of!the! site.! c. The!system!should!display!defined!content!without!client!intervention.! Answer:(b( 2. Which!of!the!following!are!ways!to!improve!site!performance?! x! Restrict!the!number!of!content!slots!on!a!single!page! x! Sprite!images! x! Minify!JavaScript! x! Combine!CSS!files! x! Optimize!image!format!and!sizing!for!the!web! ! Restrict!the!use!of!custom!attributes! ! ! 3. Demandware!best!practice!for!catalog!setup!is:! a. Shared!master!and!storefront!catalog! b. Separate!master!catalog!and!storefront!catalog! c. One!catalog!for!each!site! d. An!“on”!catalog!and!an!“off”!catalog! Answer:(b( ! 4. Which!of!the!following!describe!the!purpose!of!a!data!model?!!Check!all!that!apply.! x! The!data!model!maps!the!association!between!systems!and!the!data! necessary!for!the!storefront.! x! The!data!model!helps!uncover!gaps!between!the!data!being!sent!and!the! data!exposed!on!the!storefront.! ! The!data!model!should!not!leverage!custom!attributes!when!system! attributes!are!available.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!79! ! ! x! The!data!model!helps!expose!the!degree!of!manual!data!management!that! a!client!will!need!to!take!on.! ! The!data!model!shows!the!types!of!attributes!and!data!for!each!object.! ! 5. Data!replicates:! a. From!development!to!staging!and!then!to!production! b. From!development!to!staging!and!production! c. From!staging!to!production! d. From!staging!to!development!and!production! e. From!staging!to!development!and!then!to!production! Answer:(d( ! 6. A!client!can!override!SEO!Meta!Data!for!which!of!the!following!page!types?!!Check!all!that!apply.! X! Home! X! Category! X! Product! X! Content! ! Pipeline! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!80! ! ! Module(7:((Platform(Customization( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! Identify!deviations!from!Demandware!Site!Genesis!and!advise!on!the!feasibility!of!those! deviations!within!the!platform's!technology!constraints! ! Lesson(7.1:(Common(Deviations(from(SiteGenesis( Sometimes,!Demandware’s!default!SiteGenesis!functionality!does!not!always!meet!the!need!of!the! client.!This!is!not!a!weakness,!but!speaks!more!to!the!scale!and!scope!of!clients!we!serve.! ! Demandware!offers!a!fully!customizable,!extendable!platform,!to!meet!the!varying!requirements!of! each!client.!!Requirements!vary!greatly!depending!on!vertical,!locale,!strategy,!scale!and!so!on.! ! As!we!have!previously!discussed,!the!appropriateness!of!a!customization!should!be!measured!against! the!platform,!the!client!and!the!technology!constraints.!!Just!because!we!can!technically!perform!a! customization!it!does!not!mean!we!always!should.!!Just!because!we!did!a!customization!for!one!client! does!not!mean!the!same!customization!is!portable!and!should!be!applied!to!the!next!client.! ! ! Discussion:(Common(Deviations(from(SiteGenesis( Customization(Description( Methodology( Control(the(category(refinement(like(the( show(in(menu(navigation(flag( Use!a!boolean!attribute!that!controls!if! that!category!should!show!in!left! navigation! Automatically(default(the(cart(to(the( default(shipping(method(( Shipping!cost!(and!any!shipping! promotions)!are!displayed!at!the!cart!level! rather!than!on!the!shipping!page!in! checkout.! Breakout(of(sale(variants(and(full(price( variants(on(the(PDP( This!is!a!popular,!but!overlooked,! customization!for!apparel!clients.!!This! customization!visually!separates!SKUs!that! are!discounted!from!SKUs!that!are!full! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!81! ! ! price!by!visually!placing!colors!into!two! different!buckets!on!the!PDP.! Homepage(Carousel(Timer(Site(Preference( Some!clients!may!have!the!need!to!control! or(Slot(Attribute( the!speed!at!which!the!homepage!carousel! rotates.!!This!can!be!achieved!through!a! custom!site!preference!or!a!custom! attribute!on!the!content!slot!object.! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!82! ! ! Module(8:(Solution(Strategist(Launch(Readiness(Analysis( Learning(Objectives( At!the!end!of!this!module,!you!will!be!able!to! ! Determine!if!the!Storefront!has!met!the!documented!requirements! ! Perform!a!final!review!of!Business!Manager!to!ensure!launch!critical!items!have!been! completed! Lesson(8.1:(Requirements(Applied(Workshop( Overview( ! In!this!lesson!a!set!of!business!requirements!are!supplied!along!with!the!corresponding!FSD!depicting! the!end!state!solution.!!The!goal!is!to!determine!if!the!end!state!solution!has!met!the!requirements.!!If! it!has!not!met!the!requirements,!you!will!need!to!explain!why.! Business(Requirements( 1. Authentication! 1.1. The!system!shall!allow!the!user!to!create/login!to!their!account! 1.2. The!system!shall!allow!the!user!to!log!out!of!their!account! 2. Header! 2.1. The!system!shall!allow!the!user!to!create!and!manage!gift!registry! 2.2. The!system!shall!allow!the!user!to!create!and!manage!wish!list! 2.3. The!system!shall!allow!the!user!to!access!the!store!locator! 2.4. The!system!shall!provide!the!user!with!help!content! 2.5. The!system!shall!allow!the!business!user!the!ability!to!display!promotional!content! 2.6. The!system!shall!allow!the!business!user!the!ability!to!change!the!company!logo! 3. Global!navigation! 3.1. The!system!shall!display!three!levels!of!storefront!navigation! 3.2. The!system!shall!allow!the!business!user!the!ability!to!display!the!drop!navigation!in!a! horizontal!format!or!a!vertical!format! 3.3. The!system!shall!allow!the!business!user!the!ability!to!change!content!in!the!navigation! through!the!use!of!a!category!attribute! 3.4. The!system!shall!allow!the!business!user!the!ability!to!sequence!the!categories! 3.5. The!system!shall!allow!the!user!the!ability!to!perform!keyword!searches! 4. Homepage! 4.1. The!system!shall!allow!the!business!user!the!ability!to!change!all!content!on!the!homepage! through!the!use!of!content!slots! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!83! ! ! 5. Footer! 5.1. The!system!shall!allow!the!user!the!ability!to!signup!for!the!company!newsletter! 5.2. The!system!shall!allow!the!business!user!the!ability!to!change!footer!links!through!the!use!of! content!assets! 6. Category!listing!page! 6.1. The!system!shall!display!products!in!a!grid!format!and!infinitely!scroll! 6.2. The!system!shall!display!a!breadcrumb!showing!the!user!path!and!shall!exclude!“Home”!from! the!path! 7. Product!tile! 7.1. The!system!shall!display!the!product!image! 7.2. The!system!shall!display!a!quickview!link!when!the!user!mouses\over!the!product!image! 7.3. The!system!shall!display!pricing!(standard!pricing,!was/is!pricing,!price!range)! 7.4. The!system!shall!display!star!rating! 7.5. The!system!shall!display!color!swatches! 7.6. The!system!shall!give!the!user!the!ability!to!compare!products!within!the!same!classification! category! 8. Quickview! 8.1. The!system!shall!display!the!product!image! 8.2. The!system!shall!display!the!alternate!views!of!the!product! 8.3. The!system!shall!display!the!product!name! 8.4. The!system!shall!display!the!product!ID! 8.5. The!system!shall!display!the!product!price! 8.6. The!system!shall!display!the!product!color!if!available! 8.7. The!system!shall!display!the!product!size!if!available! 8.8. The!system!shall!display!a!link!to!the!size!chart!if!available! 8.9. The!system!shall!give!the!user!the!ability!to!input!a!desired!quantity!to!cart! 8.10. The!system!shall!present!an!add!to!cart!button!that!activates!once!all!required!user! selections!have!been!made,!else!it!is!disabled! 8.11. The!system!shall!present!social!icons! 8.12. The!system!shall!present!an!option!to!email!to!a!friend! 8.13. The!system!shall!present!the!user!an!option!to!dismiss!the!quickview! 8.14. The!system!shall!present!the!user!with!an!option!to!see!full!details! 9. Product!Detail!Page! 9.1. The!system!shall!display!material!information! 9.2. The!system!shall!display!product!recommendations! 9.3. The!system!shall!display!product!ratings!and!reviews! 9.4. The!system!shall!display!social!icons! 10. Search!results! 10.1. The!system!shall!present!both!product!and!content!relevant!to!the!keyword!search! 10.2. The!system!shall!present!business!user!defined!search!refinements! 11. Cart! 11.1. The!system!shall!present!the!carted!items! 11.2. The!system!shall!allow!the!user!the!ability!to!edit!the!item!carted!including!the!quantity! 11.3. The!system!shall!allow!the!user!to!enter!and!apply!a!coupon!code! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!84! ! ! 11.4. The!system!shall!allow!the!user!to!checkout!as!a!guest! 12. Checkout!–!Billing! 12.1. The!system!shall!allow!the!user!the!ability!to!pay!with!credit!card! 12.2. The!system!shall!allow!the!user!the!ability!to!pay!with!Bill!Me!Later! 12.3. The!system!shall!allow!the!user!the!ability!to!pay!with!PayPal! 13. Checkout!–!Order!Confirmation! 13.1. The!system!shall!display!the!order!details! 13.2. The!system!shall!display!an!option!for!the!user!to!create!an!account! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!85! ! ! Header& 1.!!The!company!logo! 2.!!Utility!links! • • • • • ! • Login!–!takes!the!user!to!the! login/register!screen! Register!–!takes!the!user!to!the! login/register!screen! Wish!List!–!Takes!the!user!to! the!wishlist!screen! Gift!Registry!–!Takes!the!user! to!the!gift!registry!screen! Store!Locator!–!Takes!the!user! to!the!store!locator!screen! & Help!–!Takes!the!user!to!the! CustomerNServiceNStart! pipeline!start!node! 3.!!Content!slot;!headerNpromoNbanner! Solution!Strategy!Certification!©!Demandware,!Inc.! ! July!2015!Page!86! ! ! Footer& 1.!!Newsletter!signup! 2.!!Footer!Links!content!asset;! footerNlinks! 3.!!Social!icons! ! Global&Navigation& 1.!!Global!navigation;!follows! Business!Manager!sequencing! 2.!!SubNnavigation;!follows! Business!Manager!sequencing! 3.!!Category!attribute;! headerMenuBanner! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!87! ! ! & Homepage& 1.!!Content!slot;!homeNmain! 2.!!Content!slot;!homeNleft! 3.!!Fixed!shipping!banner! 4.!!Content!slot,!homeNright! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! ! July!2015!Page!88! ! ! Product&Listing&Page& ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!89! ! ! Product&Tile& ! Quickview& ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!90! ! ! Product&Detail&Page& ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!91! ! ! Search&Results& ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!92! ! ! Cart& ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!93! ! ! Checkout&B&Billing& ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!94! ! ! Checkout&B&Order&Confirmation& ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!95! ! ! My&Account&B&Landing& ! ! ! ! ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!96! ! ! My&Account&B&Addresses& ! ! ! ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!97! ! ! My&Account&–&Create&Account& ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!98! ! ! Knowledge)Check)Answers) ! Header! • • Log!out!option!is!missing! The!annotation!for!the!logo!does!not!indicate!how!the!logo!will!be!delivered!to!the!storefront! Footer! • • • Submit!button!missing!for!newsletter!signup! Footer!links!are!hardcoded!and!should!be!dynamic! Social!icons!are!not!annotated.!!Annotations!should!account!for!what!happens!when!the!icons! are!clicked.! Global!Navigation! • No!issues!between!the!requirements!and!the!visual!comps.! Product!Listing!Page! • • Comp!shows!pagination!but!requirement!is!looking!for!infinite!scroll! Breadcrumb!shows!the!‘Home’!in!the!path!but!the!requirements!call!for!‘Home’!to!be!removed! Product!Tile! • The!main!issue!here!is!that!there!is!only!one!representation!of!the!product!tile.!!The!tile!should! have!many!representations!to!account!for!the!various!supported!data!states!of!the!product.!! For!example,!there!should!be!a!different!representation!of!the!tile!for!each!different!pricing! state!(regular!price,!price!range,!was/is!pricing).! Quickview! • Missing!a!link!to!see!the!full!set!of!product!details! Product!Detail!Page! • • Material!data!is!missing! Product!recommendations!are!missing! Search!Results! • • Product!and!articles!are!found!but!only!products!are!displayed! The!search!has!been!refined!but!there!is!no!method!to!clear!the!refinements! Cart! • • • Quantity!selector!is!missing! Guest!checkout!is!missing!(notice,!the!checkout!button!is!disabled!and!options!are!only! presented!to!login!or!register)! A!coupon!code!has!been!applied!however!there!is!no!coupon!entry!field! Checkout!–!Billing! Solution!Strategy!Certification!©!Demandware,!Inc.! ! July!2015!Page!99! ! ! • • • Bill!Me!Later!and!Paypal!are!missing! Security!code!for!credit!card!is!missing! Cross!sells!have!been!added!to!the!page.!!They!are!not!called!for!in!the!requirements!and! adding!cross!sells!in!the!checkout!funnel!is!a!bad!practice!leading!to!increased!checkout! abandonment.! Checkout!–!Order!Confirmation! • Requirements!call!for!guest!checkout!registration!on!this!page.!!The!module!is!missing.! My!Account!–!Landing! • Wish!list!and!gift!registry!is!missing! My!Account!–!Addresses! • Missing!the!ability!to!make!one!of!the!addresses!‘Default’! My!Account!–!Create!Account! • The!confirm!email!field!is!missing.!!Not!having!a!confirm!email!field!increases!the!chances!that!a! customer!will!mistype!their!email!address!and!not!have!the!system!catch!it!before!creating!the! account.! ! ! ! ) Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!100! ! ! Lesson)8.2:)Business)Manager)Launch)Review) Business!Manager!needs!to!be!fully!configured!to!support!a!client’s!solution.!!Business!Manager!houses! much!of!the!data!and!configuration!the!storefront!will!reference.!!It!is!critical!to!be!able!to!assess!the! completeness!of!configuration!against!the!documented!solution.! ! Section!of!Business!Manager! Products!&!Catalogs! What!to!look!for! ! Catalogs!contain!a!Master!Catalog!where!the! product!is!owned!and!a!Storefront!Catalog! where!the!product!has!been!assigned.! ! ! The!product!and!category!objects!contain!the! custom!attribution!defined!in!the!data!model.! ! ! The!Storefront!Catalog!root!has!defined!Search! Refinements.! ! ! The!Storefront!Catalog!root!has!a!defined! Sorting!Rule!assigned.! ! ! Unused!SiteGenesis!Category!Attributes!have! been!removed.! ! ! Unused!SiteGenesis!Product!Attributes!have! been!removed.! ! ! Price!Book!has!been!loaded!and!has!also!been! assigned!to!the!Site.! ! ! Search! ! Inventory!List!has!been!loaded!and!has!also! been!assigned!to!the!Site.! Searchable!attributes!have!been!defined! ! ! The!Search!Index!and!Index!Schedule!have! been!properly!set! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!101! ! ! ! Online!Marketing! ! ! Storefront!Sorting!Options!have!been!defined! All!SiteGenesis!campaigns!and!promotions!have! been!removed.! ! ! Ordering! Stores!data!exists!(assuming!client!has!physical! stores).! ! ! Shipping!methods!have!been!setup.! ! Site!URLs! ! ! SiteGenesis!methods!have!been!removed.! URL!Rules!have!been!enabled.! ! ! URL!conflicts!have!been!resolved.! ! ! Character!replacements!have!been!set.! ! ! Pipeline!URL!aliases!have!been!set!for!all! pipelines!accessible!on!the!storefront.! ! ! A!unique!alias!has!been!set!for!each!instance.! ! ! Static!and!Dynamic!Mapping!has!been!setup!to! 301!legacy!URLs!to!the!new!URLs!.! ! ! Site!Preferences! ! Locale!mappings!have!been!set!based!on! documented/developed!locale!requirements.! Locales:!!All!the!necessary!locales!have!been! added.! ! ! Gift!Certificates:!!If!the!client!is!using!online!Gift! Certificates!the!appropriate!client!information! should!be!represented!–!there!should!be!no! mention!of!Demandware.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!102! ! ! ! ! Sequence!Numbers:!!Site!specific!sequence! numbers!are!configured!here.! ! Validate)Products)&)Catalogs)Setup:))Master)&)Storefront)Catalogs) Catalogs!contain!a!Master!Catalog!where!the!product!is!owned!and!a!Storefront!Catalog!where!the! product!has!been!assigned.!!It!is!critical!that!Catalogs!be!setup!with!a!Master!and!a!separate!Storefront! to!allow!for!internationalization!where!products!may!be!shared!to!more!than!one!Storefront!and!so! each!Storefront!can!have!unique!and!independent!navigation/categorization.!!This!can!be!determined! by:! ! Navigate!to:!!Site)>)Products)&)Catalogs)>)Catalogs! • Validate!that!a!master!catalog!and!a!storefront!catalog!have!been!setup! • Validate!that!the!storefront!catalog!has!been!assigned!to!the!Site.! • Validate!that!the!storefront!catalog!Owns!none!of!the!products!and!has!been!assigned! products.! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!103! ! ! ! Validate)Products)&)Catalogs)Setup:))Search)Refinement)&)Sorting)Rule) Search!Refinements!and!Sorting!Rules!are!applied!to!the!storefront!to!enable!customers!to!easily!find! the!product!they!are!looking!for!and!to!enable!the!merchant!to!display!products!in!a!desired!order.!! The!default!Sorting!Rule!is!applied!to!the!Storefront!Catalog!Root.!!The!Search!Refinements!are!also! setup!at!the!Storefront!Catalog!Root.!!Both!Search!Refinements!and!Sorting!Rules!follow!an!inheritance! model!through!the!Storefront!catalog!meaning!that!a!lower!level!of!categorization!inherits!Sorting! Rules!and!Search!Refinements!from!their!parent.!!To!determine!if!a!default!Sorting!Rule!and!Search! Refinements!have!been!setup:! ! Navigate!to:!!Site)>)Products)&)Catalogs)>)Catalogs)>)Storefront)Catalog! • Select:!!Edit! • Select:!!Search)Refinement)Definitions!tab! • Check:!!Confirm!that!Search!Refinements!have!been!setup! ! ! • Select:!!Sorting)Rule! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!104! ! ! • Check:!!Confirm!that!a!default!Sorting!Rule!has!been!assigned! ! ! Validate)Products)&)Catalogs)Setup:))SiteGenesis)Category)&)Product)Object)Attribution) The!category!and!product!objects!contain!attribution!to!support!the!SiteGenesis!Storefront.!!A!custom! solution!will!combine!SiteGenesis!attributes!with!custom!attributes!in!order!to!achieve!the!client’s! desired!storefront.!!Before!a!client!goes!live,!any!unused!SiteGenesis!attributes!should!be!removed! from!Attribute!Groupings!to!streamline!the!category!and!product!management!pages!in!Business! Manager!and!to!reduce!possible!merchant!error!when!setting!up!new!categories!or!products.!! Removing!an!attribute!from!a!grouping!simply!removes!it!from!the!product!page!in!Business!Manager! or!from!the!category!page!in!Business!Manager.!!It!does!not!delete!the!attribute!or!any!values!from!the! database.! ! To!determine!if!unused!SiteGenesis!attributes!have!been!removed,!compare!the!Data!Model! spreadsheet!containing!the!list!of!used!attributes!to!the!Product!and!Category!object!in!Business! Manager.! ! Navigate!to:!!Administration)>)System)Development)>)System)Object)Definitions) • Select:!!Category! • Select:!!Attribute)Grouping! • Select:!!Edit! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!105! ! ! You!can!now!see!the!attributes!in!each!grouping.!!The!groupings!are!represented!on!the!category!and! product!pages!in!Business!Manager.!!If!an!attribute!exists!in!the!grouping!but!not!in!the!data!model! there!is!opportunity!to!clean!up!the!pages.! Validate)Products)&)Catalogs)Setup:))Price)Books) For!the!Storefront!to!show!pricing!a!Price!Book!must!be!properly!setup:! ! Navigate!to:!!Site)>)Products)&)Catalogs)>)Price)Books! • Verify:!!At!least!one!Price!Book!exists! • Verify:!!At!least!one!Price!Book!is!assigned!to!the!Site! • Verify:!!At!least!one!Price!Book!is!activated! ! ! ! ! Often!there!will!be!multiple!Price!Books!and!multiple!price!books!assigned!to!the!Site.!!In!this!setup! there!is!a!list!Price!Book!(usdelisteprices)!and!a!sale!Price!Book!(usdesaleeprices)!and!both!are!active!and! assigned!to!the!Site.!!The!Sale!Prices!are!setup!to!be!based!on!the!List!Prices.!!This!enables!was/is! pricing!(also!referred!to!as!strikeethrough!pricing).! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!106! ! ! In!this!setup!there!is!also!an!employee!Price!Book!that!is!Deactivated!and!not!assigned!to!the!Site.!!This! sort!of!setup!is!appropriate!for!employee!pricing!triggered!from!a!marketing!setup!so!only!employees! get!the!pricing!contained!within!that!Price!Book.! ! Note:!!The!Demandware!platform!will!display!the!lowest!activated!price!for!an!item.! ! Validate)Products)&)Catalogs)Setup:))Inventory)Lists) For!products!to!have!inventory!an!Inventory!List!must!be!properly!setup:! ! Navigate!to:!!Site)>)Products)&)Catalogs)>)Inventory)Lists! • Verify:!!At!least!one!Inventory!List!exists! • Verify:!!One!Inventory!List!has!been!assigned!to!the!Site! ! In!addition!to!validating!that!inventory!lists!have!been!setup!and!assigned!properly,!the!default!inestock! treatment!often!applied!for!testing!purposes!should!be!removed!and!actual!inventory!should!be! applied!to!the!site.! ! Validate)Search)Setup:))Searchable)Attributes) The!search!index!is!comprised!of!data!housed!within!Business!Manager.!!The!Searchable!Attributes! configuration!determines!which!of!those!data!elements,!attributes,!are!set!to!be!part!of!that!index.!!If! no!attributes!were!set!to!be!searchable!the!index!would!contain!no!data!and!all!customer!keyword! searches!would!come!back!with!no!results.!!Therefore,!it!is!important!to!validate!that!Searchable! Attributes!have!been!setup!prior!to!launch.! ! Navigate!to:!!Site)>)Search)>)Searchable)Attributes! • Verify:!!Product)Index)Attributes!have!been!defined! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!107! ! ! • Verify:!!Content)Index)Attributes!have!been!defined!(only!required!if!the!search!results! page!shows!both!product!and!content)! ! ! ! Validate)Search)Setup:))Search)Index)&)Search)Index)Update)Schedule) The!Search!Index!settings!determine!how!the!index!is!rebuilt.!!Demandware!recommends!that!search! indexes(on!the!Production!Instance)!are!rebuilt!on!a!scheduled!basis!once!a!day!and!that!inebetween! scheduled!indexes,!incremental!indexing!occurs!to!support!merchandising!activity.!!Staging!indexes! should!be!set!to!incremental!only.! ! Note:!!The!search!index!is!instance!specific.! ! ! Navigate!to:!!Site)>)Search)>)Search)Indexes! • Verify:!!Incremental)Index)Updates!have!been!checked!for!all!indexes.! Navigate!to:!!Site!>!Search!>!Search!Index!Update!Schedule! • Verify:!!The!index!is!set!to!update!daily!and!is!pending!the!next!automated!run.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!108! ! ! ! Incremental!Indexing!occurs!in!30!second!intervals!when!changes!to!the!indexes!are!detected.!The! following!table!shows!the!data!that!is!updated!by!incremental!indexing.! ! Index) Object)indexed) Details)of)incremental)indexing) ProductIndex Product ContentIndex SynonymIndex Content Asset Synonyms, Hypernyms Search Suggestions Product Inventory Record Active Data record If product attributes, variation assignments, or category assignments are modified, the index is updated. Index updated when modified, added, or deleted. Index updated when modified, added, or deleted. SuggestIndex AvailabilityIndex ActivedataIndex Index updated when modified, added, or deleted. Index updated when modified, added, or deleted. The active data record is usually imported via feed. Changes to products are identified and cause an update to the active data record if the product was modified after the latest rebuild of the active data index. ! The!following!table!shows!data!not!updated!by!incremental!indexing.! Data) Details)of)incremental)indexing) Prices)and)Price)book)site) assignments) Prices!and!price!book!site!assignments!are!not!updated.! Catalogs) Catalog!structure!and!catalog!site!assignments!are!not! updated.! Search)refinement)definitions) Search!refinement!definitions!are!not!updated.! Searchable)attributes) Searchable!attributes!are!not!updated.! Index)settings) Index!settings!are!not!updated.! The search Stemmer should be set to the default language of the Site especially if the site is German or Japanese. To localize Indexes and queries, you must localize the stemmer that is used to process the word stems used for search. Search stemmers identify the meaningful part of a word for a search query. For example, the word computer is stemmed to comput, which allows the search to find computer, computers, or computation. ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!109! ! ! ! Navigate!to:!!Site)>)Search)>)Search)Indexes! • Select:!!Locale!of!the!site!(Default!in!this!example)! • Verify:!!The!stemmer!is!set!to!the!correct!language!for!the!site! Verify)Search)Setup:))Storefront)Sorting)Options) The!merchant!can!define!Sorting!Rules!and!then!configure!those!rules!to!be!exposed!on!the!Storefront! as!a!Storefront!Sorting!option.!!This!only!applies!to!designs!that!enable!a!customer!to!select!a!desired! sort!like:! • Price!High!to!Low! • Price!Low!to!High! • Most!Popular! • Top!Sellers! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!110! ! ! ! Navigate!to:!!Site)>)Search)>)Storefront)Sorting)Options) • Verify:!!Storefront!Sorting!Options!have!been!defined.! ! ! Verify)Online)Marketing)Setup:))Campaigns)&)Promotions) The!client!will!determine!appropriate!campaigns!and!promotions!to!launch!with.!!SiteGenesis!has! campaigns!and!promotions!that!are!setup!out!of!the!box!to!demonstrate!the!Online!Marketing! capabilities!of!the!platform.!!If!the!client!is!not!using!these!promotions!they!should!be!removed.! ! Navigate!to:!!Site)>)Online)Marketing)>)Campaigns! • Verify:!!Only!the!campaigns!the!client!is!using!are!in!this!section.! Navigate!to:!!Site)>)Online)Marketing)>)Promotions! • Verify:!!Only!the!promotions!the!client!is!using!are!in!this!section.! Verify)Online)Marketing)Setup:))Stores) If!the!client!has!a!physical!presence!they!will!most!likely!use!the!Stores!Object!to!house!data!about! each!store!and!drive!the!Store!Locator!functionality!on!the!Storefront.!!Ensure!the!stores!table!has! complete!data:! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!111! ! ! ! Navigate!to:!!Site)>)Online)Marketing)>)Stores! • Select:!!Find! • Verify:!!The!resulting!set!of!stores!matches!the!number!of!stores!expected!to!be!returned.! ! ! Verify)Ordering)Setup:))Shipping)Methods) The!Shipping!Methods!section!of!Business!Manager!defines!the!methods!a!customer!can!select!on!the! Storefront!and!the!corresponding!costs,!restrictions,!and!surcharges.!!Client!specific!methods!should!be! setup!and!any!remaining!SiteGenesis!Methods!should!be!removed.! ! Navigate!to:!!Site)>)Ordering)>)Shipping)Methods! • Verify:!!The!resulting!set!of!methods!matches!the!client!specification!and!all!other!methods! not!being!used!by!the!client!have!been!removed! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!112! ! ! ! Verify)Site)URLs)Setup:))URL)Rules) Demandware!URL!Rules!extends!clients!the!ability!to!define!their!own!URLs.!!While!each!client!will! have!unique!rules,!there!are!several!areas!to!check!to!make!sure!setup!is!complete.! ! Navigate!to:!!Site)>)Site)Preferences)>)Storefront)URLs! • Verify:!!Enable)Storefront)URLs!is!checked! ! ! Navigate!to:!!Site)>)Site)URLs)>)URL)Rules! • Verify:!!There!are!no!URL!conflicts!on!the!General!page.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!113! ! ! All!URLs!need!to!be!unique.!!If!there!are!conflicts!the!client!should!be!informed!so!they!can!provide! direction!on!resolution!or!resolve!the!conflicts!themselves.!!A!site!with!no!URL!conflicts!will!show!all! green!checkmarks!like!this:! ! The!Settings!tab!controls!certain!global!aspects!of!the!URL!Rules!and!should!be!set!according!to!the! clients!SEO!preferences.!!At!minimum!the!following!settings!should!be!selected.!!If!they!are!not,!URLs! are!not!likely!fully!configured:! ! Navigate!to:!!Site)>)Site)URLs)>)URL)Rules! • Select:!!Settings!Tab! • Verify:!!Blank)Replacement!has!been!set!to!Q)(Minus)! • Verify:!!Character)Replacement!has!been!activated!and!replacement!rules!have!been!set! • Verify:!!Locale)Mapping!rule!has!been!set!to!a!value!other!than!None!for!a!site!using! multiple!locales! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!114! ! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!115! ! ! The!Pipeline!URLs!tab!controls!the!desired!URL!override!for!a!pipeline.!!If!a!pipeline!is!not!given!an!alias,! the!resulting!URL!contains!demandware.store.!!Clients!will!not!find!this!desirable,!therefore!all! pipelines!exposed!on!the!Storefront!need!to!have!an!alias.!!The!alias!also!provides!a!method!to!make! the!URL!more!SEO!and!consumer!desirable.!!The!alias!may!be!a!keyword!for!the!page!to!add!SEO!value! and!will!also!shorten!the!URL!to!host.com/alias!to!be!more!consumer!friendly.! ! ! Navigate!to:!!Site)>)Site)URLs)>)URL)Rules) • Select:!!Pipeline)URLs!Tab! • Verify:!!Check!the!list!of!alias!rules!to!the!list!of!pipelines!being!exposed!on!the!storefront.!! Each!should!be!accounted!for.! ! Verify)Site)URLs)Setup:))Site)Alias) The!alias!is!used!to!define!the!host!name!of!the!site!(http://www.mysite.com!for!example).!!Each! instance!of!the!site!(staging,!development,!production)!needs!to!have!a!unique!alias.!!This!only! becomes!complex!when!there!are!multiple!sites!within!an!organization.!!In!this!section!we!will!review! how!to!verify!the!alias!is!properly!setup!given!these!two!different!scenarios.! ! Scenario!1:!!Single!Site!Alias!Configuration! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!116! ! ! ! Navigate!to:!!Site)>)Site)URLs)>)Alias! • Verify:!!Ensure!that!an!alias!like!the!one!below!has!been!specified.! { "__version": "1", "!my-site.demandware.net" : [{"pipeline": "Home-Show" }], } ! Scenario!2:!!Multiple!Site!Alias!Configuration! This!scenario!is!slightly!different!because!now!there!are!multiple!sites!in!the!same!Business!Manager! instance.!!As!a!result!when!you!click!the!Storefront!link!all!of!the!sites!have!a!host!name!of!myQ site.demandware.net.!!It!is!not!until!after!the!host!name!that!the!site!is!specified!/SitesQmyFirstsiteQ Site!and!/SitesQmySecondsiteQSite,!etc.!!Therefore!both!Sites!cannot!have!the!same!host!name.!!That! would!violate!our!previously!established!rule!that!every!site!in!every!instance!must!have!a!unique!alias.!! If!you!see!two!sites!each!with!an!alias!configuration!that!100%!matches!the!other!site!you!should! recognize!this!as!an!improper!setup!of!the!alias.! ! Ramifications:!!While!you!can!still!access!the!Storefront,!it!will!be!impossible!to!validate!any!static!or! dynamic!mapping!rules!unless!aliases!are!unique.! Verify)Site)URLs)Setup:))Static)&)Dynamic)Mappings) Migrating!platforms!causes!URLs!to!change.!!As!a!result,!a!client!will!need!to!create!a!301!mapping! from!the!old!URLs!to!the!new!URLs!to!make!sure!traffic!(and!search!engines)!hitting!the!old!URLs!is!able! to!find!the!new!pages.!!This!is!done!through!Static!and!Dynamic!Mapping.!!This!MUST!be!configured!in! staging!!prior!to!the!new!site!going!live(the!final!data!and!code!deployment!to!production!will!capture! these).! ! Navigate!to:!!Site)>)Site)URLs)>)Static)Mapping! • Verify:!!Ensure!that!a!list!of!mapping!rules!exist! Navigate!to:!!Site)>)Site)URLs)>)Dynamic)Mapping! • Verify:!!Ensure!that!a!list!of!mapping!rules!exist! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!117! ! ! Verify)Site)Preferences)Setup:))Locales) The!Locales!Site!Preference!is!used!to!activate!or!deactivate!locales!for!a!site.!!Once!a!locale!is!added! the!currency!and!language!can!be!used!on!the!Storefront.!!Locales!to!be!used!for!a!site!would!be! determined!during!requirements!gathering.!!The!purpose!here!is!to!validate!that!the!locales!listed!are! the!same!locales!defined!in!the!requirements.! ! Navigate!to:!!Site)>)Site)Preferences)>)Locales) • Verify:!!Ensure!that!a!list!of!locales!matches!the!site!requirements! ! At!this!time!you!should!also!verify!the!organization’s!default!language!has!been!set!properly.!!This!will! be!the!language!used!if!there!is!no!localized!file!available.!!Most!of!the!time!this!will!be!set!to!Default.!! If!the!client!requires!a!different!default!locale:! ! Navigate!to:!!Administration)>)Organization)>)Organization)Profile! • Verify:!!Ensure!that!the!default!locale!matches!the!site!requirements! ! Verify)Site)Preferences)Setup:))Gift)Certificates) The!Gift!Certificates!Site!Preference!is!used!to!set!settings!for!Gift!Certificates!for!a!site.!!This! preference!only!applies!to!a!Site!using!Demandware!Gift!Certificates.!!By!default,!the!settings!reflect! Demandware!in!the!Sender!EeMail!address!field.!!At!minimum,!this!should!reflect!the!proper!client!Ee Mail!sender!address!and!should!not!reference!Demandware.!!If!this!Site!Preference!still!references! Demandware!that!should!be!a!clue!that!this!preference!has!not!been!properly!setup.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!118! ! ! ! Navigate!to:!!Site)>)Site)Preferences)>)Gift)Certificates! • Verify:!!Ensure!that!client!specific!settings!have!been!entered.!!The!Sender)EQMail!field!is!a! good!indicator!to!check.! ! ! Verify)Site)Preferences)Setup:))Sequence)Numbers) The!Sequence!Numbers!Site!Preference!is!used!to!set!the!pattern!and!starting!number!for!Order! Number,!Invoice!Number,!Shipment!Number,!and!Gift!Certificate.!!These!settings!only!become! available!if!either!Order!Number!or!Gift!Certificate!Merchant!ID!are!set!to!Site!Specific.!!The!alternative! setting,!Unique!Per!Organization,!means!that!each!site!within!an!organization!will!have!a!unique!value! so!a!starting!number!and!pattern!is!not!necessary!as!the!system!will!enforce!uniqueness.! ! The!Demandware!platform!uses!sequence!numbers!as!unique!identifiers!for!automatically!generated! object!instances.!For!example,!when!creating!a!new!order,!an!order!sequence!number!is!generated! and!can!be!used!to!identify!the!order.!The!Demandware!platform!allows!you!to!configure!sequence! numbers!for!single!sites!and!entire!organizations!with!many!sites.!Because!Order!Numbers!are! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!119! ! ! associated!with!Shipment!and!Invoice!Numbers,!if!you!configure!Order!Numbers!to!be!site!specific,! then!Invoice!and!Shipment!Numbers!are!also!site!specific!by!default.! ! Navigate!to:!!Site)>)Site)Preferences)>)Sequence)Numbers! • Verify:!!Ensure!that!client!specific!settings!have!been!entered!per!the!client!requirements.! ! ! ) Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!120! ! ! ! Knowledge)Check) ! 1. Which!statement!best!describes!how!to!tell!if!catalogs!have!been!properly!setup?! a. The!Catalogs!section!of!Business!Manager!has!a!catalog!that!owns!the!product!and!has!product! assigned!to!it! b. The!Storefront!shows!a!top!navigation!and!on!mouseeover!shows!subenavigation! c. The!Catalogs!section!of!Business!Manager!has!a!master!catalog!that!owns!the!product!and!has!a! storefront!catalog!that!has!been!assigned!the!product! d. A!product!search!in!Business!Manager!returns!results! ! 2. For!the!Site!to!return!search!results!what!needs!to!be!properly!configured?! a. Searchable!Attributes! b. Incremental!Indexing! c. Sorting!Rules! d. Search!Object! ! 3. Which!of!the!following!settings!should!be!checked!to!validate!URL!Rules!have!been!properly!setup?!! Check!all!that!apply.! ! URL!Rules!Site!Preference!has!been!enabled! ! URL!Generation!Status!indicates!there!are!no!conflicts! ! Blank!replacement!has!been!set!to!%20! ! Character!Replacement!has!been!enabled! ! Pipeline!URLs!contains!aliases!for!all!pipelines!used!on!the!storefront! ! Catalog!URLs!have!been!configured!to!use!the!ID!attribute! ! ! 4. It!can!be!determined!that!301s!have!been!setup!by!checking:! a. The!Alias!configuration! a. URL!Redirects! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!121! ! ! b. Static!Mapping! c. Static!&!Dynamic!Mapping! d. Search!Indexing! ! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!122! ! ! Knowledge)Check)Answers) 1. Which!statement!best!describes!how!to!tell!if!catalogs!have!been!properly!setup?! a. The!Catalogs!section!of!Business!Manager!has!a!catalog!that!owns!the!product!and!has!product! assigned!to!it! b. The!Storefront!shows!a!top!navigation!and!on!mouseeover!shows!subenavigation! c. The!Catalogs!section!of!Business!Manager!has!a!master!catalog!that!owns!the!product!and!has!a! storefront!catalog!that!has!been!assigned!the!product! d. A!product!search!in!Business!Manager!returns!results! Answer:)c) ! 2. For!the!Site!to!return!search!results!what!needs!to!be!properly!configured?! a. Searchable!Attributes! b. Incremental!Indexing! c. Sorting!Rules! d. Search!Object! Answer:)a) ! 3. Which!of!the!following!settings!should!be!checked!to!validate!URL!Rules!have!been!properly!setup?!! Check!all!that!apply.! x! URL!Rules!Site!Preference!has!been!enabled! x! URL!Generation!Status!indicates!there!are!no!conflicts! ! Blank!replacement!has!been!set!to!%20! x! Character!Replacement!has!been!enabled! x! Pipeline!URLs!contains!aliases!for!all!pipelines!used!on!the!storefront! ! Catalog!URLs!have!been!configured!to!use!the!ID!attribute! ! ! 4. It!can!be!determined!that!301s!have!been!setup!by!checking:! a. The!Alias!configuration! b. URL!Redirects! c. Static!Mapping! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!123! ! ! d. Static!&!Dynamic!Mapping! e. Search!Indexing! Answer:)d) ! ! ) ) Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!124! ! ! Congratulations) You!have!completed!the!classroom!elements!of!the!Applying!Solution!Strategy!Principles!in! Demandware!program.!!You!can!now:! ! Identify!and!describe!the!fundamental!building!blocks!of!the!Demandware!Commerce!Platform! ! Identify!the!documentation!created!by!Solution!Strategists! ! Identify!if!project!documentation!is!complete!and!comprehensive! ! Determine!if!the!documented!solution!adheres!to!Demandware!implementation!best!practices!and! can!scale!globally! ! Determine!if!the!documented!solution!can!be!used!successfully!by!the!client!now!and!in!the!future! ! Identify!if!Demandware!Business!Manager!has!been!fully!setup!for!launch! ! You!will!now!take!a!timed!multiple!choice!exam!to!demonstrate!your!learning!of!this!course!content.!! After!successful!completion!of!the!exam,!you!will!need!to!demonstrate!the!concepts!learned!in!this! course!in!a!real!world!project.!!Your!trainer!will!notify!Solution!Strategy!of!your!readiness!for!practical! assessment.!!Successful!completion!of!this!practical!assessment!results!in!Applying!Solution!Strategy! Principles!in!Demandware.! ! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!125! ! ! Appendix)A) Spec)Review) Section) Checkpoint) Criteria) Assessment)Source) Architecture! Are!there!any! missing!or! incomplete! components?! No!missing!components!or! integrations,!all! requirements!are!covered.! Assessment!based!on!project! documentation!(e.g.!Wireframes,! FSD,!and!Implementation!SOW).! Architecture! Can!the!data! model!support! the!design?! It!is!defined!who!is!the! Assessment!based!on!project! system!of!record!for!product! documentation!(e.g.!TSD,!Data! data,!how!often!the!data!will! Mapping,!Custom!Attributes).! be!imported!into!Business! Manager,!and!who!will! maintain!the!data!in!the! future?!Are!there!complex! master!/!variant! relationships!(e.g.!variants! other!than!color!/!size)?! Wireframes! Can!the!Client! support!the!data! model!needs?! Does!the!Client!have!! expertise!with!XML!and!PIM! system?!! Assessment!based!on!partner! conversations,!partner!to!provide!a! list!of!roles!&!responsibilities!at! Client.! Wireframes! Does!the!design! make!use!of! content!slots!&! content!assets?!! Have!all!content! slots!&!assets! that!need!to!be! accessed!in!the! build!phase!!been! named!and! assigned!an!ID?! Slots!and!assets!are!utilized! and!have!been!defined!in! the!FSD.! If!!specific!slots!that!will!be! used!during!build!phase! need!to!be!referenced!,!they! need!to!be!clearly!specified! before!build!phase.! Assessment!based!on!FSD,!best! practices,!and!knowledge!base!e.g.! ContentBestPractices.pdf! (XChange)! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!126! ! ! Section) Checkpoint) Criteria) Wireframes! Can!the!proposed! design!be!! implemented!on! DW?! The!proposed!design!is! Assessment!based!on!Site!Genesis! feasible!from!a!technology! wireframes!and!Project!wireframes! (DW!&!SG)!standpoint.!! There!are!no!obstacles!found! that!prevent!the!design!from! being!implemented!on!the! platform.! Reference:) https://documentation.dem andware.com/display/Res/ SiteGenesis! Wireframes! Is!a!browser! compatibility! matrix!available?! Browser!matrix!is! Define!which!browsers!will!be! available/defined.!! supported.!Assessment!based!on! ! Information!available!(HLD,!FSD,! Reference:))))))))) TSD,!implementation!SOW)! ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) https://xchange.demandwa re.com/thread/8620! Wireframes! Does!the! customer!have! Accessibility! (ADA,!WCAG,! DDA,!etc.)! requirements!and! are!these! reflected!in!the! design?! If!yes,!the!level!of! Assessment!based!on!FSD! accessibility!is!defined!(Level! AA)!and!reflected!in!the! designs.! Wireframes! Has!behavior!of! varying!windows! sizes!(devices!and! view!ports)!and! font!sizes!been! defined?! Design!has!either!a!fixed! Demandware!strategist!Assessment! width!or!scales!with!the! based!on!FSD,!TSD!and! browser!width!using! Implementation!SOW.! responsive!design.! The!design!should!not!break! if!the!fonts!sizes!are!changed! in!the!browser.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! Assessment)Source) July!2015!Page!127! ! ! Section) Checkpoint) Criteria) Assessment)Source) Wireframes! Does!the!Site! avoid!use!of! frames!or!iframes! to!display! content?! Usage!of!iframes!for! displaying!shop!related! content!are!bad!practice! (e.g.!SEO!aspects)!and! should!be!avoided.! Assessment!based!on!FSD!and!TSD.! Features!&! Does!the! Functionality! storefront!global! navigation! leverage! SiteGenesis! functionality?! What!is!the! maximum! number!of! categories!and!/! or!subcategories?! Will!the!site!use! custom!attributes! to!drive!dynamic! categories!(e.g.! sale,!new!arrivals)! Are!there!any! elements!not! controlled!within! Business! Manager?!! The!SiteGenesis!storefront!is! Assessment!based!on!Wireframes,! optimized!for!building! FSD,!Architecture,!Data!Flow! ecommerce!sites.!The! Diagram,!TSD.! SiteGenesis!storefront!&! back!office!combines! ecommerce!best!practices!in! usability,!merchandising!and! technical!architecture.! The!proposed!ecommerce! processes!and!useecases!are! aligned!with!those!best! practices!in!order!to!drive! revenue!and!lower! implementation!efforts.! Features!&! Does!the! Functionality! storefront!header! and!footer! leverage! SiteGenesis! functionality?! Can! customizations! be!implemented! within!technology! and! environmental! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!128! ! ! Section) Checkpoint) Criteria) Assessment)Source) constraints?! Features!&! Does!the! Functionality! storefront!home! page!leverage! SiteGenesis! functionality?!! How!are!custom! js!files!being! handled?!Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Image!Size,!Count!and! compression!should!be! within!DW!best! practices.!!Avoid!scaling! images!with!CSS.! Recommend!serving!resized! image!of!appropriate!size.! Callout!large!images,!pages! with!no!pagination,!lots!of! swatching,!small!buttons!and! icons!and!other!pages!that! have!high!potential!to!be! heavy!and!request!lots!of! images.!Total!page!weight! should!be!under!1mb!e! Features!&! Do!the!storefront! 1.5mb.!Should!have!less! Functionality! category!landing! than!100!image!requests!per! page.!!Consider!spriting! and!grid!pages! images!when!possible.!! leverage! SiteGenesis! functionality?!! Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! July!2015!Page!129! ! ! Section) Checkpoint) Criteria) Assessment)Source) Features!&! Do!the!storefront! The!SiteGenesis!storefront!is! Assessment!based!on!Wireframes,! Functionality! product!detail! optimized!for!building! FSD,!Architecture,!Data!Flow! page!and! ecommerce!sites.!The! Diagram,!TSD.! QuickView! SiteGenesis!storefront!&! leverage! back!office!combines! SiteGenesis! ecommerce!best!practices!in! functionality?! usability,!merchandising!and! Does!the! technical!architecture.! template!make! The!proposed!ecommerce! use!of!business! processes!and!useecases!are! manager!OOB! aligned!with!those!best! attributes?!How! practices!in!order!to!drive! are!custom! revenue!and!lower! attributes!being! implementation!efforts.! used?!How!is! product!data! being!loaded?!Is! the!data!modal! and!PDP!design! aligned?!! Features!&! Does!the! Functionality! storefront!search! and!search! results!(SSO)! leverage! SiteGenesis! functionality?! Will!there!be!a! shared!cart! across!multiple! sites?! Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! July!2015!Page!130! ! ! Section) Checkpoint) Criteria) Assessment)Source) Features!&! Do!the!storefront! Functionality! customer!profile! management! pages!leverage! SiteGenesis! functionality?!! Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Features!&! Do!the!storefront! Functionality! content!pages! (FAQ,!Impressum,! etc.)!leverage! SiteGenesis! functionality?! Will!content!need! to!be!copied! across!multiple! sites!or!locales?! Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Features!&! Does!the! Functionality! storefront!cart! leverage! SiteGenesis! functionality?! Will!there!be!a! shared!cart! across!multiple! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!131! ! ! Section) Checkpoint) Criteria) Assessment)Source) sites?! Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Features!&! Does!the! Functionality! storefront! checkout!flow! leverage! SiteGenesis! functionality?! Are!shipping! methods! managed!in! Business! Manager!or!via!a! 3rd!party! integration?!Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! July!2015!Page!132! ! ! Section) Checkpoint) Criteria) Assessment)Source) Features!&! Do!the!storefront! Functionality! promotions!and! marketing! features!leverage! SiteGenesis! functionality?! Can! customizations! be!implemented! within!technology! and! environmental! constraints?! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Features!&! Can!any! Functionality! additional! storefront! features!be! implemented! within!technology! and! environmental! constraints?! Assessment!based!on!Wireframes,! FSD,!Architecture,!Data!Flow! Diagram,!TSD.! Features!&! Backoffice!e! Functionality! Product! Management! (PIM,! Merchandizing,! Content).!! Assessment!based!on!client!Staging! environment!(if!available),! documentation!or!discussions!with! partner,!and!SS!knowledge.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!133! ! ! Section) Checkpoint) Criteria) Assessment)Source) Features!&! Backoffice!e! Functionality! Publishing! (Replication!of! Data!to! production).!Does! the!client! understand!the! replication! process?!Is!it! defined!who!will! own!data! replication?!What! modules!will!be! replicated!with! what!frequency?! Does!the! replication! process!align!with! the!job!schedule?!! Assessment!based!on!client!Staging! environment!(if!available),! documentation!or!discussions!with! partner,!and!SS!knowledge.! Features!&! Backoffice!e!Order! Functionality! Management! (Refunds,! Returns,! Transactional! Emails)! Assessment!based!on!client!Staging! environment!(if!available),! documentation!or!discussions!with! partner,!and!SS!knowledge.! Features!&! Backoffice!e! Functionality! Organization! Administration! (Access!Rights!&! Permissions)! Assessment!based!on!client!Staging! environment!(if!available),! documentation!or!discussions!with! partner,!and!SS!knowledge.! Features!&! Backoffice!e!Email! Functionality! Management! (What!is!the! system!of!record! for!transactional! and!marketing! emails?)! Assessment!based!on!client!Staging! environment!(if!available),! documentation!or!discussions!with! partner,!and!SS!knowledge.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!134! ! ! Section) Checkpoint) Criteria) Features!&! Scheduled!Jobs! Functionality! Assessment)Source) Assessment!based!on!client!Staging! environment!(if!available),! documentation!or!discussions!with! partner,!and!SS!knowledge.! Features!&! Storefront!e! Functionality! Performance! Images! Image!Size,!Count!and! compression!should!be! within!DW!best! practices.!!Avoid!scaling! images!with!CSS.! Recommend!serving!resized! image!of!appropriate!size.! Callout!large!images,!pages! with!no!pagination,!lots!of! swatching,!small!buttons!and! icons!and!other!pages!that! have!high!potential!to!be! heavy!and!request!lots!of! images.!Total!page!weight! should!be!under!1mb!e! 1.5mb.!Should!have!less! than!100!image!requests!per! page.!!Consider!spriting! images!when!possible.!! Do!rough!image!assessment!for! Count!of!image!calls,!number!of! large!images!displayed,!scrollers,! social!icons!and!identify!with! partner!if!they!spriting!images.!!On! gridwall!how!are!they!treating!alt! images!or!swatches.!Ensure!site! isn't!going!to!be!adding!to!many! server!calls!for!images.!!Product! Zoom,!Alt!Images!and!other! elements!discuss!on!they!are! separating!defer!elements!during! initial!page!load!to!improve! performance.!! Integrations! &!Data! Architecture! It!is!defined!how!and!by! whom!the!content!will!be! delivered!and!managed!(e.g.! the!content!managers! and/or!an!external!agency).! Demandware!strategist!Assessment! based!on!partner!conversation,! data!flow!diagram!and!org!chart! review.!Partner!should!provide!a! list!of!!roles!and!responsibilities!at! the!Client.! Are!content! contributors! identified!and! outlined!in!the! data!flow! diagram(s)?!Is!the! Client!aware!of! the!content! requirements!of! the!site?!Will! there!be!any!3rd! party! integrations?!If! so,!has!training! been!accounted! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!135! ! ! Section) Checkpoint) Criteria) Assessment)Source) for!in!the!project! plan?!!! Integrations! &!Data! Architecture! Is!Content!to!be! Content!is!compliant,!e.g.!no! Demandware!strategist!Assessment! shown!on!the!site! videos!hosted!on!DW! based!on!FSD!or!TSD.! compliant!with! the!DW!best! practices?! Integrations! &!Data! Architecture! Is!the!proposed! Site!Setup! defined!(e.g.! multi!vs.!single)?! The!siteesetup!(sites,! currencies,!locales)!is! specified.! Demandware!strategist!Assessment! based!on!Implementation!SOW!and! TSD! Integrations! &!Data! Architecture! Is!the!setup!for! shared!entities! specified!and! does!it!conform! to!DW!best! practices?!Will! there!be!multie channel!support?! The!proposed!setup!for! Master!Catalog!/!Nave Catalog!/!Inventory!/!Pricing! is!specified.!Who!is!system! of!record!for!multiechannel! promotions!(POS!system!vs! Business!Manager)?!How! will!this!information!be! passed!to!the!various! systems?! Demandware!strategist!Assessment! based!on!TSD,!best!practices,!and! knowledge!base.! Integrations! &!Data! Architecture! Is!there!a!plan!to! implement!a! shared!cart?!! Need!to!make!sure! Demandware!strategist!Assessment! implications!are!considered!e! based!on!implementation!SOW!and! search,!13.1!urls,!site!map! TSD! (can't!be!generated),! domains! Integrations! &!Data! Architecture! Have!the!partner! provided!a!list!of! pipelines!and! To!be!used!for!SEO!pipeline! alias!and!content!slot! configuration.! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! Partner!to!provide!a!list!of!all! pipelines!and!rendering!templates.! July!2015!Page!136! ! ! Section) Checkpoint) Criteria) Assessment)Source) rendering! templates?! Non! Functional! Have!the!client's! SEO! requirements! been!considered?! Is!the!client!using! a!3rd!party!SEO! provider?!If! applicable,!does! the!3rd!party! understand! Demandware! capabilities?!Have! default!alt!images! and!meta! taggings!been! considered?! The!client's!SEO! Assessment!based!on!FSD!and! requirements!are!available! other!available!information.! and!the!partner!has! Strategist!to!discuss!13.1!url! conducted!discussions!on! functionality!with!partner!and! the!topic.!!3rd!party!! provide!documentation!to!ensure! recommendations!have! that!the!functionality!is!understood! been!delivered!prior!to! by!all!parties.! build.!The!mapping!to!layout! is!also!described!and! whether!the!client!will!use! the!13.1!SEO!functionality.! ! The!review!does!not!judge! on!SEO!strategy.!DW!expects! that!SEO!aspects!are! considered!and!reflected!in! the!designs!(e.g.!mapping!of! product!name!into!h1!tag).! Reference:))))))))))))))))))))) https://xchange.demandwa re.com/thread/8573))!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Non! Functional! Have!aliases!,! redirects,!and! canonicalization! been!considered?!! The!partner/customer!needs! Assessment!based!on!!information! to!be!aware!of!these!topics! available.! during!the!definition!phase! so!they!can!be!addressed! efficiently!during!Launch! Gate.! ! !!!!!!!!!!!!!!!!!!!!!!!!!!!! Implementati Has!the!site! on! Catalog!been!set! up!per!DW!best! practices?! Master!catalog!separate! from!Storefront!catalog.! Initial!set!of!category! refinements!identified.!!!!!!!!! Strategist!Assessment!based!!on! knowledge!and!best!practices! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!137! ! ! Launch)Review) Section) Checkpoint) Criteria) Assessment) Source) Business! Manager! Has!the!site! Catalog!&! Products!section! of!Business! Manager!been! set!up!per!DW! best!practices?! Master!catalog!separate!from!Storefront!catalog.! Category!refinements!configured.!Unused! SiteGenesis!default!attributes!have!been!deleted.! Verify!Price!Book!has!been!set!up!per!best! practices.! Strategist! Assessment!based!! on!knowledge!and! best!practices! Business! Manager! Has!the!site! Search!section!of! Business! Manager!been! set!up!per!DW! best!practices?! Review!search!index!settings!for!best!practices! (e.g.!run!job!during!off!peak!hours,!incremental! update!configured!in!production).! Review!Searchable!Attributes!for!best!practices.!! Strategist! Assessment!based!! on!knowledge!and! best!practices! Business! Manager! Has!the!Online! Marketing! section!been!set! up!per!DW!best! practices?!! Verify!that!SiteGenesis!campaigns!and! promotions!have!been!deleted.! Strategist! Assessment!based!! on!knowledge!and! best!practices! Business! Manager! Has!the!site! Ordering!been! set!up!per!DW! best!practices?!! Review!shipping!methods!definition.! Review!tax!table!definition!(if!applicable).! Strategist! Assessment!based!! on!knowledge!and! best!practices! Business! Manager! Have!SEO!URL! section!been!set! up!per!DW!or! 3rd!party!best! practices?! Review!SEO!default!image!settings.!Review! product,!category,!and!content!SEO!meta!data! and!URL!configurations.! Review!301!mappings!&!URL!redirects.!! Strategist! Assessment!based!! on!knowledge!and! best!practices! The!SiteGenesis!storefront!pages!are!built!as! dictated!by!the!wireframes!and!based!on! ecommerce!best!practices!in!usability,! merchandising,!and!technical!architecture.! Assessment!based! on!Wireframes,! FSD,!Architecture,! Data!Flow!diagram,! Storefront! Does!the! storefront!global! navigation!meet! DW!best! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!138! ! ! Section) Checkpoint) Criteria) practices?! The!proposed!ecommerce!processes!and!usee and!TSD.! cases!are!aligned!with!those!best!practices!in! order!to!drive!revenue!and!lower! implementation!efforts.! Reference:)))))))) https://xchange.demandware.com/thread/8674! Storefront! Does!the! storefront! header!and! footer!meet!DW! best!practices?! Assessment) Source) Storefront! Does!the! storefront!home! page!meet!DW! best!practices?! Storefront! Do!the! storefront! category!landing! &!grid!!pages! meet!DW!best! practices?! Storefront! Do!the! storefront! product!detail! page!and! QuickView! feature!meet! DW!best! practices?! Storefront! Does!the! storefront! search!&!search! results!(SSO)! meet!DW!best! practices?! Storefront! Do!the! storefront! customer!profile! management! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!139! ! ! Section) Checkpoint) Criteria) Assessment) Source) Image!Compression!score!needs!to!come!in! above!80%.!!Need!to!review!any!pages!with!more! image!requests!than!100!on!any!page.!!All!Global! elements!with!multiple!images!(social!elements)! Open!in!staging! and!run! performance! testing!using!the! pages!!meet!DW! best!practices?! Storefront! Do!any!other! storefront! content!pages! (FAQ,! Impressum,!etc.)! meet!DW!best! practices?! Storefront! Does!the! storefront!cart! meet!DW!best! practices?! Storefront! Does!the! storefront! checkout!flow! meet!DW!best! practices?! Storefront! Do!the! storefront! promotions!and! marketing! features!meet! DW!best! practices?! Storefront! Do!any! additional! storefront! features!meet! DW!best! practices?! Storefront! Does!the!Home! page! performance! meet!DW!best! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!140! ! ! Section) Checkpoint) Criteria) Assessment) Source) practices?!! should!be!sprited.!!All!JS!should!be!pushed!to! bottom!of!the!page.!!Red!Flag!any!pages!loading! over!8e10!seconds!in!staging,!and!note!out!all! other!issues!identified!in!feedback.! Firefox!add!on! Firebug!and! perform!page! speed!test.!!Check! for!image! compression,! caching!issues,! deferring!of!JS,! redirect!chains,! spriting,!and!other! red!or!yellow! callouts.!!Record! score!(out!of!100)! for!each!page!type! to!review.! Storefront! Does!the! Category!and! Grid!page! performance! meet!DW!best! practices?!! Storefront! Does!the! Product!Detail! Page! performance! meet!DW!best! practices?! Project! Have!all!legacy! Test!case!check!for!legacy!profile,!if!applicable.! profiles!(e.g.!My! (Note:!Only!import!active!customers)! Acct)!been! loaded!and! password!access! confirmed?! Strategist!has! completed! Assessment,!if! applicable! Project! Are!all!legacy! Test!case!checks!for!legacy!order,!if! orders!available! applicable.(Note:!Only!import!orders!of!active! in!order!history?! customers.)! Strategist!has! completed! Assessment,!if! applicable! ! Applying!Solution!Strategy!Principles!in!Demandware! ©!Demandware,!Inc.! July!2015!Page!141! !