You are on page 1of 40

REPORT OF TRAINING PROJECT VIVA

(CSE-319)
<PAYROLL MANAGEMENT SYSTEM>
SUBMITTED IN THE PARTIAL FULFILLMENT OF THE
REQUIREMENTS FOR THE AWARD OF THE DEGREE OF
BACHELORS OF TECHNOLOGY (B.TECH)
IN
COMPUTER SCIENCE AND ENGINEERING
(SESSION: 2012-2016)
SUBMITTED BY
Meenakshi Saini(2312027)
Aarzoo Gupta(2312032)
Atamjeet Singh(2312042)

Submitted to

Department of Computer Science & Engineering


Ambala College of Engineering & Applied Research,
Devsthali, Ambala (Haryana)
Affiliated to Kurukshetra University, Kurukshetra

Declaration

We , Meenakshi Saini, Aarzoo Gupta, Atamjeet Singh a student of Bachelor of


Technology (Computer Science & Engineering), in the Department of Computer
Science & Engineering Ambala College of Engineering & Applied Research,
Devsthali, Ambala (Haryana) under class Roll No.-2312027,2312032,2312042 for
the session 2012-2016, hereby, declare that the Training Project Report entitled
PAYROLL has been completed by me after completing the 6 weeks training after
4th Sem.

The matter embodied in this training report has been the original work of me/team and
is done with sincere and continuous effort.

Date: 11.10.2014

Students Name
Meenakshi Saini(2312027)
Aarzoo Gupta(2312032)
Atamjeet Singh(2312042)

Acknowledgement
I would like to place on record my deep sense of gratitude to my Supervisor Asst.
Prof. Verender Singh Department of Computer Science & Engineering, Ambala
College Of Engineering & Applied Research, Devsthali, Mithapur(Ambala) for his
stimulating guidance, continuous encouragement and supervision for the submission
of the training report, and presentation. Thank you so much for all of the academic,
professional, and personal advice that you have given me.
I express my sincere gratitude to Dr.Surender Singh Associate Professor. & Head
Department of Computer Science & Engineering, Ambala College Of Engineering &
Applied Research, Devsthali, Mithapur(Ambala), for his generous guidance, help and
useful suggestions.
The completion of this training would not have been possible without the boundless
encouragement and support of my family. My parents have spent their lives
encouraging my intellectual and personal growth. From you all, I have learned to take
pride in my work and to enjoy the simple pleasure of a job well done. Thank you for
everything that you have given me.

Students Name
Meenakshi
Saini(2312027)
Aarzoo Gupta(2312032)
Atamjeet Singh(2312042)

LIST OF FIGURES
FIGURE NO.

DESCRIPTION

PAGE NO.

2.1

Overview of payroll

2.2

Flow diagram of
employee

15

2.3

Flow diagram of
administrator

15

2.4

0 level DFD

15

2.5

E-R Daigram

16

LIST OF TABLES
TABLE NO.
1

DESCRIPTION
Features of java

PAGE NO.
8

2.1 (A)

Login module

10

2.1(B)

Add button module

10

2.2

View module

10

2.3(A)

Add module

11

2.3(B)

Add button module

11

2.4(A)

Edit module

12

2.4(B)

Edit Button module

12

2.5(A)

Delete module

12

2.5(B)

Delete Button module

13

2.6(A)

Reset module

13

2.6(B)

Reset button module

13

2.7

Exit module

14

2.8(A)

Employee report module

14

2.8(B)

Employee Report button

14

3.1

List of files supplies

18

4.1

Defect tracking system

34

4.2

Unit test plan

35

ABSTRACT
Technology is nothing. Whats important is that you have a faith in people, that
theyre basically good and smart, and if you give them tools, theyll do wonderful
things with them. Yes, payroll management system is such a powerful tool that is
used to manage the salary resources of the employees in an organization. As we
know nowadays the organization are getting more globalised and everyday new
people are connecting to it. It becomes difficult to manage their details at lower and
higher levels. Payroll management is a scheme that is highly efficient in dealing with
individual information. Its task was to develop a payroll system that would keep a
record of employee data including their pension plan, union membership status, and
taxes and also to be able to calculate the pay of the employees taking into
consideration employee data. We have been able to achieve these task. The software
we developed calculates the employee net pay from the deductions. The payslip can
be printed out as a receipt. Most of the bugs that we found and those that the clients
and beta users found have been corrected. Any new bugs found will also be corrected
and the software will be updated and released. Because we used object-oriented
principles, modifying the software to fix bugs.

TABLE OF CONTENT

