0% found this document useful (0 votes)
5 views91 pages

Updated Document

The document presents a project report on the 'Road Accident Reporting System,' developed by students at Sandip University as part of their Bachelor in Computer Application. The system is a mobile application designed to facilitate quick and efficient reporting of road accidents using GPS and cloud technology, aiming to improve emergency response times and enhance road safety. The report includes an overview of the project's objectives, methodologies, and potential future expansions.

Uploaded by

gautamail50
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views91 pages

Updated Document

The document presents a project report on the 'Road Accident Reporting System,' developed by students at Sandip University as part of their Bachelor in Computer Application. The system is a mobile application designed to facilitate quick and efficient reporting of road accidents using GPS and cloud technology, aiming to improve emergency response times and enhance road safety. The report includes an overview of the project's objectives, methodologies, and potential future expansions.

Uploaded by

gautamail50
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

“ROAD ACCIDENT REPORTING SYSTEM”

A Project Report submitted in partial fulfillment of the requirements for the


Bachelor in Computer Application

Sandip University, Madhubani


Towards Partial Fulfillment for the Award of

Bachelor in Computer Application


(School of Computer Science & Engineering)

Submitted By

Ronita Kumari 230205011007


Chanchal Kumari 230205011026
Sapna Gupta 230205011099

Under the Supervision

“Prof Pranav Bhaskar”

Assistant Professor, Sandip University,


Madhubani

School of Computer Science & Engineering

A.Y. 2025-26

1
School of Computer Science & Engineering

RECOMMENDATION
This is to certify that the work embodied in this Project entitled “Road accident reporting system”
being submitted by “Ronita kumari(23205011007), Chanchal kumari(230205011026), Sapna
gupta(230205011026)” in partial fulfillment of the requirement for the award of Bachelor in
Computer Application to School of Computer Science & Engineering, Sandip University,
Madhubani during the academic year 2025-26 is a record of bonafide piece of work, carried out
by him under my supervision and guidance.

Approved & supervised by:

“Prof Pranav Bhaskar”

Assistant Professor, Sandip University, Madhubani

Forwarded by

Mr. Mandan Mishra


Asst. Professor & Head (CA)
School of Computer Science & Engineering

2
School of Computer Science & Engineering

CERTIFICATE

The Project entitled “Road accident reporting system” being submitted by “Ronita kumari
(23205011007), Chanchal kumari (230205011026), Sapna gupta (230205011026)” has been
examined by us and is here by approved for the award of degree Bachelor in Computer
Application in School of Computer Science & Engineering, for which it has been submitted. It
is understood that by this approval the undersigned do not necessarily endorse or approve any
statement made, opinion expressed or conclusion drawn therein but approve the dissertation only
for the purpose for which it has been submitted.

Internal Examiner External Examiner


Date: Date:

3
School of Computer Science & Engineering

DECLARATION

I hereby declare that the work, which is being presented in the dissertation, entitled “Road
accident reporting system”, partial fulfillment of the requirements for the award of degree of
Bachelor in Computer Application submitted in the School of Computer Science &
Engineering (Sandip University, Madhubani) is an authentic record of my own work carried
under the guidance of “Prof. Ratneshwar Kumar Singh”. I have not submitted the matter embodied
in this report for award of any other degree.

Ronita kumari (230205011007)


Chanchal kumari (230205011026)
Sapna gupta (23020501099)

4
ACKNOWLEDGEMENT

I take the opportunity to express my cordial gratitude to “Prof Pranav Bhaskar”, Assistant
Professor in the School of Computer Science & Engineering, Sandip University, Madhubani
for the valuable guidance and inspiration throughout the dissertation work. I feel thankful for
his innovative ideas, which led to successful completion of this work.

I give special thanks to Dr. Brajesh Kumar, Associate Dean, School of Computer Science &
Engineering, Sandip University, Madhubani to always being willing to help find solutions to any
problems I had with my work.

I would also like to thanks Mr. Mandan Mishra, HOD, Computer Application, Sandip
University, Madhubani for providing additional guidance and insight into my research work.

Lastly but not least I must express my heartfelt thanks to my parent, family members and friends
who gave me the moral support without which it was impossible to complete my project work.
With this note I thank everyone for the support.

“Ronita kumari
Chanchal kumari
Sapna gupta”

5
INDEX

Sr. No. CHAPTER PAGE No.


01 List Of Figures V

02 Abstract 1
03 Chapter 1: Introduction
 Background 2-7
 Impotence and relevance
04 Chapter 2: Literature Review
 Research papers
 Summary of existing work 8 - 14
 Comparative analysis
 Identification of research gap

05 Chapter 3: System Analysis


3.1 Existing system
 Description of current approaches
3.2 Limitations of Existing System
15- 22
 Technical and practical limitations
3.3 Proposed System
 Overview of solution
06 Chapter 4: System Design
 System architecture diagram
 Data flow diagram 23 - 26
 Flowcharts
 Module design
07 Chapter 5: methodology
 Step – by – step approach 27 - 31
 Algorithm or techniques used
 Mathematical model
 Workflow explanation

ii
08 Chapter 6: Implementation
 Tools and technologies used
 Hardware and software requirements
 Dataset description
32 - 63
 Coding approach / modules
 Screenshots of implementation

09 Chapter 7: Result And Discussion


 Output results
 Performance metrics 64 -66
 Tables and graphs
 Comparison
10 Chapter 8: Advantage and Limitations
 Benefits of proposed system 67 - 70
 Drawbacks or constraints
11 Chapter 9 : Conclusion
 Summary of work
 Achievement of objectives 71 - 73
 Final outcomes

12 Chapter 10 : Future Scope


 Possible improvement
 Extensions of project 74 -78
 Research direction
13 References
 Research papers
 Books 79
 Website

iii
LIST OF FIGURES

Sr. No. Name Page No.


01 Data Flowchart Diagram 24

02 Architecture Diagram 24

03 Flowchart 25

04 Login screen 60

05 Registration screen 61

06 Dashboard / Home screen 61

07 Accident reporting screen 62

08 GPS / Map screen 63

09 Notification screen 63

10 Performance graph 66

iv
Abstract

Road accidents are a major public safety concern across the world and result in a large number
of injuries and fatalities every year. One of the biggest challenges in accident situations is the
delay in reporting the incident and providing immediate medical assistance to victims. In many
cases, accident victims do not receive timely help because the accident location is not reported
quickly or accurately to emergency services. With the advancement of mobile technology and
internet connectivity, it has become possible to develop smart systems that can improve accident
reporting and emergency response.

The Road Accident Reporting System is a mobile-based application designed to enable users
to report accidents quickly and efficiently using their smartphones. The application allows users
to submit accident reports by capturing important information such as the accident location
through GPS, images of the accident scene, and a brief description of the incident. This
information is then transmitted to a centralized cloud database where it can be accessed by
emergency authorities such as police, ambulance services, and nearby hospitals.

The system is developed using Flutter, an open-source framework for building cross-platform
mobile applications, and Firebase, a cloud-based backend platform that provides services such
as authentication, real-time database storage, and cloud messaging. These technologies allow the
system to store accident reports securely and send real-time notifications to emergency responders.

One of the major advantages of this system is that it reduces the time required to inform authorities
about accidents. By automatically capturing GPS location data and storing accident information
in the cloud, the system ensures that emergency responders receive accurate and timely
information. This can significantly improve response times and help save lives.
Additionally, the system creates a centralized database of accident reports that can be used for
analysis and research. Authorities can study accident patterns, identify high-risk areas, and develop
better road safety policies based on the collected data.

Chapter 1: Introduction
1
i. Background of the Project

