Mikehall FutureWorld 2010 - enabling connectivity

27
Enabling Connectivity Mike Hall Principal Software Architect Windows Embedded Business Microsoft Corporation [email protected]

Transcript of Mikehall FutureWorld 2010 - enabling connectivity

Page 1: Mikehall FutureWorld 2010 - enabling connectivity

Enabling Connectivity

Mike Hall Principal Software Architect Windows Embedded Business Microsoft Corporation [email protected]

Page 2: Mikehall FutureWorld 2010 - enabling connectivity

“Create experiences that combine the magic

of software with the power of internet

services across a world of devices”

Microsoft corporate vision, 2008

Page 3: Mikehall FutureWorld 2010 - enabling connectivity

“Create experiences that combine the magic

of software with the power of internet

services across a world of devices”

Microsoft corporate vision, 2008

Page 4: Mikehall FutureWorld 2010 - enabling connectivity

Enabling Connectivity

• Agenda

– Connectivity

– Hardware

– User Experience

– Cloud Enabled

• World Readiness

Page 5: Mikehall FutureWorld 2010 - enabling connectivity

60’s 70’s 80’s 90’s 2000 2010+

The Era Of The Mainframe

The Era Of The Minicomputer

The Era Of The The Pc

The Era Of The Desktop Internet

The Era Of The Mobile Internet

GROWTH IN THE PERVASIVENESS OF COMPUTING

The consensus is that by 2020 the number of connected devices will

outnumber the worlds population

Page 6: Mikehall FutureWorld 2010 - enabling connectivity

Consensus suggests that the number of “connection capable” devices

will soon outnumber the number of humans and that these devices will

increasingly be M2M and/or remote, mobile or movable devices

Number of connected devices (in Billions)

The Era Of The Mainframe

The Era Of The Minicomputer

The Era Of The The Pc

The Era Of The Desktop Internet

The Era Of The Mobile Internet

60’s 70’s 80’s 90’s 2000 2010+

Number of connected devices (in Billions)

1

10

2

3

4

5

6

7

8

9

Mainframe Units:

1MM+ Sockets

PC Units:

100M+ Sockets

The Desktop Internet Units:

1B+ Sockets

The Mobile Internet Units:

1.5B+ Sockets

2020 10s of Billions

of units

Minicomputer Units:

10M+ Sockets

2020 7.7+B People

Page 7: Mikehall FutureWorld 2010 - enabling connectivity

Different environments pose

different connection challenges

LAN

– The question of connectivity has largely been solved at the transport, control and monitoring layers

– Useful for fixed environments but doesn’t meet the core requirements of emergent / hi growth device types

WiFi

– Effective for fixed and some confined mobility apps

– Significant challenges around pervasive access, coverage and security remain for many emergent device types

WAN

– Offers optimal connectivity characteristics for a wide range of remote, mobile or movable device scenarios

– Significant technical, operational and commercial challenges remain to be resolved

Page 8: Mikehall FutureWorld 2010 - enabling connectivity

The process that our customers must go through

today to develop WAN solutions is costly complex and

long

DEPLOY OPERATE & OPTIMIZE

PLAN & BUILD

SOLUTION DEVELOPMENT PROCESS OEM/DEVELOPER CHALLENGES

COMPLEXITY

•Thousands of OEM’s, DO’s, App Developers and

Mobile Operators

•No Clear standard for devices operating systems

•Different network standards and modules

COST

•Lack of flexible device management/billing

capabilities

•Expensive bandwidth

•Expensive wireless modules

TIME TO MARKET

•Nascent cloud services

•Lengthy development timelines

PRODUCTS

SERVICE CUSTOMERS

Solving these challenges requires the involvement of more than one party in the process BUT realizing the full potential of connected devices requires that they be solved

Page 9: Mikehall FutureWorld 2010 - enabling connectivity

Enabling Connectivity

• Connectivity without experience isn’t useful

• Agenda

– Connectivity

– Hardware

– User Experience