PAGE NO.

List of figures.4
List of Tables.5
Abstract..6
Chapter1 Introduction8
Chapter2 Requirement Analysis &Problem formulation.....9
Chapter3 Design & Development (Proposed Work)17
Chapter4 Results and Analysis.34
Chapter 5 Conclusion.37
Chapter6- Future Scope...38
References.40

Chapter1 Introduction
Payroll system is the heart of any Human Resource System of an organization.
The solution has to take care of the calculation of salary as per rules of the company,
income tax calculation and various deductions to be done from the salary including
statutory deductions like Income tax and provident fund deductions. It has to generate
pay-slip, cheque summary and MIS reports. It is understood that we are tired of
managing thousand of odd papers, pay slips, payroll reports, and salary details and so
on. Imagine that we have a payroll processing system which will generate our pay
slips and payroll reports within seconds. We can help others automated your payroll
system by developing a customized payroll application that suits your specific
requirements.
Main aim of developing Employee Payroll Management is to provide an easy
way not only to automate all functionalities involved managing leaves and Payroll for
the employees of Company, but also to provide full functional reports to management
of Company with the details about usage of leave facility.
We are committed to bring the best way of management in the various forms
of EPM. We understand that EPM in not a product to be sold, it is a tool to manage
the inner operation of Company related to employee leave and Payroll.
The whole software is developed in core java. Java technology is both a programming
language and a platform.The Java programming language is a high-level language that
can be characterized by all of the following buzzwords:
Simple
Object oriented
Distributed
Multithreaded
Dynamic
Table no.1

Portable
High performance
Robust
Secure

Chapter2 REQUIREMENT ANALYSIS

BACKGROUND Payroll Management System


PAYROLL MANAGEMENT SYSYTEM can be used by the employees to maintain
their database and keep themselves up-to -date about the different transactions going
on throughout the day. We found that traditional old schemes are still very much in
use that prone to many mistakes, much of manual labour and is not much interactive.
And so it was decided to go ahead with this project.It is developed using graphics in
JAVA, which make this project more user-friendly and interactive to use.

1.

High Level Design

This section describes the high level design of the EMPLOYEE RECORD SYSTEM.
The system has the following modules:
Login: The user id and password is entered by the user here.
File:The user can quit from here.
View employee details: The details of all the employees are viewed here by the user.
Edit existing records: Any modification in the records is done here by the admin.
Delete records: Deletion of any record from the database is done here by the admin
Employee Reports: The generation of the pay slips is done her by the admin.
Reset : Resetting of the field value is done here by the user.
Exit: The user is returned back to the starting page.
Overview of the system

Apply leave,
key in investment
details,

Employee details,
investment details,
salary details, tax
rules, leave details
Data entry for
employee details,
Income tax rules,
Leave rules,
loan details

Employee
Salary Slips

2.

Detailed Design

This section describes the detailed design of the various modules in the EMPLOYEE
RECORD SYSTEM.

2.1.

(A) Login Module

Function 1 / Method 1: Login

Administrator

Parameters
Return Values
Description

username, password
None
Waits for Users username and password. If the entered users username
and password are correct then the appropriate action is performed else it
displays an error message.

Calling Function
Functions called by
this function

Graphical
None

Function 2 / Method 2: wrong username/password


Parameters
Return Values
Description
Calling Function
Functions called
by this function

username,password
None
In case wrong username/password error message will generate
ERROR: Invalid username or password
None

2.1. (B) Add button Module


Function 1 / Method 1: Add Button
Parameters
Return Values
Description
Calling Function
Functions called
by this function

2.2.

Will store the path of the application and data into the columns of the
database
Btn_add
None

View Module

Function 1 / Method 1: View by employee id


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Id
Will view the details of the employee in a proper format
Graphical
None

Function 2 / Method 2: Wrong employee id


Parameters
Return Values
Description

Id
Incase of wrong employee id entered by the user
10

Calling Function
Functions called
by this function

2.3.

Error: Invalid employee id


None

(A) Add Module

Function 1 / Method 1: Add-details


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Name,Address,Contact_no.,DOJ,BOB,Salary,Dept
Will add the details of the employee in a proper format specified
Graphical
None

Function 2/ Method 2: Wrong-details entered


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Name,Address,Contact_no.,DOJ,BOB,Salary,Dept
When the details entered in the form is not specified in the proper format
ERROR: The fields should be entered as per the specified format
None

2.3. (B) Add button Module


Function 1 / Method 1: Add Button
Parameters
Return Values
Description
Calling Function
Functions called
by this function

2.4.

Will store the data into the columns of the database


Btn_Add
None

(A) Edit Module

Function 1 / Method 1: Modify-details


Parameters
Return Values
Description

Employee code
Will modify the details of the employee

11

Calling Function
Functions called
by this function

Graphical
None

Function 2 / Method 2: Wrong employee code


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Id
Incase of wrong employee id entered by the admin
Error: Invalid employee id
None

2.4. (B) Add button Module


Function 1 / Method 1: Edit Button
Parameters
Return Values
Description
Calling Function
Functions called
by this function

2.5.

Will store the modified data into the columns of the database
Btn_edit
None

(A) Delete Module

Function 1 / Method 1: Delete-record


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Employee code
Will delete the details of the employee
Graphical
None

Function 2/ Method 2: Wrong-code


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Code
Incase of wrong employee code entered by the admin
ERROR: Invalid employee code
none none

2.5. (B) Delete button Module


Function 1 / Method 1: Delete Button
12

Parameters
Return Values
Description
Calling Function
Functions called
by this function

2.6.

Will delete the data from the columns of the database


Btn_delete
None

(A) Reset Module

Function 1 / Method 1: Reset-Password


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Code
Will reset the code of the employee
Graphical
None

Function 2/ Method 2: Wrong-id


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Code
Incase of wrong employee code entered by the user
ERROR: Invalid employee code
none none

2.5. (B) Reset button Module


Function 1 / Method 1: Reset Button
Parameters
Return Values
Description
Calling Function
Functions called
by this function

2.7.

Will reset the attributes values from the columns of the database
Btn_reset
None

Exit Module

Function 1 / Method 1: Logout


Parameters
Return Values

None
None

13

Description

Quit from the screen.

Calling Function
Functions called by
this function

Graphical
None

2.8.

(A) Employee Report Module

Function 1 / Method 1: Delete-record


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Employee code
Will generate the total income of the employee
Graphical
None

Function 2/ Method 2: Wrong-code


Parameters
Return Values
Description
Calling Function
Functions called
by this function

Code
Incase of wrong employee code entered by the admin
ERROR: Invalid employee code
none none

2.8. (B) Employee Report button Module


Function 1 / Method 1: Employee Report Button
Parameters
Return Values
Description
Calling Function
Functions called
by this function

Will generate the data from the columns of the database table settings
Btn_generate
None

14

DFD (Data
Flow
Diagram)

Employee

I/O Choice

Perform I/O
operation

Output

Result

Or dat
DFD at 0th level

ENTITY RELATIONSHIP DIAGRAM(ER DIAGRAM)

15

Chapter3 Design & Development (Proposed Work)


16

Background Payroll Management


Payroll system is the heart of any Human Resource System of an organization.
The solution has to take care of the calculation of salary as per rules of the company,
income tax calculation and various deductions to be done from the salary including
statutory deductions like Income tax and provident fund deductions. It has to generate
pay-slip, cheque summary and MIS reports. It is understood that we are tired of
managing thousand of odd papers, pay slips, payroll reports, and salary details and so
on. Imagine that we have a payroll processing system which will generate our pay
slips and payroll reports within seconds. We can help others automated your payroll
system by developing a customized payroll application that suits your specific
requirements.

Software Specifications:
Programming Language
RDBMS
jdk Version

Core Java
MS Access
7

Steps to use the source code provided and execute the


project (Provide required screen shots at the respective
steps)
In order to execute the project or to use this application the user must know
how
to
run
the
.java
files.
The application begins from the login page by running the Loginframe.java
file by writing the commands in the command prompt.
The username and password is statically declared during coding of the
document.
Different users have different username and password to run the application
and we have got one main user :
1. Administrator
Username: admin
Password: admin

The document contains the required files that are being designed to run the
the application:

17

Sno.

File

Description

LoginFrame.java

This file contains the code for authentication to various user.

MainMenu.java

This file contains the code that contain other buttons of the
project such as add, delete, edit, settings etc.

Settingswindow.java

This file contains the code that helps in update of the various
allowances and deductions.

addwindow.java

This file contains the code that add new employeerecord into
the program.

Deletewindow.java

Editwindow.java

emprptwindow.java

This file contains the code that delete employee record from
the program.
This file contains the code that update the employee record
of the program.
This file contains the code to generate pay slip.

printwindow.java

This file prints the pay slip.

clsSettings.java

10

clsConnection.java

This file contains the formatting function for various


windows in program.
This file is called in the files to provide connectivity with
database.

On running the application following screens will appear which are shown below and
the details associated with them is written along with them:
1. Login Window
The user must enter the valid username and password and click on Login
button.

A message pane will be displayed showing the confirmation of correct login.


The exit will terminate the program.
2. Main Menu Window

18

This window contains all the buttons that can perform the specific functions. At
the lower pane of the window the username and the date and time of the login is
appeared.
2.1 File menu button

2.2 Employee menu button

19

2.2.1

2.2.2

Edit Employee

20

Add Employee

2.2.3

Delete Employee

2.3 Tools menu button

21

2.3.1 Settings

22

2.3.2 Calculator
The exe. File of calculator is called by this button that help in the calculations.

2.3.3 Notepad

23

2.3 Reports

24

2.3.1

Employee Report
In this the report of the employee ids generated by the admin. The preview
button generate the preview of the pay slip that has to be print then by
clicking on print button we can print the payslip.

Note:

25

About the Java Technology


Java technology is both a programming language and a platform.
The Java Programming Language
The Java programming language is a high-level language that can be characterized by
all of the following buzzwords:

Simple
Object oriented
Distributed
Interpreted
Robust
Secure

Architecture neutral
Portable
High performance
Multithreaded
Dynamic

With most programming languages, you either compile or interpret a program so that
you can run it on your computer. The Java programming language is unusual in that a
program is both compiled and interpreted. With the compiler, first you translate a
program into an intermediate language called Java bytecodes the platformindependent codes interpreted by the interpreter on the Java platform. The interpreter
parses and runs each Java bytecode instruction on the computer. Compilation happens
just once; interpretation occurs each time the program is executed.
The following figure illustrates how this works.

You can think of Java bytecodes as the machine code instructions for the Java Virtual
Machine (Java VM). Every Java interpreter, whether it's a development tool or a Web
browser that can run applets, is an implementation of the Java VM. Java bytecodes
help make "write once, run anywhere" possible. You can compile your program into
bytecodes on any platform that has a Java compiler. The bytecodes can then be run on
any implementation of the Java VM. That means that as long as a computer has a Java
VM, the same program written in the Java programming language can run on
Windows 2000, a Solaris workstation.

26

The Java Platform


A platform is the hardware or software environment in which a program runs. We've
already mentioned some of the most popular platforms like Windows 2000, Linux,
Solaris, and MacOS. Most platforms can be described as a combination of the
operating system and hardware. The Java platform differs from most other platforms
in that it's a software-only platform that runs on top of other hardware-based
platforms.
The Java platform has two components:

The Java Virtual Machine (Java VM)

The Java Application Programming Interface (Java API)

The Java API is a large collection of ready-made software components that provide
many useful capabilities, such as graphical user interface (GUI) widgets. The Java
API is grouped into libraries of related classes and interfaces; these libraries are
known as packages. The next section highlights what functionality some of the
packages in the Java API provide.Every full implementation of the Java platform
gives you the following features:

The essentials: Objects, strings, threads, numbers, input and output,


data structures, system properties, date and time, and so on.

Applets: The set of conventions used by applets.

Networking: URLs, TCP (TransMrsion Control Protocol), UDP (User


Datagram Protocol) sockets, and IP (Internet Protocol) addresses.

Internationalization: Help for writing programs that can be localized


for users worldwide. Programs can automatically adapt to specific
locales and be displayed in the appropriate language.

27

Security: Both low level and high level, including electronic


signatures, public and private key management, access control, and
certificates.

Software components: Known as JavaBeansTM, can plug into existing


component architectures.

Object serialization: Allows lightweight persistence and


communication via Remote Method Invocation (RMI).

Java Database Connectivity (JDBCTM): Provides uniform access to a


wide range of relational databases.

Microsoft Access
Microsoft Access, also known as Microsoft Office Access, is a database management
system from Microsoft that combines the relational Microsoft Jet Database
Engine with a graphical user interface and software-development tools. It is a member
of the Microsoft Office suite of applications, included in the Professional and higher
editions or sold separately. On May 12, 2010, the current version of Microsoft Access
2010 was released by Microsoft in Office 2010; Microsoft Office Access 2007 was
the prior version.
MS Access stores data in its own format based on the Access Jet Database Engine. It
can also import or link directly to data stored in other applications and databases.

Uses
In addition to using its own database storage file, Microsoft Access may also be used
as the 'front-end' with other products as the 'back-end' tables, such as Microsoft SQL
Server and non-Microsoft products such as Oracle and Sybase. Multiple backend
sources can be used by a Microsoft Access Jet Database (accdb and mdb formats).
Similarly, some applications will only use the Microsoft Access tables and use another
product as a front-end, such as Visual Basic or ASP.NET. Microsoft Access may be
only part of the solution in more complex applications, where it may be integrated
with other technologies such as Microsoft Excel, Microsoft Outlook or ActiveX Data
Objects.

Features
Users can create tables, queries, forms and reports, and connect them together
with macros. Advanced users can use VBA to write rich solutions with advanced data
manipulation and user control. Access also has report creation features that can work
with any data source that Access can "access".

28

The original concept of Access was for end users to be able to "access" data from any
source. Other features include: the import and export of data to many formats
including Excel, Outlook,ASCII, dBase, Paradox, FoxPro, SQL
Server, Oracle, ODBC, etc. It also has the ability to link to data in its existing location
and use it for viewing, querying, editing, and reporting. This allows the existing data
to change while ensuring that Access uses the latest data. It can
perform heterogeneous joins between data sets stored across different platforms.
Access is often used by people downloading data from enterprise level databases for
manipulation, analysis, and reporting locally.
Primary Key
One or more fields (columns) whose value or values uniquely identify each record in
a table. A primary key does not allow Null values and must always have a unique
value. A primary key is used to relate a table to foreign keys in other tables.

In order to execute the project the user must create the DSN, to establish database
connectivity
1. Control Panel

29

Open the control panel (a window will appear as shown above in Windows7) and
select
the option Administrative Tools.

2. Administrative Tools

30

On selecting the option Administrative Tools. A window will appear on the screen as
shown above in Windows7. A list will appear and out of that list select the option
Data Sources (ODBC).

3. Select The File

31

you

Click on the add button and pop window will open to select a driver for which
want
to set up a data source.

Again a pop window will appear and select Microsoft Access


Driver(*.mdb,*.accdb)
and then click on Finish button

32

On clicking the Finish button a ODBC Text Setup pop will appear, enter the
Data Source Name
and then click OK button.
DSN (Data Source Name) is then created and the user is ready to execute the
program.
After following this simple steps the user is now able to execute the program easily
and can use the application software according to his/her need.

33

Chapter4 Results and Analysis

34

35

36

Chapter 5 Conclusion
The main aim of this project was to put whatever was learnt in Java, into practice.
And the result obtained was a simple payroll calculator, in addition to a new language
learnt. Also it provided a better understanding of OOP.This project helped in gaining
confidence in writing the codes in Java. The main aim of this project was to put what
we learnt in our Software engineering class into
practice. The payroll system designated to our team allowed us to fully exercise the
techniques of XP. The final deliverable was a simple payroll calculator and we were
able to learn a new programming language. In addition, we were able to apply the
knowledge of OOP learnt in our Java classes to another language thereby giving us a
better understanding of OOP.

37

Chapter6- Future Scope


6.1 SCOPE OF PAYROLL
This Application works in Multiple PCs installed on multiple Computers but sharing
same database by which users of different department can use it sitting at different
locations simultaneously. But in future we can make the Application where the
database will be hosted in order to manage the all departments which will be located
in different places and by keeping domain of Application as Online.To improve the
efficiency.Quickly find out information of an employee details.To provide easy and
faster access information.To provide user friendly environment.

6.2SCOPE OF JAVA
JAVA is an object oriented programming language and it was intended to serve as a
new way to manage software complexity. Java refers to a number of computer
software products and specifications from Sun Microsystems that together provide a
system for developing application software and deploying it in a cross-platform
environment. Java is used in a variety of computing platforms from embedded
devices and mobile phones on the low end, to enterprise servers and supercomputers
on the high end. Java is nearly everywhere in mobile phones, Web servers and
enterprise applications, and while less common on desktop computers; Java applets
are often used to provide improved functionality while browsing the World Wide
Web.
Some advantages of JAVA:

It is an open source, so users do not have to struggle with heavy license fees
each year

Platform independent

Java API's can easily be accessed by developers

Java perform supports garbage collection, so memory management is


automatic
38

Java always allocates objects on the stack

Java embraced the concept of exception specifications

Multi-platform support language and support for web-services

Using JAVA we can develop dynamic web applications

It allows you to create modular programs and reusable codes


Another advantage of JAVA is that, ones the program is written in java we can run it
anywhere means that application developed through Java is platform independent.
JAVA based enterprise applications perform well because stable JAVA standards help
developers to create multilevel applications with a component based approach.

References

39

Programming with java

By E.Balagurusamy

Complete Reference of Java

By Herburt Schildt

Search Engine

www.google.com

Website

www.java2s.com

40