Why Java? - Sybase

glueblacksmithInternet και Εφαρμογές Web

13 Νοε 2013 (πριν από 3 χρόνια και 8 μήνες)

129 εμφανίσεις

1
Java Development for Mobile Enterprise Applications
Martyn Mallick
Wireless Solutions Evangelist
Agenda
• Introduction
• Mobile Application Overview
• Which Java When?
– Java on the Server J2EE
– Java on the Client J2SE, J2ME
• Why Java?
• Summary
2
iAnywhere Solutions
*Source: Gartner Group’s Dataquest, August 2001
Complete m-Business Platform
oOne-stop source for developing
and deploying m-Business solutions
Market Leader
o 68% mobile database market share*
o 600 application partners and 10,000 corporate
customers
o 6 million deployed technology licenses
Global Presence
o Leverage Sybase resources and channels
o Offices in 44 countries around the world
Mobile Application Overview
• Current mobile applications face many
challenges
– Unpredictable Wireless network coverage
– Time to Market due to complex nature of
wireless solutions
– Wireless networks are slow and expensive
– Device Support and Battery Life
• Enterprises require an ‘Always Available’
solution
3
iAnywhere Solutions
m-Business Platform
Which Java When?
• Three Java specifications that can play a part in
creating mobile and wireless applications
– Java 2 Enterprise Edition (J2EE)
– Java 2 Standard Edition (J2SE)
– Java 2 Micro Edition (J2ME)
4
Which Java When?
Which Java When?
J2EE Overview
• Superset of J2SE geared for enterprise
applications
• Built for server applications that require
performance, scalability and enterprise
integration
• Client support provided using Java Servlets and
Java Server Pages
• Component based development using
Enterprise JavaBeans (EJB)
5
JNDI Server
JSP
Engine
EJB Server
Servlet
Container
Which Java When?
J2EE Architecture
JDBC
JavaMail
HTTP Server
J2EE Wireless Framework
What it Offers
• Reduced development complexity
– Global data members
– Extends capabilities of Java Servlets/JSPs
• Device identification
– Parallel content with single URL
• Application management
– Session management
– User authentication
– Flow management
6
J2EE Wireless Framework
What it Offers
• Servlet and JSP support
– Servlet class library and JSP tag library geared
at wireless application development
• Enterprise data integration
– JDBC/ODBC
– Custom adapters
– XML
• Servlet, JSP and XML/XSL development
Advanced JMS Messaging
Mobile Messaging Capabilities
• JMS access to Mobile Messaging systems
– Application to Application Messaging
– SMS
– HDML Alerts
– WAP Push
– E-mail
– Paging Networks
• Higher-level messaging services
– Priority
– Personalization
– Message expiry
– Message status
7
Which Java When?
J2SE Overview
• J2SE targets traditional Java applications
– Stand alone applications
– Applets running in a web browser
• Core set of classes that existed before the
separation into three editions
• Component support provided by JavaBeans
specification
• Java Virtual Machines (JVMs) for a variety of
clients
Which Java When?
J2SE Overview
• J2SE Client platforms
– Win32, Solaris, Linux, Mac
– JRE is about 3 MB on Windows
8
Which Java When?
J2SE Overview
• For Mobile Clients, we need to have a smaller
environment (JRE)
– Some mobile devices only have 2 MB of total
memory so a 3MB JRE is too large
– PersonalJava can help solve this problem
• Insignia Solutions Java Platform
– PersonalJava 1.2 Compliant
– High performance solution for a variety of
platforms including Linux and PocketPC
Which Java When?
J2SE Benefits
• We can now create Java Smart Client
applications!
– Mobile Data Storage
– Data Synchronization
– Messaging
– Rich User Interface
9
UltraLite Data Store
• Customized for Handhelds
– UltraLite deployment option for SQL Anywhere Studio
– Ideal for light-weight deployments
– Resides on the mobile device
– Application-optimized footprint as small as 50K
– Advantages of SQL
– Handhelds do not run the traditional Windows
operating systems
• Pure Java version for J2SE, J2ME
• Can write once and deploy to any supported
Java VM
• Native C/C++ Support for Palm OS, Pocket PC,
Symbian OS, WindRiver VxWorks
Enterprise Integration
• Having data on the device isn’t enough
• We need the ability to access enterprise data from a
variety of backend sources
– Data Synchronization is required
10
MobiLink Data Synchronization
Integration Features
• Synchronize to industry standard databases
– Oracle8, Microsoft SQL Server, IBM DB2 UDB,
Sybase ASE, Sybase ASA
– Synchronization logic can be written in Java
• Synchronize to other enterprise data sources
– SAP, Siebel, PeopleSoft etc
• Security
– Built-in authentication, encryption of datastream
• Support for subsetting of data
– Support for horizontal and vertical partitioning of data
• Scalable
– Support for thousands of remote users
• All synchronization is bi-directional
Which Java When?
J2ME Overview
• Many wireless devices are much more
constrained than PDAs
• Available memory is often under 256K and
rarely suitable for full blown J2SE
– Need for a smaller environment for Java
applications
• This is the basis for J2ME
11
Which Java When?
J2ME Overview
• J2ME architecture is a combination of a Java
Virtual Machine, configurations and profiles.
• A configuration contains either a KVM or CVM
with a minimal set of APIs to define a broad
platform of devices
• A profile sits on top of a configuration and adds
additional APIs to make a complete platform for
a narrower set of devices
Which Java When?
J2ME Overview
• Similar application architecture to J2SE
– Targeted at the consumer device market
• Ranging from Smart Cards to Wireless Devices
– leverage Java programming language
– Code portability
– Upward scalability with J2SE and J2EE
• There are various forms of J2ME
– Connected Limited Device Configuration (CDLC) and
Connected Device Configuration (CDC)
• Lowest common denominator
• Building Block on which profiles are created
– Mobile Information Device Profile (MIDP), Foundation
Profile and Personal Profile
12
Which Java When?
J2ME Benefits
• Java Smart Client applications can now fit onto
constrained devices
• More advanced profiles provide the same
capabilities as J2SE based clients
– Mobile Data Storage
– Data Synchronization
– Messaging
– Rich User Interface
Application Management
iAnywhere Mobile Manager
• Centralized management of hardware and
applications for mobile and remote systems
– Reduce Costs
• Centralize software installation / configuration, distribution and
inventory
• Reduce support/help desk calls
– Simplify and Speed Deployments
• Centralize task scheduling and task management
• Automate application installs and upgrades
– Protect Investment
• Deploy and schedule virus protection updates to all systems
• Protect system configurations such as VPN settings, or dialup
networking settings
• Typical savings $800-$1200 per device per year
13
Why Java?
• Java is a good language for software engineering, pure object
model and lack of pointers eliminate errors and increase
productivity
• Provides flexibility over C/C++ to single purpose devices – enabling
easy configuration of functionality and programmability
• Java built-in standardized communication facilities, with TCP/IP
serialization and reflectivity built into the the language is the first
programming language to seamlessly support data communications
• Java has a single source for the language and API editions
assuring developers that Java stays focused and standardized
• Large and growing community of developers
Summary
• iAnywhere Solutions m-Business Platform has
extensive Java support
– J2EE Wireless Framework as part of iAnywhere
Wireless Server
– Advanced mobile messaging
– UltraLite mobile datastore
– MobiLink enterprise synchronization
• In conjunction with our partners, you can roll out
enterprise ‘Always Available’ Java applications
today.
14
Sharp Zaurus
Product and Platform Overview
Cutting-Edge Hardware
CPU
• Intel StrongArm(SA-1110 over 206MHz)
Memory
•64 MB SDRAM
•16 MB Flash ROM
Power
•Rechargeable Lithium-Ion Battery
•Back-up Battery Installed
•Battery Charger & Extra Battery Available
Keyboard
•QWERTY Keyboard with Sliding Cover
Display
•3.5” Reflective TFT Color LCD
•65,000+ colors; 240x320
2 Expansion Slots
•Compact Flash for connectivity
•Secure Digital for memory
Interface
•IR/Serial/USB ports
15
Embedded Software
Web Applications
Web Applications
PIM
Functionality &
Synchronization
PIM
Functionality &
Synchronization
Office Suite
Compatibility
Office Suite
Compatibility
Multi-media
Multi-media
• Desktop Synch
• Wireless PIM
• Word
• Excel
• PowerPoint
• Music Player (MP3)
• Video Player
(MPEG 1/2)
• Camera Application
• E-mail
• Attachments
• Web Browser
Extending the Desktop
Corporate
Applications
Corporate
E-mail
Sharp Advantages
• Powerful H/W
• Expandability – SD & CF
• Multimedia Capability
• Open Architecture &
Rapid Time to Market
Sharp Advantages
• Built-in Keyboard
• Corporate E-Mail w/
Document Attachment
Management
• HTML Browser
• 16-Bit Color Display
16
Linux/Java Open Platform
Linux(Embedix)
Qt/Embedded
Java
Application
MP3
U/I
PV
Software
written in PersonalJava
Software
running on Linux
Software written
in Qt
JVM(Personal Java)
U/I
 Linux:
