Analysis and Design of a Crowdsourcing-Based Flooded Road Reporting System Indonesia (FROSTID) Application

The problem of flooded road infrastructure mainly occurs in urban areas, due to low soil bearing capacity, high rainfall intensity, and failure of rainwater flow to the drainage system. Flooded roads, when traversed by motorized ve-hicles, will be very detrimental to the rider. Flood water can damage engines, transmissions, electrical components, and motor vehicle electronic computer systems. Water is also very dangerous to car safety devices, such as airbags and braking systems that use ABS (Antilock Braking System). Also, there may be health problems involving fungi and bacteria, due to damp vehicles, especially on cars. Other problems related to water may not be immediately ap-parent, such as rust and corrosion, which will develop over time. The flooded road reporting system is an early warning system that provides information to road users so they can take anticipatory steps. This research proposes a crowdsourcing-based flood road reporting system, called Frostid (Flooded Road Reporting System Indonesia), that involves local road users in collect-ing flood information. Frostid application users can not only access geospatial information for flooded roads but also can collect location data using the Global Positioning System (GPS) and upload the location points of flooded roads using their smartphones. The Frostid application uses a navigation map to describe the location of flooded roads. Flood information stored in the Frostid application is built entirely by local road users. The Frostid application is built on a mobile Android platform . crowd of residents. Our application is called the Flooded Road Reporting System Indonesia (Frostid). Flood road reports were visualized using the Mapbox Maps SDK (Mapbox, 2020). The Mapbox Maps SDK is a collection of open-source libraries that can be called from a web page or mobile application to build various interactive map elements. Frostid application users not only have access to geospatial information for flood roads but also can collect location data using the Global Positioning System (GPS) and upload flood road location points using their smartphones. The flood information stored in the Frostid application is built entirely by residents as users. The Frostid application is built on the Android mobile platform. Using the Frostid application, anyone can click on a street location point on the map. If they know the road is flooded, they can report it, then the map will update the flood road information for everyone in real time. Users can zoom in and out of the map with a pinch-to-zoom gesture to visualize the roads which are being reported as floods, and decide what to do next.


Introduction
Flood is the main problem experienced during the rainy season every year in Indonesia, especially in big cities (Ali et al., 2019). Flooding occurs when the river level rises due to high rainfall, reservoirs that are unable to accommodate the volume of rainwater or a poor drainage system. The water level that exceeds the riverbank, can cause the area around the river to be flooded. Floods can occur due to low soil bearing capacity. It will increase in groundwater, potentially causing large-scale flooding (See, 2019).
Floods can also be caused by hurricanes or typhoons, or rising sea levels due to climate change or from tsunami waves. Besides, flooding can be caused by rainwater flows failing to flow into the drainage system or ditch due to the full capacity of the gutters, previously submerged roads, and road structures that prevent water from flowing into the drainage system. The problem of flooded road infrastructure mainly occurs in urban areas, for example, Jakarta and Surabaya, due to the high number of impermeable surfaces (the land cannot absorb water), thus preventing water infiltration into the ground.
One type of infrastructure network is roads. Road infrastructure is built to support the welfare of the people, especially in an economy, which is highly dependent on the mobility of people and goods (Pregnolato et al., 2017). Changes in extreme weather, climate, frequency, and severity of natural disasters 5 th ISRM 2020 54 related to flooding can affect the quality of road infrastructure available to the community (Degrossi et al., 2014).
Flooded roads will be very detrimental to its users, such as motorbikes, cars, and trucks. Flood water can damage engines, transmissions, electrical components, and motor vehicle electronic computer systems. Floodwaters also seriously endanger car safety devices, such as airbags and braking systems based on the Anti-lock Braking System (ABS). Also, there may be health problems involving fungi and bacteria, due to damp vehicles, especially on cars. Other problems related to water may not be immediately apparent, such as rust and corrosion, which will develop over time.
The flood reporting system is an early warning system that provides information to residents so they can take anticipatory steps. The involvement of residents in gathering flood information is recommended (Cools et al., 2016) so that the information can be used as an early warning. Citizen involvement in information gathering for environmental monitoring is becoming increasingly common and is often referred to as crowdsourcing (Bonney et al., 2009). In general, crowdsourcing is applied to conservation and biodiversity, but recently, it is also being applied in various fields in geosciences (Harrison & Johnson, 2016). The crowdsourcing approach empowers the "crowd" to collect sufficient data into the knowledge base through the internet (Minh et al., 2017;Lease & Yilmaz, 2012;See et al., 2016). As its main purpose, the data or knowledge provided by the crowd is then shared with other users.
Several studies have developed the application of the crowdsourcing approach to flood management for disaster management systems and flood mitigation (Eilander et al., 2016; Ushahidi or 'testimony': Web 2.0 tools for crowdsourcing crisis information (PLA 59), 2009; Koswatte et al., 2018;Pánek et al., 2017;Ludwig et al., 2015;Middelhoff et al., 2016;Hendricks et al., 2018). However, this research proposes an online flood road reporting application that focuses on traffic navigation maps for road users. This proposed application involves active citizen participation (crowdsourcing) where the collection and dissemination of flood information are carried out by the crowd of residents. Our application is called the Flooded Road Reporting System Indonesia (Frostid). Flood road reports were visualized using the Mapbox Maps SDK (Mapbox, 2020). The Mapbox Maps SDK is a collection of open-source libraries that can be called from a web page or mobile application to build various interactive map elements. Frostid application users not only have access to geospatial information for flood roads but also can collect location data using the Global Positioning System (GPS) and upload flood road location points using their smartphones. The flood information stored in the Frostid application is built entirely by residents as users. The Frostid application is built on the Android mobile platform. Using the Frostid application, anyone can click on a street location point on the map. If they know the road is flooded, they can report it, then the map will update the flood road information for everyone in real time. Users can zoom in and out of the map with a pinch-to-zoom gesture to visualize the roads which are being reported as floods, and decide what to do next.

