Employee Management System
Employee Management System
On
Employee Management System
For
AISSCE 2023
[As a part of the Computer Science Course]
SUBMITTED BY:
Name: Aasif Mohammed,
XII-A
[Roll No: ]
Under the Guidances of:
Ms. Gayathri Selvam
Head of Department
&
1
DEPARTMENT OF COMPUTER SCIENCE
CERTIFICATE
, during the
01 ACKNOWLEDGEMENT 04
02 INTRODUCTION 05
04 PROPOSED SYSTEM 06
07 FLOW CHART 19
08 SOURCE CODE 20
09 OUTPUT 25
10 INSTALLATION FILE 28
11 TESTING 30
13 BIBLIOGRAPHY 34
3
ACKNOWLEDGEMENT
I gratefully acknowledge the contribution of the individuals who contributed to bringing
this project up to this level. I take this opportunity to express my gratitude to the people
who have been instrumental in the successful completion of this project.
I express my deep sense of gratitude to the luminary The Principal, Mr. Abdul Majeed
M who has been continuously motivating and extending their helping hand to us.
I express my sincere thanks to the academician The Vice Principal, Ms. Anju B Nair, for
constant encouragement and the guidance provided during this project
My sincere thanks to Ms. Sabira Karim, teacher In-charge, A guide, Mentor all the
above a friend, who critically reviewed my project and helped in solving each and every
problem, occurred during implementation of the project
The guidance and support received from all the members who contributed and who are
contributing to this project, was vital for the success of the project. I am grateful for their
constant support and help.
4
PROJECT ON EMPLOYEE MANAGEMENT SYSTEM
INTRODUCTION
The focus of this project is employee management system software. Having
complete control over one's personnel is advantageous. To make the project
easier to grasp, it is split into two sections.
In order to log in and register, it is given a user name and password. It records
the user's pay, his department of employment, and his performance in the
workplace. It replaces the department's current list of employee salaries, adds
a new employee, and updates the individual's age and performance.
5
PROPOSED SYSTEM
In today's brutally competitive world, when the adage "to err is human" is no
longer true, one cannot afford to rely on imperfect human people. It is also no
longer appropriate to explain away one's errors. In order to stay up with the
times, achieve the best results without problems, and increase efficiency, a
computer's hard drive has replaced the endless mounds of flies.
One has to use the data management software. Software has been an ascent
in atomization various organizations. Many software products working are now
in markets, which have helped in making the organizations work easier and
efficiently. Data management initially had to maintain a lot of ledgers and a lot
of paper work has to be done but now software product on this organization
has made their work faster and easier. Now only this software has to be loaded
on the computer and work can be done.
This prevents a lot of time and money. The work becomes fully automated and
any information regarding the organization can be obtained by clicking the
button. Moreover, now it's an age of computers of and automating such an
organization gives the better look.
6
SYSTEM DEVELOPMENTS LIFE CYCLE (SDLC)
7
PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE
INITIATION PHASE
The Initiation Phase begins when a business sponsor identifies a need or an
opportunity.
8
SYSTEM CONCEPT DEVELOPMENT PHASE
9
PICTORIAL REPRESENTATION OF SDLC
10
PLANNING PHASE
The planning phase is the most critical step in completing development,
acquisition, and maintenance projects. Careful planning, particularly in the
early stages of a project, is necessary to coordinate activities and manage
project risks effectively. The depth and formality of project plans should be
commensurate with the characteristics and risks of a given project. Project
plans refine the information gathered during the initiation phase by further
identifying the specific activities and resources required to complete a project.
11
REQUIREMENTS ANALYSIS PHASE
This phase formally defines the detailed functional user requirements using
high-level requirements identified in the Initiation, System Concept, and
Planning phases. It also delineates the requirements in terms of data, system
performance, security, and maintainability requirements for the system. The
requirements are defined in this phase to level of detail sufficient for systems
design to proceed. They need to be measurable, testable, and relate to the
business need or opportunity identified in the Initiation Phase. The
requirements that will be used to determine acceptance of the system are
captured in the Test and Evaluation Master Plan.
• Further define and refine the functional and data requirements and
document them in the Requirements Document,
• Complete business process reengineering of the functions to be
supported (i.e., verify what information drives the business process,
what information is generated, who generates it, where does the
information go, and who processes it),
• Develop detailed data and process models (system inputs, outputs, and
the process.
• Develop the test and evaluation requirements that will be used to
determine acceptable system performance.
12
DESIGN PHASE
The design phase involves converting the informational, functional, and
network requirements identified during the initiation and planning phases into
unified design specifications that developers use to script programs during the
development phase. Program designs are constructed in various ways. Using a
top-down approach, designers first identify and link major program
components and interfaces, then expand design layouts a s they identify and
link smaller subsystem and connections. Using a bottom-up approach,
designers first identify and link minor program components and interfaces,
then expand design layouts as they identify and link larger systems and
connections. Contemporary design techniques often use prototyping tools that
build mock-up designs of items such as application screens, database layouts,
and system architectures. End users, designers, developers, database
managers, and network administrators should review and refine the
prototyped designs in an iterative process until they agree on an acceptable
design. Audit, security, and quality assurance personnel should be involved in
the review and approval process. During this phase, the system is designed to
satisfy the functional requirements identified in the previous phase. Since
problems in the design phase could be very expensive to solve in the later
stage of the software development, a variety of elements are considered in the
design to mitigate risk. These include:
14
DEVELOPMENTPHASE
The development phase involves converting design specifications into
executable programs. Effective development standards include requirements
that programmers and other project participants discuss design specifications
before programming begins. The procedures help ensure programmers clearly
understand program designs and functional requirements. Programmers use
various techniques to develop computer programs. The large transaction
oriented Programs associated with financial institutions have traditionally been
developed using procedural programming techniques. Procedural
programming involves the line-by-line scripting of logical instructions that are
combined to form a program. Effective completion of the previous stages is a
key factor in the success of the Development phase.The Development phase
consists of:
15
INTEGRATION AND TEST PHASE
Subsystem integration, system, security, and user acceptance testing is
conducted during the integration and test phase. The user, with those
responsible for quality assurance, validates that the functional requirements,
16
IMPLEMENTATION PHASE
This phase is initiated after the system has been tested and accepted by the
user. In this phase, the system is installed to support the intended business
functions. System performance is compared to performance objectives
established during the planning phase. Implementation includes user
notification, user training, installation of hardware, installation of software
onto production computers, and integration of the system into daily work
processes. This phase continues until the system is operating in production in
accordance with the defined user requirements.
17
OPERATIONS AND MAINTENANCE PHASE
18
FLOW CHART
Start python
("2.EMPLOYEE REGISTERATION")
("3.EMPLOYEE DETAILS")
("4.UPDATE SALARY")
("5.EMPLOYEES LIST")
("8.WORK EXPERIENCE")
(".EXITING")
STOP
19
SOURCE CODE
================================================================
#table creation
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',passwd='manager',datab
ase='employees')
cur = conn.cursor()
#cur.execute('create table user_table(username varchar(25) primary
key,passwrd varchar(25) not null )')
print('=========================WELCOME TO START EMPLOYEE MANAGEMENT
SYSTEM============================================================')
import datetime as dt
print(dt.datetime.now())
print('1.REGISTER')
print()
print('2.LOGIN')
print()
if n== 1:
name=input('Enter a Username=')
print()
passwd=int(input('Enter a 4 DIGIT Password='))
print()
V_SQLInsert="INSERT INTO log_id (user_id,password) values (" +
str (passwd) + ",' " + name + " ') "
cur.execute(V_SQLInsert)
conn.commit()
print()
print('USER created succesfully')
import mainp
if n==2 :
name=input('Enter your Username=')
print()
passwd=int(input('Enter your 4 DIGIT Password='))
V_Sql_Sel="select * from log_id where password='"+str
(passwd)+"' and user_id= ' " +name+ " ' "
cur.execute(V_Sql_Sel)
if cur.fetchall() is None:
print()
print('Invalid username or password')
else:
20
print()
import mainp
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# MAINP.PY FILE #
import time
print ("\t\t\t",time.ctime())
def menu():
print(" EMPLOYEES MANAGEMENT SYSTEM ")
c='yes'
c=input("do you want to continue or not(yes or No):")
while(c=='yes'):
print("1.login")
print("2.employee registeration")
print("3.employee details")
print("4.update salary")
print("5.employees list")
print("6.know the number of employees")
print("7.work experience")
print("8.know your salary")
print("exiting")
choice=int(input(" enter the choice: "))
if choice==1:
login()
elif choice==2:
register()
elif choice==3:
details()
elif choice==4:
em_salary()
elif choice==5:
em_list()
elif choice==6:
em_count()
elif choice==7:
em_perform()
elif choice==8:
salary()
else:
print ("exit")
break
else : print("Thank You")
21
def login():
import sys
user_id=input("enter USER ID :")
pwd=int(input("enter the password :"))
if user_id == 'vishal'and pwd == 6054:
print("welcome to EMPLOYEE MANAGEMENT SYSTEM ")
else:
def register():
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',password='manager',dat
abase='employees')
mycursor=conn.cursor()
v_em_no=int(input("enter your employee ID"))
v_em_name=input ("enter your name:")
v_em_dept=input( "enter department you want to join : ")
v_em_salary=input ("enter your salary:")
v_em_age=int(input("enter your age:"))
v_sql_insert="insert into office values("+int(v_em_no)+",'"
+v_em_name+"','"+v_em_dept+"',"+str(v_em_salary)+","+str(v_em_age)+"
)"
mycursor.execute(v_sql_insert)
conn.commit()
print("congrats you have joined suuceessfully")
print(" registerd suyccessfully ")
def details():
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',password='manager',dat
abase='employees')
mycursor=conn.cursor()
mycursor.execute("select* from OFFICE")
results=mycursor.fetchall()
conn.commit()
for x in results:
print(x)
def em_salary():
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',password='manager',dat
abase='employees')
mycursor=conn.cursor()
nam=input("enter your name")
22
mycursor.execute("update office set
em_salary=em_salary+em_salary*10/100 where
em_name='{}'".format(nam))
conn.commit()
def em_list():
import mysql.connector as sql
try:
conn=sql.connect(host='localhost',user='root',password='manager',dat
abase='employees')
mycursor=conn.cursor()
mycursor.execute("select em_name from office order by
em_name asc")
list_=mycursor.fetchall()
for x in list_:
print (x)
a=mycursor.rowcount()
print("total employees are",a)
except:
print ("unable to show the list")
def em_count():
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',password='manager',dat
abase='employees')
mycursor=conn.cursor()
mycursor.execute("select count(distinct em_name) from office")
count=mycursor.fetchall()
for x in count:
print(" numbr of employees:",x)
conn.commit()
def salary():
nam=input("enter your name :")
a=mycursor.execute("select em_salary from office where
em_name='{}'".format(nam))
mycursor.execute(a)
salary=mycursor.fetchall()
for x in salary:
print( x,"is your current salary",nam )
conn.commit()
def em_perform():
v_em_no=int(input("enter your employee ID"))
v_em_name=input ("enter your name:")
v_em_dept=input( "enter department you want to join : ")
23
v_em_performance=input("enter your performance:")
v_em_work=input ("enter your experience(YEARS):")
v_sql_insert="insert into em_performance
values("+str(v_em_no)+",'"
+v_em_name+"','"+v_em_dept+"','"+v_em_performance+"',"+str(v_em_work
)+")"
print(v_sql_insert)
mycursor.execute(v_sql_insert)
conn.commit()
print("performance added")
====================================================================
24
OUTPUT
25
26
27
INSTALLATION PROCEDURE
-------------------------------------
Pre-Requisites :-
------------------------
Installation :-
-------------------
A.) mysql.connector
28
B.)IMPORT time
29
TESTING
value (or behaviour), either "is" or "is not" the same as the expected value
specified in the test case. Specification-based testing is necessary, but it is insufficient
to guard against certain risks
The black box tester has no "bonds" with the code, and a tester's perception is
very simple: a code must have bugs. Using the principle, "Ask and you shall receive,"
black box testers find bugs where programmers don't. But, on the other hand, black
box testing has been said to be "like a walk in a dark labyrinth without a flashlight,"
because the tester doesn't know how the software being tested was actually
constructed.
That's why there are situations when (1) a black box tester writes many test
cases to check something that can be tested by only one test case, and/or (2) some
parts of the back end are not tested at all. Therefore, black box testing has the
advantage of "an unaffiliated opinion," on the one hand, and the disadvantage of "blind
exploring," on the other.
30
Types of white box testing:-
The following types of white box testing exist:
api testing - Testing of the application using Public and Private APIs.
Code coverage - creating tests to satisfy some criteria of code coverage.
For example, the test designer can create tests to cause all statements in the
program to be executed at least once.
fault injection methods.
mutation testing methods.
static testing - White box testing includes all static testing.
31
CODE COMPLETENESS EVALUATION
White box testing methods can also be used to evaluate the completeness of a
test suite that was created with black box testing methods. This allows the software
team to examine parts of a system that are rarely tested and ensures that the most
important function points have been tested.
32
HARDWARE AND SOFTWARE REQUIREMENTS
X. Printer : required
SOFTWARE REQUIREMENTS:
I. Windows OS
II. Python
33
BIBLIOGRAPHY
34