Beruflich Dokumente
Kultur Dokumente
Applications
Milenko Petrovic
May 18th, 2005, Toronto
Agenda
Emerging mobile services
Limitations of current technology
Developing mobile applications using
Eximius mBaze framework
Bookstore service: an example application
Demand Drivers
Consumer applications
Communication
Entertainment
Enterprise applications
Collaboration
Integration
with Personal Information Management
Systems (PIM)
New application frontiers
More capable devices open new possibilities
Consumer Applications
Messaging
Text messaging is the top data service world wide
Driven by convenience and simplicity
Users want more
Use of picture and video messaging significantly increases data traffic
Game downloads
Driven by availability of better devices and increasing familiarity with
mobile internet
On the phone games are fast, convenient, have nice user interface
Information Retrieval
From service provider to users
Local news/weather/traffic alert subscriptions via text messaging
From users to service providers
Surveys, polls, discussions
Enterprise Applications
In the enterprise PIM is the king
Dedicated devices such as RIM BlackBerry widely used since they
provide seamless information sharing with the desktop
Always-on pushed-based communication eliminate the need for
inconvenient synchronization
Increasingly consumer devices come with similar, low-end, built-in
PIM software
BUT inconvenient
Requires synchronization
Difficult to share information with the desktop
Closed platform, non-extendable
HOWEVER, they are programmable
J2ME, Symbian Platform, Microsoft Compact .NET
It has become possible to have enterprise PIM functionality on low consumer
devices!
Emerging Applications
Location Based Services
Users are already showing interest as
illustrated by increasing use of text message
alerts on local news/weather/traffic reports
Location information available on increasing
number of devices
Mobile Payments
Mobile Ticketing
Mobile application characteristics
Programmability
Potential for creating more responsive applications
(combats bad perception left by WAP)
Critical personal data
Every application will access personal user profile in some form
Customizations, preferences, authentication information, personal
information (contacts, tasks, appointments, etc.)
Mobile payments (credit cards, account information, e-tickets)
Asynchronous Communication
Most applications are best described as event-based―core of the
application logic is to react to some external events.
Aesthetic, convenient user interface
Applications need pleasing, simple and responsive user interfaces
Always-on network connectivity
Almost all applications heavily rely on network connectivity. Integration
of data from the desktop (office, enterprise, school) to mobile device.
Access anytime, anywhere is what increases utility of the mobile
applications.
Agenda
Emerging mobile services
Limitation of current technology
Developing mobile applications using
Eximius mBaze framework
Bookstore service: an example application
Current Technology
SMS
“request-reply” text applications
WAP
Web applications
J2ME
Java applications
Example Application
Mobile Payments
Customer
banking, brokerage
services, bill payments, Credit Card Company
information services
Using SMS
Insecure
Cumbersome to use
Users
need to remember cryptic SMS
commands
Cannot store credit card information on the
device
Limited extensibility
Payment history, merchant incentives, etc.
Using WAP
Equivalent to web payments
Slow as pages making up user interface need to
be downloaded for every payment
Request-reply interaction incompatible with “Bill
notification”
Limited ability to save information locally
Extendable
Can be developed and deployed very quickly
Using J2ME
Insecure
HTTP request-reply problem
(same as for WAP)
Requires considerable software development
More difficult to deploy
Simple, intuitive, pleasing user interface possible
Very extendable
Agenda
Emerging mobile services
Limitations of current technology
Developing mobile applications using
Eximius mBaze framework
Bookstore service: an example application
Asynchronous Communication
• Web browsing
• Web search
• Ring tone Downloads
• Text messaging
• Email
• Mobile Ticketing
• Mobile Payments
Using raw J2ME
Asynchronous communication in J2ME is hard
J2ME 1.0
HTTP (request-reply)
J2ME 2.0 (not widely available yet)
HTTP
Incoming connections (low-level asynchronous)
mBaze Advantage
Asynchronous communication for mobile applications is always better!
(can always be converted to synchronous if need be)
Results in more responsive user interfaces
Easier handling of failures (slow network, disconnections)
For developers: easier to develop on
mobile platform
Mobile application is a collection of
asynchronous event-handlers
Always connected
Mobile Payments
Unattended synchronization
Mobile Ticketing
Using raw J2ME
Mobile applications are network-centric
But current network technology is:
Slow
High-latency, low-bandwidth
Slower then “dial-up”
Expensive
Users will be less likely to use you application if they have to pay
considerable network traffic costs.
Network cost varies from user to user depending on the price plan
and network operator.
Unreliable
Both J2ME 1.0 and 2.0 provide HTTP over TCP
HTTP/TCP ≠ reliable
Disconnections, failed transfers, unreachable destinations
mBaze Advantage
mBaze makes mobile applications work efficiently using existing
network technology (2G)
Uses compact data representation and compression
Replaces expensive and fragile synchronous with asynchronous
communication
Trades-off on-the-device local storage and processing for network
communication
Communication layer specifically designed and optimized for resource-
constrained nature of current technologies (both networking and device)
Uses document (message) -oriented communication for easy integration
with back-end (enterprise) systems
mBaze provides everything you need to create efficient and usable
network-centric applications over the current network technologies.
Security
Using raw J2ME
J2ME 1.0:
No security provisions
Some phone manufacturers have non-standard
security features
J2ME 2.0:
HTTPS
Digitally
signed applications
No provisions for encrypting data on the device
mBaze Advantage
Supports security-critical applications on both J2ME 1.0
and 2.0
Both PKI and Shared Key schemes are possible.
Takes advantage of vendor-specific, built-in security
features for enhanced performance and reduced
application size
Does not rely on built-in security enforcements—those
vary widely between manufacturers; ability to
always encrypt critical data stored on the device.
Uses privacy-preserving translucent database
User Interface
Mobile device
Allow user to edit profile and to
optionally approve remote
updating/viewing of the profile by a
bookstore.
Allow user to choose an authentication
method (e.g., password)
Bookstore Service (4):
The Complete System Title = “Lord of The Rings”
Subject = “Fantasy”
Note = “Collector’s Edition”
Subject = “Fantasy”
User Interface
Advantages of a framework
The infrastructure is already built for you
The infrastructure if maintained for you
You can concentrate on developing your application