Abstract:
This paper presents a case study that focuses to solve the data synchronization issues in the mobile databases. The domain of this text lies between the traditional concepts of streaming to the advanced ad hoc networks in mobile databases. On the road from streaming to ad hoc networks, this paper also takes into account the intermediate concepts such as disconnected computing with wired and wireless synchronization.
Keywords: disconnected computing, wired synchronization, wireless synchronization, synchronization algorithm, ad hoc networks, semi-structured files, mobile databases synchronization, mobile computing generations.
1.0 Introduction
The goal of this research article is to solve the case study that is presented in the following section. The structure of this paper is such that it helps the reader to develop a theoretical concept and then relate it to the real world case study. In other words, it tells that how the current trends and research makes it possible to solve the business processes of the Fleet Manager. Fleet Manager is a Customer Relation Management (CRM). In section 3, a brief introduction to the CRM is given. The basics of data streaming is discussed in section 4. Then came the concept of disconnected mode computing and embedded databases in section 5 and 6 respectively. Synchronization issues, which are the heart of our paper, are discussed in section 7 and 8. These sections give an account of the algorithms and technologies related to synchronization that have evolved over the years. In section 9, we summarize our findings and how they relate to the case we presented. The concluding remarks are given in section 10.
2.0 The Case
Fleet Manager is the collection of some of the modules of a Customer Relation Management. It maps the business process of Micro Innovations & Technology (MIT) Pvt. Ltd. MIT provides solution and services in the following areas since 1994.
- Systems and Network Integration
- Voice and Data Communication
- Turnkey Projects
- Office Automation
- Computerized Maintenance Management
After a deep analysis of the business that is mentioned, several modules come under consideration to be the part of Fleet Manager. Let us have a quick overview to the major ones.
2.1 Asset Management
IT goods imported from the manufacturers are managed in the central repository. Furthermore the goods are of two types i.e. furnished products and the discrete components and parts used in them. For example, CD-ROM lens, notebook RAM, writer head ops, etc.
2.2 Franchise Management
Management of assets and sales of Inter-Pakistan MIT outlets. Distribution of stock to these outlets is also the responsibility of MIT Head Office. Head office keeps track of the running stock at each outlet. Post Sales Receipts are also acknowledged by the outlets to the head office.
2.3 Warranty Claims
This module is related to one of the customer channels. Customers checks in with the faulty products and are entertained at the Customer Service Centre. The product is then forwarded to the service centre for repair or swap.
2.4 Help Desk [Customer Support]
Customer can also query on call. The calls are logged by an operator; and are fetched by the Field Technicians. Field Technicians went out to fix it and submit a post-service status.
2.5 Field Technicians’ Tracking
When technicians are out for the service the administrator or the concerned authority must have the information that what complains are they handling and where. Authorities might be interested in the current complain status.
2.6 Executive Evaluation
Here comes the destination of the entire CRM. It will provide executive summaries of the business a customer provides to the company, a Field Technician’s performance during the complaints. Executive summaries will also provide help for decision makers to introduce and implement necessary alterations in their policies to improve business.


