Professional Documents
Culture Documents
1.employee Management System
1.employee Management System
A PROJECT REPORT
Submitted in partial fulfilment of the Requirements for the award of the Degree of
BACHELOR OF SCIENCE (INFORMATION TECHNOLOGY)
By
Yukta Bhalerao
67
Under the esteemed guidance of
Mrs. Preeti Sarode
K. M. AGRAWAL COLLEGE
(Affiliated to University of Mumbai)
2022-2023
PROFORMA FOR THE APPROVAL PROJECT PROPOSAL
CERTIFICATE
This is to certify that the project entitled, "Employee Management System", is bonafied
work of Yukta Bhalerao bearing Seat No:3228392 submitted in partial fulfilment of the
requirements for the award of degree of BACHELOR OF SCIENCE in INFORMATION
TECHNOLOGY from University of Mumbai.
____________________
Project Guide
_____________________ _____________________
Co-ordinator External Examiner
ABSTRACT
Before we describe in brief about our project, we would like to add a few
heartfelt words for the people who were very much helpful for us in developing
this project.
We are heartily thankful to Mrs. Preeti Sarode for giving us this opportunity to
develop the project. We give her our sincere salute for inspiring and motivating
us.
We would like to thanks whole teaching staff of Center, who have
contributed greatly for the success of this project. We would especially like to
express our gratitude to Preeti Sarode.
We would also like to pay our sincere thanks all those, who have co-
operated us, inspired us and have provided moral support directly or indirectly
for this project.
Your’s sincerely,
Yukta Bhalerao
DECLARATION
Signature: ___________________
INDEX
Chapter 1 Introduction
1.1 Background
1.2 Objectives
1.3.1 Purpose
1.3.2 Scope
1.3.3 Applicability
1.4 Achievements
Chapter 7: References
Chapter 1
Employee Management System
1.1 Background
Employees are the backbone of any company therefore their management plays a
major role in deciding the success of an organization [1]. Human Resource
Management Software makes it easy for the employer to keep track of all records.
This software allows the administrator to edit employees, add new employees as
well as evaluate an employee’s performance. Employees can be managed efficiently
without having to retype back their information in the database. You can check to
see if there are duplicate positions/employees in the database. A flexible and easy to
use Employee Management software solution for small and medium sized
companies provides modules for personnel information management thereby
organization and companies are able to manage the crucial organization asset people
. The combination of these modules into one application assures the perfect platform
for re-engineering and aligning
After identifying the scope of the project, the feasibility study is needed to be carried
out. It is basically keeping the following points in mind.
Building the software for meeting the scope: This software has met the scope. As
there is no data involved in the system, processing on the file, and the behaviour of
this project is already identified and bundled in quantitative manner.
The processing of this software is very simple as it has been designed in php and it
has been well divided into several functions according to the need.
Technically feasible: This software is very much technically feasible. This software is
very much concerned with specifying equipment and the software will successfully
satisfy almost all the admin’s requirements. The technical need for this system may
vary considerably but might include:
Therefore, the basic input/output of data is identified. So, the project can easily be
build up and it will also be technically feasible.
State of Art: The project is very much within the state of art since the project is a
WINDOWS based; it uses very modern and common technique.
Beside it is very much modern and user friendly. It also works as middleware i.e.
only in between the user and the file. So, it is completely a state of art project.
Financially Feasible: The project is very much financially feasible. The
implementation and development cost of this software under the reach of any
college.
Moreover, it requires some training for the use. So, training cost can be neglected
and the resources of this software are very much available. It also reduces the labour
and extra cost to be paid for labour. So indeed, it is financially feasible.
Resources: As motioned earlier that the resources are easily available and the cost of
training is almost negligible. Sometimes situations may arise when it may not be so
much easy. For a person completely unaware of using a computer system could
result in a training cost or for a very small organization the purchase of a computer,
instalment of the system and other charges may lead to a difficult matter.
It is simple to understand and can be used by anyone who is not even familiar with
simple employees system. It is user friendly and just asks the user to follow step by
step operations by giving him few options. It is fast and can perform many
operations of a company.
This software package has been developed using the powerful coding tools of
PYTHON at Front End and Microsoft Sqlite3 Server at Back End. The software is
very user friendly. The package contains different modules like Employee details.
This version of the software has multi-user approach.
1.2 Objective
In this world of growing technologies everything has been computerized. With large
number of work opportunities the Human workforce has increased. Thus there is a
need of a system which can handle the data of such a large number of Employees.
This project simplifies the task of maintaining records because of its user friendly
nature. The objective of this project is to provide a comprehensive approach towards
the management of employee information. This will be done by designing and
implementing an HR management system that will bring up a major paradigm shift
in the way that employee information is handled.
1.3.2 Scope
It is cost effective as the user control the web application himself and does not go
for professional service.
It saves time as it speeds up every aspect of the employee database management
and payroll process with a range of automated features.
It is secure as the employee database and the payroll process is managed by the
admin in house rather than sending private information to a third party.
Validating procedures and checks restrict user from making mistakes.
The software is easy to use and is user friendly so no expertise is required.
The calculations are automated so no chance of error.
1.3.3 Applicability
The Admin gets logged in directly if he has the softwares required to run the
program. Admin can add new Employee, add new Department, add new Pay Grade
for the employees. Admin can set the ‘from’ and ‘to’ date worked by an employee in
a department with specific pay grade. The Admin can generate an automated
monthly salary of an employee. The admin can view all the past records of any
recorded employee.
1.4 Achievements
Project Achievement is a measurable and positive result that is received upon
successful completion of a project’s object (goal, deliverable, objective) or work item
(task, activity, stage). It can be also defined as the process of achieving a desired
outcome within a project under certain criteria that determine success and failure of
the project.
People involved in projects needs to apply their own skills, knowledge and
perseverance in order to reach some positive result. If something goes wrong and the
result is not positive (for example: broken objectives; overdue tasks; rejected
deliverables), this result is not actually an achievement but a failed attempt.
Achievements are always positive and have a favorable impact on related projects.
There are 6 basic steps to gain successful project achievements. The steps are:
• Dataflow Diagram (DFD) Zero Level DFD, 1st Level DFD, 2nd Level DFD of
Employee Management System
This web application is reduced as much as possible to avoid errors while entering
data. It also provides error message while entering invalid data. It is user-friendly as
no formal knowledge is required to use the system.
1. Identifying the key project sponsors and stakeholders, to determine the basis
of project scope, budget, and time-frame for project execution.
2. Upon enlisting the stake-holder requirements, prioritizing/setting project
objectives.
3. Identifying the project deliverables required to attain the project objectives.
4. Creating the project schedule.
5. Identifying the project risks, if any, and develop suitable mitigation plans.
6. Communicating and presenting the project plan to stakeholders.
Database Sqlite3
What is SQL?
What Is SQLite?
SQLite is an embedded, server-less relational database management system. It is an
in-memory open-source library with zero configuration and does not require any
installation. Also, it is very convenient as it’s less than 500kb in size, which is
significantly lesser than other database management systems.
SQLite is an open-source software. The software does not require any license after
installation.
SQLite is a cross-platform DBMS that can run on all platforms, including macOS,
Windows, etc.
Hardware Required:
Processor Pentium III or above
RAM 64 MB
HDD 10GB
As you can see admin can add the data after that he can update/delete the data or he
can view the data in normal table format or he can also view a graph of it
In other words
Admin can add data to the table by clicking on the "Add Data" button.
Admin can update data in the table by clicking on the "Update Data" button.
Admin can delete data in the table by clicking on the "Delete Data" button.
Admin can view data in the table by clicking on the "View Data"
button. Admin can view a graph of the data by clicking on the "View Graph" button.
Additional modules are often useful when creating code libraries within your own
project or when you want to create different sets of code and resources for different
device types, such as phones and wearables, but keep all the files scoped within the
same project and share some code.
Add a new module to your project by clicking File > New > New Module.
Provides a container for your app's source code, resource files, and app level
settings such as the module-level build file and Android Manifest file. When
you create a new project, the default module name is "app".
Each provides essential files and some code templates that are appropriate for
the corresponding app or device type.
Add User
Fig. Employee System Management Module
1. The main unit is Data Storage Unit. All the data gets collected and gets
stored in it.
2. We can retrieve, edit or delete existing data by knowing the unique ID.
applied, these constraints ensure that all data can be traced, connected, recovered and
searched, therefore improving the stability, the performance and the maintainability
of the database.
ID NAME SALARY
1 amitt 98000
2 sumit 14000
3 neha 9000
4 sHUBHAM 100001
5 Om 12000
6 john 8001
7 joe 15000
8 jony 17600
9 Aman 21000
Entity integrity
The entity integrity constraint states that relations must have a primary key that is
Candidate keys
In order to choose a primary key, we must first identify all of the possible attributes
of a relation that match the primary key criteria, these attributes being then
called candidate keys.
ID NAME SALARY
1 amitt 98000
2 sumit 14000
3 neha 9000
4 sHUBHAM 100001
5 Om 12000
6 john 8001
7 joe 15000
8 jony 17600
9 Aman 21000
On the contrary, choosing a person’s first name as candidate key would contradict
the entity integrity constraint, as searching for “amitt” or “Rohan” in the database
will not result in retrieving a specific record but probably dozens of them.
ID NAME SALARY
1 amitt 98000
2 amitt 14000
3 neha 9000
4 sHUBHAM 100001
5 Om 12000
6 john 8001
7 joe 15000
8 jony 17600
9 Aman 21000
Not Unique
4.3 Procedural Design
E-R Diagrams
What is ER Diagram?
ER Diagram stands for Entity Relationship Diagram, also known as ERD is a
diagram that displays the relationship of entity sets stored in a database. In other
words, ER diagrams help to explain the logical structure of databases. ER diagrams
are created based on three basic concepts: entities, attributes and relationships.
1. Using employee data we can add, view user data and graph for top
five employee salary.
3. We can also edit and delete data of employee with the help of unique
id.
4. Employee id i.e unique id is the key to all the data of employee in it.
Unique ID Salary
Add
Unique ID
Salary of top 5
employees
Employee
Name View Graph
Data
Salary
Manage
Delete
Unique ID
Edit
Salary
A data flow diagram (DFD) maps out the flow of information for any process or
system. It uses defined symbols like rectangles, circles and arrows, plus short text
labels, to show data inputs, outputs, storage points and the routes between each
destination. Data flowcharts can range from simple, even hand-drawn process
overviews, to in-depth, multi-level DFDs that dig progressively deeper into how the
data is handled. They can be used to analyze an existing system or model a new one.
Like all the best diagrams and charts, a DFD can often visually “say” things that
would be hard to explain in words, and they work for both technical and
nontechnical audiences, from developer to CEO. That’s why DFDs remain so
popular after all these years. While they work well for data flow software and
systems, they are less applicable nowadays to visualizing interactive, real-time or
database-oriented software or systems.
Level 1: Also known as a "context diagram," this is the highest level and
represents a very simple, top-level view of the system being represented.
Level 2: Still a relatively broad view of the system, but incorporates subprocesses
and more detail.
First Level Diagram :
Add Employee
Edit employee
View Admin data
Delete
Second Level Diagram:
Add Delete
Edit View Graph
View Data
Add New of Top five
Employee employees
Data Edit existing View Data of
Employee all employees
data using Delete
ID Employee Data
Employee Data
1. Admin can add, edit, view and delete employee data.
2. When we select add data we have to put employee name, salary and id.
3. When we select edit we have to put the exact id we need to edit the data of and
then we have to put his name and salary for editing.
4. When we select view the data of all the employees is view in table format.
5. When we select delete we have to put only the id we want to delete the data of.
6. When we select graph a precised graph is shown for top five employees with
highest salaries.
Class Diagram
Class diagram is a static diagram. It represents the static view of an application.
Class diagram is not only used for visualizing, describing, and documenting
different aspects of a system but also for constructing executable code of the
software application.
Use Case Diagram
In the Unified Modeling Language (UML), a use case diagram can summarize the
details of your system's users (also known as actors) and their interactions with the
system. To build one, you'll use a set of specialized symbols and connectors. An
effective use case diagram can help your team discuss and represent:
Goals that your system or application helps those entities (known as actors)
achieve
What is an algorithm?
An Algorithm is a procedure to solve a particular problem in a finite number of
steps for a finite-sized input.
The algorithms can be classified in various ways. They are:
1. Implementation Method
2. Design Method
3. Design Approaches
4. Other Classifications
In this article, the different algorithms in each classification method are discussed.
Classification by Implementation Method: There are primarily three main
categories into which an algorithm can be named in this type of classification. They
are:
1. Recursion or Iteration: A recursive algorithm is an algorithm which calls itself
again and again until a base condition is achieved whereas iterative algorithms
use loops and/or data structures like stacks, queues to solve any problem.
Every recursive solution can be implemented as an iterative solution and vice
versa.
Example: The Tower of Hanoi is implemented in a recursive fashion
while Stock Span problem is implemented iteratively.
2. Exact or Approximate: Algorithms that are capable of finding an optimal
solution for any problem are known as the exact algorithm. For all those
problems, where it is not possible to find the most optimized solution, an
approximation algorithm is used. Approximate algorithms are the type of
algorithms that find the result as an average outcome of sub outcomes to a
problem.
Example: For NP-Hard Problems , approximation algorithms are used. Sorting
algorithms are the exact algorithms.
3. Serial or Parallel or Distributed Algorithms: In serial algorithms, one
instruction is executed at a time while parallel algorithms are those in which we
divide the problem into sub problems and execute them on different processors.
If parallel algorithms are distributed on different machines, then they are
known as distributed algorithms.
User interface (UI) design is the process designers use to build interfaces in software
or computerized devices, focusing on looks or style. Designers aim to create
interfaces which users find easy to use and pleasurable. UI design refers to graphical
user interfaces and other forms—e.g., voice-controlled interfaces
User interfaces are the access points where users interact with designs. They come in
three formats:\Graphical user interfaces (GUIs)—Users interact with visual
representations on digital control panels. A computer’s desktop is a GUI.
Gantt Chart
Source Code
#creating functions
def f1():
main_window.withdraw()
add_window.deiconify()
def f2():
add_window.withdraw()
main_window.deiconify()
def f3():
main_window.withdraw()
view_window.deiconify()
vw_st_data.delete(1.0,END)
info=""
con=None
try:
con=connect("ems.db")
cursor=con.cursor()
sql="select * from employee"
cursor.execute(sql)
data=cursor.fetchall()
con.commit()
for d in data:
info= info + "Id= " + str(d[0]) + "\t"+ " Name= " +str(d[1]) + "\t\
t"+ " Salary=Rs" + str(d[2]) + "\n"
vw_st_data.insert(INSERT,info)
except Exception as e:
showerror("Issue",e)
finally:
if con is None:
con.close()
def f4():
view_window.withdraw()
main_window.deiconify()
def f5():
main_window.withdraw()
update_window.deiconify()
def f6():
update_window.withdraw()
main_window.deiconify()
def f7():
main_window.withdraw()
delete_window.deiconify()
def f8():
delete_window.withdraw()
main_window.deiconify()
def chart():
#################################creating main
window################
main_window=Tk()
main_window.title(" E.M.S ")
main_window.geometry("500x550+400+100")
main_window.iconbitmap("py.ico")
main_window.configure(bg="PaleGreen1")
#initializing font
f=("Ink Free",12,"bold")
#initializing y axis
y=15
#initializing Buttons
#BTN add
add_btn=Button(main_window,activeforeground="orange",activebackground="pink
",text="ADD",font=f,width=9,height=2,command=f1)
add_btn.pack(pady=y)
#btn view
view_btn=Button(main_window,text="VIEW",activeforeground="yellow",activeback
ground="purple",font=f,width=9,height=2,command=f3)
view_btn.pack(pady=y)
#btn update
update_btn=Button(main_window,activeforeground="cyan",text="UPDATE",height
=2,font=f,width=9,command=f5)
update_btn.pack(pady=y)
#btn delete
delete_btn=Button(main_window,activeforeground="yellow",activebackground="sil
ver",text="DELETE",font=f,width=9,height=2,command=f7)
delete_btn.pack(pady=y)
#btn charts
charts_btn=Button(main_window,activeforeground="yellow",activebackground="cy
an",text="CHARTS",font=f,width=9,height=2,command=chart)
charts_btn.pack(pady=y)
#Label Quote
fq=("Lucida Calligraphy",12)
quote_lab=Label(main_window,fg="blue",bg="yellow",text="Quote Of The Day:\n
When it comes to luck, Make your own\n -Bruce
Springsteen",font=fq,width=48,height=3,)
quote_lab.pack(pady=5)
#####################Add window
initialization##########################
add_window=Toplevel(main_window)
add_window.title("ADD EMPLOYEE")
add_window.geometry("500x550+400+100")
add_window.iconbitmap("py.ico")
add_window.configure(bg="LightSkyBlue1")
#Label name
aw_lab_id=Label(add_window,text="Enter ID",font=f,height=2,width=9)
aw_lab_id.pack(pady=y)
#Entry id
aw_ent_id=Entry(add_window,font=f,)
aw_ent_id.pack(pady=y)
#Label Name
aw_lab_name=Label(add_window,text="Enter Name",font=f,height=2)
aw_lab_name.pack(pady=y)
#Entry name
aw_ent_name=Entry(add_window,font=f,)
aw_ent_name.pack(pady=y)
#Label Salary
aw_lab_salary=Label(add_window,text="Enter Salary",font=f,height=2)
aw_lab_salary.pack(pady=y)
#Entry salary
aw_ent_salary=Entry(add_window,font=f,)
aw_ent_salary.pack(pady=y)
def save():
con=None
try:
id=aw_ent_id.get()
if len(id) == 0:
raise Exception("Id should not be Empty")
elif id.isnumeric()==0:
aw_ent_id.delete(0,END)
raise Exception("ID Should Be In In Positive Numbers ")
elif int(id) == 0:
aw_ent_id.delete(0,END)
raise Exception("ID Should Be In In Positive Numbers")
else:
id1=int(id)
name=aw_ent_name.get()
if len(name)==0:
raise Exception("Name Should not be empty")
elif name.isalpha()==0:
aw_ent_name.delete(0,END)
raise Exception("Only alphabets are allowed in Name")
elif salary.isnumeric()==0:
aw_ent_salary.delete(0,END)
raise Exception("Salary should be in Positive Numbers")
else:
salary1=float(salary)
con=connect ("ems.db")
cursor=con.cursor()
sql="insert into employee values('%d','%s','%f')"
cursor.execute(sql % (id1,name1,salary1))
con.commit()
showinfo("Record","Employee added Successfully")
csv_writer=csv.writer(csv_file)
csv_writer.writerow([i[0] for i in cursor.description])
csv_writer.writerows(cursor)
except IntegrityError:
showerror("Record","Employee Id Already present,Try Another One")
except Exception as e:
showerror("Issue",e)
finally:
if con is not None:
con.close()
aw_ent_id.delete(0,END)
aw_ent_name.delete(0,END)
aw_ent_salary.delete(0,END)
#Button save
aw_btn_save=Button(add_window,text="Save",font=f,height=2,width=6,activeforeg
round="yellow",activebackground="cyan",command=save)
aw_btn_save.pack()
#Button back
aw_btn_back=Button(add_window,activeforeground="yellow",activebackground="c
yan",text="Back",font=f,height=2,width=6,command=f2)
aw_btn_back.pack(pady=y)
###########################View
Emp##############################
view_window=Toplevel(main_window)
view_window.title("View Emp")
view_window.geometry("500x550+400+100")
view_window.iconbitmap("py.ico")
view_window.configure(bg="LightGoldenrod1")
#scroll text
vw_st_data=ScrolledText(view_window,width=44,height=19,font=f)
vw_st_data.pack(pady=y)
#btn back
vw_btn_back=Button(view_window,activeforeground="yellow",activebackground=
"red",text="Back",font=f,width=8,height=2,command=f4)
vw_btn_back.pack(pady=y)
#to close
view_window.withdraw()
###########################Update
Window#######################
update_window=Toplevel(main_window)
update_window.title("View Emp")
update_window.geometry("500x550+400+100")
update_window.iconbitmap("py.ico")
update_window.configure(bg="LightPink1")
#Label name
uw_lab_id=Label(update_window,text="Enter ID",font=f,height=2,width=9)
uw_lab_id.pack(pady=y)
#Entry id
uw_ent_id=Entry(update_window,font=f,)
uw_ent_id.pack(pady=y)
#Label Name
uw_lab_name=Label(update_window,text="Enter Name",font=f,height=2)
uw_lab_name.pack(pady=y)
#Entry name
uw_ent_name=Entry(update_window,font=f,)
uw_ent_name.pack(pady=y)
#Label Salary
uw_lab_salary=Label(update_window,text="Enter Salary",font=f,height=2)
uw_lab_salary.pack(pady=y)
#Entry salary
uw_ent_salary=Entry(update_window,font=f,)
uw_ent_salary.pack(pady=y)
def update():
con=None
try:
con=connect("ems.db")
cursor=con.cursor()
sql="update employee set name='%s',salary='%f' where id='%d' "
id=(uw_ent_id.get())
if len(id) == 0:
raise Exception("Id should not be Empty")
uw_ent_id.delete(0,END)
elif id.isnumeric()==0:
raise Exception("ID Should Be In Positive Numbers")
uw_ent_id.delete(0,END)
elif int(id) == 0:
raise Exception("ID Should Be In Positive Numbers")
uw_ent_id.delete(0,END)
else:
id1=int(id)
name=uw_ent_name.get()
if len(name)==0:
raise Exception("Name Should not be empty")
uw_ent_name.delete(0,END)
elif name.isalpha()==0:
raise Exception("Only alphabets are allowed in Name")
uw_ent_name.delete(0,END)
elif len(name) < 2:
raise Exception("Name too short")
uw_ent_name.delete(0,END)
else:
name1=name
salary=(uw_ent_salary.get())
if len(salary)==0:
raise Exception("Salary Should not be Empty")
uw_ent_salary.delete(0,END)
elif salary.isnumeric()==0:
raise Exception("Salary should be in Numbers")
uw_ent_salary.delete(0,END)
elif float(salary) < 8000:
raise Exception("Salary should be greater than RS8000")
uw_ent_salary.delete(0,END)
else:
salary1=float(salary)
cursor.execute(sql % (name1,salary1,id1))
if cursor.rowcount == 1:
con.commit()
showinfo("Record","Record Updated Successfully")
else:
showerror("Record","Record does not exists")
csv_writer=csv.writer(csv_file)
csv_writer.writerow([i[0] for i in cursor.description])
csv_writer.writerows(cursor)
dirpath=os.getcwd()+"/empdata.csv"
except Exception as e:
showerror("Issue",e)
con.rollback()
finally:
if con is not None:
con.close()
uw_ent_id.delete(0,END)
uw_ent_name.delete(0,END)
uw_ent_salary.delete(0,END)
#Button save
uw_btn_save=Button(update_window,activeforeground="yellow",activebackground
="green",text="Save",font=f,height=2,width=6,command=update)
uw_btn_save.pack()
#Button back
uw_btn_back=Button(update_window,activeforeground="gold",activebackground=
"red",text="Back",font=f,height=2,width=6,command=f6)
uw_btn_back.pack(pady=y)
delete_window=Toplevel(main_window)
delete_window.title("Delete Emp")
delete_window.geometry("500x550+400+100")
delete_window.iconbitmap("py.ico")
delete_window.configure(bg="AntiqueWhite2")
#Label name
dw_lab_id=Label(delete_window,text="Enter ID",font=f,height=2,width=9)
dw_lab_id.pack(pady=y)
#Entry id
dw_ent_id=Entry(delete_window,font=f,)
dw_ent_id.pack(pady=y)
def delete():
con=None
try:
con=connect("ems.db")
cursor=con.cursor()
sql="delete from employee where id='%d' "
id=(dw_ent_id.get() )
if len(id) == 0:
raise Exception("Id should not be Empty")
dw_ent_id.delete(0,END)
elif id.isnumeric()==0:
raise Exception("ID Should Be In Numbers only")
dw_ent_id.delete(0,END)
elif int(id) == 0:
raise Exception("Id should be Number")
dw_ent_id.delete(0,END)
else:
id1=int(id)
cursor.execute(sql % (id1))
if cursor.rowcount == 1:
con.commit()
showinfo("Record","Employee Deleted Successfully")
else:
showwarning("Record","Employee-ID does not Exists")
#Exporting data into csv file
cursor=con.cursor()
cursor.execute("select * from employee")
with open("empdata.csv","w",newline='',encoding='utf-8') as csv_file:
csv_writer=csv.writer(csv_file)
csv_writer.writerow([i[0] for i in cursor.description])
csv_writer.writerows(cursor)
dirpath=os.getcwd()+"/empdata.csv"
except Exception as e:
showerror("Issue",e)
con.rollback()
finally:
if con is not None:
con.close()
dw_ent_id.delete(0,END)
#Button save
dw_btn_save=Button(delete_window,activeforeground="red",activebackground="cy
an",text="Delete",font=f,height=2,width=6,command=delete)
dw_btn_save.pack()
#Button back
dw_btn_back =
Button(delete_window,activeforeground="red",activebackground="cyan",text="Back
",font=f,height=2,width=6,command=f8)
dw_btn_back.pack(pady=y)
main_window.mainloop()
Chapter 6
Conclusion and Future Work
Conclusion:
In conclusion, the system proved to be an effective tool for managing employee data,
improving communication, and increasing transparency within the organization.
The system was well-received by employees, and it helped to streamline operations
and improve employee engagement.
Limitations:
Although the Employee Management System proved to be effective, there were
some limitations to the system. One limitation was that the system relied on admins
to input employee’s data, which could lead to errors or incomplete information.
Additionally, the system was only accessible to authorized users within the
organization, which limited its potential for collaboration with external stakeholders.
Future Work:
Looking ahead, there are several areas where the Employee Management System
could be further developed and improved. One area of focus could be on expanding
the system's functionality to include additional features such as performance
analytics, training and development tracking, and employee recognition programs.
Another potential area for future work could be to integrate the system with other
organizational systems. Finally, continued efforts should be made to ensure that the
system is user-friendly and accessible to all employees within the organization,
regardless of their technical proficiency.
Chapter 7
References
Books
1. Think Python – Allen Downey (O’Reilly)
2. Python for Everybody: Exploring Data Using Python 3 – Charles Severance
Websites
1. https://docs.python.org
2. https://www.w3schools.com
3. https://www.github.com
4. https://www.stackoverflow.com