Police Complaint System
Police Complaint System
CHAPTER - 1
INTRODUCTION
1.1 INTRODUCTION:
The project entitled ‘Police Complaint System” is developed as a part of 6 th
semester project for the partial fulfilment of the BCA degree.
1.2 PROJECT:
The main purpose of developing this application is to automate the existing
method of managing the law enforcement department.
1.3 OBJECTIVE:
The main objective of this project is to automate crime case processing. The
other main objective of this project is to track all the cases based on their
progress. This system contains the modules like prison details, prisoner details,
officer details, case register..
1.4 SCOPE:
It is an innovative software, which deals with the Police Complaint authority.
The motto of the project is to simplify the job of the administrative people and to
provide a user-friendly package.
To avoid all these limitations and make the working more accurately the
system needs to be computerized in the effective manner
The system is very simple in design and to implement. The system requires very
low system resources and the system will work in almost all configurations. It has
got following features:
Security of data.
Ensures data accuracy.
Proper control of the higher officials.
Reduce the damages of the machines.
Minimum time is needed for the various processing.
Greater efficiency.
Better services.
CHAPTER - 2
SYSTEM
REQUIREMENTS
CHAPTER - 3
SYSTEM
DESIGN
The feasibility of the project is analyzed in this phase and business proposal is put
forth with a very general plan for the project and some cost estimates. During system
analysis the feasibility study of the proposed system is to be carried out. This is to
ensure that the proposed system is not a burden to the company. For feasibility
analysis, some understanding of the major requirements for the system is essential.
ECONOMICAL FEASIBILITY
TECHNICAL FEASIBILITY
SOCIAL FEASIBILITY
This study is carried out to check the economic impact that the system will have
on the organization. The amount of fund that the company can pour into the research and
development of the system is limited. The expenditures must be justified. Thus the
developed system as well within the budget and this was achieved because most of the
technologies used are freely available. Only the customized products had to be purchased.
This study is carried out to check the technical feasibility, that is, the technical
requirements of
the system. Any system developed must not have a high demand on the available
technical
resources. This will lead to high demands on the available technical resources. This will
lead to
high demands being placed on the client. The developed system must have a modest
requirement, as only minimal or null changes are required for implementing this system.
The aspect of study is to check the level of acceptance of the system by the user.
This includes the process of training the user to use the system efficiently. The user must
not feel threatened by the system, instead must accept it as a necessity. The level of
acceptance by the users solely depends on the methods that are employed to educate the
user about the system and to make him familiar with it. His level of confidence must be
raised so that he is also able to make some constructive criticism, which is welcomed, as
he is the final user of the system.
ADMIN LOGIN
Login
Usermain:
View Case Type
username
ViewComplaints
Staff
Login
Update Complaint
Status
View Criminals
password
Faqs
ER Diagram:
CHAPTER – 4
IMPLEMENTATION
Most developers recognize the NetBeans IDE as the original free Java IDE. It is that, and
much more! The NetBeans IDE provides support for several languages (PHP, JavaFX,
C/C++, JavaScript, etc.) and frameworks.
With its constantly improving Java Editor, many rich features and an extensive range of
tools, templates and samples, NetBeans IDE sets the standard for developing with cutting
edge technologies out of the box
4.1.2 MY SQL
Corporation. For proprietary use, several paid editions are available, and offer
additional functionality.
HISTORY
OVERVIEW
MySQL is written in C and C++. Its SQL parser is written in yacc, but it uses a home-
brewed lexical analyzer. MySQL works on many system platforms,
including AIX, BSDi, FreeBSD, HP-UX, eComStation, i5/OS, IRIX, Linux, macOS,
The MySQL server software itself and the client libraries use dual-
licensing distribution. They are offered under GPL version 2, beginning from 28 June
2000 (which in 2009 has been extended with a FLOSS License Exception) or to use a
proprietary license.
Support can be obtained from the official manual. Free support additionally is
available in different IRC channels and forums. Oracle offers paid support via its
MySQL Enterprise products. They differ in the scope of services and in price.
Additionally, a number of third party organisations exist to provide support and
services, including MariaDBand Percona.
MySQL has received positive reviews, and reviewers noticed it "performs extremely
well in the case" and that the "developer interfaces are there, and the documentation
(not to mention feedback in the real world via Web sites and the like) is very, very
good".It has also been tested to be a "fast, stable and true multi-user, multi-threaded
sql database server
. Employee
Staff details
. Officer login
.Prisondetails
Prisoner details
4.3 CODES
INDEX PAGE
<%--
document : index
author : nataraj
--%>
<!doctype html>
<html>
<head>
<title>index page</title>
<style>
.flex-container {
display: -webkit-flex;
display: flex;
text-align: center;
.flex-container > * {
padding: 15px;
-webkit-flex: 1 100%;
flex: 1 100%;
.article {
text-align: left;
.nav {background:#eee;}
.nav ul {
list-style-type: none;
padding: 0;
.nav ul a {
text-decoration: none;
footer {-webkit-order:3;order:3;}
</style>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<style>
cover {object-fit:container;}
</style>
<div class="flex-container">
<header>
<hr>
<h1><center>distance finder</center></h1>
<hr/>
</header>
<nav class="nav">
<ul>
<center>
</center>
</ul>
</nav>
</body>
</html>
MAIN PAGE
<%--
document : mainpage
author : nataraj
--%>
<!doctype html>
<html>
<head>
<style>
ul {
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
background-color: #333;
li {
float: left;
li a {
display: block;
color: white;
text-align: center;
text-decoration: none;
li a:hover:not(.active) {
background-color: #111;
.active {
background-color: #4caf50;
</style>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<body background="images/1.png">
<ul>
<li><a href="index.jsp">home</a></li>
<li><a href="userregistration.jsp">registration</a></li>
<li><a href="about.jsp">about</a></li>
<li><a href="contact.jsp">contact</a></li>
<li><a href="report.jsp">report</a></li>
</ul>
</body>
</html>
ADMIN LOGIN
<%--
Document : admin
Author : Nataraj
--%>
<!DOCTYPE html>
<html lang="en">
<head>
<style>
ul {
list-style-type: none;
margin: 0;
padding: 0;
overflow: hidden;
background-color: #333;
li {
float: left;
li a {
display: block;
color: white;
text-align: center;
text-decoration: none;
li a:hover:not(.active) {
background-color: #111;
.active {
background-color: #4CAF50;
</style>
<title>ADMIN LOGIN</title>
<meta charset="utf-8">
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></
script>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<ul>
<li><a href="mainpage.jsp">HOME</a></li>
</ul>
<div class="container">
<center>
<h1>ADMIN LOGIN</h1>
<form action="adminmainpage.jsp">
<div class="form-group">
</div>
<div class="form-group">
<label for="password"><h3>PASSWORD</h3></label>
</div>
</form>
</center>
</div>
</body>
</html>
Document : adminmainpage1
Author : Nataraj
--%>
<!DOCTYPE html>
<html>
<head>
<style>
body
.overlay {
height: 100%;
width: 0;
position: fixed;
z-index: 1;
top: 0;
left: 0;
background-color: rgb(0,0,0);
overflow-x: hidden;
transition: 0.5s;
.overlay-content {
position: relative;
top: 25%;
width: 100%;
text-align: center;
margin-top: 30px;
.overlay a {
padding: 8px;
text-decoration: none;
font-size: 36px;
color: #818181;
display: block;
transition: 0.3s;
color: #f1f1f1;
.overlay .closebtn {
position: absolute;
top: 20px;
right: 45px;
font-size: 60px;
.overlay .closebtn {
font-size: 40px;
top: 15px;
right: 35px;
</style>
<style>
* {box-sizing: border-box}
/* Slideshow container */
.slideshow-container {
max-width: 1000px;
position: relative;
margin: auto;
.prev, .next {
cursor: pointer;
position: absolute;
top: 50%;
width: auto;
padding: 16px;
margin-top: -22px;
color: white;
font-weight: bold;
font-size: 18px;
.next {
right: 0;
.prev:hover, .next:hover {
background-color: rgba(0,0,0,0.8);
/* Caption text */
.text {
color: #f2f2f2;
font-size: 15px;
position: absolute;
bottom: 8px;
width: 100%;
text-align: center;
.numbertext {
color: #f2f2f2;
font-size: 12px;
position: absolute;
top: 0;
/* The dots/bullets/indicators */
.dot {
cursor: pointer;
height: 15px;
width: 15px;
margin: 0 2px;
background-color: #bbb;
border-radius: 50%;
display: inline-block;
.active, .dot:hover {
background-color: #717171;
/* Fading animation */
.fade {
-webkit-animation-name: fade;
-webkit-animation-duration: 1.5s;
animation-name: fade;
animation-duration: 1.5s;
@-webkit-keyframes fade {
to {opacity: 1}
@keyframes fade {
to {opacity: 1}
</style>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<div class="overlay-content">
<a href="mainpage.jsp">HOME</a>
<a href="mainpage.jsp">LOGOUT</a>
</div>
</div>
<script>
function openNav() {
document.getElementById("myNav").style.width = "100%";
function closeNav() {
document.getElementById("myNav").style.width = "0%";
</script>
<div class="slideshow-container">
</div>
</div>
</div>
</div>
<br>
<div style="text-align:center">
</div>
<script>
var slideIndex = 1;
showSlides(slideIndex);
function plusSlides(n) {
showSlides(slideIndex += n);
function currentSlide(n) {
showSlides(slideIndex = n);
function showSlides(n) {
var i;
slides[i].style.display = "none";
slides[slideIndex-1].style.display = "block";
</script>
</body>
</html>
PASSWORD VALIDATION
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%
String t1=request.getParameter("text1");
String t2=request.getParameter("text2");
//stmt.executeUpdate("insert into
books_details(book_name,author) values('"+bookname+"','"+author+"')");
rst=stmt.executeQuery("select * from
adminlogin where username= '" + t1 + "' and password='" + t2 + "'");
if (rst.next())
{out.println("Login Successful");
response.sendRedirect("adminmainpage1.jsp");
else
response.sendRedirect("adminlogin.jsp");
%>
DATABASE CONNECTION
<%@ page language="java" import="java.sql.*" %>
<%
Class.forName(driver).newInstance();
Connection con=null;
ResultSet rst=null;
Statement stmt=null;
try{
String
url="jdbc:mysql://localhost/sharmada?user=root&password=root";
con=DriverManager.getConnection(url);
stmt=con.createStatement();
catch(Exception e){
System.out.println(e.getMessage());
%>
ADD DETAILS
<%--
Document : adminmainpage1
Author : Nataraj
--%>
<!DOCTYPE html>
<html lang="en">
<head>
<title>add details</title>
<meta charset="utf-8">
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></
script>
<script language="javascript">
function Validate()
var x= document.form1.text1.value;
if (x.length<=0)
return false;
x= document.form1.text2.value;
if (x.length <= 0)
return false;
x= document.form1.text3.value;
if (x.length <= 0)
return false;
x= document.form1.text4.value;
if (x.length <= 0)
return false;
</script>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<div class="container">
<form action="adminmainpage3.jsp">
<div class="form-group">
</div>
<div class="form-group">
</div>
<div class="form-group">
</div>
<div class="form-group">
<label for="distance">DISTANCE</label>
</div>
<div class="form-group">
<label for="description">DESCRIPTION</label>
</div>
</div>
</form>
</div>
</body>
</html>
USER REGISTRATION
<%--
Document : userregistration
--%>
<!DOCTYPE html>
<html lang="en">
<head>
<title>user registration</title>
<meta charset="utf-8">
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></
script>
<style>
.dropbtn {
background-color: #3498DB;
color: white;
padding: 16px;
font-size: 16px;
border: none;
cursor: pointer;
.dropbtn:hover, .dropbtn:focus {
background-color: #2980B9;
.dropdown {
position: relative;
display: inline-block;
.dropdown-content {
display: none;
position: absolute;
background-color: #f1f1f1;
min-width: 160px;
overflow: auto;
z-index: 1;
.dropdown-content a {
color: black;
text-decoration: none;
display: block;
.show {display:block;}
</style>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<body>
<div class="dropdown">
<a href="mainpage.jsp">HOME</a>
<a href="about.jsp">ABOUT</a>
<a href="contact.jsp">CONTACT</a>
</div>
</div>
<script language="javascript">
function Validate()
var x= document.form1.text1.value;
if (x.length<=0)
return false;
x= document.form1.text2.value;
if (x.length <= 0)
return false;
x= document.form1.text3.value;
if (x.length <= 0)
return false;
y = document.form1.text5.value;
if(isNaN(y)||y.indexOf(" ")!==-1)
return false;
if (y.length!==10)
alert("enter 10 characters");
return false;
atpos = emailID.indexOf("@");
dotpos = emailID.lastIndexOf(".");
return false;
</script>
<script>
function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
window.onclick = function(event) {
if (!event.target.matches('.dropbtn')) {
var i;
if (openDropdown.classList.contains('show')) {
openDropdown.classList.remove('show');
</script>
<div class="container">
<h1>SIGN UP</h1>
<div class="form-group">
</div>
<div class="form-group">
</div>
<div class="form-group">
<label for="password">PASSWORD</label>
</div>
<div class="form-group">
<label for="email">EMAIL</label>
</div>
<div class="form-group">
</div>
</form>
</div>
</body>
</html>
USER LOGIN
<%--
Document : userlogin
Author : Nataraj
--%>
<!DOCTYPE html>
<!DOCTYPE html>
<html>
<head>
<script language="javascript">
function Validate()
var x= document.form1.text1.value;
if (x.length<=0)
return false;
x= document.form1.text2.value;
if (x.length <= 0)
return false;
</script>
<style>
input[type=text], input[type=password] {
width: 100%;
margin: 8px 0;
display: inline-block;
box-sizing: border-box;
button {
background-color: #4CAF50;
color: white;
margin: 8px 0;
border: none;
cursor: pointer;
width: 100%;
button:hover {
opacity: 0.8;
.cancelbtn {
width: auto;
background-color: #f44336;
.container {
padding: 16px;
span.psw {
float: right;
padding-top: 16px;
/* Change styles for span and cancel button on extra small screens */
.cancelbtn {
width: 100%;
</style>
window.onpopstate = function () {
history.go(1);
};
</script>
<style>
.button {
background-color: #4CAF50;
border: none;
color: white;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
cursor: pointer;
</style>
</head>
<h2>USER LOGIN</h2>
<form action="usermainpage.jsp">
<div class="container">
<label for="username"><b>Username</b></label>
<label for="password"><b>Password</b></label>
</div>
</div>
</form>
</body>
</html>
GIVE IN KEYWORDS
<%--
Document : usermainpage1
Author : Nataraj
--%>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Enter keywords</title>
<script>
function check()
var a = document.f.text1.value;
var b = document.f.text2.value;
if(a ==""){
return false;
if(b ==""){
return false;
</script>
<meta charset="utf-8">
<link rel="stylesheet"
href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></
script>
<style>
.dropbtn {
background-color: #3498DB;
color: white;
padding: 16px;
font-size: 16px;
border: none;
cursor: pointer;
.dropbtn:hover, .dropbtn:focus {
background-color: #2980B9;
.dropdown {
position: relative;
display: inline-block;
.dropdown-content {
display: none;
position: absolute;
background-color: #f1f1f1;
min-width: 160px;
overflow: auto;
z-index: 1;
.dropdown-content a {
color: black;
text-decoration: none;
display: block;
.show {display:block;}
</style>
window.onpopstate = function () {
history.go(1);
};
</script>
</head>
<div class="dropdown">
<a href="mainpage.jsp">HOME</a>
<a href="about.jsp">ABOUT</a>
<a href="contact.jsp">CONTACT</a>
</div>
</div>
<script>
function myFunction() {
document.getElementById("myDropdown").classList.toggle("show");
window.onclick = function(event) {
if (!event.target.matches('.dropbtn')) {
var i;
if (openDropdown.classList.contains('show')) {
openDropdown.classList.remove('show');
</script>
<header>
<center>
</center>
</header>
<div class="container">
<h1>LOCATION FINDER</h1>
<div class="form-group">
</div>
<div class="form-group">
</div>
</div>
</body>
</html>
MAPS
<%@ include file="connfile.jsp"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script>
var geocoder;
var map;
function initialize() {
var mapOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
function codeAddress() {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var aa = document.getElementById("lat");
var bb = document.getElementById("lon");
aa.value=latitude;
bb.value=longitude;
map: map,
position: results[0].geometry.location
});
} else {
alert("Geocode was not successful for the following reason: " + status);
});
</script>
<script>
function check()
var a = document.f.text1.value;
var b = document.f.text2.value;
if(a ==""){
return false;
if(b ==""){
return false;
</script>
window.onpopstate = function () {
history.go(1);
};
</script>
<style>
.button {
background-color: #4CAF50;
border: none;
color: white;
text-align: center;
text-decoration: none;
display: inline-block;
font-size: 16px;
cursor: pointer;
</style>
</head>
<body>
</div>
<body onload="initialize(),codeAddress();">
<%
String ss=request.getParameter("text1");
String sss=request.getParameter("text2");
String fr = h[0];
String wd = h[1];
String an = hh[0]+hh[1]+hh[2]+hh[3]+hh[4];
String keyw=null,relatedt=null,a=null,b=null,c=null;
if (rst.next()) {
keyw = rst.getString("mainlocation");
relatedt = rst.getString("location");
a = rst.getString("description");
b = rst.getString("distance");
c = rst.getString("neighboringlocation");
%>
Related Topic?<br>
<%=relatedt%><%=relatedt%>
</font>
<%
%>
</div>
<div id="bg1">
</font></center>
</div>
</div>
</font></div>
<%
Class.forName("com.mysql.jdbc.Driver");
Connection conn =
DriverManager.getConnection("jdbc:mysql://sharmada:3306/flow_based_method","root"
,"root");
ResultSet rss = stt.executeQuery("select * from rel_topic where rel_t= '" + s3 + "' ");
if(rss.next()){
des = rss.getString("des");
t=rss.getString("rel_t");
*/
%>
</font><br>
</font>
</div>
<%
//}
<fieldset>
Result: <input
id="address" type="textbox" value="<%=ss%>,<%=sss%>"/><br><br>
</br>
</fieldset>
</div>
</body>
</html>
CHAPTER – 5
RESULT
SCREEN SHOTS
INDEX PAGE(FIGURE-6)
MAINPAGE(FIGURE-7)
CHAPTER – 6
SYSTEM TESTING
6.1 TESTING
Once the coding is completed according to the requirement we have to test the quality of
the software. Software testing is a critical element of software quality assurance and
represents the ultimate review of specification, design and coding. Although testing is to
uncover the errors in the software but it also demonstrates that software functions appear
to be working as per the specifications, those performance requirements appear top have
been met. In addition, data collected as testing is conducted provide a good indication of
software and some indications of software quality as a whole. To assure the software
quality we conduct both White Box Testing and Black Box Testing.
White Box Testing is a test case design method that uses the control structure of the
procedural design to derive test cases. As we are using a non-procedural language, there
is very small scope for the White Box Testing. Whenever it is necessary, there the control
structure are tested and successfully passed all the control structure with a very minimum
error.
Black Box Testing focuses on the functional requirement of the software. It enables to
derive sets of input conditions that will fully exercise all functional requirements for a
program. The Black Box Testing finds almost all errors. If finds some interface errors and
errors in accessing the database and some performance errors. In Black Box Testing we
use mainly two techniques Equivalence partitioning the Boundary Volume Analysis
Technique.
Unit testing focuses verification effort on the smallest unit of software design the module.
The unit test is normally white box oriented. The modules are tested independently to
locate errors. This enables to detect errors in coding and make necessary changes in
programming Logic. Inputs were given in several formats to check the validity of the
coding of each module separately. In this way unit testing helps to finding the errors in
each module separately. Unit testing was performed and the system was made a bug free
package.
A program unit is usually small enough that the programmer who developed it can
test it in great detail and certainly this will is possible when the unit is integrated
into an evolving software product. There are four categories of test that a
programmer will typically perform on a program unit.
1. Functional Tests
2. Performance Tests
3. Stress Tests
4. Structure Tests
Functional test cases involve exercising the code with nominal input values for
which the expected results are known, as well as boundary values and special values
such as logically related inputs, files of identical elements, and empty files.
Performance testing determines the amount of execution time spent in various parts
of the unit, program throughput, and response time and device utilization by the
program unit.
Stress tests are those designed to intentionally break the unit. A great deal can be
learned about the strengths and limitations of a program by examining the manner in
which a program unit breaks.
In integration test, the modules are joined together to make sure that they work as a
group. Integration tests are performed incrementally by adding another module to the
system and testing to make sure that it works properly after adding the next module. This
makes easier to trace errors when they are discovered. For example if he enters the user
name then it checks if they are valid users or not. If the conditions satisfies the Main
menu will be displayed otherwise it display the login form.
Deviation or errors discovered at this step in this project is corrected prior to the
completion of the project with the help of user by negotiating to establish a method of
resolving deficiencies. Thus, proposed system under consideration has been tested by
using validation testing and found to be working satisfactorily.
In certain places where the input has to be given, validation testing is done. If number is
to enter as input, other than numeric then the error message “Enter the Numeric value”
is displayed.
The purpose of system testing is to identify and correct errors in the candidate system.
System testing is the stage of implementation which aims at ensuring that the system
accurately and efficiently before the actual operation comments.
No program or system design is perfect communication between the user and the
designer is not always complete or clear and time is usually start. The result is errors and
more errors. The number and nature of errors in a design depends on several factors.
Testing is vital to the success of the system. System testing makes a logical assumption
that if all the parts of the system are correct the goal will be successfully achieved.
Inadequate testing or non-testing its leads to the error.
The time lag between the cause and the appearance of the problem.
The effect of the system on file is records within the system.
A small system error can conceivably explode into a much larger problem. Effective
testing
Early in the process translates directly into long term cost savings from a reduced number
of Errors.
Another reason for system testing is its utility as a user oriented vehicle before
implementation. The best program is worthless if it does not meet user needs. The system
should be tested properly to see whether it needs user requirements.
CHAPTER – 7
CONCLUSION AND
FUTURE
ENHANCEMENT
7.1 CONCLUSION
We started this project with the intention of giving our best and doing something
interesting and we have successfully achieved it.
If we were able to complete this project, this is largely due to the collective effort.
This DBMS package is very efficient and user friendly and way to store the details that
comes to existence. Although all features are not provided the important ones need to
make this software self-sufficient are present. The project has been successful in that
manner.
The tables that are created for this software have been designed in such a way that
complete information is given in a concise manner. Few of the functions provided by this
software are new records, saved and modified.
Future Enhancement:
The software is portable and flexible for future enhancements. Thus this project helps in
retrieving the details as single go using data base concept.
It is concluded that the objective of the project work entitled “Police Complaint system”
filled and desired result has been obtained. Each program in the project are functioning
normally and reliable to user
CHAPTER – 8
BIBLOGRAPHY
8.1 BIBLOGRAPHY