download

40
Mobile Solution Options with the Pocket PC Joseph C. Fung, CTO Bill Wolf, Mobile Evangelist

Upload: johnsondon

Post on 03-Nov-2014

520 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Download

Mobile Solution Options with the Pocket PC

Joseph C. Fung, CTOBill Wolf, Mobile Evangelist

Page 2: Download

                       

About Ness, USA

Full services solution providerMicrosoft GOLD Solution Provider, Microsoft Mobile Solutions PartnerOperation centers in NY Tri-state and Mid-Atlantic DC Developer relationships with Nokia, Palm, Research in Motion, Symbol Technologies, BEA Star PartnerVoiceXML Forum, Bluetooth SIG membership

Part of Ness Technologies, a global IT services firm with 2,200 technical staff

Page 3: Download

                       

About The Speakers

Microsoft TechEd, Microsoft Developer DaysSun JavaOneBorland Developer ConferenceKM World, DCI Explorer, PC Expo

Microsoft Internet Developer magazine, Delphi Informant, Paradox Informant

Best Application Development – Microsoft 1998, Microsoft 2000Databased Advisor Readers Choice award

Page 4: Download

                       

Agenda

Mobile landscapeMobile development candidatesWireless issues, device issues

Mobile connection scenariosMobile techniques for each.NET and mobile development

Demos

Overview of the your mobile development options

Page 5: Download

                       

Mobile Landscape

Page 6: Download

                       

Mobile Interest

Internet content/services anytime and anywhereDevelopments in Europe/AsiaSmarter devicesCheaper accessBetter networks

Page 7: Download

                       

Types Of Applications

News and alerts

Vertical and business applications

Instrumentation

Travel guides

Entertainment

Proximity-based services

Location-based services

Page 8: Download

                       

Candidates For Mobility

Field force automation

Sales team, CRM

Better customer service

New revenue opportunitiesPoint of sale locations ripe for new revenue

—Up sell/cross-sell; advertising; impulse buying/frictionless payment

Instrumentation, meteringReduce field visits; increase efficiencies; better response time

Page 9: Download

                       

Common Attributes

Mobile data retrievalConnect to enterprise data QueriesField information, references

Mobile data collectionUpdates to dataReduce error/redundant data entry

Alerts

Page 10: Download

                       

Device Issues

Form factor

Displays

Input

Network latency, bandwidth

Limited CPU, memory

Battery life

Page 11: Download

                       

It is What You Have in Your Pocket

That Counts

Halting Traveler

Mobility Requirements

Low “On the Run”

ContentAccess

ContentCreation

Power

Voice-plus

Data-plus

PC Companions

Notebook PCs

Fixed FunctionMulti Function

Plus-voice

Ease of Use

Portable with wireless modem

Smart phones and Communicators

Communications-enabled PDAs

Page 12: Download

                       

Wireless Issues

Coverage – spotty, Metropolitan centers

Bandwidth and protocol mishmashCDMA, TDMA (9.6-14.4kps)iMode (9.6kps)CDPD (19.2kps)2.5G - 3G coming (144 burst, CDMA2000; GPRS/EDGE)

SecurityNeeds CPU and power

General power consumption

Page 13: Download

                       

Mobile Connection Scenarios

Page 14: Download

                       

Mobile Connection Scenarios

ConnectedConnection requiredBrowser

DisconnectedNo connection in the fieldRich client/non-browserData store & sync

Occasionally connectedElements of both connected & disconnectedWorks in connected mode when connectedWorks in offline when not connected (queues)

Page 15: Download

                       

Connected Scenario

Connection typesWireless (CDMA, TDMA, GSM; 3G; CDPD; WiFi 802.11)Wired network (dial-up, office network)ActiveSync pass-through

Typically browser-based (HTML, WML, cHTML, palm PQA web clipping, etc)

Mobile IE – HTML 3.2, JScript 3.0 (no reg exp or VB), cookies, SSL 2.0/3.0 security, preloaded ActiveX controlsRich clients add capabilities like SQL CE with RDA for pass thru SQL

Page 16: Download

                       

How To Stay Connected

Digital phone card and connectorWireless modem “sled” (Omnisky, etc.)Wired modem (socket CF adapter, etc)WiFi 802.11 network card (PC card, CF form factor)Ethernet network card (PC card)Built-in wireless (e.g. Pocket PC phone edition, HP 928)ActiveSync pass-through

Mobile workforceWired dock in the truck

Page 17: Download

                       

Connected Scenario – Tools Roadmap

Mobile internet toolkit (mobile forms)Full .NET framework services on serverMobile controls

.NET Compact Framework

Embedded Visual Tools 3.0 (eVB/C++)

Mobile information serverExchange 2000 to WAP phonesMIS 2002 adds PPC syncingMIS-EE for enterprise, MIS-CE for carrier

Page 18: Download

                       

.Net And Mobile Development

Page 19: Download

                       

Microsoft Mobile Internet Toolkit

Mobile version of ASP.NET

Browser: HTML 3.2, cHTML (DoCoMo iMode), WML 1.1Adaptive page renderingBroadest range of wireless devices, including Smartphone 2002

Tested on over 75 devices and emulators, incl RIM, Palm, Openwave

Supports cookieless sessions

Page 20: Download

                       

Microsoft Mobile Internet Toolkit

Full server-side .NET Framework and features.

Rich server-side mobile forms controls.

Customizable markup.Device profiles (definable templates and styles).Customize controls for different devices.

—Future-proofs today's apps for tomorrows devices.

Mobile featuresAuto-pagination, multiple forms on a page, etc.

Page 21: Download

                       

Application Environment

ASP.NET model

Code behind style of VB

