Engineering
II
1
Payroll
And
Attendance
System
Abstract
Documentation
is
tangible
part
of
software
development
which
holds
equal
importance
as
software
application
does.
This
report
has
been
prepared
in
corresponding
to
the
Attendance
and
Payroll
system
that
is
being
developed
for
the
Third
Pole
Connects,
an
employment
wing
of
the
Islington
college.
The
purpose
of
this
report
is
to
complete
the
documentation
part
of
system
that
is
being
developed
for
the
Software
Engineering
II
module.
This
report
aims
to
develop
team
management
and
team
collaboration
skills,
experiencing
real
time
software
development
practice
and
system
design
for
the
real
world
applications.
This
report
clearly
mentions
design
phases
of
the
systems
represented
by
various
UML
diagrams
like
use
case
diagram,
activity
diagram,
collaboration
diagram
etc.
which
are
conducted
in
different
time
boxes.
This
report
defines
different
modules
of
the
system
along
with
the
attributes
used
in
the
system.
The
user
manual
that
comes
with
this
report
will
help
the
administration
of
the
Client
Organization
in
order
to
know
about
the
software
and
to
run
it.
In
nutshell,
this
report
taught
to
conducts
the
works
in
different
time
boxes
along
with
the
scheduling
of
the
tasks
and
developed
the
skills
of
working
in
a
team.
On
completion
of
this
coursework,
50%
of
the
total
marks
for
this
module
will
be
completed.
Table
of
Contents
CHAPTER
1:
INTRODUCTION
..............................................................................................
5
CHAPTER
2:
PROJECT
PLAN
................................................................................................
6
A)
TIMEBOX
1:
PROJECT
PLAN
.................................................................................................
6
i)
Work
Breakdown
Structure
...........................................................................................
6
ii)
Gantt
Chart
...................................................................................................................
6
B)
TIMEBOX
2:
PROJECT
PLAN
.....................................................................................................
7
i)
Work
Breakdown
Structure
...........................................................................................
7
ii)
Gantt
Chart
...................................................................................................................
7
C)
TIMEBOX
3:
PROJECT
PLAN
.....................................................................................................
8
i)
Work
Breakdown
Structure
...........................................................................................
8
ii)
Gantt
Chart
...................................................................................................................
8
D)
TIMEBOX
4:
PROJECT
PLAN
.....................................................................................................
9
i)
Work
Breakdown
Structure
...........................................................................................
9
ii)
Gantt
Chart
...................................................................................................................
9
E)
TIMEBOX
5:
PROJECT
PLAN
....................................................................................................
10
i)
Work
Breakdown
Structure
.........................................................................................
10
ii)
Gantt
Chart
.................................................................................................................
10
F)
TIMEBOX
6:
PROJECT
PLAN
....................................................................................................
11
i)
Work
Breakdown
Structure
.........................................................................................
11
ii)
Gantt
Chart
.................................................................................................................
11
G)
TIMEBOX
7:
PROJECT
PLAN
...................................................................................................
12
i)
Work
Breakdown
Structure
.........................................................................................
12
ii)
Gantt
Chart
.................................................................................................................
12
H)
TIMEBOX
8:
PROJECT
PLAN
...................................................................................................
13
i)
Work
Breakdown
Structure
.........................................................................................
13
ii)
Gantt
Chart
.................................................................................................................
13
I)
TIMEBOX
9:
PROJECT
PLAN
....................................................................................................
14
i)
Work
Breakdown
Structure
.........................................................................................
14
ii)
Gantt
Chart
.................................................................................................................
14
J)
TIMEBOX
10:
PROJECT
PLAN
..................................................................................................
15
i)
Work
Breakdown
Structure
.........................................................................................
15
ii)
Gantt
Chart
.................................................................................................................
15
K)
TIMEBOX
11:
PROJECT
PLAN
.................................................................................................
16
i)
Work
Breakdown
Structure
.........................................................................................
16
ii)
Gantt
Chart
.................................................................................................................
16
L)
TIMEBOX
12:
PROJECT
PLAN
..................................................................................................
17
i)
Work
Breakdown
Structure
.........................................................................................
17
ii)
Gantt
Chart
.................................................................................................................
17
M)
TIMEBOX
13:
PROJECT
PLAN
................................................................................................
18
i)
Work
Breakdown
Structure
.........................................................................................
18
ii)
Gantt
Chart
.................................................................................................................
18
CHAPTER
3:
REQUIREMENT
SPECIFICATION
.....................................................................
19
INTRODUCTION
...............................................................................................................
20
PURPOSE
...............................................................................................................................
20
INTENDED
AUDIENCE
AND
READING
SUGGESTIONS
........................................................................
20
PROJECT
SCOPE
.......................................................................................................................
21
Software
Engineering
II
3
Payroll
And
Attendance
System
REFERENCES
...........................................................................................................................
24
Software
Engineering
II
5
Payroll
And
Attendance
System
CHAPTER
1:
INTRODUCTION
This
coursework
deals
with
developing
a
Payroll
and
Attendance
System
for
a
company
named
Third
Pole
Connects
PLC.
According
to
case
scenario,
it
is
a
newly
established
Software
development
Company,
which
decided
to
outsource
the
job
of
developing
above
mentioned
system
for
the
third
party
developers.
In
this
case,
our
team
has
proposed
to
develop
system
for
the
company.
Based
on
case
scenario,
system
along
with
documentation
has
been
developed
by
a
group
of
four
members.
System
is
completely
web
based.
It
primarily
deals
with
automating
the
traditional
attendance
and
payroll
management
system
of
the
company
upgrading
the
manual
process
into
a
systematic
computerized
form.
It
offers
an
individual
dashboard
to
every
staffs,
through
which
they
can
make
attendances
and
view
their
attendance
details
themselves.
System
includes
other
features
like
staff
management,
salary
calculation,
allocation
of
allowances
and
deductions
to
staffs
and
timely
reports
generation.
Project
strictly
follows
the
DSDM
methodology,
according
to
which,
whole
project
duration
was
divided
into
several
time
boxes
and
tasks
were
assigned
to
each
time
boxes,
allocating
resources
and
identifying
dependencies
for
each
tasks.
This
document
presents
overall
details
of
development
of
the
system.
It
covers
detailed
project
plan
which
includes
scheduling
and
Gantt
charts
of
each
time
boxes.
It
consists
of
a
detailed
design
specification
document,
i.e.
SRS
Document.
It
consists
of
high
level
system
designs
such
as
data
design,
architectural
design
and
structural
design.
It
also
consists
of
the
detailed
design
model
of
each
increments
like
architectural
model,
sequence
model
and
activity
model.
Document
also
covers
testing
details
as
well
as
systems
user
manual.
Task
Name
Tools
selection
Programming
language
selection
Database
selection
IDE
selection
Justification
Design
Prototype
Search
Dashboard
Template
HTML
enhancement
Resource
Siddhartha
Bhatta
Niraj
Lama
Ismaran
Duwadi
Amulya
Lohani
Ismaran
Duwadi
Amulya
Lohani
Siddhartha
Bhatta
Niraj
Lama
Dependency
1.3
1.1,
1.2,
2.1
2.1
2.1
Software
Engineering
II
7
Payroll
And
Attendance
System
SRS
Document
Project
scope
identification
Project
boundaries
and
constraints
identification
External
interface
requirements
identification
Functional
and
non
functional
requirements
identification
Product
deliverables
finalization
Dependencies
identification
Cost
estimation
SRS
document
Preparation
Data
Design
Entities
identification
Relationships
identification
Normalization
ER
diagram
design
ii)
Gantt
Chart
Resource
Dependency
Niraj
Lama
Siddhartha
Bhatta
Ismaran
Duwadi
Amulya
Lohani
Niraj
Lama
Ismaran
Duwadi
Amulya
Lohani
Siddhartha
Bhatta
Ismaran
Duwadi
Siddhartha
Bhatta
Amulya
Lohani
Niraj
Lama
1.3,
1.4
1.1,
1.2,
1.3,
1.4,
1.5,
1.6,
1.7
2.1
2.1,
2.2
2.1,
2.2,
2.3
Task
Name
SRS
Document
Enhancement
Missed
requirements
re-identification
Missed
product
deliverables
re-identification
Cost
estimation
SRS
document
update
Data
Design
Update
Entities
re-Identification
Relationships
re-Identification
Normalization
ER
diagram
Re-Design
Design
Prototype
Enhancement
Staff
profile
page
design
Addition
of
forms,
tables,
lists,
etc
in
admin
dashboard
Overall
CSS
enhancement
PHP
script
addition
Resource
Niraj
Lama
Ismaran
Duwadi
Amulya
Lohani
Siddhartha
Bhatta
Ismaran
Duwadi
Siddhartha
Bhatta
Amulya
Lohani
Niraj
Lama
Amulya
Lohani
Niraj
Lama
Siddhartha
Bhatta
Ismaran
Duwadi
Dependency
1.1,
1.2,
1.3
2.1
2.1,
2.2
2.1,
2.2,
2.3
3.1,3.2,3.3
Software
Engineering
II
9
Payroll
And
Attendance
System
d)
Timebox
4:
Project
Plan
i)
Work
Breakdown
Structure
Task
No.
1
1.1
1.2
1.3
1.4
2
2.1
2.2
2.3
2.4
Task
Name
Enhancement
of
ER
Diagram
Entities
update
Relationships
update
Re-Normalization
ER
diagram
re-design
Design
Prototype
Enhancement
Login
page
design
Attendance
report
table
design
Overall
CSS
enhancement
PHP
script
addition
Resource
Ismaran
Duwadi
Siddhartha
Bhatta
Amulya
Lohani
Niraj
Lama
Ismaran
Duwadi
Niraj
Lama
Amulya
Lohani
Siddhartha
Bhatta
Dependency
1.1
1.1,1.2
1.1,1.2,1.3
2.1,2.2,2.3
Task
Name
Contextual
Model
Design
Use
cases
identification
Actors
identification
Usecase
diagram
design
Usecase
description
Architectural
Model
Design
Architecture
Selection
Description
on
chosen
MVC
architecture
Design
Prototype
Enhancement
Salary
sheet
design
Overall
CSS
enhancement
Resource
Amulya
Lohani
Siddhartha
Bhatta
Ismaran
Duwadi
Niraj
Lama
Group
Suddhartha
Bhatta
Ismaran
Duwadi
Siddhartha
Bhatta
Dependency
1.1
1.1,1.2
1.1,1.2,1.3
2.1
Software
Engineering
II
11
Payroll
And
Attendance
System
Task
Name
Structural
Model
Design
(Whole
System)
Textual
Analysis
Class
Diagram
Design
Staff
Management
Module
Development
Architectural
Model
design
Sequence
Model
Design
Activity
Model
Design
Coding
Prepare
Inspection
Checklist
Login
Module
Development
Architectural
Model
design
Sequence
Model
Design
Activity
Model
Design
Coding
Prepare
Inspection
Checklist
Resource
Amulya
Lohani
Siddhartha
Bhatta
Niraj
Lama
Amulya
Lohani
Siddhartha
Bhatta
Ismaran
Duwadi
Siddhartha
Bhatta
Ismaran
Duwadi
Siddhartha
Bhatta
Ismaran
Duwadi
Amulya
Lohani
Niraj
Lama
Dependency
1.1
2.1,
2.2,
2.3
2.4
3.1,
3.2,
3.3
3.4
Task
Name
Manage
Allowances
Module
Develoment
Architectural
Model
design
Sequence
Model
Design
Resource
Ismaran
Duwadi
Ismaran
Duwadi
Siddhartha
Bhatta
Niraj
Lama
Amulya
Lohani
Dependency
1.1,
1.2,
1.3
1.4
Software
Engineering
II
13
Payroll
And
Attendance
System
Resource
Amulya
Lohani
Siddhartha
Bhatta
Niraj
Lama
Niraj
Lama
Ismaran
Duwadi
Dependency
1.1,
1.2,
1.3
1.4
Task
Name
Salary
Calculation
Module
Architectural
Model
design
Sequence
Model
Design
Activity
Model
Design
Coding
Prepare
Inspection
Checklist
Resource
Dependency
Amulya
Lohani
Niraj
Lama
Amulya
Lohani
Siddhartha
Bhatta
1.1,
1.2,
1.3
Ismaran
Duwadi
1.4
Software
Engineering
II
15
Payroll
And
Attendance
System
Task
Name
Attendance
Report
Generation
Module
Architectural
Model
design
Sequence
Model
Design
Resource
Ismaran
Duwadi
Amulya
Lohani
Siddhartha
Bhatta
Niraj
Lama
Siddhartha
Bhatta
Dependency
1.1,
1.2,
1.3
1.4
Resource
Siddhartha
Bhatta
Niraj
Lama
Amulya
Lohani
Niraj
Lama
Ismaran
Duwadi
Dependency
1.1,
1.2,
1.3
1.4
Software
Engineering
II
17
Payroll
And
Attendance
System
Task
Name
Manage
Leave
Module
Develoment
Architectural
Model
design
Sequence
Model
Design
Activity
Model
Design
Coding
Prepare
Inspection
Checklist
Manage
Holiday
Module
Develoment
Architectural
Model
design
Sequence
Model
Design
Activity
Model
Design
Coding
Prepare
Inspection
Checklist
Manage
Office
Time
Module
Develoment
Architectural
Model
design
Sequence
Model
Design
Activity
Model
Design
Coding
Prepare
Inspection
Checklist
Resource
Ismaran
Duwadi
Ismaran
Duwadi
Siddhartha
Bhatta
Niraj
Lama
Amulya
Lohani
Niraj
Lama
Amulya
Lohani
Siddhartha
Bhatta
Ismaran
Duwadi
Siddhartha
Bhatta
Ismaran
Duwadi
Amulya
Lohani
Ismaran
Duwadi
Niraj
Lama
Siddhartha
Bhatta
Dependency
1.1,
1.2,
1.3
1.4
2.1,
2.2,
2.3
2.4
3.1,
3.2,
3.3
3.4
Task
Name
Testing
Identify
Test
Cases
Executes
Tests
Refine
System
Test
Documentation
Documentation
Prepare
User
Manual
Finalize
Documentation
Resource
Amulya
Lohani
Siddhartha
Bhatta
Niraj
Lama
Siddhartha
Bhatta
Group
Group
Dependency
1.1
1.2
2.1
Software
Engineering
II
19
Payroll
And
Attendance
System
Introduction
Purpose
The
main
purpose
is
to
develop
payroll
and
attendance
system,
which
will
include
various
aspects
like:
Keeping
track
of
the
attendance
of
the
different
staff
employed
in
the
organization
This
will
help
to
keep
record
of
various
activities
like
allowing
the
employees
to
input
their
login
and
logout
time.
More
on,
this
will
also
helps
to
keep
track
of
the
staffs
logging
in
late
in
the
system.
All
staffs
can
view
their
respective
attendance
sheet
by
logging
in
the
system.
Generate
salary
sheet
at
the
end
of
every
month
At
the
end
of
every
month,
total
amount
payable
to
each
staff
will
be
generated.
All
details
that
include
various
deductibles
like
tax
deduction,
late
arrival
deduction,
absence
deduction
will
be
calculated
along
with
additions
of
the
various
allowances
and
incentives.
System
will
also
calculate
the
salary
figure
for
the
newly
hired
staff.
Attendance
report
for
the
top
management
At
the
end
of
every
week,
top
management
will
be
able
to
view
the
weekly
attendance
report
statistics
of
each
staffs
working
in
different
departments.
The
system
will
automatically
highlights
those
staff
being
late
or
has
left
early.
Top
management
will
generate
salary
sheet
at
the
end
of
every
month.
Software
Engineering
II
21
Payroll
And
Attendance
System
Project
Scope
Project
purpose
and
justification
The
purpose
of
this
project
is
to
manage
the
attendance
and
salary
record
with
the
help
of
computerized
attendance
and
payroll
system.
As
a
software
development
organization,
Third
pole
connects
organization
is
facing
challenges
in
managing
staffs
within
the
organization.
This
system
eyes
to
eliminate
these
challenges
by
computerizing
the
whole
process
of
managing
the
staff.
By
implementing
Attendance
and
Payroll
system,
Third
pole
connects
can
manage
their
staffs
easily
and
assume
to
discard
the
challenges
that
the
organization
is
currently
facing.
Scope Description
The
scope
of
this
project
is
to
plan,
design,
build
and
implement
an
Attendance
and
Payroll
system
for
Third
pole
Connects.
Various
permissions
and
privileges
will
be
provided
to
the
respective
personnel
responsible
to
use
this
system
in
order
to
manage
the
attendance
and
payroll.
Individual
dashboard
will
be
available
to
all
the
staffs
working
in
the
organization
where
staffs
can
register
their
attendance,
which
will
be
monitored
by
the
Executive
committee
member
of
the
organization.
This
project
has
been
approved
to
meet
the
internal
staff
management
and
business
need
for
Third
pole
Connects.
In
order
to
meet
this
business
need
there
are
several
requirements,
which
must
be
met
as
part
of
the
successful
execution
of
this
project.
The
following
high-level
requirements
have
been
identified
for
the
Attendance
and
Payroll
System:
1. Individual
dashboard
to
all
the
staffs
where
they
can
register
their
attendance.
2. Accessible
remotely
within
organization
only
3. Calculation
of
salary
including
allowances,
incentives
and
deductibles.
4. Executive
committee
staff
with
full
access
to
other
staffs
attendance
record
and
responsible
for
generating
salary
sheet
at
the
end
of
every
month.
Boundaries
This
Project
includes
all
work
associated
with
planning,
designing,
building,
and
implementing
the
Attendance
and
Payroll
System
for
Third
Pole
Connects.
This
includes
requirements
gathering,
gathering
input
from
all
departments,
conceptual
and
technical
design
and
coding
work,
server
configuration,
testing,
troubleshooting,
and
deployment
of
the
Attendance
and
Payroll
system
across
the
organization.
This
also
includes
training
manuals
and
materials
associated
with
operating
the
system.
Not
included
in
the
scope
of
this
project
are:
1. Ongoing
maintenance
of
the
system,
2. Implementing
commercial
database
products,
3. Ongoing
help
desk
and/or
service
support,
or
hardware/software
upgrades.
Strategy
For
the
Attendance
and
Payroll
Project
strategy,
the
project
team
will
leverage
the
expertise
of
several
developers
from
the
Palungo
IT
group.
They
will
aid
the
project
manager
and
other
team
members
in
conceptual
and
technical
design,
coding,
server
configuration,
testing
and
troubleshooting,
and
deployment.
The
project
manager
will
ensure
that
the
IT
experts
incorporate
all
input
from
stakeholders
and
gathered
requirements.
Deliverables
There
are
several
deliverables,
which
will
be
produced
as
a
result
of
the
successful
completion
of
this
project.
If
all
of
the
following
deliverables
are
not
met
then
the
project
will
not
be
considered
successful.
The
Project
Manager
is
responsible
for
ensuring
the
completion
of
these
deliverables.
1. Deliverable
1:
A
tested
and
operational
Attendance
record
system
free
of
errors
and
meeting
the
specifications
described
in
the
Project
Scope
Description.
2. Deliverable
2:
A
tested
and
operational
Salary
Calculation
module
free
of
errors
and
meeting
the
specifications
described
in
the
Project
Scope
Description.
3. Deliverable
3:
A
tested
and
operational
Attendance
report
generation
module
4. Deliverable
4:
A
complete
and
thorough
users
manual,
which
provides
step-
by-step
instructions
on
how
to
use
the
system
for
users
of
all
permission
levels.
Software
Engineering
II
23
Payroll
And
Attendance
System
Acceptance
Criteria
Acceptance
criteria
have
been
established
for
the
project
to
ensure
thorough
vetting
and
successful
completion
of
the
project.
The
acceptance
criteria
are
both
qualitative
and
quantitative
in
nature.
All
acceptance
criteria
must
be
met
in
order
to
achieve
success
for
this
project:
1. Meet
all
deliverables
within
scheduled
time
and
budget
tolerances.
2. Reduce
schedule
delays
by
at
least
30%.
3. Reduce
budget
overruns
by
at
least
30%.
4. Accomplish
an
overall
performance
improvement
in
program
metrics.
Constraints
Several
constraints
have
been
identified
for
this
Project.
It
is
imperative
that
considerations
be
made
for
these
constraints
throughout
the
project
lifecycle.
All
stakeholders
must
remain
mindful
of
these
constraints,
as
they
must
be
carefully
planned
for
to
prevent
any
adverse
impacts
to
the
projects
schedule,
cost,
or
scope.
The
following
constraints
have
been
identified
for
this
Project:
1. IT
experts
will
only
work
50%
of
billable
hours
on
this
project.
2. Project
manager
will
only
work
75%
of
billable
hours
on
this
project.
3. Project
must
be
completed
by
close
of
business
on
November
31,
2014.
4. Project
must
be
completed
within
budget
tolerance.
Assumptions
Several
assumptions
have
been
identified
for
this
Project.
All
stakeholders
must
be
mindful
of
these
assumptions
as
they
introduce
some
level
of
risk
to
the
project
until
theyre
confirmed
to
be
true.
During
the
project
planning
cycle
every
effort
must
be
made
to
identify
and
mitigate
any
risk
associated
with
the
following
assumptions:
1. IT
group
is
capable
of
producing
quality
and
professional
manuals
and
guides
in
their
print
shop.
2. IT
experts
working
only
50%
of
their
billable
hours
on
this
project
is
adequate
to
complete
the
project
by
November
31,
2014.
3. The
Project
Manager
working
only
75%
of
billable
hours
on
this
project
is
adequate
to
complete
the
project
by
November
31,
2014.
4. This
Project
has
full
support
from
senior
management
across
all
departments
within
Palungo
IT
group.
Cost
Estimate
The
estimated
costs
for
this
project
are
included
in
the
table
below.
As
the
project
proceeds
and
any
additional
costs
become
known,
this
cost
estimate
will
be
refined
and
communicated
to
all
project
stakeholders.
A
cost
benefit
analysis
has
been
performed
for
this
Project.
The
successful
completion
of
this
project
will
provide
significant
benefits
to
Palungo
IT
Group.
It
is
imperative
that
all
stakeholders
understand
these
benefits
as
well
as
the
importance
of
the
successful
completion
of
this
project.
The
table
below
shows
a
net
benefit
of
Rs
x
over
one
year
after
successful
completion
of
the
Attendance
and
Payroll
system
for
Third
Pole
Connects.
This
is
a
total
benefit
of
$x
if
no
project
is
done
and
schedule
delays,
cost
overruns,
and
poor
resource
allocation
continue.
Expense
Estimated
Budget
Expended
to
Estimate
to
Date
Complete
Variance
Labor
Internal
External
Software
Hardware
Others
Total
References
1.
Donn
Le
Vie,
J.,
2010.
Writing
software
requirement
specifications.
[Online]
Available
at:
http://techwhirl.com/writing-software-requirements-specifications/
[Accessed
15
October
2014].
2.
Project
Management
Docs,
2014.
Project
Scope
statement.
[Online]
Available
at:
http://www.projectmanagementdocs.com/project-documents/project-scope-
statement.html
[Accessed
20
October
2014].
Software
Engineering
II
25
Payroll
And
Attendance
System
Overall
Description
Product
Perspective
Current
System
The
organization
is
currently
implementing
paper-based
method
to
track
the
attendance
and
the
calculation
of
salary,
which
has
resulted
many
drawbacks
in
the
organizations
like
miscalculation
of
salary,
inaccurate
attendance
statistics
and
other
problems
as
well.
Thats
why
this
Attendance
and
Payroll
System
has
been
proposed
to
eliminate
these
kinds
of
drawback
for
saving
the
time
within
the
organization.
Proposed
System
This
system
Attendance
and
payroll
system
is
totally
new
system
going
to
be
developed
for
Third
Pole
Connects.
This
system
allows
organization
to
keep
track
of
the
staff
details
employed
in
the
different
department
of
organization
along
with
attendance
record
of
each
staffs.
This
system
will
also
calculate
the
salary
of
each
staff
with
necessary
allowances,
incentives
and
deductibles
at
the
end
of
every
month.
As
the
time
passes,
different
versions
of
the
system
will
be
released
in
coming
days
with
the
addition
of
necessary
features.
Product
Features
The
following
list
offers
a
brief
outline
and
description
of
the
main
features
and
functionalities
of
the
Attendance
and
Payroll
System.
The
features
are
split
into
two
major
categories:
core
features
and
additional
features.
Core
features
are
essential
to
the
applications
operation,
whereas
additional
features
simply
add
new
functionalities.
The
latter
features
will
only
be
implemented
as
time
permits.
Operating
Environment
Attendance
and
Payroll
System
is
web-based
system
however
it
can
be
used
in
all
platforms
including
windows,
Linux
and
MAC
OSX.
Compatible
Browsers:
Internet
explorer
(May
not
be
compatible
with
all
versions)
Firefox
(Full
compatible)
Google
Chrome
(Full
compatible)
Safari
(Full
Compatible)
Best
viewed
using
Mozilla
Firefox.
The
system
shall
use
the
current
corporate
standard
Oracle
database
engine.
All
HTML
code
shall
conform
to
the
HTML
4.0
standard.
All
scripts
shall
be
written
in
PHP.
System
will
only
work
within
the
organization
Only
registered
Staffs
will
be
allow
to
use
this
system
GUI
will
be
only
on
English
language
Software
Engineering
II
27
Payroll
And
Attendance
System
System
Features
a) Addition
of
New
Staff
Priority:
High,
Must
Have
Whenever
new
staff
joins
the
organization,
system
must
have
ability
to
add
new
members
to
the
system.
Stimulus/Responses
Step
1:
Ex.
Co
member
log
in
to
the
system.
Step
2:
Then
the
user
will
be
prompted
to
add
the
details
of
the
staff
and
the
department,
which
new
staff
will
be
joining
Step
3:
The
information
will
be
sent
and
stored
in
database
Step
4:
User
will
be
prompted
with
success
message
Functional
Requirements
1. User
must
input
valid
email
address
and
mobile
number.
Registration
wont
complete
until
the
system
is
provided
with
valid
email
address
and
mobile
number.
b) Staff
login
Priority:
High,
Must
Have
User
must
be
able
to
login
to
the
system
using
username
and
password
Stimulus/Response
Step
1:
Staff
logs
in
to
the
system
with
the
username
and
password.
Step
2:
System
will
check
the
validity
of
username
and
password.
Step
3:
Staff
will
be
able
to
see
the
dashboard.
Functional
Requirements
1) Staff
must
be
the
member
of
the
Third
Pole
Connects
in
order
to
use
the
system.
2) Provided
username
and
password
must
match
with
the
database
username
and
password.
Priority:
High,
Must
Have
System
must
record
the
time
of
staff
logging
in
and
logging
out.
If
staff
arrives
late,
then
system
must
assign
it
as
late.
Stimulus/Response
Step
1:
Staff
fills
in
the
arrived
time.
Step
2:
System
checks
whether
staff
is
on
time
or
not.
If
staff
is
late,
it
will
be
automatically
marked
red
Step
3:
Staff
will
get
attended
confirmation.
Step
4:
Staff
will
again
fill
the
leave
time.
Step
5:
System
checks
whether
staff
is
leaving
early
or
in
time.
If
staff
is
leaving
early,
system
will
keep
record
of
it.
Step
6:
Staff
will
get
leaving
confirmation.
Functional
Requirements
1. Staff
must
be
valid
and
is
registered
employee
of
Third
Pole
Connects.
Software
Engineering
II
29
Payroll
And
Attendance
System
Priority:
High,
Must
Have
Only
the
member
from
executive
committed
owns
right
to
calculate
the
salary
for
each
staff,
which
in
our
case
is
Mr.
Sanjay
Budhathoki.
System
must
be
able
to
generate
salary
sheet
at
the
end
of
every
month
along
with
necessary
allowances,
incentives
and
deductibles
like
TAX
deduction
and
late
deduction.
Stimulus/Response
Step
1:
Ex.
Co
member
will
select
the
month
for
which
salary
has
to
be
generated.
Step
2:
System
runs
query
in
database.
System
automatically
calculates
salary
by
including
allowances,
tax,
incentives
and
deductibles
Step
3:
Ex.
Co
member
gets
salary
report.
Functional
Requirements
1. Only
Ex.
Co
member
has
the
right
to
generate
salary.
Therefore,
the
user
name
and
password
of
Ex.
Co
member
must
match
with
the
username
and
password
of
database
g) Addition
of
Holiday
h) Attendance
Report
Priority:
High,
Must
Have
The
attendance
detail
of
the
staff
from
a
chosen
date
can
be
viewed
in
a
table
format
by
the
Ex.Co.
Report
will
include
various
informations
like
number
of
present
days,
absent
days
etc.
Stimulus/Response
Step
1:Admin
selects
the
staff
whose
attendance
report
needs
to
be
generated.
Step
2:
Admin
specifies
the
duration
for
which
the
report
needs
to
generated
Step
3:
System
generates
the
Attendance
report
for
the
selected
staff.
Other
Nonfunctional
Requirements
Performance
Requirements
Performance
should
not
be
an
issue
because
all
of
our
server
queries
involve
small
pieces
of
data.
Changing
screens
will
require
very
little
computation
and
thus
will
occur
very
quickly.
Server
updates
should
only
take
a
few
seconds.
The
cost-division
algorithms
used
in
this
system
will
be
highly
efficient,
taking
only
a
fraction
of
a
second
to
compute.
Software
Engineering
II
31
Payroll
And
Attendance
System
Safety
Requirements
Attendance
and
Payroll
System
will
not
affect
data
stored
outside
of
its
servers
It
cannot
cause
any
damage
to
the
computers
or
its
internal
components.
Security
Requirements
Only
the
staffs
working
for
Third
Pole
Connects
can
use
this
system.
With
that
being
said,
the
username
and
password
of
the
staff
is
required
to
use
the
system.
Since
it
is
password
protected,
username
and
password
will
be
used
to
authenticate
the
users
identity.
This
could
only
pose
a
thread
if
a
user
has
very
weak
password.
2) Identifying Relationships
Cardinality
Department Staff
1 : N
Staff Allowance
M: N
Staff Incentive
M:N
Staff Deduction
M:N
Staff Attendance
1:1
Grade Staff
1:N
S.N
Representation
Software
Engineering
II
33
Payroll
And
Attendance
System
4)
Identifying
Attributes
S.No.
Entity
Attribute
Staff_allowance
allowance_amount
Staff_incentive
amount
Allowance
allowance_name
Attendance
Deduction
Department
department
Grade
staff_post, grade_amount
Incentive
incentive_name
Office_date
Staff
Tds_sab
Software
Engineering
II
35
Payroll
And
Attendance
System
8.
Data
Dictionary
a) staff_allowance
table
P/F
Field_name
Caption
Notes
Reference
Table
staff
F
b) staff_incentive
table
P/F
Field_name
Caption
P
incentive_id
amount
F
staff_id
c) Allowance
table
P/F
Field_name
P
Integer
Integer
Integer
10
11
10
Caption
F
d) Attendance
Table
P/F
Field_name
Caption
P
F
Data Type
id
checked_in
checked_out
checked
late_entry
staff_id
Notes
Reference
Table
staff
Reference
Table
Staff_allowance
Data Type
Integer
Date/Time
Date/Time
Integer
Time
Integer
10
1
10
Reference
Table
staff
f) tbl_department
table
P/F
Field_name
Caption
P
id
department
g) tbl_grade
table
P/F
Field_name
Caption
Notes
Reference
Table
staff
Notes
Reference
Table
Notes
Reference
Table
P
id
staff_post
Staff
post
grade_amount
Grade
amount
h) tbl_incentive
table
P/F
Field_name
Caption
Data
Type
P
id
Integer
incentive_name
Incentive
Text
Name
F
incentive_id
Integer
Field
Size
10
15
Notes
Reference
Table
10
Staff_incentive
i) tbl_office_date
table
P/F
Field_name
Caption
Software
Engineering
II
37
Payroll
And
Attendance
System
id
office_date
Todays date
Date/Time
entrance_time
Date/Time
exit_time
Date/Time
Caption
Data
Type
Integer
Text
Text
Text
Text
Text
Text
Text
Text
Integer
Integer
float
Integer
Text
Integer
Integer
j) tbl_staff
table
P/F
Field_name
P
staff_id
staff_name
staff_post
staff_type
username
email
password
password_temp
code
active
grade
self_pf
marital_status
address
phone
F
dept_id
k) tds_slab
P/F
Field_name
Caption
id
Field
Size
10
150
150
50
200
100
250
60
60
1
11
8,2
1
50
11
10
Notes
Reference
Table
Tbl_department
Data
Type
Integer
Field
Size
10
Notes
Reference
Table
married_status
Integer
amount
Integer
11
tds_rate
Float
8,2
b.
Architectural
Design
c.
Structural
Design
1.
Class
Diagram
Software
Engineering
II
39
Payroll
And
Attendance
System
Software
Engineering
II
41
Payroll
And
Attendance
System
d.
Detailed
Design
I.
Increment
1:
Login
1.
Increment
Description
This
increment
provides
login
functiionality
to
the
system.
Each
staff
is
provided
with
username
and
password.
Staff
can
navigate
to
their
dashboard
with
the
help
of
the
provided
username
and
password.
Login
High
Leve
Use
Case
Description
Name:
Staff
Login
Actor(s):
Staff
Description:
Staff
can
view
the
attendance
details
by
logging
in
to
the
system.
Expanded
Level
Use
Case
Description
Name:
Staff
Login
Actor(s):
Staff
Purpose:
To
let
staff
log
in
to
their
dashboard.
Overview:
Staff
needs
to
provide
the
username/password
in
order
to
login
to
the
dashboard.
After
the
successful
login,
staff
will
get
navigated
to
their
dashboard
where
they
can
view
their
attendance
stats
and
other
necessary
information
Type:
Essential
System Response
2. Architecture
3. Sequence
Model
Software
Engineering
II
43
Payroll
And
Attendance
System
5. Activity
Model
Software
Engineering
II
45
Payroll
And
Attendance
System
Software
Engineering
II
47
Payroll
And
Attendance
System
b) Update
Staff
details
High
Leve
Use
Case
Description
Name:
Update
Staff
details
Actor(s):
Ex.Co
Description:
There
might
be
a
situation
when
the
details
about
the
staff
like
address,
phone
no.
etc
needs
to
be
changed.
To
overcome
this
purpose,
Ex.Co
can
update
details
about
the
staff.
Expanded
Level
Use
Case
Description
Name:
Update
Staff
details
Actor(s):
Ex.Co
Purpose:
To
edit
information
about
the
staff
working
in
the
company
Overview:
Ex.Co
can
make
ammendment
in
the
staff
details
if
needed.
This
will
be
applicable
in
a
situation
when
staff
changes
their
phone
number
and
other
relevant
personal
details
Type:
Essential
Action
Steps
Actor
Action
System
Response
1.
Ex.Co
selects
the
staff
for
whom
information
needs
to
be
edited.
2.
Ex.Co
enters
new
details
for
the
selected
staff
4.
Ex.Co
gets
the
details
edited
notification.
3.
System
records
new
details
for
the
selected
staff
2.
System
deletes
the
information
about
the
selected
staff
Software
Engineering
II
49
Payroll
And
Attendance
System
3. Sequence
Model
a)
Add
Staff
To
add
a
new
staff
in
the
system,
Ex.
Co.
first
enters
staffs
details
in
the
UI.
Then
controller
records
details
into
the
database
and
retrieves
recorded
status.
The
recorded
status
is
passed
to
the
UI.
Finally
Ex.
Co.
can
view
addition
success
or
failure
message
from
the
UI.
Software
Engineering
II
51
Payroll
And
Attendance
System
c)
Delete
Staff
To
delete
a
staff,
Ex.
Co.
first
selects
a
staff
who
is
to
be
deleted
from
the
system.
Then
Ex.Co.
enters
the
delete
command
by
clicking
a
button
in
the
UI.
After
the
confirmation
of
deletion,
a
method
is
called
to
remove
staff.
Controller
removes
staff
from
the
database
and
retrives
deletion
status.
This
status
is
passed
to
the
UI.
Finally
user
can
view
delete
success
or
failure
message
in
the
UI.
c)
Delete
Staff
5. Activity
Model
a) Add
Staff
Software
Engineering
II
53
Payroll
And
Attendance
System
b) Edit Staff
c) Delete Staff
Software
Engineering
II
55
Payroll
And
Attendance
System
1.
Increment
Description
This
module
will
record
the
attendance
details
of
the
staff
working
in
the
organisation.
It
will
record
the
time
staff
has
logged
in
and
logged
out.
Attendance
Tracking
High
Leve
Use
Case
Description
Name:
Attendance
Tracking
Actor(s):
Staff,
Ex.Co
Description:
The
attendance
details
of
every
staff
working
in
the
company
needs
to
be
recorder
by
the
system.
Expanded
Level
Use
Case
Description
Name:
Attendance
Tracking
Actor(s):
Staff,
Ex.Co
Purpose:
To
track
the
attendance
of
the
staffs.
Overview:
In
order
to
track
the
attendance,
system
extracts
the
time
in
which
staff
logged
in
to
the
system
and
logged
out
from
the
system.
These
informations
then
is
recorded
in
the
system.
Type:
Essential
Action
Steps
Actor
Action
System
Response
1.
Staff
clicks
on
the
check
in
and
checkout
button
in
order
to
pass
the
login
time
and
logout
time.
2.
System
stores
the
record
about
the
login
and
logout
time.
Software
Engineering
II
57
Payroll
And
Attendance
System
3. Sequence
Model
To
make
attendance,
staff
clicks
on
check-In
button
in
the
AttendanceUI.
Then
a
method
is
called
to
record
check-in
time.
Attendance
controller
records
check-in
time
in
the
database
and
retrives
recorded
status.
Finally
staff
can
view
checked-in
message
in
the
the
UI.
Software
Engineering
II
59
Payroll
And
Attendance
System
1. Increment
Description
This
module
is
responsible
for
managing
allowances
that
is
provided
to
different
staffs.
Different
Allowances
includes
Medical
Allowance,
House
Rent
Allowance,
Dearness
allowance,
Special
allowance
etc.
Admin
can
specify
different
types
of
allowances
for
each
staff
working
in
the
company.
2.
System
makes
the
record
of
the
allowance
for
each
staff
2. Architecture
Software
Engineering
II
61
Payroll
And
Attendance
System
Software
Engineering
II
63
Payroll
And
Attendance
System
b) Edit
Allowance
To
edit/update
allowance,
Ex.
Co.
first
selects
a
staff.
Then
in
the
allowance
UI,
Ex.Co.
specifies
allowance
type
and
edits
allowance
details
for
that
particular
staff.
Then
system
calls
a
method
to
record
this
edited
information.
Controller
records
new
allowance
details
into
the
database
and
retrives
updated
status.
This
status
is
passed
to
the
UI
and
finally
Ex.Co
can
see
update
success
or
failure
message
in
the
UI.
6. Activity
Model
a) Add
Allowance
b) Edit
Allowance
Software
Engineering
II
65
Payroll
And
Attendance
System
2.
System
makes
the
record
of
the
deduction
for
each
staff
2. Architecture
Software
Engineering
II
67
Payroll
And
Attendance
System
Software
Engineering
II
69
Payroll
And
Attendance
System
b) Edit
Deduction
To
edit/update
deduction,
Ex.
Co.
first
selects
a
staff.
Then
in
the
deduction
UI,
Ex.Co.
specifies
deduction
type
and
edits
deduction
details
for
that
particular
staff.
Then
system
calls
a
method
to
record
this
edited
information.
Controller
records
new
deduction
details
into
the
database
and
retrives
updated
status.
This
status
is
passed
to
the
UI
and
finally
Ex.Co
can
see
update
success
or
failure
message
in
the
UI.
5. Activity
Diagram
a) Add
Deduction
b)
Edit
Deduction
Software
Engineering
II
71
Payroll
And
Attendance
System
2.
System
calculates
the
net
salary
by
adding
necessary
allowances
and
making
necessary
deductions
to
the
basic
salary.
2.
Architecture
Software
Engineering
II
73
Payroll
And
Attendance
System
2.
System
generates
the
attendance
repot.
Software
Engineering
II
75
Payroll
And
Attendance
System
2.
Sequence
Model
To
generate
attendance
report,
Ex.Co.
first
selects
staff.
Then
a
method
is
called
to
pass
staff
Id
to
the
controller.
Controller
searches
for
attendance
details
of
that
particulart
Id
and
retrives
attendence
details
as
specified
by
the
Ex.Co.
Controller
passes
Attendance
details
UI
and
finally
Ex.Co
can
view
the
report.
Software
Engineering
II
77
Payroll
And
Attendance
System
3.
Collaboration
Model
5.
Activity
Model
Software
Engineering
II
79
Payroll
And
Attendance
System
Software
Engineering
II
81
Payroll
And
Attendance
System
Edit
Leave
High
Leve
Use
Case
Description
Name:
Edit
Leave
Actor(s):
Ex.Co,
Staff
Description:
When
Ex.Co
gets
the
leave
request
from
the
staff,
Ex.Co
will
either
approve
or
disapprove
the
leave
request.s
Expanded
Level
Use
Case
Description
Name:
Edit
Leave
Actor(s):
Ex.Co,
Staff
Purpose:
To
approve
or
disapprove
leave
request.
Overview:
Whenever
staff
submits
the
leave
request,
Ex.Co
can
view
the
leave
request
submitted
by
the
staff.
Ex.Co
can
either
approve
or
reject
the
request
Type:
Essential
Action
Steps
Actor
Action
System
Response
Software
Engineering
II
83
Payroll
And
Attendance
System
3. Sequence
Model
a) Add
Leave
To
add
leave,
staff
first
enters
a
date
in
leave
UI.
Then
a
method
is
called
to
record
that
date.
Leave
Controller
adds
leave
date
into
the
database
and
retrieves
the
addition
status.
This
status
is
passed
to
the
the
LeaveUI.
Finally
staff
can
view
the
addition
success
or
failure
status
in
the
UI.
b) Edit Leave
4. Collaboration
Model
a) Add
Leave
b) Edit
Leave
Software
Engineering
II
85
Payroll
And
Attendance
System
Software
Engineering
II
87
Payroll
And
Attendance
System
a) Add
Holiday
High
Leve
Use
Case
Description
Name:
Add
Holiday
Actor(s):
Ex.Co
Description:
Ex.
Co
can
declare
holiday
by
mentioning
date
for
which
Ex.Co
wants
holiday
to
be.
Expanded
Level
Use
Case
Description
Name:
Add
Holidays
Actor(s):
Ex.Co
Purpose:
To
add
Holiday
in
Calendar
Overview:
Whenever
Ex.Co
wants
to
assign
holiday
for
specific
day,
Ex.Co
first
selects
the
day
for
which
Ex.Co
wants
to
declare
the
holiday
and
confirms
it.
Type:
Essential
Action
Steps
Actor
Action
System
Response
1.
Ex.Co
selects
the
date
for
the
holiday.
c) Architecture
Software
Engineering
II
89
Payroll
And
Attendance
System
Software
Engineering
II
91
Payroll
And
Attendance
System
b) Edit
Holiday
To
remove
a
holiday,
Ex.Co.
selects
a
date
in
Holiday
UI.
After
Ex.Co.
confirms
removal
of
holiday,
HolidayController
passes
method
to
remove
holiday
from
database
and
retrieves
the
removal
status.
This
status
is
passed
to
the
HolidayUI.
Finally
Ex.Co
can
view
the
removal
success
or
failure
status
in
the
UI.
e) Collaboration
Model
a) Add
Holiday
b) Edit
Holiday
Software
Engineering
II
93
Payroll
And
Attendance
System
c) Remove Holiday
f) Activity
Model
a) Add
Holiday
Software
Engineering
II
95
Payroll
And
Attendance
System
b) Remove
Holiday
a) Add
Office
Time
High
Leve
Use
Case
Description
Name:
Add
Office
Time
Actor(s):
Ex.Co
Description:
Ex.
Co
can
set
new
office
time
by
adding
Check
in
time
and
Checkout
time
Expanded
Level
Use
Case
Description
Name:
Add
Office
Time
Actor(s):
Ex.Co
Purpose:
To
add
new
office
time.
Overview:
Ex.Co
can
set
new
office
time
by
adding
new
check
in
time
and
checkout
time.
Ex.Co
specifies
duration
for
which
new
office
hour
is
applicable
and
confirms
it.
Type:
Essential
Action
Steps
Actor
Action
System
Response
1.
Ex.Co
selects
the
date
for
the
new
office
time.
3.
Ex.Co
gets
success/failure
notification.
2.
System
updates
the
date
for
new
office
time.
Software
Engineering
II
97
Payroll
And
Attendance
System
b) Edit
Office
Time
High
Leve
Use
Case
Description
Name:
Edit
office
Time
Actor(s):
Ex.Co
Description:
:
Ex.
Co
can
edit
new
office
time
by
either
updating
or
removing
Check
in
time
and
Checkout
time
Expanded
Level
Use
Case
Description
Name:
Edit
office
Time
Actor(s):
Ex.Co
Purpose:
To
Edit
office
time
Overview:
Ex.Co
can
edit
office
time
by
updating
new
check
in
time
and
checkout
time.
Ex.Co
specifies
duration
for
which
new
office
hour
is
applicable
and
confirms
it.
Type:
Essential
Action
Steps
Actor
Action
System
Response
1.
Ex.Co
selects
the
date
for
removing
or
updating
the
office
time.
2.
System
removes/updates
the
office
time
3.
Ex.Co
gets
success/failure
notification.
Software
Engineering
II
99
Payroll
And
Attendance
System
d) Sequence
Model
a) Add
Office
Time
To
add
a
new
office
time,
Ex.Co.
specifies
date
and
enters
check-in
and
check-out
time
for
that
particular
date
in
OfficeTimeUI.
Then
a
method
is
called
to
record
this
information.
OfficeTimeController
adds
specified
date
and
time
into
the
database
and
retrieves
the
addition
status.
This
status
is
passed
to
the
OfficeTimeUI.
Finally
Ex.Co
can
view
the
addition
success
or
failure
status
in
the
UI.
e) Collaboration
Model
a) Add
Office
Time
b) Edit
Office
Time
3.
For
expressions
containing
more
than
one
Boolean
operator,
are
the
assumptions
about
the
order
of
evaluation
and
the
precedence
of
operators
correct?
Yes
No
Control-Flow
Errors
1. Will
every
loop
eventually
terminate?
Yes
No
2. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
3. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
4. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
1. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
2. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
3.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
1. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
2. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Locating error
Solving
error
6.
For
expressions
containing
more
than
one
Boolean
operator,
are
the
assumptions
about
the
order
of
evaluation
and
the
precedence
of
operators
correct?
Yes
No
Control-Flow
Errors
5. Will
every
loop
eventually
terminate?
Yes
No
6. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
7. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
8. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
4. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
5. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
6.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
3. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
4. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Error Exception
Locating error
Error on code
9.
For
expressions
containing
more
than
one
Boolean
operator,
are
the
assumptions
about
the
order
of
evaluation
and
the
precedence
of
operators
correct?
Yes
No
Control-Flow
Errors
9. Will
every
loop
eventually
terminate?
Yes
No
10. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
11. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
12. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
7. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
8. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
9.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
5. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
6. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
error in code
Solving error
Control-Flow
Errors
13. Will
every
loop
eventually
terminate?
Yes
No
14. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
15. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
16. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
10. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
11. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
12.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
7. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
8. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
17. Will
every
loop
eventually
terminate?
Yes
No
18. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
19. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
20. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
13. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
14. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
15.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
9. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
10. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
21. Will
every
loop
eventually
terminate?
Yes
No
22. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
23. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
24. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
16. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
17. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
18.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
11. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
12. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
25. Will
every
loop
eventually
terminate?
Yes
No
26. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
27. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
28. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
19. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
20. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
21.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
13. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
14. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
29. Will
every
loop
eventually
terminate?
Yes
No
30. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
31. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
32. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
22. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
23. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
24.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
15. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
16. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
33. Will
every
loop
eventually
terminate?
Yes
No
34. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
35. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
36. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
25. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
26. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
27.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
17. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
18. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
37. Will
every
loop
eventually
terminate?
Yes
No
38. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
39. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
40. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
28. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
29. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
30.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
19. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
20. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
Control-Flow
Errors
41. Will
every
loop
eventually
terminate?
Yes
No
42. Will
the
program,
module,
or
subroutine
eventually
terminate?
Yes
No
43. Is
it
possible
that,
because
of
the
conditions
upon
entry,
a
loop
will
never
execute?
If
so,
does
this
represent
an
oversight?
Yes
No
44. Are
there
any
"off
by
one"
errors
(e.g.,
one
too
many
or
too
few
iterations)?
Yes
No
Interface
Errors
31. Does
the
number
of
parameters
received
by
this
module
equal
the
number
of
arguments
sent
by
each
of
the
calling
modules?
Yes
No
32. Do
the
attributes
(e.g.,
type
and
size)
of
each
parameter
match
the
attributes
of
each
corresponding
argument?
Yes
No
33.
Does
the
number
of
arguments
transmitted
by
this
module
to
another
module
equal
the
number
of
parameters
expected
by
that
module?
Yes
No
Input/Output
Errors
21. If
files
are
explicitly
declared,
are
their
attributes
correct?
Yes
No
22. Are
the
attributes
on
the
OPEN
statement
correct?
Yes
No
c. Validation
I.
Acceptance
Test
1. Acceptance
Test
Plan
Test
Test
Case
Description
Case
No.
Test Type
Requirements
Traceability
Test Schedule
Acceptance
SRS 1. a)
2014/12/10
1.
2.
SRS - b
2014/12/13
3.
Acceptance
SRS - c
2014/12/17
Acceptance
SRS - d
2014/12/19
Acceptance
SRS - e
2014/12/24
Acceptance
SRS - f
2014/12/29
Acceptance
SRS - f
2015/01/02
Acceptance
SRS - g
2015/01/04
Acceptance
SRS - h
2015/01/07
4.
5.
6
7
8
9
II
Integration
Testing
2. Test
Cases
A
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
1
-
a
To
Test
whether
the
system
accepts
empty
fields
for
new
staff
Username:
null;
password:
null
;
email:
null;
Staff
Name:
Null,
Address:
Null;
Phone:
Null
System
should
display
the
proper
error
message
System
displays
error
message
mentioning
all
the
fields
must
be
filled
with
some
data.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
1
-
b
To
Test
whether
the
system
displays
error
message
or
not
if
the
username
matches.
Username:
sanjay
System
should
display
the
proper
error
message
System
displays
error
message
mentioning
that
the
username
has
already
been
taken
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
1
-
c
To
Test
whether
the
system
displays
error
message
or
not
if
the
email
is
invalid.
Email:
democracy
System
should
display
the
proper
error
message
System
displays
error
message
mentioning
that
the
username
has
already
been
taken
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
1
-
e
To
Test
whether
the
system
displays
error
message
or
not
if
the
email
already
exists
Email:
democracy011@gmail.com
System
should
display
the
proper
error
message
System
displays
error
message
mentioning
that
the
user
with
this
email
already
exists.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
1
-
f
To
Test
whether
the
system
adds
new
staff
on
providing
all
information
correctly
or
not
Staff
Name:
amulya
Lohani
Address:
Phutung
Phone:
9841082351
Marital
Status:
unmarried
Username:
amulya
Email:
democracy012@gmail.com
Password:
test12345
Retype
Password:
test12345
System
should
display
the
proper
success
message
System
displays
success
message
mentioning
account
has
been
created.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
successful.
B.
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
2
-
a
To
Test
whether
the
system
accepts
invalid
username/password
combination.
Invalid
email:
democracy011@gmail
System
should
display
the
proper
error
message
System
displays
error
message
mentioning
that
the
email
is
invalid
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
2
-
b
To
Test
whether
the
system
accepts
invalid
username/password
combination.
Email:
empty
Password:
empty
System
should
display
the
proper
error
message
System
displays
error
message
mentioning
that
the
email
and
password
field
is
required.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
2
-
d
To
Test
whether
the
system
is
able
to
log
in
the
staff
on
providing
correct
email
and
password.
Email:
democracy011@gmail.com
Password:
valid
password
System
should
be
able
to
log
in
the
staff
into
the
system
Staff
gets
navigated
to
the
dashboard.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
Unsuccessful.
3
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
3
To
Test
whether
the
information
of
the
staff
can
be
edited
or
not.
Current
Address:
Hattisar
New
Address:
Nuwakot
System
should
be
able
to
update
the
new
address
of
the
staff
The
details
of
the
staff
gets
updated
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
4.
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
4
To
Test
whether
the
staff
details
can
be
deleted
from
the
system
or
not.
Removing
staff
named
Ammarman
Shrestha
System
should
be
able
to
delete
the
details
of
selected
staff
The
details
of
the
staff
gets
deleted
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
5
To
Test
Attendance
recording
in
the
system.
-
System
should
be
able
to
record
the
checkin
and
checkout
time
of
the
staff
The
checkin
and
checkout
time
of
the
staff
is
recorded
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
6
To
Check
salary
calculation
module
Staff:
Siddhartha
Bhatta
Month:
july
System
should
be
display
the
salary
for
selected
staff
The
system
displays
salary
for
the
selected
staff.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
7
To
Check
whether
the
salary
report
is
generated
or
not
Staff:
Siddhartha
Bhatta
Month:
july
System
should
be
display
the
salary
report
for
selected
staff
The
system
displays
salary
report
for
the
selected
staff.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
Figure
38:
Selecting
the
staff
for
whom
salary
report
needs
to
be
generated
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
8
To
Check
whether
the
new
holiday
can
be
added
Date:
2015/02/13
Holiday
Description:
Purnima
Diwas
System
should
record
the
added
holiday
The
system
displays
added
holiday
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
9
To
Check
whether
the
attendance
report
is
generated
or
not.
Start
Date:
2015/02/13
End
Date:
2015/01/09
System
should
display
attendance
report
The
system
displays
attendance
report.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
Test
Case
NO.
Test
Case:
Test
Data:
Expected
Outcome:
Actual
Outcome:
Test
Result:
10
To
Check
whether
the
system
accepts
new
office
time
or
not.
Date:
2015/28/01
Entry
Time:
10:00
Exit
Time:
13:00:31
System
should
add
new
time.
The
system
displays
new
time.
Expected
outcome
meets
Actual
Outcome.
Hence
Test
result
is
successful
CONCLUSION
After
few
difficulties,
finally
the
report
of
Software
Engineering
II
has
been
completed.
In
this
coursework,
we
were
provided
a
case
study,
according
to
which,
an
Attendance
and
Payroll
system
had
to
be
built
for
Third
Pole
Connects.
For
the
development
of
the
software
PHP
is
used
as
the
main
programming
language.
This
report
includes
the
design
of
the
whole
system
along
with
brief
description
of
such
chart
diagrams.
After
the
completion
of
the
course
work,
we
have
got
good
practical
knowledge
on
completing
and
designing
the
system.
We
have
gained
good
skills
on
preparing
ER
diagram,
UML
diagrams
like
sequence
diagram,
collaboration
diagram,
state
chart
diagram
etc.,
data
dictionary,
class
diagram,
interface
design
and
actual
software
development.
Such
design
techniques
are
very
critical
for
professional
software
development.
More
precisely,
this
coursework
will
serve
as
a
solid
base
for
us
in
the
area
of
software
design
and
development.
We
will
continue
to
research
and
explore
more
on
it
which
could
be
very
helpful
in
future.
We
have
also
got
good
experience
on
working
successfully
in
a
small
group
to
a
given
time
scale.
Regarding
documentation
and
building
the
system,
we
have
tried
our
best.
We
have
tried
to
maintain
clarity
in
each
part.
We
think
our
overall
work
is
good
and
we
are
hoping
for
a
good
result.
APPENDIX