Mobile Web Services - Software Summitsoftwaresummit.com/2004/speakers/HaggarMobileWS.pdfWireless...

Post on 16-Mar-2020

0 views 0 download

transcript

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 1

Mobile Web Services:Challenges, Issues and Case Study

Peter HaggarSenior Software EngineerEmerging TechnologyIBM CorporationResearch Triangle Park, NChaggar@us.ibm.com

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 2

About MePracticing Software Engineer for 17+ yearsWork with Web Services on mobile devicesRecently deployed Proof of Concept mobile project for an IBM customerAlso focus on high performance Web ServicesIBM Representative to W3C XML Binary Characterization Working GroupPlease email me with any questions about this presentation

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 3

AgendaChallenges and Issues

FunctionalityDevelopment Tools/EnvironmentDevicesWireless SecuritySecurity and DevicesWireless NetworksIntegration

Hospital Case StudyReferences

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 4

FunctionalityWhat functionality do you present on a mobile device?

Depends on requirements AND on device capabilities

Quickest road to failure is to not be honest about inherent device limitationsWeb Services and mobile devices does not have to mean invoking web services from the device

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 5

FunctionalityExtending an existing solution to mobile

What function(s) do you provide?• Subset of existing function• All existing function

Device functionality must be easy to useMap to existing solution• “Keep the same deficiencies”

Be careful if you provide function on device that is easier to do on laptop/desktop

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 6

FunctionalityDevice functionality is best left to “read-only”

Data entry is tedious for most users• You and I are not most users

Understand your user baseCan get frustrated very easilyYour device can become a paperweight very quickly

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 7

Development Tools/EnvironmentJava?

J2SEJ2ME• Profiles?

C, C++, C#, VB?Development tools

Free or $$

Following are some I’ve used:

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 8

Development Tools/EnvironmentRIM Blackberry

JavaSupports J2ME plus RIM extensionsFree JDE

• http://www.blackberry.net/developers/na/java/start/index.shtml

Sharp SL-6000JavaSupports J2SE• Download .class files you build on desktop to run on

device

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 9

Development Tools/EnvironmentPalm

C• Metrowerks CodeWarriorhttp://www.metrowerks.com/MW/Develop/Desktop/PalmOS/Professional/Default.htm

Java• IBM WebSphere Studio Device Developerhttp://www-306.ibm.com/software/wireless/wsdd/

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 10

Development Tools/EnvironmentPocketPC

Java• IBM WebSphere Studio Device Developer

http://www-306.ibm.com/software/wireless/wsdd/

C#, C++, Visual Basic• Microsoft tools

http://www.microsoft.com/windowsmobile/developers/default.mspx

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 11

DevicesNon-connectedBluetooth802.11bCellularFor any serious application

802.11bCellular

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 12

Devices802.11b

Palm Tungsten C (integrated)Sharp SL-6000 (integrated)PocketPC (various) (integrated or card)

CellularRIM Blackberry (integrated)Sharp SL-6000 (requires cellular card)PocketPC (various) – requires cellular cardPalm Tungsten W (integrated)

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 13

DevicesDon’t just choose a device due to its characteristics

Take into account:• Development environment• Development language• Usability and capability• Available accessories• Available expansion hardware and software• Wireless Security model supported

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 14

DevicesDual mode devices are starting to emerge

802.11 and Cellular

You can do this today with an 802.11b integrated device and add a cellular CF card

Need WECM for seamless roaming

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 15

Devices – Pros/ConsPalm Powered Devices

OS is still single-threadedLots of aftermarket apps and accessoriesLarge user base

PocketPCMultithreaded OSLots of aftermarket apps and accessoriesLarge user baseFamiliar look and feel to Windows

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 16

DevicesSharp SL-6000

Runs embedded Linux – MultithreadedFull VGA screenCurrently not a lot of aftermarket apps and accessoriesCurrently small user base

RIM BlackberryJava only deviceNiche market with good penetrationScreens are weakness (not even ½ VGA)

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 17

Wireless SecurityDepending on the application, different aspects need to be consideredFor 802.11b

For an enterprise, WEP doesn’t cut itLEAP is solid enough for most applicationsThere are other wireless security protocols• 802.11i

Recently approved and provides solid security

• Many are not yet provided for handhelds

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 18

Wireless SecurityFor Cellular

Some devices provide no security by default• Palm Tungsten W

However, can use VPN software

RIM Blackberry has good security story• Everything is Triple DES encrypted from device to BES

server

For 802.11b and CellularIBM’s WebSphere Everyplace Connection Manager (WECM)

• http://www-1.ibm.com/industries/wireless/doc/content/solution/278603104.html

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 19

Wireless SecurityWECM

Provides excellent securityProvides seamless roaming between LAN and WAN networks• Roam between 802.11b to Cellular

Picks up lost connections… where you left off

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 20

