0% found this document useful (0 votes)
13 views31 pages

Cs Proj

Uploaded by

DINESH KUMAR S
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)
13 views31 pages

Cs Proj

Uploaded by

DINESH KUMAR S
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/ 31

Roll No.

: 6835
Name: Sai Keerthana Vidhya Sanjeevi
Class & Sec: XII ‐ D
Subject: Computer Science
Subject Code: 083
Project Guide:

1 | P a g e ‐ SKVS
2 | P a g e ‐ SKVS
TABLE OF CONTENTS (TOC)
SL. DESCRIPTION Page No.
No.
1 ACKNOWLEDGMENT 4

2 GLIMPSE OF PYTHON 5

3 INTRODUCTION AND OBJECTIVE OF THE PROJECT 6

4 PROPOSED SYSTEM 7

5 SYSTEM DEVELOPMENT LIFE CYCLE (SDLC) 8

6 PROBLEM ANALYSIS 13

7 FLOW CHART 15

8 SOURCE CODE 16

9 OUTPUT 24

10 LIMITATIONS AND RECOMMENDED ENHANCEMENTS 28

11 REQUIRED HARDWARE AND SOFTWARE 29

12 CONCLUSION 30

13 BIBLIOGRAPHY 31

4 | P a g e ‐ SKVS
GLIMPSE OF PYTHON

Python is an interpreted, high-level and general-purpose programming language used worldwide. It supports
multiple programming paradigms, including structured (particularly, procedural), object-oriented and functional
programming. Rather than having all of its functionality built into its core, Python was designed to be
highly extensible. This compact modularity has made it particularly popular as a means of adding programmable
interfaces to existing applications. Python is meant to be an easily readable language. Its formatting is visually
uncluttered, and it often uses English keywords where other languages use punctuation. Unlike many other
languages, it does not use curly brackets to delimit blocks, and semicolons after statements are optional. It has
fewer syntactic exceptions

MYSQL CONNECTIVITY WITH PYTHON

MYSQL, a Relational Database Management System (RDBMS), helps maintaining records in the form of a table which
is easy to handle and prevents data redundancy. Many companies use RDBMS to handle their data. Python provides
a platform to link MYSQL and create a Python-MYSQL Interface to manage record in the table through Python
programming language.

5 | P a g e ‐ SKVS
INTRODUCTION OF THE PROJECT

This project is aimed in creating a software for the Public Works Department (PWD) to enhance the procedure
of filing complaints and raising any issues of concern.

The features of this project includes creating a record of your complaint by registering with all bio data, checking
the status of completion of complaint raised, live chatting with authorised person, to update the features of
complaint and to withdraw complaint.

OBJECTIVES OF THE PROJECT

This project, “PUBLIC GRIEVANCES REPORT”, is a medium to file complaints through digital media.

Objectives of the project:

 Using Python Programming language and MYSQL RDBMS to set a relation


 To develop programming oriented skills in building efficient programmes
 Reaching out to the common public with new, innovative ideas that guides in development of the ordinary
procedure or lifestyles of the people
 Making students understand the ease to file complaints through a digital media rather than reaching offices to
file them
 Creating a sense of responsibility to take up public concerns as their own and work for it

6 | P a g e ‐ SKVS
PROPOSED SYSTEM
In today’s world, after all that fight for independence, this right for us has what brought upliftments in our homes,
the society, and the country, i.e. “The Right to Express Public Grievances”. Expressing our thoughts, ideas,
opinions and difficulties all together determines our fraternity in this country.

All might not face the same issues in everyday life, but even a small discomfort to a person can affect the locality
or society as a whole. This brings in the need of a “Public Grievances Committee”, to resolve any issues of
concern. Every institution, MNCs’ and even governing bodies have compulsorily created a committee for the
students or the staffs to express their feelings and thoughts about their working environment and fellow co-
workers.
When this as a whole is applied to the society, the committee is not just of few people but a big network. Issues
like bad maintenance of roads, stinky garbage and drainage, open potholes on platform and so on are not just
of individual concern but also of the common people living in the locality.

India is taking its new form of digitalization, where from buying food to getting our daily pills we depend on
technology than manpower. Hence it’s difficult to file complaints to the grievances committee by hand and
maintain a long lasting record of them. This certainly requires a lot of manpower and paper which makes it
seemingly impossible!
This project is aimed in improving the efficiency of the Public Grievances Committee by making it digitalized.
Using computers to file complaints and check status does reduce the time consumed by many people working
behind and complainants like us. This can make it more error free and easy to access just be staying at your
place.

