Bank Management System
Bank Management System
EMPSAL BANK
SESSION 2014-2018
BACHELOR OF SCIENCE
IN
COMPUTER SCIENCE
By
Usama Ahmad
Usman Ejaz
Muhammad Uzair
Projected submitted to
Faculty of Information Technology,
University of Central Punjab,
Lahore, Pakistan.
in partial fulfillment of the requirements for the degree of
BACHELOR OF SCIENCE
IN
COMPUTER SCIENCE
___________________ _______________
Project Advisor Dean
Acknowledgement
The Satisfaction That Accompanies the Successful Completion of Any Task Would Be
Incomplete Without the Mention of People WHOSE Continual Cooperation Made It
Possible, Whose Constant Guidance and Encouragement Crown All Efforts with
Success.
We Are Gratefully to Allah Almighty who give us strength to do this. and then We
Are Grateful to Our Project Supervisor “Lecturer Muzammal Sadiq” For the
Guidance, Inspiration and Constructive Suggestions That Helpful Us in the Preparation
of This Project. We Also Thank Our University Fellows and Other teachers and People
Who Have Helped Us in Successful Completion of The Project.
i
Dedication
We Would Like to Dedicate This Work to Our Parents who work hard for us, who gave
all their happiness to us and our Teachers, Family and Friends for Their Love and
Support Throughout Our Life who taught us how to learn. Especially Thanks to
University of Central Punjab For Giving Us Such A Wonderful, Energetic Moments of
Our Lives.
ii
Abstract
EMPSAL Bank is a software which is use for small or big level organization.
EMPSAL Bank is used to calculate employee’s pay also performs several operations
like add employee, mark attendance, add salary, add allowances, add deductions,
generate pays and generate reports of data. After adding employee in database, we also
can edit or delete it. It works faster than human and old manual techniques. In
EMPSAL Bank, records are more safe than manual records. In this software we can
view records of employees, attendances and salaries and we can also generate the report
of these records. Its secured by Username and password only authentic user can use it.
It is made in java so it is platform independent it can run on any platform like Windows,
Unix and MacOS etc.
iii
Table of Contents
Acknowledgement .......................................................................................................... i
Dedication ......................................................................................................................ii
Abstract ........................................................................................................................ iii
1. Introduction ............................................................................................................ 1
1.1 Product ............................................................................................................ 1
1.2 Scope ............................................................................................................... 1
1.3 Business Goals ................................................................................................ 1
1.4 Document Conventions ................................................................................... 1
2. Overall Description................................................................................................. 2
2.1 Product Features .............................................................................................. 2
2.2 User Classes and Characteristics ..................................................................... 2
2.3 Operating Environment ................................................................................... 2
2.4 Design and Implementation Constraints ......................................................... 3
2.5 Assumptions and Dependencies ...................................................................... 3
3. Functional Requirements ........................................................................................ 4
4. Non-Functional Requirements ................................................................................ 4
4.1 Performance Requirements ............................................................................. 4
4.2 Safety Requirements ....................................................................................... 4
4.3 Security Requirements .................................................................................... 4
4.4 Other Requirements......................................................................................... 4
5. Software Development Model (SDM) ................................................................... 5
6. System Development Diagrams ............................................................................. 6
6.1 Use Case Diagram ........................................................................................... 6
6.2 DFD Level-0 ................................................................................................... 7
6.3 Flow Chart ....................................................................................................... 8
6.4 Activity Diagrams ........................................................................................... 9
6.4.1 Login ........................................................................................................ 9
6.4.2 Add Employee ....................................................................................... 10
6.4.3 Update Employee ................................................................................... 11
6.4.4 Quit Employee ....................................................................................... 12
6.4.5 Mark Attendance .................................................................................... 13
6.4.6 Add Allowance ...................................................................................... 14
6.4.7 Add Deduction ....................................................................................... 15
6.4.8 Update Salary ......................................................................................... 16
6.4.9 Generate Pay .......................................................................................... 17
6.4.10 Get Pay Details ...................................................................................... 18
6.5 DFD Level-1 ................................................................................................. 19
6.6 DFD Level-2 ................................................................................................. 20
6.6.1 Employee Module .................................................................................. 20
6.6.2 Allowance & Deduction Module ........................................................... 21
6.7 Entity Relationship Diagram ......................................................................... 22
6.8 Class Diagram ............................................................................................... 23
7. Tools and Technologies ........................................................................................ 24
7.1 Java SE .......................................................................................................... 24
7.2 Java FX .......................................................................................................... 24
7.3 MySQL .......................................................................................................... 24
7.4 InteliJ IDE ..................................................................................................... 24
7.5 Xamp ............................................................................................................. 24
7.6 SQLyog ......................................................................................................... 24
8. Screens .................................................................................................................. 25
8.1 Login Screen ................................................................................................. 25
8.2 Reset Password .............................................................................................. 26
8.3 Reset Password 2nd Stage ............................................................................. 27
8.4 Dashboard...................................................................................................... 28
8.5 Add Employee ............................................................................................... 29
8.6 Manage Employee ......................................................................................... 30
8.7 List Employee ............................................................................................... 31
8.8 Attendance ..................................................................................................... 32
8.9 Allowance...................................................................................................... 33
8.10 Deduction ...................................................................................................... 34
8.11 Payroll ........................................................................................................... 35
8.12 Reports .......................................................................................................... 36
8.13 Reports 2nd stage .......................................................................................... 37
9. References ............................................................................................................ 38
1. Introduction
1.1 Product
EMPSAL BANK is a payroll system for all types of employees, with additional
feature of calculation of employee’s expenses in organization. In this system all
employees are managed for calculation of salary and expenses (within organization).
1.2 Scope
As EMPSAL BANK is for calculating salary of employees so it can be use
anywhere, where the salary and expenses of employees, have to be managed within an
organization. And as it will be developed in java so it will also platform independent,
it means EMPSAL BANK can be run and operate on any computer system and
operating system.
1.3 Business Goals
Main business goal which we can achieve by EMPSAL BANK is to calculate
and manage salaries of all employees of an organization and keep record of salaries of
all employees. As EMPSAL BANK has an extra feature of calculating expenses of
employees in organization so, organization also can keep record of expenses of
employees and manage its accounts properly.
1.4 Document Conventions
• Product name and product development technologies are bold.
• Product users are bold and italicized.
• Processes are italicized.
1
2. Overall Description
2.1 Product Features
Features of EMPSAL BANK are as follows:
• It is platform independent.
• Salaries of all type of employees can be calculated by this.
• It keeps record of attendance of all employees.
• All type of increments and deductions in salaries of employees can be
handle by this.
• It can manage the expenses of employees in organization.
• Security is kept in view at each level of its design and development.
2.2 User Classes and Characteristics
• HR Manager can view, add, delete and update employee records as per changes
in organization’s employees.
• Cashier can check calculated salary of any employee of organization to pay
salary.
• Employee can mark his attendance in system by the help of Data Entry
Operator.
2.3 Operating Environment
As EMPSAL BANK is platform independent so it can be run and operate on
any computer system and operating system(environment) but it is desktop application
so it can’t operate online (through internet).
2
2.4 Design and Implementation Constraints
EMPSAL BANK is developed as per current structure of pays of an
organization, but in future if this structure will change then organization have to update
their application according to that structure. As JAVA SE is for desktop applications
EMPSAL BANK is developed in JAVA so it can’t run and operate online (through
internet) till yet. But if we have to convert it online then we have to create java services
of online operating current system.
2.5 Assumptions and Dependencies
EMPSAL BANK is developed as per current structure of pays of govt. and
private sectors, but during development if this structure will change then we have to
update or redevelop our application according to that structure.
3
3. Functional Requirements
• All users will have their login to access the system, user can be HR Manager,
Cashier, Data Entry Operator, Guest Account User.
• HR Manager can Add Employee, Update Employee, Quit Employee, Update
Employee Salary, Add Allowances and Add Deductions.
• Data Entry Operator can Mark Attendance and Update Attendance of
employees.
• Cashier can Generate Pay and Get Pay Details of employees.
• Guest Account User can Mark Attendance, Update Attendance, Generate Pay
and Get Pay Details of employees.
4. Non-Functional Requirements
4.1 Performance Requirements
System should perform all its functionality smoothly and correctly even if it has
huge amount of employee records, salary records, attendance records etc.
4.2 Safety Requirements
Minimum data of previous 10 years should be retained in database safely so that
at the last of these 10 years data can be store in CDs or Hard Drives.
4.3 Security Requirements
System should be accessed by authentic usernames and passwords so that data
and operations of system can store and operate by authentic users of system.
4.4 Other Requirements
System should be run on any platform (operating system) so that all the tasks of
system can be perform easily.
4
5. Software Development Model (SDM)
We use Incremental Development Model for development of our system,
because we will design, develop, test and implement our system iteratively by
understanding requirements.
5
6. System Development Diagrams
6.1 Use Case Diagram
6
6.2 DFD Level-0
7
6.3 Flow Chart
8
6.4 Activity Diagrams
6.4.1 Login
9
6.4.2 Add Employee
10
6.4.3 Update Employee
11
6.4.4 Quit Employee
12
6.4.5 Mark Attendance
13
6.4.6 Add Allowance
14
6.4.7 Add Deduction
15
6.4.8 Update Salary
16
6.4.9 Generate Pay
17
6.4.10 Get Pay Details
18
6.5 DFD Level-1
19
6.6 DFD Level-2
6.6.1 Employee Module
20
6.6.2 Allowance & Deduction Module
21
6.7 Entity Relationship Diagram
22
6.8 Class Diagram
23
7. Tools and Technologies
7.1 Java SE
We use Java Standard Edition for development of backend of EMPSAL
Bank. Java is platform independent language it generates byte code after compiling
java code, this byte code can be run at any platform (operating system) by using JVM
of that operating system.
7.2 Java FX
We use Java FX for development of frontend (screens) of EMPSAL Bank. We
design screens with Java FX by using Sean Builder 9.0. Sean Builder has graphical
user interface, we can generate screens by drag and drop components in it.
7.3 MySQL
We use MySQL database for storing all data of employees, departments, salary,
allowance and deduction.
7.4 InteliJ IDE
We use InteliJ IDE for coding, editing, testing and debugging our project code.
InteliJ IDE provides many facilities and shortcuts while coding.
7.5 Xamp
We use Xamp for server hosting and managing ports of system.
7.6 SQLyog
We use SQLyog for creating, altering and testing queries for database.
24
8. Screens
8.1 Login Screen
This is the first screen of software. In this screen we can where the authenticate
organization user like (HR department, cashier, data entry operator) can login and use
the software according to their designation, like HR department has high designation
than cashier and data entry operator.
Illustration I
25
8.2 Reset Password
In this screen when users forgot their password, then their password can be
recovered by entering the backup email address which is save during that time when he
is registering as a user which is save by the system administrator or software developer.
When he enters correct backup email address the next window opens. In case of
forgetting the backup email address the user contact with system administrator or
software developer for backup the email address.
Illustration II
26
8.3 Reset Password 2nd Stage
After validating backup email address from the database. The following
window occurs for new password and confirm new password. The new password saves
in the database and now the user can use this software.
Illustration III
27
8.4 Dashboard
This is first screen for the users of this software. In this screen you can All tabs
are left side in navbar. A graph shows the result of company’s result. This screen is
fully use by some high priority users like HR department. And when a cashier or data
entry employee login some are buttons will be disable to work because they don’t have
the authority to add or delete employee or mark attendance. He can only generate
payroll.
Illustration IV
28
8.5 Add Employee
After clicking the employee tab this window open, in this window we can add
an employee. In this window we have to enter details of an employee like it’s first name,
last name, CNIC, contact number, postal code, gender designation department and its
hiring date and its basic salary.
Illustration V
29
8.6 Manage Employee
In this window there are 2 things on the top right. One is employee id search
box. In which we enter employee id his save record fills in the form. 2 nd is combo box
which have different departments like finance, sales. In this screen we can update
employee information or if he is resigned we can quit him.
Illustration VI
30
8.7 List Employee
In this window we can see all the employees list which are working in an
organization. but if we want to see only one department employees we also can see this
by using the combo box for selecting department.
Illustration VII
31
8.8 Attendance
This module is used by data entry operator. In this module we have employee
id name, department and its status. if he or she is available then present and if not appear
then absent. If he is on leave like health leave marriage leave or some other than his
status is considered leave. We have combo box for selecting different departments. We
have start attendance button for staring attendance and submit button for submitting it.
Illustration VIII
32
8.9 Allowance
In this section we select department from combo box or search employee id in
search bar and then we add detail for the employee for what type of allowance he or
she is getting like medical allowance performance bonus or etc. After entering all the
allowances, we click the calculate button for adding it in the basic salary and. Then we
click load button for save it in the database.
Illustration IX
33
8.10 Deduction
In this section we select department from combo box or search employee id in
search bar and then we add detail for the employee for what type of deduction he or she
is getting like task not achieving. We can enter deduction by percentage or by writing
the total amount of it. After entering all the deductions, we click the calculate button
for subtracting it in the basic salary and. Then we click load button for save it in the
database.
Illustration X
34
8.11 Payroll
This module is used by cashier. In this module we have employee id his name,
basic salary and his allowances and his deductions. Salary is the collection of debit
allowances and credit deductions. We have a generate pay button for generating the pay
of an employee.
Illustration XI
35
8.12 Reports
In this window we have 5 different buttons for 5 different type of reports like
employee button show the total no of employee, and salary button show the total
number of employee and attendance button show the attendance of employee.
Illustration XII
36
8.13 Reports 2nd stage
After click on any button a report window opens which have some options like
select your department by default it shows the current month data but can your custom
range button to select your desire from and to. then click the save report button for
saving it.
Illustration XIII
37
9. References
1. John O'Conner. (March 2006). Using Java DB in Desktop Applications.
Retrieved from https://www.oracle.com/technetwork/articles/javase/javadb-
141163.html
2. Oracle. (September 2013). Getting Started with JavaFX. Release 2.2.40.
Retrieved from https://www.oracle.com/technetwork/articles/javase/javadb-
141163.html
3. Roger S. Pressman. (January 2009). Software Engineering: A Practitioner's
Approach.
4. Herbert Schildt. (April 2014). Java: The Complete Reference, Ninth Edition.
5. Eric Freeman, Elisabeth Robson. (April 2014). Head First JavaScript
Programming: A Brain-Friendly Guide.
6. Cay S. Horstmann. (December 2012). Core Java Volume I--Fundamentals (9th
Edition) (Core Series).
38