the ultimate web service client: making the most of your soa investment mike pelton developer &...

41
The Ultimate Web The Ultimate Web Service Client: Service Client: Making the Most of Your Making the Most of Your SOA Investment SOA Investment Mike Pelton Mike Pelton Developer & Platform Group Developer & Platform Group Microsoft Ltd Microsoft Ltd [email protected] [email protected]

Upload: julius-johnston

Post on 20-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

The Ultimate Web Service The Ultimate Web Service Client:Client:Making the Most of Your Making the Most of Your SOA InvestmentSOA Investment

Mike PeltonMike PeltonDeveloper & Platform GroupDeveloper & Platform GroupMicrosoft LtdMicrosoft [email protected]@microsoft.com

Page 2: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Smart clients are easily deployed and managed client applications Smart clients are easily deployed and managed client applications that provide an adaptive and interactive experience by that provide an adaptive and interactive experience by

leveraging local resources and intelligently connecting to leveraging local resources and intelligently connecting to distributed data sources. distributed data sources.

Web Services &Offline/Online

support

DeviceAdaptability

Tough toDeploy

HeavyFootprint

DLL Hell

NetworkDependency

Poor UserExperience

Rich UIComplex

To Develop

Rich UserExperience

DeveloperProductivity

Responsive

BroadReach

Easy ChangeManagement

Ease ofDeployment

Page 3: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Offline Capable Offline Capable

Device FlexibilityDevice Flexibility

Maximise Local Maximise Local ResourcesResources

Smart Client CharacteristicsSmart Client Characteristics

Intelligent Intelligent Deployment & Deployment & UpdateUpdate

Connected - Web Connected - Web Services / SOAServices / SOA

Page 4: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms

Mobile Mobile Field Field

Mobile Mobile Field Field

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Office System 2003 Windows MobileWindows Forms

Version 1.1

Version 2.0

CurrentCurrentGenerationGeneration

NextNextGenerationGeneration

Version 1.0

Version 1.1“Whidbey”

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

E-GovernmentE-GovernmentE-GovernmentE-Government

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Mobile Mobile Field Field

Mobile Mobile Field Field

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Page 5: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Mobile Mobile Field Field

Mobile Mobile Field Field

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Windows Forms

Version 1.1

Version 2.0

CurrentCurrentGenerationGeneration

NextNextGenerationGeneration

“Whidbey”

Radically simplified application Radically simplified application deploymentdeployment

ClickOnce deployment, update, rollbackClickOnce deployment, update, rollback

Visually Appealing UIVisually Appealing UINew Data ControlsNew Data ControlsOffice Look and FeelOffice Look and Feel

Developer productivityDeveloper productivitySimplify working with dataSimplify working with dataFewer lines of codeFewer lines of codeFew clicksFew clicks

.NET Framework distribution.NET Framework distribution120 million deployments120 million deploymentsPreinstalled on 60% of new machines Preinstalled on 60% of new machines and growingand growingIncluded on SP2 CDIncluded on SP2 CDConsumerConsumer

55% installed by end of ’0455% installed by end of ’0475% installed by end of ’0575% installed by end of ’05

EnterpriseEnterprise50% installed by end of ’0450% installed by end of ’0468% installed by end of ‘0568% installed by end of ‘05

Office System 2003 Windows Mobile

Version 1.0

Version 2.0

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

E-GovernmentE-GovernmentE-GovernmentE-Government

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Mobile Mobile Field Field

Mobile Mobile Field Field

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms

Page 6: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Office System 2003

Version 1.0

Version 2.0

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

E-GovernmentE-GovernmentE-GovernmentE-Government

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Connect live business data to Connect live business data to your documents & access them off-your documents & access them off-lineline

Increase velocity and accuracy of Increase velocity and accuracy of decision makingdecision making

Increase worker productivityIncrease worker productivity

Reduce error caused by data re-entry & Reduce error caused by data re-entry & copy/pastecopy/paste

Leverage existing Office experience of Leverage existing Office experience of end usersend users

Reach 400+ million practised Office Reach 400+ million practised Office usersusers