Road accidents have become a major global issue, causing a significant number of injuries and
fatalities every year. With the rapid increase in the number of vehicles, poor road conditions, lack
of traffic awareness, and violation of traffic rules, accidents are becoming more frequent.
According to various reports, a large percentage of accident victims lose their lives due to delays in
receiving timely medical assistance.

One of the main challenges in accident situations is the delay in reporting the incident to
emergency services. In many cases, victims are unable to contact authorities due to severe injuries,
while bystanders may not know how to report the accident properly or provide accurate location
details. Traditional methods of reporting accidents, such as phone calls to emergency helplines, are
often inefficient and time-consuming. These methods rely heavily on manual communication,
which can lead to confusion, incorrect information, and delayed response.

With the advancement of mobile technology, GPS, and internet connectivity, it has become
possible to develop smart solutions that can improve accident reporting systems. Smartphones are
now widely used and come equipped with features such as location tracking, cameras, and internet
access, which can be utilized to create efficient reporting systems.

The Road Accident Reporting System is developed as a solution to these problems. It uses a
mobile application to allow users to report accidents instantly by capturing important details such
as GPS location, images, and descriptions. This information is sent to a centralized cloud database,
where it can be accessed by emergency services like police, ambulance, and hospitals.

The background of this project highlights the need for a modern, technology-driven solution to
reduce delays in accident reporting and improve emergency response time. By integrating mobile
applications with cloud computing and GPS technology, the system aims to enhance road safety
and save lives.

2
ii. Importance and Relevance of the Project

The Road Accident Reporting System is highly important and relevant in today’s world due to
the increasing number of road accidents and the need for faster emergency response systems. Road
safety has become a major concern, especially in developing countries where traffic density is high
and awareness of road rules is limited.

Importance of the Project

One of the primary reasons for the importance of this project is the ability to reduce the delay in
accident reporting. In many accident cases, victims do not receive immediate help due to a lack
of communication with emergency services. This system allows users to report accidents instantly,
ensuring that authorities are informed without delay.

Another important aspect is accurate location tracking. The use of GPS technology helps in
identifying the exact location of the accident, which eliminates confusion and helps emergency
responders reach the site quickly.

The project also plays a crucial role in saving lives. Faster reporting and response can significantly
reduce the number of fatalities and serious injuries caused by road accidents.

Additionally, the system helps in creating a centralized database of accident records. This data
can be used by authorities to analyze accident patterns, identify high-risk areas, and implement
better road safety measures.

Relevance of the Project

The project is highly relevant in the modern digital era where smartphones and internet
connectivity are widely available. The use of mobile applications for solving real-world problems
has become very common, making this system practical and easy to implement.

3
The integration of technologies like Flutter, Firebase, GPS, and cloud computing makes the
system efficient and scalable. It aligns with the concept of smart cities and digital
transformation, where technology is used to improve public services and safety.

Moreover, the project is relevant for government authorities, traffic management departments,
hospitals, and emergency services, as it provides a reliable system for receiving real-time
accident information.

iii. Problem Statement


Road accidents have become one of the leading causes of injuries and fatalities worldwide. The
increasing number of vehicles, poor road infrastructure, lack of traffic awareness, and violation of
traffic rules contribute significantly to the rising number of accidents. Despite various safety
measures taken by authorities, managing accident situations effectively remains a major challenge.

One of the most critical problems in accident scenarios is the delay in reporting the incident to
emergency services. In many cases, accident victims are unable to inform authorities due to severe
injuries, unconsciousness, or panic. Even when bystanders are present, they may not know how to
report the accident properly or may provide incorrect location details. This delay in communication
often results in late arrival of ambulance and police services, which can increase the severity of
injuries and even lead to loss of lives.

Traditional accident reporting systems mainly depend on manual methods, such as phone calls to
emergency helplines or police stations. These methods are often inefficient because they require
the caller to describe the accident location accurately, which can be difficult in unfamiliar areas.
Miscommunication and lack of precise information can further delay the response time of
emergency services.

Another major issue is the lack of a centralized system for storing and analyzing accident data.
Accident records are often maintained manually or in isolated systems, making it difficult for
authorities to identify accident-prone areas or analyze patterns. Without proper data analysis, it
becomes challenging to take preventive measures and improve road safety.
4
Therefore, there is a need for a modern, technology-based solution that can simplify accident
reporting, provide accurate location information, and ensure quick communication with emergency
services. The Road Accident Reporting System aims to address these challenges by providing a
mobile-based platform that enables real-time accident reporting, GPS-based location tracking, and
centralized data management.

iv. Objectives of the Project

The main objective of the Road Accident Reporting System is to develop a smart and efficient
mobile application that enables users to report road accidents quickly and accurately. The system
aims to improve emergency response time and enhance road safety using modern technologies.

 Primary Objectives

 To develop a mobile-based application for real-time accident reporting


 To reduce the delay in informing emergency services
 To provide accurate accident location using GPS technology
 To ensure quick communication between users and authorities

 Secondary Objectives

 To design a user-friendly interface for easy reporting


 To allow users to upload images and accident details
 To store accident data in a centralized cloud database (Firebase)
 To send real-time notifications to police, ambulance, and hospitals

 Technical Objectives

5
 To implement the system using Flutter framework
 To use Firebase services for authentication, storage, and database
 To integrate GPS and location services
 To ensure data security and reliability

 Analytical Objectives

 To create a database for analyzing accident patterns


 To help identify accident-prone areas
 To support authorities in decision-making and planning

v. Scope of the Project


The Road Accident Reporting System is designed to provide a smart and efficient solution for
reporting road accidents using a mobile application. The scope of this project focuses on
improving communication between users and emergency services, reducing response time, and
enhancing road safety.

 Current Scope

The system covers the following functionalities:

 Enables users to report accidents in real time using a mobile application


 Captures accurate GPS location of the accident automatically
 Allows users to enter accident details such as description and type
 Provides facility to upload images of the accident scene
 Sends real-time notifications to emergency services (police, ambulance, hospitals)
 Stores all accident data in a centralized cloud database (Firebase)

6
 System Coverage

 Works on Android smartphones


 Requires internet connectivity for real-time data transmission
 Uses GPS services for location tracking
 Supports user authentication for secure access

 Limitations of Scope

 The system depends on internet availability


 Accuracy may vary due to GPS limitations
 Currently supports manual accident reporting only
 Not directly integrated with all government emergency systems

 Future Scope Expansion

The project can be extended in the future by adding:

 Automatic accident detection using sensors


 AI-based analysis of accident data
 Integration with traffic management systems
 Development of a web dashboard for authorities
 Multi-language support for wider usability

7
Chapter 2: Literature Review

 Research paper

The literature review provides an overview of existing research and technologies related to accident
detection, reporting systems, and emergency response solutions. Various researchers have
proposed systems using mobile applications, GPS, IoT, and artificial intelligence to improve road
safety and reduce response time.

1. Accident Detection and Alert System using Mobile Phones

A study proposed a mobile-based accident detection system that uses smartphones to detect accidents
and notify emergency contacts. The system automatically sends location coordinates and Google
Maps links to responders, helping them reach the accident site quickly. This approach reduces
delays in emergency communication and improves coordination among authorities.

2. Android-Based Crash Detection System using Machine Learning

Recent research suggests the use of machine learning algorithms along with GPS and accelerometer
sensors for detecting accidents. The system analyzes sensor data to identify crash conditions and
sends alerts to emergency services. The study highlights that machine learning improves accuracy
and reduces false alarms in accident detection systems.

3. Smart Rescue System using Android Smartphone

8
This research focuses on using smartphone sensors such as accelerometers to detect accidents and
provide real-time location tracking. The system automatically informs emergency responders and
allows them to track the victim’s location. It significantly increases survival chances by reducing
response time.

4. AI-Based Vehicle Crash Detection and Notification System (2026)

