0% found this document useful (0 votes)
142 views

F P J P: Inal Roject in Ava Rogramming Company Abc Payroll System

The document describes a payroll system project for Company ABC that requires a program to calculate employee payroll on a weekly basis based on time records. The program must validate user input, calculate hours worked/late/absent based on time-in and time-out entries, retrieve employee pay rates, compute gross and net pay including bonuses and deductions, and generate pay slips in HTML format. Sample outputs are provided showing valid and invalid input handling as well as pay calculations.

Uploaded by

Denis Ulita
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
142 views

F P J P: Inal Roject in Ava Rogramming Company Abc Payroll System

The document describes a payroll system project for Company ABC that requires a program to calculate employee payroll on a weekly basis based on time records. The program must validate user input, calculate hours worked/late/absent based on time-in and time-out entries, retrieve employee pay rates, compute gross and net pay including bonuses and deductions, and generate pay slips in HTML format. Sample outputs are provided showing valid and invalid input handling as well as pay calculations.

Uploaded by

Denis Ulita
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Final Project in Java Programming

COMPANY ABC PAYROLL SYSTEM


Company ABC decided to implement a console based Payroll System. You, being the programmer of the company are tasked to create a simple program prototype that will simulate the actual payroll process of the company. The payroll should be able to compute for salary of employee in a weekly basis. There are two files needed for the payroll process the employee.txt and Salary Grade.txt. Employee.txt is a roster of employees having their ID number, Name, Position and Salary Grade. The SalaryGrade.txt contains the Rate per hour and daily bonus of each SG. The program flow must strictly follow the given user requirement of the company and must yield a correct salary computation and generate a payslip in an html format. Herewith is the sample program flow: This is the sample output for validating user information Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121304 Enter Employee CODE: FJMR ******************************* Welcome to ABC Payroll System You are going to create a payroll for Francis Joseph M. Reyes Division: Administration Position: President Enter Week Number: 1 Enter Moth: January Enter Year: 2013 Specification: 1. The current system date and time should be displayed. 2. Employee code is the acronym of the employees name. 3. In the welcome prompt the following should be displayed: employee name, division, and position. Division can be found in the first three characters in the employees ID number. ADM- Administration, ACC-Accounting, MFC- Manufacturing 4. The following data should be entered Week Number, Month, and Year. Week valid data input are number 1-4. Month valid data inputs are the calendar months before the current month and the current month. Year valid input is form 2004 to current year only. Else, if the user inputted the invalid data it should prompt Invalid and will return to data input again. Example: Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121304 Enter Employee CODE: FJMR ******************************* Welcome to ABC Payroll System You are going to create a payroll for Francis Joseph M. Reyes Division: Administration Position: President Enter Week Number: 5 Invalid Week Number! Enter Week Number: 4 Enter Month: Jan Invalid Month! Enter Month: February Invalid Month! Enter Month: January Enter Year: 2014 Invalid Year! Enter Year: 2013 Else the following screen output will be displayed if the user entered invalid employee id number and/or employee code. Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121305 Enter Employee CODE: FJM Invalid Employee Number and/or Employee Code! Enter Employee Number: ADM-121305 1 Enter Employee CODE: FJM

Final Project in Java Programming


This is the sample output for inputting employee daily time record.

Scenario 1: Perfect Attendance

Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121304 Enter Employee CODE: FJMR ******************************* Welcome to ABC Payroll System You are going to create a payroll for Francis Joseph M. Reyes Division: Administration Position: President Enter Week Number: 1 Enter Moth: January Enter Year: 2013 Day 1: Enter AM Time-in: 7:45 Enter AM Time-out: 12:15 Enter PM Time-in: 12:40 Enter PM Time-out: 5:05 Day 2: Enter AM Time-in: 8:00 Enter AM Time-out: 12:00 Enter PM Time-in: 1:00 Enter PM Time-out: 5:30 Day 3: Enter AM Time-in: 6:55 Enter AM Time-out: 12:30 Enter PM Time-in: 12:55 Enter PM Time-out: 5:01 Day 4: Enter AM Time-in: 7:19 Enter AM Time-out: 12:05 Enter PM Time-in: 1:00 Enter PM Time-out: 5:20 Day 5: Enter AM Time-in: 8:00 Enter AM Time-out: 12:04 Enter PM Time-in: 12:19 Enter PM Time-out: 5:20 *************************** Total Number of Hours Worked: 40 Total Number of Hours Late: 0 Total Number of Hours Under-time: 0 Total Number of Days Absent:0 Specification: 1. AM time-in should be on or before 8:00. Time-in before 8:00 ex.(7:19, 6:45) will be counted as 8:00 and time-in beyond 8:00 is considered late. 2. AM time-out should be on or after 12:00. Time-out before after 12:00 ex.(12:10, 12:45) will be counted as 12:00 and time-out before 12:00 is considered under-time. 3. PM time-in should be on or before 1:00. Time-in before 1:00 ex.(12:30, 12:45) will be counted as 1:00 and time-in beyond 1:00 is considered late. 4. PM time-out should be on or after 5:00. Time-out before after 5:00 ex.(5:10.,5:23) will be counted as 5:00 and time-out before 5:00 is considered under-time. 5. If the employee is absent, key in 0:00. 6. Get the total number of Hours Worked, Late, under-time and absent. 7. Trapping should be done in each and every input. Examples are invalid time format and value ex. (28:99, 00:11). 8. To check if you computed the correct number of hours worked, late, under-time and absences it should always total to 40.