Material and Methods
The Frostid application (Flooded Road Report System Indonesia) provides geospatial information on flood roads. Geospatial data collection through crowdsourcing takes advantage of citizen participation. Frostid is built within a Software Development Life Cycle (SDLC) framework that adopts the Waterfall model shown in Figure 1. The waterfall model is a sequential software development method, consisting of four interrelated stages including system analysis and design. The four stages include system planning, system analysis, system design, and system implementation. System planning is a description of the estimated physical requirements, the requirements used to support system development and operation after the system is implemented.

System analysis
System analysis is the decomposition of a complete system into its parts to identify the expected requirements. The system analysis stage generates a workflow system to analyze system requirements. The system workflow describes how the system functions are performed. It determines the work procedures in each system function. A system function is an activity in the business workflow that involves software. Meanwhile, work procedures are a series of activities based on a time sequence involving several components, especially the role of system users. The Frostid application has system functions such as user registration, user login, adding flood reports, deleting flood reports, viewing flood report lists, viewing flood location maps, viewing flood report details, resetting passwords, and reporting bugs. Besides, the Frostid System Manager as a support system should also be able to view flood reports, deactivate users, change flood level master data, and view bug reports.  System analysis is the decomposition of a complete system into its parts to identify the Figure 2 describes the flow of the "user registration" activity. This system function accommodates new Frostid user registrations. To view flood reports and add flood reports, Frostid users are required to log in with their accounts. If a new user does not have an account, the user can register by entering data in the form of their name, username, password, and email. Figure 3 describes the flow of the "user login" activity.
The system function for reporting the location of the flood roads is shown in Figure 4. To report a flood waypoint, the user presses (tap) the "+" button on the map. Then the user fills in the report form, which consists of a photo data field of the flood location, flood level, and a detailed description of the flood conditions on the road. The flood level field is mandatory. Flood level is the severity of the flood. The flood level is classified into three levels. They are mild, moderate, and dangerous. After the report data is saved to the system, the system will update the flood road report data on the navigation map. Figure 5 describes the activity of deleting flood reports. The system function allows the cancellation of a flood road report, for example when there is a correction to the flood report data.  Figure 6 describes the flow of the event " view flood location maps ". The system function accommodates the user's need to view reports of flood waypoints on a traffic navigation map. The navigation map will update the flood road report data periodically, every second, in real-time. Figure 7 describes the flow of the event "view flood report details". The system function described in Figure 7 accommodates the need for users to view more detailed information from each flood waypoints report, for example, a description of the user-reported flooded road, flood level, and a photo of the flood road location. To see this detailed description, first, the user must tap the "water icon" on the navigation map which is a flood report by other users. Figure 8 shows the flow of the event "view flood report lists". This system function aims to display a list of flood reports around the user's current location. Figure 9 describes the system flow for resetting user passwords. This system function allows users change their password, if they are unable to log into Frostid in case of forgetting the account password. The password reset flow starts with the user pressing the "profil" menu, then the system displays the user profile page. The user selects the "ubah password" menu. The system displays a change password page that contains fields for the old password and new password. The user enters the old password, and the new password in the fields provided then presses the "ubah" button. In the end, the system displays information that the password was successfully changed. The system functions for bug reporting are shown in Figure 10. Bug reporting is a feedback feature for users if users want to report bugs found in Frostid application, for example, certain system failures.    Figure 11-14 describes the activities in the Frostid System Manager including view flood reports, deactivate users, change flood master data, and view bug reports.

