0% found this document useful (0 votes)
132 views90 pages

Online Complaint Registration and Management System-1

The document is a project report for the Online Complaints Registration and Management System, submitted by students of K.S. Rangasamy College of Arts and Science for their Bachelor of Computer Science degree. It outlines the project's purpose to create a user-friendly platform for citizens to register and track complaints related to municipal services, enhancing accountability and transparency. The report includes system studies, proposed solutions, and detailed descriptions of the system's modules and requirements.

Uploaded by

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

Online Complaint Registration and Management System-1

The document is a project report for the Online Complaints Registration and Management System, submitted by students of K.S. Rangasamy College of Arts and Science for their Bachelor of Computer Science degree. It outlines the project's purpose to create a user-friendly platform for citizens to register and track complaints related to municipal services, enhancing accountability and transparency. The report includes system studies, proposed solutions, and detailed descriptions of the system's modules and requirements.

Uploaded by

vimalelavarasu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 90

ONLINE COMPLAINTS REGISTRATION AND MANAGEMENT SYSTEM

A project report submitted in partial fulfillment of the requirements for


the award of the degree of

BACHELOR OF COMPUTER SCIENCE

Submitted By

SANMATHI.S (21UCS132)
ELAVARASU.G (21UCS031)
NACHIMUTHU.C (21UCS085)
DHINAKARAN.V (21UCS025)
SARATH.M (21UCS136)
KANNAN.D (21UCS058)

Under the Guidance of


Ms.D.VINOTHINI M.Sc.,

K.S.RANGASAMY COLLEGE OF ARTS AND SCIENCE (AUTONOMOUS)

NAAC Accredited and an ISO Certified Institution affiliated to Periyar

University,Salem,
Included under 2(f) & 12B of UGC Act, 1956

K.S.R. Kalvi Nagar, Tiruchengode – 637 215

Namakkal District, Tamil Nadu, India

MAY 2024
K.S.RANGASAMY COLLEGE OF ARTS AND SCIENCE (AUTONOMOUS)
NAAC Accredited and an ISO Certified Institution affiliated to Periyar
University, Salem,
Included under 2(f) & 12B of UGC Act, 1956

K.S.R. Kalvi Nagar, Tiruchengode – 637 215

Namakkal District, Tamil Nadu, India

ONLINE COMPLAINTS REGISTRATION AND MANAGEMENT SYSTEM

Bonafide work done by

SANMATHI.S (21UCS132)
ELAVARASU.G (21UCS031)
NACHIMUTHU.C (21UCS085)
DHINAKARAN.V (21UCS025)
SARATH.M (21UCS136)
KANNAN.D (21UCS058)

A project report submitted in partial fulfillment of the requirements for the award of the
degree of

BACHELOR OF COMPUTER SCIENCE

Submitted for the Viva-Voce Examination held on

Signature of the Guide Head of the Department

Internal Examiner External Examiner


DECLARATION
DECLARATION

We hereby declare that this project entitled “ONLINE COMPLAINTS


REGISTERATION AND MANAGEMENT SYSTEM” submitted to K.S.Rangasamy
College of Arts and Science (Autonomous), Tiruchengode – 637 215, Periyar University,
Salem is a record of original work done by ourself under the guidance of Ms. D.VINOTHINI
M.Sc., Assistant Professor, Department of Computer Science, K.S.Rangasamy College of
Arts and Science (Autonomous), Tiruchengode and this project work has not formed the basis
for the award of any Degree / Diploma / Associateship / Fellowship or similar title to any
candidate of any university.

Place: Tiruchengode Signature of the Candidate


Date:
SANMATHI.S (21UCS132)-
ELAVARASU.G (21UCS031)-
NACHIMUTHU.C (21UCS085)-
DHINAKARAN.V (21UCS025)-
SARATH.M (21UCS136)-
KANNAN.D (21UCS058)-
ACKNOWLEDGEMENT
ACKNOWLEDGEMENT

We are very much grateful to the almighty god and my parents who helped me all
the way and who have modeled us into what we are today.

We acknowledge sincere thanks to our beloved Chairman Mr. R. Srinivasan


and Principal Dr. V. Radhakrishnan, K.S. Rangasamy College of Arts and Science,
for their immense help in carrying out the project.

We pay gratitude to our respectable Head of the Department


Dr. P. PRADEEP KUMAR., M.Sc[CT]., M.Phil., M.E., M.B.A., Ph.D., for enabling us
to make use of the laboratory and library facility liberally which helped us a long way in
carrying out our project work successfully.

We express our sincere thanks to our Project Coordinator


Mr.K.RAJKUMAR MCA.,M.Phil., Assistant Professor, Department of Computer
Science, who has given valuable suggestions in reviews and coordinated us to complete
this project.

We extend our sincere thanks to our Project Guide


Ms. D.VINOTHINI M.Sc., Assistant Professor, Department of Computer Science,
who guided us in the right way to finish our project Successfully.

We sincerely thank all the Faculty members of the Department of Computer


Science for their kind co-operation and support during the period of our project wo
S.NO TITLE PAGE NO
1 INTRODUCTION 1

1.1 ABOUT THE ORGANIZATION 2

1.2 ABSTRACT 2

1.3 STAKE HOLDERS 3

2 SYSTEM STUDY 4
2.1 EXISTING SYSTEM 5
2.1.1 DISADVANTAGES 5
2.2 PROPOSED SYSTEM 6
2.2.1 ADAVANTAGES 6
2.2.2 PROJECT DESCRIPTION 7
2.2.3 MODULES DESCRIPTION 8
2.3 REQUIREMENT PHASE 9
2.3.1 HARDWARE REQUIREMENTS 9
2.3.2 SOFTWARE REQUIREMENTS 9
2.3.3 ABOUT THE SOFTWARE 10
2.3.4 FUNCTIONAL REQUIREMENTS 35
2.3.5 NON FUNCTIONAL REQUIREMENTS 36
2.3.6 MANPOWER RESOURCE 37
2.3.7 SYSTEM RESOURCES 37
2.3.8 DATA COLLECTION(MODULE WISE) 38
3 SYSTEM DESIGN 39
3.1. SYSTEM FLOW DIAGRAM 40
3.2 DATA FLOW DIAGRAM 41
3.3. USE CASE DIAGRAM 42
3.4 INPUT DESIGN 43
3.5 OUTPUT DESIGN 46
3.6 DATA BASE DESIGN 50
4 TESTING AND IMPLEMENTATION 52
4.1 TESTING TECHNIQUES 53
4.2.TEST CASES 53
5 CONCLUSION 56
6 FUTURE ENHANCEMENT 58
7 BIBLIOGRAPHY 60
8 APPENDIX 62
8.1 SOURCE CODE 63
8.2 SCREEN LAYOUTS 77
INTRODUCTION

1
1. INTRODUCTION

1.1 ABOUT THE ORGANIZATION

Educational Institutions form the building blocks of one’s personality. A good institute
leaves no stone unturned in moulding one’s character. It wields a powerfull influence as the
formative years of every individual are spent within the premises of the institute. The
K.S.Rangasamy College of Arts and Science (Autonomos) ensures a memorable chapter in the
campus life of each and every student K.S.Rangasamy College of Arts and Science
(Autonomous), Tiruchengode, was started in the year 1995 by the K.S.R Educational and
Charitable Trust. Lion.Dr.K.S.Rangasamy MJF, is the President of the Trust and the founding
father of KSRCAS. Affiliation was granted to the college in 1995 by the University of
Madras.Now the college is affiliated to the Periyar University, Salem. The College has been
recognized by the UGC u/s 2(f). The College has been awarded the prestigious ISO 9001-2000(E)
certificated by RMTUV. The University Grants Commission, New Delhi has conferred
Autonomous status form the Academic year 2009-2010.

1.2 ABSTRACT

Online Complaint Management Based on Android is a mission to create a social awareness


and responsibility to the public. The main motto of this mission is to improve the society a step
ahead. Using this mission the people can tell their unfulfilled social grievance without any
obstructions by capturing photograph and posting in the post truth application. This project is to
monitor the problem occurring in the society and resolved grievance is notified. The purpose of
this paper is to create more and more awareness among each individual by delivering the message
of truthful information.

Context Based Complaint Management Based on Android creates social awareness and
responsibility to the public. Monitoring the problem occurring in the society and finding solutions.
It provides online complaint booking and updated solutions of that complaints. It provides Real-
time Google maps Access.

2
1.3 STAKEHOLDER

The stakeholders involved in the "Online Complaint Registration and Management System"
are diverse and essential for its success.The Stakeholder are,

➢ Admin
➢ Employee
➢ User

First and foremost, citizens represent a crucial stakeholder group as they are the primary
users of the system. For them, the platform serves as a convenient and accessible means to register
complaints regarding various municipal services and infrastructural issues.