Eliminate training and ramp up time on Eliminate training and ramp up time on new applicationsnew applications

Reduce new application burn-in errorsReduce new application burn-in errors

Leverage rich and robust Office Leverage rich and robust Office functionalityfunctionality

High developer productivity = reduced High developer productivity = reduced time to develop time to develop

Greatly improved maintainability & Greatly improved maintainability & deployment optionsdeployment options

Optimize use of PC & central resources Optimize use of PC & central resources

Mobile Mobile Field Field

Mobile Mobile Field Field

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Windows Forms

Version 1.1

Version 2.0

CurrentCurrentGenerationGeneration

NextNextGenerationGeneration

“Whidbey”

Windows Mobile

Mobile Mobile Field Field

Mobile Mobile Field Field

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms

Page 7: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Office System 2003

Version 1.0

Version 2.0

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

Integrating Integrating Office XML Office XML

with with Enterprise Enterprise

Data Data

E-GovernmentE-GovernmentE-GovernmentE-Government

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Mobile Mobile Field Field

Mobile Mobile Field Field

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Smart Client Smart Client Front-end to Front-end to

Enterprise LOB Enterprise LOB SystemsSystems

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Windows Forms

Version 1.1

Version 2.0

CurrentCurrentGenerationGeneration

NextNextGenerationGeneration

“Whidbey”

Windows Mobile

Mobile Mobile Field Field

Mobile Mobile Field Field

Instant access to data Instant access to data anywhere, anytimeanywhere, anytime

Form factor and instant-Form factor and instant-on more appropriate for on more appropriate for most field workmost field work

Access existing Web Access existing Web services in SOAsservices in SOAs

Leverage .NET Leverage .NET development skills and development skills and code on devices code on devices with .NET Compact with .NET Compact FrameworkFramework

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Web siteWeb siteSmart ClientSmart ClientExperiencesExperiences

Microsoft Smart Client Microsoft Smart Client PlatformsPlatforms

Page 8: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Online/Offline CapabilitiesOnline/Offline Capabilities

TodayTodaySmart Client Offline Block on MSDNSmart Client Offline Block on MSDN

Architectural model for adding offline Architectural model for adding offline capabilities to a smart clientcapabilities to a smart client

Code, Docs, Sample applications, Test casesCode, Docs, Sample applications, Test cases

.NET Framework 1.1, Windows XP.NET Framework 1.1, Windows XP

Next Year - .NET Framework 2.0Next Year - .NET Framework 2.0NetworkInterfaceNetworkInterface, , NetworkChangeNetworkChange

Year AfterYear AfterNetwork Location AwarenessNetwork Location Awareness Service in Service in LHLH

Page 9: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Smart Client Offline BlockSmart Client Offline Block

Approaches we can takeApproaches we can takeService-centricService-centric

Data-centricData-centric

Page 10: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Data-Centric ApproachData-Centric Approach

Client maintains local databaseClient maintains local databaseMSDEMSDESQL Server (CE)SQL Server (CE)

Replicates data from the storeReplicates data from the storeCopies data and updates whilst onlineCopies data and updates whilst onlineLocally stores updates whilst offlineLocally stores updates whilst offlineTake advantage of pre-built solutionsTake advantage of pre-built solutions

Client DB & server DB tightly coupled Client DB & server DB tightly coupled by data representationby data representation

Page 11: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Data-Centric ApproachData-Centric ApproachRobust data conflict detection at Robust data conflict detection at column and row levelcolumn and row level

Data validation and constraints. Data validation and constraints.

Merge-replication is a two-tier Merge-replication is a two-tier architecturearchitecture

Constraints in terms of manageability Constraints in terms of manageability and maintainability. and maintainability.

Local data storeLocal data storeMay not be suitable for “small” devicesMay not be suitable for “small” devices

Change tracking code is in the Change tracking code is in the RDBMSRDBMS

No need to write additional code for:No need to write additional code for:Change trackingChange trackingConflict detection and resolutionConflict detection and resolution

Page 12: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

The Caching Application The Caching Application BlockBlockClient or Service Agent requests cached data Client or Service Agent requests cached data