System design
The stage after the analysis of the systems development cycle is system design. The purpose of this system design is to describe a computer program to be built. The use case diagram of the Frostid system is shown in Figures 15 and 16. The diagram illustrates the interaction of actors with system functions. The use case diagram is divided into two, the use case diagram for mobile applications and the system manager. Both use case diagrams have a login use case, which has a relationship "include" with the main use case. The login use case must be satisfied first, as a condition for the occurrence of another event.   Figure 17 shows the general architecture of the system being built. The system consists of two parts, the Frostid android based mobile application, and the support system. Figure 17. Frostid system architecture The Frostid system consists of three components including the Frostid mobile application, database server, and system manager. The Frostid mobile application communicates with the support system through a cloud server. The support system serves to support the storage and provision of Frostid application data through a database server, as well as for data management through the system manager. An interface, an Application Programming Interface (API), is required for communication between the mobile application and the database server. The interface is located on the support system side of the cloud server. Another component, the system manager, is used for crowdsourcing data management, flood reports, and user data management. The two actors involved in the Frostid system are end-users and administrators. End-users are Frostid application users, while administrators are responsible for the system manager.
The cloud server has the task of receiving and sending requests (requests) from the mobile application. The request from the mobile application is not received directly by the database server but is forwarded to the database server through the API application. Likewise, data obtained from the query results to the database server, then forwarded by the API to the Frostid mobile application. The API application built is the REST-API using the Lumen framework. The database server used is MySQL. Figure 18 shows a diagram of the Frostid application database. There are eight tables, namely the reports table, report_levels, report_pictures, users, user_logs, user_levels, problems, and re-port_logs. The reports table functions to store flood report data. Flood level attributes, such as flood level icon color, and flood level icon description, are defined in the report_levels table. The user's table stores Frostid user registration data that is used to log in. The user_logs table functions to store user activity data while using the Frostid application. The user_levels table defines the user's access rights to the system. Bug report data reported by users is stored in the problems table. Meanwhile, the report_logs table stores flood report data that was deleted by users.

Results and Discussion
The Frostid system is implemented with the experimental environment specifications shown in Table 1. The results of the implementation are shown in Figure 19-21. Figure 19 shows the main page. This page contains a traffic navigation map that provides flood waypoint information. The flood waypoint is represented by a water icon. The water icon represents the flood level. The flood level is divided into three, including low level, medium level, and high level. Figure 20 is a page for adding flood report data. Meanwhile, Figure 21 shows the flood report list page around the user's location.  Experimental testing aims to ensure the application meets predetermined functional requirements. In this study, the black box testing method was employed. Table 2 describes the results of the Frostid functional requirements testing.  Table 2. It says that the Frostid application has met the functional requirements that have been defined.

Conclusion
In this study, an application that uses a crowdsourcing approach was developed to provide road flood information to local road users, especially motorists in Indonesia. All flood road information is accommodated in the Frostid application, built entirely by user participation. The Frostid application runs on Android mobile devices. The results of the functional testing using the black box method indicate that the Frostid application can run well and meet its functional requirements.