Final Project in Java Programming


Scenario Number 2: With Tardiness and Absences

Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121304 Enter Employee CODE: FJMR ******************************* Welcome to ABC Payroll System You are going to create a payroll for Francis Joseph M. Reyes Division: Administration Position: President Enter Week Number: 1 Enter Moth: January Enter Year: 2013 Day 1: Enter AM Time-in: 8:30 Enter AM Time-out: 11:45 Enter PM Time-in: 12:40 Enter PM Time-out: 5:05 Day 2: Enter AM Time-in: 8:00 Enter AM Time-out: 12:00 Enter PM Time-in: 1:15 Enter PM Time-out: 4:50 Day 3: Enter AM Time-in: 0:00 Enter AM Time-out: 0:00 Enter PM Time-in: 0:00 Enter PM Time-out: 0:00 Day 4: Enter AM Time-in: 7:55 Enter AM Time-out: 12:00 Enter PM Time-in: 1:20 Enter PM Time-out: 5:20 Day 5: Enter AM Time-in: 8:05 Enter AM Time-out: 12:04 Enter PM Time-in: 12:45 Enter PM Time-out: 5:30 *************************** Total Number of Hours Worked: 21.91 Total Number of Hours Late: 1.67 Total Number of Hours Under-time: 0.42 Total Number of Days Absent: 1

In this example the employee accumulated certain number of absences, tardiness, and under-time. Total Numbers of Hours Late is total coming from every late time-ins while Total Number of Hours Under-Time is total coming from every early out. There will be no half day absent. It is in the company policy that if you are absent for 4 hours you will be marked absent for the day. After the inputting of daily time record, the system will now then compute for the gross and the net pay of the employee. This will be shown in the next example below.

Final Project in Java Programming


This is the computational part of the employees salary Scenario 1: Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121304 Enter Employee CODE: FJMR ******************************* Welcome to ABC Payroll System You are going to create a payroll for Francis Joseph M. Reyes Division: Administration Position: President Enter Week Number: 1 Enter Moth: January Enter Year: 2013 Day 1: Enter AM Time-in: 8:30 Enter AM Time-out: 11:45 Enter PM Time-in: 12:40 Enter PM Time-out: 5:05 Day 2: Enter AM Time-in: 8:00 Enter AM Time-out: 12:00 Enter PM Time-in: 1:15 Enter PM Time-out: 4:50 Day 3: Enter AM Time-in: 0:00 Enter AM Time-out: 0:00 Enter PM Time-in: 0:00 Enter PM Time-out: 0:00 Day 4: Enter AM Time-in: 7:55 Enter AM Time-out: 12:00 Enter PM Time-in: 1:20 Enter PM Time-out: 5:20 Day 5: Enter AM Time-in: 8:05 Enter AM Time-out: 12:04 Enter PM Time-in: 12:45 Enter PM Time-out: 5:30 *************************** Total Number of Hours Worked: 29.91 Total Number of Hours Late: 1.67 Total Number of Hours Under-time: 0.42 Total Number of Days Absent: 1 *************************** Gross Pay: Rate per Hour : 260 Hours Worked : 21.91 Total Gross Pay : 7776.6 Deductions: Tax (1.25%) : 97.2075 HDMF : 50.00 PHILHEALTH : 50.00 SSS (1%) : 104 Total Deductions: 301.2075 Bonus: None Net pay: 7475.3925 **************************** Generate pay slip(Yes/No): Yes Payslip Successfully Generated! File Name: ADM-121304_Jan_WK1_13.html **************************** Date: January 19, 2013 07:00 AM Enter Employee Number: 4 Enter Employee CODE:

Final Project in Java Programming


Scenario 2: Date: January 19, 2013 07:00 AM Enter Employee Number: ADM-121304 Enter Employee CODE: FJMR ******************************* Welcome to ABC Payroll System You are going to create a payroll for Francis Joseph M. Reyes Division: Administration Position: President Enter Week Number: 1 Enter Moth: January Enter Year: 2013 Day 1: Enter AM Time-in: 7:45 Enter AM Time-out: 12:15 Enter PM Time-in: 12:40 Enter PM Time-out: 5:05 Day 2: Enter AM Time-in: 8:00 Enter AM Time-out: 12:00 Enter PM Time-in: 1:00 Enter PM Time-out: 5:30 Day 3: Enter AM Time-in: 6:55 Enter AM Time-out: 12:30 Enter PM Time-in: 12:55 Enter PM Time-out: 5:01 Day 4: Enter AM Time-in: 7:19 Enter AM Time-out: 12:05 Enter PM Time-in: 1:00 Enter PM Time-out: 5:20 Day 5: Enter AM Time-in: 8:00 Enter AM Time-out: 12:04 Enter PM Time-in: 12:19 Enter PM Time-out: 5:20 *************************** Total Number of Hours Worked: 40 Total Number of Hours Late: 0 Total Number of Hours Under-time: 0 Total Number of Days Absent:0 *************************** Gross Pay: Rate per Hour : 260 Hours Worked : 40 Total Gross Pay : 10400 Deductions: Tax (1.25%) : 130 HDMF : 50.00 PHILHEALTH : 50.00 SSS (1%) : 104 Total Deductions: 334 Bonus: 550 Net pay: 10616.00 **************************** Generate pay slip(Yes/No): Yes Payslip Successfully Generated! File Name: ADM-121304_Jan_WK1_13.html **************************** Date: January 19, 2013 07:00 AM Enter Employee Number: Enter Employee CODE: 5

Final Project in Java Programming


Specification: 1. Follow the following formula to get the computations above: Rate Per Hour depends on the salary grade of the employee Total Gross Pay= Rate Per Hour x Total Number of Hours Worked Tax is 5% of the Gross Pay per month. 5% will be distributed in four weeks Tax= 0.0125 X Total Gross Pay HDMF contribution is standard at 200 per month to be divided into four weeks. PhilHealth contribution is standard at 200 per month to be divided into four weeks. SSS contribution rate depends on the salary grade of the employee. For employees having SG>=23 SSS is 4% per month, for SG>=19 but less than 23 SSS is 3.65% per month and for SG less than 19 SSS is 3.0%. SSS contribution will also be distributed into four weeks time. Example Francis Joseph Reyes having a salary grade 25 will pay 4% SSS contribution that is 1% per week. SSS will be computed to the perfect attendance of an employee which is 40 hours a week. SSS= SSS rate X (Rate per hour * 40) Total Deduction= Tax + HDMF + PhilHealth + SSS Bonus is an incentive given to employees per day given that he is not late and/or under-time and not absent. Bonus depends on the salary grade of the employee. Bonus= Bonus per Day X Days of Perfect Attendance Net Pay= (Gross Pay Total Deduction) + Bonus 2. If the employee is absent for the whole week, he is still obliged to be deducted with monthly contributions like HDMF, PhilHealth and SSS. 3. After the computation has been made it should automatically generate a payslip in HTML format because this will be uploaded in the companys web server. The filename should follow the syntax: <ID Number>_<First Three Letters of the Month>_<WK#>_<Last two digit of the year>.html Example: ADM-121304_Jan_WK1_13.html Output for the Payslip

This is the printed screen of the sample HTML output. The title of the document should indicate the ID number of the employee. In the body the Name, Division, Position, Week Number, Month, and Year should be displayed. Also the breakdown of salary should be shown like what you have computed in your program. The formatting is not limited to the example above. You may enhance the style of the webpage but not omit any single information specified above. Herewith is the sample HTML code for the example

Final Project in Java Programming

<html> <head> <title>Pay Slip for ADM-12304</title> </head> <body> <h1>Payroll for Francis Joseph M. Reyes</h1> <hr><h3> Division: Administration</br> Position: President</br> Week Number: 1</br> Moth: January</br> Year: 2013</br> </h3><hr> <h2><pre> Gross Pay: Rate per Hour : 260 Hours Worked : 40 Total Gross Pay : 10400 Deductions: Tax (1.25%) : 130 HDMF : 50.00 PHILHEALTH : 50.00 SSS (1%) : 104 Total Deductions: 334 Bonus: 550 Net pay: 10616.00 </h2></pre> </body> </html>

Should there be any questions and clarifications regarding this Project dont hesitate to contact your Java Instructor.

Rubrics for Grading


Overall Rating: Area Program (Payroll System Prototype) Pay Slip Generated Defence Total Criteria for Program Evaluation
Criteria Correctness of the Output Algorithm/Techniques Flexibility Compliance to User Requirement Code Formatting TOTAL

Points 60 points 20 points 30 points 110 points


Points 20 10 10 10 10 60 Points

**Defence will be schedule on or before the date of the Final Examination. Failure to submit the final output in the date of the defence means ZERO raw score in the final examination. STRICTLY NO GROUP SHOULD HAVE THE SAME OUTPUTS. Thank you! God bless! Created by: -FRANCIS JOSEPH M. REYES-

You might also like