This is an HTML rendering of a working paper draft that led to a publication. The publication should always be cited in preference to this draft using the following reference:
  • Angeliki Tsilira, Adamantia Pateli, Erast Athanasiadis, and Diomidis Spinellis. Targeted messages in indoor mobile environment: A software-oriented approach. In M. H. Hamza, editor, Proceedings of the IASTED International Conference on Software Engineering, pages 734–739. IASTED, ACTA Press, February 2004. Green Open Access

Citation(s): 2 (selected).

This document is also available in PDF format.

The document's metadata is available in BibTeX format.

Find the publication on Google Scholar

This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Diomidis Spinellis Publications



Angeliki Tsilira, Adamantia Pateli, Erast Athanasiadis, Diomidis Spinellis,,,


ELTRUN: The E-Business Center

Department of Management of Science and Technology

Athens University of Economics and Business
47A Evelpidon Street, 11362, Athens, Greece
Tel: +30-210 8203663, Fax: +30-210 8203664


Considering the advances of wireless, mobile and positioning technologies and the high requirement of the mobile marketing world for reaching as many customers as possible in a personalized way, this paper presents a wireless technology solution for sending targeted advertising or information messages on mobile devices. The research and development work presented in this paper has been conducted as part of a European-funded project named mEXPRESS (mobile in-EXhibition PRovision of Electronic Support Services) which aims at developing a Mobile Exhibition Guide providing location based services. In this context, we have built a Targeted Messenger subsystem enabling on-site promotion of exhibits via targeted spots as well as targeted announcements to user groups based on their profile, preferences and location in exhibition halls. This paper discusses the Targeted Messenger component’s architecture and design specification, with the aid of UML tools, as well as its implementation, based on J2EE multi-tier implementation platform.


Key Words:  mobile advertising, positioning services, targeted messages


1. Introduction

     In the wireless communications industry, one of the main issues raised is how to effectively target the mobile consumer market (DMA). Software companies move on to identify opportunities and requirements for mobile advertising, while marketers try to determine how to choose and implement the best options and services to meet their needs. The main goal of both groups includes the development of strategies for delivering wireless content and services that appeal to mobile customers (Bayne, 2002).

     The ultimate goal of the marketing world is dual: a) reach anyone at anytime and anyplace, b) reach customers in a personalised way. The evolution of wireless and mobile networks as well as the advances in positioning systems for both outdoor and indoor environments has raised expectations for fulfilling this goal. On the one hand, advances in wireless technology and mobile networks and devices have fulfilled the need for real-time information and for communication anytime. Through mobile devices, business entities are able to reach their customers, and provide them with their content or services, anywhere and anytime. On the other hand, mobile services, compared to Internet services, provide many more possibilities for tailoring information to the individual profile of user that possesses a mobile device (Siau and Shen, 2003). The development of advanced positioning systems, based over network-based or handset-based technologies (Giaglis et al., 2002), has enabled tailoring information based on user’s location. The knowledge of user’s physical location at a particular moment constitutes a rather significant parameter for personalizing mobile content and services. User’s profile and location can be combined to filter information and tailor services to individual user needs.

     Taking into consideration the existing trends, described above, this paper addresses the need for an application that enables business users of an organization to compose and deliver targeted messages (alerts, advertisements, offers, announcements) to their current (or potential) customers of specific profile, preferences and location.

     The main goal of our research work has been the design and implementation of a functional component, which allows the composition, targeting, and delivery of messages (statements, news, offers, advertisements) to certain user groups in a closed environment of interaction (e.g. an exhibition or museum). The targeting mechanism of message’s recipients is implemented via a filter that matches the requirements of the sender with the profile and the needs of individual users or user groups

The developed system is called “Targeted Messenger” and constitutes part of the mEXPRESS overall system (mobile in Exhibition Provision of Electronic Support Services). Targeted Messenger provides exhibitors with the ability of on-site promotions of exhibits through targeted spots and organizers with enhanced broadcasting abilities enabling contact of a selected set of visitors according to their location and/or other characteristics.

     The contributions of this paper are twofold: a targeting mechanism implemented based on a series of demographic, behavioural and location data, and an architectural design that includes targeted messenger as a separate component. On the first front, our application combines the location data acquired from the mobile clients with data on their profiles and behaviour during the exhibition running to dynamically target sent messages. On the second front, the design we followed decouples in a significant, though unfortunately not absolute degree, the functionality of targeted messaging from the rest of the system.      Architecture specifications and design specifications of Targeted Messenger described with the aid of UML are discussed in Section 2. Section 3 discusses the most important implementation issues. Reference to related work in research and commercial world is made in Section 4. The last section concludes with discussion of the major contribution made and insight for further work.


