client continuum dec fy09
TRANSCRIPT
Agenda
•10:00-11:15 The Microsoft Client Continuum – Ronan Geraghty
•11:30-13:00 Introducing WPF – Max Knor
•14:00-15:30 Building WPF composite smart clients – Max Knor
•15:45-17:00 Building RIAs with Silverlight 2 – Martha Rotter
The Microsoft Client Continuum
Ronan Geraghty
Developer and Platform Group
http://blogs.msdn.com/ronang
What is User Experience?
all aspects of the end-user's interaction
with the company, its services, and its
products
User Experience
User Experience in Software?
User Experience
Often Comes LastSource: www.userinterfacehallofshame.com
User Experience
Often Comes LastSource: www.userinterfacehallofshame.com
Why is this the case?
Well understood environment
Dedicated development staff
Stable business capabilities
Why is this the case?
Difficult to justify investment
Optimizing for look and feel
Thin gloss over poor experience
•LOB Apps:
•Applications are not revenue drivers
•Applications are not customer-facing
•Focus is on the cost of doing business
User Experience in Software?
Measuring UX ROI
SuccessProductivity
RetentionComprehension
ConversionSatisfactionExcitementRepeat Use
lessons around User Experience
UX
Matters
Design
Matters
One-size
does not
Fit-all
Introducing…
The Microsoft Client
Continuum
.NET platform choices for
creating compelling user
experiences
Microsoft Client Continuum
There are many
touch points
We now interact w/ brands differently
We work differently…
Client continuum capabilities
Mac OSX
Reach
No sandbox
Coded .NET
Out-of browser
Rich
Sandboxed
HTML + AJAX
In-browser
Extended sandbox
Coded in .NET
In-browser
Client continuum capabilitiesP
erm
issio
ns
Ric
hn
ess
Mac OSXAny OS
sandbox
Extended
sandbox
Full Trust
In browser
Client continuum tenets…
Design matters
One Size does not fit all
Common foundation
Client continuum tenets…
Design matters
One Size does not fit all
Common foundation
Project Starts!
Project Complete
Use cases created IT + User / BA
Prototyping IT
Development
of ServicesIT
UI is created IT
User Testing User / BA
I know what we’ll do…
Project Starts!
Use cases created
Prototyping
Development
of Services
UI is created
IT + User / BA
IT
IT
IT
User Testing
Project Complete
User / BAUI Polished UI Designer
Designer / Developer
Collaboration
designers design
designers & developers can
streamline their collaboration
developers add business logic
Developers and designers collaborating
designer developer
XAMLExtensible Application Markup Language
• Declarative
• Toolable
• Code and content are separate
<Button Width="100"> OK
<Button.Background>
LightBlue
</Button.Background>
</Button>
XAMLButton b1 = new Button();
b1.Content = "OK";
b1.Background = new SolidColorBrush(Colors.LightBlue);
b1.Width = 100;
C#Dim b1 As New Button
b1.Content = "OK"
b1.Background = New _SolidColorBrush(Colors.LightBlue)
b1.Width = 100
VB.NET
Client continuum tenets…
Design matters
One Size does not fit all
Common foundation
One-size
does not
Fit-all
One size can not address all scenarios
• Platform capabilities
• Hardware acceleration?
• Shell/native integration?
• Form factor?
• Security
• Browser Sandbox?
• Download size
• Refactoring
• Off-line?
lower latency, rich interactivity, x-browser,tools for ajax-style development
lower latency, rich interactivity, x-browser,tools for ajax-style development
ASP.NET AJAXbenefits
• increased productivity and enhanced
browsing experience
• ubiquitous, cross-platform, standards-
based
• zero installation
• rich tool support, improved developer-
designer workflow
• seamless access to asp.net application
services
Silverlight
• Microsoft's platform for rich, highly interactive Web experiences and RIAs
• Cross-platform (browsers and OSes)• Windows, Mac OS, Linux ("Moonlight")
• Internet Explorer, Firefox, Safari, and more
• XAML-based rendering (subset of WPF XAML)• Implemented as browser plug-in
• Quick, easy install experience
Silverlight Installation Experience
MSCUI Patient MonitorNBC OlympicsHard Rock Memorabilia
Silverlightbenefits
• Richer web experience• Media & RIA
• Cross-platform, cross-browser support
• increase developer productivity
• leverage existing code base and skills
Deep Zoom
• Bandwidth optimized navigation of large
images
• Smooth Zoom and pan transitions
http://memorabilia.hardrock.com
Silverlight Media Stack
• In the box codec
• VC-1
• H.264 (announced)
• Adaptive Streaming
• Media Markers
• PlayReady DRM
• Rendered on
software
• Optimized for multi-
core
HTML integration
• Two way data
• Events
• DOM inspection
Demo - Silverlight
• Unify UI, media, graphics and
documents
• Take full advantage of the graphical
power of the PC
• Easy, low-impact deployment options
• Integration with Office and Windows
• Compatibility with Silverlight for web
and devices
Within twelve months of launch, 20% of Global ISVs had already adopted WPF for at least one production application
Engine
Framework
Integration
ibloks media mash-upsnorthface kiosk appnew york times digital content
Windows Presentation Foundation
(WPF)benefits
• deliver visually stunning smart client
experiences through ui, media, and
documents
• increase developer-designer
productivity
• leverage existing code base and skill
set
• derive business value
AutoCAD 2009Using WPF for application chrome: ribbon, action recorder and QuickView Status:
Shipping
Trial: http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=2704278
Lawson M3 Smart Client
Lawson’s flagship application for manufacturing and distribution companiesStatus: Shipping
Case study: http://www.frogdesign.com/pdf/frog_design_lawson.pdf
WPF Strengths
Windows Integration
Shell (Gadgets, Sideshow, System
Tray)
File Associations
Desktop Stickiness (Start Menu, System Tray)
Local Search Provider
Native APIs
Instrumentation and Logging
Office Integration
Outlook
OBAs
Phone Integration
Full Hardware Access
DirectX Acceleration
Full Threading And Scheduling APIs
Tablet, Touch, Webcam and other
Input Modes
Accessibility Aids
Security and Encryption
Power Management
Offline Support
Disconnected Scenarios
Sync Frameworks
Caching
File System Access
Other Scenarios
3D
Rich Typography
International Character Sets
Flow Documents
Demo - WPF
Client continuum tenets…
Design matters
One Size does not fit all
Common foundation
A .NET foundation
• Developer productivity
• Existing skills
• Reusing existing code
• Decrease costs
• Accelerate Time to
Market
• Better applications
SilverlightDeep Zoom WMV HTML interop
From .NET to Silverlight
Windows Presentation Foundation
Windows Communication
Foundation
Windows Workflow
Foundation
Windows CardSpace
.NET Framework 3.0
.NET Framework 3.5
LINQ ASP .NET 3.5 CLR Add-insLanguage
Enhancements
.NET Framework 2.0
Windows Forms
ASP
Base Class Library
ADO.NETWeb
Services
Networking
Socket/HTTP
Create
LeadQualified?
Retire
Lead
Create
Opportunity
Create
QuoteClosed?
Complete
Sale
Create Invoice
CRM ERP
Real World Information Work
Get specs from
customer
Validate specs with Tech Sales
Estimate custom design
Cost out the
solution
Decide discount strategy
Assemble
proposed
response
Approve proposed response
Unstructured
LOB Apps
Office Business Applications (OBAs)
OfficeBusinessApplicatio
ns
Office As A Web Service Client
Dassault PLM Integration
Tools for any skill level
Demo - OBA
Deploying .NET Applications
.NET Applications pre-requisites
5 MB, one-time •.NET Framework 3.5
•70 MB, one-time
Mac OSX
Deploying applications
• Silverlight
• Application does not install but gets cached
• Runs in browser’s sandbox
• WPF
• ClickOnce
• Installs application, per user
• XBAP
• Application does not install but gets cached
• Runs in the browser
• Runs in a sandbox
• MSI
.NET Client profile SKU
.NET 3.5 SP1
.NET 3.0 SP2
.NET 2.0 SP2
Full .NET Framework
60 MB download
20+ mins install
.
.NET Client Only Framework
3.5 SPI
subset
3.0 SP2
subset
2.0 SP2
subset
28 MB download
< 8 mins to install
ClickOnce
Web ClickOnce
MSI Client
Reach
“No Touch” Deployment
Low System Impact
Install / Run Per-User
Rich / Interactive
Offline Access
Windows Shell Integration
Per-Machine / Shared Components
Unrestricted Install
A technology for deploying and versioning applications with the power of the client and the
simplicity of the web
Conclusion
• UX Matters!
• User Experience and how we engage with
‘customers’ evolves every day.
• Embracing UX as a competitive advantage.
• Think about how the platform choice,
productivity, and performance will affect
the user
• Look at existing experiences to see if there is an
extensibility option
• Enjoy the cool demos, but don’t forget
the business angle / opportunity
© 2006 microsoft corporation. all rights reserved.this presentation is for informational purposes only. microsoft makes no warranties, express or implied, in this summary.