Their engagement with the system not only reflects their expectations for efficient
governance but also plays a vital role in ensuring accountability and transparency within the
municipality. Municipal authorities, on the other hand, are tasked with overseeing the
administration and operations of the complaint management system. Their involvement is integral
for the effective handling and resolution of complaints submitted through the platform. They
utilize the system to process incoming complaints, assign them to the relevant departments or
personnel, monitor the progress of resolution efforts, and provide timely responses to citizens.
Additionally, IT professionals and developers play a crucial role in the design, development, and
maintenance of the online platform.

Their expertise ensures the functionality, security, and usability of the system, ultimately
enhancing the overall user experience. Furthermore, elected officials and policymakers within the
municipality hold a stake in the systems success as it directly reflects their commitment to
responsive and accountable governance.

By leveraging technology to streamline the complaint registration and management process,


they demonstrate a commitment to addressing citizens concerns and improving the quality of
municipal services. Overall, the collaboration and engagement of these stakeholders are essential
for the successful implementation and operation of the "Online Complaint Registration and
Management System," ultimately contributing to more efficient, transparent, and citizen-centric
gover

3
SYSTEM STUDY

4
2. SYSTEM STUDY

2.1. EXISTING SYSTEM:

The existing "Online Complaint Registration and Management System" is a web-


based platform designed to facilitate the submission, tracking, and resolution of complaints
related to municipal services and infrastructure. Citizens can access the system through the
municipality’s official website or a dedicated mobile application.

The system allows users to register complaints by providing relevant details such as
the nature of the issue, location, and any supporting information or media (such as photos or
videos). Upon submission, complaints are automatically assigned a unique reference number
for tracking purposes.

Municipal authorities utilize a backend dashboard to manage incoming complaints


efficiently.They can categorize and prioritize complaints based on urgency and allocate
resources accordingly. The system facilitates communication between citizens and
municipal officials, allowing for updates on the status of complaints and notifications
regarding resolution efforts.

Once a complaint is addressed, citizens receive notifications informing them of the


outcome and any actions taken by the municipality. They may also have the opportunity to
provide feedback on the resolution process, helping to improve service delivery and
accountability.

2.1.1 DISADVANTAGES:

➢ It is a challenging problem due to the limitations on processing power, limited storage


of the mobile device, limited network bandwidth and connection instability, privacy and
security concerns.
➢ No existing application exists for the mobile platform.
➢ Image should be posted immediately at the place where you take the image.

5
2.2 PROPOSED SYSTEM

Proposed system is to develop a Post Truth application for the android platform. The
application is first created to allow the users register themselves along with their location to
the database. The user side android code captures the image and automatically finds the
location with the help of GPS.

Admin receive the images and allocate the work to officers. The objective of the post
truth system is to make complaints easier to coordinate, monitor, track and resolve, and to
provide authority with an effective tool to identify and target problem areas, monitor
complaints handling performance and make society improvements.

Creating an online complaints registration and management system using JavaScript


and C# is a feasible approach. JavaScript can be used for the front-end development,
handling interactions and validations on the client-side, while C# can be used for the back-
end logic, handling database operations, and managing user authentication and authorization.
This combination can provide a robust and efficient system for registering, tracking, and
resolving complaints.

It is used to assessing, analyzing and responding to people complaints. Our system


has advanced user friendly interface so anyone can access this system with basic android
knowledge. It provides assurance to the user about their complaints that whether it is solved
or not.

2.2.1 ADVANTAGES

➢ Handling complaints from people in a better way.


➢ Can provide standard services for a community.
➢ Decision making at administrative level will be flexible
➢ To make complaints easier to coordinate, monitor, track and resolve,
➢ Prompt and specific retrieval of data.
➢ Flexibility in the system according to the changing environment.
➢ Controlling redundancy in storing the same data multiple times.
➢ Accuracy, timeliness and comprehensiveness of the system output.
➢ Processes bulk amount of data in less period of time

6
2.2.2 PROJECT DESCRIPTION

The Online Complaint Registration and Management System (OCRMS) is a


comprehensive web-based platform designed to streamline the process of registering,
tracking, and resolving complaints efficiently. It provides users with a user-friendly interface
to submit their grievances, monitor the status of their complaints, and receive timely updates
on the resolution process.

KEY FEATURES:

➢ User Registration and Authentication: Users can create accounts securely, with
authentication measures ensuring data privacy and security.
➢ Complaint Submission: A simple and intuitive interface allows users to submit their
complaints along with relevant details, such as category, description, and attachments.
➢ Complaint Tracking: Users can track the progress of their complaints in real-time, with
updates at each stage of the resolution process.
➢ Escalation Mechanism: The system includes an escalation process for unresolved
complaints, ensuring timely attention and action.
➢ Communication Channels: Integrated communication channels enable seamless
interaction between users and support staff, facilitating clarification and updates.
➢ Analytics and Reporting: Comprehensive analytics and reporting tools provide insights
into complaint trends, resolution times, and performance metrics.
➢ Administrator Dashboard: Administrators have access to a centralized dashboard to
manage user accounts, track complaints, assign tasks, and generate reports.
➢ Mobile Accessibility: The system is mobile-responsive, allowing users to access it from
any device, ensuring convenience and accessibility.
➢ Secure Data Storage: Robust data encryption and security protocols safeguard user
information and ensure compliance with data protection regulations.

Overall, the Online Complaint Registration and Management System aims to


revolutionize the complaint management process, fostering transparency, efficiency, and
accountability in addressing grievances.

7
2.2.3 MODULE DESCRIPTION

MODULES

➢ Admin
➢ Employee
➢ User

Home Page:

➢ In this we are capturing the images by camera and posting the complaints, are stored
in database.

Post:

➢ After posting the grievance, write some hint about that grievance linking to the head
office and they will distribute to the particular wards.
➢ The complaints are solved and send message to the head office. They will reply that
our particular complaints have been resolved.

Job scheduling and Priority:

➢ Job scheduling is done to complete the work at time. The uncompleted work will get
high priority in next day.
➢ Scheduling in the scene of allocating job servants or allocating timing to the jobs.
➢ Each work is monitored under the department control and every work completion
has been recorded and uncompleted works have been notified as soon.

Notification:

➢ The message is send to the person that problems has been resolved with the image
and any complaints nearby our area have been posted is also notified to us.
➢ Comments to our post have also notified to us in our profile.

8
2.3 REQUIREMENT PHASE

2.3.1 HARDWARE REQUIREMENTS

➢ Processor : Intel i3
➢ Hard Disk Drive : 1 TB
➢ Mouse : Optical mouse
➢ Keyboard : Logitech 108 keys
➢ Monitor : 16 Inch color

2.3.2 SOFTWARE REQUIREMENTS

➢ Operating System : Windows XP above


➢ Front End : Android / Visual Studio .Net 2008
➢ Back End : Microsoft SQL Server 2005
➢ Language : JAVA & C#.Net
➢ Server : IIS
➢ IDE Tool : Android Eclipse

9
2.3.3 ABOUT THE SOFTWARE

ANDROID SDK:

Android software development is the process by which new applications are created
for the Android operating system. Applications are usually developed in Java programming
language using the Android Software Development Kit (SDK), but other development
environments are also available.

SOFTWARE ENVIRONMENT:

➢ Android is a software stack for mobile devices that includes an operating system,
middleware and key applications. Google Inc. purchased the initial developer of the
software, Android Inc., in 2005.
➢ Android mobile operating system is based on the Windows 11. Google and other
members of the Open Handset Alliance collaborated on Android's development and
release.

The Android Open Source Project (AOSP) is tasked with the maintenance and further
development of Android.The Android operating system is the world's best-selling
Smartphone platform.
➢ The Android SDK provides the tools and APIs necessary to begin developing
applications Android platform using the Java programming language. Android has a
large community of developers writing applications ("apps") that extend the
functionality of the devices. There are currently over 250,000 apps available for
Android.

FEATURES:

➢ Application framework enabling reuse and replacement of components.


➢ Dalvik virtual machine optimized for mobile devices.
➢ Integrated browser based on the open source WebKit engine.
➢ Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the
OpenGL ES 1.0 specification (hardware acceleration optional).
➢ SQLite for structured data storage.
➢ Media support for common audio, video, and still image formats (MPEG4, H.264, MP3,
AAC, AMR, JPG, PNG, GIF).
10
➢ GSM Telephony (hardware dependent).
➢ Bluetooth, EDGE, 3G, and WiFi (hardware dependent).
➢ Camera, GPS, compass, and accelerometer (hardware dependent).
➢ Rich development environment including a device emulator, tools for debugging,
memory and performance profiling, and a plugin for the Eclipse IDE.

ANDROID ARCHITECTURE:

LIBRARIES:

Android includes a set of C/C++ libraries used by various components of the Android
system. These capabilities are exposed to developers through the Android application
framework. Some of the core libraries are listed below:

11
➢ System C library - a BSD-derived implementation of the standard C system library
(libc), tuned for embedded Linux-based devices.
➢ Media Libraries - based on PacketVideo's OpenCORE; the libraries support playback
and recording of many popular audio and video formats, as well as static image files,
including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG.
➢ Surface Manager - manages access to the display subsystem and seamlessly composites
2D and 3D graphic layers from multiple applications.
➢ LibWebCore - a modern web browser engine which powers both the Android browser
and an embeddable web view.
➢ SGL - the underlying 2D graphics engine
➢ 3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either
hardware 3D acceleration (where available) or the included, highly optimized 3D
software rasterizer.
➢ FreeType - bitmap and vector font rendering
➢ SQLite - a powerful and lightweight relational database engine available to all
applications.

ANDROID RUNTIME:

➢ Android includes a set of core libraries that provides most of the functionality available
in the core libraries of the Java programming language.

➢ Every Android application runs in its own process, with its own instance of the Dalvik
virtual machine. Dalvik has been written so that a device can run multiple VMs
efficiently.

➢ The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized
for minimal memory footprint. The VM is register-based, and runs classes compiled by a
Java language compiler that have been transformed into the .dex format by the included
"dx" tool.

➢ The Dalvik VM relies on the Linux kernel for underlying functionality such as threading
and low-level memory management.

12
WINDOWS 11 :

➢ New User Interface: Windows 11 introduces a refreshed user interface with rounded
corners, centered Start menu, and a new taskbar design for a modern look and feel.

➢ Snap Layouts and Snap Groups: Enhanced window management features allow users
to easily organize and multitask with Snap Layouts and Snap Groups, improving
productivity for document processing.

➢ Microsoft Teams Integration: Windows 11 integrates Microsoft Teams directly into the
taskbar, making it convenient for users to collaborate and communicate while working
on documents.

➢ Virtual Desktops: Virtual desktops enable users to create separate desktop environments
for different tasks or projects, providing a clutter-free workspace for document
processing.

➢ DirectStorage Support: Windows 11 includes DirectStorage support for faster loading


times and smoother performance when accessing documents and other files stored on
compatible hardware.

➢ Improved Touch, Pen, and Voice Input: Enhanced support for touch, pen, and voice
input methods makes it easier for users to interact with documents using alternative input
devices.

➢ Compatibility with Existing Apps: Windows 11 maintains compatibility with existing


apps and peripherals, ensuring a seamless transition for users migrating from previous
versions of Windows.

➢ Enhanced Security: Windows 11 includes built-in security features such as Windows


Hello for biometric authentication and enhanced malware protection, safeguarding
sensitive documents and data.

➢ System Requirements: Windows 11 introduces updated system requirements, including


support for newer processors, increased RAM and storage requirements, and Secure Boot
support for enhanced security.

13
➢ Continued Support and Updates: Microsoft commits to providing regular updates and
support for Windows 11, including security patches, feature updates, and improvements
to ensure a reliable and secure document processing experience.

HARDWARE RUNNING ANDROID :

➢ The main supported platform for Android is the ARM architecture.

➢ The Android OS can be used as an operating system for cellphones, netbooks and tablets,
including the Dell Streak, Samsung Galaxy Tab, TV and other devices. The first
commercially available phone to run the Android operating system was the HTC Dream,
released on 22 October 2008. In early 2010 Google collaborated with HTC to launch its
flagship. Android device, the Nexus One. This was followed later in 2010 with the
Samsung-made Nexus S.

➢ The early feedback on developing applications for the Android platform was mixed.
Issues cited include bugs, lack of documentation, inadequate QA infrastructure, and no
public issue-tracking system. (Google announced an issue tracker on 18 January 2008.)
In December 2007, MergeLab mobile startup founder Adam MacBeth stated,
"Functionality is not there, is poorly documented or just doesn't work. It's clearly not
ready for prime time." Despite this, Android-targeted applications began to appear the
week after the platform was announced.

➢ The first publicly available application was the Snake game The Android Dev Phone is a
SIM-unlocked and hardware-unlocked device that is designed for advanced developers.
While developers can use regular consumer devices purchased at retail to test and use
their applications, some developers may choose not to use a retail device, preferring an
unlocked or no-contract device.

➢ The Android software development kit (SDK) includes a comprehensive set of


development tools. These include a debugger, libraries, a handset emulator (based on
QEMU), documentation, sample code, and tutorials. The SDK is downloadable on the
android developer website. Currently supported development platforms include
computers running Linux (any modern desktop Linux distribution), Mac OS X 10.4.9 or
later, Windows XP or later.

14
➢ The officially supported integrated development environment (IDE) is Eclipse (currently
3.5 or 3.6) using the Android Development Tools (ADT) Plugin, though developers may
use any text editor to edit Java and XML files then use command line tools (Java
Development Kit and Apache Ant are required) to create, build and debug Android
applications as well as control attached Android devices (e.g., triggering a reboot,
installing software package(s) remotely).

➢ Android applications are packaged in .apk format and stored under /data/app folder on
the Android OS (the folder is accessible to root user only for security reasons). APK
package contains .dex files (compiled byte code files called Dalvik executables), resource
files, etc.

ANDROID OPERATION SYSTEM :

➢ Android is an operating system based on Linux with a Java programming interface. It


provides tools e.g. a compiler, debugger and a device emulator as well as its own Java
Virtual machine (Dalvik Virtual Machine - DVM). Android is created by the Open
Handset Alliance which is lead by Google.

➢ Android uses a special virtual machine e.g. the Dalvik Virtual Machine. Dalvik uses
special bytecode. Therefore you cannot run standard Java bytecode on Android. Android
provides a tool "dx" which allows to convert Java Class files into "dex" (Dalvik
Executable) files. Android applications are packed into an .apk (Android Package) file by
the program "aapt" (Android Asset Packaging Tool) .To simplify development Google
provides the Android Development Tools (ADT) for Eclipse . The ADT performs
automatically the conversion from class to dex files and creates the apk during
deployment.

➢ Android supports 2-D and 3-D graphics using the OpenGL libraries and supports data
storage in a SQLite database. Every Android applications runs in its own process and
under its own userid which is generated automatically by the Android system during
deployment.Therefore the application is isolated from other running applications and a
misbehaving application cannot easily harm other Android applications.

15
IMPORTANT ANDROID COMPONENTS :

➢ An Android application consists out of the following parts:

➢ Activity - Represents the presentation layer of an Android application, e.g. a screen which
the user sees. An Android application can have several activities and it can be switched
between them during runtime of the application.

➢ Views - The User interface of an Activities is build with widgets classes which inherent
from "android.view.View". The layout of the views is managed by
"android.view.ViewGroups".

➢ Services - perform background tasks without providing an UI. They can notify the user
via the notification framework in Android.

➢ Content Provider - provides data to applications, via a content provider your application
can share data with other applications. Android contains a SQLite DB which can serve as
data provider.

➢ Intents are asynchronous messages which allow the application to request functionality
from other services or activities. An application can call directly a service or activity
(explicit intent) or asked the Android system for registered services and applications for
an intent (implicit intents). For example the application could ask via an intent for a
contact application. Application register themself to an intent via an Intent Filter. Intents
are a powerful concept as they allow to create loosely coupled applications.

➢ Broadcast Receiver - receives system messages and implicit intents, can be used to react
to changed conditions in the system. An application can register as a broadcast receiver
for certain events and can be started if such an event occurs.

➢ A Java Virtual Machine (JVM) enables a set of computer software programs and data
structures to use a virtual machine model for the execution of other computer programs
and scripts. The model used by a JVM accepts a form of computer intermediate language
commonly referred to as Java bytecode. This language conceptually represents the
instruction set of a stack-oriented, capability architecture.

16
➢ A JVM can also execute bytecode compiled from programming languages other than
Java. For example, Ada source code can be compiled to execute on a JVM. JVMs can
also be released by other companies besides Oracle (the developer of Java) — JVMs using
the "Java" trademark may be developed by other companies as long as they adhere to the
JVM specification published by Oracle and to related contractual obligations.

➢ Java was conceived with the concept of WORA: "write once, run anywhere". This is done
using the Java Virtual Machine. The JVM is the environment in which java programs
execute.

➢ JVM is a crucial component of the Java platform, and because JVMs are available for
many hardware and software platforms, Java can be both middleware and a platform in
its own right, hence the trademark write once, run anywhere. The use of the same
bytecode for all platforms allows Java to be described as "compile once, run anywhere",
as opposed to "write once, compile anywhere", which describes cross-platform compiled
languages. A JVM also enables such features as automated exception handling, which
provides "root-cause" debugging information for every software error (exception),
independent of the source code.