2. Architecture and Design of the System

2.1 mEXPRESS Context

     mEXPRESS (mobile in-EXhibition PRovision of Electronic Support Services) (mEXPRESS D1.1, D2.1, D2.2) is a European-funded project that aims to exploit the technological opportunities arising from evolution in the areas of wireless networks and indoor positioning technologies, such as WLAN and Indoor-GPS (Mathes et al., 2002) in order to support and facilitate the professional exhibition industry in a context-aware manner. The project has developed a mediation platform, namely a Mobile Exhibition Guide, oriented to exhibition shows and events, aiming at: a) enhancing visitors experience in terms of interaction and functionality in an information-rich environment such as an exhibition show, b) improving business communications and promotions within the exhibition and extending promotional effectiveness during and after the exhibition, and c) assisting and supporting exhibition management and operations by offering real-time location information.

     Based on a number of user (visitors, exhibitors, and organizers alike) behavioural requirements captured and analysed at the early phase of the project (Fouskas et al., 2002), the Mobile Exhibition Guide is designed to provide a list of services for each user group. The most important services for visitor include navigation map, routing advice, bookmarking facilities, and catalogue searching. Exhibitors receive value through the use of targeted messages service, statistical reports, and access to questionnaires filled in by visitors. Finally, services for organisers’ benefit include online registration facilities, receiving real-time messages by exhibitors for any problem raised, sending targeted messages to visitors, receiving results of statistical analysis made and uploading questionnaires for conducting surveys. More information on provided services, physical architecture and technology framework can be found in mEXPRESS site: The necessary functionality for the provision of the above services is implemented through the following subsystems: Parameters (Form) Manager, Visitor Manager, Questionnaire Manager, Group Manager, Exhibitor Manager, Catalogue Manager, Bookmarking Manager, Organiser Manager, Virtual Business Card Manager, Communication Engine, Analysis and Reporting Tool, Visitor Behaviour Manager, Authenticator, Navigator and Router, Map Manager, Positioning, and Targeting Messenger.


2.2 Description of Targeted Messenger

     The main business entities of the system are Organizer and Exhibitor. In the mEXPRESS system, targeted messages are defined as the messages that the mEXPRESS business actors can send to their customers (visitors), based on a set of targeting parameters including their location and profile. The profile is defined during the creation of the message. The delivery of the message is made through certain delivery parameters, which are also defined during the creation of the message. In current implementation, the messages are by default classified into two categories (draft and sent) for the sender of the message. Further categorization is possible by the creation of new folders. Users are able to view and delete the messages of all categories, or move the messages to any of the new folders. Draft messages can be updated. Targeted Messenger provides the ability to create new folders and delete previously created folders. In summary, both exhibitor and organizer using the appropriate web based user interface can execute the following tasks: 1) send targeted messages to visitors, 2) manage sent messages (move to folder, delete, browse in folder, view/update), 3) manage draft messages (move to folder, delete, browse, view/update), and 4) manage folders of messages (add, delete folder). Use case diagrams, with the aid of UML design tool (Booch, 1997; Booch et al., 1998 Larman, 2002), were created to give in a more clearway the main interactions of business actors taking place within the Targeted Messenger.

     The next paragraph describes in detail the most important use case of this functional subsystem, which is named “Composition of a targeted message”.



2.3 Composition of a Targeted Message

     The mEXPRESS business actors, exhibitor and organiser, can either create a new message or use as template, and thus update, an already sent or draft message, located in Sent Messages or Draft Messages Folder respectively. For the composition and delivery of a message, communication with other components is needed. Description of the use case “Create New Message” follows.

Figure1. Phase (a) of Message Composition

1.      The actor (Exhibitor or Organizer) selects “Create new messages” option from the services menu.

  1. (a) In the displayed form, the actor has to fill in the subject and body fields and then select ‘Save As Sent’ option (Figure 2).
  2. (b) Following, the actor provides value for the      message’s delivery parameters (Figure 3).


        Figure 2. Phase (b) of Message Composition

A message can be sent once or more times (multiple delivery). In the first case, issuers are asked to define delivery time and day. In the second case, they are asked to opt for either a delivery from time to time for one specific day, or delivery from time to time and from day to day. In the case of a multiple delivery, users have also to define if they wish the message to be received more than one times from the same recipient. The available dates among of which users have to choose the message’s delivery date/s, are obtained through communication with Organizer Manager subsystem.

2.      (c) Finally, users define the targeting parameters a) the recipients’ profile and b) location (Figure 4). Rules such as “Occupation equals Financial Manager” and “age equals 50” and “Bookmarked Product is pmobile2004” construct recipient’s (visitor’s) profile.


