67
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

Client Continuum Dec Fy09

Embed Size (px)

Citation preview

Page 1: Client Continuum Dec Fy09

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

Page 2: Client Continuum Dec Fy09

The Microsoft Client Continuum

Ronan Geraghty

Developer and Platform Group

http://blogs.msdn.com/ronang

Page 3: Client Continuum Dec Fy09

What is User Experience?

Page 4: Client Continuum Dec Fy09

all aspects of the end-user's interaction

with the company, its services, and its

products

User Experience

Page 5: Client Continuum Dec Fy09

User Experience in Software?

Page 6: Client Continuum Dec Fy09
Page 7: Client Continuum Dec Fy09

User Experience

Often Comes LastSource: www.userinterfacehallofshame.com

Page 8: Client Continuum Dec Fy09

User Experience

Often Comes LastSource: www.userinterfacehallofshame.com

Page 9: Client Continuum Dec Fy09

Why is this the case?

Well understood environment

Dedicated development staff

Stable business capabilities

Page 10: Client Continuum Dec Fy09

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

Page 11: Client Continuum Dec Fy09

User Experience in Software?

Measuring UX ROI

SuccessProductivity

RetentionComprehension

ConversionSatisfactionExcitementRepeat Use

Page 12: Client Continuum Dec Fy09

lessons around User Experience

Page 13: Client Continuum Dec Fy09

UX

Matters

Page 14: Client Continuum Dec Fy09

Design

Matters

Page 15: Client Continuum Dec Fy09

One-size

does not

Fit-all

Page 16: Client Continuum Dec Fy09

Introducing…

The Microsoft Client

Continuum

.NET platform choices for

creating compelling user

experiences

Page 17: Client Continuum Dec Fy09

Microsoft Client Continuum

Page 18: Client Continuum Dec Fy09

There are many

touch points

Page 19: Client Continuum Dec Fy09

We now interact w/ brands differently

Page 20: Client Continuum Dec Fy09

We work differently…

Page 21: Client Continuum Dec Fy09

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

Page 22: Client Continuum Dec Fy09

Client continuum capabilitiesP

erm

issio

ns

Ric

hn

ess

Mac OSXAny OS

sandbox

Extended

sandbox

Full Trust

In browser

Page 23: Client Continuum Dec Fy09

Client continuum tenets…

Design matters

One Size does not fit all

Common foundation

Page 24: Client Continuum Dec Fy09

Client continuum tenets…

Design matters

One Size does not fit all

Common foundation

Page 25: Client Continuum Dec Fy09

Project Starts!

Project Complete

Use cases created IT + User / BA

Prototyping IT

Development

of ServicesIT

UI is created IT

User Testing User / BA

Page 26: Client Continuum Dec Fy09

I know what we’ll do…

Page 27: Client Continuum Dec Fy09

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

Page 28: Client Continuum Dec Fy09

Designer / Developer

Collaboration

Page 29: Client Continuum Dec Fy09

designers design

designers & developers can

streamline their collaboration

developers add business logic

Developers and designers collaborating

designer developer

Page 30: Client Continuum Dec Fy09

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

Page 31: Client Continuum Dec Fy09

Client continuum tenets…

Design matters

One Size does not fit all

Common foundation

Page 32: Client Continuum Dec Fy09

One-size

does not

Fit-all

Page 33: Client Continuum Dec Fy09

One size can not address all scenarios

• Platform capabilities

• Hardware acceleration?

• Shell/native integration?

• Form factor?

• Security

• Browser Sandbox?

• Download size

• Refactoring

• Off-line?

Page 34: Client Continuum Dec Fy09

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

Page 35: Client Continuum Dec Fy09
Page 36: Client Continuum Dec Fy09

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

Page 37: Client Continuum Dec Fy09

Silverlight Installation Experience

Page 38: Client Continuum Dec Fy09

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

Page 39: Client Continuum Dec Fy09

Deep Zoom

• Bandwidth optimized navigation of large

images

• Smooth Zoom and pan transitions

http://memorabilia.hardrock.com

Page 40: Client Continuum Dec Fy09

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

Page 41: Client Continuum Dec Fy09

HTML integration

• Two way data

• Events

• DOM inspection

Page 42: Client Continuum Dec Fy09

Demo - Silverlight

Page 43: Client Continuum Dec Fy09
Page 44: Client Continuum Dec Fy09

• 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

Page 45: Client Continuum Dec Fy09

Engine

Framework

Integration

Page 46: Client Continuum Dec Fy09

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

Page 47: Client Continuum Dec Fy09

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

Page 48: Client Continuum Dec Fy09

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

Page 49: Client Continuum Dec Fy09

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

Page 50: Client Continuum Dec Fy09

Demo - WPF

Page 51: Client Continuum Dec Fy09

Client continuum tenets…

Design matters

One Size does not fit all

Common foundation

Page 52: Client Continuum Dec Fy09

A .NET foundation

• Developer productivity

• Existing skills

• Reusing existing code

• Decrease costs

• Accelerate Time to

Market

• Better applications

Page 53: Client Continuum Dec Fy09

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

Page 54: Client Continuum Dec Fy09
Page 55: Client Continuum Dec Fy09

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

Page 57: Client Continuum Dec Fy09

Office As A Web Service Client

Page 58: Client Continuum Dec Fy09

Dassault PLM Integration

Page 59: Client Continuum Dec Fy09

Tools for any skill level

Page 60: Client Continuum Dec Fy09

Demo - OBA

Page 61: Client Continuum Dec Fy09

Deploying .NET Applications

Page 62: Client Continuum Dec Fy09

.NET Applications pre-requisites

5 MB, one-time •.NET Framework 3.5

•70 MB, one-time

Mac OSX

Page 63: Client Continuum Dec Fy09

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

Page 64: Client Continuum Dec Fy09

.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

Page 65: Client Continuum Dec Fy09

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

Page 66: Client Continuum Dec Fy09

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

Page 67: Client Continuum Dec Fy09

© 2006 microsoft corporation. all rights reserved.this presentation is for informational purposes only. microsoft makes no warranties, express or implied, in this summary.