If the data exists in the cache it’s returnedIf the data exists in the cache it’s returnedIf not, dispatch a Service Agent to obtain the dataIf not, dispatch a Service Agent to obtain the data

The CacheManager adds metadata to cached data The CacheManager adds metadata to cached data

The framework can monitor the data's relevanceThe framework can monitor the data's relevancelast accessed,last accessed,how old it is.... how old it is....

The metadata can define conditions for expiryThe metadata can define conditions for expiry

Data can be cached in several formatsData can be cached in several formatsDatabaseDatabaseMemory-mapped fileMemory-mapped fileSingleton objectSingleton object

Caching Block includes example classes for:Caching Block includes example classes for:CachingCachingScavengingScavengingExpirationExpirationData protectionData protection

Page 13: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Service-Centric ApproachService-Centric Approach

Client interacts with services through Client interacts with services through requestsrequests

Decoupled clientDecoupled client

Offline logic is built into the clientOffline logic is built into the client

Client/Service data representations Client/Service data representations can varycan vary

Custom conflict resolution and Custom conflict resolution and change trackingchange tracking

Page 14: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Offline Block ArchitectureOffline Block Architecture

ServiceAgentServiceAgentCreates requestsCreates requests

Persists to queuePersists to queue

Notifies appNotifies app

ExecutorExecutorExecutes requestsExecutes requests

Notifies AgentNotifies Agent

ServiceRequestServiceRequestEncapsulated Encapsulated request detailsrequest details

ApplicationApplication

ExecutorExecutor

Service AgentService Agent

ServiceService

Service RequestService Request

Queue

Page 15: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Challenges of going offlineChallenges of going offline

Detecting the network stateDetecting the network state

Replicating data cleanlyReplicating data cleanly

Securing the local data storeSecuring the local data store

Where does business logic Where does business logic

reside?reside?

Keeping the UI responsiveKeeping the UI responsive

Page 16: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Detecting the network Detecting the network automaticallyautomatically

ServiceAgent

ConnState

RefData

MessageData

Page 17: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Connection detectionConnection detectionWhat just happened?What just happened?

UI LayerUI Layer(view)(view)

ConnectionConnectionManagerManager(model)(model)

ControllerControllerConnectionConnectionDetectionDetectionStrategyStrategy

CreateCreatess

Registers for Registers for notification notification fromfrom

UtilizesUtilizes

DetermineDetermines Physical s Physical ConnectioConnection n PresencePresence

State State Changed: Changed: Going Going OfflineOffline

ServiceAgent

ConnState

RefData

MessageData

Page 18: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Detailed ViewDetailed View

ApplicationApplicationService AgentService Agent

ApplicationApplication

Online ProxyOnline Proxy

ConnectionConnectionManagerManager

Service AgentService AgentManagerManager Service AgentService Agent

Data LoaderData LoaderManagerManager

QueueQueueManagerManager

ExecutorExecutor

ReferenceReferenceData CacheData Cache

Cache BlockCache Block

ConnectionConnectionDetection StrategyDetection Strategy

QueueQueueStorageStorage

Detects the current state of the physical connection

• Manages connection state• Fires an event when

connection state change occurs

• Has public methods to change the online/offline state

Page 19: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Detailed ViewDetailed View

ApplicationApplicationService AgentService Agent

ApplicationApplication

Online ProxyOnline Proxy

ConnectionConnectionManagerManager

Service AgentService AgentManagerManager Service AgentService Agent

Data LoaderData LoaderManagerManager

QueueQueueManagerManager

ExecutorExecutor

ReferenceReferenceData CacheData Cache

Cache BlockCache Block

ConnectionConnectionDetection StrategyDetection Strategy

QueueQueueStorageStorage

• Provides the base class implemented by all application-supplied Service Agents.

• Base class is responsible for registering the service agent with the service agent registry.

• Returns the results back to the appropriate Service Agents after processing

• Allows the application to request reference data to be downloaded

• Facade for the Queue Storage Providers:

• Methods for queuing and dequeuing messages.

Provides:• Ability to queue

messages• Channel for

getting results back to the application

Page 20: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Detailed ViewDetailed View