Figure 3. Phase  (c)) of Message Composition


Demographic parameters names and values such as occupation, age, income and other are obtained through communication with Parameters Manager component. This data is collected through visitor’s registration. Behavioural parameters names and values such as bookmarked product are obtained through communication with Catalogue Manager subsystem. Behavioural information like products or stands that the visitor has bookmarked is collected through the interaction of the visitor with the system during the exhibition show. The location of the recipient can be defined as either one of the stands of exhibitors, or restaurant, or conference room, or seminar place or any other place defined to the system as location area. Coordinates of the specified location (stand, restaurant, etc.) and proximity value as radius define the exact area in where visitors are located. Location coordinates are obtained through communication with Map Manager subsystem and the names of defined locations are retrieved trough communication with Catalogue Manager.

3.      Users have to select one of the following option: Send, Save As Draft or Cancel.

If they press the Send button, a daemon wakes up ready to perform all the necessary actions for the delivery of the message. 1) The rules of demographic parameters, will construct a select statement, with the help of which all  visitors who satisfy the rules will be retrieved from Visitor Manager subsystem database. 2) Communication with Bookmarking Manager takes place, in order to find out the visitors, who have bookmarked the specified product. 3) Communication with Visitor Behaviour Manager subsystem returns the visitors in the specified location area. The set of message’s recipients constitutes the intersection of visitors returned from steps 3.1,3.2 and 3.3, in other words the visitors with the desired profile found in the defined location. After the set of message’s recipients is defined, collaboration with Communication Engine components follows, and the message is delivered according to the specified delivery instructions. In case the delivery is multiple each one of steps 3.1, 3.2 and 3.3 will be performed once or more times.


3. Implementation Issues

     The implementation of mEXPRESS system and consequently the implementation of Targeted Messenger are based on J2EE platform. The multi-tier architecture, that J2EE offers proved to be very suitable to the distributed character of mEXPRESS system. This section includes discussion on J2EE architecture as it was implemented on mEXPRESS system, reference on patterns used, and discussion on Targeted Messenger implementation.


3.1 J2EE Architecture as implemented on mEXPRESS system

     The implementation of Targeted Messenger follows the J2EE Architecture as it was implemented in mEXPRESS system and illustrated in Figure 5. In the context of J2EE (Flanagan et al, 2002), interface tier (client tier and web tier), business logic tier (business tier) and persistent storage tier (data tier) are used as virtual distinct tiers. These distinct tiers are apparent inside of each one of the mEXPRESS subsystems. What its one of these tiers contains, as far as Targeted Messenger is regarded, is discussed on paragraph 3.3.

     The enterprise application consists of EJBs, Servlets and JSPs. J2EE is characterized by Enterprise Java Beans (EJBs). EJBs fall into two very distinct categories session beans (stateless or stateful) and entity beans (EJBs), (Roman et al, 2001), (Haefel, 2002). Moreover J2EE offers two kinds of data persistence for entity beans, container-managed persistence and bean-managed persistence (Roman et al, 2001). For mEXPRESS system and consequently for Targeted Messenger, container-managed persistence has been selected.

Figure 4. Server Logical Architecture (mEXPRESS D2.1)

3.2 Session Beans as a Facade to Entity Beans

     One of the most useful J2EE patterns (Berry et. al., 2002) used also in Targeted Messenger implementation is the use of session beans as a façade to entity beans. A facade provides a unified interface to a set of interfaces. The use of application-specific session beans to manage the interactions of various entity beans provides a simpler interface to the client by giving the client a central point of entry. The client always interacts with this session bean and is unaware of the existence of the other entity beans in the system In the Targeted Messenger subsystem two facades have been implemented,
TargetedMessagesManagerFacade and  DeliveryStarter.


3.3 Targeted Messenger Implementation

     As mentioned earlier, the Targeted Messenger implementation has been based on a multi-tier architecture. For each tier, it follows a paragraph referred to the tier in relation with Targeted Messenger.

Interface Tier

     In web tier of Targeted Messenger are found JSP pages. Create_New_Message and update_Message java server pages communicate with Organizer Manager, Parameters Manager, Map Manager and Catalogue Manager in order to get all the necessary information for the construction of the form’s targeting section. Create New Message, Update Message, Browse Messages; Manage folders pages and other are the user interface of message’s sender. Visitor as recipient of the message view the message with interface provided by Communication Engine subsystem.

