The main objective of this project is to design and implement a Real-Time Vehicle Towing Information System (RVTIS) that would facilitate real-time response by towing services in order to reduce road accidents resulting from break-down of vehicles.
The paper answers the following questions: Would the implementation of a real-time vehicle towing information system enable quick access to towing service? How do victims of vehicle breakdown communicate with towing service providers? How are victims of vehicle break down located by Towing service providers?
The scope provides for the boundary of the research in terms of depth of investigation, content and methodology, geographical and theoretical coverage. This project is basically designed for Towing service providers in Ghana. These Towing services providers provide a lot of services to vehicle owners which includes; fuel delivery, changing of tire, unlocking doors, jump starts, minor repair, towing recreational vehicles, and specialised towing.
When it comes to the problem of vehicle break downs, it could mean just more than the vehicle’s technical fault since it could lead to traffic and accidents leading to injuries and fatalities if there are no systems to request of a tow service from a provider in real time. Skowron and Kochel defined towing as the act of pulling by a motor vehicle another vehicle which, in the given circumstances is stationary. The towing process may be initiated by the vehicle owners at their own request, or by government authorities due to abandoning the vehicle on public streets or roads. In some jurisdictions the towing service sector is mostly dominated by private companies authorized by government to provide the service.
However, the government may also provide the required logistics to law enforcers such as Police Accident and Traffic unit and other emergency services to ensure that abandoned vehicles are towed away from the thoroughfares to prevent unwanted road accidents. According to Ghanaian laws, it is mandatory for vehicle owners to get their broken-down or faulty vehicles towed away from the roads as soon as possible else the vehicle shall be voluntarily removed within two hours. The vehicle owner would be processed for prosecution and required to pay for the towing services. The same law also makes it a requirement for all towing service companies who have the capacity to tow broken down vehicles to register with the Ministry of Transport to be licensed.
The overwhelming number of vehicles which broke down on Ghanaian roads easily lead to road accidents when towing services do not intervene in real-time. According to Badu-Boateng, the National Road and Safety Policy Document (NRSPD) has recorded that the frequent breakdown of vehicles on our roads and highways is because of poor servicing or maintenance and that failure to attend to these broken-down vehicles by towing services could be caused by two factors: the drivers’ failure to report the incident and failure of the towing services to respond in real time. A typical example is an AdomOnline report of about twenty-two people losing their lives through three separate road accidents within the same week as a result of abandoned vehicles on highways.
The study will be organized into five chapters as stated below: The first chapter constitutes the introduction which contains various sections such as the background of the study, problem statement, objectives, and research questions. The second chapter presents the literature review. This chapter reviews pertinent frameworks and literary works by other researchers pertaining to the work. The third chapter also highlights the research methodology, which talks about how the work would be carried out. The next which is the fourth chapter explains how the work is implemented with some designed interfaces of the proposed system. The last, which is the fifth chapter highlights on summary of the findings and make some recommendations.
TABLE OF CONTENTS
DECLARATION
DEDICATION
ACKNOWLEDGEMENT
ABSTRACT
TABLE OF CONTENTS
LIST OF FIGURES
LIST OF ABBREVIATIONS
CHAPTER ONE INTRODUCTION
1. 0 Background of the Study
1.2 Problem Statement
1.3 Research Questions
1.4 Objectives
1.4.1 Main Objective
1.4.2 Specific Objectives
1.5 Scope of the Study
1.6 Project Organization
CHAPTER TWO LITERATURE REVIEW
2.1 Introduction
2.2 Information System
2.3 Towing
2.4 Towing Management Information System
2.5 Vehicle tracking systems
2.6 Vehicle Towing Policy in Ghana
2.7 Related Works
2.7.1 Car Breakdown Service Station Locator
2.7.2 First Call
2.7.3 CarBengkel
CHAPTER THREE METHODOLOGY
3.0 Introduction
3.0.1 Technique for information gathering
3.1 Method Applied to the Design
3.2 Rational behind the methods
3.3 System Architecture
3.5 The Proposed Towing Process
3.6 Mind Map
3.7 Registration of a New User
3.7.1 Flow Chart for New User Registration
3.7.2 New user Registration Architecture
CHAPTER FOUR DESIGN AND IMPLEMENTATION
4.0 Introduction
4.1 Design and development
4.1.1 UX Design
4.2 Application Design
4.2.1 Database Design
4.2.2 Entity Relationship (ER) Diagram
4.3 Use Case Diagram
4.4 System Prototype Development
4.5 SYSTEM INTERFACE
4.5.1 Main Page
4.5.2 Instruction on login page
4.5.3 Login Screen
4.5.4 Instruction on Tow Company registration
4.5.5 Instruction on Tow Company's dashboard
4.5.7 Instruction on Driver Registration
4.5.8 Client dashboard
4.5.9 Instruction on how to send Tow Request
4.5.10 Instruction on Client's Registration Page
4.5.11 Instruction on Client Feedback page
4.6 Implementation
4.6.1 Tools
4.6.2 Hypertext Pre-processor (PHP)
4.6.3 Testing
4.6.4 Development Testing
4.7 Evaluation
4.8 System Requirements
4.8.1 Functional Requirements
4.8.2 Non-Functional Requirements
CHAPTER FIVE CONCLUSION AND RECOMMENDATION
5.0 Conclusion
5.1 Summary of conclusion
5.2 Recommendation / Future work
REFERENCES
APPENDICES
DEDICATION
We dedicate this piece of work to God Almighty and to our parents and friends who helped propel our education up to this level. And to our supervisors; Professor Adebayo Felix Adekoya, Mr. Kwame Baffour Agyemang and Mrs. Faiza Umar Bawah and to the Department of Computer Science and Informatics.
ACKNOWLEDGEMENT
We would first of all thank the Most High God for His divine protection and guidance throughout the realization of this project.
We would also like to express our profound gratitude to our supervisor, Professor Adebayo Felix Adekoya for his support, guidance, patience, and encouragement throughout the course of this research.
We are also thankful to Mr. Kwame Baffour Agyemang and Mrs. Faiza Umar Bawah who are lecturers of the department of computer science and informatics for their support and assistance throughout this project.
We say may God bless you all.
ABSTRACT
Vehicle break down could mean just more than the vehicle's technical fault since it could lead to traffic and accidents leading to injuries and fatalities if there are no systems to request for a tow service from a provider in real time.
Many individuals are confronted with challenges in getting help when their vehicles break down on the road. A large number of them do not have any means to contact and get help as the Car Repair Service Providers may be far from their vicinity. These issues were the inspirations and motivations for undertaking this project to help the individuals who need help when their vehicles break down on the roads.
The main objective of this project was to design and implement a Real-Time Vehicle Towing Information System that would facilitate real-time response by towing services in order to reduce road accidents resulting from break-down of vehicles.
This system was implemented successfully and will help eliminate the stress through which vehicle owners go through when their vehicle breaks down on the road in the existing manual system. A number of pertinent literature was reviewed on previous works to understand the current trend of towing, conceptual models were designed. The data collection techniques used in the methodology used was observation, interviews, brain storming, and reviews of people's opinions. The basic requirement of the system is internet connection and web browser to access the system on computer or GPS enabled smart phone and tablet.
LIST OF FIGURES
Figure 2. 1: NRSC and MTTD towing zones. From The truck driver's guide - Ghana, 201012
Figure 2. 2: NRSC and MTTD towing zones. From The truck driver's guide - Ghana, 201013
Figure 3. 1: System Architecture
Figure 3. 2: A Simplified Context Diagram of the system. (Authors own)
Figure 3. 3: The mind map of the system. ( Source: Authors own)
Figure 3. 4: Logical Representation of User Registration (Source: Authors own)
Figure 3. 5: New user registration architecture (Source: Authors own)
Figure 4. 1: Entity relationship diagram. (Authors own)
Figure 4. 2: Database design. (Authors own)
Figure 4. 3: Use case diagram
Figure 4. 4: The main screen
Figure 4. 5: The login screen
Figure 4. 6: The Tow Company registration page
Figure 4. 7: A Tow Company's upper dashboard
Figure 4. 8: A Tow Company's middle part dashboard
Figure 4. 9: A modal of the Tow Company's dashboard
Figure 4. 10: Driver registration page
Figure 4. 11: The dashboard for client who did not sign up (anonymous) and did not filter the Tow companies in the system
Figure 4. 12: The dashboard for a registered user and filter the Tow companies in the system.
Figure 4. 13: A modal of the user's dashboard
Figure 4. 14: The mobile view of anonymous user's dashboard.
Figure 4. 15: Client registration page
Figure 4. 16: Client's feedback page.
Figure 4. 17: Registered user dashboard
Figure 4. 18: Tow request modal
Figure 4. 19: SMS Tow request
Figure 4. 20: Incorrect password.
LIST OF ABBREVIATIONS
API:Application Program Interface.
CRSP:Car Repair Service Providers.
CSS:Cascading Style Sheet.
DVLA:Driver and Vehicle Licensing Authority.
GFS:Ghana Fire Service.
GPRS: General Packet Radio Service.
GPS:Ghana Police Service.
GPS:Global Positioning System.
GSM:Global System for Mobile communications.HTML:Hypertext Markup Language.
IDE:Integrated Development Environment.
MTTD:Motor Traffic and Transport Department.NRSC:National Road and Safety Commission.NRSPD:National Road and Safety Policy Document.OEM:Authorized Original Equipment Manufacturer.PDAs:Personal Digital Assistants.
PHP:Hypertext Pre-Processor.
RVTIS:Real-Time Vehicle Towing Information System.SDGs:Sustainable Development Goals.
SDLC:Software Development Life Cycle.
SMS:Short Message Service.
VScode:Visual Studio code.
CHAPTER ONE INTRODUCTION
1. 0 Background of the Study
When it comes to the problem of vehicle break downs, it could mean just more than the vehicle's technical fault since it could lead to traffic and accidents leading to injuries and fatalities if there are no systems to request of a tow service from a provider in real time.
Skowron and Kochel (2016) defined towing as the act of pulling by a motor vehicle another vehicle which, in the given circumstances is stationary. The towing process may be initiated by the vehicle owners at their own request, or by government authorities due to abandoning the vehicle on public streets or roads. In some jurisdictions the towing service sector is mostly dominated by private companies authorized by government to provide the service. However, the government may also provide the required logistics to law enforcers such as Police Accident and Traffic unit and other emergency services to ensure that abandoned vehicles are towed away from the thoroughfares to prevent unwanted road accidents.
According to Ghanaian laws, it is mandatory for vehicle owners to get their broken-down or faulty vehicles towed away from the roads as soon as possible else the vehicle shall be voluntarily removed within two hours (Road Traffic Act 683). The vehicle owner would be processed for prosecution and required to pay for the towing services. (Road Traffic Act, 2004). The same law also makes it a requirement for all towing service companies who have the capacity to tow broken down vehicles to register with the Ministry of Transport to be licensed.
The National Road Safety Commission (NRSC) and the Motor Traffic and Transport Directorate (MTTD) of the Ghana Police Service (GPS) are among the several agencies responsible for ensuring road safety in the country. In 2009, as part of the Road Safety Strategy II, these two bodies partnered to divide the major roads in the country into four towing zones and subsequently assigned some private towing companies to these zones to operate there (“NRSC to introduce commercial towing”, 2009).
1.2 Problem Statement
The overwhelming number of vehicles which broke down on Ghanaian roads easily lead to road accidents when towing services do not intervene in real-time. According to Badu- Boateng (2017), the National Road and Safety Policy Document (NRSPD) has recorded that the frequent breakdown of vehicles on our roads and highways is because of poor servicing or maintenance and that failure to attend to these broken-down vehicles by towing services could be caused by two factors: the drivers' failure to report the incident and failure of the towing services to respond in real time.
A typical example is an AdomOnline report of about twenty-two people losing their lives through three separate road accidents within the same week as a result of abandoned vehicles on highways (“Broken down vehicles kill 22”, 2017).
1.3 Research Questions
- Would the implementation of a real-time vehicle towing information system enable quick access to towing service?
- How do victims of vehicle breakdown communicate with towing service providers?
- How are victims of vehicle break down located by Towing service providers?
1.4 Objectives
1.4.1 Main Objective
The main objective of this project is to design and implement a Real-Time Vehicle Towing Information System (RVTIS) that would facilitate real-time response by towing services in order to reduce road accidents resulting from break-down of vehicles.
1.4.2 Specific Objectives
i.To design and develop a Real-Time Vehicle Towing Information System to enable quick access to towing services.
ii.To facilitate the communication between victims of Vehicle break down and towing service providers.
iii.To integrate the system with google maps in order to locate vehicle break down victims by towing service provider.
1.5 Scope of the Study
The scope provides for the boundary of the research in terms of depth of investigation, content and methodology, geographical and theoretical coverage.
This project is basically designed for Towing service providers in Ghana. These Towing services providers provide a lot of services to vehicle owners which includes; fuel delivery, changing of tire, unlocking doors, jump starts, minor repair, towing recreational vehicles, and specialised towing.
1.6 Project Organization
The study will be organized into five chapters as stated below:
The first chapter constitutes the introduction which contains various sections such as the background of the study, problem statement, objectives, and research questions. The second chapter presents the literature review. This chapter reviews pertinent frameworks and literary works by other researchers pertaining to the work. The third chapter also highlights the research methodology, which talks about how the work would be carried out. The next which is the fourth chapter explains how the work is implemented with some designed interfaces of the proposed system. The last, which is the fifth chapter highlights on summary of the findings and make some recommendations.
CHAPTER TWO LITERATURE REVIEW
2.1 Introduction
In this chapter, existing knowledge and systems relevant to the subject of interest are explored and cited. The chapter also sells out the relationship of the proposed system for the sake of good demonstration and critical review of the existing literature.
2.2 Information System
Bulgacs (2013) defines Information System as a combination of Information Technology and people's activities with the aim of supporting operations, management, and decision making. Data is stored in information systems and people use this data to guide their decisions. The collection, storing, processing, retrieval, sharing of data and the ability to use data to accomplish specific objectives are fundamental components of an information system. Another useful function of an information system is its ability to be used by decision makers to meet specific goals.
Computer-based information system:This centres on the information technology aspect of information systems and the people who use it. It is the collection of hardware, software, databases, telecommunications, and procedures used to collect, manipulate, store, and process data into information and the people who use this information to address specific problems. (Stair and Reynolds, 2010).
Business information system:They are popularly used in organizations for electronic and mobile commerce, transaction processing, management information, and decision support. They facilitate the performance of regular tasks assigned to employees. Business information systems have three core components: knowledge management system, decision support system, and electronics and mobile commerce (e-commerce and m-commerce).
Knowledge management system:Stuhlman (2012) defined knowledge management as an aware, hopefully steady, strategy carried out to collect, save and retrieve understanding and then assist distribute the facts and know-how to folks that want it in a timely manner. Knowledge is acquired after learning hence knowledge management is basically how an organization intends to acquire knowledge through learning from data collected over a period of time in order to enhance its problem-solving capabilities. Any system that helps to acquire knowledge through learning from data collected over a period can hence be classified as a knowledge management system.
Decision support system:“Decision support systems”, (n. d) defines choice support machine as particular elegance of automated data system that helps business and organizational selection-making sports. Decision support systems help decision makers to combine data and personal knowledge in order to find solutions to problems.
Electronic commerceis the conducting of business activities electronically over computer networks such as the Internet, extranets, and corporate networks. Mobile commerce is the use of mobile devices such as smartphones and personal digital assistants (PDAs) to place order and conduct business. (Stair and Reynolds, 2010).
2.3 Towing
Towing is the act of pulling by a motor vehicle another vehicle which, in the given circumstances is stationary (Skowron and Kochel, 2016). The towing process may be initiated by the vehicle owners at their own request, or by government authorities due to abandoning the vehicle on public streets or roads.
There are various types of towing, which are discussed below;
Light and medium Towing:This type of towing involves moving of lightweight vehicles where small trucks are used for the process. The best time to require of this towing service is when a car engine stops (“Types of Towing”, n.d.).
Flatbed towing:This type of towing is not appropriate for stalled cars but rather for new and luxury cars. It offers a flatbed where the cars are being transported to showrooms instead of driven by road (“Types of Towing”, n.d.).
Heavy duty towing:This type of towing as the name implies is applied in moving heavy vehicles such as Lorries and trucks. This towing required a lot of heavy safety equipment to lift the vehicle in order to place them on the tow truck (“Types of Towing”, n.d.).
Weight lift towing:this type of towing is based on the weight of the vehicles. Vehicles below 10,000 pounds are transported using this type of towing (“Types of Towing”, n.d.).
2.4 Towing Management Information System
This is basically a system for managing all the informational needs related to towing a vehicle. The vehicle towing process often involves a repetitive process of data collection and record keeping. The person who requests a tow service must provide the service provider with descriptive data about the vehicle to be towed. This information would assist the towing vendor to determine the suitable tow truck and the type of equipment to dispatch to the incident scene (Garg, 2005).
When the tow vendor dispatches a tow truck to the scene, the vendor needs to be constantly updated on the status of the job and information such as mileage, time spent on tow, and the destination of the vehicle was all essential to the service provider and need to be recorded. The tow vendor would properly determine the rate to charge for the service based on such data. It may lose revenue when it fails to appropriately determine those variables. A typical towing software has components for automatic dispatching of tow truck operators, tracking of vehicles, and management of records. We would briefly describe the terms dispatching, and tracking and discuss some popular vehicle tracking technologies available today (Garg, 2005).
Dispatching is a mechanism used by service providers to allocate workers to their customers. Emergency services, couriers, customer support call centres, and towing management systems are usually powered by dispatch centres. The employee to be assigned to a client by the dispatcher is determined by a number of factors such as, the mileage, location, and the nature of the job and the suitable logistics required to complete it. Sometimes the language spoken in a particular region could also determine the employee to be assigned (Garg, 2005).
When a request for tow service arrives on a towing management system, it is added to a queue of pending requests. The dispatcher gradually assigns the requests to tow truck drivers until the queue is empty. A dispatcher may dispatch a job to multiple tow truck drivers to accept or reject (Garg, 2005).
In determining the closest tow truck to dispatch to an incident scene, a tow dispatcher is aided in its operation by location information provided by Global Positioning System (GPS) devices attached to tow trucks. The dispatching system provides a map which may also be useful for calculating an expected path for the truck to travel (Garg, 2005).
2.5 Vehicle tracking systems
Various existing vehicle tracking techniques have also been reviewed here.
The paper presented by Le-Tien and phung (2010) describes a device based totally on the global positioning system (GPS) and international machine for cellular communique (GSM). It describes the realistic model for routing and tracking with mobile vehicle in a large place outdoor environment. The system developed by Le-Tien and phung (2010) consists of a compass sensor-yas529 made by Yamaha organization and accelerator sensor-kxsc72050 also developed by Koinix Company to gather information about a moving vehicle. The machine will collect current positions of the vehicle using a GPS receiver after which it also sends the information to supervised center with the aid of an SMS (short message offerings) or GPRS (trendy package deal radio carrier) carrier. The supervised center contains a device called a development kit that helps GSM techniques-wmp100 which was developed by the wavecom organisation. In the long run, the location of the cellular car might be displayed on Google map.
Namrata, Damini, Snehal, and Aditi, (2016) also in their paper presented the motive of sending a message using a system which is placed inside of vehicle system to find the vehicle where it is and locate the vehicle.
Namrata et al. (2016) proposed a new model in order to allow early response and rescue of accident victims, save lives and properties. The system proposed by Namrata et al. (2016) uses the capability of GPS and GSM along with the android phone to provide a solution which can be used to precisely detect the location of the accident scene and to send an emergency notification to the nearby hospital's ICU and to the victim's relatives. The system's main components were made up of Sensors and switches and were distributed throughout the vehicle hence provides more flexibility while it was mounted it into the vehicle. (Vikram and Deepa.) (As cited in Namrata et al, (2016)).
The vehicle accident detection and tracking system using GSM and GPS have successfully been designed by means of sensing push on switches when accident occurs. The accident scene location coordinates were obtained by GPS and were sent through mobile network to user defined mobile number. It is the fact that implementation of system will increase cost of vehicle but it is better to have some percent safety rather than having no percent of safety. The proposed method is verified to be highly beneficial for the automotive industry.
The paper presented by El-Medany, Al-Omary, Al-Hakim, Al-Irhayim and Nusaif (2010) described a real-time tracking system which they developed that provides accurate locations of tracked vehicle with low cost. GM862 cellular quad band module was used for the implementation. A server and a user interface monitor on a website was also developed using Microsoft SQL Server 2003 and ASP.net to observe the accurate location of a vehicle on a specific map. The system also provides information regarding the vehicle status such as speed, mileage.
A combination of GPS-GSM localization of vehicle tracking tool was developed by Khedher, (2011) that consists of GPS-GSM framework to track vehicles using Google earth application. The far-off module has a GPS installed at the transferring car to understand its gift function, and to be exchanged through GSM with specific parameters procured via the usage of the car's statistics port as a SMS to a beneficiary station.
2.6 Vehicle Towing Policy in Ghana
According to the Road Traffic Act 683, vehicles that break down on highways or motorways shall be voluntarily removed within two hours. The vehicle owner would be processed for prosecution and required to pay for the towing services. (Road Traffic Act, 2004). All towing service companies who have the capacity to tow disabled vehicles are required to register with the Ministry of Transport to be licensed to do so in accordance with the law. They typically operate on a post-service payment system (pay as you tow).
Efforts by government to introduce an annual mandatory towing levy was met with backlash by the public hence, Andoh (2017) reported on graphiconline.com that the Senior Minister Yaw Osafo Marfo in a meeting with the towing companies, advised them to accept postservice payment (break-down vehicle owners pay as the service is delivered to them) until government came out with new interventions to deal with the situation. Meanwhile, the service providers were of the view that government making payment mandatory would help eradicate some of the challenges they face such as vehicle owners abandoning their towed vehicles for days or months, and even years, and other challenges such as refusing to pay for the towing services.
The MTTD is an agency under the Ghana Police Service (GPS) responsible for road safety. The significance of the MTTD of the Ghana Police Service in Ghana is its unchallengeable duty in road safety (Boi-Bi-Boi, 2010). From (Motor Traffic & Transport Unit, 2017), the MTTD performs duties such as:
- Traffic control and management,
- Enforcement of all road traffic laws and regulations,
- Investigation on road traffic accident crash cases reported,
- Processing and prosecution of traffic offenders,
- Provision of presidential route security, presidential and protocol escort for Very Important Persons (VIPs) and state dignitaries,
- Collaboration with road safety stakeholders that is the NRSC, Driver and Vehicle Licensing Authority (DVLA), Ghana Fire Service (GFS), and many others.
As part of the department's role to avert road accidents, the government provides it with logistics to beef up its capacity for pulling away immobile vehicles from the roads.
The NRSC is another agency in Ghana responsible for developing and promoting road safety in Ghana. Its establishing act (NRSC Act 567, 1999), mandates it to perform functions such as:
- Undertake nationwide road safety education
- Information and publicity
- Carry out special projects for the improvement of road safety
- Co-ordinate monitor and evaluate road safety activities
- Programmes and strategies
- Recommend to the minister and such bodies as it may determine measures calculated to prevent road crashes and injuries involving the use of vehicles on roads
- Advise the minister on the formulation of road safety policies and action programmes
- Develop and maintain a comprehensive database on road safety policies and action programmes
- Develop a long-term road safety plan
- Establish with road authorities, procedures for safety audit of projects for roads construction, reconstruction or improvement
- Promote road safety research
- Set standard for road safety equipment and ensure compliance.
The NRSC in partnership with the MTTD, has partitioned the major roads in the country into four zones. They have subsequently authorized some private towing service providers to operate in these zones on commercial basis (“NRSC to introduce commercial towing”, 2009). Ruitchen Trucks is responsible for zone one, which comprises of Accra - Kumasi - Sunyani roads. Sarkozy Limited is responsible for zone two, comprising of Accra - Tema - Ho, Hohoe, Jasikan, Aflao corridor and adjoining links. Traffic Management Signs and Systems Limited (TMS&S Ltd.) is solely responsible for zone three constituting Accra-Winneba-Cape Coast-Takoradi-Elubo road corridor and adjoining links. Zone four “a” is managed by Abu and Serwaa Katakyie Company Limited (A&SK Co. Ltd.), comprising Kumasi-Techiman- Kintampo-Tamale, Wenchi-Bole-Bamboi-Wa road corridor and adjoining links.
Zone four "b" is serviced by Day and Night Towing Service, consisting of Kumasi- Techiman, and Kumasi-Obuasi road corridors and adjoining links. Last, but not the least, Zone four "c" is serviced by Umarib Ghana Limited and it comprises of Tamale-Bolgatanga- Navrongo, Bolgatanga-Bawku road corridors and adjoining links.
Abbildung in dieser Leseprobe nicht enthalten
Figure 2. 1:NRSC and MTTD towing zones. From The truck driver's guide - Ghana, 2010
Abbildung in dieser Leseprobe nicht enthalten
Figure 2. 2:NRSC and MTTD towing zones.From The truck driver's guide - Ghana, 2010 In 2012, a Legislative Instrument, that is LI 2180 (Road Traffic Regulations 2012) was passed to impose a mandatory towing levy on all owners of vehicles for the purpose of towing disabled vehicles on the roads. However, in 2017, majority of Ghanaians advocated for the review of the mandatory towing levy after the policy implementer, the National Road and Safety Commission (NRSC) announced that its commencement was scheduled for 1st July, 2017. Consequently, government halted the implementation of the law, and announced that alternative ways for dealing with the problem of disabled vehicles would be voiced in due time.
2.7 Related Works
2.7.1 Car Breakdown Service Station Locator
According to a paper presented by Kahoo, Ahmad, and Kamal (2016), Car breakdown service station locator was developed in Malaysia to solve the problems faced during car breakdowns on their roads.
The system connects Car Repair Service Providers (CRSP) and the public or users by allowing the car owners or users to contact the nearest CRSP in case their cars breakdown on any part of the road. (Kahoo et al 2016)
The users of the system were made to use smart phone with GPS enabled in order to be able to get their right location. This system allows its users to freely choose from any of the CRSP within any radius for assistance. One of the main disadvantages pinpointed by Kahoo et al (2016) was the fact that the system had no login portal for CRSP to enable them connect their users of which they wished to include as a future work. The system did not provide room for frustrated users to login without any form of registration.
2.7.2 First Call
According to “First Call Breakdown Assistance” (n.d.), First Call is a registered Ghanaian based company which developed a web and a mobile (Android or IOs) applications called the first call purposely for First Call to provide roadside assistance to its users. This idea of First Call was borne out of a personal vehicle breakdown experience of having deal with the inconsistency and unreliable timing for roadside assistance and recovery. The services of First Call only operate within Accra, Tema, and Kumasi and its environs with trained mobile mechanics with well-equipped motorbikes using dedicated fleets to attend to vehicle breakdowns. First Call provide its users with towing services, Roadside assistance such as replacement of flat tyre, jumpstart battery, overheating issues and Ancillary services such as Ambulance services, taxi services and security services. (“First Call Breakdown Assistance”, n.d.).
The main disadvantage of First Call was that it was made for the usage of only one company of which no other company can use.
2.7.3 CarBengkel
According to “About CarBengkel” (n.d.), Armin Baniaz Pahamin the managing director of CarBengkel said CarBengkel was developed successfully from a seed grant from Cradle Fund Sdn Bhd, an agency of Ministry of Finance in Malaysia. The application helped the public to request for quotation for any services or repair for their vehicle. CarBengkel is a mobile application that has some of intelligence in it and connects car drivers to authorized original equipment manufacturer (OEM) workshop for maintenance and repair by the help of a GPS enabled phone and a push technology. In case of a car breakdown, the car owner sends an SOS from a mobile phone to a nearest authorized workshop for rescue. There are other features such as pickup services, drive in and appointment for maintenance other than break down rescue (“About CarBengkel”, n.d.).
One disadvantage of CarBengkel is that the public must pay for a breakdown membership package to enable them have their broken-down vehicles towed for a particular period of time of which may pose a lot of problems.
In summary, the background study shows that some of the existing systems posed some form of flaws. In response, RVTIS aims to solve some of the flaws of the existing system.
CHAPTER THREE METHODOLOGY
3.0 Introduction
This chapter addresses the methods and the processes used in the research.
3.0.1 Technique for information gathering
In each system development, gathering information and defining the requirements for the system is very important. There are several methods that can be used in gathering information and requirements for the proposed system such as referring to previous thesis, observation, brainstorming, interviews and through the internet. For RVTIS, the requirements were gathered by brainstorming, interviews, and by reviewing peoples' opinions on towing in Ghana.
3.1 Method Applied to the Design
In developing the proposed system, Software Development Life Cycle (SDLC) methodology had been used. The System Development Life cycle (The Waterfall model) or sometimes just (SLC) is defined by the US Department of Justice (DoJ) as a software development process. Although it is also a distinct process independent of software or other Information Technology consideration. Waterfall is also known as Information Systems development or application development. A waterfall should result in a high-quality system that meets or exceeds customer expectations. Within time and cost estimates, works effectively and efficiently in the current and planned information technology infrastructure and is cheap to maintained and cost effective to enhance. Waterfall module is a system approach to problem solving and is composed of several phases, each comprising multiple steps.
This methodology has five phases:
1. Planning
2. Analysis
3. Detailed System Design
4. Implementation
5. Maintenance
i. Planning
In this phase, it determines the objective and scope of Real-Time Vehicle Towing Information System (RVTIS). There are several plans that should be made such as the schedule planning. This describes the plan that had been made in developing the systems from start until finished. Besides that, there is also feasibility planning that is on cost and time planned for the system.
ii. Analysis
At this stage, software that would be used to develop the proposed system needs to be analysed first. Therefore, PHP had been chosen as the programming language, SQLite or MySQL depending on the host of the system. The main output from the analysis was specification for the software.
iii. Detailed System Design
Detailed System Design is to show how the system should be functioning in real environment. There are activities in this part and these activities are the interface design of RVTIS, database design and algorithm of the system flow.
iv.Implementation
Before the completed system could be implemented, a number of test will be conducted in order to make sure that the system had met the user requirements. The tests include unit testing, system testing and user acceptance test. It comprises of Coding where codes will be written. The system was written in PHP. Since it is a web application, the front-end will be written using Hypertext Mark-up Language (HTML) and Cascading Style Sheets (CSS). JavaScript was used to write codes for adding interactivity. PubNub API and SMS Gateway were used to provide Web socket functionality and short message service respectively. MySQL or SQLite as database depending on which one the host supports.
v. Maintenance
Maintenance of RVTIS will be conducted after the system had been implemented to the targeted users. This is to ensure that the system operates as it should be according to the user requirement. However, there are sometimes that the maintenance will lead to some changes on the system.
3.2 Rational behind the methods
i.Testing is inherent to every phase of the waterfall model. We used this approach because in using this approach, the incident of finding faults with a particular phase and going back to correct after the project is completed is minimized.
ii.It is documentation driven. This done to give evidence to the leaders and members of the so there will not be any doubt about we the designers as well as serving as benchmark if a similar project is to be undertaken and work is done in stages.
iii.Reviews represent quality gates and decision points for continuing.
3.3 System Architecture
Abbildung in dieser Leseprobe nicht enthalten
Figure 3. 1:System Architecture (Authors own)
The system would comprise of the following:
i.A web application server with a database server for data storage, access, transmission, and managing tow operations.
ii.A communication means for sending a tow request to the application server to be processed.
iii.A GPS enabled android device to be used by tow truck drivers and users of tow service.
3.4 A Simplified Context Diagram of the system.
Abbildung in dieser Leseprobe nicht enthalten
Figure 3. 2:A Simplified Context Diagram of the system. (Authors own)
The Actors to use RVTIS consist of a Client who is also known as a user, a Tow Truck Driver, and a Tow Company.
User:Requests the services of a Tow Company.
Tow Truck Driver:Completes task the request was sent for.
Tow Company:Receives a tow request from a Client and assign a Tow Truck Driver to complete the task.
3.5 The Proposed Towing Process
The proposed system to be developed would address the challenges of the current towing process. Owners of disabled vehicles, the towing service providers, and the dispatched tow truck drivers would access the web application using any internet enabled device via an internet browser. The owners of disabled vehicles would be able to send a tow request to any nearest towing service provider in real-time. Another advantage of the proposed system is that the driver's location would be published along with the request that would be sent to the service provider in real-time. This way a service provider would be able to dispatch a towing truck to the scene in the shortest possible time whiles both the client and the company monitors the progress of dispatched driver in real-time.
3.6 Mind Map
Mind maps are diagram, which help us to visualize how ideas are related. This mind map demonstrates the transition between the various activities or screens of the system. The main screen presents options to either login or register as either a client, company, or a driver.
Abbildung in dieser Leseprobe nicht enthalten
Figure 3. 3:The mind map of the system. (Source: Authors own)
3.7 Registration of a New User
Algorithm of New User Registration
1.User starts the application for the first time
2.System requests User Registration identity (ID)
3.User Registration identity (ID) returned
4.User enters user registration details Eg. Username and password
5.Registration request sent to database
6.Validation of user registration checked
7.Database accepts and add the new user (New user added in database)
8.User result returned
9.User returned
10.Registration complete
3.7.1 Flow Chart for New User Registration
Abbildung in dieser Leseprobe nicht enthalten
Figure 3. 4:Logical Representation of User Registration (Source: Authors own)
3.7.2 New user Registration Architecture
Abbildung in dieser Leseprobe nicht enthalten
Figure 3. 5:New user registration architecture (Source: Authors own)
CHAPTER FOUR DESIGN AND IMPLEMENTATION
4.0 Introduction
This Chapter discusses the phases concerned with the development and implementation of the proposed system. The tools used for the development and implementation and the reasons behind the choice of these tools are also discussed. UX designs, data flow diagrams (DFD) and other diagrams depicting the system design and operation are also presented in this chapter.
4.1 Design and development
The design and development phase present some of our designs and development phases, as they are independent. It presents how we want RVTIS to be implemented and some of the prepared designs we have even as the system is still under development.
4.1.1 UX Design
The user experience was very important in the design of this application, as the end user may not have much prior knowledge of using the system, so this aspect of the application was carefully considered and the designs from the initial drawings changed to simplify the interface as much as possible and make the navigation around the application very simple enough that anyone could understand.
4.2 Application Design
The various back end technologies that drive RVTIS system were chosen to best align with the aim of the project and make an efficient system.
4.2.1 Database Design
Client
When deciding what database technology to use for the client, to store client details, SQLite was the obvious option due to its reliability through having 100% coverage.
Server
The database technology chosen for the server was MySQL, due to it being reliable, lightweight and PHP has built-in methods to facilitate and manipulating connecting tables in a MySQL database.
The server database is designed to be simple and quick, with that in mind, the PHP scripts handle the consistency, validation and verification of data being handled by the server.
4.2.2 Entity Relationship (ER) Diagram
The ER diagram shows the relationship among the various entities and attributes of the proposed system. The system's database consists of a user; a company which may have one or more users and branches which can be located in one or more districts of a region and the branch can have one or more truckdrivers; a branch can belong to only one district and a company; a district can belong to only one region and a region may have one or more districts.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 1:Entity relationship diagram. (Authors own)
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 2a: Company Database Table. (Authors own)
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 3b:Tow-truck driver Database table. (Authors own)
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 4c:User Database table. (Authors own)
4.3 Use Case Diagram
The use case diagram shows how the actors would interact with the system to achieve their end goals. The actors of the system are towing companies, owners of disabled vehicles (clients), and tow track drivers. Clients send tow requests to service provider. The sen-ice provider forwards the request to an available tow track driver. Upon receiving the forwarded request from the company, the driver drives to the scene and tows the disabled vehicle.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 5:Use case diagram
4.4 System Prototype Development
The proposed system would be a web application with a front-end and back-end. The frontend was written in CSS and HTML. JavaScript was used to achieve interactivity. A MySQL server or SQLite technology would power the back-end database. PHP was used to achieve dynamic functionality.
The application allows Tow companies to register and login to access their dashboard. The towing truck drivers would be registered by their companies. The system allows drivers to access the platform with their login credentials provided by their company. Clients are able to register and login using the system. They are able to send request for a tow service. The towing companies will then forward the request to their drivers who would receive the request. An assigned driver who is dispatched to the scene can track the location of the disabled vehicle in real-time using the system. The company also tracks the location of both the dispatched driver and the disabled vehicle in real-time.
4.5 SYSTEM INTERFACE
The following are some of the screenshots of interfaces taken from the system.
4.5.1 Main Page
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 6:The main screen.
The main screen provides for three options for the three users, Tow Company, Client, and Tow Truck Driver to choose from. When a user chooses Tow Truck Driver, has another option to login. However, when a user chooses to be either A Tow Company or A Vehicle Owner, two other options appeared to either register as a new user or login as an already registered user.
4.5.2 Instruction on login page
I. Enter username.
II. Enter user password.
III. Click Register now (If the user wants to do so).
IV. Click on Just take me to the dashboard (If the user does not want to go through the registration process due to time constraints).
V. Click on Submit in order to be taken to the respective dashboards.
4.5.3 Login Screen
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 7:The login screen.
Figure 4.5 above shows the login screen for the users, the Tow Company, the Tow Truck Driver and the Client who are already registered in the system. They only need to provide their username and password in order for the system to authorize them.
4.5.4 Instruction on Tow Company registration
I. Enter full name.
II. Enter phone number.
III. Enter username.
IV. Enter user password.
V. Enter confirm password.
VI. Click on submit to submit registration details or close if not interested to exit registration.
Company Registration
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 8:The Tow Company registration page.
The client's registration page is where the user is asked to input some specific information that will help him or her to be part and also gain access to the system.
4.5.5 Instruction on Tow Company's dashboard
I. Add driver.
II. Delete driver.
III. Edit driver.
IV. Add branches.
V. Delete branches.
VI. Edit branches.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 9:A Tow Company's upper dashboard.
The company dashboard consists of Job status, Map, Branches, Drivers, Edit profile, and Sign out.
The Tow Company dashboard here comprises of Drivers name, Username, Phone, and Action to be taken on the Drivers by the Tow Company.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 10:A Tow Company's middle part dashboard.
Figure 4.8 shows the dashboard for A Tow Company which consists of a table comprising of Job status and Branches.
Job status which is used to monitor the activities of Drivers consists of the following;
I. Client Vehicle.
II. Assigned Driver.
III. Driver location.
IV. Destination.
V. ETA (Estimated Time of Arrival).
VI. Job status.
The Branches table consists of the following;
I. Name.
II. District.
III. Region.
IV. Edit.
4.5.6 Instruction on Edit Driver Record
I. Enter Full Name.
II. Enter Phone Number.
III. Click on Submit button to send the request to the server.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 11:A modal of the Tow Company's dashboard.
4.5.7 Instruction on Driver Registration
I. Enter full name.
II. Enter phone number.
III. Enter username.
IV. Enter password.
V. Click on submit to confirm registration or close to close the modal.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 12:Driver registration page.
The driver registration page is where the Tow Company registers a Tow Truck Driver. This officially makes the Tow Truck Driver a member or a worker of the Tow Company. All field marked with * means that it is mandatory or compulsory to fill. When one of the fields is not filled, the Tow Company cannot proceed to submit.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 13: The dashboard for client who did not sign up (anonymous) and did not filter the Tow companies in the system.
4.5.8 Client dashboard
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 14:The dashboard for a registered user and filter the Tow companies in the system.
4.5.9 Instruction on how to send Tow Request
I. Enter car registration number.
II. Select car type.
III. Enter vehicle make.
IV. Enter vehicle model.
V. Enter a short description of the problem.
VI. Click on send request (The request would therefore be sent to the tow company online).
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 15:A modal of the user's dashboard.
Figure 4.13 shows the client's dashboard. It represents the upper part of the dashboard where the client filter and sort tow companies. It contains the Tow Company name, its location, the distance of the Tow Company is away from the client. This part of the dashboard also displays if the Tow Company is online or offline.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 16:The mobile view of anonymous user's dashboard.
4.5.10 Instruction on Client's Registration Page
I. Enter full name.
II. Enter phone number.
III. Enter username.
IV. Enter user password.
V. Enter confirm password.
VI. Click on submit to submit registration details or close if not interested to exit registration.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 17: Client registration page.
4.5.11 Instruction on Client Feedback page
I. Enter Your name.
II. Enter Driver's name.
III. Enter Phone.
IV. Enter Vehicle number.
V. Enter Feedback.
VI. Click on Submit to send feedback or close to cancel the feedback.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 18:Client's feedback page.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 19:Registered user dashboard.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 20:Tow request modal.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 21:SMS Tow request.
Abbildung in dieser Leseprobe nicht enthalten
Figure 4. 22:Incorrect password.
4.6 Implementation
4.6.1 Tools
Tools are device that are used to carry out a particular function and the following were some tools used in the implementation of the project.
- Visual Studio code (VScode): It was the integrated development environment (IDE) used.
- Sdebug : It was used for debugging PHP
- Google map API: It was used to provide mapping, navigation and location services in real time.
- Visio: It was the tool which was used to draw use case design.
-PubNub API:PubNub is a programmable network for creating real-time applications. PubNub is suitable for quickly pushing small messages to one or more devices that can make a connection to the internet using TCP/IP and vice-versa (twoway communication). (How PubNub works, n. d.).
-SMS Gateway:SMS Gateways enable applications to send and receive short message service using a telecommunication network.
-MySQL:This is the language for performing database related queries on the database server.
-SQLite:This is a flat file-based database system which does not require a server to run.
4.6.2 Hypertext Pre-processor (PHP)
Hypertext Pre-processor (PHP)
PHP was the one of the scripting languages used in the implementation of RVTIS which a server-side scripting language is designed for web development but also used as a generalpurpose programming language. It is free and it can interact with many different database languages including MySQL, which is also free from license, and make sense to use with PHP.
PHP is very expedient for website developers who cannot afford the cost of getting other paid website development software. PHP also stores its content in a MySQL database during creation. This allows for editing and manipulation of contents to meet desired layout and user specification. Due to the above under listed qualities of PHP as a language, we have decided to use it for the development of our proposed system, which is a web-based system.
4.6.3 Testing
Testing is the process of checking the quality and the correctness of the system and also check if there are any bugs, defects or errors in the system. Some major importance of testing are as follows;
i. It helps to determine whether or not the system has met the requirement that guided its design and development
ii. It also checks to make sure that the system responds to all kinds of inputs
iii. Checks the performance of the system's functions within an acceptable time.
4.6.4 Development Testing
Development testing entails all the testing activities that were carried out by the team while the system undergoes development. The following were some of the tests conducted on our system while developing it.
i.Unit testing:Individual units of the system were tested out to verify that each subunit of the system fulfils its design specification. This test was carried out to verify that all functions of the application work in isolation as it should. These functions were tested using some form of test cases to check whether they meet the requirement.
ii.Integration testing:This was the next testing done where several individual units were integrated to create a composite component of the system. This involves the flow of the system which was focused on the interaction of users of the system's user interfaces.
iii.System testing:This was the last but not the least test that was carried out on the system. The system testing was carried out to verify that the application as an integrated system met the requirement specification as it was meant for and also determine whether the system was capable of solving the problem that triggered its development.
4.7 Evaluation
The unit testing was carried out to verify that each subunit of the system works perfectly to fulfil the design specification. It also tests all the functionality of the system in isolation to check whether or not the functions work as they should.
The integration testing was also carried out to bind or add all the functions with each subunit in order to have one system. This involves testing of the way the system flows considering interaction of users with the interface.
The system as a whole was then tested to verify that the system as integrated meets the requirement specification. This helps to determine whether or not the system is proficient of solving the problems that prompted its development.
The results from the testing are satisfactory as associated with predicted result. Mandatory fields work perfectly well and will prompt the user not to leave a field empty or blank. Tow Truck Drivers are added, edited, and deleted successfully by Tow Companies when the need arises. A Tow Company was able to monitor its drivers in real-time without any challenges. Clients or vehicle owners were also able to send a Tow request which is also being attended to successfully by a Tow Company.
Password confirmation in registration process of the system also worked well and will trigger the user to re-enter the password again if the two matches.
Validation of username and password in the Login process of the system also worked very well as the will prompt the user to re-enter the username and password again if it does not match the one in the database.
4.8 System Requirements
4.8.1 Functional Requirements
The following are functional the requirements gathered;
For Tow Service Providers, it was required of the system to allow them do the following;
- Dispatch Truck Drivers to incident scene.
- Monitor Truck Driver's location.
- Add branches and manage them.
For Truck Drivers, it is required of the system to allow them do the following;
- Dispatch a tow request message to them.
- Send a feedback to Tow Company upon completion of job
For Vehicle Owners/Clients, it is required of the system to allow them do the following;
- Request of a Tow Service Provider's service through either SMS, Phone Call or Send request to Service Provider's Dashboard via Internet.
- Send a feedback about service rendered to Service Provider
4.8.2 Non-Functional Requirements
-Operating constraints:This the system resources and other software required to run the application. RVTIS has been designed to keep its memory footprint very low. Any device capable of accessing the internet through a browser should be able to run the application easily.
-Usability:This requirement is about the ease of use of the system. RVTIS is designed with ease of use in mind. The interface is very user-friendly.
-Reliability:This is about the possibility of the system to fail due to errors. Both the front-end and backend codes have been written with error handling in place.
CHAPTER FIVE CONCLUSION AND RECOMMENDATION
5.0 Conclusion
Vehicle break downs confront vehicle owners with problems of frustration which cause them to make bad choices or decisions of calling Tow Companies from far away location in order to get assistance. Vehicle breakdown can also cause traffic on our roads which can sometimes lead to road accidents. Based on these problems, it is very crucial to come out with a solution that would help solve these problems.
The development of this project was aimed at providing Real-Time Vehicle Towing Information System that would facilitate real-time response by towing services in order to reduce road accidents resulting from break-down of vehicles.
5.1 Summary of conclusion
In conclusion, Real-Time Vehicle Towing Information System is an information system for Tow Service Providers which help bridge the communication gap between Vehicle Owners, and Tow Companies in real-time when there is breakdown of vehicle on our roads.
5.2 Recommendation / Future work
After carefully studying the literature and completing the project, it is recommended that, any institution who engage in providing a towing service can use the system.
For future works,
- Implementation of payment through mobile money should be incorporated.
- Though the system can be accessed with a browser on any device, the application should be moved to an Android platform.
- Integration of RVTIS database with Driver and Vehicle Licensing Authority (DVLA) database.
REFERENCES
About CarBengkel (n.d). Retrieved on May 27,2018 from https://www.carbengkel.com/about-us
Amreen, F., Pooja, H., & Prajakta. (2014). Accident alert system emergency system.
International Journal of Modern Trends in Engineering and Research
Andoh, D. (2017, September 27). Pay as you tow your vehicles — Osafo-Maafo. Retrieved on November 26, 2017 from https://www.graphic.com.gh/news/general-news/tow- levy-scraped-owners-of-broken-down-vehicles-to-pay-for-towing.html
Badu-Boateng, E. (2017, July 24). Towing levy in Ghana - What citizens want and what spectators want implemented. Retrieved from https://www.myjoyonline.com/opinion/2017/july-24th/towing-levy-in-ghana-what- citizens-want-and-what-spectators-want-implemented.php
Boi-Bi-Boi, R. N. A. L. (2010). Assessment of training programmes in the motor traffic and Transport unit of the Ghana Police Service[pdf]. Retrieved on November 26, 2017 from https://erl.ucc.edu.gh/jspui/bitstream/123456789/1219/1/BOI-BI- BOI%202010.pdf
Bulgacs, Simon (2013). The first phase of creating a standardised international challenges for the Future". Journal of the Association for Information Systems. 14 (2), 72-121.
Decision support systems - DSS (definition) (n. d). Retrieved on November 3, 2017
from http://www.informationbuilders.com/decision-support-systems-dss
El-Medany, W., Al-Omary, A., Al-Hakim, R., Al-Irhayim, S. & Nusaif, M. (2010). A
Cost Effective Real-Time Tracking System Prototype Using Integrated GPS/GPRS
Module. 6th International Conference on Wireless and Mobile Communications (ICWMC) (pp. 521-525). Valencia, Spain: IEEE
First Call Breakdown Assistance and Towing Services Limited (n.d.). Retrieved on May 27,
2018 from http://firstcallgh.com/about-us/
Government discontinues mandatory towing levy. (2017, August 20). Retrieved from https://www.graphic.com.gh/news/general-news/government-discontinues- mandatory-towing-levy.html
Garg, S.K. (2005).European Patent No. EPGB2322334.Munich Germany: European
Khedher, M. A. A. (2011). Hybrid GPS-GSM localization of automobile tracking
system. International Journal of Computer Science and Information Technology, 3(6), 75-85.
Khoo J. S, Ahmad S. B, & Kamal K., (2016). A Car Breakdown Service Station Locator System. International Journal of Applied Engineering Research. ISSN 0973-4562 Volume 11, pp. 11037-11040.
Le-Tien, T. & Phung-The, V. (2010). Routing and Tracking System for Mobile
Vehicles in Large Area... DELTA (p./pp. 297-300): IEEE Computer Society. ISBN: 978-0-7695-3978-2
Motor Traffic & Transport Unit (2017, November 26). Retrieved from http://www.police.gov.gh/motor-traffic---transport.html
Munaf, S., Jayanthi, A. N., & Malathi, L. (2017) Automatic RF alert system to avoid
vehicle accident and rescue using wireless control techniques. International Advanced Research Journal in Science, Engineering and Technology, 4(1).
Namrata, H. S., Damini, S. P., Snehal, D. T. & Aditi, V. R. (2016). Real Time
Vehicle Accident Detection and Tracking Using GPS and GSM. International Journal on Recent and Innovation Trends in Computing and Communication, 4, 479-482. ISBN: 2321-8169.
National Road Safety Commission Act 567, 1999. Ghana Statutes. [doc] Retrieved on November 26, 2017 from
https://jtighana.org/new/links/trainingmaterials/ACT%20567.doc
NRSC to introduce commercial towing services in Ghana. (2009, June 18). Retrieved on November 26, 2017 from https://www.ghanaweb.com/GhanaHomePage/NewsArchive/NRSC-to-introduce- commercial-towing-services-in-Ghana-164023
NRSC and MTTD towing zones. (2010, August 4). The truck driver's guide [pdf]. Retrieved from http://www.borderlesswa.com/sites/default/files/resources/aug10/Drivers%20Guide% 20to%20Ghana%20large.pdf
NRSC and MTTD towing zones. (2010, August 4). The truck driver's guide
[pdf]. Retrieved from http://www.borderlesswa.com/sites/default/files/resources/aug10/Drivers%20Guide% 20to%20Ghana%20large.pdf
Pethakar, S. S., Srivastava, N., & Suryawanshi, S. D. RFID, GPS and GSM based vehicle tracing and employee security system. International Journal of Advanced Research in Computer Science and Electronics Engineering, 1(10), 91-96.
Road Traffic Act 683, 2004. Ghana Statutes. [pdf] Retrieved on November 26, 2017 from http://moj.gov.jm/sites/default/files/laws/Road%20Traffic%20Act_1.pdf
Singh, P., Sethi, T., Biswal, B. B. & Pattanayak S. K. (2015). A Smart Anti-theft System for Vehicle Security. International Journal of Materials, Mechanics and Manufacturing, 3(4).
Skowron, K. & Kochel, M. (2016). Tracked vehicle towing system [pdf]. Retrieved on November 26, 2017 from http://www.obrum.gliwice.pl/upload/downloads/18.- tracked-vehicle-towing-system-maciej-kochel-krzysztof-skowron-1465551308.pdf
Stair, R. M. & Reynolds, G. W. (2010). Principles of Information Systems [pdf].
Retrieved from
https://drive.uqu.edu.sa/_/fbshareef/files/principles%20of%20information%20systems %209th%20-stair,%20reynolds.pdf.
Stuhlman, D. D. (2012). Knowledge management terms. Stuhlman Management technological implementation framework/software application. Int. J. Business and Systems Research, 7 (3), 250. doi:10.1504/IJBSR.2013.055312.
Types of Towing (n.d.). Retrieved on May 29, 2018
from http://www.goldengatetow.com/emergency-towing-service-san-francisco.html
APPENDICES
Sample Project Codes
Index page
<?php
include "connect-sqlite.php"; ob_start();
$idcompany='';
$tether=false;
$passwordreset=false;
$phone='';
$name='';
$page='index.php';
$anonymous=false;
$who = "";
$user_id = -1;
$valid = false;
$secret_word = "tims-dope";
$error = array('cause' => '', 'url' => "", 'form'=>'');
$username="";
$password;
if (isset($_POST["who"])) {
$who = $_POST["who"];
$username = $_POST['username'];
$password = $_POST['password'];
if ($who == "user") {
$error['form']='#userloginform';
$error['url']='user.php?loggedin=true';
$stmt = $db->prepare("select * from $who where username=?"); $stmt->execute([$username]);
$row = $stmt->fetch();
if (!$row) {
$error["success"] = false;
$error['reason'] = 'The username is incorrect!';
$error['cause']='username';
echo json_encode($error);
exit;
}
$stmt = $db->prepare("select * from $who where username=? and password=?");
$stmt->execute(["$username", "$password"]);
$row = $stmt->fetch();
if (!$row) {
$error["reason"] = "The password is incorrect! You may reset it if you have forgotten.<div><button class='btn btn-primary btn-sm reset-btn1 w3-center w3-margin' data- username='$username' data-who='$who'>Reset Password</button><button class='btn btn- default cancel' onclick='(function (args) {
$.notifyClose();
})()'>Close</button></div>";
$error['success'] = false;
$error['cause']='password';
echo json_encode($error);
exit;
} else {
session_name('user');
session_set_cookie_params(time() + 3600 * 24 * 30, '/tims-alpha/');
session_start();
session_regenerate_id();
setcookie(session_name(), session_id(), time() + 3600 * 24 * 30, '/tims-alpha/');
$_SESSION['user'] = $_POST['username'];
$_SESSION['username'] = $_POST['username'];
$_SESSION['phone'] = $row['phone'];
$_SESSION['name'] = $row['name'];
$_SESSION['tid']=$row['iduser'];
$error['success'] = true;
echo json_encode($error);
exit;
}
} elseif ($who == "truckdriver") {
$error['form']='#truckdriverloginform';
$error['url']='truckdriver.php';
$stmt = $db->prepare("select * from truckdriver where username=?");
$stmt->execute([$username]);
$row = $stmt->fetch();
if (!$row) {
$error["success"] = false;
$error['reason'] = 'The username is incorrect!';
$error['cause']='username';
echo json_encode($error);
exit;
}
$stmt = $db->prepare("SELECT c.name companyname, c.username companyusername,t.username, t.phone, t.name, t.idtruckdriver, b.idbranch, c.idcompany, b.name branch from truckdriver t left join branch b on t.idbranch=b.idbranch left join company c on c.idcompany=b.idcompany where t.username=? and t.password=?");
$stmt->execute(["$username", $password]);
$row = $stmt->fetch();
if (!$row) {
$error["reason"] = "The password is incorrect! You may reset it if you have forgotten.<div><button class='btn btn-primary btn-sm reset-btn1 w3-center w3-margin' data- username='$username' data-who='$who'>Reset Password</button><button class='btn btn- default cancel' onclick='(function (args) {
$.notifyClose();
})()'>Close</button></div>";
$error['success'] = false;
$error['cause']='password';
echo json_encode($error);
exit;
} else {
session_name('truckdriver');
session_set_cookie_params(time() + 3600 * 24 * 30, '/tims-alpha/'); session_start();
session_regenerate_id();
setcookie(session_name(), session_id(), time() + 3600 * 24 * 30, '/tims-alpha/'); $_SESSION['truckdriver'] = $_POST['username'];
$_SESSION['username'] = $_POST['username']; $_SESSION['phone'] = $row['phone'];
$_SESSION['name'] = $row['name']; $_SESSION['branch']=$row['branch']; $_SESSION['companyname']=$row['companyname'];
$_SESSION['companyusername']=$row['companyusername'];
$error['success'] = true;
echo json_encode($error);
exit;
}
} elseif ($who == "company") {
$error['form']='#companyloginform';
$error['url']='company.php';
$stmt = $db->prepare("select * from company where username=?"); $stmt->execute([$username]);
$row = $stmt->fetch();
if (!$row) {
$error["success"] = false;
$error['cause']='username';
$error['reason'] = 'The username is incorrect!';
echo json_encode($error);
exit;
}
$stmt = $db->prepare("select * from company where username=? and password=?");
$stmt->execute(["$username", "$password"]);
$row = $stmt->fetch();
if (!$row) {
$error["reason"] = "The password is incorrect! You may reset it if you have forgotten.<div><button class='btn btn-primary btn-sm reset-btn1 w3-center w3-margin' data- username='$username' data-who='$who'>Reset Password</button><button class='btn btn- default cancel' onclick='(function (args) {
$.notifyClose();
})()'>Close</button></div>";
$error['success'] = false;
$error['cause']='password';
echo json_encode($error);
exit;
} else {
session_name('company');
session_set_cookie_params(time() + 3600 * 24 * 30, '/tims-alpha/');
session_start();
session_regenerate_id();
setcookie(session_name(), session_id(), time() + 3600 * 24 * 30, '/tims-alpha/');
$_SESSION['company'] = $_POST['username'];
$_SESSION['username'] = $_POST['username'];
$_SESSION['phone'] = $row['phone'];
$_SESSION['name'] = $row['name'];
$error['success'] = true;
echo json_encode($error);
exit;
}
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>RVTIS©</title>
<link rel="stylesheet" href="assets/css/w3.css">
<link rel="stylesheet" href="assets/css/font-awesome.css">
<link rel="stylesheet" href="assets/css/ionicons.css">
<link rel="stylesheet" href="assets/css/bootstrap.css">
<link rel="stylesheet" href="assets/css/offline-theme-chrome-indicator.css">
<link rel="stylesheet" href="assets/css/custom.css">
<link rel="stylesheet" href="assets/css/animate.css/animate.css">
<link rel="icon" href="favicon.ico" type="image/x-icon">
</head>
<body>
<div class="container w3-round-large" style="background-image:url('bg.jpg');">
<div class="row">
<div class="col-lg-12 ">
<h1 class="h1 w3-center w3-animate-top w3-margin well w3-hide-small w3-amber ">Real-Time Vehicle Towing Information System
<p class="">(RVTIS
<sup></sup>©</sup>)</p>
</h1>
<h3 class="h3 w3-center w3-animate-top w3-margin well w3-hide-large w3-hide- medium w3-amber">Real-Time Vehicle Towing Information System
<p class="">(RVTIS
<sup>©</sup>)</p>
</h3>
<space class="w3-margin"></space>
<h3 class="w3-margin h3 w3-center tell-us w3-amber w3-text-black w3-round-large w3-card fadeInDownBig">
<span class="">Who are you?</span>
<span class="glyphicon glyphicon-sunglasses"></span>
</h3>
<space class="w3-margin"></space>
<div class="col-lg-6 col-lg-push-3 col-md-6 col-md-push-3 col-xs-12 w3-amber w3- round-large">
<form action="#" class="form-horizontal w3-padding-16">
<div class="input-group ">
<span class="input-group-addon w3-amber">
<input type="radio" aria-label="..." name="user" id="user1" data-user="a vehicle owner" value="user1">
</span>
<input type="text" class="form-control text-bold w3-large w3-amber" aria- label="..." value="A Vehicle Owner?" data-user="a vehicle owner" data-target="#userlogin"
data-toggle="modal" onclick="(()=>{$('#user1').click(); })();" readonly>
</div>
<div class="input-group">
<span class="w3-amber input-group-addon">
<input type="radio" aria-label="..." name="user" id="user2" value="user2" data- user="a tow truck driver">
</span>
<input type="text" class="form-control inp text-bold w3-large w3-amber" aria- label="..." value="A Tow Truck Driver?" data-user="a tow truck driver" onclick="(()=>{$('#user2').click()})();"
data-target="#truckdriverloginmodal" data-toggle="modal" readonly> </div>
<div class="input-group">
<span class="w3-amber input-group-addon">
<input type="radio" aria-label="..." name="user" id="user3" value="user3" data- user="a tow company">
</span>
<input type="text" class="form-control inp text-bold w3-large w3-amber" aria- label="..." value="A Tow Company?" data-user="a tow company" data-toggle="modal"
data-target="#companyloginmodal" onclick="(()=>{$('#user3').click()})();" readonly>
</div>
<space class="w3-margin"></space>
<div class="w3-center w3-margin begin hide hide-registration-button">
<div>
<p class="w3-margin-right" title="Click this button below to begin registration">Click this button
<span class="glyphicon glyphicon-arrow-down"></span> to register <span></span>
</p>
<button type="button" class="btn btn-default registration-button" data- toggle="modal" data-target="">Begin Registration</button>
<p class="w3-margin">or</p>
</div>
Click this to login
<span class="glyphicon glyphicon-arrow-right"></span>
<button type="button" class="btn btn-default hide" data-toggle="modal" data- target="">Login</button>
<span></span>
</div>
</form>
</div>
</div>
</div>
</div>
<!-- Modal -->
<div class="modal fade" id="resetPassword" tabindex="-1" role="dialog" aria- labelledby="modelTitleId" aria-hidden="true"
data-dismiss="false">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
<h4 class="modal-title" id="modelTitleId">Enter Secret Pin</h4>
</div>
<div class="modal-body">
<div class="form-group">
<label for="pin">Secret Pin</label>
<input type="text" class="form-control" name="pin" id="pin" aria- describedby="helpId" placeholder="" required>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data- dismiss="modal">Close</button>
<button type="submit" class="btn btn-primary">Reset Password</button> </div>
</div>
</div>
</div>
<!-- Modals.html -->
<?php include('modals.html'); ?>
<!-- Modals.html // -->
<script>
//# sourceURL=index1.js
function initialize() { }
window.initialize = initialize;
var goggle = $(".glyphicon-sunglasses");
function rotateGoggle() {
if (goggle.hasClass("rotate1")) {
oldClass = "rotate1";
newClass = "rotate2";
goggle.switchClass(oldClass, newClass);
} else if (goggle.hasClass("rotate2")) {
oldClass = "rotate2";
newClass = "rotate1";
goggle.switchClass(oldClass, newClass);
} else {
goggle.addClass("rotate1");
}
var t; // to clear interval
$(() => {
t = setInterval(rotateGoggle, 10000);
// setInterval(()=>{button.toggle("explode")}, 1000);
});
</script>
<script>
//# sourceURL=index2.js
var gcaptchaChecked = false;
var gcaptchaLoaded = false;
window.onload = function name() {
$.fn.extend({ showHidePopover: showHidePopover
});
$("#companyregistrationform").validator().on('submit', function name(evt) { if (evt.isDefaultPrevented()) {
return false;
}
var form = $(this);
var url = "company.php";
$.post("submit_registration.php", form.serialize())
.done(function (result) {
try {
let json = JSON.parse(result);
if (!json.has_error) {
$('.modal').modal('hide');
location.href = 'company.php?newregistration=true'
} else {
json.data.forEach(element => {
if (element.cause == 'username') {
$('#companyregistrationform input[name="username"]').focus() $.notify('This username has already been taken', {
z_index: 1060, type: 'info',
type: 'warning',
icon: 'glyphicon glyphicon-alert'
})
}
});
}
} catch (error) {
log(error);
}
})
evt.preventDefault()
});
// $("[data-toggle='popover']").popover();
// $(".modal-footer button:eq(0) ").click(() => {
// $(".control-feedback").addClass("hidden").html("");
// $(".has-error").removeClass("has-error");
// });
$("#userregistrationform").on('submit', function name(e) {
var form = $(this);
if (e.isDefaultPrevented()) {
return false;
}
$.post("submit_registration.php", form.serialize())
.done(function (result) {
try {
let json = JSON.parse(result);
if (!json.has_error) {
$('.modal').modal('hide'); window.location.href = 'user.php?newregistration=true';
} else {
json.data.forEach(element => {
if (element.cause == 'username') {
$('#userregistrationform input[name="username"]').focus() $.notify('This username has already been taken', {
z_index: 1060, type: 'info',
type: 'warning',
icon: 'glyphicon glyphicon-alert'
})
}
});
}
} catch (error) {
log(error);
}
})
e.preventDefault()
});
}
function log(params) {
console.log(params);
function isEmpty(cnt) {
let control = cnt instanceof jQuery ? cnt : $(cnt);
let text = control.val().trim();
if (text == "") {
control.attr("data-content", "<span class='text-danger'>This field is required!</span>");
control.showHidePopover();
control.focus();
return true;
}
return false;
}
var checkConnectionTimer;
var connectiontesturl = "https://www.google.com/recaptcha/api2/reload?k=6LcCmUAUAAAAAJRwh9NT9cT_LV5 WsawVzhMv667B";
function showHidePopover(timeout = 7000, content = "") {
this.attr("data-content", '<span class='text-danger'>${content}</span>');
this.popover("show");
setTimeout(() => {
this.popover("hide");
}, timeout);
}
addEventListener('load', function (event) {
$(document).on('click', '.reset-btn2', function (evt) {
$.notifyClose();
})
$(document).on('click', '.reset-btn1', (evt) => {
$(".modal").modal("hide");
var username = $(evt.currentTarget).attr('data-username');
var who = $(evt.currentTarget).attr('data-who');
var modal = who + 'login';
$.get('resetpassword.php?username=' + username + '&who=' + who, function (ret) {
//$.notifyClose()
window.notif.update({
message: 'We have sent a pin to your phone number. Please use the pin as your temporal login password. Make sure you set a new password. <br><button class="btn btn- success btn-sm reset-btn2" data-target="#${modal}" data-toggle='modal'>OK</button>',
type: 'success',
allow_dismiss: false
})
})
})
$('.login-form').validator().on('submit', function functionName(evt) {
if (evt.isDefaultPrevented()) {
return false;
}
$.post('index.php', $(this).serialize(), function (ret) {
$.notifyClose()
try {
var json = JSON.parse(ret);
var form = json.form
if (json.success) {
location.href =json.url;
} else {
var cause = json.cause
if (cause == 'password') {
$.notify({
message: json.reason,
}, { type: 'danger', z_index: 1060, delay:0
}) $(form).find('input[name="password"]').focus();
} else { $.notify({ message: json.reason,
}, { type: 'danger', z_index: 1060,
}) $(form).find('input[name="username"]').focus();
}
}
} catch (err) {
}
}) evt.preventDefault();
}) }) </script> </body>
</html>
[...]
- Quote paper
- Hayford Adzorlolo (Author), Appiah-Kubi Eric Clinton (Author), Gyan Shadrack (Author), 2018, Real-Time Vehicle Towing Information System (RVTIS). Design and Implementation, Munich, GRIN Verlag, https://www.grin.com/document/1327812
-
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X. -
Upload your own papers! Earn money and win an iPhone X.