A recent study introduced an AI-based system that integrates sensors, GPS, and cloud platforms
like Firebase to detect crashes and send instant notifications. The system provides real-time data
transmission and ensures low-latency communication, which is crucial for emergency response.

5. Android Application for Real-Time Accident Detection

This research presents a system that integrates multiple modules such as user, ambulance, hospital,
and police. It uses GPS and sensors to detect accidents and ensures coordination between different
emergency services. The study shows that such systems can significantly reduce response time and
improve rescue operations.

6. IoT-Based Accident Detection and Tracking System

In this study, IoT devices such as ESP32, tilt sensors, and accelerometers are used for detecting
accidents. The system uses Firebase for real-time communication and location tracking. It enables
authorities to monitor accidents and respond quickly, improving overall road safety.

7. IoT Accident Detection and Rescue System (2026)

9
This research combines IoT devices and mobile applications to automate accident detection and
emergency communication. The system eliminates dependency on manual reporting and ensures
automatic alerts with location data. It is considered a scalable and cost-effective solution for
modern road safety systems.

8. Intelligent Accident Detection and Notification System

This study proposes a system that uses GPS and GSM technologies to detect accidents and send
alerts to nearby hospitals and police stations. The system provides location-based notifications and
helps emergency responders reach the accident site efficiently.

9. Computer Vision-Based Accident Detection (Smart City Systems)

Modern research explores the use of computer vision and surveillance cameras to detect accidents
automatically. These systems analyze video data using AI algorithms and send alerts to authorities.
Such systems are highly useful in smart cities for real-time monitoring and accident prevention.

10. Collision Detection using Computer Vision and AI

Another study proposes detecting accidents using CCTV cameras and machine learning
algorithms. The system uses vehicle tracking and collision detection techniques to identify
accidents and notify emergency services with location and time details.

10
 Summary of Existing Work

The review of existing research and systems shows that several approaches have been developed to
improve accident detection and reporting. Most of the existing systems focus on using modern
technologies such as mobile applications, GPS, IoT devices, and artificial intelligence to reduce
response time and improve emergency services.

Many traditional systems rely on manual reporting methods, such as phone calls to police or
ambulance services. These methods are often slow and inefficient because they depend on the
ability of a person to communicate accurate information about the accident location and situation.
As a result, delays in emergency response are common.

To overcome these limitations, researchers have proposed mobile-based accident reporting


systems. These systems allow users to report accidents using smartphones by providing location
data, images, and descriptions. They improve communication but still depend on user involvement.

Some advanced systems use sensor-based accident detection, where devices such as
accelerometers and gyroscopes detect sudden impacts and automatically trigger alerts. While these
systems reduce the need for manual reporting, they may sometimes produce false alarms due to
sudden braking or device movement.

Other studies focus on IoT-based systems, where sensors installed in vehicles detect accidents and
send alerts to emergency services using cloud platforms. These systems are efficient but require
additional hardware, making them costly and less accessible for common users.

Recent research also explores AI and computer vision-based systems, which use cameras and
machine learning algorithms to detect accidents automatically. These systems are mainly used in
smart city environments but require advanced infrastructure and high computational resources.

Overall, the existing work shows significant progress in accident detection and reporting
technologies. However, many systems face challenges such as high cost, dependency on hardware,
false alerts, and lack of user-friendly interfaces.

11
The proposed Road Accident Reporting System aims to address these limitations by providing a
simple, cost-effective, and mobile-based solution that combines GPS location tracking, image
uploading, and real-time communication using cloud technology.

 Comparative Analysis

A comparative analysis is performed to evaluate the differences between the existing accident
reporting systems and the proposed Road Accident Reporting System. This helps in
understanding how the proposed system improves efficiency, accuracy, and usability.

Comparison Table

Feature Existing System Proposed System

Reporting Method Manual (phone calls) Mobile app-based

Response Time Slow due to delay Fast (real-time reporting)

Depends on user GPS-based accurate


Location Accuracy description location

High (manual
User Involvement Simple and automated
communication)

Manual or scattered
Data Storage Centralized cloud database
records

Image Support Not available Image upload supported

Notification System Limited Real-time notifications


Cost Low but inefficient Cost-effective and efficient

Technology Used Traditional methods Flutter, Firebase, GPS

Scalability Limited Highly scalable

Data Analysis Difficult Easy (stored digitally)

Reliability Less reliable More reliable

12
Analysis of Comparison
From the above comparison, it is clear that the existing system has several limitations, such as slow
response time, lack of accurate location information, and absence of centralized data management.
These issues reduce the effectiveness of emergency response and increase the risk to accident
victims.

On the other hand, the proposed Road Accident Reporting System provides a modern, efficient,
and technology-driven solution. It uses GPS for accurate location tracking, cloud storage for
managing data, and real-time notifications to inform emergency services instantly.

The system also improves user experience by providing a simple interface for reporting accidents
and allows uploading images for better understanding of the situation. Additionally, the centralized
database helps authorities analyze accident patterns and take preventive measures

 Identification of Research Gap


The literature review of existing accident detection and reporting systems reveals that significant
progress has been made using technologies such as mobile applications, GPS, IoT devices, and
artificial intelligence. However, despite these advancements, several limitations and gaps still exist
in current systems.

One major gap identified is the lack of a simple and user-friendly system. Many existing
solutions are complex and require technical knowledge or additional hardware devices such as
sensors and IoT modules. This makes them less accessible to the general public, especially in rural
or less- developed areas.

13
Another important gap is the dependence on specialized hardware in IoT-based systems. These
systems require installation of sensors in vehicles, which increases cost and limits scalability. As a
result, they are not widely adopted by common users.

Some systems focus on automatic accident detection using sensors or AI, but they often suffer
from false alarms due to sudden braking, device movement, or environmental factors. This
reduces the reliability of such systems.

Additionally, many existing systems lack real-time communication and integration with
emergency services. Even if an accident is detected or reported, the information may not reach
authorities immediately, leading to delays in response.

Another gap is the absence of a centralized and structured database in many traditional
systems. Without proper data storage and management, it becomes difficult for authorities to
analyze accident patterns and take preventive measures.

Furthermore, several applications do not support image uploading and detailed reporting, which
are essential for understanding the severity of accidents before reaching the site.

Research Gap Identified

 Lack of simple and user-friendly systems


 Dependency on expensive hardware (IoT devices)
 False alerts in sensor-based systems
 Delay in communication with emergency services
 No centralized data management
 Limited features (no image or detailed reporting)

14
Chapter 3: System Analysis

3.1 Existing System

Description of Current Approaches

The existing system for reporting road accidents primarily relies on traditional and manual methods,
which are often inefficient and time-consuming. These approaches depend heavily on human
involvement and lack the support of modern technology, leading to delays in emergency response.

1. Manual Reporting through Phone Calls

The most common method of accident reporting is through phone calls to emergency helplines or
police stations. In this approach:

 A witness or victim calls emergency services


 They describe the accident location and situation
 Authorities then dispatch help

Limitations:

 Delay in communication
 Difficulty in explaining exact location
 Possibility of incorrect or incomplete information

2. Police-Based Reporting System

In many cases, accidents are reported directly to nearby police stations. The police then verify the
situation and take further action.

15
Limitations:

 Time-consuming process
 Depends on physical presence
 No real-time data sharing

3. Paper-Based Record Keeping

Accident details are often recorded manually in registers or files.

Limitations:

 No centralized database
 Difficult to access or analyze data
 High chances of data loss or errors

4. Basic Mobile Communication

Some systems use simple mobile communication like SMS or phone-based alerts.

Limitations:

 Limited information sharing


 No image or detailed data
 No automatic location tracking

5. Sensor-Based and IoT Systems (Modern Approaches)

Some advanced systems use sensors and IoT devices to detect accidents automatically.

Limitations:

 Requires additional hardware installation


16
 Expensive to implement
 May produce false alerts