Embedix(Linux Kernel 2.4 based) with
Qt/Embedded, QPE(Qt Palmtop Environment)
 Java:
JVM for PersonalJava
Game
Browser
Mail
PIM
Developer Program Statistics
• 30,000 Developers have registered for the Sharp
Developer Program
• Http://sourceforge.net/projects/zaurus is one of the Top
100
• Over 3,000 active developers daily on the Zaurus
Sourceforge site
• 2000 Registrants to the Qtopia Developer Contest (Linux)
• Over 200 Applications submitted to the Qtopia Contest
(Linux)
• Currently creating a Developer Contest for Java
Developers
17
Developer Program Benefits
• Promotion of Software on the Zaurus website (myZaurus.com)
• Enterprise Focus
• Consumer/ Prosumer Focus
• Sales Partnership with Handango
• Possible participation on the Sharp
Zaurus resource CD that ships with
every Zaurus*
• Possible participation in tradeshows
and Sharp events*
• Possible participation in Sharp
solutions sales kits*
* Promotion benefits will vary depending on
the level of participation in the Sharp
Developer Program
http://developer.sharpsec.com
Vote for iAnywhere Solutions and
Sybase!
• Vote for iAnywhere Solutions and Sybase for the Java
Developer’s Journal Reader’s Choice Awards:
– www.sys-con.com/java/
• Nominated Products include
– Best Mobile Database:SQL Anywhere Studio
– Best Java Application:Sybase UltraLite
– Best Wireless Application:iAnywhere m-Business Studio
– Best Java Messaging Tool:iAnywhere m-Business Studio
– Best Enterprise Database:Sybase ASE
– Best Java Application Server:Sybase EAServer
– Best Java IDE Environment:Sybase PowerJ
– Best Java Modeling Tool:PowerDesigner
• By voting, you will receive a free subscription to the Java
Developer’s Journal for one year!!!
18
Who is Insignia?
• Public company (INSG)
• Headquarters in Silicon Valley
• Engineering in United Kingdom
• Offices in USA, Europe and Asia
• Extensive sales and support channels
• Strategic investment from Sun, Wind River, and
BSQUARE
• Member of JCP Executive Committee
19
A History of Achievement
SoftWindows
SoftWindows
/PC
/PC
VM Ships 1m units
VM Ships 1m units
1986
1986
1995
1995
2000
2000
2001
2001
First Sun Certified Java VM
First Sun Certified Java VM
and first Sun investment in a
and first Sun investment in a
Java VM provider
Java VM provider
Over 35m licenses
Over 35m licenses
of Insignia VM
of Insignia VM
Shipping on Compaq,
Shipping on Compaq,
Sharp and NEC
Sharp and NEC
PDAs
PDAs
Company
Company
Founded
Founded
Established sales
Established sales
channels with
channels with
BSquare
BSquare
,
,
WindRiver
WindRiver
Strong Sun Partnership
• First Sun Certified licensee for Java Virtual
Machine (JVM)
– Ensures “Write once, run anywhere”
value proposition
– Reduces support cost
– Branding – 100% Java compatible
trademark
• Strategic investment by Sun
• Driving the Java Technical Community
– On JCP Executive Committee
– Expert group member on mobile JSR
committees
20
Major PDA Manufacturers Trust Insignia
Copyright © 2000 Insignia Solutions, all rights reserved
Over 100 shipping
implementations . . .
Over 42m Insignia
Jeode licenses . . .
The Java PDA Challenge
• Support standards
– Maintain device look and feel
– Cultivate and maintain developer
base
– Migrate to J2ME platform
• Support technologies
– State of the art CPU/OS support
– Increasing mobile application
demands
– Maintain optimized size and
performance
• Support new opportunities
– Leverage wireless carrier
infrastructure
21
Insignia Addresses the Challenges
• Insignia Jeode PDA Edition
– De facto standard Java
implementation for PDAs based
on PJava technology
– Clean migration path to J2ME
– Strong OS and silicon vendor
relationships
– Patent pending acceleration
techniques
– Maintains PDA look and feel
– Supports browser plug ins
– Technology to support wireless
operators
• Insignia Professional Services
Group
– Dozens of implementations of
Java technology on resource
constrained devices
Native
App
OS
HW
MIDLET/APPLET
PJAVA
to
PP/CDC
CLDC
OSAPI
MIDp
OS
The Insignia Platform
An Overview
22
Start With Engineering
• Experienced resources
– 50 person engineering team dedicated to embedded
JVM technologies
– Dozens of successful customer deployments
– Experienced development and test team (average
tenure of six years)
– 1000s of man hours spent on improving Sun
reference
• Continuous compliance and performance improvement
– Product scorecard to tune performance
– Daily automated testing including TCK and
benchmarks on 15 reference platforms
– Complete code control and release systems
• Focus on enhancing the Sun reference
• Validate the Java API using Sun’s test
suite (TCK)
• Guarantees full support for PersonalJava™
compliant applications and applets
• Java branding
• Guarantees support of higher level Java
APIs such as JMF, etc.
Compatibility
23
 Insignia’s Dynamic Adaptive Compiler (DAC)
