A Disruption-Tolerant Model for Building a Mobile Application Using Web Service

,


INTRODUCTION
Mobile devices have been supporting most types of communication and various types of media formats. In fact, they have become handheld-based devices; equipped with display screen, compact keyboard, multimedia facilities, personal organizer as well as wireless interface for accessing global data network (Andersson et al., 2006). This technology offers a new way in retrieving information and communication that enhance the efficiency of business process (Canfora et al., 2006). Mobile application is normally included in a larger system (Heikkinen and Still, 2008). The application is distributed and commonly involves various components from multiple platforms. Therefore, the challenge in mobile application development is to integrate separate application systems in organization, particularly in retrieving information from different databases. An efficient information retrieval through a hub can help to fulfill information requirement in the development of efficient mobile application. Other challenges of mobile computing are hardware and network communication constraint. Hardware constraint includes processing power, storage and small user interface. Examples of network communication constraints are data transmission rate and response time. Further, unstable computing environment such as disrupted network or low bandwidth can affect the system availability. According to Van de Kar et al. (2006), the development of services in an unstable environment is more crucial than that of stable environment.
Obstacles in mobile computing can be addressed by developing mobile application that is based on a Smart Client design and Web service. This approach can provide system availability that allows continuous and fast access even in an unstable environment. A Smart Client has its own storage, data and processing capabilities that reduce its dependency on telecommunication network. In a stable environment, Web service is used for network-based access, which involved data communication based on textual format. This advantage enables speedy data access from network system. In this study, we proposed a model that illustrates how data source can be accessed remotely and how to overcome constraint due to dysfunctional telecommunication. The rest of the study is organized as follows: theoretical framework, proposed model, prototype development and testing, discussion and conclusion.
Theoretical background: The system development of mobile device is more difficult than that of fixed cable. Mobile systems have more complex design, particularly in terms of the capability of mobile device, including low processing power, device variety and limited development environment (Thompson et al., 2009). According to Mallick (2003), mobile application is normally designed in a multi-layer architecture that consists of a client layer, business logic and data. Two commonly used designs for mobile application are the Smart Client and wireless Internet.
In a wireless Internet model, the business layer and data layer of an application are located at the server site. This model is suitable for application that depend solely on the server and run in a stable network environment. However, if the connection is poor or huge local processing is needed, the Smart Client model is preferable. Wireless Internet application uses Internet browser to retrieve data directly from the data source at the server site. The Smart Client refers to a model where the logical layer and data layer of an application reside at the client device. Device based application has advantages in term of processing power and storage as it can avoid full dependency on server and telecommunication connection. The model also makes use of the advantages of server based application.
In a stable environment, wireless Internet is used in order to retrieve and synchronize data with their source. A Smart Client application does not use Internet browser; instead, it uses the application software itself. It is regarded as smart because it has its own processing power and storage mechanism as well as business logic. However, the data source remains at the server. It synchronizes the data source with the local storage whenever there is a line connection. The Smart Client design is illustrated in Fig. 1.
Apart from the Smart client and wireless Internet concepts, Web service is also an important concept in mobile data processing where it provides service for data retrieval through the Internet. Web service acts as a global socket and plug that are based on XML, easy and flexible as HTML and is independent of any technology platform (Isaías and Macedo, 2007). Thus, process provided by Web service can be accessed anywhere using the Internet or local network.

MATERIALS AND METHODS
The proposed disruption-tolerant model for mobile application: The proposed model is based on the combination of the Smart Client design and wireless Internet. Disruption-tolerant means a mobile application can function continuously even under an unstable environment. The model can be used as a guideline for developing reliable mobile application.
The aim of the model is to reduce the dependency of mobile application on network telecommunication between client and server. We make use of the advantages of device based application under unstable environment. Figure 2 illustrates the Disruption-Tolerant Mobile Application (DTMA) Model. This model consists of three main components: Smart Client, Synchronization Server and Data source. Table 1 compares the criteria of Smart Client Application and wireless Internet with the proposed DTMA model.  Physically, the Smart Client is a mobile device that has a processing power, storage, platform software and the application itself. The application has its own business logic. The mobile device can be a PDA phone, a smart phone or a handheld computer. Whilst the platform software handle communication infrastructure between synchronization server such as .NET and J2ME, the Smart Client connects to the Internet through GPRS, 3G or WiFi network. Mobile device storage is used as a local data resource. The mobile application has an interface and a business logic that determines whether the data need to be retrieved from a local storage or data source through a synchronization channel. This can ensure the continuity of application operation even under an unstable environment.
The synchronization server is a computer server installed with a Web server and Web service. The server enables the Smart Client to download or upload data through Web service using a HTTP protocol. HTTP is an important protocol because it can be used to send documents in most network systems through a proxy server and a firewall. The platform software such as .Net Framework and JAVA are required in order to control Web service communication infrastructure between the Smart Client and data source. Web service acts as a mediator, where it carries out data synchronization function between the mobile local storage and data source. Data synchronization process is performed when there is a request or update from or to the data source from the Smart Client. It has no user interface. It only provides services or functionality in the form of Remote Procedure Call method which can be triggered by the Smart Client. Business logic at the server side determines which synchronization functionality will be executed; either to retrieve and display, to update, or to select the respective database. Web service can also integrate data from various database locations using suitable retrieval mechanism such as ODBC, OLEDB and Oracle Data Access. The mechanism is selected based on the database types.
Data source can be accessed from different types of centralized database. In a distributed application system, data source consists of more than one database of various types such as Oracle, Microsoft SQL and MySQL. Smart client which is also the client of the Web service, can retrieve, download and upload data from and to the data source through a hub, that is, synchronization server and Web service.
The design of wireless Internet application and the Smart Client has unique advantage in fulfilling user requirement (Table 1). The Smart Client has storage, business logic and processing power that allow it to function even in a disrupted telecommunication network. In wireless Internet design, data are more up to date and resides in server computer. However, it requires a stable connection to a telecommunication line. Thus, the proposed DTMA design, which combines the advantages of the two former designs, can provide a disruption tolerant mobile application.
The case study: In this research, we conduct a case study to validate the DTMA model and demonstrate its effectiveness. The case is about the management process of Educational Service Officers interview at the Malaysian Educational Service Commissioner (MESC).
It is a small part of the main process of an Educational Officer Recruitment System in MESC.
The recruitment process of Educational Service Officer begins with the distribution of a vacancy circular, followed by online application and submission. A complete application is processed and screened for an interview call. The Interview Board Chair holds interview and evaluate candidates at specified interview centers. Marks are given according to the candidate performance and recorded in a form, indicating whether the candidate passes or fails the interview. Interview results that are sent to the MESC are stored in the Recruitment System before an offer letter is sent out to the successful candidate.
Current situation and solution of the interview process: Currently, the MESC already has a computer application to support the interview process. The system provides the following facilities: • On-line data entry related to application • Update of application, recruitment and service information • Online query using identity card number, name or reference number • Generation of report and letters pertinent to recruitment and services The computer server that was responsible for all application at MESC run under the Linux operating system. The database Oracle 10G was used to support the main application and it was designed as a distributed database. At the user site, they used PC Pentium IV with the Windows XP operating system. MESC local area network is based on TCPIP protocol and Ethernet. It is connected to a WAN/ Internet through a gateway installed with a firewall. Software used at MESC are listed in Table 2. Problems in implementing the interview process include: • Long turnaround time for interview results submission. More than 200 candidates are interviewed in distributed locations across the country over a month period. Results are only submitted after all interview sessions are completed and when the assigned staff is back on duty at the head quarter. Results submission takes time, around a week or two, particularly for remote locations • Data entry for interview results was time consuming and error prone. Interview results need to be updated in the system database before successful candidate report is approved. The report needs to be presented in a meeting that runs fortnightly • Inefficient interview schedule. The replacement procedure for unavailable staff is not arranged properly, resulting in short notice and unmanageable arrangement for the replacement staff The commission attempted to solve the timeconsuming data submission by using mobile device. The interview board received PDA phone (DOPOD Pro838), equipped with cellular line with unlimited Internet access and the Microsoft Windows 6.0 operating system with Internet Explorer micro browser. The PDA phone facility enables the interview board to access the desktop version of current Recruitment system either through 3G mobile Internet or GPRS according to coverage area provided by an ISP. With this accessibility, the commission expected the interview board to access and update interview information online from any interview location and subsequently resolved the high turnaround interview submission time, which was the main problem in the interview process.
However, the effort faced difficulties and lead to an operational failure. A number of contributing factors to the failure have been identified as follows: • The capacity of bandwidth network of mobile communication was low and discontinuous. The 3G communication coverage was limited to certain interview locations only, resulting in extremely slow response or even dysfunctional interview application • The use of client server based application which placed all applications at the server side required wide capacity of bandwidth to operate • The small PDA screen was not able to display a complete and larger Interview application interface. The Interview board members have to scroll all sides to view the hidden interface part, causing difficult and time consuming navigation and data entry • Due to critical information requirement and time duration for the interview process, the board members could not tolerate with any disruptions to the Interview system, leading to the system operational failure

Disruption-Tolerant Mobile Application (DTMA) solution:
Based on the aforementioned problems in using the mobile interview system and the need for mobility work, a mobile application solution based on the DTMA model was seen appropriate. In general, the DTMA based application is disruption tolerant and allow the application to function and data to be assessed, even it is disconnected from the telecommunication network by using the Smart Client and server concept, where data are provided by the mobile database device itself. In a good network communication condition, application based on direct access to data source is used. We proposed three level of business process: namely before, during and after interview. Before interview, data are accessed online from central database over a stable network. During interview, access to candidate information is made from a mobile storage, independent of a telecommunication connection. Candidate data need to be downloaded prior to interview session. Data request and update to interview results are performed on the storage of the mobile device itself to ensure a disruption tolerant and functional mobile system, even at an interview location with no telecommunication line coverage. Interview results are sent and synchronized with the central database through online synchronization. In short, the mobile application provides functions to access interview schedule, details of interview candidate, uploads candidate details to mobile device and submits interview results through online access.
We choose to utilize PDA cell phone (DOPOD 838Pro) for the interview purposes for its mobile features and various functionalities that resemble those of desktop, including Windows and keyboard. The PDA phone also has communication facility including mobile Internet that enables online and wireless submission of interview results. The mobile DTMA application is based on data communication and wireless Internet. In this design, the XML Web service acts as a mediator between the Smart Client (Dopod 838Pro) and commissioner central database as a data synchronization server. The Smart Client is equipped with a mobile SQL Server Compact database. The XML data format Web service, in textual form, allows the use of a smaller bandwidth through HTTP protocol and wireless Internet that can increase access speed through cellular digital communication facility which is smaller than that of a fixed line or a LAN. The XML data format is based on open source standard. The XML Web service allows data to be accessed from various platforms of PDA cell phone. DTMA utilized the XML Web service as a hub to access data from multiple databases. Web service enables access to the central database through an entrance, the Web server.
System architecture: The Interview System architecture is based on the DTMA model, depicted in Fig. 3. The main components of the architecture are mobile device, Web server, database server and mobile Internet. The mobile device is regarded as a smart client as it has components that enable it to operate on its own without depending on the server computer as well as it is disruption tolerant. Essential features of Dopod 838Pro that enables it to function as a Smart Client include: • Own processor, similar to that of personal computer • Mobile database-MS SQL compact version as well as extra storage in memory card form for larger data storage • Application-mobile interview application installed on the device has business logic that can determines the location of access data, either from the mobile database in offline mode, or commissioner database in online or real time mode. The application also determine how data are displayed and stored through interfaces that were built according to the cell phone display screen • WSDL proxy-part of the Web service client and a class that refer to the Web service in the server computer • Web service client-component that enables communication with the Web service in the server computer for accessing and submitting data from and to the data source using HTML, SOAP and XML through the Internet broadband. We installed the compact version of the .Net Framework for the Web service.
We installed the Microsoft IIS as the Web server in the application. We also installed .Net Framework 3.5 in the Web server which acted as the Web service and data synchronization to the Web service client. Proxy Stub is the mediator code for communication between WSDL proxies in the Web service. The Web service application and the Web service client send messages through the TCP/IP network, similar to the mobile Internet via HTTP protocol. Messages are formatted in standard XML format, understood by both application sides. The messages will subsequently be packaged using the SOAP protocol as an envelope for Internet submission. Application is made of codes that were built and installed as part of Web service component in method form. A method is also a business logic that can determines the type of functional or processing that need to be implemented. The database server is a computer server that contains the commissioner central database. The Interview System used the Oracle 10G.
Prototype development: A prototype was developed using an integrated development environment, namely Microsoft Visual Studio 2008 as the main development tool as it provides a comprehensive tool set to develop a DTMA mobile application using XML Web service. We used Visual Basic, .Net Framework and .Net Compact Framework for coding purposes. Visual Studio provides various options for mobile application programming, including a number of emulators for application testing. We used emulator, Windows Mobile based device, web service based on Microsoft IIS and Windows XP operating system. The mobile application has two main parts: an offline and an online access modules. The offline module has two sub modules: candidate information and interview results, while the online module consists of four sub modules: interview schedule, candidate data transfer to PDA, candidate status and candidate data synchronization. Examples of system interface, namely, interview marks and data transfer from the central database to mobile database are illustrated in Fig. 4 and 5, respectively.    System evaluation: We performed unit, integration and system testing. We also evaluated the MIIS in a setting similar to that of a real business environment, involving five users. The evaluation results show positive user acceptance, indicating that the system can be implemented in the actual environment, either in a stable or an unstable environment (See an excerpt of the evaluation in Table 3). We improved the system based on a number of minor comments from the users.

DISCUSSION
We proposed a disruption-tolerant mobile application (DTMA), which can be used as a guide for developing mobile application that is dynamic, effective, disruption-tolerant and can ensure system availability. We subsequently developed a prototype for an interview system based on the proposed DTMA model which was tested and proved to be disruptiontolerant. The Interview system can save time, operational cost and improve the business process in terms of data integrity and mobile access and high availability.
The system has a number of limitations that can be enhanced in the future, including: (1) limited mobile device storage, which can lead to system failure if it is full; (2) limited battery power that last for only 3-4 hours and (3) long waiting time to display error in accessing telecommunication network. Future expansion of the system can be made in a number of areas. The data communication can be expanded to cover private data access by using technology such as cryptographic for security purposes. In order to ensure smooth operation, a mechanism for ensuring or testing good telecommunication line connection can be integrated in the system.

CONCLUSION
Based on the results, we conclude that the DTMA model can be a solution for providing a disruptiontolerant mobile device that can ensure continuous system availability as it has a processing power, a local storage that can store data and an application logic that can determines where data should be accessed. The application logic can determine data access to be made to mobile device storage in an unstable environment whilst data are accessed through a network in a stable environment. The DTMA model can be implemented in other settings that are meant for mobile access to corporate data, allowing user to access data remotely at anytime. For example, in a law enforcement exercise, a traffic police officer can monitor a traffic offender easily and speedily in real time.
Apart from Java programming language in J2ME envirnment, the combination of Visual Basic and .Net (.Net Framework) in an integrated development environment of Microsoft Visual Studio can become an important tool for mobile system development as it provides an interesting and interactive environment.