You are on page 1of 51

COMPUTER SCIENCE

INVESTIGATORY
PROJECT

NESS
Submitted by:
M.RAJIV
12 SCIENCE
th

Roll no.-18

CERTIFICATE
This is hereby to certify that, the original and genuine investigation
work has been carried out to investigate about the subject matter and
the related data collection and investigation has been completed solely,
sincerely and satisfactorily by SAKSHAM KUMAR of Class XII A,
Kendriya Vidyalaya Jankpuri (First Shift), regarding his project titled
“EMPLOYEE MANAGEMENT SYSTEM”.

Student’s Sign .Teacher’s Sign.

ACKNOWLEDGEMENT
It would be my utmost pleasure to express my sincere thanks to my
Computer Science Teacher Mr. AJAY GODWAL SIR in providing a
helping hand in this project. Their valuable guidance, support and
supervision all through this project titled “EMPLOYEE MANAGEMENT
SYSTEM”, are responsible for attaining its present form.

I would like to thank her for teaching us computer science from the
very basics thus strengthening our root and making us understand
complex chapters easily.

This project has been made not only for fetching marks but also for
knowledge.

SAKSHAM KUMAR

XII A
CONTENTS
• Introduction

• System Objectives & Aim of the Project

• Theory

• Header Files Used

• Source Code

• Output Screens

• Bibliography
INTRODUCTION
The purpose of the project is to computerize the requirement
of the EMPLOYEE MANAGEMENT SYSTEM and such to add an
employee, display the list of employees, search for an
employee, increase an employee’s salary, promotion for an
employee and delete an employee’s record. The softwaresaves
multiple employee records and gives option for every kind of
modification needed. It does almost every work related to employee
management purposesvia-
1) Add an employee
2) Display (All/Specific)
3) Salary Hike
4) Promotion
5) Deleting an employee record

SYSTEM OBJECTIVES&
AIM OF THE PROJECT
Employee Management System which starts with a manual data
entry and management deals with many operations, now-a-days has
become a complicated and error prone job to maintain the
company’s administrative system manually. So, we have decided
to go about computerizing their operation. The new system created in
the project i.e.

“Computerization of Employee ManagementSystem”


tends to computerize the Employee Management System by storing
its associated data in database files and thus performing all works
related to modification and implementation.

The main aim while implementing the project Employee Management


System were to minimize the work and at the same time increase the
speed of the work done. The new system is built with the following
objectives: -

•Information retrieval will become easy.


•Maintenance of database as well as overall project will become easy.
•Modification to the database will become easy.

HARDWARE REQUIREMENT
PROCESSOR Pentium III 500 MHz

HARD DISK DRIVE 2GB

RAM 64 MB

CACHE 512 KB

TOOLS/PLATFORM, LANGUAGE
TO BE USED
Software and hardware specification as the name suggests, tells

us about the various characteristics of the software and the

hardware environment used i.e. the development environment

used. Here I specify various software languages, supporting

tools that have been used for the development of the system.

These tools and the languages have been used because of their

relative ease of understand and personalinterest of the team

developing the project.

SOFTWARE ENVIRONMENT
OF PROJECT

PLATFORM WINDOW 8,10


FRONT END IDE Turbo C++
BACK END DOS file support
SOFTWARE LANGUAGES USED

In the development of a project the selection of an appropriate

programming language and a platform is of primary

importance. The major part of credit of success of a project

goes to the software environment chosen by the developer.

Selecting a language from the ocean of the languages is very

difficult. A developer has to consider the various features and

functionalities that a particular language can provide him/her

how easily and successfully the requirements of a user can be

fulfilled depend on the s/w language chosen. More over the

developer also has to take care of the various facilities, he can

use. In the development of this application, it has been taken

into great consideration that server overhead should be low as

far as possible.
TURBO C++
It is one of the most widely used development tools on the

market today. C++ is a high-level, compilerandhigh

shelllanguage. In addition, C++ has the feature of object-

oriented programming.

A language can be classified as low-level language and high-

level language. Program written in the low-level language is

dependent on the architecture of the computer. In other

words, the low-level languages are machine dependent.

Machine language and Assembly language are the low-level

languages. High-level language uses English like statements to

give an instruction to the machine. These instructions are

machine independent. The same source program can be used


on another machine, which is architecturally different from the

machine in which the source program is written with a few or

no changes. In other words, the high-level languages are

machine independent. A high-level language has more

readability than low-level language. Programming in high-level

language is much easier than low-level language.

FEATURES OF HIGH
LEVEL LANGUAGE
A high-level language uses the translators to translate the

source program in to machine executable form because the

computer cannot understand the high-level language. It can

understand only binary language. A high-level language

program can be translated using interpreter or compiler.


Interpreter takes the source program line by line as input,

translates one line at a time into executable form if it has no

errors otherwise displays an error message. Compiler first

translates the source program into object program if there is no

error; if there are errors in the program it displays the list of the

errors. After translating the object program can be executed.

Each time the program execution starts the interpreter

interprets the source program but compiler does not. C++ is a

compiler language. It also has the feature of compilation. When

one wants to create .exe file C++ first compile the source

program then translates it into executable program.

A language provides either low visual or high visual. Earlier

high-level languages like Pascal, Basic, For-Tran, COBOL, etc.

provides the low-visual because it uses the character-based

interface to interact with the user.


The C++ provide various facility like encapsulation and

polymorphism it also provides various features like exception

handling mechanism it also provides runtime object error

correction.

FEATURES OF C++
• It is a simple language that’s easy to master.

• C++ is a superset of C

• C++ makes working with the basic data types extremely

easy.

• C++ provides a full-featured development environment

with features such as polymorphism.

• The native code compiler provides the feature to build

fast, scalable components.


• Some facilities of C++ are inheritance, function

overloading, operator overloading.

• C++ allows creating hierarchy related objects.

• C++ programs are easy to maintain and are also

expandable.

• C++ program is a collection of function.

• It gives us the ability to get close to the machine-level

details.

• This language provides clarity, incorporating the spirit and

efficiency of C.

• It is based on object-oriented programming structure.


Basic concept of OOP’S

DATA ABSTRACTION:
Abstraction refers to the act of representing essential features
without including the background details or explanation.

Example:
You are driving a car. You only know the essential features to drive a car e.g., gear
handling, steering handling, use of clutch, accelerator, brakes etc. But while you
are driving do you get into internal details of the car like wiring, motor working
etc.? You just change the gears of apply the brakes etc. What is happening is
hidden from you. This is abstraction where you only know the essential things to
drive a car without including the background details or explanation. Another
example is of ‘switch board’. You only press certain switches according to your
requirement. What is happening inside, how it is happening inside, how it is
happening etc. you needn’t know. Again, in this abstraction, you only know the
essential things to operate on the switch board without the knowledge the
background details of the switchboard.

DATA ENCAPSULAION:
The wrapping up of data and operation/function (that operate
on the data) into a single entity (called class) is known as
encapsulation.

Example:
In a big company, there are so many departments, sales, account, payroll,
purchase, production etc. each department has its own personnel that maintain
its data. Suppose an employee in the production dept. wants to know how much
raw material has been purchased for the next month. The production dept.
employee would not be allowed to himself go throughthe purchase dept. files.
Rather, he`ll issue a memo to the purchase dept. requesting the desired
information. Then some employee of the purchase dept. will go through the data
files for him and pertain to his requests. This practice ensures that the data is
accessed accurately and that it is not corrupted by inept outsiders. Therefore,
‘Department data and department employees are encapsulated into a single
entity, the department.’
INHERITANCE:
Inheritance is the capability of one class of things to inherit
capabilities of properties from another class.

Example:
‘Humans’ certain properties, such as the ability to speak, breath, eat, drink, etc.
etc. But these properties are not unique to humans. The class ‘Human’ inherits
these properties from the class ‘Mammal’ which again inherits some of its
properties from another “Animal’. The class “car” inherits some of its properties
from the class ‘Automobiles” which inherits some of its properties from another
class ‘Vehicles”. The capability to pass down properties is a powerful one. It
allows us to describe things in an economical way. ‘Automobiles and ‘Pulled
Vehicles’ are subclasses of ‘Vehicles’. ‘Vehicles are base class of ‘Automobiles’ and
‘Pulled Vehicles’.

MODULARITY (CLASSES & OBJECT):


Modularity is the property of a system that has been
decomposed into a set of cohesive and loosely coupled
modules.

Example:
You must have seen a complete music system. Let us assume that our program
represents the music system. The music system comprises of speakers, cassette-
player, record-player, cd-player, tuner etc. Now, these parts are complete units in
themselves, yet they are themselves, yet they are a subpart of the music system.
This is modularity. Similarly, we can achieve modularity in programs also. A
program can be divided into various modules each representing speakers,
cassette-player… etc. See each module is a complete unit itself yet it works in
accordance with other modules in order to achieve one single goal i.e. music.

POLYMORPHISM:
Polymorphism is the ability for a message or data to be
processed in more than one form.

Example:
‘Human’ is a subclass of ‘Mammal’. Similarly ‘Dog’, ‘Cat’, are also subclasses of
‘Mammals’. Mammals can see through day-light. So if a message ‘see through day
light’ is passed to all mammals, they will behave alike. Now if a message ‘see
through day light’is passes to all mammals, then humans and dogs will not be able
to see at night whereas cat will be able to see at night also. Here cats behave
differently than other mammals in response to a message or action.
FILE HANDLING
We know that Files are used for Storing Permanent information. And
C++ provides a Facility to a developer the Retrieve the Information from
File and he may also modify the Contents of a File So that we can say
that File Handling is the Concept to Store, Retrieve and Modify the
Information which is stored in the Form of Files in your Computer.

There are Many Built in Classes of C++, Which Provides Various


Functionality for Performing the Operations on Files. A user has an
Ability to Modify the data of a File With the help of these Functions.
Generally, a user can use a File Read, Write or For Appending More
data into the File so that C++ Provides Various Classes For Performing
these Operations. There are two most important Classes which are
known as ifstream and ofstream. Ifstream stands for input Stream
which is used for Reading the Contents from a File and output Stream
or Simply ofstream is used for writing data into the Files.
There is one More Class Which is used for Both Performing read
and write known as fstream class and Always Remember for using Any
Class First we have to use or include a header file which is called as
Fstream.h header file.

Various Functions for Reading and writing data of Files

1) get: - This Functions Stands for Reading data from a File in the Form
of Character.

2) Put:- This Function is used for Writing the data into a File in the Form
of Characters

3) << and >> These Operators are also used for Writing the data into
the File, The Data may int,float or any other data type. << Operator is
used for Writing data into a File and >> Operator is used for Reading
data from a File.

4) Read and Write: - With the help of C++ one can also Read or Write
the Data from a file. But C++ also Provides a Write Method or Function
for Writing the data of A Class into a File Like Data of a Member
Functions, Values of data Members of a Class and One Can Also Read
the Information once this written into a File with the help of Read
Method or Function.
HEADER FILES USED
• #include<iostream.h>

• #include<fstream.h>

• #include<stdio.h>

• #include<conio.h>

• #include<stdlib.h>

• #include<string.h>
SOURCE
CODE

#include<iostream.h>
#include<fstream.h>
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<string.h>
class Employee //declaring class employee
{ private:
intcode; //data members
char name[40];
char post[20];
float salary;

public: //member functions


void read();
void display();
intgetEmpCode() //will return employee code
{ return code;
}

float getSalary() //will return employee salary


{ return salary;
}

void updateSalary(float s) //will update employee salary


{ salary = s;
}
void updatePost(char str[]) //will change post of an employee
{ strcpy(post,str);
}
};

void Employee::read() //Read employee record


{ cout<<"\nEnter employee code: ";
cin>>code;
cout<<"Enter name: ";
gets(name);
cout<<"Enter designation: ";
gets(post);
cout<<"Enter salary: ";
cin>>salary;
}

void Employee::display() //Display employee record


{
cout<<"\t"<<code<<"\t\t"<<name<<"\t"<<post<<"\t"<<salary<<"\n";

void welcome() //function for welcome screen


{ clrscr();
gotoxy(28,7);
cprintf("W E L C O M E T O");
gotoxy(25,9);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");
gotoxy(32,12);
cprintf("COMPILED BY:");
gotoxy(32,13);
cprintf("SAKSHAM KUMAR");
gotoxy(35,14);
cprintf("XII A");
gotoxy(19,15);
cprintf("KENDRIYA VIDYALAYA JANAKPURI (FIRST SHIFT)");
gotoxy(24,19);
cprintf("*Press any Key for Main Menu*");
getch();
}

fstreamfile; //global declaration

void appendToFile() //function to append record into file


{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");

Employee x;
x.read(); //Read employee record from user
file.open("EMPLOYEE.DAT",ios::binary|ios::app);
if(!file)
{ cout<<"\nERROR IN CREATING FILE\n";
return;
}
cout<<endl;
//write into file
file.write((char*) &x,sizeof(x));
file.close();
cout<<"Record added sucessfully \n";
}

void displayAll() //Display all records


{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");

Employee x;

file.open("EMPLOYEE.DAT",ios::binary|ios::in);
if(!file)
{ cout<<"ERROR IN OPENING FILE \n";
return;
}
cout<<"\nEmpCode"<<"\tName"<<"\tDesignation"<<"\tSalary \n";
while(!file.eof())
{ if(file.read((char*) &x,sizeof(x)))
x.display();
}
file.close();
}

void searchForRecord() //read employee id


{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");
Employee x;
intn;
int flag=0;

cout<<"\nEnter employee code: ";


cin>>n;

file.open("EMPLOYEE.DAT",ios::binary|ios::in);
if(!file)
{ cout<<"ERROR IN OPENING FILE \n";
return;
}
while(!file.eof())
{ if(file.read((char*) &x,sizeof(x)))
{ if(x.getEmpCode()==n)
{cout<<"RECORD FOUND\n";
cout<<"EmpCode"<<"\tName"<<"\tDesignation"<<" \tSalary\n";
x.display();
flag=1;
break;
}
}
}

if(flag==0)
{ cout<<"Record not found with employee code "<<n;
}
file.close();
}

void increaseSalary() //Function to increase Salary


{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");
Employee x;
intn,flag=0;
float newsal, sal;
long pos;

cout<<"\nEnter Employee Code: ";


cin>>n;

file.open("EMPLOYEE.DAT",ios::binary|ios::in|ios::out);
if(!file)
{ cout<<"ERROR IN OPENING FILE \n";
return;
} //Using File handling concepts
while(!file.eof())
{ pos=file.tellg();
file.read((char*) &x,sizeof(x));
{ if(x.getEmpCode()==n)
{ cout<<"Enter Salary hike: ";
cin>>sal;
newsal=x.getSalary() + sal;
x.updateSalary(newsal);
file.seekg(pos);
file.write((char*) &x,sizeof(x));
flag=1;
break;
}
}
}
if(flag==1)
{ cout<<"\nNew Salary: "<<newsal;
cout<<"\nSalary Updated Successfully\n";
}
else
cout<<"Record not found with employee code "<<n;
file.close();
}
void promotion() //To give new post to an employee
{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");
file.open("EMPLOYEE.DAT",ios::binary|ios::in|ios::out);
if(!file)
{ cout<<"ERROR IN OPENING FILE \n";
return;
}

Employee x;
intn,flag=0;
char str[20];
long pos;
cout<<"\nEnter employee code: ";
cin>>n;

while(!file.eof())
{ pos=file.tellg();
file.read((char*) &x,sizeof(x));
if(x.getEmpCode()==n)
{ cout<<"Enter new post name: ";
gets(str);
x.updatePost(str);
file.seekg(pos);
file.write((char*) &x,sizeof(x));
flag=1;
break;
}
}
if(flag==1)
cout<<"Promotion done successfully \n";
else
cout<<"Record not found with employee code "<<n;
file.close();
}

void delRecord() //delete an employee record


{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");

Employee x;
intn,flag=0;
cout<<"\nEnter employee code: ";
cin>>n;
fstream fin;
file.open("EMPLOYEE.DAT",ios::binary|ios::in); //Input Mode
fin.open("TEMP.DAT",ios::binary|ios::out); //Write Mode

while(file.read((char*) &x, sizeof(x)))


{ if(x.getEmpCode()!=n)
fin.write((char*) &x, sizeof(x));
else
flag=1;
}
file.close();
fin.close();

if(flag==1)
cout<<"\nRecord Deleted Successfully";
else
cout<<"\nRecord not found with Emp Code "<<n;

remove("EMPLOYEE.DAT");
rename("TEMP.DAT","EMPLOYEE.DAT");
}

void main()
{ welcome();
clrscr();
char ch;

do
{ gotoxy(25,1);
cprintf("EMPLOYEE MANAGEMENT SYSTEM");
int n;
cout<<"\nPress 0 for exit \n"; //Menu for different operations
cout<<"1.ADD AN EMPLOYEE \n";
cout<<"2.DISPLAY ALL \n";
cout<<"3.SEARCH SPECIFIC \n";
cout<<"4.INCREASE SALARY \n";
cout<<"5.PROMOTION \n";
cout<<"6.DELETE A RECORD \n";
cout<<"Make a choice: ";
cin>>n;

if(n==0)
exit(0);

else
{ clrscr();
switch(n) //different cases in menu driven program
{
case 1: appendToFile(); break;
case 2: displayAll(); break;
case 3: searchForRecord(); break;
case 4: increaseSalary(); break;
case 5: promotion(); break;
case 6: delRecord(); break;
default: cout<<"Invalid Choice\n";
}
}
cout<<"\n\nDo you want to continue? (Press Y/y to continue): ";
cin>>ch;
clrscr();
} while(ch=='Y'||ch=='y');
}
OUTPUT
SCREENS
WELCOME SCREEN
MAIN MENU
ADDING A NEW
EMPLOYEE
DISPLAYING ALL
RECORDS
SEARCHING A SPECIFIC
RECORD
INCREASING SALARY

UPDATED RECORDS
PROMOTION
UPDATED RECORD

DELETING A RECORD
UPDATED RECORD
WHEN A WRONG
INPUT IS GIVEN
WHEN A WRONG
EMPLOYEE CODE IS
GIVEN FOR OPERATIONS
BIBLIOGRAPHY
1. COMPUTER SCIENCE text book
By: SUMITA ARORA
2. Mr. AJAY GODWAL sir
(P.G.T. Comp. Science)

3. SHIV DAS question bank in C++.

4. K.V.S. Study Material for Computer Science

5. www.cppforschool.com

You might also like