Download as pdf or txt
Download as pdf or txt
You are on page 1of 27

COMPUTER ASSIGNEMENT

Session-2023-24

NAME DHRUV RATHOD

CLASS XII

ROLL NO. 13

TOPIC EMPLOYEE MANAGEMENT SYSTEM

SUBMITTED TO HEENA MAM

SUBMITTED ON 20-12-2023
CERTIFICATE

2
TABLE OF CONTENTS [ T O C ]
SER DESCRIPTION PAGE NO

01 ACKNOWLEDGEMENT 04

02 INTRODUCTION 05

03 OBJECTIVES OF THE PROJECT 05

04 PROPOSED SYSTEM 06

05 SYSTEM DEVELOPMENT LIFE CYCLE (SDLC) 07

06 PHASES OF SYSTEM DEVELOPMENT LIFE CYCLE 08

07 FLOW CHART 15

08 SOURCE CODE 16

09 OUTPUT 19

10 INSTALLATION FILE

10 TESTING 25

11 HARDWARE AND SOFTWARE REQUIREMENTS 27

12 BIBLIOGRAPHY 29

3
ACKNOWLEDGEMENT
Apart from the efforts of me, the success of any project depends
largely on the encouragement and guidelines of many others. I take this
opportunity to express my gratitude to the people who have been
instrumental in the successful completion of this project.
I express deep sense of gratitude to almighty God for giving me
strength for the successful completion of the project.
I express my heartfelt gratitude to my parents for constant
encouragement while carrying out this project.
I gratefully acknowledge the contribution of the individuals who
contributed in bringing this project up to this level, who continues to
look after me despite my flaws,
I express my deep sense of gratitude to the luminary The
Principal, Mrs Mamta Raval who has been continuously motivating and
extending their helping hand to us.
I am overwhelmed to express my thanks to The Administrative
Officer for providing me an infrastructure and moral support while
carrying out this project in the school.
My sincere thanks to Mrs Hina Patel, Master 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:
This project is all about software for Employee

management system. It helps to have a full-fledged control

over his/her employees. The project is divided into 2 sections

to make the programme easy to understand.

It receives user name and password to log in and register

It keeps the record of user salary ,his department of working,

his performance in the office. It adds a new employee, his

salary, department, updates an existing salary ,list of

employee, age and his performance.

OBJECTIVES OF THE PROJECT

The objective of this project is to let the students apply

the programming knowledge into a real- world

situation/problem and exposed the students how

programming skills helps in developing a good software.

5
1. Write programs utilizing modern software tools.

2. Apply object oriented programming principles effectively

when developing small to medium sized projects.

3. Write effective procedural code to solve small to medium

sized problems.

4. Students will demonstrate a breadth of knowledge in

computer science, as exemplified in the areas of systems,

theory and software development.

5. Students will demonstrate ability to conduct a research

or applied Computer Science project, requiring writing

and presentation skills which exemplify scholarly style in

computer science.

6
6. SYSTEM DEVELOPMENT LIFE CYCLE
(SDLC)

PHASES OF SYSTEM DEVELOPMENT LIFE


CYCLE
INITIATION PHASE

The Initiation Phase begins when a business sponsor identifies


a need or an opportunity.
The purpose of the Initiation Phase is to:
Identify and validate an opportunity to improve business
accomplishments of the organization or a deficiency
related to a business need.
Identify significant assumptions and constraints on
solutions to that need.

7
Recommend the exploration of alternative concepts and
methods to satisfy the need including questioning the
need for technology, i.e., will a change in the business
process offer a solution?
Assure executive business and executive technical
sponsorship. The Sponsor designates a Project Manager
and the business need is documented in a Concept
Proposal. The Concept Proposal includes information
about the business process andthe relationship to the
Agency/Organization.
Infrastructure and the Strategic Plan. A successful
Concept Proposal results in a Project Management
Charter which outlines the authority of the project
manager to begin
the project.
Careful oversight is required to ensure projects support
strategic business objectives and resources are effectively
implemented into an organization's enterprise architecture.
The initiation phase begins when an opportunity to add,
improve, or correct a system is identified and formally
requested through the presentation of a business case. The
business case should, at a minimum, describe a proposal’s
purpose, identify expected benefits, and explain how the
proposed system supports one of the organization’s business

