enterprise mobility with mobile osgi

44
Enterprise Mobility with Mobile OSGi

Upload: joachim-ritter

Post on 20-Jan-2015

2.771 views

Category:

Technology


6 download

DESCRIPTION

It is evident that the market for mobile enterprise solutions grows rapidley. A lot less obvious are the technological trends on which mobile enterprise solutions are going to be built upon. Mobile OSGi technology (i.e. JSR 232, Eclipse eRCP, Sprint Titan) is one of the platforms that enters the market and thus competition against other platform concepts such as MIDP, native applications, Google Android, etc. What is it that mobile OSGi technology has to offer?

TRANSCRIPT

Page 1: Enterprise Mobility with Mobile OSGi

Enterprise Mobility with Mobile OSGi

Page 2: Enterprise Mobility with Mobile OSGi

2

• Explain how Mobile OSGi is positioned in themarket of mobile application platforms

• Explain how mobile enterprise developers benefit from using Mobile OSGi

• Provide overview of market uptake

Objectives of this Talk

Page 3: Enterprise Mobility with Mobile OSGi

3

Scope

• Focus on mobile enterprise application market

Definition

• Term Mobile OSGi is used for• OSGi R4.x MEG or JSR 232 stacks• eRCP stacks including R4 OSGi• Requires J2ME CDC + Foundation Profile

Page 4: Enterprise Mobility with Mobile OSGi

4

The mobile enterprise market placeand how Mobile OSGi fits

into the picture

Page 5: Enterprise Mobility with Mobile OSGi

5

The Business Case: Big Time!

• Total US mobile enterprise application service revenues to grow from $9b in 2007 to $13b in 2012. [1]

• “… mobility management services revenues to grow at a CAGR of 81% through 2013 tototal of $30b” [2]

[1] Source: Insight Research Corporation, http://www.insight-corp.com[2] Source: ABI Research, http://www.abiresearch.com/abiprdisplay.jsp?pressid=1030

Page 6: Enterprise Mobility with Mobile OSGi

6

Needs of mobile enterprise developers

Security

• Secure runtime system• Data security• Protocol security

• Robustness

Application Environment

• Portability across many platforms• Rich UI capabilities• Adjustable device policy• Component & SOA model• Enabled for middleware• Access to device functionality

Mobile Device Management

• Application Lifecycle Management• Configuration & Policy Management• Remote Diagnostics & Assistance• Data synchronization• Device lock and data wipe

Toolset• One IDE for mobile & non-mobile • Leverage existing server or desktop frameworks (i.e. RCP, JMS, …)• On-device debugging & profiling• Device Emulation

Page 7: Enterprise Mobility with Mobile OSGi

7

Market Ecosystem: Complex structures

Operator

SW Vendors

Aggregator

BusinessUser

Enterprise

PrivateUser

Device OEM

App Developer

ServiceProvider

StandardizationBodies

MiddlewareDeveloper

Page 8: Enterprise Mobility with Mobile OSGi

8

Technology Fragmentation

Q3 2007

• OS Platforms• Symbian

• S60, UIQ, FOMA• Linux

• LiMo, LiPs, Qtopia…• Access• Win Mobile

• <v6.1, >=v6.1• RIM• Apple iPhone• Google Android• Others

Page 9: Enterprise Mobility with Mobile OSGi

9

• Application Platforms• MIDP 2• Qualcom Brew• Eclipse eRCP• Adobe Flash• Adobe AIR• Nokia Web Runtime• Yahoo Go!• Google Android• Apple iPhone• Plain old Browser Model• Coming: MIDP 3• Coming: Sun JavaFX

Technology Fragmentation, cont.

• Remote Access Protocols • OMA-CP• OMA-DM, SCOMO, FUMO• OMA-DS / Sync-ML• WAP-Push• etc.

All that combined with dimension

of versions, country specifics,operator & OEMS specifics,

etc. gives a HUGE combinationmatrix of existing runtime

platforms

Page 10: Enterprise Mobility with Mobile OSGi

10

Conclusion on the market space

• The Problem:• Broad range of advanced technical requirements• Very complex and rapidly changing eco-system• High fragmentation in available technologies • Huge diversity of different device configurations

• Challenges to Enterprises:• Selection of the right target platform(s) for their apps• Remote manageability of those platforms• Sustainability of their investments

Page 11: Enterprise Mobility with Mobile OSGi

11