Figure 1: Work order Processing Flowchart [11]
Fleet Manager is a conventional web based solution that facilitates its users to interact using the mobile devices as well. Despite of being a complete CRM, it has some limitations also. Working on mobile devices is a bit expensive if we consider it in terms of storage memory. After several business transactions or at the day end the device must have to synchronize its activities to the central repository; this requires a device to device physical connectivity. So the concept of complete mobility has been skipped.
Suppose that a customer is having some problem in the equipment provided by MIT. He lodges a complaint. The complaint goes to the MIT database as a work order (WO) and the status of the complaint/WO is saved as pending. Field Technician (FT) has a PDA. We call this first FT as FT1. At the start of the day, FT1 connects to the central database through its hand held device and fetches a WO whose status is pending. Once the WO is fetched by an FT, its status changes to “fetched” and it is locked for other FTs, since one of the FT’s is working on it. Here we are assuming that the FTs have some pre assigned physical equipment with them. After fetching the work order WO1, FT1 goes to the site where the WO1 has to be resolved. Once the WO is resolved, FT1 connects to the central database again and changes the status of WO1 to “resolved”. If WO1 is not resolved due to some problem, FT1 sends it back to the database as pending. After that the WO is unlocked. After completing the job, FT1 fetches another WO and the whole process starts once again. The central database collects all the updates sent by the FTs with a timestamp and synchronizes them at the end of the day. The whole scenario can be summarized in figure 1.
3.0 What is a CRM?
First of all we should know what exactly a CRM is. “CRM is a corporate philosophy because it is a fundamental approach to doing business. That approach is to be customer-focused and customer-driven, running all aspects of your business to satisfy your customers by addressing their requirements for products and by providing high-quality, responsive service. The philosophy extends to support customer managed relationships (CMR) where the customer is in the driver’s seat, determining the rules of the relationship. Companies that adopt this customer-focused and customer-driven approach are, thus, customer-centric”. [10]

|

|
|
Figure 2: Graphical summary of Customer Centric CRM
Understanding from [10]
|
4.0 Real Time Data Streaming
Mobile devices were introduced far earlier than the disconnected architecture. The mobile applications of that time use the streaming technique to send data to the server. Data has been streamed to the central server in its actual form, without any pre-processing. Then it will be manipulated at the server side and stored permanently. The raw data received by the mobile client has been deleted after this permanent storage activity [2].
The concept of real time streaming is relatively old as we have found in our research. Persistent record keeping was unavailable in the early mobile devices, due to the insufficient memory storage. So, as soon as any operation occurs, the raw form of data is submitted to the server using available data carrier. It will then be computed and transformed on the server according to the business logic and will be save permanently. In this technique server is only responsible for the entire business process and maintaining the stable state of the system. Hence, streaming provides low mobility to its users, because in order to maintain the client-server connection, the mobile users must operate within the coverage area for data dumping.
5.0 Disconnected Mode Computation
Advancements in memory technology are the basis of disconnected computation technique. The use of fast RAM and flash storage has made it easy to store and carry large amount of data on the devices. Flash cards require low power for operations and that might be one of the reasons to use them in the handheld devices. [3]
Disconnected computing is usually a highly focused research area in the mobile computing environment. The approach is to transmit data in the form of scheduled episodes. Scheduling makes the data transfer easy by preserving large volumes at a time. Various issues exist adopting this approach, for example a data transaction on any mobile node remains hidden from the outer world till the next synchronization activity. [8]
6.0 Embedded Databases
It is not possible for the mobile users to always remain connected to the central server; this has given the birth to the disconnected computing architecture, but there is another problem ahead. Where to store transactional data during the disconnected time? Is there any mechanism to store data on the mobile device for the time being? The host application that the mobile user is using can perform this task and maintain the data using filing or semi-structured files. The data definition for these files is purely customized and more appropriate standards are available. One host application can only understand and parse its own structured files.
This problem has been resolved with concept of Data Hoarding on the mobile device. Hoardings (Billboards) are meant to display banners, products, announcements, etc for a short period of time. Same meaning holds in the data hoarding on the mobile device, there must be some standardized mechanism to store data on the device for a short time, for example till the next synchronization activity [6]. Introduction of embedded databases has solved this issue by providing the following features [2].
- Full fledge DBMS
- Fuel (Flexible, Ultra-fast, Efficient, Lightweight)
- Resides in appliances, e.g., smart-cards, telephones, personal digital assistants
- Consumes less memory resources
Examples of such embedded databases are Personal Folders or Phonebooks on microchips. There are several vendors providing the data manipulation features resembling to their server DBMS’s. Some market adoptable names are Oracle Lite server, Sybase Ultralite, SQL CE etc. [2]
7.0 Synchronization Algorithm [6]
Another issue that cannot be easily neglected is the data update on server at the end of the day. In disconnected architecture, every mobile user starts with the same data and performs his own set of operation that is invisible to other users. At the end of the data how will the system recognize that whose date is the latest one to be saved in the master record? For this, the following generalized synchronization algorithm has been proposed.