8
strategies. The business case should also identify alternative
solutions and detail as many informational, functional, and
network requirements as possible.

SYSTEM CONCEPT DEVELOPMENT PHASE


The System Concept Development Phase begins after a
business need or opportunity is validated by the
Agency/Organization Program Leadership and the
Agency/Organization CIO.

The purpose of the System Concept Development Phase is to:


Determine the feasibility and appropriateness of the
alternatives.
Identify system interfaces.
Identify basic functional and data requirements to satisfy
the business need.
Establish system boundaries; identify goals, objectives,
critical success factors, and performance measures.
Evaluate costs and benefits of alternative approaches to
satisfy the basic functional requirements
Assess project risks
Identify and initiate risk mitigation actions, andDevelop
high-level technical architecture, process models, data
models, and a concept of operations. This phase explores

9
potential technical solutions within the context of the
business need.
It may include several trade-off decisions such as the
decision to use COTS software products as opposed to
developing custom software or reusing software
components, or the decision to use an incremental
delivery versus a complete, onetime deployment.

PICTORIAL REPRESENTATION OF SDLC:

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

10
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.
A critical part of a project manager’ sjob is to coordinate
discussions between user, audit, security, design,
development, and network personnel to identify and document
as many functional, security, and network requirements as
possible. During this phase, a plan is developed that
documents the approach to be used and includes a discussion
of methods, tools, tasks, resources, project schedules, and
user input. Personnel assignments, costs, project schedule,
and target dates are established.
A Project Management Plan is created with components
related to acquisition planning, configuration management
planning, quality assurance planning, concept of operations,
system security, verification and validation, and systems
engineering management planning.

11
DEVELOPMENT PHASE
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:

Translating the detailed requirements and design into


system components.
Testing individual elements (units) for usability.
Preparing for integration and testing of the IT system.

12
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, as defined in the functional requirements
document, are satisfied by the developed or modified
system. OIT Security staff assess the system security and
issue a security certification and accreditation prior to
installation/implementation.
Multiple levels of testing are performed, including :

Testing at the development facility by the contractor and


possibly supported by end users
Testing as a deployed system with end users working
together with contract personnel
Operational testing by the end user alone performing all
functions. Requirements are traced throughout testing,a
final Independent Verification & Validation evaluation is
performed and all documentation is reviewedand
accepted prior to acceptance of the system.

13
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
userrequirements.

OPERATIONS AND MAINTENANCE PHASE


The system operation is ongoing. The system is monitored for
continued performance in accordance with user requirements
and needed system modifications are incorporated. Operations
continue as long as the system can be effectively adapted to
respond to the organization’s needs. When modifications or
changes are identified, the system may reenter the planning
phase.

The purpose of this phase is to:


Operate, maintain, and enhance the system.

14
.
Start python

FLOW CHART
Creation of table logid ,office
and performance

PROGRAM EXECUTION BY
("1.LOGIN")

("2.EMPLOYEE
REGISTERATION")

("3.EMPLOYEE DETAILS")

("4.UPDATE SALARY")

("5.EMPLOYEES LIST")

"6.KNOW THE NUMBER OF


EMPLOYEES")

("7.EMPLOYEE BALANCE
ACCOUNT")

("8.WORK EXPERIENCE")

("9.KNOW YOUR SALARY")

(".EXITING")

STOP

15
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
import datetime as dt
print(dt.datetime.now())
print('1.REGISTER')
print()
print('2.LOGIN')
print()

n=int(input('enter your choice='))


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:
print()
import mainp

16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
# MAINP.PY FILE #
import time
print ("\t\t\t",time.ctime())
import mysql.connector as sql
conn=sql.connect(host='localhost',user='root',password='manager',dat
abase='employees')
mycursor=conn.cursor()

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")
def login():
import sys
user_id=input("enter USER ID :")
pwd=int(input("enter the password :"))

17
if user_id == 'vishal'and pwd == 6054:
print("welcome to EMPLOYEE MANAGEMENT SYSTEM ")
else:

print("invalid user id and password")


sys.exit()

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)+",'"
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")
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:

18
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 : ")
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)+",'" print(v_sql_insert)
mycursor.execute(v_sql_insert)
conn.commit()
print("performance added")