Where Mobile OSGi fits in

Phone

Operating System

ApplicationExecutionEnvironment

RemoteAccess

Applications

MobileOSGi

By combining some of the platform elements and by making themavailable cross-platform, Mobile OSGi de-fragments the market!

Page 12: Enterprise Mobility with Mobile OSGi

12

Brief Introduction to OSGi

Page 13: Enterprise Mobility with Mobile OSGi

13

• That goes into all sorts of devices and systems …

OSGiTM is a small piece of software

OSGi

Page 14: Enterprise Mobility with Mobile OSGi

14

• which executes your services and applications• which encapsulates device and network specifics

OSGi is a manageable Framework

Hardware Platform

Operating System & Drivers

OSGi

Service & Component Framework

ServiceA

ServiceB

ApplicationC

ApplicationD

Page 15: Enterprise Mobility with Mobile OSGi

15

• The Dynamic Module System for JavaTM

• Specification developed by the OSGi Alliance• Adopted by a rapidly growing community

OSGi is a Worldwide Standard

Page 16: Enterprise Mobility with Mobile OSGi

16

Enterprise Application Servers (Oracle, BEA, Sun, …) Mobile Industry (Sprint, Nokia, IBM, …) Automotive Industry (BMW, Siemens, Delphi…) Telematics (Daimler AG, Bombardier, DB, …) Smart Home Computing (Deutsche Telekom, Siemens) Building Automation Industrial Computing Military Services & Aviation …

OSGi is getting adoped in many Verticals

Page 17: Enterprise Mobility with Mobile OSGi

17

OSGi is easy to learn and leverages developers from J2EE, J2SE and J2ME Java communities

Rapidly growing base of existing developmenttools, excelled by open source communities

The Eclipse toolchain is based on OSGi!!

OSGi Developer Ecosystem

Page 18: Enterprise Mobility with Mobile OSGi

18

Technical Review:What Mobile OSGi has to offer

Page 19: Enterprise Mobility with Mobile OSGi

19

• Component & Service model – ready for middleware• Remoting• Security model, dynamic policy model• Support for any application model• Remote manageability out of the box• Java (CDC or higher) language, JNI

• It’s a standard (in case that still matters to you…)

Key features of Mobile OSGi

Page 20: Enterprise Mobility with Mobile OSGi

20

• Component based deployment model• SOA-in-the-VM model

Key feature: Compon. & Service Model

JSR

JSRMonolithic

MIDletApplication

Java Native

CLDC/MIDP 2 ProcessJava Native

JSR

JSR

JNIApp

ServiceProvider

Std Srv.

Std Srv.AppGUI

Library

AppLogic

Utility

Mobile OSGi process (always on)

Page 21: Enterprise Mobility with Mobile OSGi

21

• Mobile phone as part of SOA infrastructure• Distributed services between osgi container• Dupport for legacy server and clients• Discovery support• Protocol agnostic• Declarative configuration on top of the service

registry

Key feature: Remoting

Page 22: Enterprise Mobility with Mobile OSGi

22

• Security model based on Java 2• Permissions are managed through Permission-

Admin and ConditionalPermissionAdmin• Static device policy definition mapped into

dynamic model• Device policy can be changed and tailored to

the specific needs of your enterprise (providedthe operator grants you that privilige)

Key feature: Security & Policy Model

Page 23: Enterprise Mobility with Mobile OSGi

23

• OSGi ApplicationAdmin enables different app models to map apps into the service registry

• OSGi acts as “meta container” for applications and abstracts the app model specifics

• This enables:• New powerful app models can be introduced, even

post shipment• Developers can pick the model they like best• End users get seamless experience on the phone,

one front-end to all apps, regardless their types

Key feature: Multi App Model Support

Page 24: Enterprise Mobility with Mobile OSGi

24

Key feature: Multi App Model Support, cont.

• Eclipse eRCP / eSWT (one option):• Embedded version of Eclipse Rich Client Platform

(RCP) and UI Toolkit (SWT)• Apps inherit native application look and feel• Deployable to a range of devices

• Desktops, handhelds, cell phones• Support for Win32, Windows Mobile, WinCE, Nokia S60• Future support for GTK and Qte • eRCP apps can also run on RCP

• Samples available at www.eclipse.org/ercp

Page 25: Enterprise Mobility with Mobile OSGi

25

Key feature: Multi App Model Support, cont.