ApplicationApplicationService AgentService Agent

ApplicationApplication

Online ProxyOnline Proxy

ConnectionConnectionManagerManager

Service AgentService AgentManagerManager Service AgentService Agent

Data LoaderData LoaderManagerManager

QueueQueueManagerManager

ExecutorExecutor

ReferenceReferenceData CacheData Cache

Cache BlockCache Block

ConnectionConnectionDetection StrategyDetection Strategy

QueueQueueStorageStorage

• When online:• Takes messages off the

queue• Calls the Online Proxy

to send them to the remote service.

• Sends responses from the remote service back to the application.

• Provides the data store

•message data•operations

Page 21: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Replicating DataReplicating Data

Reference DataReference DataUsually read-onlyUsually read-only

Needed to complete a workflowNeeded to complete a workflow

Should be current with serverShould be current with server

Message DataMessage DataData created during a workflowData created during a workflow

Often transactional in natureOften transactional in nature

ServiceAgent

ConnState

RefData

MessageData

Page 22: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Downloading / Downloading / Uploading DataUploading Data

ServiceAgent

ConnState

RefData

MessageData

Page 23: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Syncing DataSyncing DataWhat just happened?What just happened?

Download Reference DataDownload Reference DataUse a proxy to retrieve data from sourceUse a proxy to retrieve data from source

Store data in the Reference Data CacheStore data in the Reference Data Cache

Upload Changed DataUpload Changed DataUse Message Data Management Use Message Data Management SubsystemSubsystem

In this case, a queueIn this case, a queue

ServiceAgent

ConnState

RefData

MessageData

Page 24: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Offline operationsOffline operationsApplicationApplication

ConnectionConnectionManagerManager

QueueQueue

Application ServiceApplication ServiceAgentAgent

Service AgentService AgentManagerManager

Service AgentService AgentRegistryRegistry

Service AgentService Agent

Page 25: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Completing operations Completing operations onlineonline

ApplicationApplication

Service AgentService AgentManagerManager

QueueQueueStorageStorage

Application ServiceApplication ServiceAgentAgent

Online ProxyOnline ProxyExecutorExecutor

Service AgentService AgentRegistryRegistry

Service AgentService Agent

Page 26: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Bringing it all togetherBringing it all together

Smart client applicationSmart client applicationService Agent ManagementService Agent Management

Connection State ManagementConnection State Management

Message Data ManagementMessage Data Management

Reference Data ManagementReference Data Management

Error handlingError handling

ServiceAgent

ConnState

RefData

MessageData

Page 27: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

The Office 2003 Smart The Office 2003 Smart ClientClient

Office 2003 provides a great Smart Office 2003 provides a great Smart Client environmentClient environment

XML capabilitiesXML capabilities

Smart Document capabilitiesSmart Document capabilities

Research Library capabilitiesResearch Library capabilities

Information Bridge FrameworkInformation Bridge Framework

Visual Studio Tools for OfficeVisual Studio Tools for Office

InfoPath web service form generationInfoPath web service form generation

Page 28: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

General Information Work General Information Work FlowFlow

Storage

Server process

XML, data ordocuments

Microsoft Office 2003 Development TechnologiesMicrosoft Office 2003 Development Technologies

Office programsCreate contentAnalyze/review informationProcess documents

Server ProcessingCreate documentPre-populate templateSearch / extract

Post-Office ProcessingBusiness workflowCollaborative workPublish/distribute/archive

assistive

core contentStorage

Server process

Office U.I.

Custom controls / U.I.

Smart tags

Smart documents

XML schemaData bindingObject modelsResearch task paneDoc. actions task pane

User InteractionBaseProgrammability

XML

Documents

Data

Post-Office Processing

Web services

IBF

Research services

ADO.NET

Web queries

Information Access

XML

VSTO v2005 data island

Server-side Processing

Page 29: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

XML in Office 2003XML in Office 2003

Office documents offer XML as a Office documents offer XML as a persistence formatpersistence format

Applications can generate documents Applications can generate documents through WordMLthrough WordML

Office documents can be associated Office documents can be associated with an XML Schemawith an XML Schema

