Enterprise Mobility with Mobile OSGi

  • 2,747 views
Uploaded on

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 …

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?

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • Terry, thanks for your interest in Mobile OSGi. OSGi can easily control the lifecycle of a native app (Win Mobile, Android, etc.) meaning install, uninstall, start or stop an application. This can be done via a remote management server talking to the OSGi stack on the device. If some specific communication with native app is required (invoking its APIs) then a Java/OSGi module is required to proxy such requests
    Are you sure you want to
    Your message goes here
  • Terry,

    While normally the target systems and applications of a Remote Admin service should/are usually OSGi based/OSGi apps, they don't necessarily have to be - Your native non-OSGi application can still be managed remotely via a client OSGi framework using JNI (Java Native Interface), which provides/receives calls from native, non-java/osgi applications. This assumes your native application has this interfacing capabilities included in order to provide a streamline interoperability between the OSGi (the agent) and the native application (client).

    It is true though that you gain more advantages/features by using also OSGi based applications, which they all can be precisely managed remotely with a larger set of capabilities than for native applications (due to the inherent advantages of the OSGi model).

    More information at:
    http://www.osgi.org/wiki/uploads/CommunityEvent2008/22_Ritter.pdf (page
    http://stackoverflow.com/questions/10682198/what-are-the-non-osgi-targets-with-which-apache-ace-can-work/
    http://stackoverflow.com/questions/10713583/what-are-the-advantages-of-using-osgi-at-target-side-in-a-remote-software-provis

    Disclaimer: I work for ProSyst Software, GmbH.
    Regards,
    Are you sure you want to
    Your message goes here
  • I am not highly tech person but more on it marketing. ^^
    and need your help on the following question.
    Am I correct to understand that Mobile OSGI (Enterprise) remote admin can control App (let's say Native Win Mobile developed in C++)? or do we still need to develop an app in Java to be controlled or to communicate with OSGI remote admin? this has been debate among none tech persons around me for some time. would Appreciate your answer.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
2,747
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
227
Comments
3
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. What Mobile OSGi offers to mobile enterprise developers Joachim Ritter, ProSyst Software
  • 2.
    • 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
  • 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
  • 4. The mobile enterprise market place and how Mobile OSGi fits into the picture
  • 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 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
  • 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
  • 7. Market Ecosystem: Complex structures Operator SW Vendors Aggregator Business User Enterprise Private User Device OEM App Developer Service Provider Standardization Bodies Middleware Developer
  • 8. 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
  • 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 combination matrix of existing runtime platforms
  • 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
  • 11. 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
  • 12. Brief Introduction to OSGi
  • 13.
    • That goes into all sorts of devices and systems …
    OSGi TM is a small piece of software 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 Service A Service B Application C Application D
  • 15.
    • The Dynamic Module System for Java TM
    • Specification developed by the OSGi Alliance
    • Adopted by a rapidly growing community
    OSGi is a Worldwide Standard
  • 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
  • 17.
    • 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
  • 18. Technical Review: What Mobile OSGi has to offer
  • 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
  • 20.
    • 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)
  • 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
  • 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 (provided the operator grants you that privilige)
    Key feature: Security & Policy Model
  • 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
  • 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
  • 25. 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
  • 26. 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
  • 27. 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
  • 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
  • 29. 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
  • 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>
  • 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 Mobile OSGi Mobile OSGi Mobile OSGi Mobile OSGi YourRichApp YourRichApp YourRichApp YourRichApp YourRichApp
  • 32. 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, …)
  • 33. 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
  • 34. Mobile OSGi Toolsets
  • 35. 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
  • 36. Remote Device Management
  • 37. Device Runtime Configurations
  • 38. Deployment Package Editor
  • 39. Conclusion
  • 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
  • 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!
  • 42. Next Steps!
  • 43.
    • 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!
  • 44. 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