• New App models will emerge: Server in the Pocket

BrowserHttp Service

Your appbusiness logic

Resources

LocationAPI

BluetoothAPI

FlashLite

PhoneMobile OSGi

Page 26: Enterprise Mobility with Mobile OSGi

26

Key feature: Remote Management

Mgmt Server

• Device mgmt• Provisioning

YourEnterprise

Mgmt Server

• App mgmt• Provisioning• Configuration• Support

Source: Sprint Titan Slides

• Concept of management domains

Page 27: Enterprise Mobility with Mobile OSGi

27

Remote Management: Domains

Source: Sprint Titan Slides

YourEnterprise

• Application provisioning• Application life-cycle• Configuration Mmgt• Remote & local Monitoring• Remote Support

• Device provisioning• Network provisioning• Application provisioning

New with Titan:• Remote customer care• Trouble shooting• Config Mgmt

Operator

Native Apps

MyApps

MyDB

Page 28: Enterprise Mobility with Mobile OSGi

28

• In OMA-DM, all device capabilities and data points are kept in a tree like structure, the Device Management Tree (DMT).

• OSGi has defined DMTs for many functional areas: • Application life-cycle management• Log Service & Monitoring• Configuration Admin• Policy Management

• Developers can extend the DMT with their own subtree. Extensions can be deployed on the fly!

• Fine grained security concept by ACL for each tree node. Use case: operators can grant enterprises partial access to the DMT

Remote Management: OMA-DM & DMT

OSGi Spec: DTM Admin

Page 29: Enterprise Mobility with Mobile OSGi

29

Remote Management: Management Tree

Source: Sprint Titan Slides

NativeDMT

Native OMA-DM Client

Mobile OSGiDMT

Java OMA-DM ClientMobile OSGi

Your Custom DMT

ExtensionBundle(s)

OMA-DM Mobile Device Mgmt Server

Option: Your CustomManagement Agent

Page 30: Enterprise Mobility with Mobile OSGi

30

Remote Management: OMA-DM Message<SyncML> <SyncHdr> <VerDTD>1.2</VerDTD> <VerProto>DM/1.2</VerProto> <SessionID>11a76b4234a4</SessionID> <MsgID>35</MsgID> <Target> <LocURI>dancho-006</LocURI> </Target> <Source> <LocURI>http://localhost:9090/syncml-dm?mPRM425</LocURI> </Source> </SyncHdr> <SyncBody> <Status> <CmdID>1</CmdID> <MsgRef>35</MsgRef> <CmdRef>0</CmdRef> <Cmd>SyncHdr</Cmd> <Data>212</Data> </Status> <Sequence> <CmdID>2</CmdID> <Add> <CmdID>3</CmdID> <Item> <Target> <LocURI>./OSGi/Deployment/Download/ISEL0QGUZJ</LocURI> </Target> <Meta> <Format xmlns='syncml:metinf' >node</Format> </Meta> </Item> </Add>

<Replace> <CmdID>4</CmdID> <Meta> <Format xmlns='syncml:metinf' >chr</Format> <Type xmlns='syncml:metinf' >text/plain</Type> </Meta> <Item> <Target> <LocURI>./OSGi/Deployment/Download/ISEL0QGUZJ/URI</LocURI> </Target> <Data>http://localhost:9090/syncml-dl/BIDFHAG1ISR</Data> </Item> <Item> <Target> <LocURI>./OSGi/Deployment/Download/ISEL0QGUZJ/ID</LocURI> </Target> <Data>ISEL0QGUZJ</Data> </Item> </Replace> <Exec> <CmdID>5</CmdID> <Correlator>FG0WJHUB-GRF</Correlator> <Item> <Target> <LocURI>./OSGi/Deployment/Download/ISEL0QGUZJ/Operations/DownloadAndInstallAndActivate</LocURI> </Target> </Item> </Exec></Sequence> <Final/> </SyncBody></SyncML>

Page 31: Enterprise Mobility with Mobile OSGi

31

• Best chance of cross-platform portability of applications – CDC/FP provides the base

• Leveraging Java programmer resources• Most advanced runtime for business logic

Key feature: Java Language

YourRichApp

Android

Mobile OSGi

Nokia S60 Win Mobile Brew Linux

YourRichAppYourRichApp YourRichApp YourRichApp YourRichApp

Mobile OSGi Mobile OSGi Mobile OSGi Mobile OSGi