User works within the rich Office User works within the rich Office environmentenvironment

Schema valid XML data is generatedSchema valid XML data is generated

Can save entire document or just XMLCan save entire document or just XMLCan apply XSL transformsCan apply XSL transforms

Page 30: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Solution Benefits With XML Solution Benefits With XML Documents Documents

•Text•Document•Fragment•Image

•Text•Document•Fragment•Imagesavesave

33Searching &Searching &RepurposingRepurposingContentContent

QueryQuery ResultResult

22 Business Process EfficiencyBusiness Process Efficiency

EfficientcaptureEfficientcapture

ValidatedinformationValidated

informationWeb service

(loose coupled connection)Web service

(loose coupled connection)

+ formatting+ formatting

11 Improved Data AccessImproved Data Access

+ intelligent receipt+ intelligent receipt

55 Document AssemblyDocument Assembly

datadata

formattingformatting

Context-specificassistance

Context-specificassistance

XMLstructure

XMLstructure

44 Intelligent ApplicationsIntelligent Applications

XML

Page 31: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Office 2003 Smart Office 2003 Smart DocDocumentsuments

Extension of associating a document Extension of associating a document with an XML Schemawith an XML Schema

Smart Document Task PaneSmart Document Task PaneFollows the user through the documentFollows the user through the document

Provides contextual content, actions & Provides contextual content, actions & helphelp

Customizable Customizable throughthrough VB6 or VS.NET VB6 or VS.NET

Extension of the Smart Tags 2.0 APIExtension of the Smart Tags 2.0 API

Page 32: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Office 2003 Research Office 2003 Research LibraryLibrary

Searches information sources from Searches information sources from within a documentwithin a document

Returns rich content, forms, actionsReturns rich content, forms, actions

Open architecture via XML Web Open architecture via XML Web ServicesServices

RegistrationRegistration and and QueryQuery methods methods

No code on the clientNo code on the client

Integrated across Office 2003Integrated across Office 2003Word, Excel, PowerPoint, Outlook, etc.Word, Excel, PowerPoint, Outlook, etc.

A number of out-of-the-box servicesA number of out-of-the-box servicesDictionary, etc.Dictionary, etc.

Page 33: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Our strategic tool for developing Office Our strategic tool for developing Office solutionssolutions

Currently supports building document-centric Currently supports building document-centric solutions for Word and Excel 2003solutions for Word and Excel 2003

VSTO makes Office development VSTO makes Office development approachable to the profession developerapproachable to the profession developer

Provides all the productivity of Visual StudioProvides all the productivity of Visual Studio

Provides all the power of the .NET FrameworkProvides all the power of the .NET Framework

Leverages the skills of .NET developersLeverages the skills of .NET developers

VSTO solutions are secure and easy to VSTO solutions are secure and easy to deploydeploy

Based on .NET Code Access SecurityBased on .NET Code Access Security

Online ClickOnce deployment modelOnline ClickOnce deployment model

Visual Studio Tools for the Visual Studio Tools for the Microsoft Office SystemMicrosoft Office System

Page 34: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Information Bridge Information Bridge FrameworkFramework

Web Service-based architecture (SOA)Centralized metadata/UI serverRuntime for smart tag / XML event initiationWindows Forms and task pane support

MetadataMetadata

FinanceFinance

ERPERP

CRMCRM

Smart ClientsSmart Clients

Web Web ServicesServices

Web Web ServicesServices

Page 35: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Information Bridge Information Bridge ArchitectureArchitecture

ClientClient

ServerServer

CRM

CustomerInformation

Invoices

Orders SAPLegacy

ApplicationAggregation

Service

Web ServiceOptional: Information

Bridge Compliant

Web ServiceOptional: Information

Bridge Compliant

Web ServiceOptional: Information

Bridge Compliant

Office Application

(Word, Excel, Outlook)Attached SchemaAttached Schema

Smart TagSmart Tag

MetadataMetadataCacheCache User ControlUser Control

DesignerDesigner

Visual Studio

Development OnlyDevelopment Only

Web services

U.I.U.I.(WinForm, XSLT)(WinForm, XSLT)

