A WEB-ENABLED MOBILE AGENT PLATFORM FOR E-
COMMERCE AND M-COMMERCE
“The Havana Platform”
Leslie Yu, Qusay H. Mahmoud
Department of Computing and Information Science, University of Guelph, Guelph, Ontario, Canada N1G 2W1
Keywords: E-commerce, m-commerce, mobile agents, web agents, agent business model
Abstract: A side effect to our increasingly
information-driven economy and lifestyle is the annoyance and headaches
of information overload. Everywhere we go, we are bombarded by email, spam, online advertisements,
beepers beeping, cell phones ringing, and incoming SMS messages. The wealth of information available at
our fingertips online is both a blessing and a curse in disguise. This paper presents the Havana mobile agent
platform, which can be integrated with the existing Web infrastructure, designed to be used for e-commerce
and m-commerce applications. The platform features some unique characteristics such as its business model
where all participants are locked in business contracts. With the aid of user location information, mobile
agents are deployed to engage in the process of wading through the mountains of information online in
order to comparison shop on behalf of the user while filtering out irrelevant information.
1 INTRODUCTION
In this consumerist world that we all live in,
ourselves, as consumers, are constantly being
bombarded with advertisements anywhere we look:
on TV, on the radio, in magazines, on billboards etc.
This situation is best summarized by Rangananthan
and Campbell (Ranganathan and Campbell, 2002),
as they point out, “[c]ompanies constantly struggle
to find the best advertising strategies to promote
their goods and services. They need to be able to
reach the segment of population that is potentially
interested in their products. They need to deliver the
advertisement in an appropriate manner that will
‘stick’ in the users’ minds. They need to make sure
that the products and services they advertise are
those that meet the user’s needs. And they also need
to ensure that their advertising does not annoy
anybody, since that could result in a negative
impact”.
In this paper, we will discuss the idea behind our
n
ovel mobile agent system that tries to automate the
process that a user engages in when comparison-
shopping. The contribution of this paper will be a
business-driven mobile agent platform and a proof-
of-concept regarding the use of mobile agents in the
e-commerce and m-commerce world.
The rest of this paper is organized as follows.
Sectio
n 2 discusses comparison shopping difficulties
in wired and wireless environments. Section 3
presents a revolutionary business model for mobile
agents. The system architecture of the Havana
platform is discussed in Section 4. Security features
are discussed in Section 5. Finally concluding
remarks and future work are discussed in Section 6.
2 COMPARISON SHOPPING
Despite the proliferation of e-commerce nowadays,
the current searching process that a user undergoes
leaves much to be desired. With the use of bigger
screens and more efficient user input devices, even
the most patient amongst the desktop computer users
soon become frustrated when trying to go through
the current tedious process of comparison shopping
on the Internet. The current process entails first
finding out a list of online retailers through some
sort of online directory service, and logging in turn
into each of their websites sequentially, and
manually searching for the desired products and
noting their prices and repeating for each subsequent
retailers. All at the same time, the user will need to
mentally discard much of the irrelevant information
and bogus websites that she is bound to run into. In
425
Yu L. and H. Mahmoud Q. (2004).
A WEB-ENABLED MOBILE AGENT PLATFORM FOR E-COMMERCE AND M-COMMERCE - “The Havana Platform”.
In Proceedings of the Sixth International Conference on Enterprise Information Systems, pages 425-429
DOI: 10.5220/0002641804250429
Copyright
c
SciTePress
addition, the whole process provides little to none
customization based on the locale of the user. The
process leaves much to be desired.
Here, we wish to use the same system that we are
building to assist mobile users to also help wired
users in their quest for good online deals. To
demonstrate the ability of mobile agents to act on the
behalf of their users in an e-commerce setting to
complete tedious tasks and to filter out irrelevant
information, we provide an agent business model.
2.1 Comparison Shopping in the
Wireless Environment
In this age, we are witnessing PDAs and cell phones
that are slowly rivalling the capabilities of that of a
desktop. However, accessing the Internet using these
tiny devices is a fundamentally different experience
from that of doing the same on a desktop.
The small sizes of the devices inevitably limit the
size of their screens and input keys. Along with the
lower CPU power, lower memory capacity and
slower and less reliable network connections
associated with these devices greatly reduces the
usability of these devices, and presents tough
challenges for software designers. Generally, users
that are accessing the Internet from wireless devices
are on-the-go, more hurried, less likely to be using
the device while sitting, and more likely to be
inputting data using one only hand (Kamba et al,
1996). Picture the frustration a user must feel if she
wants to compare the prices of a CD in 10 different
online stores by punching the same CD information
on the cell phone again and again single-handedly
while walking through a crowd! A mobile user’s
need for direct access to information with minimal
browsing and minimal user input is what prompts us
to investigate in using mobile agents to perform
information filtering and retrieval in an m-commerce
setting.
3 MOBILE AGENTS
Mobile agents represent a new paradigm in
distributed systems programming wherein a thread
of program execution can be transported from one
host to another amidst execution. It is a markedly
different approach to distributed computing when
compared to the traditional client-server approach.
When the time comes for a mobile agent to move
from one host to another, the program state is
marshalled, and sent over the network to the other
machine. Over on the other machine, the exact
opposite happens where the program state is
unmarshalled, and program execution resumes on
this new host (Lange and Oshima, 1998).
3.1 Business Model
We propose a revolutionary business model in the E-
and M-commerce world where mobile agents are
sent out from a gateway server that visits a list of
retailers in turn to lessen the workload on the
shopper. In this novel system, the gateway will be
run by a wireless voice/data service provider and
will enter into business contracts with retailers that
require each party to hold up their end of the
bargain. Retailers will agree to install the necessary
server components to allow mobile agents from the
gateway to run on their websites; and in return, the
gateway agrees to let each retailer insert one piece of
advertisement to be incorporated as part of the
mobile agent’s search results.
The newly formed business relationships between
the gateway and the retailers will be mutually
benefiting. The retailers benefit by getting exposure
to more potential consumers currently in the market
to buy products that they have to offer. By looking at
the type of merchandises that the user is interested in
buying and the user’s current location, the retailer
can now adopt target marketing instead of
serendipitous marketing, which is more effective
(Jagoe, 2002). For example, if the mobile agent
representing the user is looking for the price of a
specific Harry Potter book, the retailer’s Promotion
Agent can now run through a database of ongoing
promotions or advertisements that might interest the
user the most. For instance, it might be able to tell
the user of the store’s highly relevant ongoing
promotion of getting two Harry Potter books for the
price of one, thus allowing the retailer to send the
right message to the right people at the right time.
Looking at the customer’s point of view, location-
aware comparison shopping service is a value-added
service that allows the customer to shop at many
stores with minimal work. In addition, the chance
that the customer will see promotions that actually
interests her is much heightened. Reusing the above
example, it is likely that she will be very interested
in the two-for-one sales promotion on all Harry
Potter books from one of the retailers. Because the
advertisements are now relevant to the customer’s
needs, the customer will be more interested in them
and check them out.
From the gateway's point of view, by offering its
users the convenience of location-aware comparison
shopping via mobile agents, it will reap the benefits
outlined by Kolmel and Alexakis (Kolmel and
Alexakis, 2002) in their analysis of the business
model of location-based services. In particular,
ICEIS 2004 - SOFTWARE AGENTS AND INTERNET COMPUTING
426
location-based advertising is a promising value-
added service that offers multiple advantages to the
gateway: (1) Value-added service attracts new
customers and enhances existing customer’s loyalty;
(2) Increased revenue due to additional wireless
network traffic generated by the use of such
services; and (3) Potential to further increase
revenue by selling to other companies user location
information.
4 THE HAVANA MOBILE AGENT
PLATFORM
We propose a novel architecture to deploy mobile
agents on the wired and the wireless Internet. In this
proposed system, users wanting to comparison shop
for merchandises log onto our system, the gateway,
where they can configure and dispatch mobile agents
that act as comparison shopping agents, looking
through retailers with an Internet presence that carry
their desired products. The shopping agents will be
searching not only the various online retailers, but
also websites representing physical stores located
near the user’s current location.
4.1 System Architecture
The design of the system is separated into three main
entities: client for the end-users, the gateway, the
Yellow Pages Server and the agents-enabled web
servers as illustrated in Figure 1. The
implementation is done in Java (Gosling et al, 1996).
In the following sections we will look at the design
of each of these entities.
4.2 Clients for the End-Users
For wired users, the interface to our system is web-
based. The user interacts with the mobile
comparison shopping agents through accessing our
gateway using any off-the-shelf web browser.
On the other hand, while the functionality of our
system to the wireless user is the same, the way
through which the content is laid out is quite
different due to the smaller screen size and more
awkward modes of data entry. To work around such
limitations, we use a menu driven interface where
the user can use the up and down cursor keys on a
cell phone or PDA as the means of navigation. To
build an interface as such, we have chosen to deploy
our own custom J2ME MIDlet (Sun Microsystems,
2002).
Figure 1: Havana System Architecture
4.3 The Gateway
The gateway lies in the heart of the whole system. It
dispatches and retrieves mobile agents and acts as a
bridge providing the end-users of the system with
indirect control over the mobile agents that act in
their behalf.
One of the benefits to the user regarding
accessing mobile agents through a gateway is that it
saves the user from the headaches of software
installs and updates. Using a gateway, software
installs and upgrades are localized to the gateway.
There are various components lying within the
gateway – the Servlet Engine, the Mobile Agent
Platform, the User Location module, and User
Profile module, all of which are discussed here.
4.3.1 The Servlet Engine Component
The Servlet Engine is responsible for handling all
user interaction. Every user interaction ranging from
the initial login, to the creation or updating of the
shopping list, to the viewing of the search results, to
the final processing of the <<Buy It Now>> request
is handled by the Servlet Engine.
4.3.2 The Gateway Mobile Agent Platform
The Gateway Mobile Agent Platform creates,
dispatches and receives mobile agents. During the
creation of mobile agents, configuration data is
gathered from the end user, which is then submitted
to the Servlet Engine. The Servlet Engine passes the
parameters to the Gateway Mobile Agent Platform,
requesting that a mobile agent be created in the
configuration as requested by the user. Once a
mobile agent is created, it will request its list of
itineraries from the Yellow Pages server.
A WEB-ENABLED MOBILE AGENT PLATFORM FOR E-COMMERCE AND M-COMMERCE: "The Havana
Platform"
427
Agent transportation is provided by Java’s built-in
RMI and Serialization facilities (Sun Microsystems,
1999). Once it has a list of itineraries, it can start its
execution and will travel to each of the destinations
in turn.
When it has exhausted its list of destinations to
visit, it will travel back to the Gateway Mobile
Agent Platform located on the gateway. At this time,
the search results are recorded in the User Profile
Module (see section 5.3.4).
4.3.3 The User Location Module (ULM)
The User Location Module gives out the user’s
location. There are two facets to the module: wired
and wireless.
In the wired world, the module tries to resolve the
user's location from her IP address. This could be
done by subscribing to one of the many commercial
services that provide such information. One such
service is IP2Location (www.ip2location.com).
In the wireless world, since the gateway is
operated by the cellular service provider, which in
turn owns the wireless network that the wireless
devices operate in, the ULM finds the user's location
by tapping into the infrastructure of the wireless
network.
4.3.4 The User Profile Module (UPM)
The UPM is a database that stores data concerning a
user. Currently, it is a MySQL database
(http://www.mysql.com). Some of the information
stored includes login authentication, user computing
device profile, and user preferences.
The UPM also keeps track of what mobile agents
are currently out running errands for the user, what
past mobile agents has sent out. The history of what
mobile agents a user has sent out in the past allows
the gateway company to analyse what the consumer
trends and how it can better server its customers.
Finally, the User Profile Module also stores the
search results returned by the mobile agents. The
reason they have to be stored up in the UPM is
because, otherwise, if the mobile agent has finished
its initial round of searching and is dispatched again
later, the results would be unavailable to the user.
4.4 The Yellow Pages Server
The Yellow Pages Server is a database of all
companies that have entered into a business
relationship with the gateway. It stores: the company
name, the location of the company, the list of
products that it carries, and the URL of its website
and Mobile Agent Platform.
It has the ability to return a list of Business
Agents carrying a certain service located within a
certain proximity to the user.
4.5 The Business Mobile Agent
Platform
Similar to the Gateway Mobile Agent Platform, the
Business Mobile Agent Platform also sends out and
receives mobile agents. On this platform, there will
be Business Agents deployed that interact with
incoming Shopping Agents. The platform has an
API that allows the Business Agent to call up
functions that utilize the system resources of the
underlying system, including functions to open a
file, a HTTP connection, a database connection, and
a way to invoke local Web Services (W3C).
The incoming Shopping Agent tells the stationary
Business Agent what it wants to find or buy, and the
Business Agent looks up products that match with
the Shopping Agent’s desires. At the same time, it
talks to the Promotion Agent to find related
promotions and ads in the Advertisement Server.
4.5.1 The Advertisement Server
Whenever a Shopping Agent calls for a search, the
Promotion Agent tries to find an advertisement that
best interests the user. The Advertisement Server is
itself a database that stores the numerous
advertisements and promotions that the company is
running. The proposed matching algorithm is a
simple text matching algorithm. For example, if the
user is looking for Radiohead CDs, the algorithm
searches through the database looking for the
keywords “Radiohead” and “CD” and see if there
are any promotions regarding Radiohead CDs.
In the future, a product recommendation system,
akin to that of Amazon.com’s can be implemented.
This system attempts to find products that the user is
also interested in, for example, showing her other
CDs that other users interested in Radiohead have
bought.
5 SECURITY FEATURES
Anytime a mobile agent platform is mentioned, it is
hard to escape the need to address its security
features. The security issues are usually concerned
with protecting the agent platform from malicious
agents and protecting the agents from malicious
platforms. Traditionally, protecting the agent
platform from malicious agents can be accomplished
through the design and implementation of a security
policy for the platform that states what agents,
ICEIS 2004 - SOFTWARE AGENTS AND INTERNET COMPUTING
428
running the platform, can and cannot do. However,
protecting the agents from a malicious platform is a
harder problem for which there is no obvious
solution.
Such security issues arise when foreign agents
are allowed to run on foreign agent platforms. The
Havana architecture, however, has the special
characteristic of being placed in a computing
environment in which all the participants are locked
in business contracts, and are thus mutually trusting
parties. It does not make business sense for a
Business Server to sabotage an incoming Shopping
Agent, which represents a potential customer. On the
flip side, it will not be possible for a malicious
shopper to send out a malicious agent on to the
Business Server to wreck havoc, because agents are
all created and sent from the Gateway, and only
agents sent and certified to be born within the
Gateway will be accepted and run on the Business
Servers.
In the Havana platform, only business
participants are allowed to create agents that provide
value-added services to their customers. Such agents
will need to be certified and registered with the
Gateway in order for customers to dispatch them and
business platforms to welcome them and let them
run.
Essentially, with the business partnership, we
have defined away some very difficult security
issues associated with mobile agents.
6 CONCLUSION AND FUTURE
WORK
In this paper, we have discussed some of the
problems faced by online comparison shoppers,
followed by a mobile agent-based solution through
the Havana mobile agent platform for e-commerce
and m-commerce. The Havana platform can be
seamlessly integrated within the existing Web
infrastructure where all Website participants are
locked in business contracts and thus mutually
trusting parties. Such business partnerships allow
participants to offer value-added service to their
customers. The important characteristic of the
Havana platform, its business model, means that the
security issues of mobile agents are no longer a
major concern.
The Havana platform is a work in progress.
Therefore, we will be adding more features to it as
time goes on. In particular, we would like to add a
stronger suite of communication primitives which
will allow agents to collaborate in working on tasks.
The Mobile agent paradigm could institute a
revolutionary shift of human-computer interaction
that allows for exciting new ways for people to work
with computers.
ACKNOWLEDGEMENT
This research is supported in part by the Natural
Sciences and Engineering Research Council of
Canada (NSERC) Discovery Grant No. 045635.
REFERENCES
Gosling, J., Joy, B. and Steele, G. L., 1996. The Java
Language Specification: The Java Series. Addison-
Wesley, Reading, MA, USA.
Jagoe, A., 2002. Mobile Location Services: The Definitive
Guide. Prentice Hall.
Kamba, T., Elson, S.A., Harpold, T., Stamer, T. and
Sukaviriya, P., 1996. Using small screen space more
efficiently. In Proc. of the SIGCHI conference on
Human factors in computing systems, Vancouver,
Canada.
Kolmel, B. and Alexakis, S. Location Based Advertising.
Available at http://www.e-
lba.com/YellowMap_Location%20Based%20Advertisi
ng%20mBusiness%20Conference%202002.pdf
Lange, D.B. and Oshima, M., 1998. Programming and
Deploying Java Mobile Agents with Aglets, Addison
Wesley Longman, Reading, Mass.
Ranganathan, A. and Campbell, R. H. 2002. Advertising
in a Pervasive Computing Environment. In Proc. of
the second international workshop on Mobile
commerce, Georgia, USA.
Sun Microsystems, Inc., 2002. The MIDP 2.0 Final
Specification. Available at
http://java.sun.com/products/midp/
Sun Microsystems, Inc., 1999. Java Object Serialization
Specification. Available at
http://java.sun.com/products/jdk/1.1/docs/guide/seriali
zation/spec/serialTOC.doc.html
W3C, Web Services Architecture. Available at
http://www.w3.org/TR/ws-arch/
A WEB-ENABLED MOBILE AGENT PLATFORM FOR E-COMMERCE AND M-COMMERCE: "The Havana
Platform"
429