Security and DevicesPalm Tungsten C

WEP – out of the boxLEAP – 3rd party add-on• http://www.mtghouse.com

WECM – IBM add-onSharp SL-6000

WEP – out of the boxLEAP – 3rd party add-on• http://www.mtghouse.com

WECM – IBM add-on

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 21

Security and DevicesPocketPC devices with Windows Mobile 2003

WEP – out of the boxLEAP – out of the boxWECM – IBM add-on

RIM BlackberryTriple DES encryption from device to BES server – out of the box

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 22

Security and Devices –Sharp SL-6000

Does not support alphanumeric power-on passwordsOpera Browser

Good HTML and JavaScript supportVery configurableCan control browser cacheSupports separate browser password

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 23

Security and Devices –PocketPC

Supports alphanumeric power-on passwordsPocketIE Browser

Good HTML and Javascript supportBrowser has almost no configuration options• Very weak• No options to clear cache• No separate browser password

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 24

Security and Devices –Palm

Supports alphanumeric power-on passwordsBrowser issues

Not as robust as Opera or as versatile as PocketIE

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 25

Wireless NetworksCellular

GSM, CDMA, TDMA, iDEN, etc.Pros: Wide coverage areaCons: Slow and expensive

802.11802.11, 802.11a, 802.11b, 802.11gb very pervasive… g getting therePros: Fast and cheapCons: Narrow coverage area

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 26

Wireless NetworksBroadband cellular networks are emergingVerizon

300 - 500kbps• Currently – Washington DC and San Diego areas only

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 27

IntegrationOften you want to integrate with existing enterprise solution

Accomplished easiest with standards-based approach• Web Services

“Yes, but I thought web services were fat and slow... how can I do that on a handheld?”

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 28

IntegrationTwo approaches

Invoke web services from handheldLeave the web services on the server

Web Services from handheldIBM’s Web Services Toolkit for Mobile devices• Free: http://www.alphaworks.ibm.com/tech/wstkmd

Provides ability to invoke web services from variety of handhelds

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 29

IntegrationPerformance is acceptable on 802.11 LANs

Can be sluggish on cellular WANsHowever, this is due to the network, not the Web Services

Also consider how much code you want on the device

Put Web Services on server and provide a browser based solution• No device coding• More portable• Limited to browser UI, however

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 30

Case StudyHospital with an existing clinical information system

J2EE web applicationWepSphere on IBM 390 backed up by DB2

Browser based application used by physicians to

view/update patient informationWrite prescriptions, track problems, etc.99% originally written by IBMIn use for 2.5 years

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 31

Case StudyAllows physicians to query and update various information:

DemographicsGeneral ProblemsLabsMedicationsInsuranceSchedules• Physician and Clinic

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 32

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 33

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 34

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 35

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 36

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 37

Existing Architecture

Locked DownStation

Stored ProcedureManager

IBM 390

WebSphere

DB2

Wired

Wireless

Laptop

Desktop

802.11bvia

Cisco LEAP

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 38

HistoryHospital wants a mobile solution for physiciansHave tried:

Wireless Toshiba TabletsWere considering Thinkpads on a cart

Perfect opportunity to prove Web Services utilization and handhelds

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 39

HistoryNovember 2003

First meeting with key hospital decision makers• Director of Medical Infomatics, CIO, IT Director, and staff

Showed demo of what was possible using various devices

Collected initial requirements

December 2003Proposed Architecture to meet requirementsReceived the go-ahead to build solution

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 40

HistoryJanuary 2004

Proof of Concept (POC) requirements review meetingFebruary 2004

Begin POC implementationJune 2004

POC Launch (6/11)POC to run for period of 2-3 weeks for each participant

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 41

Device Functionality Requirements for POC

Log in and authenticationQuery patient data

DemographicsGeneral ProblemsMedications

General queriesPersonal patient listPhysician Schedule (current day)Clinic Schedule (current day)Hospital Census

Prescribe medications and Print prescriptionsAsynchronous Lab Result notification

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 42

General RequirementsNo client code

Unrealistic based on one requirement

Use any deviceUnrealistic

No horizontal scroll barsRead-only device interface

Data input is very tedious

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 43

ChallengesSolution must be easy to use

Follow existing web application usage model but presentable on handheld

HIPAAWireless security

Was no LEAP client for Sharp Zaurus deviceDevice security

Passwords and browser cacheDevice battery lifeManage expectationsHospital Cisco network configurationPrinting

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 44

Cisco Network ConfigurationCisco APs are set by default to only allow Cisco hardware to authenticateWe used non-Cisco LEAP clientsHad to change authentication type on all APsto

Accept Open Authentication

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 45

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 46

Deployed ArchitectureBlended Architecture

Use a thin client on device only for functional requirements that can’t be met with the browserUse the browser for all other functional requirements

This puts the most code on the server and the least code on the device