Mobile form controls

Events raised on client execute code on serverWire up event handlers a la .NET web forms styleModular “code-behind” model separates UI from logic

Page 22: Download

                       

Mobile Forms

Displaying contentMobile web forms (adaptive rendering)Label, Textbox, TextViewImageDevice filters for property overrides and templates (arbitrary content)

NavigationLinkCommand – more flexible version of link; server-side eventsLists

Softkey support

Page 23: Download

                       

Mobile Forms

User inputTextboxList – bullets, numbered, plain (internal paging)SelectionList – checkboxes, radio buttonsObjectList – table/grid (multifields)

Validation controls – compare, range, regexp, required; validationsummary

Data-binding - ADO.NET

Device-specific featuresCall – phone callsMobileCapabilityClass.HasCapability

Page 24: Download

                       

Getting Started

Mobile Information Toolkit (MMIT)

Visual Studio.NET (optional)

Get some device emulatorsMicrosoft mobile explorer (smartphones)WAP emulators (Nokia, Openwave, Ericsson, etc.)Palm PQA, RIM

Page 25: Download

                       

Demo - Connected

.NET Mobile Internet ToolkitVisual Studio.NET

MyCalendarAdaptive rendering, controlsEmulators (PPC, Mobile Explorer, WAP phone)

MyWeatherReal-time access to dataDatabinding

Page 26: Download

                       

.Net Compact Framework

Rich client for Pocket PC and smart clients, useful for disconnected and occasionally connected scenarios

Subset of the .NET Framework

Smart Device Extensions (SDE) – add-on for Visual Studio.NET

VB.NET, C#, managed code, XML web services

Will run on Smartphone 2002 and Pocket PC (2000), set top boxes

Page 27: Download

                       

.Net Compact Framework

CaveatsTechnology preview missing forms designerNo COM support, therefore no HTML control supportBugsDoes not work with RTM

Page 28: Download

                       

Disconnected And Occasionally Connected Scenarios

Page 29: Download

                       

Pro’s/Cons For Connected Architecture

ProsTimely up to the second dataEasier to build (at first)

Based on HTML or variants (WAP)Instant roll out of new features

Cross platform support fairly easy

Logistics tough but conceptually simple.

— Different Devices — Browser versions— xfer Speed— Capabilities

ConsNo signal, no appHardware & service $Battery lifeNetwork dependant performance

Page 30: Download

                       

Pro’s/Cons For Disconnected Arch

Pros

App is usable any time

Not dependant on wireless communications for use of app or synchronization

Cons

Data not real time

Architecture is more complex = $$

Difficult to impossible to build cross platform apps

Much harder to support

Harder to secure

Page 31: Download

                       

Ideal Apps?

ConnectedStock TradingReal-time InventorySimple transactionsApps in a controlled environment

DisconnectedSFAReferenceEmailData collection

Page 32: Download

                       

Two Approaches to the Same Problem

Connected Website Standalone eVb app

Page 33: Download

                       

What’s In A Disconnected App?

Data

Web Server

(Device Manager)

Browser

Data

(Web Server)

Synch Server

Synch Client

Your App

Local data

Connected Disconnected

Connection

Runtime

DB Engine

Networking

Bus Rules

Page 34: Download

                       

ActiveSync Pass-through

Network connection while cradledLive internet / live connection to a databaseConnected Access Synchronization

Page 35: Download

                       

SQL CE Synchronization

SQL Server CE Can act as a standalone databaseFaster than CEDB ISAM

SQL Server ReplicationBi-Directional synch to a host SQL Server when cradled via ActiveSync pass-throughUses HTTP and connects to SQL Server via IIS (so it works through firewalls)Compression/encryption/some fault tolerance (xfer retries if fail)

Two types of Sync connectionsRemote Data Access (RDA)

— Bi-Directional but client controls sync (it pulls data from server and pushes updates)— SQL 6.5 and up— Works with MSDE (SQL 7) that comes with VisStudio.Net— SQL can either be forwarded to connected SQL Server on desktop/server

Merge Replication — autonomous data updates— Requires SQL 2000 Developer and up

Page 36: Download

                       

AppsApps

MSMQ Synchronization

True Opportunistic synchronizationAsynchronous and synchronous Various types of Queues (Public/Private)Transactions (guaranteed delivery) Security (authenticate, encrypt, digital signatures) Network protocol independentMessage routing and load balancingEven when sending and receiving apps run at different timesCan even be used for interprocess communication on same device.

AppsAppsReceiverReceiverSenderSender

Page 37: Download

                       

Other types of Synchronization

Custom/App driven – perhaps via custom XML componentsMAPI – mail APIFile synchronizationPeer to Peer!Third-party (Synchroligic,Aethersystems)Offline Webpages (AvantGo, HiddenMinds)

Page 38: Download

                       

Cached Webpage Approach

Content is generated by web server (HTML, ASP, ASPX, JSP…)Data validation via JavaScriptSynch server such as AvantGo gathers content and replicates to device.Device has browser and database storing cached pagesHas many of the advantages of connected and disconnected approaches. However not a good fit for all types of apps.

Page 39: Download

                       

References

Books:Pocket PC Development in the Enterprise (Andreas Sjostrom, et al).NET Compact Framework (P Stanski) ASP.NET Mobile Controls: Tutorial Guide: Adaptive Web Content for Mobile Devices with the MMIT (C Hadjisotiriou)

Online ReferenceMicrosoft Newsgroups (news.microsoft.com)Devbuzz.com

Email us!

Page 40: Download

                       

Thank You!

For more information, contact us at

Ness, USA - (201) 488-7222

Joseph C. Fung: [email protected]

Bill Wolf: [email protected]