Академический Документы
Профессиональный Документы
Культура Документы
Design Documentation
PAYROLL SYSTEM
Mayuran Chelvachandran(CB003514)
Abstract
We were asked to develop a payroll system which would calculate the payments for student
employees. This is the design document for proposed Student Employee payroll system.
This documentation explains how the design meets the requirements. Project Description,
Problem Analysis, Project Requirements, Solution and Solution Design are explained
within the documentation.
Software Development Project – Payroll System
Acknowledgement
Throughout the course of this assignment there were numerous people who helped us in
their own ways towards the successful completion of this project. We wish to recognize
their contributions herewith.
We would like to thank Mrs.Nadeera Ahangama for all her time, guidance and invaluable
advice.
We would also like to thank our colleagues and friends for all the moral support, motivation
and all the relevant information given.
We would also like to thank Mr.Eranjan Padumadasa for setting us the path for analyzing
and developing a system.
Software Development Project – Payroll System
Table of contents
Software Development Project – Payroll System
Introduction
Introduction to client
Staffordshire University has a long and proud history of providing high quality, progressive
and inclusive higher education for people from across Staffordshire, the region, the UK and
the rest of the world. Established in 1992, Staffordshire University has evolved into one of
the country's most self-motivated, progressive and forward-thinking learning institutions.
Always quick to adapt as student requirements change, we have become renowned for our
groundbreaking new courses and first-class learning opportunities.
As a encouragement student the university is providing its students with part time
employments within the university.
Software Development Project – Payroll System
This task was assigned as a part of Software Development Project module and we were
given the scenario of developing a payroll system for Staffordshire University’s student
employees. University has 7 departments within it and it should be able to expand in the
next few years. Job titles differ from department to department so the system must be able
to add new job titles as well as add new departments to its system
Our system should be developed with a user friendly interface and it should have the
feature of allowing the students to mark their preferred timeslot and choose, it should also
limit the working hours as mentioned by the university.
Lecturers are given the freedom of choosing the student employee they want in First come
First serve basis. Each department has different job titles and therefore each handled by
their respective head of department.
The whole system is computerized so that the work done will be made faster and more
efficient. The system has the ability to limit students working hours so that they stay within
the defined time limit by the University.
Students can exchange work with co-worker if they are unable to attend for the job so there
should be a mechanism to record the work exchanged between student employees and it
should correctly record the payments and their working hour
Students are allowed 15 days of annual leaves so there should be a way of limiting the
leaves and there should be a way of calculating the annual leaves.
Software Development Project – Payroll System
• Feasibility Study
- - 100
1. Schedule
2. Operational - - 100
3. Economic - - 100
4. Technical
- - 100
• Understanding the
60 20 20
specifications for
required system
System Analysis
• Identifying system 33.33 33.33 33.33
requirements
System Design
• Dataflow Diagrams
1. Context 20 - 80
2. Level 0 20 - 80
- - 100
3. Level 1
(Screen Design)
Testing
• Test plan - - 100
• Assumptions - 100 -
• Validations - 100 -
Documentation
• Introduction - 100 -
chart
• Finalized the 20 50 30
documentation
Software Development Project – Payroll System
Context Diagram
Cancelation Confirmation
Feed Back
FeedBack
Cansel Reservation
Cancelation Details
Confirmation Reservation/Notification
Reservation confirmation/Co-worker assignation
Reserve S.E/Course Details
Lecture Reservation Msg
List Of Employees
Approved Shift Details
Student Details/CV
Registration Details
Request Leave
Leave Approval
Payment Details/Rules
OT Request OT S .E Details
OT Details
3.0
S.E Rating Time Slot S chedule
Overtime Management
O.T details S.E O.T Details
Approved O .T Details
Modification
Student Employee S.E Rating
Details S.E Rating
profiles
4.0
Student Employee
Feedback
Approval Handling
User Profiles
Lecture Details
S.E
Feedback
5.0
Lecture Handlng
Account Details
Account Details
Pay rates of
Registration Details Employee
O.T pay types
Payroll Data
Total pay
Pay rate
O.T details
6.0 O.T Details
Total Hrs
Payroll Management
Handling
Worked hrs
Payments Data Timesheet
Worked Hrs
List Of S .E S.E Status
Confirmation /Notification Reservation Check S .E
Cancelation Details Student Employee
Cancel Reservation 7.0 Reservation
Student Employee
Reserve S .E
Reservation Lecture
Check S .E Handling Reservation
Msg
Leaves
Resv . Confirmation /
Co-worker assignment
Pay Slip
Lecturer
9.0
System Modification
Student Employee
System Details Modification Details Login details
Leave
Req Leave Request
Leave 8.0
Head Of Department Leave Approval
Approve Leave Handling
Leave Request /S.E ID
Notification
Leave Notification
Software Development Project – Payroll System
Level 1 Data flow Diagram
1.1
CV Approval
S.E
CV Handling S.E CV
New Employee
Approved CV details
Academic Administration Head Of Department
CV Approval
S.E CV
1.2
S.E ID Handling
S.E Reqests
S.E Details S.E Requests/msgs
/msgs
Username
S.E Comments + Passwrd
Lecturer /msgs
Student Employee
S.E Details
Student Employee
Software Development Project – Payroll System
Random Position
Student Employee
Reservation
Request
2.2
Generating
Reservation Order
Determined OT Details
3.1
OT
Management Determined OT Details
S.E OT Hrs
Head Of Department
Academic Administration OT Details
OT Approval
OT S.E OT Request
Handling
Approved
OT Details OT Shifts
OT Completion Details
Approved OT Shift
S.E OT Request
Student Employee
4.1 Rating
Working Hrs
S.E Details
Student Employee
Software Development Project – Payroll System
Pay Rates
6.1 Pay Rates
Payroll Management
Pay Rates
Academic Administration Head Of Department
OT Rates
6.2
OT Rates OT Hrs
Time Handling
Time data
Payments
Pay Rates
/Working Hrs
Pay Slip
Approved
Pay Slip
Pay Rates
6.3
Pay Slip Handling
S.E Details
Working Details
Pay Slip Student Employee
Student Employee
Software Development Project – Payroll System
7.1
Check S.E Availability Co-Worker Assignment
List Of S.E
Check S.E
Reservation Confirmation/
Co-Worker Assignment
Reservation Confirmation/
Co-Worker Assignment
Slot Reservation
Lecturer
7.3
Cancelation Details Cancel Reservation
Handling
Cancelation Details
Student Employee
Cancelation Details
Software Development Project – Payroll System
8.1
Determined Leaves S.E S.E Leave Request
Leave Handling
Leave Request
Leave
Requst
New Leave Deails Leave Approval Leave
To update Status
8.2
Check
Leave Availability
Student Employee
Previous Leave
Details
Total
Leaves
Leave Details
Software Development Project – Payroll System
Assumptions
Assumptions are made so that the system is successful when it’s functioning. While we
designed our system we had to make few assumptions to design which would meet its
requirements.
• Admin is the only super user who has the power to add and delete head of department
• If there is a lack of technical assistants they can be reserved from other departments as
well.
• Two maximum number of student employees, with the same job title and in the same
department can select one particular timeslot to work on a timeslot plan.
Software Development Project – Payroll System
Limitations
Limitations are said to be restriction of a system from extending its performance. However
we may plan the system the rules governing it will restrict and limit the system. Here are
few limitations we found while working on the requirements of the system.
• System has security issues that outsider can hack the system through SQL injection
• Admin cannot monitor performance, system summary from outside. He must login
using his machine situated at the university premises.
Software Development Project – Payroll System
Requirement Identification
Admin
• Send messages
Head of Department
• Send messages
Lecturer
Student
• Check reservations
• Cancel sessions
• Send messages
Hierarchy Chart
Login
LOGIN FORM
Academic
Head of Department Lecturer Student Employee
Administration
Software Development Project – Payroll System
Admin
Academic Administrator
Add New Add New Add New Add New Inbox New Feedback New Notifications
Sent
Software Development Project – Payroll System
Head of Department
Head of Department
Edit OT History Add Job Titiles Leave Requests Inbox Unattended Jobs History
Lecturer
Lecturer
Reserve a Student
New Completed Jobs Recently Completed Jobs
Employee
Cancelled/ Transferred
Browse Student Employee Inbox Unfinished Jobs
Jobs
Unattended Jobs
Software Development Project – Payroll System
Student
Student Employee
Job Awaiting
My leave Requests New My OT Requests Reserve Slots Leave Request
Confirmation
Request for
Transferred Job Apply for Leave Inbox Apply for OT OT Request
Modifications
Date Dictionary
Level 0
External Entities
Academic Administration
Name
S.E rating
Data inflow
Head Of Department
Name
Lecturer
Name
Student Employee
Name
Data Flows.
Name S.E Details
Name S.E CV
Name S.E CV
Data Structures Date+ Department id+ Job id+ Time Slot Details
Data Structures Date+ Department id+ Job id+ Time Slot Details
Name OT Request
Software Development Project – Payroll System
Name OT Details
Data Structures Date+ Time+ S.E id+ S.E Name+ Job Title
Data Structures S.E id+ Date+ Time+ Worked Time Slot Details
Name OT Details
Name OT Pay
Data Structures S.E id+ OT Pay+ Normal Pay+ Total Pay+ Tax
Data Structures S.E id+ OT Pay+ Normal Pay+ Total Pay+ Tax
Data Stores
Name Student Employee Profiles
Data Structures Date+ Time+ Department id+ Job id+ Time Slots+
Lecture Hrs+ Reserved Hrs
Name OT Details
Data Structures Time+ Date+ S.E id+ Department id+ Job Title
Name Leaves
Data Structures S.E id+ Job title+ Department id, Leave type, Leave
details
Process
Do
Sort details
End.
Do
Send Request
Software Development Project – Payroll System
End.
Process Description Do
Read OT Request
End.
Description
The process through which the Academic
Administration and head of Department can find the
student employee’s previous worked details.
Software Development Project – Payroll System
Do
End
Do
Sort details
End.
Software Development Project – Payroll System
Do
End.
Do
End.
Do
Leave approval
Send Feedback
End
Do
Sort details
End.
Level 1
Processes
Name Process 1.1 CV Handling-New Employee
Do
Read S.E’s CV
End.
Do
End.
Do
Software Development Project – Payroll System
End.
Do
End.
Do
End.
Software Development Project – Payroll System
Do
End.
Do
Send OT details
Software Development Project – Payroll System
End.
Do
Read OT Request
Read OT approval
End.
Do
Record OT details
End
Do
End.
Do
End.
Data Inflow Pay Rates, Working Hrs, Pay Rates, S.E details,
Working details, Approved Pay Slip
Do
End.
Do
End.
Do
End.
Do
End.
Do
Leave approval
Send Feedback
End
Do
End
Software Development Project – Payroll System
Job_Types
PK Job_title
Hourly_rate
System-configuration
Ot_rate
Departments
has Max_work_hours
PK Dept_name Book_allowance
belongs Paye
Total_available Paye_selection_amount
Total_current
User
Timesheets
PK User_id
PK Slot_id
Notifications
Username
PK Not_id Password Time_in
Type Time_out
FK1 User_id sends First_name Report
From_id Last_name Std_id
date Address Date
notification email Dept_id
Contact_no Job_title
Date_joined Status
Dept_id Coworker_id
FK1 Job_Title Remarks
OT_Records
Rating
PK OT_rec_id FK2 Dept_name enters
has
FK1 Std_id
Date sends
Time_in Reservations
Time_out
PK Res_id
Date_requested
Lec_feedback
FK2 Lec_id
Approved_by
FK1 Slot_id
Lec_feedback
has work_completed
Payroll_records has
enters Leaves
PK Pay_id
PK,FK1 Std_id
FK1 Std_id
Pay Type
OT_pay Requested_date
tot_hours Status
Deducted_PAYE Allowances
PK,FK1 Std_id
Period
Allowances
Software Development Project – Payroll System
Normalization
Un normalized form
1 Normal form(1NF)
Table Structure
Table: Users
required
field
required
field
required
field
required
field
Table: Departments
required field
required field
Software Development Project – Payroll System
Table: Department_Employments
required
field
required
field
required
field
Table : Job_Types
required field
required field
required field
Table: Notification
Field Name
Table: Messages Type Length Constraints Description
Not_id(PK)
Field Name INTEGER
Type 10
Length 10 characters
Constraints Notification
Descriptionid
limited
Msg_id(PK) INTEGER 10 10 characters message id
required
limited
field
Table: Reservations
Software Development Project – Payroll System
required field
required field
required field
required field
required field
Table: Timeslots
required field
required field
required field
Table: Timeslot_Change_requests
required field
required field
Table: System_Configuration
required field
required field
Table: OT_Records
required field
required field
required field
required field
required field
required field
Table: Payroll_records
required field
required field
required field
required field
required field
Software Development Project – Payroll System
Table: Earnings
required field
required field
Table: Deducted_PAYE
required field
Table: Allowance
required field
required field
required field
Software Development Project – Payroll System
Table: Leaves
required field
required field
required field
required field
required field
Software Development Project – Payroll System
Screen Design
SCREEN DESIGN
Login Form
START
IF textbox “txtUsername” is Clicked THEN
TxtUsername = “”
ELSE IF textbox “txtPassword” is Clicked THEN
txtPassword = “”
END IF
ELSE
DISPLAY error “Username or Password cannot be blank!”
END IF
END
Test Plan
Software Development Project – Payroll System
Else
Error message
Software Development Project – Payroll System
Administrator
START
END
Test Plan
Software Development Project – Payroll System
START
READ first name, last name, address, contact details, username,
password
IF first name, last name, address, contact details, username, password
NOT “” THEN
IF username NOT FOUND on users table
INSERT first name, last name, department, address, contact
details, username into table “users” with the type “HOD”
ELSE
DISPLAY error “Username already found”
END IF
END IF
END
Software Development Project – Payroll System
START
LOAD HOD profiles into Datagridview
START
READ first name, last name, address, contact details, username,
password
IF first name, last name, address, contact details, username, password
NOT “” THEN
IF username NOT FOUND on users table
INSERT first name, last name, department, address, contact
details, username into table “users” with the type “Lecturer”
ELSE
DISPLAY error “Username already found”
END IF
END IF
END
Software Development Project – Payroll System
START
LOAD Lecturer profiles into Datagridview
START
IF combo item “job title” AND “department” are selected THEN
DISPLAY job title description
END IF
END
START
LOAD Student profiles into Datagridview
START
IF button “Add” is clicked THEN
READ Dept. Name, Dept. ID, Dept. Description, HOD Name, Image
INSERT new department into table Departments
Upload new department image
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load unread messages into datagridview
IF button “View” is clicked THEN
DISPLAY full message
END IF
IF button “Delete” is clicked THEN
DISPLAY “Are you sure you want to Delete this message?”
IF “yes” THEN
Delete selected message
END IF
END IF
END
Software Development Project – Payroll System
START
IF textbox “To” NOT “” AND textbox “Title” NOT “” AND textbox
“Message” NOT “” THEN
READ “To”,”Title”, “Message”
INSERT ”Title”, “Message”, “From”, “To” into table “messages”
ELSE
DISPLAY error “Please fill important fields!”
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load sent messages into datagridview
IF button “View” is clicked THEN
DISPLAY full message
END IF
IF button “Delete” is clicked THEN
DISPLAY “Are you sure you want to Delete this message?”
IF “yes” THEN
Delete selected message
END IF
END IF
END
Test Plan
Software Development Project – Payroll System
START
ON FORM LOAD load unread feedbacks into datagridview
IF button “View” is clicked THEN
DISPLAY full feedback, DISPLAY “Add feedback” textbox
END IF
IF button “Delete All” is clicked THEN
DISPLAY “Are you sure you want to Delete ?”
IF “yes” THEN
Delete all feedbacks
END IF
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load completed jobs into datagridview
IF button “More” is clicked THEN
DISPLAY details of completed job
END IF
END
Software Development Project – Payroll System
START
Test Plan
Tes Test Test Data/Test Expected Actu
t Actions Value al
Description
Software Development Project – Payroll System Value
Cas
e
“Add new”
page
START
IF combo item “job title” AND “department” are selected THEN
DISPLAY job title description
END IF
END
START
ON FORM LOAD load new OT requests into datagridview
IF button “View” is clicked THEN
DISPLAY more about OT request
END IF
IF button “Approve” is clicked THEN
Approve the selected request
END IF
IF button “Reject” is clicked THEN
Reject the selected request
END IF
Software Development Project – Payroll System
END
START
ON FORM LOAD load time slot change requests into datagridview
END
Software Development Project – Payroll System
START
END
Software Development Project – Payroll System
START
ON FORM LOAD load leave requests into datagridview
END
Software Development Project – Payroll System
START
IF button “Add” is clicked THEN
READ Dept. Name, Dept. ID, Dept. Description, HOD Name, Image
INSERT new department into table Departments
Upload new department image
END IF
END
Test Plan
Tes Test Test Data/Test Expected Value Actu
t Actions al
Descriptio
Software Development Project – Payroll System Value
Cas n
e
Else
Else
Software Development Project – Payroll System
START
ON FORM LOAD load unread messages into datagridview
IF button “View” is clicked THEN
DISPLAY full message
END IF
IF button “Delete” is clicked THEN
DISPLAY “Are you sure you want to Delete this message?”
IF “yes” THEN
Delete selected message
END IF
END IF
END
Software Development Project – Payroll System
START
IF textbox “To” NOT “” AND textbox “Title” NOT “” AND textbox
“Message” NOT “” THEN
READ “To”,”Title”, “Message”
INSERT ”Title”, “Message”, “From”, “To” into table “messages”
ELSE
DISPLAY error “Please fill important fields!”
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load sent messages into datagridview
IF button “View” is clicked THEN
DISPLAY full message
END IF
IF button “Delete” is clicked THEN
DISPLAY “Are you sure you want to Delete this message?”
IF “yes” THEN
Delete selected message
END IF
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load unread feedbacks into datagridview
IF button “View” is clicked THEN
DISPLAY full feedback, DISPLAY “Add feedback” textbox
END IF
IF button “Delete All” is clicked THEN
DISPLAY “Are you sure you want to Delete ?”
IF “yes” THEN
Delete all feedbacks
END IF
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load completed jobs into datagridview
IF button “More” is clicked THEN
DISPLAY details of completed job
END IF
END
Software Development Project – Payroll System
Lecturer
START
“Add new”
page
Telephone No
Software Development Project – Payroll System
START
IF button “Reserve” is clicked THEN
IF combo “Select job title” NOT “” AND combo “Select student”
NOT “” AND combo “Class” NOT “” AND combo “Slot code” NOT “” AND combo
“Work description” NOT “” AND Due date is selected THEN
READ combo “Select job title”, combo “Select student”,
combo “Class”, combo “Slot code”, combo “Work description”, Due date
Insert new reservation
ELSE
DISPLAY error “Important fields are missing”
END IF
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load student details into datagridview
END
Software Development Project – Payroll System
START
ON FORM LOAD load reservation details into datagridview
END
Software Development Project – Payroll System
START
ON FORM LOAD load recently jobs details into datagridview
END IF
END
Software Development Project – Payroll System
Student
START
Test Plan
Tes Test Test Data/Test Expected Value Actu
t Actions al
Descriptio
Software Development Project – Payroll System Value
Cas n
e
Else
Else
START
ON FORM LOAD load awaiting jobs into datagridview
IF item selected in datagridview AND button “Begin Session” is clicked
THEN
Insert record to tabe “Timesheets” table, add time-in
Lock the student account from logging in from another
department to start another timeslot
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load awaiting jobs into datagridview
IF item selected in datagridview AND button “Assign Coworker” is clicked
THEN
READ “corworker”
Insert record to tabe “Timesheets” table, with “coworker”
Send notification to coworker, lecturer
END IF
END
Software Development Project – Payroll System
START
ELSE
SELECT reserving order from table “Timeslots”
IF order is correct THEN
DISPLAY available timeslots
ELSE
DISPLAY error “You can reserve slots according to the
lucky number in the generated order”
DISPLAY “The order you got was” + generated order
END IF
END IF
ELSE
Software Development Project – Payroll System
DISPLAY “You cannot make slot reservations at the moment”
END IF
END
START
DISPLAY timeslots
IF button “Send request” is clicked THEN
Send selected timeslots to HOD to confirm modification
END IF
END
Software Development Project – Payroll System
START
END
Software Development Project – Payroll System
START
ON FORM LOAD load awaiting OT requests into datagridview
END
Software Development Project – Payroll System
START
READ date, start time, end time, class
END
Software Development Project – Payroll System
START
ON FORM LOAD load awaiting leave requests into datagridview
END
Software Development Project – Payroll System
START
READ leave type, leave start, leave end
END
Software Development Project – Payroll System
START
ON FORM LOAD load unread messages into datagridview
IF button “View” is clicked THEN
DISPLAY full message
END IF
IF button “Delete” is clicked THEN
DISPLAY “Are you sure you want to Delete this message?”
IF “yes” THEN
Delete selected message
END IF
END IF
END
Software Development Project – Payroll System
START
IF textbox “To” NOT “” AND textbox “Title” NOT “” AND textbox
“Message” NOT “” THEN
READ “To”,”Title”, “Message”
INSERT ”Title”, “Message”, “From”, “To” into table “messages”
ELSE
DISPLAY error “Please fill important fields!”
END IF
END
Software Development Project – Payroll System
START
ON FORM LOAD load sent messages into datagridview
IF button “View” is clicked THEN
DISPLAY full message
END IF
IF button “Delete” is clicked THEN
DISPLAY “Are you sure you want to Delete this message?”
IF “yes” THEN
Delete selected message
END IF
END IF
END
Software Development Project – Payroll System
Welcome Screen
Test Plan
Tes Test Test Data/Test Expected Value Actu
t Actions al
Descriptio
Value
Cas n
e
Main Menu
Pseudo Code
Software Development Project – Payroll System
Begin
Begin
Begin
Begin
Begin
Report Design
Date: ***********
Department: ***********
Date: ********
Department: ********
Year Month Total Reserved Hrs Days Attended Days absent Days Transferred
Date: ********
Department: ********
Year Month Total Hours Earning OT Pay Deducted PAYE Total Pay
Date: *******
Full Name: *********
Department: *********
Date: *******
Full Name: *********
Department: *********
Pay Slip
Date: *******
Full Name: *********
Department: *********
OT Hours = ***
PAYE(Tax) = ***
= ****.**
Software Development Project – Payroll System
Limitations
Limitations are said to be restriction of a system from extending its performance. However
we may plan the system the rules governing it will restrict and limit the system. Here are
few limitations we found while working on the requirements of the system.
• System has security issues that outsider can hack the system through SQL injection
• Admin cannot monitor performance, system summary from outside. He must login
using his machine situated at the university premises.
Software Development Project – Payroll System
Assumptions
Assumptions are made so that the system is successful when it’s functioning. While we
designed our system we had to make few assumptions to design which would meet its
requirements.
• Admin is the only super user who has the power to add and delete head of department
• If there is a lack of technical assistants they can be reserved from other departments as
well.
• Two maximum number of student employees, with the same job title and in the same
department can select one particular timeslot to work on a timeslot plan.