U.I.U.I.(WinForm, XSLT)(WinForm, XSLT)

(SOAP)

MetadataMetadataDesignerDesigner

Metadata ServiceMetadata Service MetadataMetadataDatabaseDatabase

Information Bridge Runtime(Office add-in)

Task Pane ManagerTask Pane Manager

Office IntegrationOffice Integration

U.I. RenderingU.I. Rendering

Page 36: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Device ProgrammabilityDevice ProgrammabilityBroad Reach vs. Smart DeviceBroad Reach vs. Smart Device

ASP.NET Mobile ASP.NET Mobile ControlsControls

ASP.NET Mobile ASP.NET Mobile ControlsControls

Mobile Web Mobile Web BrowserBrowser

Mobile Web Mobile Web BrowserBrowser

Remote Web PagesRemote Web Pages

Device Operating SystemDevice Operating SystemDevice Operating SystemDevice Operating System

Smart Device Smart Device ProgrammabilitProgrammabilit

yy

Smart Device Smart Device ProgrammabilitProgrammabilit

yy

.NET Compact .NET Compact FrameworkFramework

.NET Compact .NET Compact FrameworkFramework

Local CodeLocal Code

Smart clientSmart client

Page 37: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Smart Device Smart Device ProgrammabilityProgrammabilityVS .NET and .NET Compact VS .NET and .NET Compact FrameworkFramework

Common Language RuntimeCommon Language Runtime

Base Class LibrariesBase Class Libraries

ADO.NET and XMLADO.NET and XML

ASP.NETASP.NETWeb FormsWeb Forms

Web Web ServicesServices

WindowsWindowsFormsForms

VisualVisualBasicBasic C++C++ C#C# J#J# …… V

isu

al S

tud

io .N

ET

Vis

ual S

tud

io .N

ET

Smart Device Smart Device ProgrammabilitProgrammabilityy• Targets .NET Targets .NET Compact Compact FrameworkFramework• Integrated IDEIntegrated IDE• EmulatorsEmulators• Remote Remote debuggingdebugging

.NET Compact .NET Compact FrameworkFramework• Managed codeManaged code• Web servicesWeb services• Rich subset Rich subset of .NET of .NET Framework Class Framework Class LibrariesLibraries

Page 38: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Windows Forms SamplesWindows Forms Samples

www.windowsforms.net www.windowsforms.net

IssueVison, FotoVision, TaskVision, IssueVison, FotoVision, TaskVision, Infragistics TrackerInfragistics Tracker

Page 39: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

Smart Device DataSmart Device Data

SQL Server CESQL Server CEOn-device data engine for Windows CE-On-device data engine for Windows CE-powered devicespowered devices

Rich replication and synchronization with Rich replication and synchronization with SQL ServerSQL Server

Designed for high performance in Designed for high performance in resource-constrained environmentsresource-constrained environments

Managed .NET Compact Framework Managed .NET Compact Framework providerprovider

Page 40: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

ResourcesResourcesWeRock 247WeRock 247

Sample Application Suite, Documentation, Tutorials, etcSample Application Suite, Documentation, Tutorials, etc

Windows Forms ResourcesWindows Forms ResourcesRecent Web Cast SeriesRecent Web Cast SeriesSample ApplicationsSample ApplicationsSamplesSamples

MSDN Developer CentersMSDN Developer CentersSmart Client Developer Smart Client Developer CenterCenterVisual Studio 2005Visual Studio 2005Mobile DevicesMobile DevicesOffice System 2003Office System 2003

Office DevelopmentOffice DevelopmentXML, Smart Documents, Research Services & More XML, Smart Documents, Research Services & More Research ServicesResearch ServicesInformation Bridge FrameworkInformation Bridge FrameworkVisual Studio Tools For OfficeVisual Studio Tools For Office

Page 41: The Ultimate Web Service Client: Making the Most of Your SOA Investment Mike Pelton Developer & Platform Group Microsoft Ltd mpelton@microsoft.com

© 2004 Microsoft Limited. All rights reserved.© 2004 Microsoft Limited. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summaryThis presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary..