A Mobile Device Software to Improve Construction Sites Communications "MoSIC"

Effective communication among project participants in construction sites is a real dilemma for construction projects productivity. To improve the efficiency of participants in construction projects and have a speedy delivery of these projects, this paper presents the development of a mobile application system to support construction site communication. The developed system is designed to enhance communication between home office employees, field office staff, and mobile users at the construction sites. It has two components: a mobile application and a website. The mobile application component provides users with valuable features such as, receive sites’ instructions, send requests for interpretations and retrieve information about projects. Whereas, the website component allows users, such as, home office employees to track projects’ progress and find projects’ location. The developed system is tested first on emulators and then on Android devices. After that the system was tested on a highway improvement project. Through their mobile phones, site users are able to interact with field office and home office personnel who use the web application to communicate with mobile users. It is expected that this work will contribute to facilitate communication in construction sites, which is much needed in this information


INTRODUCTION
The nature of construction projects present unique communications challenges among project participants. These challenges can be attributed to: (1) The massive amount of information that needs to be transferred and exchanged during the construction phase of projects as it is well known that construction is an information intensive industry [1,2,3]; (2) The spatial dispersion of project teams and construction activities as well as frequent changes of work site locations [2,4]; (3) The fragmented nature of the industry that engage many different stakeholders from the owner, consultants, bankers besides contractors, subcontractors and suppliers which creates gaps in information flow [3, 5, 6 ,7]; (4) The separation between site offices and work sites [1]; (5) The need for timely transfer of information as the construction industry is characterized by rigid deadlines and costly delays [8]; and (6) The increased reliance on subcontractors to perform construction work as it was reported that at least 80% of the activities performed on a typical construction site is subcontracted to specialty contractors which in turn deepen the fragmentation of the industry [6].
In 1990, John Holingworth, the head of IT at Wimpey construction said "The construction industry is as much a manager of information as it is of materials." This statement was part of his contribution to the "Building IT 2000" organized by the Building Centre Trust in 1990. This is now a lot truer with the wide use of internet and computing in all business environments [9]. Effective collaboration and communication among project participants is crucial for successful construction projects [10]. Accurate and reliable information should be exchanged in a timely manner to make informed decisions as well as monitor and control construction projects [11].
Several researchers indicated that ineffective communication practices are one of the serious factors that contribute to the poor performance of the construction industry in terms of low productivity that leads to higher project cost and time overruns [7,8,12,13]. Mohamed and Stewart [8] indicate that cost overruns and delays in construction projects can be attributed to inferior coordination resulted from poor information handling and exchange, inadequate, insufficient, inaccurate, inappropriate, inconsistent, late information or a combination of them all. Meland et al. [14] indicate that empirical research has identified poor communication and information logistics as one of the central determinants of project failure.
There is a need to support communication among project' participants during the construction phase of projects. The objective of this paper is to present the development of a mobile application for construction site communication. The developed system is expected to improve the efficiency of information transfer and exchange in the construction sites. This in turn will help to improve productivity at construction sites and contribute to timely delivery of construction projects. This paper is organized in six sections as follows: after the introduction section, the literature review section below provides a summary of previous research efforts that addressed mobile computing in construction projects. Section three discusses the system's design. The details of the system implementation and testing are described in section four. Section five presents the conclusion and future enhancements of this project.

II. LITERATURE REVIEW
The critical role of information management in the success of construction site administration has motivated construction (IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 7, No. 11, 2016 52 | P a g e www.ijacsa.thesai.org scholars to investigate the opportunities brought by the fast developments in mobile computing to promote effective communications in construction projects. Construction scholars have recognized the promises of mobile computing and how it can improve the efficiency of construction site operations [12,15,16]. Mobile computing came as a perfect match to the construction industry that is characterized for a long time as an industry with portable plant and mobile work force. Mobile workforce and site offices badly need a way to access information systems and exchange updated information to enable timely decisions and efficient documentation of work activities. Mobile computing quickly started to be a major theme in construction management research [1]. Research in this area can be grouped into two major categories: the first one addresses the status and prospects of utilizing mobile technology in the construction industry as well as industry needs and challenges faced [11,15,17]. The second one focuses on reporting the development of mobile computing tools and their implementation at construction sites [4,18].
Atalah and Seymour [11] surveyed the current state of wireless information technology in the construction industry and reported that the level of interest in wireless technology is much higher than the level of use. About 60% of respondents to a web-based survey indicated high interest in mobile applications that can complete daily reports, safety checklists, and quality checklists in the construction sites. Chen and Kamara [1] indicate that although mobile computing in construction is a major research theme and hot research area, most of the reported research in this area focuses on a detailed aspect or single component of a mobile computing technology. Kim et al. [19] presented a location-based construction site management system using a mobile computing communication platform. The system includes a site management module and a construction drawing sharing module. The first module provides the location information of both construction activities and the resources allocated to the activities, while the second module provides an easy access to construction drawing. Venkatraman and Yoong [4] described the development of a mobile facsimile solution called "ClikiFax" that can assist collaborative communications between parties on or away from the construction site, and reported that field testing and evaluation of the tool indicated its usefulness in conveying dynamic changes to site drawings and approvals at remote construction sites. Löfgren [12] presented a case study of utilizing mobile computing by one of the largest construction companies in Sweden to manage construction site operations in a pilot project. The study concluded that wirelessly connected tablet devices on site added new functionality and flexibility to the existing fixed communication infrastructure and information systems. The users of the system experienced better productivity and faster resolution of problems due to better communication between project management and production staff in the construction site.
Jadid and Idress [16] presented an approach for utilizing mobile computing in the construction sites based on wireless LAN network and the use of personal digital assistants (PDAs) in construction site. Kimoto et al. [18] developed a PDA-based mobile computing system for construction managers at construction sites. The system includes two components: the data input program in PDA and the output program in PC. The system provides the capability of accessing checklists and reference data such as specifications and drawings. Beyh and Kagioglou [2] investigated the potential use of IP telephony (Internet Protocol telephony) to facilitate communications at construction sites. The IP telephony can be used to exchange voice, facsimile, and/or voice-messaging applications that are transported via the Internet, rather than the Public Switch Telephone Network (PSTN). The main disadvantage of the proposed IP telephony is totally dependency on local area network (i.e. Wi-Fi internet connectivity). Also, it is not possible to identify the exact geographic location of the given IP address in case of emergencies whereas this is possible using mobile phones or the public switched telephone network system.
While previous research efforts have made considerable advancements to construction site communications, it should be noted that most of the developed mobile computing solutions are based on the availability of wireless local area networks (i.e. Wi-Fi communication) throughout the construction site. This requirement is reported as a communication challenge or barrier as it is difficult to provide and maintain wireless networks considering the nature and environment of construction sites (dust, concrete walls and slabs, huge construction sites, mobile work zones). There is a need for a new application that overcomes the above limitations. The remaining sections will present the development of a mobile application based on 3G communication to support communications at construction sites. The development of the mobile application includes the design of the system and its implementation.

III. SYSTEM DESIGN
The present model utilizes the third generation of mobile telephony (i.e. 3G communication technology) while previous applications are based on wireless local area networks (i.e. Wi-Fi communication). Although both technologies provide wireless internet access services to the users, the major difference is the methods of connection to the internet. Wi-Fi connects to the internet through wireless network, and is characterized by its short range. The range of service depends on the proximity to the router. Currently, Wi-Fi is provided through private networks at homes and offices, or in public spaces like shopping centers, airport. This method has limited application in construction sites, especially mobile work zones which limits its usage. On the other hand, 3G is a type of cellular network and connects to the internet wherever there is mobile phone service. This means its range is a lot wider than a wireless network. As such the present model is developed as a mobile application based on 3G technology. The design of the system includes two major steps: (1) requirement gathering and analysis; and (2) developing the use case diagram. The following subsections provide a brief description of those steps.

A. The Software Requirements Gathering and Analysis
The performed requirement analysis is intended to identify the essential system requirements from a user's point of view.
The performed analysis provides detailed information about the www.ijacsa.thesai.org user's objectives and the needed features of the system. The identified requirements include functional and nonfunctional requirements. Functional requirements describe what the system should do, while non-functional requirements describe how the system works [20]. Appropriate requirement analysis can reduce the effort wasted in upgrading, recoding and retesting the system. Although construction communication is complex, the identification of communication system requirements in construction projects is attainable due to the large number of research publications that addressed the nature of communication in the construction industry [5]. The functional requirements of the construction site communication system include both: (1) web application requirements; and (2) mobile application requirements. Table 1 illustrates the functional requirements for the developed system as well as the actors involved in performing these functions. The nonfunctional requirements for the proposed system consist of: (1) runtime system qualities; and (2) other system qualities. The runtime system qualities include: availability, usability, performance, security, reliability. Examples of other system qualities include: modifiability and portability. Allow the mobile user to register in the MoSIC and start using its features.

Login/Logout All Users
Allow the user to access the MoSIC system by entering his/her usernames and passwords. Each type of users will have a different home page depending on his/her privilege.

Add Projects Home office employee
Allow the home office employee to create new projects.

Modify Projects Field office employee
Allow the field office employee to modify the content of an existing project.

Delete Projects Home office employee
Allow the home office employee to delete the project that has been created before.

Add Reports Mobile User
Allow the mobile user to add reports to the existing projects.

View Projects Home office employee
Allow the home office employee to view a specific project or all projects.

View Projects Location
Home office employee Allow the home office employee to view the physical location of the project.

View Activity Location
Mobile user, Field office employee Allow the mobile user/field office employee to view the physical location of any activity in the project.

Capture Pictures Mobile User
Allow the mobile user to take a picture of project activities and send it to other users.

Send PDF Reports
Mobile User Allow the mobile user to send reports of selected project activities.
Call for meetings Field office employee Allow the field office employee to call mobile user/s for meetings.

Tracking Project Progress
Home office Employee Allow the home office employee to view the progress of the existing projects.

Tracking Activity Progress
Field office Employee Allow the field office employee to view the progress of the existing projects.

Assign Privileges to users
System Administrator Allow the system administrator to assign privileges to all users

B. The Software Use Case Diagram
The use case diagram is a graphical representation of the interactions among the elements of a system. It describes how a user uses a system to accomplish a particular goal. A use case acts as a software modeling technique that defines the features to be implemented and the resolution of any errors that may be encountered. The components of a use case diagram include: (1) the boundary, which defines the system of interest in relation to the world around it; (2) the actors, usually individuals involved with the system according to their roles; (3) the use cases, which are the specific roles played by the actors within and around the system; and (4) the relationships between and among the actors and the use cases. As shown in Figure 1, the present system is designed to support four types of users: (1) Home office employees which include the management staff at the home office. Through the web application, home office employees will be able to communicate with construction site managers at the field offices through the web application, and they will be able to communicate with construction site supervisors in all projects that are using the MoSIC. Home office employee can: (i) view all existing projects; (ii) track progress of any project within the system; (iii) view physical location of any project within the system; (iv) view all communications between construction (2) Field-office employees which include construction site manager, superintendent, and site office personnel. Through the web application, construction site managers will be able to communicate with MoSIC users at the construction site (i.e. supervisory staff and crew managers). When the site manager is logged into the system, he/she can: (i) view all existing activities in the site; (ii) send site instructions; (iii) send short term schedules to construction crews; (iv) send email to a specific supervisory staff at the site; and receive emails/pictures/reports from them; and (v) call for meetings. When the field office employee chooses a specific activity after selecting "View Project Activities", he/she can (a) add/delete/modify activities; (b) track activity progress; (c) view activity physical location; and (d) view all current workers on any selected activity.
(3) Construction site users or mobile users which include supervisors, crew managers, and quantity surveyors: After downloading the mobile application (MoSIC), each site user needs to register in the system in order to create an account in the database for that user. Afterward, mobile users will be able to communicate with field office management staff and access project information. Through their smart phones, mobile site user can: (i) view project activities; (ii) send requests for interpretations or design clarifications; (iii) retrieve project information related to the task under consideration (e.g. construction drawings, specifications, quality control checklists, safety auditing checklists, construction method statements, and materials tracking information); (iv) receive site instructions through the construction site manager; (v) fill and send forms related to performed tasks (e.g. daily job logs, safety incident reports, testing and inspection reports, measured quantities of work, equipment management forms); (vi) capture pictures documenting actual circumstances and send them to field or home offices as a reference to a specific issue; and (vii)) access and update punch-listing. When the mobile user chooses a specific activity after selecting "View Project Activities", he/she can (a) view activity physical location; (b) look at activity scheduled times, and (c) see activity allocated resources.
(4) System administrator who can create new accounts for users, and assign privileges to users. System administrator will be within the home office management staff. Home office employees will have the privileges of creating new projects, deleting projects, and accessing data related to all projects. Field office employee will have the privileges of accessing his/her project and adding/deleting/modifying activities in the project. On the other hand, mobile users will have the privilege of viewing project documents, and uploading documents but they are not allowed to delete documents.

IV. SYSTEM IMPLEMENTATION
The implementation stage is the phase where software developers create the code to have a true application that fulfills all prerequisites pointed out in the past stage. The principal phase of implementation incorporates two major steps. Making a high level design is the first step, where more specific designs are set that fulfill the pre-stated system requirements (i.e. functional and non-functional requirements). Such designs are developed for the use of system's programmers rather than its clients and can be considered as implementation plan. These designs incorporate system architecture, graphical user interface, software components and data storage designs.
Coding is the second step in the system's implementation. The programmers take the software framework, its architecture, and its detailed design; define their programming environment and tools (i.e. editors, compilers and debuggers); then they start writing the code. The following section presents the implementation components of the present system: 1) the system architecture; 2) the website implementation and testing; 3) the mobile application implementation and testing; and 4) the interface between mobile application and the website.

A. The Software Architecture
An architecture design is a plan for how the system will be distributed across the information technology devices, network environment and what hardware and software will be used for each device. As illustrated in Figure 2, the client-server architecture is selected to implement the model. Mobile application with Web based systems usually follow this architecture, with the mobile phone device (the client) performing presentation and only minimal application logic using programming languages such as Android Stack, while the server has the application logic, data access logic and storage. The benefits of client-server architecture are summarized in two points. First of all, it allows for scalability. This means that it is easy to increase or decrease the storage and processing capabilities of the servers. If one server becomes overloaded, you simply add another server so that many servers are used to perform the application logic, data access logic, or data storage. Second, client-server architecture can support many different types of clients and servers, meaning that it is possible to connect mobiles and computers that use different operating systems. In addition, for thin client server architecture, ones that contain a small portion of the application logic, that use the internet standards, it is simple to clearly separate the presentation logic, application logic and data access logic and design each to be somewhat independent. This means that the interface can be changed without affecting the application logic and vice versa. Therefore, the concept of client-server architecture was implemented to be MoSIC's architecture as shown in Figure 3. www.ijacsa.thesai.org The developed system has three layers, which are: (1) presentation layer, (2) application layer; and (3) data access layer. The first layer is the presentation layer. It presents project information, such as construction drawings and methods of construction. It displays forms that to be filled by users, such as daily job log, equipment management, measurements of actual work performed, incident report and inspection results. Also, it allows sending and receiving text report, such as sending request for interpretations and receiving site instructions. In addition, this layer displays projects' location on digital maps. The application layer is where the software and hardware requirements are integrated to meet the application specifications. In this layer, mobile computing infrastructure components such as camera, digital maps, wireless technologies, GPS, internet, touch screen and mobile device are all collaborating within the application. The last layer is the data access layer. It stores projects' information, such as construction schedules, project's technical specifications, material tracking, daily job logs, safety and quality checklists, work progress data, construction site image data. Information modifications are well recorded in this tier.
New recorded information is automatically sent to the database server via a fourth or third-generation wireless standard for mobile devices. According to the above system architecture, the system was developed using Android software stack. It is Java and the new Android Studio, along with the Android Software Development Kit (SDK).

B. Website Implementation and Testing
The MoSIC website was developed over six months and runs on the IIS (Internet Information Server). C Sharp (C#) programming language is used to develop the website. C# is one of ASP languages. ASP.NET stands for Active Server Pages.NET. It is a web application framework which is developed by Microsoft in January 2002 in order to help programmers in creating data-driven websites using the .NET platform. MoSIC website is developed using ASP.NET technology since it has many advantages. Kozyk [21] highlighted few of these advantages "ASP.NET provides better performance by taking advantage of early binding, just-in-time compilation, native optimization, and caching services right out of the box. The source code and HTML are together therefore ASP.NET pages are easy to maintain and write. Also the source code is executed on the server. This provides a lot of power and flexibility to the web pages". The website has main features for the Home Office Employees such as view existing projects, view projects' location and track projects' progress. It provides key interactive features for the system administrator, as well which are creating new accounts and assign privileges to users.
The implementation phase included two months of testing phase. Testing our website is crucial during the development phase and after the website is built. During its development, its pages were previewed periodically to make sure the webpage are working properly and the site presents the features defined in the design phase and fulfill its purpose. To do so, the expected result of each page in the website is listed. After running the website, actual and expected behavior of each page are compared. In case of mismatch, a note is added to state what is problematic and what needs to be fixed. At the end, it is ensured that the website works in significant browsers such as Google Chrome, Internet Explorer , and Firefox.

C. Mobile Devices Application Implementation and Testing
There are several possible implementation techniques for mobile applications. Each one has its advantages and disadvantages. The "native" implementation for MoSIC development is selected. A "native" implementation for mobile applications means writing the application code using the programming language and programmatic interfaces provided by the mobile operating system of a specific type of device. The present mobile application was developed as a native implementation for Android mobile devices. As such, the implementation was written using Java programming language, Eclipse integrated development environment, the Android operating system (Linux) and Application Programming Interfaces (APIs) that Android supplies and supports. The native application implementation is selected because it ensures highest compatibility with the mobile device since the programming language and APIs used are specific to the hardware for which the application is developed. Also, native application can take total benefit of every library, function or service provided by the device. However, the developed mobile application will work only on Android mobile devices. A native Apple iOS application should be completely redeveloped in order to enable the users of Apple mobile devices to use the developed system. Future developments of MoSIC will be developing a MoSIC version that will be more compatible with other types of mobile devices. During the development phase a focus was set on specific set of features that meet the identified system requirements. The application will evolve horizontally through adding more functions to it as the need arises. Figure 4 illustrates the MoSIC main features.
Testing is one of the most essential steps in building mobile applications. Testing gives accurate impression of what users are going to experience when they use the application. It allows correcting errors and application's usage issues before its deployment; therefore, developers will avoid customers' www.ijacsa.thesai.org frustrations later. The MoSIC mobile application part was tested on emulators and then on real mobile devices in order to get the real look and feel of the mobile application. First, MoSIC is tested on computer desktop emulators for Android. This means running the application on the emulators and navigates through all its screens to test them. The android emulator is available in its developer's kit. However, emulators are recommended as first step for testing mobile applications, but they are slower than the real device. In addition, they can't present all application's features. For example, emulators interact with computer mouse not with a finger like on a phone touch screen. Second, the team tested MoSIC on three different Android devices. There are mainly two methods of software testing: Whitebox testing and Black-box testing. White-box testing is a software testing technique that inspects application's code, its algorithms and their efficiency as opposed to its functionalities. Black-box testing is a technique of software testing that tests functions of an application. It verifies what the application does without examining the code or its algorithm. It needs the preparation of test cases for input and expected outputs. Then expected outputs are compared to actual outputs. Any discrepancy between the types of outputs will reveal errors in the application's behavior. Since the native implementation technique is chosen for MoSIC, where the emphasis on developing MoSIC features, black-box testing is utilized for examining system functionalities as illustrated in Figure 5. As an example, Table  2 shows a test case's result after performing black-box testing of MoSIC mobile application login screen.  Table 2. Furthermore, MoSIC is tested in a road improvement project in Abu Dhabi city as shown in Figure 6. Through the developed application, site personnel were able to exchange data between the job site and the main office, which has improved the efficiency of communication between different parties involved in the construction project.

D. The Interface between the Mobile App and the Website
The MoSIC mobile application doesn't connect directly to MoSIC website and its database because each component uses a different operating system. As illustrated in Figure 7, the interface between mobile application and the website is developed according to the following procedures: 1) A web service is developed to facilitate the website connection and operation with the mobile application. Our web service is developed using C# programming language and SQL statement.
2) The web service is residing on a web server and waiting for Android application to send a request to it.
3) The web service formats the request to be compatible with the database attributes and opens the database.
4) The web service provides the query received from the mobile application for the requested data.
5) The web service returns the result to the Android application in a format that it can understand and closes the database.
The testing process for the interface is quite straightforward. To check if the interface between MoSIC mobile application and its website is working properly, first the web server that contains MoSIC website and its database is running. Then, the mobile application calls functions from the mobile application that interact with the website, such as retrieve project information, receive site instructions, and send requests for interpretations. This testing step is closed after receiving all requested information from the website and its database.