➢ A JVM is distributed along with a set of standard class libraries that implement the Java
application programming interface (API). Appropriate APIs bundled together form the
Java Runtime Environment (JRE).

➢ Programs intended to run on a JVM must be compiled into a standardized portable binary
format, which typically comes in the form of .class files. A program may consist of many
classes in different files. For easier distribution of large programs, multiple class files
may be packaged together in a .jar file (short for Java archive).

➢ The Java application launcher, java, offers a standard way of executing Java code.
Compare javaw.

➢ The JVM runtime executes .class or .jar files, emulating the JVM instruction set by
interpreting it, or using a just-in-time compiler (JIT) such as Oracle's HotSpot. JIT
compiling, not interpreting, is used in most JVMs today to achieve greater speed. There
are also ahead-of-time compilers that enable developers to precompile class files into
native code for particular platforms.

17
DOWNLOAD THE ANDROID SDK :

➢ Welcome Developers! If you are new to the Android SDK, please read the steps below,
for an overview of how to set up the SDK.
➢ If you're already using the Android SDK, you should update to the latest tools or platform
using the Android SDK and AVD Manager, rather than downloading a new SDK starter
package. See Adding SDK Components.

The steps you must follow to set up the Android SDK:

1. Prepare your development computer and ensure it meets the system requirements.
2. Install the SDK starter package from the table above. (If you're on Windows, download
the installer for help with the initial setup).
3. Install the ADT Plugin for Eclipse (if you'll be developing in Eclipse).
4. Add Android platforms and other components to your SDK.
5. Explore the contents of the Android SDK (optional).

To get started, download the appropriate package from the table above, then read the guide
to Installing the SDK.

INSTALLING THE SDK :

Step 1: Preparing Your Development Computer

➢ Before getting started with the Android SDK, take a moment to confirm that your
development computer meets the System Requirements. In particular, you might need to
install the JDK, if you don't have it already.

➢ If you will be developing in Eclipse with the Android Development Tools (ADT) Plugin
the recommended path if you are new to Android make sure that you have a suitable
version of Eclipse installed on your computer as described in the System Requirements
document. If you need to install Eclipse, you can download it from this location:

➢ The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of


Eclipse is recommended.

18
➢ Use the Eclipse update manager to install all available plugins for the Android
Development Tools (ADT) from the URL https://dl-ssl.google.com/android/eclipse/ .

Configuration :

➢ In Eclipse open the Preferences dialog via Windows -> Preferences. Select Android and
maintain the installation path of the Android SDK.

Select Window -> Android SDK and AVD Manager from the menu.

Select available packages and select the latest version of the SDK.

19
Step 2: Downloading the SDK Starter Package

➢ The SDK starter package is not a full development environment—it includes only the
core SDK Tools, which you can use to download the rest of the SDK components (such
as the latest Android platform). If you haven't already, get the latest version of the SDK
starter package from the SDK download page.If you downloaded a .zip or .tgz package
(instead of the SDK installer), unpack it to a safe location on your machine. By default,
the SDK files are unpacked into a directory named android-sdk-<machine-platform>.

➢ If you downloaded the Windows installer (.exe file), run it now and it will check whether
the proper Java SE Development Kit (JDK) is installed (installing it, if necessary), then
install the SDK Tools into a default location (which you can modify).

➢ Make a note of the name and location of the SDK directory on your system—you will
need to refer to the SDK directory later, when setting up the ADT plugin and when using
the SDK tools from the command line.

20
Step 3: Installing the ADT Plugin for Eclipse

➢ Android offers a custom plugin for the Eclipse IDE, called Android Development Tools
(ADT), that is designed to give you a powerful, integrated environment in which to build
Android applications. It extends the capabilites of Eclipse to let you quickly set up new
Android projects, create an application UI, debug your applications using the Android
SDK tools, and even export signed (or unsigned) APKs in order to distribute your
application. In general, developing in Eclipse with ADT is a highly recommended
approach and is the fastest way to get started with Android.

➢ If you'd like to use ADT for developing Android applications, install it now. Read
Installing the ADT Plugin for step-by-step installation instructions, then return here to
continue the last step in setting up your Android SDK.

➢ If you prefer to work in a different IDE, you do not need to install Eclipse or ADT.
Instead, you can directly use the SDK tools to build and debug your application. The
Introduction to Android application development outlines the major steps that you need
to complete when developing in Eclipse or other IDEs.

21
Step 4: Adding Platforms and Other Components

➢ The last step in setting up your SDK is using the Android SDK and AVD Manager (a tool
included in the SDK starter package) to download essential SDK components into your
development environment.

➢ The SDK uses a modular structure that separates the major parts of the SDK Android
platform versions, add-ons, tools, samples, and documentation into a set of separately
installable components. The SDK starter package, which you've already downloaded,
includes only a single component that deals with the latest version of the SDK Tools. To
develop an Android application, you also need to download at least one Android platform
and the associated platform tools. You can add other components and platforms as well,
which is highly recommended.

22
23
If you used the Windows installer, when you complete the installation wizard, it will
launch the Android SDK and AVD Manager with a default set of platforms and other
components selected for you to install. Simply click Install to accept the recommended set
of components and install them. You can then skip to Step 5, but we recommend you first
read the section about the Available Components to better understand the components
available from the Android SDK and AVD Manager.

You can launch the Android SDK and AVD Manager in one of the following ways:

➢ From within Eclipse, select Window > Android SDK and AVD Manager.
➢ On Windows, double-click the SDK Manager.exe file at the root of the Android SDK
directory.
➢ On Mac or Linux, open a terminal and navigate to the tools/ directory in the Android
SDK, then execute.

To download components, use the graphical UI of the Android SDK and AVD Manager to
browse the SDK repository and select new or updated components. The Android SDK and
AVD Manager installs the selected components in your SDK environment. For information
about which components you should download, see Recommended Components.

The Android Repository Offers These Types of Components:

➢ SDK Tools — Contains tools for debugging and testing your application and other utility
tools. These tools are installed with the Android SDK starter package and receive periodic
updates. You can access these tools in the <sdk>/tools/ directory of your SDK. To learn
more about them, see SDK Tools in the developer guide.
➢ SDK Platform-tools — Contains platform-dependent tools for developing and
debugging your application. These tools support the latest features of the Android
platform and are typically updated only when a new platform becomes available. You can
access these tools in the <sdk>/platform-tools/ directory. To learn more about them, see
Platform Tools in the developer guide.
➢ Android platforms — An SDK platform is available for every production Android
platform deployable to Android-powered devices. Each SDK platform component
includes a fully compliant Android library, system image, sample code, and emulator

24
skins. To learn more about a specific platform, see the list of platforms that appears under
the section "Downloadable SDK Components" on the left part of this page.
➢ USB Driver for Windows (Windows only) — Contains driver files that you can install
on your Windows computer, so that you can run and debug your applications on an actual
device. You do not need the USB driver unless you plan to debug your application on an
actual Android-powered device. If you develop on Mac OS X or Linux, you do not need
a special driver to debug your application on an Android-powered device. See Using
Hardware Devices for more information about developing on a real device.
➢ Samples — Contains the sample code and apps available for each Android development
platform. If you are just getting started with Android development, make sure to
download the samples to your SDK.
➢ Documentation — Contains a local copy of the latest multi version documentation for
the Android framework API.

The Third party Add-ons provide components that allow you to create a development
environment using a specific Android external library (such as the Google Maps library) or
a customized (but fully compliant) Android system image. You can add additional Add-on
repositories by clicking Add Add-on Site.

ECLIPSE:

➢ Eclipse is an open source community whose projects are focused on building an


extensible development platform, runtimes and application frameworks for building,
deploying and managing software across the entire software lifecycle. Many people know
us, and hopefully love us, as a Java IDE but Eclipse is much more than a Java IDE.

➢ The Eclipse open source community has over 60 open source projects. These projects can
be conceptually organized into seven different "pillars" or categories:

1. Enterprise Development
2. Embedded and Device Development
3. Rich Client Platform
4. Rich Internet Applications
5. Application Frameworks
6. Application Lifecycle Management (ALM)
7. Service Oriented Architecture (SOA)
25
➢ The Eclipse community is also supported by a large and vibrant ecosystem of major IT
solution providers, innovative start-ups, universities and research institutions and
individuals that extend, support and complement the Eclipse Platform.
➢ The exciting thing about Eclipse is many people are using Eclipse in ways that we have
never imagined. The common thread is that they are building innovative, industrial
strength software and want to use great tools, frameworks and runtimes to make their job
easier.
➢ Eclipse is a multi-language software development environment comprising an integrated
development environment (IDE) and an extensible plug-in system. It is written mostly in
Java and can be used to develop applications in Java and, by means of various plug-ins,
other programming languages including Ada, C, C++, COBOL, Perl, PHP, Python, Ruby
(including Ruby on Rails framework), Scala, Clojure, and Scheme. The IDE is often
called Eclipse ADT for Ada, Eclipse CDT for C/C++, Eclipse JDT for Java, and Eclipse
PDT for PHP.

ARCHITECTURE:

➢ Eclipse employs plug-ins in order to provide all of its functionality on top of (and
including) the runtime system, in contrast to some other applications where functionality
is typically hard coded. The runtime system of Eclipse is based on Equinox, an OSGi
standard compliant implementation.

➢ This plug-in mechanism is a lightweight software componentry framework. In addition


to allowing Eclipse to be extended using other programming languages such as C and
Python, the plug-in framework allows Eclipse to work with typesetting languages like
LaTeX, networking applications such as telnet, and database management systems. The
plug-in architecture supports writing any desired extension to the environment, such as
for configuration management. Java and CVS support is provided in the Eclipse SDK,
with Subversion support provided by third-party plug-ins.

➢ With the exception of a small run-time kernel, everything in Eclipse is a plug-in. This
means that every plug-in developed integrates with Eclipse in exactly the same way as
other plug-ins; in this respect, all features are "created equal". Eclipse provides plug-ins
for a wide variety of features, some of which are through third parties using both free and

26
commercial models. Examples of plug-ins include a UML plug-in for Sequence and other
UML diagrams, a plug-in for DB Explorer, and many others.

➢ The Eclipse SDK includes the Eclipse Java Development Tools (JDT), offering an IDE
with a built-in incremental Java compiler and a full model of the Java source files. This
allows for advanced refactoring techniques and code analysis. The IDE also makes use
of a workspace, in this case a set of metadata over a flat file space allowing external file
modifications as long as the corresponding workspace "resource" is refreshed afterwards.

➢ Eclipse implements widgets through a widget toolkit for Java called SWT, unlike most
Java applications, which use the Java standard Abstract Window Toolkit (AWT) or
Swing. Eclipse user interface also uses an intermediate GUI layer called JFace, which
simplifies the construction of applications based on SWT.

Rich Client Platform:

1. Equinox OSGi – a standard bundling framework


2. Core platform – boot Eclipse, run plug-ins
3. Standard Widget Toolkit (SWT) – a portable widget toolkit
4. Eclipse Workbench – views, editors, perspectives, wizards

HISTORY:

➢ Eclipse began as an IBM Canada project. It was developed by Object Technology


International (OTI) as a Java-based replacement for the Smalltalk based Visual Age
family of IDE products, which itself had been developed by OTI. In November 2001, a
consortium was formed to further the development of Eclipse as open source. In January
2004, the Eclipse Foundation was created.

➢ Eclipse 3.0 (released on 21 June 2004) selected the OSGi Service Platform specifications
as the runtime architecture.

➢ Eclipse was originally released under the Common Public License, but was later
relicensed under the Eclipse Public License. The Free Software Foundation has said that
both licenses are free software licenses, but are incompatible with the GNU General
Public License (GPL). Mike Milinkovich, of the Eclipse Foundation commented that
moving to the GPL would be considered when version 3 of the GPL was released.
27
➢ According to Lee Nackman, Chief Technology Officer of IBM Rational division at that
time and later head of Rational software development and support, the name "Eclipse"
was chosen to target Microsoft Visual Studio product, and not Sun Microsystems.
Ironically, Nackman is now himself a Microsoft employee.

ECLIPSE (SDK):

➢ Eclipse Software Development Kit (SDK) is a Java based open-source integrated


development environment (IDE) which combines a number of different Eclipse projects
including Platform, Java Development Tools (JDT) and the Plug-in Development
Environment (PDE).

➢ Eclipse can be used to create a large array of software applications using languages
ranging from PHP, C++ programs, to Java.It is one of the most popular development tools
in both the open-source and commercial worlds.It provides Java editing with validation,
incremental compilation, cross-referencing, code assist an XML Editor and much more.

➢ Eclipse is released under the Eclipse Foundation, a commercially friendly license that
allows organizations to include Eclipse software in their commercial products, while at
the same time asking those who create derivative works of EPL code to contribute back
to the.

➢ ECLIPSE PLATFORM:

28
The Eclipse Platform provides the core frameworks and services upon which all plug-
In extensions are created. It also provides the runtime in which plug-ins are loaded,
integrated, and executed. The primary purpose of the Platform is to enable other tool
developers to easily build and deliver integrated tools.

KEY FEATURES :

➢ Supports the construction of a variety of tools for application development


➢ Supports an unrestricted set of tool providers, including independent software vendors
(ISVs)
➢ Supports tools to manipulate arbitrary content types (e.g., HTML, Java, C, JSP, EJB,
XML, and GIF)
➢ Facilitates seamless integration of tools within and across different content types and tool
providers
➢ Supports both GUI and non-GUI-based application development environments

JAVA DEVELOPMENT TOOLS (JDT):

The JDT project provides the tool plug-ins that implement a Java IDE supporting the
development of any Java application, including Eclipse plug-ins. It adds a Java project nature
and Java perspective to the Eclipse Workbench as well as a number of views, editors,
wizards, builders, and code merging and refactoring tools. The JDT project allows Eclipse
to be a development environment for itself.

KEY FEATURES :

➢ Java projects with source files arranged in package directories


➢ Editing with keyword and syntax coloring, outline showing declaration structure
➢ Code formatter
➢ Refactoring
➢ Search
➢ Compile - JCK-compliant Java compiler
➢ Run Java programs in a separate target Java virtual machine
➢ Debug programs with JPDA-compliant Java virtual machine

29
ANDROID SOURCE CODE:

The steps to be followed:

➢ During Android development it is very useful to have the Android source code available
as Android uses a lot of defaults.

➢ Haris Peco maintains plugins with provides access to the Android Source code. Use
the Eclipse update manager to install two of his plugins.

Create an Android Emulator Device:

The Android tools include an emulator. This emulator behaves like a real Android
device in most cases and allow you to test your application without having a real device.
You can emulate one or several devices with different configurations. Each configuration is
defined via an "Android Virtual Device" (AVD).

To define an AVD press the device manager button, press "New" and maintain the following.

30
Press "Create AVD".This will create the device and display it under the "Virtual devices".
To test if your setup is correct, select your device and press "Start".

31
Error handling :

➢ Things are not always working as they should be. Several users report that get the
following errors:

1. Project ... is missing required source folder: 'gen'


2. The project could not be built until build path errors are resolved.
3. Unable to open class file R.java.

➢ To solve this error select from the menu Project -> Clean.

➢ If you having problems with your own code you can use the LogCat viewer as described
in LogCat Viewer .

SQL SERVER 2005 :

➢ SQL Server 2005 is the successor to SQL Server 2000. It included native support for
managing XML data, in addition to relational data. For this purpose, it defined an xml
data type that could be used either as a data type in database columns or as literals in
queries. XML columns can be associated with XSD schemas. XML data being stored is
verified against the schema. XML is converted to an internal binary data type before being
stored in the database.

➢ Specialized indexing methods were made available for XML data. XML data is queried
using XQuery. Common Language Runtime (CLR) integration was a main feature with
this edition, enabling one to write SQL code as Managed Code by the CLR. SQL Server
2005 added some extensions to the T-SQL language to allow embedding XQuery queries
in T-SQL. In addition, it also defines a new extension to XQuery, called XML DML that
allows query-based modifications to XML data.

➢ SQL Server 2005 also allows a database server to be exposed over web services using
Tabular Data Stream (TDS) packets encapsulated within SOAP (protocol) requests.
When the data is accessed over web services, results are returned as XML.For relational
data, T-SQL has been augmented with error handling features (try/catch) and support for
recursive queries with CTEs (Common Table Expressions). SQL Server 2005 has also
been enhanced with new indexing algorithms, syntax and better error recovery systems.

32
➢ Data pages are check summed for better error resiliency, and optimistic concurrency
support has been added for better performance. Permissions and access control have been
made more granular and the query processor handles concurrent execution of queries in
a more efficient way. Partitions on tables and indexes are supported natively, so scaling
out a database onto a cluster is easier. SQL CLR was introduced with SQL Server 2005
to let it integrate with the .NET Framework.

➢ SQL Server 2005 introduced "MARS" (Multiple Active Results Sets), a method of
allowing usage of database connections for multiple purpose.SQL Server 2005 introduced
DMVs (Dynamic Management Views), which are specialized views and functions that
return server state information that can be used to monitor the health of a server instance,
diagnose problems, and tune performance.

SQL Server Configuration Manager:

➢ SQL Server Configuration Manager is a new tool in SQL Server 2005. It is used to
manage SQL Server 2005 services and connections. It has been developed as a Microsoft
Management Console (MMC) plug-in application Its window is divided into a Console
tree (left pane) and a Details pane. It can be managed through SQL Server services and
connection configurations by navigating objects in the Console tree.

Managing Services :

➢ SQL Server
➢ SQL Server Agent
➢ SQL Server Browser
➢ SQL Server Integration Services
➢ SQL Server Anaylysis Services

SQL Server Management Studio :

➢ This tool is a new feature in SQL Server 2005. It replaces Enterprise Manager and Query
Analyzer from earlier versions. It has been developed using a Visual Studio shell as a
base. It follows the paradigm of Visual Studio, in which most tools are organized as
tabbed, dockable, or floating windows.

33
➢ The registered server’s pane allows viewing and managing parameters for connecting to
servers. The tool includes both script editors and graphical tools which work with objects
and features of the server.A central feature of SQL Server Management Studio is the
Object Explorer, which allows the user to browse, select, and act upon any of the objects
within the server.

SQL Server 2005 Features :

➢ Database mirroring
➢ T-SQL (Transaction SQL) enhancements
➢ CLR integration
➢ Service Broker
➢ DDL triggers
➢ Ranking functions
➢ Row versioning-based isolation levels
➢ XML integration
➢ TRY...CATCH
➢ Database Mail
➢ Data encryption

Ease Of Installation, Deployment, And Use :

SQL Server includes a set of administrative and development tools that improve
ability to install, deploy, manage, and use SQL Server across several sites.

Scalability :

The same database engine can be used across platforms ranging from laptop
computers running Microsoft Windows 95/98 to large, multiprocessor servers running
Microsoft Windows NT, Enterprise Edition.

Data Warehousing :

SQL Server includes tools for extracting and analyzing summary data for online
analytical processing (OLAP). SQL Server also includes tools for visually designing
databases and analyzing data using English-based questions. In this project SQL server is
used because of the above features.

34
2.3.4 FUNCTIONAL REQUIREMENTS :

➢ The "Online Complaint Registration and Management System" entails a set of functional
requirements aimed at seamlessly facilitating the submission, tracking, and resolution of
municipal-related complaints.

➢ Firstly, it necessitates a robust user registration and authentication process, ensuring that
citizens can securely create accounts and access the platform.

➢ Once registered, users should be able to easily submit complaints via a user-friendly
interface, providing essential details such as the nature of the issue, location specifics,
and any supporting documentation.

➢ Validation mechanisms must ensure the accuracy and relevance of the information
provided. The system should then enable municipal authorities to efficiently manage
incoming complaints, categorizing them based on urgency and allocating resources
accordingly.

➢ Clear communication channels between citizens and authorities are crucial, necessitating
features for tracking the status of complaints and receiving timely updates on resolution
efforts.

➢ Furthermore, citizens should have the ability to provide feedback on the handling of their
complaints, fostering transparency and accountability within the municipal governance
framework.

➢ Additionally, functionalities for data analytics and performance monitoring can offer
valuable insights into recurring issues and service delivery metrics, aiding in continual
improvement efforts.

➢ Overall, the functional requirements of such a system are geared towards enhancing
citizen engagement, streamlining administrative processes, and ultimately improving the
quality of municipal services.

35
2.3.5 NON FUNCTIONAL REQUIREMENTS

➢ In addition to its functional aspects, the effectiveness of the "Municipality Online


Complaint Registration and Management System" relies heavily on its non-functional
requirements.

➢ Ensuring a seamless user experience, the system must boast an intuitive interface that is
easily navigable for citizens of all technical backgrounds.

➢ Performance is paramount; the system must maintain responsiveness even under high
loads, handling concurrent users and complaints efficiently.

➢ Reliability is non-negotiable, with minimal downtime or disruptions, while availability


should be consistent to allow citizens to access the system whenever needed.

➢ Security measures must be robust to protect user data and ensure privacy, employing
encryption and authentication mechanisms.

➢ Moreover, scalability is crucial to accommodate potential growth in user base and


complaint submissions without compromising performance.

➢ Compliance with accessibility standards is also essential to ensure inclusivity and


usability for all citizens.

➢ Together, these non-functional requirements are pivotal in shaping a system that not only
functions effectively but also provides a seamless, secure, and reliable experience for
users.

36
2.3.6 MAN POWER RESOURCE

SOFTWARE DEVELOPERS

Front-end Developers:

➢ Responsibilities: Design and develop the user interface (UI) of the system.
➢ Skills: HTML, CSS, JavaScript.

Back-end Developers:

➢ Responsibilities: Develop the server-side logic, database interactions, and


system functionalities.
➢ Skills: Programming languages (e.g., Java, Python, PHP), database management
(e.g., SQL), and server management

DEVELOPMENT TOOL

➢ Database Management System.


➢ MySQL is an open-source relational database management system that is frequently
used in online applications.
➢ MySQL database that stores document-oriented data and is ideal for applications
that require flexible data models.

2.3.7 SYSTEM RESOURCE

➢ The Online Complaint Registration and Management System requires a robust backend
and frontend architecture. For the frontend, JavaScript frameworks such as React or
Angular will be used to create an interactive user interface.
➢ The backend will be developed using C#, leveraging the ASP.NET Core framework to
handle server-side logic, authentication, and data processing.
➢ The system will utilize a SQL Server database for efficient data storage and retrieval.
Additionally, cloud services like Azure or AWS can be integrated for scalable hosting
and enhanced security.

37
2.3.8 DATA COLLECTION(MODULE WISE)

Login Form :

▪ No data collection.
▪ Collects user input from txt email and txt Password.
▪ Queries the database to check if the user exists and the provided
credentials are correct.
▪ Redirects the user to different pages based on the user type.

Add Employee:

▪ Fetches and displays existing employee records in the GridView.


▪ Fetches and displays existing employee records in the GridView.
▪ Collects data from TextBox and DropDownList controls to add a new
employee record to the database.
▪ Deletes the selected employee record from the database.
▪ Fetches the data of the selected employee record and displays it for
editing.
Post Events :
▪ Fetches and displays existing post records in the GridView.
▪ Fetches and populates the DropDownList with areas.
▪ Collects data from TextBox and DropDownList controls to add a new
post record to the database.
▪ Updates the selected post record with the modified data.
▪ Deletes the selected post record from the database.
▪ Fetches the data of the selected post record and displays it for editing.

User Lists :

▪ Fetches and displays existing user records in the admin page.


▪ Fetches and displays existing user records .
▪ Deletes the selected user record from the database.

38
SYSTEM DESIGN

39
3. SYSTEM DESIGN
3.1 SYSTEM FLOW DIAGRAM

A System flow diagram is a type of behavioural diagram defined by and created from
a use-case analysis. Its purpose is to present a graphical overview of the functionality
provided by a system in terms of actors, their goals (represented as use cases), and any

dependencies between those use cases. The main purpose of a use case diagram is to
show what system functions are performed for which actor. Roles of the actors in the
system can be depicted.
40
3.2 DATA FLOW DIAGRAM
ZERO LEVEL

FIRST LEVEL:

SECOND LEVEL:

41
3.3 USECASE DIAGRAM:

Use case diagram is a hierarchy structure. It is used for the supplier/super shapes are
placed above their client/sub shapes. Use case diagram can be very effective in illustrating
the work flow of various events in a use case diagram. The flow of events of a use case
describes what needs to be done by the system in order to provide value to an actor.

42
3.4 INPUT DESIGN
➢ Input design is the process of converting user-originated inputs to a computer-based
format. Input design is one of the most expensive phases of the operation of
computerized system and is often the major problem of a system.
➢ In the project, the input design is made in various web forms with various methods.

❖ LOGIN PAGE:
➢ Entering mail address.
➢ Entering Password.
➢ Button for submitting login credentials.

❖ ADD EMPLOYEE PAGE:


➢ ID
➢ Password
➢ Employee Name
➢ Department
➢ Qualification
➢ Designation
➢ Mobile Number
➢ Email
➢ Button for adding employee details.

❖ POST EVENTS PAGE:


➢ Event Date
➢ Event Description
➢ Area
➢ posting event details.

❖ ASSIGNING EMPLOYEE BY ADMIN


➢ Complaint id
➢ Post details
➢ Area assigning

43
LOGIN PAGE

POST EVENTS

44
ADD EMPLOYEE

ASSIGNING EMPLOYEE

45
3.5 OUTPUT DESIGN

Output design generally refers to the results and information that are
generated by the system for many end-users; output is the main reason for
developing the system and the basis on which they evaluate the usefulness of
the application. In the project, the booking details, the employee details, trip
sheet details, are the web forms in which the output is available.

OUTPUT FORMS :

USER LOGIN PAGE

46
USER REGISTER PAGE

47
USER POST COMPLAINT PAGE

48
COMPLAINTS UPDATION PAGE

49
3.6 DATABASE DESIGN
The database design is a must for any application developed especially more for the
data store projects. Since the Logistic automation method involves retrieving the information
in the table and produced to the administrator, proper handling of the table is a must. In the
project, login tableis designed to be unique in accepting the username and the length of the
username and password should be greater than zero. The different users viewthe data in
different format according to the privileges given.

TABLE STRUCTURE
Table name: USER

Table name: EMPLOYEE TABLE

50
Table name: COMPLAINTS TABLE

Table name: ADMIN TABLE

Table name: AREAS

51
TESTING AND IMPLEMENTATION

52
4.TESTING AND IMPLEMENTATION

4.1 TESTING TECHNIQUES


Unit testing:
Unit testing focuses verification effort on the smallest unit of software design the
software component or module. The unit test is white-box oriented. The unit testing
implemented in every module of student attendance management System. By giving correct
manual input to the system, the data are stored in database and retrieved. If you want required
module to access input or get the output from the End user. Any error will occured the time
will provide handler to show what type of error will occured.
System Testing:
System testing is actually a series of different tests whose primary purpose is to fully
exercise the computer-based system. Below we have described the two types of testing
which have been taken for this project, it is to check all modules worked on input basis. If
you want change any values or inputs will change all information. so specified input is must.
Performance Testing Performance testing is designed to test the run-time performance of
software within the context of an integrated system. Performance testing occurs throughout
all steps in the testing process. Even at the unit level, the performance of an individual
module may be assessed as white-box tests are conducted. It will generate report fast no have
extra time or waiting of results entered correct data will show result few millisecond just
used only low memory of our system. Automatically do not getting access at another
software. Get user permission and access to other applications.
4.2 TEST CASES
Test case is an object for execution for other modules in the architecture does not
represent any interaction by itself. A test case is a set of sequential steps to execute a test
operating on a set of predefined inputs to produce certain expected outputs. There are two
types of test cases: Manual and Automated. A manual test case is executed manually while
an automated test case is executed using automation. In system testing, test data should cover
the possible values of each parameter based on the requirements. An equivalence class is a
set of values that should all be treated the same. Ideally, test cases that check error conditions
are written separately from the functional test cases and should have steps to verify the error
messages and logs. Realistically, if functional test cases are not yet written, it is ok for testers
to check for error conditions when performing normal functional test cases. It should be clear
which test data, if any is expected to trigger errors.
53
LOGIN FORM:

ADD EMPLOYEE:

54
POST EVENTS:

USER LISTS:

55
CONCLUSION

56
5.CONCLUSION

The “Online Complaint Registration and Management System“ represents a


significant advancement in improving customer service and organizational efficiency. By
transitioning from traditional, paper-based methods to a streamlined, digital platform, this
system ensures that complaints are registered, tracked, and resolved in a timely and
transparent manner. The system not only facilitates easy submission of complaints from
users but also enables efficient management and resolution by the concerned authorities.

The implementation of this system results in enhanced user satisfaction due to its user-
friendly interface and the ability to provide real-time updates on complaint status. Moreover,
the robust data analytics feature allows organizations to identify recurring issues and address
them proactively, thereby improving overall service quality. The system's capability to
generate comprehensive reports further aids in strategic planning and decision-making
processes.

Additionally, the integration of automated notifications and reminders ensures that no


complaint is overlooked, fostering a culture of accountability and responsiveness. The secure
handling of user data and complaints ensures confidentiality and builds trust among users.

In summary, the Online Complaint Registration and Management System is a pivotal


tool for modern organizations aiming to enhance their service delivery and customer
engagement through efficient and transparent complaint management processes.

57
FUTURE ENHANCEMENT

58
6. FUTURE ENHANCEMENT

The system then can be extended to take in other languages as input. Currently the
system reads only java based CV. The app needs to be migrated to other platforms. At present
the synthesizer is only available for Android platform. The app can be integrated with web
to handle large scale requirements.

Future enhancements for the Online Complaint Registration and Management


System could include the integration of artificial intelligence (AI) and machine learning
algorithms to automatically categorize and prioritize complaints based on urgency and
severity. This would streamline the resolution process and ensure that critical issues are
addressed promptly. Additionally, implementing a multilingual support feature would make
the system accessible to a broader user base, catering to diverse linguistic needs.

The incorporation of a mobile application would further enhance accessibility,


allowing users to submit and track complaints on the go. Enhancing data analytics
capabilities to include predictive analytics can help organizations anticipate and mitigate
potential issues before they escalate. Furthermore, integrating a customer feedback module
could provide valuable insights into user satisfaction and areas for improvement.

Finally, expanding the system's interoperability with other organizational software


and platforms, such as CRM and ERP systems, would create a seamless workflow,
enhancing overall operational efficiency and improving user experience.

59
BIBLIOGRAPHY

60
7. BIBLOGRAPHY

Reference Books
• PHP book by Vasvani (TMH publications).
• Beginning PHP5 by WROX.
• Informatics practices by Sumita Arora.
• Head First PHP & MySQL by Lynn Beighley and Michael Morrison(O’Reilly)

Web References
• www.wikipedia.com
• www.w3schools.com
• http://www.phpreferencebook.com/

61
APPENDIX

62
8.APPENDIX
8.1 SOURCE CODE:

package com.example.posttruth;
import java.io.ByteArrayOutputStream;
import javax.sql.DataSource;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.MarshalBase64;
import org.ksoap2.serialization.PropertyInfo;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import android.R.string;
import android.graphics.Bitmap;
public class WebService<DataTable> {
//Namespace of the Webservice - can be found in WSDL
private static String NAMESPACE = "http://tempuri.org/";
//Webservice URL - WSDL File location
public static final String URLimg = "http://192.168.139.227:32768";
private static final String URL =
"http://192.168.139.227:32768/Service.asmx";//Make sure you changed IP address
//SOAP Action URI again Namespace + Web method name
private static String SOAP_ACTION = "http://tempuri.org/";
public static String register(String p1,String p2,String p3,String p4,String p5,String
p6,String p7,String p8,String p9,String webMethName) {
String registerStatus ="";
// Create request
SoapObject request = new SoapObject(NAMESPACE, webMethName);
// Property which holds input parameters
PropertyInfo pi1 = new PropertyInfo();
PropertyInfo pi2 = new PropertyInfo();
PropertyInfo pi3 = new PropertyInfo();
PropertyInfo pi4 = new PropertyInfo();

63
PropertyInfo pi5 = new PropertyInfo();
PropertyInfo pi6 = new PropertyInfo();
PropertyInfo pi7 = new PropertyInfo();
PropertyInfo pi8 = new PropertyInfo();
PropertyInfo pi9 = new PropertyInfo();
pi1.setName("p1");
pi1.setValue(p1);
pi1.setType(String.class);
request.addProperty(pi1);
pi2.setName("p2");
pi2.setValue(p2);object
pi2.setType(String.class);
request.addProperty(pi2);
pi3.setName("p3");
pi3.setValue(p3);
pi3.setType(String.class);
request.addProperty(pi3);
pi4.setName("p4");
pi4.setValue(p4);
pi4.setType(String.class);
request.addProperty(pi4);
pi5.setName("p5");
pi5.setValue(p5);
pi5.setType(String.class);
request.addProperty(pi5);
pi6.setName("p6");
pi6.setValue(p6);
pi6.setType(String.class);
request.addProperty(pi6);
pi7.setName("p7");
pi7.setValue(p7);
pi7.setType(String.class);
request.addProperty(pi7);
pi8.setName("p8");
64
pi8.setValue(p8);
pi8.setType(String.class);
request.addProperty(pi8);
pi9.setName("p9");
pi9.setValue(p9);
pi9.setType(String.class);
request.addProperty(pi9);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope
(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try {
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
registerStatus = response.toString();
}
catch (Exception e)
{
e.printStackTrace();
}
return registerStatus;
}
public static String sendreq(String p1,String p2,String p3,String p4,String p5,String
p6,String p7,String webMethName) {
String registerStatus ="";
SoapObject request = new SoapObject(NAMESPACE, webMethName);
PropertyInfo pi1 = new PropertyInfo();
PropertyInfo pi2 = new PropertyInfo();
PropertyInfo pi3 = new PropertyInfo();
PropertyInfo pi4 = new PropertyInfo();
PropertyInfo pi5 = new PropertyInfo();
PropertyInfo pi6 = new PropertyInfo();
65
PropertyInfo pi7 = new PropertyInfo();
pi1.setName("p1");
pi1.setValue(p1);
pi1.setType(String.class);
request.addProperty(pi1);
pi2.setName("p2");
pi2.setValue(p2);
pi2.setType(String.class);
request.addProperty(pi2);
pi3.setName("p3");
pi3.setValue(p3);
pi3.setType(String.class);
request.addProperty(pi3);
pi4.setName("p4");
pi4.setValue(p4);
pi4.setType(String.class);
request.addProperty(pi4);
pi5.setName("p5");
pi5.setValue(p5);
pi5.setType(String.class);
request.addProperty(pi5);
pi6.setName("p6");
pi6.setValue(p6);
pi6.setType(String.class);
request.addProperty(pi6);
pi7.setName("p7");
pi7.setValue(p7);
pi7.setType(String.class);
request.addProperty(pi7);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
MarshalBase64 marshal = new MarshalBase64();
marshal.register(envelope);
66
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new
HttpTransportSE(URL);
try {
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
registerStatus = response.toString();
} catch (Exception e) {
e.printStackTrace();
}
//Return booleam to calling object
return registerStatus;
}
public static String confirmorder(String p1,String p2,String p3,String
webMethName) {
String registerStatus ="";
SoapObject request = new SoapObject(NAMESPACE, webMethName);
PropertyInfo pi1 = new PropertyInfo();
PropertyInfo pi2 = new PropertyInfo();
PropertyInfo pi3 = new PropertyInfo();
pi1.setName("p1");
pi1.setValue(p1);
pi1.setType(String.class);
request.addProperty(pi1);
pi2.setName("p2");
pi2.setValue(p2);
pi2.setType(String.class);
request.addProperty(pi2);
pi3.setName("p3");
pi3.setValue(p3);
pi3.setType(String.class);
request.addProperty(pi3);
// Create envelope
67
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
// Set output SOAP object
envelope.setOutputSoapObject(request);
// Create HTTP call object
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try {
// Invoke web service
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
// Get the response
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
// Assign it to boolean variable variable
registerStatus = response.toString();
} catch (Exception e) {
//Assign Error Status true in static variable 'errored'
e.printStackTrace();
}
//Return booleam to calling object
return registerStatus;
}
public static String logincheck(String username,String webMethName) {
String loginStatus ="";
// Create request
SoapObject request = new SoapObject(NAMESPACE, webMethName);
// Property which holds input parameters
PropertyInfo unamePI = new PropertyInfo();
PropertyInfo passPI = new PropertyInfo();
// Set Username
unamePI.setName("username");
// Set Value
unamePI.setValue(username);
// Set dataType
68
unamePI.setType(String.class);
// Add the property to request object
request.addProperty(unamePI);
// Create envelope
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
// Set output SOAP object
envelope.setOutputSoapObject(request);
// Create HTTP call object
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try {
// Invoke web service
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
// Get the response
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
// Assign it to boolean variable variable
loginStatus = response.toString();
} catch (Exception e) {
//Assign Error Status true in static variable 'errored'

e.printStackTrace();
}
//Return booleam to calling object
return loginStatus;
}
public static String getList(String username,String webMethName) {
String loginStatus ="";
// Create request
SoapObject request = new SoapObject(NAMESPACE, webMethName);
// Property which holds input parameters
PropertyInfo unamePI = new PropertyInfo();
PropertyInfo passPI = new PropertyInfo();
69
// Set Username
unamePI.setName("p1");
// Set Value
unamePI.setValue(username);
// Set dataType
unamePI.setType(String.class);
// Add the property to request object
request.addProperty(unamePI);
// Create envelope
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
// Set output SOAP object
envelope.setOutputSoapObject(request);
// Create HTTP call object
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try {
// Invoke web service
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
// Get the response
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
// Assign it to boolean variable variable
loginStatus = response.toString();
} catch (Exception e) {
//Assign Error Status true in static variable 'errored'
e.printStackTrace();
}
//Return booleam to calling object
return loginStatus;
}
public static String stulogincheck(String username,String password,String
webMethName) {
String loginStatus ="";
70
// Create request
SoapObject request = new SoapObject(NAMESPACE, webMethName);
// Property which holds input parameters
PropertyInfo unamePI = new PropertyInfo();
PropertyInfo passPI = new PropertyInfo();
// Set Username
unamePI.setName("username");
// Set Value
unamePI.setValue(username);
// Set dataType
unamePI.setType(String.class);
// Add the property to request object
request.addProperty(unamePI);
//Set Password
passPI.setName("password");
//Set dataType
passPI.setValue(password);
//Set dataType
passPI.setType(String.class);
//Add the property to request object
request.addProperty(passPI);
// Create envelope
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
// Set output SOAP object
envelope.setOutputSoapObject(request);
// Create HTTP call object
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);

try {
// Invoke web service
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
71
// Get the response
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
// Assign it to boolean variable variable
loginStatus = response.toString();
} catch (Exception e) {
//Assign Error Status true in static variable 'errored'
e.printStackTrace();
}
//Return booleam to calling object
return loginStatus;
}
public static String getusers(String username,String webMethName) {
String loginStatus ="";
// Create request
SoapObject request = new SoapObject(NAMESPACE, webMethName);
PropertyInfo user = new PropertyInfo();
// Set Username
user.setName("username");
// Set Value
user.setValue(username);
// Set dataType
user.setType(String.class);
// Add the property to request object
request.addProperty(user);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
// Set output SOAP object
envelope.setOutputSoapObject(request);
// Create HTTP call object
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);

try {
// Invoke web service
72
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
// Get the response
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
// Assign it to boolean variable variable
loginStatus = response.toString();
} catch (Exception e) {
//Assign Error Status true in static variable 'errored'

e.printStackTrace();
}
//Return booleam to calling object
return loginStatus;
}
public static String getuser(String username,String webMethName) {
String loginStatus ="";
// Create request
SoapObject request = new SoapObject(NAMESPACE, webMethName);
PropertyInfo user = new PropertyInfo();
// Set Username
user.setName("username");
// Set Value
user.setValue(username);
// Set dataType
user.setType(String.class);
// Add the property to request object
request.addProperty(user);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
SoapEnvelope.VER11);
envelope.dotNet = true;
// Set output SOAP object
envelope.setOutputSoapObject(request);
// Create HTTP call object
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
73
try {
// Invoke web service
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
// Get the response
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
// Assign it to boolean variable variable
loginStatus = response.toString();
} catch (Exception e) {
//Assign Error Status true in static variable 'errored'
e.printStackTrace();
}
//Return booleam to calling object
return loginStatus;
}
public static String updateLocation(String p1,String p2,String p3,String p4,String
p5,String p6,String webMethName)
{
String loginStatus ="";
SoapObject request = new SoapObject(NAMESPACE, webMethName);
PropertyInfo pI1=new PropertyInfo();
PropertyInfo pI2=new PropertyInfo();
PropertyInfo pI3=new PropertyInfo();
PropertyInfo pI4=new PropertyInfo();
PropertyInfo pI5=new PropertyInfo();
PropertyInfo pI6=new PropertyInfo();
pI1.setName("p1");
pI1.setValue(p1);
pI1.setType(String.class);
request.addProperty(pI1);
pI2.setName("p2");
pI2.setValue(p2);
pI2.setType(String.class);
request.addProperty(pI2);
74
pI3.setName("p3");
pI3.setValue(p3);
pI3.setType(String.class);
request.addProperty(pI3);
pI4.setName("p4");
pI4.setValue(p4);
pI4.setType(String.class);
request.addProperty(pI4);

pI5.setName("p5");
pI5.setValue(p5);
pI5.setType(String.class);
request.addProperty(pI5);
pI6.setName("p6");
pI6.setValue(p6);
pI6.setType(String.class);
request.addProperty(pI6);
SoapSerializationEnvelope envelope = new
SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try
{
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
loginStatus = response.toString();
} catch (Exception e)
{
e.printStackTrace();
}
return loginStatus;
}
75
//get notification
public static String getnot(String name,String webMethName)
{
String loginStatus ="";
SoapObject request = new SoapObject(NAMESPACE, webMethName);
PropertyInfo p1=new PropertyInfo();

p1.setName("p1");
p1.setValue(name);
p1.setType(String.class);
request.addProperty(p1);
SoapSerializationEnvelope envelope = new
SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet = true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
try
{
androidHttpTransport.call(SOAP_ACTION+webMethName,
envelope);
SoapPrimitive response = (SoapPrimitive) envelope.getResponse();
loginStatus = response.toString();
} catch (Exception e)
{
e.printStackTrace();
}
return loginStatus;
}
}

76
8.2 SCREEN LAYOUTS
INPUT FORMS:
LOGIN PAGE

POST EVENT

77
ADD EMPLOYEE

ASSIGNING EMPLOYEE

78
OUTPUT FORMS :

USER LOGIN PAGE

USER REGISTER PAGE

79
USER POST COMPLAIN PAGE

80
COMPLAINTS UPDATION PAGE

81
82

You might also like