– Cloud Enabled

• World Readiness

Page 10: Mikehall FutureWorld 2010 - enabling connectivity

Hardware Trends

Page 11: Mikehall FutureWorld 2010 - enabling connectivity

Software Trends

Page 12: Mikehall FutureWorld 2010 - enabling connectivity

User Experience Trends

The Evolution of

User Interface Design

Consumers buy devices based on your product’s user experience, not specs. The next-generation cell phones and media players changed the playing field.

Page 13: Mikehall FutureWorld 2010 - enabling connectivity

MANY-CORE PROCESSING

SCREENS EVERYWHERE

NATURAL UI

ALL CONTENT DIGITAL

Emerging Technology Trends

Page 14: Mikehall FutureWorld 2010 - enabling connectivity

Hardware/Software Abstraction

• Frameworks hide complexity (H/W & S/W)

• Make use of hardware capabilities (CPU/GPU)

• Model/View development

– Model can be local or remote/cloud content

– Cloud API or Cached/Sync’d content

• Keep User Experience responsive (Threading)

• Develop using Asynchronous methods

Page 15: Mikehall FutureWorld 2010 - enabling connectivity

Threading/Concurrency -> Parallelism

On Single Core Machine – Don’t block the UI

• Thread Affinity

– Async Operations – Synchronization Issues

On Multi-core Machine – As above... – ... plus Improve Actual Performance – ... plus create new user experiences

Page 16: Mikehall FutureWorld 2010 - enabling connectivity

Threads vs. Task Programming

• Multi-Core hardware becoming standard

• Key to “real” performance is to scale across cores

• Threads

– Hard to write scalable applications

– Complex to write/debug

• Task based programming

– Scales from single core to multi-core

– “On Device” Parallel programming model

– Supports Work stealing (hidden from developer)

– Rapid application development

16

Page 17: Mikehall FutureWorld 2010 - enabling connectivity
Page 18: Mikehall FutureWorld 2010 - enabling connectivity

Enabling Connectivity

• Connectivity without experience isn’t useful

• Agenda

– Connectivity

– Hardware

– User Experience

– Cloud Enabled

• World Readiness

Page 19: Mikehall FutureWorld 2010 - enabling connectivity

Designer Look, behavior, brand, and emotional connection

Developer Function, deployment,

data, security, operational integrity

Designer Look, behavior, brand, and emotional connection

Developer Function, deployment,

data, security, operational integrity

Unifying the Design / Dev Process

Paper

JPG / TIFF

PSD

PPT MOV / WMV

C++

C#

VB.NET

Page 20: Mikehall FutureWorld 2010 - enabling connectivity

Developer builds

business logic –

clean separation of UI from Logic

The User Experience Design Process

Designer builds the

device/application user experience

Run “experience”

on the embedded device

1 2 3

Embedded Device Designer Tool

XAML

Page 21: Mikehall FutureWorld 2010 - enabling connectivity

User Experience

• Connected/Disconnected State

• Local Applications

• Taking advantage of silicon/connectivity

– Async methods, threads/synchronization

• Designer/Developer

– Separation of user experience from underlying code

Page 22: Mikehall FutureWorld 2010 - enabling connectivity

Enabling Connectivity

• Connectivity without experience isn’t useful

• Agenda

– Connectivity

– Hardware

– User Experience

– Cloud Enabled

• World Readiness

Page 23: Mikehall FutureWorld 2010 - enabling connectivity

Windows

iPhone

Browser

Windows Phone

Services powering Experiences

Silverlight

Web Site

Web API

webOS

Page 24: Mikehall FutureWorld 2010 - enabling connectivity

World Readiness

• We’re connected, now what…

• Cloud services, user experience, translation

• Putting it all together

Page 25: Mikehall FutureWorld 2010 - enabling connectivity

Summary

Page 26: Mikehall FutureWorld 2010 - enabling connectivity

Q&A

Page 27: Mikehall FutureWorld 2010 - enabling connectivity

© 2010 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.