Enterprise Mobility with Mobile OSGi

40 %
60 %
Information about Enterprise Mobility with Mobile OSGi

Published on March 19, 2009

Author: j.ritter

Source: slideshare.net

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?

What Mobile OSGi offers to mobile enterprise developers Joachim Ritter, ProSyst Software

Explain how Mobile OSGi is positioned in the market of mobile application platforms Explain how mobile enterprise developers benefit from using Mobile OSGi Provide overview of market uptake Objectives of this Talk

Explain how Mobile OSGi is positioned in the market of mobile application platforms

Explain how mobile enterprise developers benefit from using Mobile OSGi

Provide overview of market uptake

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

Focus on mobile enterprise application market

Term Mobile OSGi is used for

OSGi R4.x MEG or JSR 232 stacks

eRCP stacks including R4 OSGi

Requires J2ME CDC + Foundation Profile

The mobile enterprise market place and how Mobile OSGi fits into the picture

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 to total 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

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 to total of $30b” [2]

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

Secure runtime system

Data security

Protocol security

Robustness

Portability across many platforms

Rich UI capabilities

Adjustable device policy

Component & SOA model

Enabled for middleware

Access to device functionality

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

Market Ecosystem: Complex structures Operator SW Vendors Aggregator Business User Enterprise Private User Device OEM App Developer Service Provider Standardization Bodies Middleware Developer

Technology Fragmentation OS Platforms Symbian S60, UIQ, FOMA Linux LiMo, LiPs, Qtopia… Access Win Mobile <v6.1, >=v6.1 RIM Apple iPhone Google Android Others 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

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 combination matrix of existing runtime platforms

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

Remote Access Protocols

OMA-CP

OMA-DM, SCOMO, FUMO

OMA-DS / Sync-ML

WAP-Push

etc.

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

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

Where Mobile OSGi fits in Phone Operating System Application Execution Environment Remote Access Applications By combining some of the platform elements and by making them available cross-platform, Mobile OSGi de-fragments the market! Mobile OSGi

Brief Introduction to OSGi

That goes into all sorts of devices and systems … OSGi TM is a small piece of software OSGi

That goes into all sorts of devices and systems …

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 Service A Service B Application C Application D

which executes your services and applications

which encapsulates device and network specifics

The Dynamic Module System for Java TM Specification developed by the OSGi Alliance Adopted by a rapidly growing community OSGi is a Worldwide Standard

The Dynamic Module System for Java TM

Specification developed by the OSGi Alliance

Adopted by a rapidly growing community

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

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 easy to learn and leverages developers from J2EE, J2SE and J2ME Java communities Rapidly growing base of existing development tools, excelled by open source communities The Eclipse toolchain is based on OSGi!! OSGi Developer Ecosystem

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

Rapidly growing base of existing development tools, excelled by open source communities

The Eclipse toolchain is based on OSGi!!

Technical Review: What Mobile OSGi has to offer

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

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…)

Component based deployment model SOA-in-the-VM model Key feature: Compon. & Service Model JSR JSR Monolithic MIDlet Application Java Native CLDC/MIDP 2 Process Java Native JSR JSR JNI App Service Provider Std Srv. Std Srv. App GUI Library App Logic Utility Mobile OSGi process (always on)

Component based deployment model

SOA-in-the-VM model

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

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

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 (provided the operator grants you that privilige) Key feature: Security & Policy Model

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 (provided the operator grants you that privilige)

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

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, 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

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

Key feature: Multi App Model Support, cont. New App models will emerge: Server in the Pocket Browser Http Service Your app business logic Resources Location API Bluetooth API … FlashLite Phone Mobile OSGi

New App models will emerge: Server in the Pocket

Key feature: Remote Management Concept of management domains Mgmt Server Device mgmt Provisioning Source: Sprint Titan Slides Your Enterprise Mgmt Server App mgmt Provisioning Configuration Support

Concept of management domains

Device mgmt

Provisioning

App mgmt

Provisioning

Configuration

Support

Remote Management: Domains Source: Sprint Titan Slides Your Enterprise 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

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

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

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: Management Tree Source: Sprint Titan Slides Native DMT Native OMA-DM Client Mobile OSGi Mobile OSGi DMT Java OMA-DM Client Your Custom DMT Extension Bundle(s) OMA-DM Mobile Device Mgmt Server Option: Your Custom Management Agent

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>

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 Mobile OSGi Mobile OSGi Mobile OSGi Mobile OSGi YourRichApp YourRichApp YourRichApp YourRichApp YourRichApp

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