6. Camera-Based Surveillance Systems

In smart cities, CCTV cameras are used to monitor roads and detect accidents.

Limitations:

 Limited coverage area


 Requires advanced infrastructure
 High cost

17
3.2 Limitations of Existing System

Technical and Practical Limitations of Existing System

The existing accident reporting systems face several technical and practical limitations that affect
their efficiency, reliability, and usability in real-world situations.

1. Technical Limitations

a) Lack of GPS Integration

Most traditional systems do not use GPS technology, resulting in inaccurate location information.
Emergency responders often depend on verbal descriptions, which can be misleading.

b) Absence of Real-Time Data Processing

Existing systems do not support real-time data transmission, leading to delays in communication
between users and emergency services.

c) No Centralized Database

Accident data is often stored in manual records or isolated systems, making it difficult to access,
manage, or analyze information effectively.

18
d) Limited Use of Modern Technologies

Many systems do not utilize modern technologies such as cloud computing, mobile applications,
or AI, reducing their efficiency and scalability.

e) Hardware Dependency (in Advanced Systems)

Some modern systems rely on IoT devices and sensors, which require additional hardware
installation. This increases complexity and cost.

2. Practical Limitations

a) Dependency on Human Intervention

The system relies heavily on manual reporting, which can lead to delays, especially when victims
are injured or unconscious.

b) Lack of User Awareness

Many people are unaware of how to report accidents or hesitate to take action, reducing the
effectiveness of the system.

c) Communication Barriers

In emergency situations, people may fail to provide clear and accurate information, leading to
confusion and delays.

19
d) Time-Consuming Process

Manual reporting methods take more time, which can delay emergency response and increase the
risk to victims.

e) Limited Accessibility

In remote or rural areas, access to emergency services may be limited, making it difficult to report
accidents quickly.

f) Cost and Infrastructure Issues

Advanced systems such as IoT or camera-based monitoring require high investment and
infrastructure, making them less practical for widespread use.

3.3 Proposed System

The proposed system, Road Accident Reporting System, is a mobile-based application designed
to overcome the limitations of existing accident reporting methods. It provides a fast, efficient,
and technology-driven solution for reporting accidents and improving emergency response.

Overview of Proposed System

The system allows users to report accidents instantly using a smartphone. It captures important
details such as GPS location, images, and accident description, and sends this information to a
centralized cloud database. Emergency services such as police, ambulance, and hospitals can
access this data in real time and respond quickly.

20
Key Features of Proposed System

1. Real-Time Accident Reporting

 Users can report accidents immediately


 Reduces delay in communication

2. GPS-Based Location Tracking

 Automatically captures exact location


 Provides accurate latitude and longitude
 Helps responders reach quickly

3. Image Upload Facility

 Users can upload accident images


 Helps authorities understand the situation

4. Centralized Cloud Database

 Stores all accident data in Firebase


 Enables easy access and analysis

5. Real-Time Notification System

 Sends alerts to emergency services


 Ensures quick response

21
6. User Authentication

 Secure login and registration


 Prevents unauthorized access

7. User-Friendly Interface

 Simple and easy to use


 Suitable for emergency situations

Working of Proposed System

1. User logs into the application


2. User selects “Report Accident”
3. Enters accident details and uploads image
4. GPS location is captured automatically
5. Data is sent to Firebase database
6. Emergency services receive notification
7. Authorities take action

Advantages of Proposed System

 Faster accident reporting


 Accurate location tracking
 Improved emergency response
 Centralized data management
 Easy to use and cost-effective

22
Chapter 4: SYSTEM DESIGN

System design is the process of defining the architecture, components, modules, and data flow of the
system. It provides a clear structure of how the system will function and interact with users and
external services.

4.1 System Architecture

The system architecture describes how different components of the system interact with each other.

➤ Architecture Description

The Road Accident Reporting System follows a client-server architecture:

 Client Side (Mobile App)


o User Interface
o Input data (accident details, images)
o GPS location capture
 Server Side (Firebase Cloud)
o Authentication
o Database (Firestore)
o Storage (Images)
o Notification system
 External Services
o Emergency services (Police, Ambulance, Hospital)
o Google Maps API

23
➤ Architecture Diagram

4.2 Data Flow Diagram (DFD)

DFD shows how data flows through the system.

24
4.3 Flowchart

Flowchart represents the step-by-step working of the system.

4.4 Module Design

The system is divided into different modules for better functionality.

➤ Modules of the System

25
1. User Authentication Module

 Registration and login


 Secure access

2. Accident Reporting Module

 Input accident details


 Upload images

3. GPS Location Module

 Captures user location


 Provides accurate coordinates

4. Image Upload Module

 Upload accident images


 Store in Firebase

5. Notification Module

 Sends alerts to emergency services


 Real-time communication

6. Database Module

 Stores accident data


 Maintains records

26
CHAPTER 5: METHODOLOGY

The methodology defines the structured process followed to design, develop, and implement the Road
Accident Reporting System. It ensures that the system is developed in a systematic, efficient, and
reliable manner.

5.1 Step-by-Step Approach

The development of the system follows these steps:

1. Requirement Analysis

 Identify system requirements


 Understand user needs
 Define features such as accident reporting, GPS tracking, and notifications

2. System Design

 Design system architecture


 Create flowcharts, DFD, and ER diagrams
 Plan database structure

3. Development

 Develop mobile application using Flutter


 Implement frontend (UI)
 Integrate backend using Firebase

27
4. Integration

 Connect frontend with backend


 Integrate GPS, database, and notification system

5. Testing

 Perform functional and performance testing


 Identify and fix errors

6. Deployment

 Install application on devices


 Make system ready for users

5.2 Algorithm (Step-by-Step Logic)


Algorithm for Accident Reporting System

1. Start
2. User opens the application
3. If user is not registered → Register
4. Else → Login
5. Display dashboard
6. User selects “Report Accident”
7. Input accident details
8. Capture GPS location
9. Upload image (optional)
10. Validate input data
11. Store data in database (Firebase)
12. Send notification to emergency services
28
13. Display confirmation message
14. End

5.3 Techniques Used

The system uses several modern techniques:

1. Mobile Application Development

 Flutter framework for cross-platform apps

2. Cloud Computing

 Firebase for backend services


 Real-time data storage

3. GPS Location Tracking

 Captures real-time latitude and longitude

4. Image Processing

 Upload and store images of accident

5. Real-Time Notification

 Firebase Cloud Messaging (FCM)

29
6. Data Validation Techniques

 Input validation
 Authentication validation

5.4 Mathematical Model

The system can be represented using a mathematical model:

Let:

 U = Set of users
 R = Set of accident reports
 L = Location data (latitude, longitude)
 D = Database
 N = Notification system

Function Representation:
f(U)=Rf(U) = Rf(U)=R R=(D,L,I)R = (D, L, I)R=(D,L,I)

Where:

 D = Description
 L = Location
 I = Image

System={U,R,L,D,N}System = \{U, R, L, D, N\}System={U,R,L,D,N}


Output Function:
Output=Notification(N)+DataStorage(D)Output = Notification(N) +
DataStorage(D)Output=Notification(N)+DataStorage(D)

Meaning:

30
 User input generates report
 Report stored in database
 Notification sent

5.5 Workflow Explanation

The workflow describes how the system operates:

1. User logs into the application


2. User reports accident
3. System captures GPS location
4. User uploads image and details
5. Data is validated
6. Information is sent to Firebase database
7. Notification sent to emergency services
8. Authorities respond

31
CHAPTER 6: IMPLEMENTATION

The implementation phase involves converting the system design into a working application. In
this project, the Road Accident Reporting System is developed as a mobile application using
modern technologies such as Flutter and Firebase. This phase focuses on coding, integration of
modules, and deployment of the system.