Meets all functional requirements

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 47

Deployed ArchitectureCode on device to support asynchronous Lab Result notification onlyNo code on the device for everything else

Browser based access for all other functionalityAll other UI provided by server JSPs and Portlets

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 48

Deployed ArchitectureUtilize Web ServicesWeb Services Front End (WSFE)

Future integration point for any other entities• Key point

Can be expanded to be the front end to clinical information system or other systems they want to expose services from

Utilize WebSphere Everyplace Access (WEA) on server only

WebSphere PortalExisting hospital architecture and components do not change

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 49

Deployed Architecture with Portal and Web Services Front End

Locked DownStation

Stored ProcedureManager

IBM 390

WebSphere

DB2

Wired

Wireless

Laptop

Desktop

Mobile Devices –Browser and custom client code

Web ServicesFront End

WEA/WebSpherePortal

Mobile PortletsMobile PortletsMobile Portlets

802.11bvia

Cisco LEAP

getGeneralProblemsgetDemographics

getMedications

printPrescriptiongetCensus

etc.

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 50

Web Services Front EndAllows you to expose services in a non-proprietary mannerCan expose clinical information system or other system functionalityAllows integration with business partners, present and future

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 51

Architecture AdvantagesBest of both worlds

Minimal client codeMaximum functionality

Utilizes Web ServicesDevice does not invoke web servicesPortlets invoke web services in WSFECode on device is invoked with web services

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 52

Architecture AdvantagesPOC can be accomplished with no disruption to the existing system

InstallationDevelopmentTestingPilot

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 53

Architecture AdvantagesSolution is an add-on, not a replacementAll POC components are on a separate machine

WebSphere Everyplace Access (WEA)• Which contains Portal Server

WSFE

This machine queries the production database

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 54

Devices UsedNew Sharp Zaurus SL-6000

Embedix OS (Linux)Intel 400 Mhz XScale processor64 meg or RAMIntegrated 802.11b wireless radioFull VGA screen (Portrait and Landscape)Voice recorderCFII, IrDA, SD, USBOpera browserJeode JVMQWERTY keyboard

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 55

Devices UsedHP IPAQ h4355 PocketPC

Intel 400 MHz XScale processor64 meg RAMIntegrated 802.11b, Bluetooth, IrDASD SlotVoice Recorder½ VGA screenQWERTY keyboard

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 56

Architecture AdvantagesSolution tested with Sharp SL-6000, PocketPC H4355, and Palm Tungsten C

Palm eliminated due to browser issues

Device portability because:Mostly browser basedJava for piece that is not

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 57

Proof of ConceptBegan 6/11/044 Physicians took part

Each loaned a Sharp device (two also got the PocketPC)We met with each one for training

Device is “out of the box” except:Web Services Toolkit for Mobile Devices componentOur custom notification clientLEAP client from MeetingHouse for Sharp device

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 58

Demo

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 59

Products/Technologies UsedWebSphere Everyplace Access 4.3 (WEA)

Integrated Portal Server

Web Services Toolkit for Mobile DevicesDevice notification technology

Client and Server components

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 60

Future PossibilitiesUse WSFE to expose interfaces to other systemsDeploy other devices

Palm Tungsten COthers…

Use Portlets for full solutionNot just mobile piece

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 61

Follow-On Architecture

Web ServicesFront End

Locked DownStation

Stored ProcedureManager

IBM 390

WebSphere

DB2

Wired

Wireless

Laptop

Desktop

WEA/WebSpherePortal

Mobile PortletsMobile PortletsMobile Portlets

PortletsPortletsPortlets

Pharmacy

Other HealthCare Facilities

?getGeneralProblemsgetDemographics

getMedications

printPrescriptiongetCensus

etc

802.11bvia

Cisco LEAP

Mobile Devices –Browser and custom client code

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 62

Issues and ConcernsDevice Battery lifeDevice Browser anomaliesHospital network issues

We don’t control any

Colorado Software Summit: October 24 – 29, 2004 © Copyright 2004, IBM Corporation

Peter Haggar — Mobile Web Services: Challenges, Issues and a Case Study Page 63

Referenceshttp://www.blackberry.net/developers/na/java/start/index.shtml –Blackberry JDEhttp://www.metrowerks.com/MW/Develop/Desktop/PalmOS/Professional/Default.htm –Metrowerks CodeWarriorhttp://www-306.ibm.com/software/wireless/wsdd/ – WebSphere Studio Device Developerhttp://www.microsoft.com/windowsmobile/developers/default.mspx –Microsoft page for mobile developershttp://www-1.ibm.com/industries/wireless/doc/content/solution/278603104.html –IBM’s WebSphere Everyplace Connection Managerhttp://www.mtghouse.com – LEAP clients from Meeting Househttp://www.alphaworks.ibm.com/tech/wstkmd – IBM’s Web Services Toolkit for Mobile Devices