kerry havas product architect commerce server product unit tom schultz program manager commerce...

33
Commerce Server “Mojave” Kerry Havas Product Architect Commerce Server Product Unit Tom Schultz Program Manager Commerce Server Product Unit PC59

Upload: winfred-tyler

Post on 12-Jan-2016

222 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce Server “Mojave”

Kerry HavasProduct ArchitectCommerce Server Product Unit

Tom SchultzProgram ManagerCommerce Server Product Unit

PC59

Page 2: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

• Today’s Agenda• Commerce Server Roadmap• “Mojave” Overview• “Mojave” commerce foundation Technical Drilldown

• Overview• Demo:

• Using the commerce foundation to retrieve products and Relationships

• Creating a new Operation Sequence• “Mojave” Sharepoint Integration Technical Drilldown

• Overview• Demo:

• Using the Mojave Web Parts• Using XSLT• Using the Site Map Provider

• Resources/Questions

Microsoft Commerce Server “Mojave”

Page 3: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Shopping Cart,

Merchandising

Reporting, Application

Services

Personalization,

Membership Basic

B2B

Catalog, Closed-

loop Analytics, Stronger

B2B

Globalization,

Advanced Analytics

Connected Commerce

Multi Channel /

Multi Brand

ALIGN WITH BUSINESS NEEDS

Commerce Server RoadmapWhere we have been

Page 4: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce Server RoadmapWhat we are doing

CY2010, 2011

Next GenerationE-CommerceQ1-CY2009

Commerce Server “Mojave”

CY2009, 2010

Next mid-stream release

CY2008

May : Service Pack 2August: Mojave CTPOctober: Mojave CTP

Page 5: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce ServerWhere we fit in the enterprise

CPG X

Distributor X

SCM

Merch.WMS

EnterpriseBPM

Sell-Side

Trading Partner X ERP

Page 6: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

What Is “Mojave?”

Multi-Channel Foundation Out of the box integrated consumer centric multi-channel capabilities over

multiple mediums, brands, and locales 3 out-of-the-box channels ready to go: Web, Mobile, Live Services New channels require configuration and not customization

Out of the Box Shopping Out of the box ASP.NET web part shopping site Web 2.0 social networking paradigms via SharePoint and Live integration E-commerce web features easily added by business users, skin-able by

designers (Expression), extendable by developers (Visual Studio)

Tools to empower Merchandisers and Marketers Inline WYSIWYG product information and presentation editing and preview Content management capabilities: workflow, approval, and publishing Familiar Office-like environment minimizing learning curve

Page 7: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

For Site Designers – Standards-based Design with New Design Tools Standardized creation and editing of site designs, leveraging SharePoint

templates, giving flexibility and quick time to market New Tools and Technology for site development: Expression Web,

SharePoint Designer, SilverLight

For Developers – New multi-channel unified API, web parts, new extensibility model Out-of-box site functionality, through the web parts (source available), to

quickly and consistently extend site features Unified operator-commerce entity calling model for the run-time

Commerce Server API, offering more flexibility and quicker development Clear separation between business and presentation layers New extensibility points: ‘Commerce Entities’, ‘Operations’, ‘Providers’ Additional built-in .NET 3.5-based shopping features and SharePoint

list support

What is new in “Mojave”?As compared to Commerce Server 2007

Page 8: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

next generation commerce foundation

Technical Drilldown

Page 9: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

ArchitectureCommerce server today

CS2007 Catalog

CS2007 Orders

CS2007 Profiles

CS2007 Analytics

CS2007 Marketing

CS2007 Business

UserTools

CS2007 IT ProTools

CS2007 Web Services & BizTalk Adapters

ASP.NET Sites developed in Visual Studio

Page 10: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

• Reduce developer ramp-up time by providing a consistent API model across all Commerce Server functional areas

• Provide the out-of-the-box “business logic” layer that is currently produced as a one-off for every Commerce Server deployment

• Clear separation of presentation logic and business logic, facilitating multi-channel e commerce‑

• Provide an extensibility model that will allow both Microsoft and 3rd party developers to more easily enhance functionality both for general and business specific purposes

• Allow the ability to accomplish multiple operations in a single call.• Support migration of existing CS2007 sites to Mojave by residing side-

by-side with an existing CS2007 implementation• Multiple presentation support

ArchitectureAPI design goals

Page 11: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

ArchitectureCommerce Server "Mojave"

CS2007 IT ProTools

Commerce Server 2007

Catalog, Orders, Profiles, Marketing, Analytics, Staging, Web Services, BizTalk AdaptErs

CS2007 BusinessUser Tools

Catalog Manager, Marketing Manager, Customer & Order

Manager

* SharePoint installation required

“Mojave” Web PartsE.g.: Shopping, Checkout, Profile, …

Shopping Web Site* Experience

(white label)

CS2007 IT Pro and Designer

Tools

“Mobile” Template

Site templates

“Rich” Template Custom UX:

Customize Web Parts

“Mojave” Foundation APIUnified and simplified run-time calling model

Multi-Channel InterfaceNew Core E-Commerce Shopping Features

Custom Logic:

Op/Entity Model

Custom UX: Direct to Mojave

API

Page 12: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce Entities Encapsulates a single business concept such as a product or a catalog Encapsulates both properties and relationships Can be extended to include new properties and new relationships Supported by Metadata that provides descriptive information about the

Commerce Entity that can be retrieved via the API. Operations

Provides CRUD capabilities on Commerce Entities Consists of 1 or more Operation Sequences May be extended The response of the operation may be extended

Operation Sequences Operation Sequences can be plugged/unplugged on a per channel basis. Out of the box Operation Sequences can be replaced by custom ones Operation Sequences are reusable components that can be created and

