O SlideShare utiliza cookies para otimizar a funcionalidade e o desempenho do site, assim como para apresentar publicidade mais relevante aos nossos usuários. Se você continuar a navegar o site, você aceita o uso de cookies. Leia nosso Contrato do Usuário e nossa Política de Privacidade.
O SlideShare utiliza cookies para otimizar a funcionalidade e o desempenho do site, assim como para apresentar publicidade mais relevante aos nossos usuários. Se você continuar a utilizar o site, você aceita o uso de cookies. Leia nossa Política de Privacidade e nosso Contrato do Usuário para obter mais detalhes.
Architecture for mobile computing
The first layer is User Interface or Presentation Tier.
Deals with user facing device handling and rendering
Includes a user system interface where user services reside
Second tier is the Process Management or Application Tier.
Here business logic and rules are executed.
Capable of accommodating hundreds of users
Asynchronous queuing to ensure reliable completion of transactions.
Third tier is Database Management or Data Tier
For database access and design
Provides increased performance, flexibility, maintainability, reusability and scalability,
while hiding the complexity of distributed processing from the user 2
Three-tier architecture (in detail)
To have universal access, the server is connected to a
ubiquitous network like internet.
To have access with network, an application called web
browser is required such as Internet explorer, Mozilla etc
Presentation Tier (Tier 1)
Application Tier (Tier 2)
Data Tier (Tier 3)
Presentation Tier (Tier 1)
Layer of agents applications and systems.
Applications run on the client device and offer all the user
Responsible for presenting the information to the end user.
Humans use audio and video to receive information from the
Information is given to the system from keyboard(computer,
laptop, cell phones ), pen (tablet, palmtop) etc
It includes web browsers
Application Tier (Tier 2)
Considered as engine of the application
Performs the business logic of the processing input, obtaining data and
Includes technologies like CGIs, Java, JSP, .NET services, PHP etc. deployed
in products such as Apache, Websphere etc.
Tier is presentation and database independent.
Operations such as network management, security are performed using a
Middleware is defined as a layer of software, which sits in between the
operating system and user facing software.
Can also be defined as a software gateway connecting two independent open
Message-oriented Middleware (MOM)
Transaction processing (TP) Middleware
Distributed Object and Components
Internet Content Adaption protocol (ICAP)
Message-oriented Middleware (MOM)
It connects different applications through asynchronous exchange of messages.
Works over a networked environment without knowing what platform or
processor the other application is resident on.
The message can contain formatted data, requests for actions or unsolicited
Provides a message queue between any two interoperating applications.
If the destination process is busy , then message is held in temporary storage
until it is processed.
It is asynchronous, peer to peer, works in
In this mode, one or more objects subscribe to an event.
As event occurs it will be published by the loosely coupled
MOM will notify about this event , Is appropriate for event
Eg: Message Queue from IBM known as MQ series
Transaction Processing (TP) middleware
It provides tools and environment for developing transaction based distributed
Inputs the data into a system at point of information source and output the
data at information sink.
Used in data management, network access, security systems, delivery order
processing, airline reservations, customer service etc
Capable of providing services to thousands of clients in a distributed client/
Includes features such as restarting failed process,
dynamic load balancing and ensuring consistency of data.
Independent of database architecture.
It optimises the use of resources by multiplexing many
client functions onto much smaller set of application
Model view controller MVC
Java uses MVC architecture , which is an example of TP middleware
It splits application into separate layers i.e. presentation, domain logic and
domain specific representation of the information on which the application operates.
Domain logic manipulates and adds the meaning to the raw data
Responsible for rendering the model into a form suitable for interaction and understood by
Manages the process and responds to events, typically user actions, may invoke changes in
the model 14
Similar to connecting one application to another with the
help of telnet
Used in telecommunication world
User interface is through telnet
A mediation server automates the telnet protocol to
communicate with these nodes in the network.
Distributed Object and Components
Eg: CORBA (Common Object Request Broker Architecture)
Open distributed computing infrastructure being standardized
by object management group.
Is vendor – independent infrastructure.
CORBA based program from any vendor on almost any computer,
operating system, programming language and network can
interoperate with a CORBA based program from same or
Handles large number of clients at high rates with high
Used to transcode one format of data to another to suit the
need of the client.
To access web pages on phone, the HTML pages are transcoded
into WML pages so that mobile phone can access it.
It is used for content adaptation to fit the need of the device.
Content adaptation is also required to meet the network
Content adaptation is done through proprietary protocols
Internet Content Adaptation Protocol
Contents present in the internet is accessed from different
agents and devices.
Is a protocol aimed at providing simple object based content
vectoring for HTTP services.
Lightweight protocol to do transcoding on HTTP messages.
Allows ICAP clients to pass HTTP messages to ICAP servers for
some sort of transformation.
The server sends back the transformed messages back to its
Before document is displayed for the agent, it is checked virus.
The user agent makes a request to an ICAP client for an object
on an object server.
The client sends the request to the ICAP server
The ICAP server executes the ICAP resource service on the
request and sends the possibly modified request or a response
to the request ICAP client
The client sends the request, possibly different from the
original client’s request to the original server.
The origin server responds to the request
The ICAP client sends the reply to the client.
Services provided by ICAP servers
Virus checking for the requested content
Content filtering based on the sensor rating like PG(
parental guidance) , R (Restricted)
Local real time advertisement insertion like television
Wireless protocol translation
Image magnification for elderly
Peer to peer compression
Encryption of data and many more.
It provides a standard means of communication and information exchange among
different software applications, running on a variety of platforms or frameworks.
Is a software system identified by URL whose public interfaces and bindings are
defined using XML
The basic architecture includes web service technologies capable of:
Describing web services
Publishing and discovering web service descriptions.
Web services architecture defines the standard for exchange of messages
between the service requester and service provider.
Service providers are responsible for publishing a
description of the services they provide
Requesters must be able to find and discover descriptions
of the services.
Software agents in the basic architecture can take on one
or all of the following:
Service requester: requests the execution of the web service
Service provider: processes a web service request
Discovery agency : agency through which a web service description
is published and made discoverable.
Data (Tier 3)
Used to store data needed by the application and acts as
repository for both temporary and permanent data.
The data can be stored in any form of datastore or
Data can be stored in XML format for interoperability with
other systems and data sources.
Database independence helps in maintenance of the system better.
Allows the business logic to be independent and transparent of the database
technology and the database vendor.
Runs between the application program and the database.
Also called as database connectors as well.
Eg: ODBC, JDBC
With the help of these middleware's, the application will be able to access
data from any data source.
Data sources can be text files, flat files, spreadsheets or network, relational
, indexed, hierarchical, XML database etc.
Is a protocol is an emerging standard for synchronization of data access form
New industry initiative to develop and promote a single common data
synchronization protocol that can be used industry wide.
Supports the naming and identification of records and common protocol
commands to synchronize local and network data.
Supports identification and resolution of synchronization conflicts.
It works over all networks used by mobile devices both wireless and wireline.
Design consideration for mobile
The term context means , all the information that helps determine the state of an
object or actor
It can be a person, device , a place , a physical or computational object.
Content with context awareness
Build each application with context awareness
There are different services for different client context
Bank providing services on internet, for mobile phones and PDA
Have different URL for each type of device
Content switch on context
Provides adaptation of content within service
Transparent to the client
Here service is the same for internet , PDA and WAP
All access the bank site from same URL
Content transcoding on context
Performs the adaptation of content based on the context and
behaviour of the device
Transparent for the client and the application
Middleware is used to perform all the operation
Middleware is intelligent to convert from HTML to XML or vice
versa as need occurs.
The device will be in a position to communicate its identity without any ambiguity
Information related to surrounding space i.e. location, orientation, speed , elevation and
Information related to time such as time of day, date, time zone, season of the year
Related to environment surroundings such as temperature, air quality, moisture etc
Related to social environment such as who is with you, people nearby, whether the user
is in the meeting or party. 30
Resource that are nearby
Relates to the resources accessible nearby such as devices, hosts or information sinks.
Availability of resources
Information about the device in use such as battery power , processing power, display etc
Relates to physiological state of the user such as blood pressure, heart rate, respiration rate
, tone of voice
Relates to the activity of the user such as talking, reading, walking and running.
Schedules and agendas
Relates to the schedules and agendas of the user. 31
A system is context aware of it can extract , interpret and use context related
information to adapt its functionality to the current context.
Three aspects of the context management
The way in which the information is obtained
The way in which the context information is stored and transcoded.
The way in which the meaning is obtained from the context representation.
W3C proposed a standard for context information, i.e. Composite Capabilities/ Preference
Profiles (CP/PP) 32
Composite capabilities/ Preference
Proposed by W3C
Model is based on RDF( Resource Description Framework) and
can be serialized using XML.
Contains a number of attribute names and associated values
that are used by an application to determine the appropriate
form a resource to deliver to a client.
Help a client/ proxy to describe their capabilities to an origin
server or other sender of resource data.
Fir different application to interoperate, some common
vocabulary is needed.
Device sends serialized profile model with request for content
Origin server receives serialized RDF profile and converts it into
an in-memory model
The profile for the requested document is retrieved and in-
memory model is created.
The device profile model is matched against the document
A suitable representation of the document is chosen.
Document is returned to device and presented.
Responsible for controlling policies related to mobility
A policy is set of rules, these rules need to be followed under different
When mobility is considered, the information will be visible from outside the
four walls of the enterprise.
Organizations will have policies regarding the disclosure of the information.
Eg: certain documents can be viewed only at the office of CEO
These kinds of policies must be transferable to mobile computing policy
It will be able to define policy for the documents and assign roles to users.
Each role will have permission , prohibition, obligations associated with it.
Policy manager will have rights to read, write and execute
How to make machines understand policies and make them
behave in the expected fashion?
Semantic web addresses this need
Data is defined in the web and linked in such a way that it can
be used by the machine not for just display, but for the
automation. Security, filtering, integration and reuse of data
across various applications.
It is generally built on syntaxes which use URLs to represent
data, usually tuple based structures.
These syntax is called Resource Description Framework (RDF)
Provides a connection between the client device and the origin server.
Security manager will ensure security with respect to
The message transacted needs to be confidential
Nobody should be able to see it.
Managed by encryption eg: AES
The message transacted needs to be tamper-resistant
No body should be able to change any part of the message
Managed using various hashing algorithms
The system will be available
Nobody will be able to stop the service
Users of the system can be identified
Nobody after using will claim otherwise
Managed by digital signatures
There are complex issues of knowing what resources, services or agents to
The system will be trusted.
Platform for privacy preference project
Is an emerging standard defined by W3C
Enables web sites to express their privacy practices in standardized
format so that they can be retrieved and interpreted as user agents.
With P3P , users need not read the privacy policies they visit
Instead key information about the content of the web is conveyed to
The goal of P3P is to increase the user trust and confidence in the
This informs the privacy policies about the site, hence makes the user
to decide whether to release personal information or not.
Responsible for adapting content, behaviour and other
aspects acc. to the context and policy
May take any number of actions depending on the
information passed to the context manager
Most common action performed is transcoding of the
content so that it may be viewed on a particular device
Appending location-specific information to the document.
Content adaption and transcoding
Content adaptation can be done at either content level in server end
or the agent level in client device
Can be done in intermediate level in a middleware framework.
Content adaptation needs to consider the following attributes:
Physical capabilities of the device
Screen size, width and height in pixels, color
Logical capabilities of the device
Display image, audio, video
Effective network bandwidth
The total amount of bits can be delivered to the agent for static parts.
Types of transcoding
Transcoding in space or dimension
A standard frame is downscaled and reduced.
The frame is changed from one size to different size to suit the target device
Reduction of number of frames on time scale
Downscales the no. of transferred frames to suit the target device and
Used to change the coding standard from one to another
Eg: transcoding BMP code into WBMP for wireless devices
Types of transcoding
Requested for monochrome clients
Uses less pixels and reduces bandwidth consumption
Modifies the perception of the image
Object or semantic
Comprises various techniques based on the computer vision
Extracts the valuable object from the scene, transfer them with
lower amount of compression in order to maintain the both details
Server side adaptation , resource requirements are
Static content size in bits
Display size such as height, width and area
Hardware requirement such as display for images, support for
audio and video
Transcoding done through middleware
Benefit of the middleware approach is it is totally
transparent to the device and content
Content providers have no control over how their content will
appear to different clients
There may be legal issues like copyright
Html tags provides formatting information rather than semantic
Transcoding of videos and audio is not easy
Developing a general purpose transcoding engine is very difficult.
Content Rating and Filtering
W3C has proposed a standard called PICS (Platform for Internet Content Selection)
for rating of the web content
Filtering of the content takes place based on this rating
It is set of technical specifications for labels that help software and rating to work
Rating is allowed to the service provider , since it involves some amount of
Rating can be through self labelling or third part labelling of the content
PICS was concerned about children accessing the inappropriate materials , i.e meta
data system, meaning that labels provide any kind of descriptive information about
Controlling was done using :
Coupling the ability to make assertions with cryptographic signature block that ensure
integrity and authenticity
Intellectual Property Right Management
Using the meta-data system to label Web resources with respect to authors, owners, rights
Using Meta-Data system to allow sites to make assertions about their privacy practices and
for users to express their preferences for the type of interaction they want to have with
Based on some policy, the content can be personalized to suit the need of user and the
End User (EU)
Content Provider (CP)
Content Aggregator (CA)
Internet Service Provider (ISP)/ Wireless Network Operator (NO)
NO will have routers, gateways, cache etc to offer service
Any node can be responder and requester
There will be different parameters to determine the content
They can be static or dynamic parameters
Static parameter is received before the service begins
Dynamic parameter are those which are required with every request.
Types of service (Content Aggregator ‘s
Single Service Request
Works at user level
Works for only one user
Group service request
Works for group of users
Initiated at CA level or the NO level
A system should be available and accessible from anywhere and
anytime and through any network or device
The user should be able to access the system when travelling.
Patient travelling from house to hospital via ambulance or
helicopter, here information has to exchange without any
Seamless Communication will combine seamless handoffs and
Handoff is the process which the connection to the
network is moved from one base station to another base
station within the same network
Roaming is a process in which connection to the network
is moved from one base station of one network to another
base station of another base station.
Offers freedom to roam across different wireless networks
Roaming works within homogeneous networks like GSM to
GSM or CDMA2000 to CDMA2000
Following aspects needs to be maintained in seamless
Authentication across network boundaries
Authorization across network boundaries
Billing and charging the data collection
End to end data security across roaming
Handoff between wireless access points
Roaming between the networks
The purpose of autonomous system is to free users and system
administrators from the details of the system operation and maintenance
System will run 24 X 7
Combination of the following functions
Will configure automatically in accordance with high level policies
Continuously look for ways to improve its operation with respect to cost, resource
Will detect, diagnose and repair localized problems resulting from bugs or failures.
It will be well defined from external attacks
Will not cascade failures to other parts of the system
Will be able to grow and upgrade itself within the control of the
Context aware Systems
Context manager is to maintain information pertaining to location,
mobile devices, networks, users , the environment around each
mobile device and other context information deemed relevant
Information such as
Helps to identify the location of the user/device
Can be achieved using device or through network
From device- GPS, can offer location precision of 10 feet radius
From network- timing advanced technology- precision of 100 feet radius
The know about the characteristics of the device
To determine the resource capability and the user interface capability
User-Agent parameter of HTTP we can obtain the device information
Mobile computing environment, device moves from one network to another network
Is required to identify the capability of the network
Includes information such as security infrastructure, services offered by the networks
This information is required to identify the user correctly
The system needs to ensure that the user is genuine and who he claims to be
Information can be validated through authentication independent of device or network
Tells about the surrounding environment
Know about the temperature, elevation, moisture etc which is mainly required for sensor
based networks 57
Global Positioning System , is a system that gives exact position on this earth
Funded and controlled by US Department of Defence
GPS satellites are orbiting around the earth, which transmits the signals that can be detected by
anyone with a GPS receiver
Has three parts
Consists 24 satellites, each in its own orbit
Each GPS satellite takes 12 hours to orbit the earth
Each satellite is equipped with a clock to broadcast signals with respect to time
Has receivers, which can be users hand, embedded in a mobile device or mounted in a vehicle.
Receives the signal from satellite at the speed of light 58