V. SUMMARY AND CONCLUSION
The construction industry is characterized as an information intensive industry with a large number of information that should be exchanged between spatially dispersed project participants. The ever improvements in mobile phones represent a unique opportunity to improve construction communication. In this paper, the development of a mobile application system is presented, which supports collaboration between mobile users at construction sites and other project participants at the field offices as well as management at the home office. As mobile users will need to interact with the database and management at the site office and the home office, the system development includes developing the mobile and the web modules as well as the interface between the two systems.
The developed system can improve the productivity and profit of construction projects as it enables field personnel at the construction site to access and upload data when needed instantaneously without going to the field office or main office to access or report information. The system also eliminates the need to gather and convey heap of papers along the construction site. Through the website, other project participants such as field office and home office personnel are able to track the progress of construction activities and projects and corresponding with mobile users on site who are utilizing MoSIC. The MoSIC permits mobile users in construction sites to record and send various types of reports related to current construction activities, and also catch and upload snapshots. Mobile users can access data related to current activities such as method statements and specifications. All data will be put away inside the database, permitting MoSIC mobile users to get to and view what is needed in the wake of interfacing with the Internet.
The developed mobile application was developed as a native mobile application for Google's android mobile devices, and therefore it is currently usable by mobile users holding android devices. Future developments should involve developing the application for other mobile platforms such as Apple's iOS and Windows. This first version of MoSIC can be enhanced further in order to increase its acceptance within the sector of construction by adding more functions such as realtime GPS tracking. Developing MoSIC with enabled voice recognition feature that allow users to interact with the application is indeed one of the main future enhancements.

VI. FUTURE WORK
These days, there is no doubt that mobile devices are omnipresent in human being life. However, due to their resources limitations, processing complex functions rest challenging for these devices. Consequently, to deal with the concept of fault tolerance, several mobile applications depend on offloading components of their systems to distant servers on the cloud or other mobile devices. In future work, the main task will be to consider the fault tolerance of mobile devices in improving the system's design. Few researchers [22], [23], [24] went beyond the traditional cloud based solution and have suggested the virtual machine overlay concept to offload mobile devices processes to adjacent infrastructures. Basically, such solution permits processes' offload, However, it entails a complex mechanism of virtual machine and a reliable connection.
To tackle the concern of fault tolerance in the context of mobile devices running sophisticated applications, Chien-An et al. [25] presented "the first k-out-of-n framework that jointly www.ijacsa.thesai.org addresses the energy-efficiency and fault-tolerance challenges. It assigns data fragments to nodes such that other nodes retrieve data reliably with minimal energy consumption. It also allows nodes to process distributed data such that the energy consumption for processing the data is minimized". After getting the feedback from the users of MoISC current version, considering such solution in the design of a new version of MoSIC will make it more reliable.