Page 32: Enterprise Mobility with Mobile OSGi

32

OSGi R4 Mobile Specification

OSGi Core Framework & Service Registry

Configuration MO

Log MO

Monitor MO

Deployment MO

Policy MO

Application Model MO

DM

T A

dmin

Ser

vice

OMADM

Adaptor

OtherProtocolAdaptor

Log Service

Config Admin Service

Metatype Service

IO Connector Service

Declarative Services

Event Admin Service

Deployment Admin Service

Auto Configuration

Application Admin Service

Mobile Conditions Service

Monitor Admin Service

Service Tracker

XML Parser Service

For

eign

App

licat

ion

Acc

ess

App

licat

ion

Con

tain

ers

App

licat

ions

Additional OSGi Services(eg. Perm. Admin, Package Admin, …)

Page 33: Enterprise Mobility with Mobile OSGi

33

Mobile OSGi: High Level Architecture

NativeJava

CDC VM

Foundation Profile

Shell

Cert Store

Installer

Handlers

AMS

Mobile OSGiJSRs

eSWT

OMA-DM Client

MIDP2

eRCP Cont.

Midlet Cont.Xlet Cont.

App1 App2 Bundle DPJNIxyz

Page 34: Enterprise Mobility with Mobile OSGi

34

Mobile OSGi Toolsets

Page 35: Enterprise Mobility with Mobile OSGi

35

Mobile OSGi Tooling Support provided by SprintDevelopment Host

Target Device DM Server Host

OMA-DMServer SW

Repository

OMA-DMServer

Console

Eclipse IDE

Titan Runtime

(Mobile OSGi)

WM Emulator

TitanRuntime

Profile Agents

Local Console

ProSystJProfiler

I/FStack

J9Launcher

DPEditor

RemoteMgmtPlugin

OMA DM Stack

Instrumentation Agent

Page 36: Enterprise Mobility with Mobile OSGi

36

Remote Device Management

Page 37: Enterprise Mobility with Mobile OSGi

37

Device Runtime Configurations

Page 38: Enterprise Mobility with Mobile OSGi

38

Deployment Package Editor

Page 39: Enterprise Mobility with Mobile OSGi

39

Conclusion

Page 40: Enterprise Mobility with Mobile OSGi

40

Needs of mobile enterprise developers, revisited

Security

Application Environment

Mobile Device Management

Toolset

• Secure runtime system• Data security• Protocol security

• Portability across many platforms• Rich UI capabilities• Adjustable device policy• Component & SOA model• Enabled for middleware

• Application Lifecycle Management• Configuration & Policy Management• Remote Diagnostics & Assistance• Data synchronization• Device lock and data wipe

• One IDE for mobile & non-mobile • Leverage existing server or desktop frameworks (i.e. RCP, JMS, …)• On-device debugging & profiling• Device Emulation

Contained in Mobile OSGi Agnostic in Mobile OSGi

Page 41: Enterprise Mobility with Mobile OSGi

41

• Still it can’t be run on all devices• CDC/FP=3MB + OSGi=1.2MB + Service=1.3MB = Total=5.5MB• eRCP/eSWT + simple app adds another 3MB

• It does not present a UI story by itself• App models depend on UI toolkits• UI toolkits might not be available across all platforms

• Integration of CLDC based component JSRs into CDC is a challenge

• Mobile OSGi not yet available on all platforms• Very little market penetration at the moment

but that will change soon (refer to Sprint Titan)

Does Mobile OSGi solve all your problems? No!

Page 42: Enterprise Mobility with Mobile OSGi

42

Next Steps!

Page 43: Enterprise Mobility with Mobile OSGi

43

• Sprint offers a complete Mobile OSGi stackfor download (WinMobile based):• http://developer.sprint.com• http://developer.sprint.com/site/global/develop/techn

ologies/sprint_titan/p_sprint_titan.jsp

• Comes with a complete set of Eclipse basedtools for plugin development, DP editing,deployment, remote debugging and profiling

• Documentation, Videos

Try it out!

Page 44: Enterprise Mobility with Mobile OSGi

44

Member of:

Joachim Ritter

[email protected]

Mobile: +49 171 3333 615

http://mobileosgi.blogspot.com

ProSyst Software GmbH

Dürener Straße 405

D-50858 Cologne, Germany

Tel. +49 221 6604-0

Fax +49 221 6604-660

[email protected]

www.prosyst.com