Business Logic Tier

     The business tier includes the session and entity beans. Targeted Messenger is implemented with container-managed persistence. For each of the Entity Bean classes, the container managed persistent fields and the container –managed relationship fields are defined. As container managed persistent fields are defined those which will be also columns in the database table Container-managed relationship fields have the role, the foreign keys have in database and are defined by the same way of thinking. For example on TargetedMessage entity bean, the fields visiTortargetingInfo, locationTargetingInfo, uniqueDeliveryInfo and other exist, which are container-managed relationship fields. From the software engineering approach, the above fields correspond to the VisitorTarget, LocationTarget, UniqueDelivery objects respectively (composition relationship, see Figure 4). However, from the database approach, the same fields constitute foreign keys to the respective records of database tables VisitorTarget, LocationTarget and UniqueDelivery respectively.

Data Tier

     In database and database schema, we can find a table for each of the defined entity beans. The composition relationships defined in logical design and given with the container-managed relationship fields are reflected in database by cascade deletes, which will take place when necessary. For example the deletion of a TargetedMessage object means the deletion of the respective record from Targeted Message table but also the deletion of the related VisitorTarget, LocationTarget and ”delivery” record from the respective tables of the database.


4. Related Work

     Short Messaging Service (SMS), Enhanced Messaging Service (EMS), Multimedia Messaging Service (MMS), and Instant Messaging are some of the ways mobile advertising uses to reach its audience. Mobile phones offer a unique channel that is interactive, direct, targeted, personalized, 24 hours a day, 7 days a week. Marketers in their try to reach consumers effectively have developed products, which support direct marketing services and targeted messages.

      Avesair’s MATCH platform (MATCH) is a quite good example of a solution that takes advantages of mobile technology and it supports SMS, MMS, and WAP as well as technologies for Palm OS, Voice XML, MP3. MATCH (Messaging And Targeting for Carriers and Handsets) could be considered as a decision engine that enables mobile operators to target relevant mobile marketing campaigns based on individual subscriber preferences. From a technical perspective, MATCH is a targeting and decision engine that enables operators to schedule, deliver and track highly specific messages, promotions, and content using any type of wireless medium. Drawing on sets of user-defined rules, the Decision Engine performs an array of key operations to establish and apply that intelligence.

      Despite the obvious similarities that MATCH decision engine share with Targeted Messenger, exist also distinct dissimilarities. MATCH engine provides a matching mechanism of information and recipients based on the subscription profile of each potential recipient, without taking in account more dynamic parameters, as bookmarked product is for the construction of recipient’s profile in Targeted Messenger. While Targeted Messenger creates a list of recipients based on a dynamic profile and location, the MATCH engine takes in account only the mobile subscriber declared profile. Furthermore, Targeted Messenger is oriented to closed environments, and consequently is of much different context of that of MATCH platform. Therefore, a full comparison between the two targeting message solutions is meaningless.Another related application includes the groupSMS platform, developed by FORTHnet S.A, a Greek Internet Service Provider (ISP). The groupSMS platform enables sending short text messages (SMS) towards one or multiple mobile phones around the world. The primary options provided through the groupSMS platform include: a) Address Book for organising names and mobile numbers into groups, b) Sending Messages either to a single mobile number or to a group of recipients included in the address book, c) Sending Mass Messages to recipients not included in the address book for confidential or other reasons, d) Creating and Saving as Template Messages that are used frequently, e) Schedule Messages to be dispatched at some predefined date and time, f) Defining  maximum number of messages to be sent per day/week/month, and g) logging sent messages, so that users can view them at anytime.

      The FORTHnet groupSMS platform bears several functional similarities with the mEXPRESS Targeted Messenger. However, a significant difference lies on the type of targeting possibilities provided by each system. GroupSMS includes a static implementation of a targeting mechanism that requires explicitly defining groups and their included items. The mEXPRESS Targeted Messenger employs a more dynamic targeting mechanism that operates by defining a set of parameters, according to which the grouping of recipients is made every time that the user wishes to send a message. Another quite significant dissimilarity concerns the geographical scope of application. While the FORTHnet GroupSMS platform can be used to send messages to any mobile phone at anytime and anyplace, the mEXPRESS Targeted Messenger is designed and implemented to operate within an indoor environment. 