Leveraging Java programmer resources

Most advanced runtime for business logic

OSGi R4 Mobile Specification OSGi Core Framework & Service Registry Configuration MO Log MO Monitor MO Deployment MO Policy MO Application Model MO DMT Admin Service OMA DM Adaptor Other Protocol Adaptor 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 Foreign Application Access Application Containers Applications Additional OSGi Services (eg. Perm. Admin, Package Admin, …)

Mobile OSGi: High Level Architecture Native Java CDC VM Foundation Profile JSRs Shell Cert Store Installer Handlers AMS Mobile OSGi eSWT OMA-DM Client MIDP2 eRCP Cont. Midlet Cont. Xlet Cont. App1 App2 Bundle DP JNI xyz

Mobile OSGi Toolsets

Mobile OSGi Tooling Support provided by Sprint Development Host Target Device DM Server Host OMA-DM Server SW Repository OMA-DM Server Console Eclipse IDE Titan Runtime (Mobile OSGi) WM Emulator Titan Runtime Profile Agents Local Console ProSyst JProfiler I/F Stack J9 Launcher DP Editor Remote Mgmt Plugin OMA DM Stack Instrumentation Agent

Remote Device Management

Device Runtime Configurations

Deployment Package Editor

Conclusion

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

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

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!

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)

Next Steps!

Sprint offers a complete Mobile OSGi stack for download (WinMobile based): http://developer.sprint.com http://developer.sprint.com/site/global/develop/technologies/sprint_titan/p_sprint_titan.jsp Comes with a complete set of Eclipse based tools for plugin development, DP editing, deployment, remote debugging and profiling Documentation, Videos Try it out!

Sprint offers a complete Mobile OSGi stack for download (WinMobile based):

http://developer.sprint.com

http://developer.sprint.com/site/global/develop/technologies/sprint_titan/p_sprint_titan.jsp

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

Documentation, Videos

Member of: Joachim Ritter [email_address] Mobile: +49 163 6604 405 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_address] www.prosyst.com

Add a comment

Related presentations

Related pages

Enterprise Mobility with Mobile OSGi - HubSlide

It is evident that the market for mobile enterprise solutions grows rapidley. A lot less obvious are the technological trends on which mobile enterprise soluti
Read more

Mobile – OSGi™ Alliance

This is of particular interest to developers of sophisticated enterprise mobility ... Mobile OSGi framework implementations ... Enterprise; Cloud; OSGi ...
Read more

What OSGi offers to mobile enterprise developers Joachim ...

enterprise developers Joachim Ritter, ProSyst. 2 ... The mobile enterprise market place and how Mobile OSGi fits ... • Total US mobile enterprise ...
Read more

Enterprise Mobility | Abhinav Kumar | LinkedIn

Enterprise mobility is understood to be the most influential component of an organization’s ... Mobile Enterprise Application ... and OSGi. An ...
Read more

Community Event 2008 Speaker Bios – OSGi™ Alliance

... Jon was chief architect of Sun’s mobility technology ... of the OSGi Mobile Expert ... this project and fed into the OSGi Enterprise Expert ...
Read more

How to build OSGi bundles using Maven Bundle Plugin - Part ...

Mobile and IoT. IoT Server; Enterprise Mobility Manager; ... build OSGi bundles using Maven Bundle Plugin ... Sameera Jayasoma is a guide to building OSGi ...
Read more

SAP Mobile Platform 3.0 takes a portfolio approach to ...

Will Kelly takes a look at SAP Mobile and their portfolio approach to complete enterprise mobile ... portfolio approach to enterprise mobility. ... OSGi ...
Read more

WSO2 Launches WSO2 Enterprise Mobility Manager, Industry’s ...

WSO2 Launches WSO2 Enterprise Mobility Manager, Industry’s Only Open Source Software for Mobile Device Management (MDM) and Mobile Application Management ...
Read more

Enterprise Mobility | LinkedIn

• Enterprise Mobility. Articles, experts, jobs, and more: ... Mobile Devices (6,704 members) Management (6,548 members) Enterprise Software (6,347 members)
Read more