Smart Clients in ActionSmart Clients in Action
Rob BarkerTechnical EvangelistDeveloper & Platform EvangelismMicrosoft [email protected]
Rob BarkerTechnical EvangelistDeveloper & Platform EvangelismMicrosoft [email protected]
AgendaAgenda
Why are Smart Clients important?
Smart Client scenarios
Technology overview
Roadmap
Why are Smart Clients important?
Smart Client scenarios
Technology overview
Roadmap
ITIT BusinessBusiness
Business PracticeBusiness Practice
Business FunctionsBusiness FunctionsApplicationsApplications
InfrastructureInfrastructure
judgmentjudgment
insightinsight tradeoffstradeoffschangechange oversightoversight
strategystrategy
Bridging the Gap
Business Business ApplicationsApplications
Business PracticeBusiness Practice
InfrastructureInfrastructure
Business PracticeBusiness Practice
Business FunctionsBusiness FunctionsApplicationsApplications
InfrastructureInfrastructure
CollaborateCollaborateDecideDecide ActAct
InsightInsight OversigOversightht
Efficient Business Ecosystem
Intellectual capital stored in multiple systemsComplexity increases as number of systems increaseUsers productivity decreases as number of disparate systems and user interfaces increasesSystems effectiveonly if users can interact with datanaturallyNeed for data both online and offline
The Client “Last Mile” Problem
Smart Client SolutionsSmart Client Solutions
Activity based clients for acting on dataConsume and provide data in relevant contextAllows users to analyze and act on data quickly
Activity based clients for acting on dataConsume and provide data in relevant contextAllows users to analyze and act on data quickly
XML WebXML WebServicesServices
“The Client is Back” Jonathan Schwartz, Sun’s president and COO Opening remarks at JavaOne 2004
“The problems with browser-based approaches … have become all too well-known”
“The current enthusiasm for a browser-based enterprise is shortsighted. As firms trade in their desktop clients for browsers they’ll find: primitive functionality… bandwidth gluttony… terrible usability.”
IBM Puts New Spin On Client Computing
(May 2004)
Industry Momentum is Building for a New ClientIndustry Momentum is Building for a New Client
“…It sounds a bit like heresy, but the web-based portal does not really make a very effective interface to functionality that resides in many systems"
“Web-based solutions just can’t provide the rich users interface and performance which users like our traders need.”
“As proof of their disillusionment, a staggering one-third of IT decision makers report having plans for migrating some applications back to richer client environments.”
Web Services &Offline/Online
support
DeviceAdaptability
Tough toDeploy
HeavyFootprint
DLL Hell
NetworkDependency
Poor UserExperience
ComplexTo Develop
Rich UserExperience
DeveloperProductivity
Responsive
BroadReach
Easy ChangeManagement
Ease ofDeployment
CompetitiveAdvantage
CommunicateCommunicate
DecideDecide
AuthorAuthor AbsorbAbsorb
CollaborateCollaborate
AccessAccess
Benefits
Top Line
Empower every individual
Experience reflects activity
Capitalize on investments in service orientation
Friction free information flow
Bottom Line
Development
Operations
Resources
Training
Usage Requirements Occasional usersHighly responsive UIMobile usersEcosystem collaboration
Solution CapabilitiesTake advantage of existing hardware investmentsConnectedOffline capableIntelligent install and deploymentDevice flexibility
Smart Client ScenariosSmart Client Scenarios
Line of Line of BusinessBusinessLine of Line of
BusinessBusinessWeb Web
EnrichmentEnrichmentWeb Web
EnrichmentEnrichment MobilityMobilityMobilityMobility
Interactive Web Interactive Web Shopping Shopping
ApplicationApplication
Online/Offline Online/Offline Portal ApplicationsPortal Applications
Real Estate Real Estate Document Document GenerationGeneration
Inventory Inventory ManagementManagement
Mobile Technician Mobile Technician ApplicationApplication
CRM/SFA Apps on CRM/SFA Apps on Mobile DevicesMobile Devices
Agency InspectionsAgency Inspections
Real-time Contract Real-time Contract CreationCreation
Call Centers Call Centers ApplicationsApplications
Bank Teller Bank Teller ApplicationsApplications
Data Analysis (BI)Data Analysis (BI)
Office front-end to Office front-end to CRM SystemCRM System
Win
dow
Win
dow
ssO
ffice
Offi
ce
Line Of Business Smart ClientsLine Of Business Smart Clients
Data in LOB systems are often Data in LOB systems are often exposed on a per data source exposed on a per data source basisbasis
One client per LOB appOne client per LOB app
Users typically need to deal Users typically need to deal with multiple back end with multiple back end systems to complete routine systems to complete routine taskstasksSmart Clients tie together Smart Clients tie together multiple back end systems to multiple back end systems to match users roles and match users roles and activities in a single, activities in a single, responsive interfaceresponsive interfaceUsers are able to be more Users are able to be more productive thereby productive thereby completing tasks more completing tasks more efficientlyefficiently
Line of Line of BusinessBusinessLine of Line of
BusinessBusiness
Call Centers Call Centers ApplicationsApplications
Bank Teller Bank Teller ApplicationsApplications
Data Analysis (BI)Data Analysis (BI)
Office front-end to Office front-end to CRM SystemCRM System
Win
dow
Win
dow
ssO
ffice
Offi
ce
Web Enrichment Smart ClientWeb Enrichment Smart Client
The Web offers a limited user The Web offers a limited user experienceexperience‘‘Forward-Back-Roundtrip’ Forward-Back-Roundtrip’ paradigm time consuming and paradigm time consuming and inconvenientinconvenientAllowing to interact with Web Allowing to interact with Web data offlinedata offlineNeed to be able to view and Need to be able to view and act on heterogeneous data act on heterogeneous data without losing contextwithout losing contextSmart Clients bring data into a Smart Clients bring data into a more effective user interface more effective user interface where they can be more where they can be more easily viewed, added to, and easily viewed, added to, and acted uponacted upon
Web Web EnrichmentEnrichment
Web Web EnrichmentEnrichment
Interactive Web Interactive Web Shopping Shopping
ApplicationApplication
Online/Offline Online/Offline Portal ApplicationsPortal Applications
Real Estate Real Estate Document Document GenerationGeneration
Inventory Inventory ManagementManagement
Win
dow
Win
dow
ssO
ffice
Offi
ce
Mobile Smart ClientMobile Smart Client
Information workers are highly Information workers are highly mobile today; applications are mobile today; applications are notnotUsers require the relevant Users require the relevant information to be available at information to be available at all times to make business all times to make business decisionsdecisionsSmart Clients can intelligently Smart Clients can intelligently synchronize data to the client synchronize data to the client for use offlinefor use offlineOptimize available Optimize available connectivity options and connectivity options and schedulesschedules
MobilityMobilityMobilityMobility
Mobile Technician Mobile Technician ApplicationApplication
CRM/SFA Apps on CRM/SFA Apps on Mobile DevicesMobile Devices
Agency InspectionsAgency Inspections
Real-time Contract Real-time Contract CreationCreation
Win
dow
Win
dow
ssO
ffice
Offi
ce
Smart Client TechnologiesSmart Client Technologies
Smart ClientsSmart Clients
XML & Web ServicesXML & Web ServicesXML & Web ServicesXML & Web Services
Windows Windows FormsForms
ClickOnceClickOnce
Create a custom UI and work Create a custom UI and work flow to match your business flow to match your business processprocessConsolidate data from Consolidate data from multiple back end systems multiple back end systems Create an interact web Create an interact web experience that works offlineexperience that works offlineSimplify deployment and Simplify deployment and managementmanagementBuild applications for Build applications for environments where Office is environments where Office is not availablenot availableSupport mobile devices (e.g. Support mobile devices (e.g. PDA, smart phone)PDA, smart phone)
Easily connect back-end data Easily connect back-end data to familiar front-end to familiar front-end applications applications Utilize existing Office Utilize existing Office features and capabilitiesfeatures and capabilitiesAdd business logic to Office Add business logic to Office documentsdocumentsCreate simple and intuitive Create simple and intuitive formsformsAutomatically pull XML and Automatically pull XML and other data into Excel or Wordother data into Excel or WordGenerate text-intensive Generate text-intensive documents with rich documents with rich formattingformatting
Smart ClientsSmart ClientsSmart ClientsSmart Clients
WindowsWindowsApplicationApplication
DeviceDeviceApplicationApplication
Code BehindCode BehindSmart DocumentSmart Document
ApplicationApplicationAdd-In orAdd-In orExtensionExtension
Smart Client TechnologiesSmart Client Technologies
XML & Web ServicesXML & Web ServicesXML & Web ServicesXML & Web Services
Smart ClientsSmart Clients
Smart Client TechnologiesSmart Client Technologies
Smart ClientsSmart Clients
Windows ApplicationWindows Application• .NET Framework.NET Framework• Windows FormsWindows Forms• ClickOnceClickOnce
Device ApplicationDevice Application• .NET Compact Fx.NET Compact Fx• Windows FormsWindows Forms
Code Behind SmartDocCode Behind SmartDoc• VSTOVSTO• WordWord• ExcelExcel• InfopathInfopath
Application ExtensionApplication Extension• VSTOVSTO• OutlookOutlook
Radically simplified application deployment
ClickOnce deployment, update, rollback
Visually Appealing UINew Data ControlsOffice Look and Feel
Developer productivity
Simplify working with dataFewer lines of codeFew clicks
Windows Forms Smart Clients
.NET Framework distribution
120 million deploymentsPreinstalled on 60% of new machines and growingIncluded on SP2 CD
Windows Mobile Smart ClientsInstant access to data
anywhere, anytimeForm factor and instant-on more appropriate for most field workAccess existing Web ServicesLeverage .NET development skills and code on devices with .NET Compact Framework
Office System Smart ClientsOffice System Smart Clients
Connect live business data to your documents & access them off-lineLeverage existing Office experience of end usersLeverage rich and robust Office functionalityPlatform InvestmentsDevelopment Tools
Visual Studio 2005 Tools for Office
Microsoft Office Information Bridge Framework
Connect live business data to your documents & access them off-lineLeverage existing Office experience of end usersLeverage rich and robust Office functionalityPlatform InvestmentsDevelopment Tools
Visual Studio 2005 Tools for Office
Microsoft Office Information Bridge Framework
Visual Studio 2005 Tools For OfficeVisual Studio 2005 Tools For Office
Strategic tool for developing Office solutions
Currently supports building document-centric solutions for Word and Excel 2003
Office development approachableProvides all the productivity of Visual StudioProvides all the power of the .NET FrameworkLeverages the skills of .NET developers
Secure and easy to deployBased on .NET Code Access SecurityOnline ClickOnce deployment model with Visual Studio 2005 (Beta)
Strategic tool for developing Office solutions
Currently supports building document-centric solutions for Word and Excel 2003
Office development approachableProvides all the productivity of Visual StudioProvides all the power of the .NET FrameworkLeverages the skills of .NET developers
Secure and easy to deployBased on .NET Code Access SecurityOnline ClickOnce deployment model with Visual Studio 2005 (Beta)
• Visual Studio 2005• Windows Forms 2.0 - ClickOnce• Future Windows Mobile• .NET Compact Framework 2.0• .NET Framework 2.0
• VSTO 2003 - Microsoft Office Word 2003 - Microsoft Office Excel 2003• Microsoft Office IBF 1.5 (SP) - Microsoft Word 2003 - Microsoft Excel 2003 - Microsoft Outlook 2003 - Microsoft Office InfoPath 2003 - Microsoft Internet Explorer
VSTO 2005 - Microsoft Office Word 2003 - Microsoft Office Excel 2003 - Microsoft Office InfoPath 2003IBF with LOB Connectors - Out-of-Box Connectivity to LOBs - Tool Enhancements - New Hosts Supported
Technology RoadmapTechnology Roadmap
• Visual Studio .NET 2003• Windows Forms 1.0• PAG - Application Updater Block - Offline Block• .NET Compact Framework 1.0• .NET Framework 1.1
Now Future
SummarySummary
Why Smart Client solutions are importantSmart Client Scenarios
Line of BusinessWeb EnrichmentMobile Field
Reviewed TechnologiesWindows FormsWindows MobileMicrosoft Office System
Visual Studio 2005 Tools for OfficeMicrosoft Information Bridge Framework
Roadmap
Why Smart Client solutions are importantSmart Client Scenarios
Line of BusinessWeb EnrichmentMobile Field
Reviewed TechnologiesWindows FormsWindows MobileMicrosoft Office System
Visual Studio 2005 Tools for OfficeMicrosoft Information Bridge Framework
Roadmap
ResourcesPlaces to learn more about Smart Clients
ResourcesPlaces to learn more about Smart Clients
Smart Clientshttp://msdn.microsoft.com/office/ http://msdn.microsoft.com/smartclient/ http://microsoft.com/net/smartclient/
Sample code, forums, articles, etc.http://www.microsoft.com/resources/practices/default.mspxhttp://www.windowsforms.net http://msdn.microsoft.com/vstudio
Additional smart client technologiesWindows Forms: http://www.windowsforms.netMobile: http://msdn.microsoft.com/mobility/ Architecture: http://msdn.microsoft.com/architecture/ Data Access: http://msdn.microsoft.com/data/
Visual Studio Tools for Office, etc.http://msdn.microsoft.com/office/ http://msdn.microsoft.com/office/understanding/vsto
Smart Clientshttp://msdn.microsoft.com/office/ http://msdn.microsoft.com/smartclient/ http://microsoft.com/net/smartclient/
Sample code, forums, articles, etc.http://www.microsoft.com/resources/practices/default.mspxhttp://www.windowsforms.net http://msdn.microsoft.com/vstudio
Additional smart client technologiesWindows Forms: http://www.windowsforms.netMobile: http://msdn.microsoft.com/mobility/ Architecture: http://msdn.microsoft.com/architecture/ Data Access: http://msdn.microsoft.com/data/
Visual Studio Tools for Office, etc.http://msdn.microsoft.com/office/ http://msdn.microsoft.com/office/understanding/vsto