|
|
|
Figure 3: Graphical illustration of Synchronization Algorithm [6]
|
Checkout à Distribution of same data to all mobile users.
Chargeon à Collect data from all mobile users and performs manipulation if needed (pre-processing step for final commit on server.)
Checkin à Updates the master record.
In the light of our case, we can define the three processes as under.
7.1 Checkout
Checking out will assign the workorders to the mobile users, Field Technicians (FT) in our case. Workorder will be marked as Locked, once assigned to any FT. In the meantime, asset and customer information is also updated on the devices.
7.2 Chargeon
FT’s submit the processed data at the day end. In response, the server manipulates and accumulates the asset utilization information and the operation performed on the customers. This is the time when the server will perform necessary actions on resolved and rejected workorders.
7.3 Checkin
Master information of Assets will be updated. Resolved workorders will be updated as “completed” while the rejected ones will be queued up in the Pending list, and are ready to assign to FT’s for the next checkout process.
8.0 Synchronization Techniques
The synchronization techniques are classified into three categories depending upon the maturity levels and fast growing market needs.
8.1 Wired
Interfaces are provided on the servers to connect the mobile devices through a wired medium. The interface might be of any time including USB, parallel or serial ports. As soon as the device is connected to the server, a synchronization application is invoked through a popup and establishes a connection. The data is fetched from the device using the application embedded business logic. Some of the pre-processed steps are also the responsibility of synchronization application. Multiple instances of synchronization application can execute simultaneously, but the number of available ports limits the upper bound on the concurrent connections.
8.2 Wireless
It is the widely adopted synchronization technique. The synchronization application is migrated from the server to a bridging machine that is accessible using public protocols. The mobile users simply call synchronization routines from this new location that helps to download or upload the information from the central server. The checkout, chargeon, and chenkin responsibility is entirely on this bridging server. [6]
Usually the web servers are used for bridging and are accessed through public IP’s. Mobile users may use any data carrier service, be it GPRS, WiFi, CDMA etc. The synchronization business logic is encapsulated in the form of web services. This technique will allow as many concurrent connections as required. Each connection starts with its own session that is isolated from the others (concurrent mobile users).
8.3 Server less
Usually mobile users remain connected wirelessly with the wired networks through the telecommunication service providers, no matter what data transfer technology is used behind, WiFi, CDMA or GPRS. As mobile users are meant for roaming, and these telecommunication service providers do not provide coverage to the entire world, so they may need some technique to get updated [7].
Serverless ad-hoc networks are the solution. Each node in the network plays the role of a router. A mobile host can communicate with any other mobile host even it is out of the range of sender, this can be done due to the routing behavior of the nodes [9]. Furthermore, adopting the Serverless technology will open the doors to some more research areas like ID conflicts on networks, authorization and authentication, and data versioning on peer devices.
9.0 Findings and Evaluation
Going through the track of traditional to the advance technologies in the area of mobile databases and computing, we are able to classify them into generations on the basis of different parameters. This categorization is the key to solve our workorder process case of MIT.
|
|
Gen 1
|
Gen 2
|
Gen 3
|
Gen 4
|
|
Architecture
|
Streaming
|
DC Computing
|
DC Computing
|
Peer 2 Peer
|
|
Technology
|
Data dumping
|
Wired Sync.
|
Wireless Sync.
|
Server less
|
|
Management
|
Only on Servers
|
Flat Filing and Semi-Structured DBs + Servers
|
Embedded DBs+ Global Services + Multiple Servers +
|
Embedded DBs + Mobile Apps
|
|
Resources
|
RAM (can hold only transient data)
|
Flash Memory
|
Memory on Smart Cards
|
WLAN on Smart Cards
|
|
Usage
|
Low Mobility
|
High Mobility
|
High Mobility
|
100% Mobility
|
Table 1: Generations of Mobile Technologies
These generations are the consequence of our study and research of several papers on the mobile databases and synchronization technology. The graph below will help to properly

