inf 245 mobile applications mobile thin clients a.k.a. wireless web
DESCRIPTION
INF 245 Mobile Applications Mobile thin clients a.k.a. Wireless Web. H 2007 Ola Bø. (2004) wap trafic has multiplied. wap was launched in 1999, but never took off. A major fiasco. - PowerPoint PPT PresentationTRANSCRIPT
Molde University College INF 245 Fall 2007 OBø
1
INF 245 Mobile Applications
Mobile thin clients a.k.a. Wireless Web
H 2007
Ola Bø
Molde University College INF 245 Fall 2007 OBø
2
(2004) wap trafic has multiplied.
wap was launched in 1999, but never took off. A major fiasco.
Now starting to take off: browsing, reading news. Young users. Use tripled in a year. 10% of the 300 000 monthly users use the Wap Portal.
GPRS a major factor explaining this development.
Price differences
Molde University College INF 245 Fall 2007 OBø
3
dn.no3.9.2004
4 times more wap users from 2002Q4 to 2004Q2
1600 000 possible users 600 000 real users
Molde University College INF 245 Fall 2007 OBø
4
dn.no 28.5.2004
Nokia
Users prefer using their phone for browsing
Transition from WAP to HTML!
Molde University College INF 245 Fall 2007 OBø
5
Thin clients/Wireless Web – Introduction The web is a huge success
Simple access to an enormous range of content and possibilities We are still in the initial phase The technology implies a division of work
A fairly simple (thin) client that can present HTML encoded content A server doing most of the job
Composing and coding content from heterogeneous sources Handle input from the user
Thin clients are appropriate for mobile devices with limited resources But the screen is smaller – Micro Browser
>50% of the global installed base of handsets has a micro browser installed (Nokia 2004)
Ca 75 % of the GPRS traffic is mobile browsing (Nokia 2004)
Molde University College INF 245 Fall 2007 OBø
6
Wireless WWW – Architecture – An outline Thin clients are doing the
presentation – the challenge is a small screen
Middle tier transforms data from databases into HTML and processes input from the users
The Back end System (data base layer) Contains the data the mobile user wants access to. May be stored in relational databases, email-servers or as XML-content for instance RSS
Molde University College INF 245 Fall 2007 OBø
7
The Client Less functionality than on
desktop- or portable computers because of weaker computing power, smaller screen and limited bandwidth
More difficult to make good user interfaces supporting both navigation and display of interesting content. Important for the user reach his goal quickly.
Heterogeneity both in screen browser and markup language makes multiple variants of the pages necessary
The browser takes care of communication, so the developer does not need to handle communication protocols
OpenWave RIM
Pocket IEPALM
WebClipping
Opera browser on Nokia series
60
Molde University College INF 245 Fall 2007 OBø
8
Middleware Usually middleware is specially constructed
for mobile applications. The middleware is run on application servers
Application servers Handles complexity in serving a number of users
integrating with databases and enterprise systems. Permits the developer to focus on developing modules containing business logic
Standardized J2EE standard (JSP, Servlets, EJB) Middleware for wireless applications are mainly
built on J2EE standardization. An alternative: .NET
Molde University College INF 245 Fall 2007 OBø
9
Middleware II
Middleware frameworks for mobile web can be bought Solve most problems inherent i developing for the
mobile web Recognition of the device, screen size, browser and
language Content transformation Session administration Integration with enterprise databases and systems Learning threshold can be overcome using
development tools
Molde University College INF 245 Fall 2007 OBø
10
Application server
Handles traffic arriving over HTTP, components, threading and pooling and integration with enterprise systems
FrameWork for Mobile MiddlewareTranslates content to different devices
custom made component
custom made component
Mobile web applications – Common structure
Molde University College INF 245 Fall 2007 OBø
11
J2EE Application Server Standard platform for
enterprise applications Base technology: Java J2SE Component model: EJB
(Enterprise Java Beans) Web technology JSP, Servlet,
JSF (Java Server Faces) Integration
Relational databases JDBC, Catalog Services JNDI, Existing software CORBA,
JMS, JCA, JNI XML JAXP, SOAP ...
J2EE is specified in JCP Cooperation about
specification, competition about implementation and hardware.
Molde University College INF 245 Fall 2007 OBø
12
Microsoft .NET A comprehensive set of products for
enterprise applications Base technology: C# MSIL CLR Web technology: ASP and XML web
services Component technology: COM ->
COM+ ->.NET managed components Integration:
ODBC for RDB -> OLEDB -> ADO -> ADO.NET for several types of data sources
Possible to write custom integration components
XML, SOAP .NET is specified and sourced by
one supplier- Microsoft That may be an advantage
Why? That can also be a disadvantage
Why?
Molde University College INF 245 Fall 2007 OBø
13
Processing of a wireless WWW request
1. Establish a wireless session2. Send a request
May be binary coded3. Translate the request
Safety problem (WAP-gap)4. Receive request
ASP, JSF, JSP, Servlet, 5. Identify the client
What can we send to the client6. Process request
1. Retrieve requested information7. Adapt markup to client8. Return content
1. Possibly recode in gateway
•Application server may be placed with network operator
•Gateway may be placed with enterprise to stop wap-gap
•Gateway may be eliminated if http is used end to end.
Molde University College INF 245 Fall 2007 OBø
14
Convergence in standarisation, mark up and protocols
OpenWave
HDML
DoCoMocHTML
WAP ForumWAP 1.0WML1998
+Motorola, Nokia, Ericsson+300 companies
+Location Interop Forum
+SyncML Initiative
+MMS Interop Group
+Wireless Village
2002
Open Mobile AllianceWAP2WML2 =XHTML MPWP-HTTP, WP-TCP, WP-TLSCC/PP – UAPROF CSS
W3CHTML4.01997
WWW standards
Special standards for mobile terminals
Not tcp/ip,but special protocols optimized for wireless slow connections
tcp/ip- og http- compatible but optimized for wireless slow connections
Backwards compatible with WAP 1.0
W3CXHTMLBasic2000W3C
XHTML
An augmenting number of devices support TCP/IPHigher bandwidth
Simplification:frames
Added C
SS
+WM
L1elements
IETF – Ordinary
Molde University College INF 245 Fall 2007 OBø
15
The WAP model Similar to http and web
Pull: Client sends request for content
But: Push and control over telephony is possible
Gateway aka. WAP-proxy Compulsory in wap 1.0 Translates request from WAP to
HTTP Compresses outgoing content Permits using standard HTTP
servers to deliver content Implements push-functionality
WAP 2.0 can work without proxy but a proxy may give
advantages Optimized communication Support for services like push,
localization and encryption
Molde University College INF 245 Fall 2007 OBø
16
WAP components Wireless Application
Environment Specifies the interface for
micro browser – WML and WMLScript
Special data format WBMP, vCard, vCalendar
From WAP2 WML2=XHTML MP built
upon XHTML-basic Support for Style sheets Backwards compatible
with WML1 WAP protocol stack
Molde University College INF 245 Fall 2007 OBø
17
Molde University College INF 245 Fall 2007 OBø
18
WAP 2.0 Convergence with standard
WWW Markup language
WML2=XHML Mobile Profile = XHTML Basic Profile + extra elements from XHTML + Backwards compatibility with WML 1
Protocols Wireless Profiled HTTP – compatible
with HTTP 1.1 Wireless Profiled TLS – compatible
with standard TLS Wireless Profiled TCP – compatible
with standard TCP
Other services in WAP 2 WAP Push: content sent from
server without request User Agent Profile (UAProf):
informs server about the client through the request
Wireless Telephony Applications: Gives access to phone functionality – phone, send sms
Persistent storage interface: Gives access to device storage
Data synchronization Multimedia Messaging Service
(MMS) For Nokia Series 60 more
services on newer models
Molde University College INF 245 Fall 2007 OBø
19
Thin client development When are thin clients the
solution? Challenges
Heterogeneous terminals Limited and expensive
bandwidth Latency time Mobile context of use Security and integration User interface
Why is it so hard to show standard www-pages on a mobile device? Limited HTML and CSS
support Small screen Missing or weak support for
scripting Missing plug-ins: Flash,
Applets, PDF Graphics require bandwidth
Graphics are commonly used for design
Missing mouse
Molde University College INF 245 Fall 2007 OBø
20
WAP changes in Telenor tariffs H2004-H2005
H 2004
BedriftskunderH2005
!!
Molde University College INF 245 Fall 2007 OBø
21
User interface design
Reduce latency problem Reduce number of
requests Reduce number of bytes
Good navigation Few screens Must permit single
handed navigation Simplicity – content more
important than design Reduce amount of text
Personalization Adapt content to user to
give maximum usefulness
User configurable? Different application for
different users Message based
approach: information about your flight!
Molde University College INF 245 Fall 2007 OBø
22
Testing of mobile web applications
Early testing necessary – why? Pilot
It is necessary but not possible to test all possible terminals/browsers Emulators
Both help and problem
Molde University College INF 245 Fall 2007 OBø
23
A browser for the desktop and for the mobile device is not the same
Konsekvenser?
Molde University College INF 245 Fall 2007 OBø
24
Sources Martyn Mallick kap 11, 12, 13, 14 Wapforum LTD(2002): Wireless Application Protocol
WAP 2.0 Technical White Paper Jonny Axelsson (2004) Making Small Devices Look
Greathttp://my.opera.com/community/dev/device/
Michael Ball (2000) XSL gives your XML some style http://www.javaworld.com/javaworld/jw-06-2000/jw-0630-xsl_p.html
Nokia (2004) Series 60 Platform white paper: Browsing on Mobile Devices, NOKIA Corporation, July 2004