reused on other projects Third parties may create new operations that may be purchased rather

than custom built

APIExtensibility points

Page 13: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Operation

API Message Flow

Operation

Sequence

Operation

Sequence

Operation

Sequence

Operation

Sequence

Web Browser Mobile Application Etc...

Public API

Broker

CS 2007

SQL Server

Presentation

Application

Data

Presentation Tools Presentation Tools

Cloud Services

Page 14: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

var productQuery = new Query<CommerceEntity>(“Product”); productQuery.Properties.Add(“Id”);productQuery.Properties.Add(“DisplayName”); productQuery.SearchCriteria.Model.Properties.Add(“Id”, “1243”);productQuery.SearchCriteria.Model.Properties.Add(“CatalogId”,”Adventure Works Catalog”); Response response = OperationServiceAgent.ProcessRequest(requestContext, productQuery.ToRequest())

Mojave API exposes a single generic class which represents all Commerce Server entities called a “CommerceEntity”

Different types of Commerce Entities are distinguished by the “ModelName” property

Example query:

Commerce EntitiesOverview

Page 15: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Property Bag Getters/Setters - GetPropertyValue() &

SetPropertyValue() methods Contains both CommerceEntity properties

and relationships

Commerce EntitiesPropertyCollection

Page 16: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce Entity Relationships

Relationships are also returned in the Properties collection RelationshipList offers paging support Relationships are manipulated in the same manner as other

Commerce Entities Relationships are extensible

QueryRelatedItem<Variant> queryVariants = new QueryRelatedItem<Variant>(Product.RelationshipName.Variants); productQuery.RelatedOperations.Add(queryVariants);

Page 17: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Using the API

Kerry HavasProduct ArchitectCommerce Server Product Unit

demo

Page 18: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

"Mojave" Sharepoint Integration

Technical Drilldown

Page 19: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Provide a higher-level development experience when producing an e-commerce site

Components based on logical groups of e-commerce functionality rather than simple UI components

Components usable in Windows SharePoint Services 3.0 and Office SharePoint Server 2007

Provide performant UI building blocks for developers Leverage as much as possible from SharePoint, rather than inventing

our own mechanisms Easy for developers to write additional components which fit into

the model Commerce Server communication entirely through Mojave

Foundation API

Web PartsDevelopment goals

Page 20: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

CatalogSite Map ProviderProduct ProviderProperty PickerXsltPropertyListProduct FilterProduct QueryImage ViewerInline Product Editor

ProfilesAddress ListAddress DetailCredit Card ListCredit Card DetailMy ProfileRegistration WizardChange PasswordForgot Password

OrdersAdd to CartCartCheckoutMinicartOrder HistoryOrder DetailsMy Shopper ListsShopper List Detail

SearchSearch BoxSearch ResultsSearch PagingStore Locator

Marketing Advertisement List

Web Parts29 out of the box web parts

Page 21: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Web PartsSharePoint integration

UI Components built as ASP.NET 2.0 Web Parts, providing a number of significant advantages: Web part connections can be used to marshal requests to

Commerce Server Web parts may be made aware of the zone on a page in

which they can reside Web parts can be made to be personalizable by an

end user Web parts can be arranged on a page by a business user in

the browser using Windows SharePoint Services or Microsoft Office SharePoint Server

Page 22: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Minimize Commerce Server calls from similar web parts Concrete example:

Web PartsDesign philosophy

Page 23: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Web PartsProduct provider web part Product Provider

Provides ability to query the Commerce Server catalog based on criteria such as category, property value or full-text search

Based loosely on the SharePoint Content Query Web Part

Styleable using XSL transforms

Page 24: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Web PartsCustomization – XSL transforms XSL transforms stored

in a template Templates may be

managed in a document library when the web part is used with SharePoint

Allows multiple templates to be built and tested, and applied by a business user

Page 25: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Manages stages of check out Easy for a developer to add a new stage Consists of a single web part which is able to manage the

check out process, cycling through ASP.NET user controls corresponding to check out stages

User controls implement a specific interface which is understood by the web part and allows the web part to determine the status of the stage, e.g.: can the user move forward (“Next”) or backwards (“Previous”)

Each user control can determine whether or not it has enough information to complete it’s stage

Ability to implement your own custom stage as a user control

Web PartsCheckout

Page 26: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

SiteMap Provider Retrieves category information dynamically from Commerce

Server, caches globally for a configurable period of time Extends SharePoint site map provider Blends content from

SharePoint Commerce Server

Respects security constraints

Sharepoint IntegrationIntegration components

Page 27: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce Server is authoritative source for authentication and user profile information User Profile Manager (UPM) Membership

provider authentication Usable in SharePoint Web Part(s) supplied for account creation and

editing of profile information by an end user Forms-based authentication login page

supplied for SharePoint (to include password retrieval, etc)

Sharepoint IntegrationAuthentication and user profiles

Page 28: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Using the Mojave Web Parts & Site Map Provider Tom Schultz

Program ManagerCommerce Server Product Unit

demo

Page 29: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Commerce Server “Mojave” October CTP Available on Microsoft Connect Site!!

https://connect.microsoft.com/site/sitehome.aspx?SiteID=643

Issues? [email protected]; [email protected]

Product Information Commerce Blog:

http://blogs.msdn.com/commerce/default.aspx MSDN Forum

http://social.msdn.microsoft.com/forums/en-US/commserver2007/threads/

Resources

Page 30: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Evals & Recordings

Please fill

out your

evaluation for

this session at:

This session will be available as a recording at:

www.microsoftpdc.com

Page 31: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

Please use the microphones provided

Q&A

Page 32: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59

© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market

conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 33: Kerry Havas Product Architect Commerce Server Product Unit  Tom Schultz Program Manager Commerce Server Product Unit PC59