6.1 Overview of Implementation

The system is implemented as a mobile-based application that allows users to report accidents in
real time. The application interacts with Firebase cloud services for authentication, database
management, and storage. GPS technology is used to capture the exact location of the accident.

6.2 Tools and Technologies Used

Frontend

 Flutter framework
 Dart programming language

Backend

 Firebase Authentication
 Firebase Firestore Database
 Firebase Storage
 Firebase Cloud Messaging (FCM)

32
Other Technologies

 GPS (Location Services)


 Google Maps API

6.4 Hardware Requirements

The following hardware is required for development and testing:

[Link] Hardware Component Specification


1 Processor Intel Core i3 or higher
Minimum 4 GB (8 GB
2 RAM
recommended)
3 Storage 256 GB HDD / SSD
4 Mobile Device Android Smartphone
5 GPS GPS-enabled device
Required for Firebase
6 Internet
services
7 Display Monitor or Laptop
8 Input Devices Keyboard and Mouse

6.5 Software Requirements

The following software is required:

[Link] Software Description


Windows /
1 Operating System Linux /
macOS

33
[Link] Software Description
2 Programming Language Dart
3 Framework Flutter SDK

Android
4 IDE Studio / VS
Code

5 Backend Platform Firebase


Firebase
6 Database
Firestore
Firebase
7 Cloud Storage
Storage
Firebase
8 Notification Service Cloud
Messaging
Google
9 API Integration
Maps API
10 Version Control Git / GitHub

6.5 Database Module

The Road Accident Reporting System does not rely on a pre-existing dataset but generates
and stores data dynamically based on user input. The dataset is created in real time and stored
in a cloud database using Firebase.

Type of Data Collected

The system collects the following data:

1. User Data

 User ID
 Name
 Email
 Phone number

34
2. Accident Report Data

 Report ID
 Accident description
 Type of accident (minor/major)
 Date and time

3. Location Data

 Latitude
 Longitude
 Address (optional)

4. Image Data

 Accident images uploaded by user


 Stored in Firebase Storage

5. Notification Data

 Alert messages
 Timestamp
 Receiver details

Data Storage
 Stored in Firebase Firestore Database
 Images stored in Firebase Storage
 Data is organized in collections like:
o Users
o Reports
o Notifications

Data Characteristics
 Real-time data
 Structured format (JSON-like)
 Secure and scalable
 Easily retrievable

35
6.6 Code Implementation (Overview)

The core functionalities include:

1. Update [Link]

YAML

name: accident_reporting_app
description: Road Accident Reporting System

dependencies:
flutter:
sdk: flutter
firebase_core: ^2.24.0
firebase_auth: ^4.14.0
cloud_firestore: ^4.13.0
firebase_storage: ^11.5.0
geolocator: ^9.0.2
image_picker: ^1.0.4
provider: ^6.2.0
intl: ^0.19.0
flutter_local_notifications: ^14.1.1
google_maps_flutter: ^2.5.0
uuid: ^4.0.0

dev_dependencies:
flutter_test:
sdk: flutter

36
import 'package:cloud_firestore/cloud_firestore.dart';

[Link]

lib/models/accident_report.dart:

Dart

class AccidentReport {
final String id;
final String userId;
final String userName;
final String userPhone;
final double latitude;
final double longitude;
final String location;
final DateTime reportedAt;
final String severity; // Low, Medium, High, Critical
final int vehicleCount;
final int injuredPeople;
final String description;
final List<String> imageUrls;
final String status; // Pending, Reported, Resolved
final String? policeReportNumber;

AccidentReport({ requir
ed [Link], required
[Link], required
[Link], required
[Link],
required [Link],
required [Link],

37
required [Link],
required [Link],
required [Link],
required [Link],
required [Link],
required [Link],
required [Link],
required [Link],
[Link],
});

Map<String, dynamic> toMap() {


return {
'id': id,
'userId': userId,
'userName': userName,
'userPhone': userPhone,
'latitude': latitude,
'longitude': longitude,
'location': location,
'reportedAt': reportedAt,
'severity': severity,
'vehicleCount': vehicleCount,
'injuredPeople': injuredPeople,
'description': description,
'imageUrls': imageUrls,
'status': status,
'policeReportNumber': policeReportNumber,
};
}

factory [Link](Map<String, dynamic> map)


{ return AccidentReport(
id: map['id'] ?? '',

38
userId: map['userId'] ?? '',
userName: map['userName'] ?? '',
userPhone: map['userPhone'] ?? '',
latitude: map['latitude']?.toDouble() ?? 0.0,
longitude: map['longitude']?.toDouble() ?? 0.0,
location: map['location'] ?? '',
reportedAt: (map['reportedAt'] as Timestamp).toDate(),
severity: map['severity'] ?? 'Medium',
vehicleCount: map['vehicleCount'] ?? 0,
injuredPeople: map['injuredPeople'] ?? 0,
description: map['description'] ?? '',
imageUrls: List<String>.from(map['imageUrls'] ?? []),
status: map['status'] ?? 'Pending',
policeReportNumber: map['policeReportNumber'],
);
}
}
lib/models/user_model.dart:

Dart

class UserModel
{ final String id;
final String name;
final String email;
final String phone;
final String bloodType;
final String emergencyContact;
final DateTime createdAt;

UserModel({ require
d [Link], required
[Link], required
[Link], required
[Link],
required [Link],
39
required [Link],
required [Link],
});

Map<String, dynamic> toMap() {


return {
'id': id,
'name': name,
'email': email,
'phone': phone,
'bloodType': bloodType,
'emergencyContact': emergencyContact,
'createdAt': createdAt,
};
}

factory [Link](Map<String, dynamic> map)


{ return UserModel(
id: map['id'] ?? '',
name: map['name'] ?? '',
email: map['email'] ?? '',
phone: map['phone'] ?? '',
bloodType: map['bloodType'] ?? '',
emergencyContact: map['emergencyContact'] ?? '',
createdAt: (map['createdAt'] as dynamic).toDate() ?? [Link](),
);
}
}

[Link]

lib/services/firebase_service.dart:

Dart

40
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_auth/firebase_auth.dart';
import 'package:firebase_storage/firebase_storage.dart';
import '../models/accident_report.dart';
import '../models/user_model.dart';

class FirebaseService {
final FirebaseAuth _auth = [Link];
final FirebaseFirestore _firestore = [Link];
final FirebaseStorage _storage = [Link];

// Authentication
Future<UserCredential> signUp(String email, String password) async
{ return await _auth.createUserWithEmailAndPassword(
email: email,
password: password,
);
}

Future<UserCredential> login(String email, String password) async


{ return await _auth.signInWithEmailAndPassword(
email: email,
password: password,
);
}

Future<void> logout() async {


await _auth.signOut();
}

// User Profile
Future<void> createUserProfile(UserModel user) async {
await _firestore.collection('users').doc([Link]).set([Link]());
}

41
Future<UserModel?> getUserProfile(String userId) async {
final doc = await _firestore.collection('users').doc(userId).get();
return [Link] ? [Link]([Link]()!) : null;
}

// Accident Reports
Future<void> saveAccidentReport(AccidentReport report) async {
await _firestore
.collection('accident_reports')
.doc([Link])
.set([Link]());
}

Stream<List<AccidentReport>> getUserAccidentReports(String userId) {


return _firestore
.collection('accident_reports')
.where('userId', isEqualTo: userId)
.orderBy('reportedAt', descending: true)
.snapshots()
.map((snapshot) {
return [Link]
.map((doc) => [Link]([Link]()))
.toList();
});
}

Stream<List<AccidentReport>> getAllAccidentReports() {
return _firestore
.collection('accident_reports')
.orderBy('reportedAt', descending: true)
.snapshots()
.map((snapshot) {
return [Link]

42
.map((doc) => [Link]([Link]()))
.toList();

});
}

Future<void> updateReportStatus(String reportId, String status) async


{ await _firestore
.collection('accident_reports')
.doc(reportId)
.update({'status': status});
}

// Image Upload
Future<String> uploadAccidentImage(String reportId, String imagePath) async {
final ref =
_storage.ref('accident_reports/$reportId/${[Link]().millisecondsSinceEpoch}.jpg');
await [Link](File(imagePath) as dynamic);
return await [Link]();
}

// Current User
User? getCurrentUser() {
return _auth.currentUser;
}
}
lib/services/location_service.dart:

Dart

import 'package:geolocator/[Link]';
import 'package:geocoding/[Link]';

class LocationService {
Future<Position> getCurrentLocation() async {
bool serviceEnabled;
43
LocationPermission permission;

serviceEnabled = await [Link](); if (!


serviceEnabled) {
throw Exception('Location services are disabled.');
}

permission = await [Link]();


if (permission == [Link]) {
permission = await [Link]();
if (permission == [Link]) {
throw Exception('Location permissions are denied');
}
}

return await [Link](


desiredAccuracy: [Link],
);
}

Future<String> getAddressFromCoordinates(
double latitude,
double longitude,
) async
{ try {
List<Placemark> placemarks =
await placemarkFromCoordinates(latitude, longitude);
if ([Link]) {
Placemark place = placemarks[0];
return '${[Link]}, ${[Link]}, ${[Link]}';
}
return '$latitude, $longitude';

44
} catch (e) {
return '$latitude, $longitude';
}

}
}
lib/services/camera_service.dart:

Dart
import 'package:image_picker/image_picker.dart';

class CameraService {
final ImagePicker _imagePicker = ImagePicker();

Future<List<XFile>?> pickMultipleImages() async {


return await
_imagePicker.pickMultiImage( imageQuality: 85,
maxWidth: 1920,
maxHeight: 1920,
);
}

Future<XFile?> takePhoto() async {


return await _imagePicker.pickImage(
source: [Link],
imageQuality: 85,
);
}
}

45
[Link] App

lib/[Link]:

Dart
import 'package:flutter/[Link]';
import 'package:firebase_core/firebase_core.dart';
import 'package:provider/[Link]';
import 'firebase_options.dart';

import 'screens/splash_screen.dart';
import 'screens/home_screen.dart';

void main() async {


[Link]();

await [Link](
options: [Link],
);

runApp(const MyApp());
}

class MyApp extends StatelessWidget {


const MyApp({Key? key}) : super(key: key);

@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Accident Reporting System',
theme:
ThemeData( primarySwatch:
[Link], useMaterial3: true,
),

46
home: const SplashScreen(),
);
}
}
[Link] Screens

lib/screens/report_accident_screen.dart:

Dart

import 'package:flutter/[Link]';
import 'package:uuid/[Link]';
import 'package:image_picker/image_picker.dart';
import '../models/accident_report.dart';
import
'../services/firebase_service.dart';
import
'../services/location_service.dart';
import '../services/camera_service.dart';

class ReportAccidentScreen extends StatefulWidget {


const ReportAccidentScreen({Key? key}) : super(key: key);

@override
State<ReportAccidentScreen> createState() => _ReportAccidentScreenState();
}

class _ReportAccidentScreenState extends State<ReportAccidentScreen>


{ final FirebaseService _firebaseService = FirebaseService();
final LocationService _locationService = LocationService();
final CameraService _cameraService = CameraService();

final _formKey = GlobalKey<FormState>();


final TextEditingController _nameController = TextEditingController();
final TextEditingController _phoneController = TextEditingController();

47
final TextEditingController _descriptionController = TextEditingController();

String _selectedSeverity = 'Medium';


int _vehicleCount = 2;
int _injuredCount = 0;
List<XFile> _selectedImages = [];
double? _latitude;
double? _longitude;
String? _address;
bool _isLoading = false;

@override
void initState() {
[Link]();
_getCurrentLocation();
}

Future<void> _getCurrentLocation() async {


try {
final position = await _locationService.getCurrentLocation();
final address = await
_locationService.getAddressFromCoordinates( [Link],
[Link],
);

setState(() {
_latitude = [Link];
_longitude = [Link];
_address = address;
});
} catch (e) {
[Link](context).showSnackBar( Sna
ckBar(content: Text('Location Error: $e')),
);
}

48
}

Future<void> _pickImages() async {


final images = await _cameraService.pickMultipleImages();
if (images != null) {
setState(() {
_selectedImages = images;
});
}
}

Future<void> _submitReport() async {


if (!_formKey.currentState!.validate()) return;
if (_latitude == null || _longitude == null) {
[Link](context).showSnackBar(
const SnackBar(content: Text('Please enable location')),
);
return;
}

setState(() => _isLoading = true);

try {
final user = _firebaseService.getCurrentUser();
if (user == null) throw Exception('User not authenticated');

final reportId = const Uuid().v4();


List<String> imageUrls = [];

// Upload images
for (XFile image in _selectedImages) {
final url = await
_firebaseService.uploadAccidentImage( reportId,
[Link],
);

49
[Link](url);
}

// Create report
final report = AccidentReport(
id: reportId,
userId: [Link],
userName: _nameController.text,
userPhone: _phoneController.text,

latitude: _latitude!,
longitude: _longitude!,
location: _address ?? 'Unknown
Location', reportedAt: [Link](),
severity: _selectedSeverity,
vehicleCount: _vehicleCount,
injuredPeople: _injuredCount,
description: _descriptionController.text,
imageUrls: imageUrls,
status: 'Pending',
);

await _firebaseService.saveAccidentReport(report);

[Link](context).showSnackBar( c
onst SnackBar(
content: Text('Report submitted successfully!'),
backgroundColor: [Link],
),
);

[Link](context);
} catch (e) {
[Link](context).showSnackBar( S
nackBar(content: Text('Error: $e')),
50
);
} finally {
setState(() => _isLoading = false);
}
}

@override
Widget build(BuildContext context) {
return Scaffold(

appBar: AppBar(
title: const Text('Report Accident'),
elevation: 0,
),
body: SingleChildScrollView(
child: Padding(
padding: const [Link](16.0),
child: Form(
key:
_formKey,
child: Column(
children: [
// Location
Info Card(
child: Padding(
padding: const [Link](12.0),
child: Column(
crossAxisAlignment: [Link],
children: [
const Text(
'Accident Location',
style: TextStyle(
fontWeight: [Link],
fontSize: 16,
),
51
),

52
const SizedBox(height: 8),
Text(
_address ?? 'Getting location...',
style: const TextStyle(fontSize: 14),
),
],
),
),
),

const SizedBox(height: 16),

// User Information
TextFormField(
controller: _nameController,
decoration: InputDecoration(
labelText: 'Your Name',
border: OutlineInputBorder(
borderRadius: [Link](8),
),
prefixIcon: const Icon([Link]),
),
validator: (value) =>
value?.isEmpty ?? true ? 'Name is required' : null,
),
const SizedBox(height: 12),

TextFormField(
controller: _phoneController,
decoration: InputDecoration(
labelText: 'Phone Number',
border: OutlineInputBorder(
borderRadius: [Link](8),
),
prefixIcon: const Icon([Link]),
53
),
keyboardType: [Link],
validator: (value) =>
value?.isEmpty ?? true ? 'Phone is required' : null,
),
const SizedBox(height: 16),

54
// Severity Level
Text(

55
'Accident Severity',
style: [Link](context).[Link],
),
const SizedBox(height: 8),
DropdownButton<String>( valu
e: _selectedSeverity,
isExpanded: true,
items: ['Low', 'Medium', 'High', 'Critical']
.map((severity) => DropdownMenuItem(
value: severity,
child: Text(severity),
))
.toList(),
onChanged: (value) {
setState(() => _selectedSeverity = value!);
},
),
const SizedBox(height: 16),

// Vehicle Count
Text(
'Vehicles Involved: $_vehicleCount',
style: [Link](context).[Link],
),
Slider(
value: _vehicleCount.toDouble(),
min: 1,
max: 10,
divisions: 9,
onChanged: (value) {
setState(() => _vehicleCount = [Link]());
},
),
const SizedBox(height: 16),

56
// Injured Count
Text(
'People Injured: $_injuredCount',
style: [Link](context).[Link],
),
Slider(
value: _injuredCount.toDouble(),
min: 0,
max: 20,
divisions: 20,
onChanged: (value) {
setState(() => _injuredCount = [Link]());
},
),
const SizedBox(height: 16),

// Description
TextFormField(
controller: _descriptionController,
decoration:
InputDecoration( labelText:
'Description of Accident', border:
OutlineInputBorder(
borderRadius: [Link](8),
),
hintText: 'Describe what happened...',
),
maxLines: 4,
validator: (value) => value?.isEmpty ?? true
? 'Description is required'
: null,
),
const SizedBox(height: 16),

57
// Image Upload
[Link]( onPres
sed: _pickImages,
icon: const
Icon(Icons.camera_alt), label:
const Text('Upload Photos'), style:
[Link](
minimumSize: const Size([Link], 48),
),
),
if (_selectedImages.isNotEmpty)
Padding(
padding: const [Link](top: 12),
child: Text(
'Photos selected: ${_selectedImages.length}',
style: const TextStyle(color: [Link]),
),
),
const SizedBox(height: 24),

// Submit Button
ElevatedButton(
onPressed: _isLoading ? null :
_submitReport, style:
[Link]( minimumSize:
const Size([Link], 50),
backgroundColor: [Link],
),
child: _isLoading
? const SizedBox(
height: 20,
width: 20,
child: CircularProgressIndicator(
strokeWidth: 2,

58
valueColor:
AlwaysStoppedAnimation<Color>([Link]),

59
),
)
: const Text(
'SUBMIT REPORT',
style: TextStyle(fontSize: 16),
),
),
],
),
),
),
),
);
}

@override
void dispose()
{
_nameController.dispose();
_phoneController.dispose();
_descriptionController.dispose();
[Link]();
}
}
lib/screens/home_screen.dart:

Dart

import 'package:flutter/[Link]';
import '../services/firebase_service.dart';
import 'report_accident_screen.dart';
import 'my_reports_screen.dart';

class HomeScreen extends StatefulWidget {


const HomeScreen({Key? key}) : super(key: key);

60
@override

61
State<HomeScreen> createState() => _HomeScreenState();
}

class _HomeScreenState extends State<HomeScreen> {


final FirebaseService _firebaseService = FirebaseService();

@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: const Text('Accident Reporting'),
elevation: 0,
actions: [
IconButton(
icon: const Icon([Link]),
onPressed: () async {
await _firebaseService.logout();
[Link](context, '/login');
},
),
],
),
body: Center(
child: Column(
mainAxisAlignment: [Link],
children: [
const Icon([Link], size: 80, color: [Link]),
const SizedBox(height: 24),
const Text(
'Road Accident Reporting',
style: TextStyle(fontSize: 24, fontWeight: [Link]),
),
const SizedBox(height: 32),
[Link](

62
onPressed: () {
[Link]( contex
t, MaterialPageRoute(
builder: (context) => const ReportAccidentScreen(),
),
);
},
icon: const Icon(Icons.add_circle_outline, size: 28),
label: const Text('Report New Accident'),
style:
[Link]( background
Color: [Link], minimumSize: const
Size(280, 56), textStyle: const
TextStyle(fontSize: 16),
),
),
const SizedBox(height: 16),
[Link]( onPr
essed: () {
[Link]( contex
t, MaterialPageRoute(
builder: (context) => const MyReportsScreen(),
),
);
},
icon: const Icon([Link]),
label: const Text('My Reports'),
style:
[Link]( minim
umSize: const Size(280, 56),
),
),
],
),

63
),
);
}
}

[Link] Permissions

Update android/app/src/main/[Link]:
XML
<uses-permission android:name="[Link].ACCESS_FINE_LOCATION" />
<uses-permission android:name="[Link].ACCESS_COARSE_LOCATION" />
<uses-permission android:name="[Link]" />
<uses-permission android:name="[Link].READ_EXTERNAL_STORAGE" />
<uses-permission android:name="[Link].WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="[Link]" />

[Link] & Run

bash

flutter clean
flutter pub get
flutterfire configure --project=your-project-id
flutter run

 User login using Firebase Authentication


 Capturing GPS location using Geolocator
 Uploading images using Firebase Storage
 Storing data in Firestore database

64
6.6 Screenshot of implementation

1. Login Screen

65
2. Registration Screen

3. Dashboard / Home Screen

66
4. Accident Reporting Screen

67
5. GPS / Map Screen

6. Notification Screen

68
CHAPTER 7: RESULTS AND DISCUSSION

 Output and Results

The output of the Road Accident Reporting System is generated in real time based on user input.
The system successfully performs the following operations:

 Accepts accident details from users


 Captures GPS location accurately
 Uploads images to cloud storage
 Stores data in Firebase database
 Sends notifications to emergency services

 Sample Output

 Accident report successfully submitted


 Location coordinates displayed
 Confirmation message shown
 Data stored in database

 Performance Metrics

The performance of the system is evaluated using the following metrics:

Metric Description

Response Time Time taken to submit report


Accuracy Correctness of GPS location

Reliability System stability and error handling

Usability Ease of use for users


Data Handling Efficiency of database operations

Performance Evaluation Table

69
Proposed
Metric Existing System
System
Low
Response Time High (Slow)
(Fast)
Accuracy Low High

Reliability Moderate High

Usability Complex Easy


Automate
Data Handling Manual
d

Quantitative Comparison Table

Existing System ProposedSystem


Parameter
(Score/10) (Score/10)
Response Time 8 3
Accuracy 5 9

Data Handling 4 9
User Ease 5 9

Performance Graph
Explanation

The graph shows that the proposed system performs significantly better than the existing system in
terms of response time, accuracy, reliability, and usability. The use of GPS and cloud technology
improves overall system efficiency.

70
71
CHAPTER 8: ADVANTAGES AND LIMITATIONS
This chapter discusses the benefits and drawbacks of the proposed Road Accident Reporting
System. It highlights how the system improves existing methods while also identifying its
limitations.

8.1 Advantages of the Proposed System

The Road Accident Reporting System offers several advantages over traditional accident reporting
methods.

1. Fast Accident Reporting

 Users can report accidents instantly


 Reduces delay in communication

2. Accurate Location Tracking

 Uses GPS technology


 Provides exact latitude and longitude
 Helps emergency services reach quickly

3. Real-Time Notification

 Sends alerts to police, ambulance, and hospitals


 Improves response time

4. Centralized Data Storage

72
 Stores all reports in cloud database (Firebase)
 Easy to access and manage data

5. User-Friendly Interface

 Simple and easy to use


 Suitable for all users

6. Image Upload Feature

 Allows users to upload accident images


 Provides better understanding of accident situation

7. Cost-Effective Solution

 Uses mobile devices (no extra hardware required)


 Low development and maintenance cost

8. Improved Road Safety

 Faster reporting helps save lives


 Helps authorities take preventive measures

8.2 Benefits of Proposed System

 Reduces accident response time


 Improves communication with emergency services
 Provides accurate and reliable data
 Helps in analyzing accident trends
73
 Supports decision-making for road safety

8.3 Limitations of the Proposed System

Despite its advantages, the system has some limitations:

1. Internet Dependency

 Requires stable internet connection


 Cannot function properly in offline mode

2. GPS Accuracy Issues

 GPS may not work accurately in tunnels or crowded areas


 Location errors may occur

3. Manual Reporting Required

 System depends on users to report accidents


 Cannot detect accidents automatically

4. Limited Integration

 Not directly connected with all government emergency systems

5. Device Dependency

 Requires smartphone with GPS


 Not accessible to all users

74
8.4 Drawbacks / Constraints

 Network connectivity issues in rural areas


 Battery consumption due to GPS usage
 Possible delay if user does not report immediately
 Data privacy concerns if not handled properl

75
Chapter 9: Conclusion

The Road Accident Reporting System has been successfully designed and implemented as a mobile-
based application aimed at improving accident reporting and emergency response. This project
addresses the major challenges faced in traditional accident reporting systems, such as delays,
inaccurate location information, and lack of centralized data management.

9.1 Summary of Work

In this project, a comprehensive system was developed using modern technologies such as Flutter,
Firebase, and GPS services. The system allows users to report accidents in real time by providing
details such as accident description, images, and location data.

The project work included:

 Analysis of existing accident reporting systems and identification of their limitations


 Design of system architecture, data flow diagrams (DFD), and flowcharts
 Development of a mobile application with user-friendly interface
 Integration of GPS for accurate location tracking
 Implementation of Firebase services for authentication, database, and storage
 Testing and evaluation of system performance

The system was successfully implemented and tested, demonstrating its ability to provide fast and
reliable accident reporting.

9.2 Achievement of Objectives

The objectives defined at the beginning of the project were successfully achieved:

76
Real-Time Accident Reporting

 The system allows users to report accidents instantly through the mobile application

Accurate Location Tracking

 GPS integration ensures precise location data

Improved Communication

 Real-time notifications improve communication with emergency services

Centralized Data Storage

 All accident reports are stored in a cloud database (Firebase)

User-Friendly Interface

 The application is simple and easy to use

Efficient System Performance

 The system performs reliably with fast response time and accurate data handling

9.3 Final Outcome

The proposed Road Accident Reporting System provides a smart, efficient, and cost-effective
solution for accident reporting. It reduces delays, improves accuracy, and enhances emergency
response.

77
Although the system has some limitations such as dependency on internet connectivity and manual
reporting, it still represents a significant improvement over traditional methods.

The results and discussion section presents the outcomes of the implemented system and analyzes
its performance, effectiveness, and usability in real-world scenarios.

using Flutter, which allows developers to build cross-platform mobile applications with high
performance and attractive user interfaces.

The mobile application includes several key modules such as user registration, login
authentication, accident reporting, image uploading, and location tracking. These modules work
together to provide a smooth and user-friendly experience.

The backend of the system is powered by Firebase, which provides several cloud-based services
including authentication, cloud storage, and Fire store database. Firebase Authentication ensures
secure login and registration for users. The Fire store database stores accident reports, user
details, and notification data.

The system also integrates GPS services to capture the exact location of the accident. When a
user reports an accident, the application automatically retrieves the latitude and longitude
coordinates of the location. This information is stored in the database along with the accident
report.

Additionally, the system includes a notification mechanism that sends alerts to emergency
services such as police stations, hospitals, and ambulance services. This ensures that authorities
receive accident reports in real time and can respond quickly.

Overall, the system design ensures efficient data flow, secure data storage, and fast
communication between users and emergency responders.

78
CHAPTER 10: FUTURE SCOPE
The Road Accident Reporting System provides a strong foundation for improving accident
reporting and emergency response. However, with advancements in technology, the system can be
further enhanced to make it more intelligent, automated, and efficient.

10.1 Possible Improvements

Several improvements can be made to enhance the functionality of the system:

➤ 1. Automatic Accident Detection

 Integrate sensors such as accelerometers and gyroscopes


 Automatically detect accidents without user input
 Useful when victims are unconscious

➤ 2. AI-Based Analysis

 Use Artificial Intelligence and Machine Learning


 Predict accident-prone areas
 Analyze accident patterns for better safety measures

➤ 3. Offline Functionality

 Enable limited functionality without internet


 Store data locally and sync later
 Useful in remote areas

79
➤ 4. Improved GPS Accuracy

 Use advanced location services


 Combine GPS with network-based location tracking

➤ 5. Enhanced Security

 Implement data encryption


 Improve user privacy protection

10.2 Extensions of the Project

The system can be extended with additional features:

➤ 1. Integration with Emergency Services

 Direct connection with police, hospitals, and ambulance systems


 Automated dispatch of emergency vehicles

➤ 2. Web Dashboard for Authorities

 Create a web portal for monitoring accident reports


 Visualize data using charts and maps

➤ 3. Multi-Language Support

 Support regional languages


 Improve accessibility for wider users

80
➤ 4. Live Traffic Monitoring

 Integrate with traffic management systems


 Provide real-time traffic updates

➤ 5. User Rating and Feedback System

 Allow users to give feedback


 Improve system performance

10.3 Research Directions

The project opens several opportunities for future research:

➤ 1. Smart City Integration

 Integrate system with smart city infrastructure


 Use IoT devices and sensors

➤ 2. Computer Vision-Based Detection

 Use CCTV cameras and AI models


 Detect accidents automatically

➤ 3. Predictive Analytics

 Use historical data for accident prediction


 Help in planning road safety measures

81
➤ 4. Blockchain for Data Security

 Secure accident data using blockchain technology


 Ensure data integrity and transparency

➤ 5. Integration with Wearable Devices

 Use smartwatches or wearable sensors


 Detect accidents based on user movement

Technology Stack

The Road Accident Reporting System uses several modern technologies to build a reliable and
efficient mobile application. These technologies help ensure smooth performance, secure data
storage, and real-time communication between users and emergency services.

One of the main technologies used in this project is Flutter. Flutter is an open-source mobile
application development framework created by Google. It allows developers to build high-
performance applications for Android and iOS using a single codebase. Flutter uses the Dart
programming language and provides a rich set of widgets that make it easy to design attractive
and responsive user interfaces.

Another important technology used in this project is Firebase. Firebase is a cloud-based platform
developed by Google that provides backend services for mobile and web applications. It offers
several features such as Firebase Authentication, Cloud Fire store database, Cloud Storage, and
Firebase Cloud Messaging.

82
REFERENCES
[1]
World Health Organization, "Global Status Report on Road Safety 2023," Geneva, 2023.

[2]
Ministry of Road Transport and Highways (MoRTH), "Road Accidents in India Annual Report
2022,"

New Delhi, 2022.

[3]I. Sommerville, Software Engineering, 10th ed. ed., Boston: Pearson, 2016.

[4]
R. S. Pressman and B. R. Maxim, Software Engineering: A Practitioner’s Approach, New York,
NY:

McGraw-Hill, 2015.

[5]
S. Kumar and A. Singh, "Accident Detection and Smart Rescue System using Android
Smartphone,"

International Journal of Engineering Research and Technology (IJERT), vol. 7, no. 4, pp. 1-5,
2018.

[6]
M. e. al., "IoT-Based Accident Detection and Tracking System," International Research Journal
of

Engineering and Technology (IRJET), vol. 11, no. 4, pp. 79-83, 2024.

[7]
A. Sharma and R. Gupta, "Android Application for Real-Time Accident Detection and
Notification,"

International Journal of Computer Applications, vol. 182, no. 12, pp. 10-15, 2021.

[8]
Google Developers, "Flutter Documentation," 2026. [Online]. Available: [Link]

[Accessed 2026].

[9]
G. Firebase, "Firebase Documentation," [Online]. Available: [Link]

[Accessed 2026].

[10
G. M. Platform, "Maps SDK Documentation," [Online]. Available:
][Link] [Accessed 2026].

83

You might also like