menu() # PYTHON MODULE :Tables_in_mysql

====================================================================

19
OUTPUT:

20
21
INSTALLATION PROCEDURE:

employee management system :-

Pre-Requisites :

1. You have to have the following softwares for the


successful running of this software; which are

I) Python (Only for the First time), it is downloadable


from 'www.python.org'.

II) MySQL (Only for the First time), it is downloadable


from 'www.mysql.org'.

Installation :-

-------------------

1. There will be two folders namely 'TABLEE Files'


and 'MAIN files'.

2. The folder 'TABLEE Files' will contain the source


code of the software in python language. If you are
running the software by the 3rd step mentioned below you
have to pre install the following modules :-

A.) mysql.connector

B.)IMPORT time

3. Open the files in any python editors and run it to


start and work on the software.

4. The folder '6054' will contain two files namely


'main.exe' and 'Tables_in_mysql.exe'.

22
5. First run the 'Tables_in_mysql.exe' to create the
tables in MySQL.

6. Then run the file 'main.exe' to start and work on the


software.

TESTING:
Software Testing is an empirical investigation conducted to
provide stakeholders with information about the quality of the
product or service under test[1] , with respect to the context in
which it is intended to operate. Software Testing also provides
an objective, independent view of the software to allow the
business to appreciate and understand the risks at
implementation of the software. Test techniques include, but
are not limited to, the process of executing a program or
application with the intent of finding software bugs.
It can also be stated as the process of validating and
verifying that a software program/application/product meets
the business and technical requirements that guided its design
and development, so that it works as expected and can be
implemented with the same characteristics. Software Testing,
depending on the testing method employed, can be
implemented at any time in the development process, however
the most test effort is employed after the requirements have
been defined and coding process has been completed.

23
TESTING METHODS:
Software testing methods are traditionally divided into black
box testing and white box testing. These two approaches are
used to describe the point of view that a test engineer takes
when designing test cases.

BLACK BOX TESTING


Black box testing treats the software as a "black box," without any knowledge
of internal implementation. Black box testing methods include: equivalence
partitioning, boundary value analysis, all-pairs testing, fuzz testing, model-based
testing, traceability matrix, exploratory testing and specification-based testing.

SPECIFICATION-BASED TESTING
Specification-based testing aims to test the functionality of software according to the
applicable requirements.[16] Thus, the tester inputs data into, and only sees the
output from, the test object. This level of testing usually requires thorough test cases
to be provided to the tester, who then can simply verify that for a given input, the
output 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

ADVANTAGES AND DISADVANTAGES


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.

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

24
team to examine parts of a system that are rarely tested and ensures that the most
important function points have been tested.

Two common forms of code coverage are:


Function Coverage: Which reports on functions executed and
Statement Coverage: Which reports on the number of lines executed
to complete the test.
They both return coverage metric, measured as a percentage

HARDWARE AND SOFTWARE REQUIREMENTS

I.OPERATING SYSTEM : WINDOWS 7 AND ABOVE

II. PROCESSOR : PENTIUM(ANY) OR AMD

ATHALON(3800+- 4200+ DUAL

CORE)

III. MOTHERBOARD : 1.845 OR 915,995 FOR PENTIUM

0R MSI

K9MM-V VIA K8M800+8237R

PLUS CHIPSET FOR AMD

ATHALON

IV. RAM : 512 MB+

V. Hard disk : SATA 40 GB OR ABOVE

VI. CD/DVD r/w multi drive combo: (If back up required)

VII. FLOPPY DRIVE 1.44 MB : (If Backup required)

25
VIII. MONITOR 14.1 or 15 -17 inch

IX. Key board and mouse

X. Printer : required

SOFTWARE REQUIREMENTS:
I. Windows OS II. Python

26
BIBLIOGRAPHY

1. Computer science With Python - Class XI By :


Sumita Arora
2. Website: https://www.youtube.com

***

27

You might also like