7 | P a g e ‐ SKVS
SYSTEM DEVELOPMENT LIFE CYCLE (SDLC)

Software Development Life Cycle (SDLC) aims to produce a high-quality system that meets or exceeds customer
expectations, works effectively and efficiently in the current and planned information technology infrastructure, and is
inexpensive to maintain and cost-effective to enhance. A process followed in software projects is SDLC. Each phase
of SDLC produces deliverables required by the next phase in the life cycle. Requirements are translated into design.
Code is produced according to the design. Testing should be done on a developed product based on the requirement.
The deployment should be done once the testing was completed. It aims to produce a high-quality system that meets
or exceeds customer expectations, works effectively and efficiently in the current and planned information technology
infrastructure, and is inexpensive to maintain and cost-effective to enhance.

Why SDLC?
Some of the reasons why SDLC is important in Software Development are as follows.
 It provides visibility of a project plan to all the involved stakeholders
 It helps us to avoid project risks
 It allows us to track and control the project
 It doesn’t conclude until all the requirements have been achieved

PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE

Requirement Phase
Requirement gathering and analysis is the most important phase in the software development lifecycle.
Requirement phase is the first step of the SDLC. Business Analyst collects the requirement from the
Customer/Client as per the clients business needs and documents the requirements in the Business
Requirement Specification (document name varies depends upon the Organization. Some examples are
Customer Requirement Specification (CRS), Business Specification (BS), etc., and provides the same to
Development Team.

8 | P a g e ‐ SKVS
Analysis Phase
Once the requirement gathering and analysis is done the next step is to define and document the product
requirements and get them approved by the customer. This is done through the SRS (Software Requirement
Specification) document. SRS consists of all the product requirements to be designed and developed during
the project life cycle. Key people involved in this phase are Project Manager, Business Analyst and senior
members of the Team. The outcome of this phase is the Software Requirement Specification.

Design Phase
It has two steps:

HLD – High-Level Design – It gives the architecture of the software product to be developed and is done by
architects and senior developers

LLD – Low-Level Design – It is done by senior developers. It describes how each and every feature in the
product should work and how every component should work. Here, only the design will be there and not the
code

The outcome from this phase is High-Level Document and Low-Level Document which works as an input to
the next phase

Development Phase
Developers of all levels (seniors, juniors, freshers) involved in this phase. This is the phase where we start
building the software and start writing the code for the product. The outcome from this phase is Source Code
Document (SCD) and the developed product.

9 | P a g e ‐ SKVS
Testing Phase
When the software is ready, it is sent to the testing department where Test team tests it thoroughly for different
defects. They either test the software manually or using automated testing tools depends on the process
defined in STLC (Software Testing Life Cycle) and ensure that each and every component of the software
works fine. Once the QA makes sure that the software is error-free, it goes to the next stage, which is
Implementation. The outcome of this phase is the Quality Product and the Testing Artifacts.

Deployment & Maintenance Phase


After successful testing, the product is delivered/deployed to the customer for their use. Deployment is done
by the Deployment/Implementation engineers. Once when the customers start using the developed system
then the actual problems will come up and needs to be solved from time to time. Fixing the issues found by
the customer comes in the maintenance phase. 100% testing is not possible – because, the way testers test
the product is different from the way customers use the product. Maintenance should be done as per SLA
(Service Level Agreement)

POPULAR SDLC MODELS

Waterfall model in SDLC


The waterfall is a widely accepted SDLC model. In this approach, the whole process of the software
development is divided into various phases of SDLC. In this SDLC model, the outcome of one phase acts as
the input for the next phase.
This SDLC model is documentation-intensive, with earlier phases documenting what need be performed in
the subsequent phases.

10 | P a g e ‐ SKVS
Incremental Model in SDLC
The incremental model is not a separate model. It is essentially a series of waterfall cycles. The requirements
are divided into groups at the start of the project. For each group, the SDLC model is followed to develop
software. The SDLC process is repeated, with each release adding more functionality until all requirements
are met. In this method, every cycle act as the maintenance phase for the previous software release.
Modification to the incremental model allows development cycles to overlap. After that subsequent cycle may
begin before the previous cycle is complete.
V-Model in SDLC
In this type of SDLC model testing and the development, the phase is planned in parallel. So, there are
verification phases of sdlc on the side and the validation phase on the other side.
V-Model joins by Coding phase.

Agile Model in SDLC


Agile methodology is a practice which promotes continue interaction of development and testing during the
SDLC process of any project. In the Agile method, the entire project is divided into small incremental builds.
All of these builds are provided in iterations, and each iteration lasts from one to three weeks.

Spiral Model
The spiral model is a risk-driven process model. This SDLC model helps the team to adopt elements of one
or more process models like a waterfall, incremental, waterfall, etc.
This model adopts the best features of the prototyping model and the waterfall model. The spiral methodology
is a combination of rapid prototyping and concurrency in design and development activities.

11 | P a g e ‐ SKVS
Big bang model
Big bang model is focusing on all types of resources in software development and coding, with no or very little
planning. The requirements are understood and implemented when they come.
This model works best for small projects with smaller size development team which are working together. It is
also useful for academic software development projects. It is an ideal model where requirements is either
unknown or final release date is not given.

12 | P a g e ‐ SKVS
PROBLEM ANALYSIS
This program contains the following modes:
 COMPLAINANT MODE
 AUTHORISED USER MODE (GOVT. OFFICIAL)
The respective number must be typed out to enter into any one.

COMPLAINANT MODE

In the complainant mode, the complainant gets a chance to register his complaint and do the following in his complaint:
 Registration: Includes fields of – Name, Phone number, Area, District, Pin code, Complaint, Mail address.
Uses the function: registration()

 Updation: Gets the input field from complainant and makes changes based on the field with input reference
phone number.
Uses the function: updation()

 Live Chatting: Enables the complainant to engage into a short conversation with the official of the committee to
escalate complaints faster or re‐escalate complaints.
Uses the function: livechat()

 Status Checking: This feature allows the complainant to check the progress in his complaint after certain period
of time since the placement of complaint.
Uses the function: statuscheck()

 Withdrawing: Withdraws complaint registered by the complainant.


Uses the function: withdraw()
AUTHORISED USER MODE

In this mode, an authorized member or user of the committee can check the complaints registered in the database,
collect them and escalate or distribute the complaints to respective technical teams.

Uses the function: checkall()

13 | P a g e ‐ SKVS
14 | P a g e ‐ SKVS
FLOW CHART

START PYTHON

DECIDING WHETHER CREATING COMPLAINANTS


AUTHORISED USER OR RECORD THAT INCLUDES USER’S
COMPLAINANT BIODATA AND COMPLAINT ISSUE

CHOICES OF PROGRAMMES
GIVEN TO USER:

 CREATING ONE OR
MORE RECORDS
 UPDATION OF
VIEWING THE DATABASE TO INSERTED RECORD
FORWARD INFORMATION TO THE  CHECKING THE
RESPONSIBLE TEAM STATUS OF
COMPLAINT
 LIVE CHATTING WITH
AUTHORISED
PERSON
 WITHDRAWING
REGISTERED
COMPLAINT
 EXITING THE
PROGRAMME

END PROGRAMME END PROGRAMME

15 | P a g e ‐ SKVS
SOURCE CODE
# MANAGING RECORDS OF PUBLIC REQUIREMENTS AND GRIEVANCES IN THE FORM OF RELATION FOR EASY ACCESS
USING PYTHON AND MYSQL INTERFACE
import random
import mysql.connector as mys
mycon=mys.connect(host="localhost",user="root",password="SKVS",database="URBANSECTORPWD")
mycursor=mycon.cursor()

def registration():
name=input('NAME:')
pno=int(input('PHONE NUMBER:'))
area=input('AREA:')
district=input('DISTRICT:')
pin=int(input('PINCODE:'))
com=input('COMPLAINT:')
mail=input('MAIL ADDRESS:')
print()
mycursor.execute("Insert into PWDCOMPLAINTS values('{0}',{1},'{2}','{3}',{4},'{5}','{6}');"
.format(name,pno,area,district,pin,com,mail))
mycon.commit()
mycursor.execute("Select * from PWDCOMPLAINTS where PHONENO={}".format(pno))
d=mycursor.fetchall()
for i in d:
print(i[0],int(i[1]),i[2],i[3],int(i[4]),i[5],i[6],sep=' : ')
print()
print(' Your request has been processed.

16 | P a g e ‐ SKVS
We kindly request you to please wait upto 1 month since the registration.')
print(' For further queries please contact: 044 1357 8642')
print(' or mail : pwdchennai@hotmail.com')
print(' Stay Safe.')
print()

def updation():
ref=int(input('Please enter registered mobile number:'))
field=input('Please enter the field of change(IN CAPS ONLY):')
if field in ('PHONENUMBER','PINCODE'):
new=int(input('Enter the updated detail:'))
query="Update PWDCOMPLAINTS set {}={} where PHONENO={};".format(field,new,ref)
mycursor.execute(query)
mycon.commit()
print(' Record Updated.')
print()
mycursor.execute("Select * from PWDCOMPLAINTS")
d=mycursor.fetchall()
for i in d:
print(i[0],int(i[1]),i[2],i[3],int(i[4]),i[5],i[6],sep=' : ')
print()

17 | P a g e ‐ SKVS
else:
new=input('Enter the updated detail:')
query="Update PWDCOMPLAINTS set {}='{}' where PHONENO={};".format(field,new,ref)
mycursor.execute(query)
mycon.commit()
print(' Record Updated.')
print()
mycursor.execute("Select * from PWDCOMPLAINTS")
d=mycursor.fetchall()
for i in d:
print(i[0],int(i[1]),i[2],i[3],int(i[4]),i[5],i[6],sep=' : ')
print()

def livechat():
print('Hello dear Customer. How may I help you?')
ans1=input('Please let me know your issue:')
ans2=input('Please tell me since when this issue has been?')
print('This shall be surely resolved. Please give us some time to process your complaint.')
print('We will be back after raising the issue to the higher officials.
We sincerely apologise for the inconvenience caused.')
print('Thank you for live chatting with URBANSECTORPWD ‐ CHENNAI.')
print()

18 | P a g e ‐ SKVS
def statuscheck():
messages=['Your requested has been accomplished.',
'Sorry for the delay. Please wait. The message has been redirected.',
'The issue is under processing. Please wait till request accomplished.']
ref=int(input('Please enter registered mobile number:'))
x=random.randint(0,2)

print(' ',messages[x])
print()

def withdraw():
ref=int(input('Please enter registered mobile number:'))
query="Delete from PWDCOMPLAINTS where PHONENO={};".format(ref)
mycursor.execute(query)
mycon.commit()
print(' Your Complaint has been withdrawn.')
print()mycon.close()

19 | P a g e ‐ SKVS
def checkall():
query="Select*from PWDCOMPLAINTS;"
mycursor.execute(query)
d=mycursor.fetchall()
n=mycursor.rowcount
print('Total number of complaints registered:',int(n))
print()
print('The order of printing the records is:','NAME','PHONENUMBER',
'AREA','DISTRICT','PINCODE','COMPLAINT','MAIL ADDRESS',sep=' : ')
print()
for i in d:
print(i[0],int(i[1]),i[2],i[3],int(i[4]),i[5],i[6],sep=' : ')
print()
mycon.close()

20 | P a g e ‐ SKVS
#_MAIN_
print(' PUBLIC WORKS DEPARTMENT - SECTOR-CHENNAI')
print()
print(' THIS PROGRAMME HAS BEEN DEVELOPED FOR THE NEED TO REGISTER PUBLIC GRIEVANCES OR
COMPLAINTS.')
print(' PLEASE FEEL FREE TO REACH OUT FOR HELP USING THIS PROGRAMME. ALL ISSUES WILL BE TAKEN
INTO CONSIDERATION WITHOUT BIAS.')
print(' INDIA IS LEADING TO A VERY DIGITALISED NATION IN WHICH THIS SMALL HELP IN THE URBAN AREAS
REGARDING PWD WILL BE OF A GREAT HELP.')
print(' HANKING FOR CHOOSING TO USE THIS MEDIUM TO REGISTER THE COMPLAINTS.')
print()
print('IF YOU ARE A COMPLAINANT--------Type 1')
print('IF YOU ARE A GOVT. OFFICIAL-----Type 2')
print()
choice=int(input('Please enter your role:'))
print()
if choice==1:
while 2==2:
print('You have the following options to proceed:')
print('To register complaint-------------------enter 1.1')
print('To update complaint---------------------enter 1.2')
print('To livechat-----------------------------enter 1.3')
print('To check status of complaint------------enter 1.4')
print('To withdraw complaint-------------------enter 1.5')
print('To EXIT---------------------------------enter 0')
print()
c=float(input('Please enter your choice:'))

21 | P a g e ‐ SKVS
print()
if c==1.1:
registration()
elif c==1.2:
updation()
elif c==1.3:
livechat()
elif c==1.4:
statuscheck()
elif c==1.5:
withdraw()
elif c==0:
print(' THANK YOU SO MUCH FOR USING')
break
else:
print('Following are the details of complaints:')
print()
checkall()

print('**********************************************THIS SERVICE WAS BROUGHT TO YOU BY


THE TAMILNADU PUBLIC WORKS DEPARTMENT*************************************************')
print('********************************************************STAY HOME, STAY SAFE.
LETS MAKE EVERYTHING POSSIBLE************************************************************')
print('______________________________________________________________________________

______________________________________________________________________________________
___')

22 | P a g e ‐ SKVS
MYSQL RELATED QUERIES:
NAME OF DATABASE: URBANSECTORPWD
NAME OF TABLE CREATED: PWDCOMPLAINTS
COMMANDS FOR CREATING DATABASE:

 CREATE DATABASE URBANSECTORPWD;

COMMANDS FOR CREATING TABLE:


1. CREATE TABLE PWDCOMPLAINTS(
o NAME varchar(15),
o PHONENO numeric(12),
o AREA varchar(15),
o DISTRICT varchar(20),
o PINCODE numeric(6),
o COMPLAINT varchar(50),
o MAILADDRESS varchar (15));

COMMANDS FOR UPDATING TABLE:


2. UPDATE PWDCOMPLAINTS
o SET (GIVEN FIELD) = (ENTERED VALUE)
o WHERE (GIVEN FIELD)=(OLD VALUE);

E.g.:
UPDATE PWDCOMPLAINTS
o SET NAME = ‘Vidhya’
o WHERE NAME = ‘Lukesh’;

COMMANDS FOR WITHDRAWING RECORD FROM TABLE:


3. DELETE FROM PWDCOMPLAINTS
o WHERE (GIVEN FIELD) = (ENTERED VALUE);

E.g.:
DELETE FROM PWDCOMPLAINTS
o WHERE PHONENO = 9753124680;

23 | P a g e ‐ SKVS
OUTPUTS

OUTPUT
PROG
INSERTION OF RECORDS

24 | P a g e ‐ SKVS
OUTPUT
PROG
UPDATION

25 | P a g e ‐ SKVS
STATUS CHECKING LIVECHATTING PROG

OUTPUT

26 | P a g e ‐ SKVS
AUTHORISED WITHDRAWING PROG
USER ACCESSING RECORDS

OUTPUT

27 | P a g e ‐ SKVS
LIMITATIONS AND RECOMMENDED ENHANCEMENTS

The following are the limitations of the project.


 The project can be used only if the database is present in each of the devices of access.
 The project lacks security code, i.e., any user can enter into in the official authorized user mode.
 The project is a small scale idea and needs a very structured HTML syntax to make it available
via internet for users across any region.
The following enhancements can be made.
 This project can be enhanced or upgraded by using a more user friendly mode of accepting
inputs from user. Python receives input only in certain data types.
 This project can be enhanced or upgraded by creating a website and implementing this coding
idea to store records.
 This project can be more enhanced only with public awareness to report public issues without
any bias or fright to the concerned committee or official.

28 | P a g e ‐ SKVS
REQUIRED HARDWARE AND SOFTWARE

HARDWARE:
 Standalone Personal Computer (SPC) with basic configurations:

Motherboard Gigabyte GA‐H110M‐S2H‐GSM Motherboard Integrated Intel HD


Graphics with DVI Digital Output Interface
Processor (CPU) Intel Core i5 (sixth generation or newer) or equivalent.
Operating System Microsoft Windows 10 Professional x64
Memory 8 GB RAM DDR4 2400
Storage / Hard Disk Drive 512GB Internal SSD or 1TB Internal HDD
Monitor / Display 15, 17 or 24 inches LCD Monitor, Wide Screen LCD Monitor (1600×900
native resolution) with DVI Digital Input Interface
Network Adaptor 802.11 ax 2.4 or 3.0 GHZ wireless adapter
Others Webcam, Mic, Speakers, Keyboard & Mouse
PC Case In Win CE685 PC case with 300 watt 80PLUS certified power supply 6
External Powered USB Ports and 4 on front of case

 Standalone Printer:
Any suitable 3 in 1 (printer, scanner, copier) color printer which has Wi‐Fi connectivity

SOFTWARE:
 OS Windows 10 Pro
 Microsoft Office Vision Professional 2007
 Adobe Acrobat
 Python

29 | P a g e ‐ SKVS
CONCLUSION

This project has been aimed to improve the lifestyle of the citizens. Public support and awareness is surely required
to make this project a success. This program is a computerized coding to implement the new idea of digitalization
which will play a vital role in the future. Reporting our grievances to the concerned officials or committee marks our
fraternity in this country. It can either be done through papers or computer. It brings no difference in our national duty
and responsibility.

30 | P a g e ‐ SKVS
BIBLIOGRAPHY

 Wikipedia, the free encyclopedia


 Geek for Geeks
 Stack Overflow
 Sumita Arora Guides
 Google

31 | P a g e ‐ SKVS
32 | P a g e ‐ SKVS

You might also like