– Up to 12 times faster than interpreter-only JVMs
– Very low (100KB) RAM overhead
– Compiles only dominant code paths
 Good performance is difficult to obtain in small memory
footprints
– Insignia’s DAC can be tuned for best performance in available resource
Performance
DAC
Compiler
Java class
Native code
Frequently
used code
paths
Rarely used
code paths
Interpreter
 ROM footprint minimized
– Approx. 3.8MB for complete PersonalJava implementation with full
AWT and all optional classes (excludes i18n.jar) on
SA1110/WindowsCE
 Designed for limited RAM
– Memory efficient class libraries
 Memory efficient AWT implementation
– Leverages native windowing system
(e.g. Qt/Embedded, Windows CE)
– Adopts native platform’s look and feel
Size
24
Look and Feel
 Insignia Jeode AWT adopts underlying platform’s look and
feel
– Java and native applications share the same style of buttons, list
boxes, windows, dialog boxes, etc.
– Manufacturers invest in PDA UI and user experience
– Jeode’s AWT architecture leverages this investment
– Some JVM vendors replace it
 Efficient software architecture
– No duplication of functionality
 Corporate users need familiar UI
– Large market for vertical market data driven applications on PDAs
Responsiveness
 Concurrent garbage collection
– No long pauses during garbage collection cycles
– Jeode EVM remains responsive
 One to one mapping between Java threads and native
platform threads
– Leverage platform’s native thread scheduling
 Start-up time
– Jeode EVM implements class pre-loading to optimize start-up time
– Optimal balance between start-up time and ROM footprint
25
For Further information
Visit
www.ianywhere.com/webcasts
to access this and other archived webcast
presentations.
This webcast presentation will be available in 4-5
business days, after today’s broadcast date.