0% found this document useful (0 votes)
3 views29 pages

Mobile Application Architecture Overview

Uploaded by

sofiyasin190
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views29 pages

Mobile Application Architecture Overview

Uploaded by

sofiyasin190
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Chapter Seven

Mobile Application
Development

1
Outline
• Mobile Application Architectures
• Mobile Web
– WAP and WML
• J2ME & Android

2
Mobile Applications Architecture
• Software Architecture
– A particular high-level abstraction of the system and
how its components collaborate
• Mobile Application
– Distributed Networked systems

3
Mobile Applications Architecture
• Many factors should be considered to choose an
architecture
– Target Audience
• Who are they? Technical skills?...
– Device types
• Input mechanisms, form factor, resource capacity?...
– Network Connectivity
• Wireless? Which type?...
– Data placement
• Where is the data stored? client? Server?
– Security
• Is the mobile data sensitive?
– Etc

4
Mobile Applications Architecture
• Different Architectures
– Fully Centralizer
– N- Tier
• Client/Server
• 3- tier
• …
– Peer to Peer
– Mobile Agents

5
Fully Centralized
• Software Systems are all about the software on the fully
centralized host
• Has custom-designed clients to perform specific tasks –
usually dump
• Fully centralized mobile applications differs from other
fully centralized applications in QOS, limited power
supply, active transactions, and location awareness
• Platform proliferation, limited device capabilities, and
support for a variety of user interfaces—do not apply to
fully centralized applications
• Monolithic layer of software from the client to the
server with very little software on the client
6
Fully Centralized
• Disadvantage
– Network connectivity is a must always – What is the
implication for mobile devices?
– Single point of failure – the server
– Inflexible and costly
• Advantage
– Simple
– Very reliable
• Example
– Supermarket handheld scanners
– ATM machines
– battlefield systems
– system used in grocery stores for inventory tracking 7
Client Server Architecture
• Two programs residing in different machines – Client
and Server
• Advantage
– Handle interface issues easily
• Knows how to render appropriate interface
– Handle intermittent networks or server down time
• Two types
– Thin Client
• Example : Web browsing using mobile phones

8
Client Server Architecture
• Thick Client
– Some task executed by the client and some task executed
by the server
– How do you distribute software to a wide range devices?
• Virtual Machine – JVM
• Direct programming environments on the hardware –
BREW from Qualcomm

9
3-Tier Architecture
• Apply the principle of separation of concerns to the
client–server model by separating the concerns into a
set of n layers
• 3-tier architecture
– Separated the concern of business logic computations
from the rest of the application
– storage of data in the database, business logic in the
application server, and rendering the user interface in the
client
– Provide better reliability and scalability
• Disadvantage
– Designed to produce one type of user interface for one
group of users
10
3-Tier Architecture

11
N-Tier Architectures
• Every Mobile device type needed a different type of
content and the application server began to be
responsible for both business and presentation logic
– 3-Tier failed
• Many mobile commercial solutions in the market today
focus on data-driven mobile solutions with N-tier
architectures
– Separating business logic from presentation logic

12
4-Tier Architectures

13
Peer-to-Peer Architectures
• The great failure of centralized and client–server
models lies in their inability to recognize, let alone
exploit, the growing power and information resources at
the edges of the network
• Peer-to-peer (P2P) application architectures allow any
participant of the network to communicate with any and
all of the other participants
• Contains autonomous and equal participants called
peers
• P2P architectures do not require connectivity to a
server or centralized host
– Can be satisfied by one of the participating peers
14
15
• Examples
– BitTorrent - is a protocol for the practice of peer-to-peer
file sharing that is used to distribute large amounts of
data over the Internet.
– Emule - is a free peer-to-peer file sharing application for
Microsoft Windows.
– Gnutella - is a large peer-to-peer network. It was the first
decentralized peer-to-peer network of its kind
– Skype, Google talk

16
Intuition
• P2P • Client-server

17
P2P vs. Client-Server
 P2P
 Download completion
time D(n)=O(log(n)),
when n is the number of
peers
10 million  Client-server
minutes  Download completion
time D(n)=n, where n is
the number of client
200  Time to serve a content: 10
minutes minutes

18
• Twitter is using Murder to update Twitter servers
(July 2010)
• 75x faster
• [Link]
[Link]

19
Murder
• is a file distribution strategy
 Without Murder • With Murder

Credit: Larry Gadea


Arnaud Legout © 2006-2012 20
Murder Performance

Credit: Larry Gadea


21
BitTorrent Overview

Get a .torrent file that


contains the address of the Web server
tracker Get a random peer set

Tracker

[Link]

P1 P2 P3

Initial Seed
22
Mobile Agent Architectures
• Mobile Agents
– Software components that can move from server to server
in the network while keeping the state of the application
intact
– Programs that encapsulate data and code, which may be
dispatched from a client computer and transported to a
remote server for execution
– Execute asynchronously and autonomously
– Disadvantage
• Complex
• Security

23
• Why mobile agents are particularly suitable for mobile
application development?
– Because of their autonomous nature, mobile agents are
inherently active
– Mobile agents can display better response times owing to
reduced effect of network latency on the application
– Mobile agents are autonomous and asynchronous and so
can deal with intermittent network connectivity gracefully
– Mobile agents can adapt extremely well

24
• Reference
– Reza B’Far, Mobile Computing Principles: Designing
and Developing Mobile Applications with XML and
UML, Cambridge University Press, 2nd ed. 2005
• Ch 2, 9, 16

25
Outline
• Mobile Application Architectures
• Mobile Web
– WAP and WML
• J2ME & Android

26
Mobile Web
• The mobile web refers to access to the world wide web, i.e.
the use of browser-based Internet services, from a handheld
mobile device, such as a smartphone or a feature phone,
connected to a mobile network or other wireless network.
• The Mobile Web has also been called Web 3.0
• Mobile Web access today still suffers from interoperability
and usability problems
• Interoperability issues stem from the platform fragmentation
of mobile devices, mobile operating systems, and browsers
• Usability problems are centered on the small physical size of
the mobile phone form factors (limits on display resolution
and user input/operating)

27
Mobile Web

28
• References
– [Link]

29

You might also like