At a glance, generation 2 and generation 3 fit into our requirement domain. We need the workorders to be dispatched to the FT’s who then process them disconnectedly and synchronize all the activities at the end of the day. The wired and wireless technique is purely dependent upon the market client whether they need any data carrier medium or they just sync the devices by physically connecting them to the servers. In our case, once if the Workorder is assigned to the FT, it will be locked for all others; so the problem of same data availability has also been resolved.
Now take a look to the workorder processing flowchart in figure 1. After assigning the workorders to the FT’s we have two possibilities either the workorder will be resolved or it will be rejected, if it has been resolved, it will be updated on the server. In case of rejection the same workorder will be again queued up into the pending items; and will be assigned to any other FT the next day or at the next scheduled synchronization. Our case deals with the customer centric CRM and following this approach will only give sufferings to the customers. Is there any possibility that other FT will come to know before the end of the day that a particular workorder has been rejected by FT say Mr. X.; and it need to be responded by anyone else? The solution is server less technologies, in which FT’s will remain in contact with each other during their operations and they work in coordination. For achieving this target, the device application is must be designed in such a way that as soon as an FT rejects the workorder, its information will be propagated throughout the mobile user network.
10. Conclusion
Data synchronization from mobile databases to the server is an issue that still persists with the researchers. New technologies have come by to increase mobility for remote users. In our case, mobility was the need of the hour. Since our main purpose is customer facilitation and CRM is there to fulfill this very purpose. Adding mobility would result in an increased customer satisfaction experience, since we can provide the customers faster services. We found that wired and wireless synchronization with embedded databases works well with our requirements. Server less is a relatively new technology and has some issues which need to be addressed. In future, with the maturity of newer technologies like server less, we can further enhance our project to cope up with the upcoming standards.
References
[1] Weider D., Yu Sunita Sharma, 31st Annual International Computer Software and Applications Conference “A Mobile Database Design Methodology for Mobile Software Solutions”
[2] EPFL, U. Grenoble, INRIA-Nancy, INT-Evry, U. Montpellier 2, U. Paris, U. Versailles “Mobile Databases: a Selection of Open Issues and Research Directions”
[3] Anil Nori, “Mobile and Embedded Databases”, SIGMOD’07, June 12–14, 2007, Beijing, China. ACM 978-1-59593-686-8/07/0006.
[4] Gary D. Walborn, Panos K. Chrysanthis “PRO-MOTION: MANAGEMENT OF MOBILE TRANSACTIONS”
[5] Margo I. Seltzer, Michael A. Olson, “Challenges in Embedded Database System Administration”
[6] Mi-Seon Choi, Young-Kuk Kim, Juno Chang, Proceedings of the 2005 International Workshop on Data Engineering Issues in E-Commerce. “Transaction-Centric Split Synchronization Mechanism for Mobile E-Business Applications”
[7] Henry Larkin, 6th IEEE/ACIS International Conference on Computer and Information Science, “Applying Concurrent Versioning to Serverless Mobile Device Synchronisation”
[8] Mariano Cravo Teixeira Neto and Ana Carolina Salgado, “Hoarding and prefetching for mobile databases”
[9] Takahiro Hara, 16th International Workshop on Database and Expert Systems Applications, “Data Replication Issues in Mobile Ad Hoc Networks”
[10] Patricia Seybold Group, “An Executive’s Guide to CRM” How to Evaluate CRM Alternatives by Functionality, Architecture, & Analytics
[11] Technical Documentation, Fleet Manager.