5.  Limitations and Future Work

     The adoption of J2EE architecture and the multi-tier implementation of the Targeted Messenger sub-system enable easy extension or change of the Targeted Messenger, without causing disturbance to the implementation of the rest system. The current design and implementation makes the produced source code much more portable and reusable. Following, we discuss the most significant challenges raised by current research and development in the field of mobile targeting messages.

      Targeted messages sending, as a service, implemented in the context of mEXPRESS is subject to several constraints. For the moment, it allows only text messaging, although multimedia messaging could be used too, given the design of the system.

      It is noteworthy to mention that the delivery of the message is not implemented by the Targeted Messenger but by Communication Engine, which has responsibility for any communication function within mEXPRESS. Enhancement of Targeted Messenger subsystem could be performed either by extending the current Communication Engine or by incorporating an individual delivery mechanism within Targeted Messenger.

      Targeted Messenger uses other subsystems’ functionality in a very constructive way to offer an advanced service. The tight collaboration with the other subsystems is a significant issue under consideration, since it impairs the system’s modularity and portability.

      Targeted Messenger has been implemented for an indoor environment with exhibition-specific characteristics and requirements. Transfer of the system in other indoor environments, such as galleries, museums, and libraries (Giaglis et al., 2002), and adjustment to the respective requirements constitutes a rather challenging research and development issue.


This work has been performed in the framework of the IST project mEXPRESS (IST -2001-33432), which is funded in part by the European Commission. The authors would like to acknowledge the contributions of their colleagues from Intracom Hellenic Telecommunications and Electronics Industry S.A, L.M. Ericsson A/S, Elisa Communications Corporation, Pouliadis Associates Corporation, Space Systems Finland Ltd., Research Centre of Athens University of Economics and Business, Helsinki University of Technology, The Finnish Fair Corporation, ROTA Ltd.



[1] DMA - Direct Marketing Association (n.d). Retrieved: October 23, 2003 from

[2] Bayne, M.K. (2002) Marketing Without Wires: Targeting Promotions and Advertising to Mobile Device Users, John Wiley & Sons.

[3] Siau,  K., Shen, Z. (2003) Mobile Communications and mobile services, International Journal of Mobile Communications, Vol. 1, Nos. ½, pp. 3-14.

[4] Giaglis, G., Pateli, A., Fouskas, K., Kourouthanassis, P., Tsamakos, A. (2002) On the Potential Use of Mobile Positioning Technologies in Indoor Environments, In the Proceedings of the 15th Bled Electronic Commerce Conference - e- Reality: Constructing the e-Economy, June 17-19, Bled, Slovenia.

[5] mEXPRESS (IST-2001-33432) Consortium (2002). Deliverable D1.1 “Actors Requirements Framework & Realistic Application Scenarios”, [available online from:, last access 10th May 2003]

[6] mEXPRESS (IST-2001-33432) Consortium (2002). Deliverable D2.1 “Overall Architecture Specification”, [available online from:, last accessed 15th October 2003].

[7] mEXPRESS (IST-2001-33432) Consortium (2002). Deliverable D2.2 “Functional & Data Components Specifications & Design”, [available online from:, last accessed 20th October 2003].

[8] Mathes I., Pateli A., Tsamakos, A., Spinellis, D. (2002) Context aware services in an Exhibition Environment- the mEXPRESS approach, In B. Stanford-Smith et al. (ed.), Challenges and Achievements in E-business and E-work: Proceedings of the E-business and E-work Conference, Prague, The Czech Republic, October 16-18, pp. 685-692.

[9] Fouskas K., Pateli A., Spinellis D., Virola H. (2002) Applying Contextual Inquiry for Capturing End-Users Behaviour Requirements for Mobile Exhibition Services, In the Proceedings of the First International Conference on Mobile Business, Athens, Greece, July 8-9 (CD-ROM – Proceedings).

 [10] Booch, G. 1997, Object-Oriented Analysis and Design with Applications, Addison-Wesley Pub Co.

[11] Booch, G., Jacobson, J., Rumbaugh, J., Rumbaugh, J. (1998) The Unified Modelling Language User Guide, Addison-Wesley Pub Co.

[12] Larman, C. (2002) Applying UML and Patterns. An Introduction to Object-Oriented Analysis and Design and the Unified Process, Prentice Hall PTR.

[13] Flanagan, D., Farley, J., Crawford, W. (2002) Java Enterprise in a Nutshell, O’Reilly & Associates.

 [14] EJB - Sun Inc. Entreprise Java Beans (n.d). Retrieved : October 2002 from

[15] Roman, E., Ambler, S., Jewell, T. (2001) Mastering Enterprise JavaBeans, John Wiley & Sons, pp. 3-14.

[16] Monson-Haefel, R. (2001) Enterprise JavaBeans, O'Reilly & Associates.

[17] Berry, A.C., Carnel, J., Juric, B.M., Kunnumpurath, M.M., Nashi, N., Romanosky, S. (2002) J2EE Design Patterns Applied. Real World Development with Pattern Frameworks, Wrox Press Ltd, USA.

[18] MATCH - Avesair Inc., Match technical Product overview (n.d). Retrieved: October 20, 2003 from