Vous êtes sur la page 1sur 44

CS6110 Software Engineering

SESSION-SP2019
SEC-A

LAB REPORT
CASE STUDY- Payroll Management System

BACHELOR OF ENGINEERING
IN
COMPUTER SCIENCE AND ENGG
SEMESTER-VI

BY

Ishika
BE/10089/16
Pragati Rana
BE/10097/16
Shraddha Toppo
BE/10144/16
TEAM NAME :Invictus

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING
BIRLA INSTITUTE OF TECHNOLOGY
MESRA-835215, RANCHI
2019

Course Outcomes

After the completion of this course, students will be able to:

1 To prepare an IEEE-SRS from the given case study and draw use case
diagrams, DFD, architectural design, and also prepare use case description
document.

2 To create a complete UML class diagram for the given case study and apply
iterative process to refine the class diagram if there is a change in requirements
3 To create sequence, collaboration and state chart diagrams to analyze the
dynamic behavior of the system.
4 To create activity diagram, component and deployment diagram to analyze the
environmental and deployment view of the system..

5 Test the programs using software testing tools Like


JUnit,Selenium,LDRA,Jumble

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
TABLE OF CONTENTS

SL No Assign No and Topic Date of Submission Page No

1. Extract the Business 9-4-19 6-9


functions from the
given case study and
draw a use case
diagram. Also prepare
a use case description
document. Draw the
architectural design of
the system.

2. Draw a DFD for the 9-4-19 10-21


given case study. Also
prepare an IEEE-SRS

3. Do class analysis along 9-4-19 22-25


with associations to
prepare an initial class
diagram.

4. Refine the class 9-4-19 26-27


diagram to get the final
complete class diagram

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
5. Using Use case diagram 9-4-19 28-31
and class diagram
construct the
interaction diagrams
like sequence,
collaboration and state
chart diagram.

6. Draw an Activity 9-4-19 32-33


diagram to capture the
various activities
involved while
capturing the
behavioural aspect of
the system.

7. Draw the component 9-4-19 34-35


and deployment
diagram to analyse the
environmental and
deployment view of
the system.

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
8. Learn and analyse the 9-4-19 36-44
usage of software
testing tools.: JUnit,
Jmeter, Selenium,
LDRA Etc

LIST OF FIGURES

Fig. No. Name of Figure Page No.


3.1 FBBN COCOMO II Software Estimation Framework 25

3.2 FBBN for Product Factor 26

3.3 FBBN for Personnel Factor 27

3.4 Model representing Scale Factors 28

3.5 Model depicting size and scale factors 29

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
ASSIGNMENT 1
Question: Extract the Business functions from the given case study and draw a use
case diagram. Also prepare a use case description document. Draw the
architectural design of the system.

Business Function : A process or operation that is performed routinely to carry out


a part of the mission of an organization. In this we shoe the sequence of operation
being carried out in the Payroll Management System.

1. Save the employees details(employee no., name, address, designation,


department,achievements).
2. Assignment of the employee ID to each employee.
3. Account details (Salary of each employee, deduction, TA, DA, HRA, other
allowances, PF).
4. No. of leave taken by each employee (EID).
5. Get the deduction details (Income Tax).
6. Attendance ( No. of working days).
7. Per day salary calculation (Salary, ID, no. of working days).
8. Salary slip (Manager’s name, salary, Employee name, ID, Department).
9. Manager Details (MID, name, department, no. of employees assigned).
10.Admin (name) --->(extends)( employee details). Detailed salary report ----
>(extends) all functions except admin

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Use Case: A use case is a methodology used in system analysis to identify, clarify,
and organize system requirements. The use case is made up of a set of possible
sequences of interactions between systems and users in a particular environment
and related to a particular goal.

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Use Case Description Document

Use Case ID: 8997144


Use Case Name: Detailed Salary Report
Created By: Invictus Last Updated By: Invictus
Date Created: 16th Jan ,2019 Date Last Updated: 16th Jan ,2019

Actor: Manager, Employee


Description: It is used for detailed salary calculation and generate salary slip,
deduction report and detailed salary report after checking the
leave status.
Preconditions: Account should exist; employees should be given an employee
ID.
Postconditions: Account is created, Salary is calculated and Report is generated.
Frequency of Use: It will depend on the number of employee in the company.
Normal Course of Events: 1.Admin creates the account and handles all the employee
account.
2.The login and signup details are being fed to the system which
includes the employee details and the account details.
3.Employee ID is assigned.
4.After checking no. of leaves taken by the employee salary is
generated using the basic pay and allowances.
5.Manager generates the salary slip, detailed salary report and
deduction report.
Includes: Salary slip and Detailed Salary report .
Assumptions: Every employee must have an account. Employee should be
assigned to the manager.
Admin has the access to all the personal details of the employee
and can update it.
Information of a particular employee must not be accessible by
other employee.
Notes and Issues: The employee didn’t create the account then there will be a
problem. Admin will solve all the database and login related
issues.

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Use Case ID: Be8997144
Use Case Name: Leave details
Created By: Invictus Last Updated By: Invictus
Date Created: 16th Jan ,2019 Date Last Updated: 16th Jan ,2019

Actor: Manager, Employee


Description: It is used to record number of leaves taken by the employee .
Preconditions: Attendance is mandatory for every employee.
Postconditions: After knowing the leave details, per day salary calculation is
done and final salary is generated.
Frequency of Use: It will depend on the number of employee in the company.
Special Requirement: If the employee fails to give the attendance then a message will
go to the employee indicating the same. Biometric system is
connected to the main software to record the attendance.
Normal Course of Events: 1.Employee gives his attendance.
2. Per day salary calculates the salary for each day.
3.Leave taken by the employee is recorded.
4. Final salary is generated after taking into consideration the
leave details and salary slip and detailed salary report is
generated.
Includes: Account details and attendance.
Assumptions: Every employee must have an account. Employee should be
assigned to the manager.
Admin has the access to all the personal details of the employee
and can update it.
Information of a particular employee must not be accessible by
other employee.
Notes and Issues: If the employee fails to update his/her attendance then for that
salary won’t be calculated.

Architectural Design: Concept that focuses on the components or elements of a


structure or system and unifies them into a coherent and functional whole,
according to a particular approach in achieving the objectives under the given
constraints or limitations. See also behavioral design.

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
CONCLUSION

In this assignment we learned how to write business function and draw use case
diagram using the same. We used the use case template to fill the use case
document. We learnt about the architectural design and its different types and
deduced that data flow architecture is suitable for our case study that is Payroll
Management System.

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
ASSIGNMENT 2

Question :Draw a DFD for the given case study. Also prepare an IEEE-SRS

Data Flow Diagram: A two-dimensional diagram that explains how data is


processed and transferred in a system. The graphical depiction identifies each
source of data and how it interacts with other data sources to reach a common
output.

Level 0

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Level 1

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Level 2

IEEE SRS Document: Software Requirements Specifications, also known as


SRS, is the term used to describe an in-depth description of a software product to
be developer.

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements
Specification
for

PAYROLL MANAGEMENT
SYSTEM
Version 1.0 approved

Prepared by Invictus

Ishika(BE/10089/16)
Pragati Rana(BE/10097/16)
Shraddha Toppo(BE/10144/16)

BIT Mesra

23/1/2019

Copyright © 1999 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
Software Requirements Specification for <Project> Page xv

Table of Contents
Table of Contents .........................................................................................................................xv
Revision History ...........................................................................................................................xv
1. Introduction ............................................................................................................................16
1.1 Purpose........................................................................................................................................... 16
1.2 Document Conventions .................................................................................................................. 16
1.3 Intended Audience and Reading Suggestions ................................................................................ 16
1.4 Product Scope ................................................................................................................................ 16
1.5 References ...................................................................................................................................... 16
2. Overall Description ................................................................................................................16
2.1 Product Perspective........................................................................................................................ 16
2.2 Product Functions .......................................................................................................................... 17
2.3 User Classes and Characteristics ................................................................................................... 17
2.4 Operating Environment .................................................................................................................. 17
2.5 Design and Implementation Constraints ........................................................................................ 17
2.6 User Documentation ...................................................................................................................... 18
2.7 Assumptions and Dependencies .................................................................................................... 18
3. External Interface Requirements .........................................................................................18
3.1 User Interfaces ............................................................................................................................... 18
3.2 Hardware Interfaces ....................................................................................................................... 18
3.3 Software Interfaces ........................................................................................................................ 18
3.4 Communications Interfaces ........................................................................................................... 18
4. System Features .....................................................................................................................18
4.1 System Feature 1 ............................................................................................................................ 18
4.2 System Feature 2 (and so on) ......................................................................................................... 20
5. Other Nonfunctional Requirements .....................................................................................20
5.1 Performance Requirements ............................................................................................................ 20
5.2 Safety Requirements ...................................................................................................................... 20
5.3 Security Requirements ................................................................................................................... 21
5.4 Software Quality Attributes ........................................................................................................... 21
5.5 Business Rules ............................................................................................................................... 21
6. Other Requirements ..............................................................................................................21
Appendix A: Glossary..................................................................................................................21
Appendix B: Analysis Models .....................................................................................................21
Appendix C: To Be Determined List ..........................................................................................21

Revision History
Name Date Reason For Changes Version
Software Requirements Specification for <Project> Page 16

Introduction

Payroll System is the heart of any Human Resource System of an organization. The solution has to
take care of the calculation of salary as per rules of the company, income tax calculation and various
deductions to be done from the salary including statutory deductions like Income tax and provident
fund deductions. It has to generate pay slips, detailed salary report and deduction report.

Purpose

Main aim of developing Employee Payroll Management is to provide an easy way not only to
automate all functionalities involved managing leaves and Payroll for the employees of the company
with details about usage of leave facility and Salaries paid or to be paid to employees.

Document Conventions

Intended Audience and Reading Suggestions

It is made for the employee of the enterprise to check their salary and leave details.

Product Scope

The application works in multiple PC’s installed on multiple computers by sharing same database by
which users of different departments can use it sitting in different location simultaneously.

In our software, the employee are required to enter their personal details and the account detail. It
includes the actors – employees, manager, biometric system and admin. After getting the complete
attendance and leave report final salary is calculated and slip is generated.

References

1. Wikipedia.org

2. Google.com

3. Studylib.net

Overall Description

Product Perspective

The software is specifically developed to cater the company employees leave management, is totally
self contained and works efficiently. It provides simple database rather than the complex ones for
high requirements and it provides good and easy Graphical User Interface to both new as well as
experienced user of the computer.
Software Requirements Specification for <Project> Page 17

Product Functions

Employee module
 Employee details
 Account details
Leave module
 Leave details
 Attendance
Salary Module
 Per day salary calculation
 Detailed salary report
 Salary slip
 Deduction report

User Classes and Characteristics

End Users
 No specific knowledge or skills are required from the end user.
 End user should have basic idea about computer operations and database
Administrator
 Administrator must be capable to manage user rights.
 If the network connection does not work properly than our system
should not work as intended.
 Also that is assumed that the product is installed properly at web
server.
 This system will not take care of any virus problem, which might occur
either on the Client or the server system. Avoiding the use of pirated

software and ensuring that floppies and other removable media are

scanned for viruses before use could minimize the possibility of viral

infection.
 Recovery of data after a system crash will be possible only if backups are taken at regular
intervals

Operating Environment

Design and Implementation Constraints

 The system runs under Windows XP / 7 / 8 / 10 or any version of Linux.

 The application is developed on SQL server as back end.


Software Requirements Specification for <Project> Page 18

User Documentation

Assumptions and Dependencies

 The product must have an interface which is simple enough to


understand.
 All necessary hardware and software are available for
implementing and use of the tool.
 The proposed system would be designed, developed and
implemented based on the software requirements specifications

document.
 End users should have basic knowledge of computer and we also
assure that the users will be given software training

documentation and reference material.


 The system is not required to save generated reports.

External Interface Requirements

User Interfaces

Hardware Interfaces

 Memory minimum of 512MB RAM (1GB Recommended)

 Hard disk of 40 GB

Software Interfaces

 Operating System Windows 10.

 Backend MS SQL Server

Communications Interfaces

Communication interfaces can be provided through email, web browser, network server
communication protocol, electronic forms etc. For this we can use communication standard such as
FTP or HTTP to provide security using encryption algorithm.

System Features

System Feature 1

Login/signup
Software Requirements Specification for <Project> Page 19

Description and Priority

It takes the username and password of the employee or if the account is not created
then the employers are required to create the account. Through this the employers can
access their payroll management system.

Stimulus/Response Sequences

Upon entering the account name and password employer can access their payroll
account. After the login/signup the employers have to enter their employee and
account details.

Functional Requirements

The user should have an account if not then the employee are required to create an account.

System Feature 2

Leave-details

Description and Priority

In this the details of the leave taken by the employee along with their leave application
is present. In this biometric system is linked which gives the attendance report of all
the employee.

Stimulus/Response Sequences

All the leave details along with attendance is stored in the database which is required
for the final salary calculation.

Functional Requirements

The user should have an account if not then the employee are required to create an account.

All the employee are required to do their attendance using the biometric system. If an

employee has to take leave then they have to give prior leave application on their payroll

account.
Software Requirements Specification for <Project> Page 20

System Feature 3

Salary-details

Description and Priority

In this the account details and leave details of all the employees are accessed along
with their attendance report then the final salary calculation is done using the per day
salary calculation function. Finally the salary slip, detailed salary report and deduction
report is generated.

Stimulus/Response Sequences

All the leave details along with attendance is stored in the database which is required
for the final salary calculation.

Functional Requirements

The user should have an account if not then the employee are required to create an account.

All the employee are required to do their attendance using the biometric system. Attendance

report and leave report is required to generate the final salary.

Other Nonfunctional Requirements

Performance Requirements

 The overall system should be fast and error free.


 It should have built in error checking and correction facilities.
 The system should be able to handle large amount of data comfortably

Safety Requirements

By incorporating a robust and proven SQL into the system, reliable performance and integrity of data
is ensured. There must be a power backup for server system.
Software Requirements Specification for <Project> Page 21

Security Requirements

Sensitive data is protected from unwanted access by users appropriate technology and
implementing strict user access criteria.

Software Quality Attributes

Reliability
 In order to ensure reliability, this system is being designed using software that is established
to be stable and easy to use.
Availability
 This system is designed to run 24/7 and be readily available to the user.
Security
 The access to the software is given only to valid operators.
 We need a specific ID and password to get access to the software.

Business Rules

<List any operating principles about the product, such as which individuals or roles can
perform which functions under specific circumstances. These are not functional
requirements in themselves, but they may imply certain functional requirements to enforce
the rules.>

Other Requirements
<Define any other requirements not covered elsewhere in the SRS. This might include
database requirements, internationalization requirements, legal requirements, reuse
objectives for the project, and so on. Add any new sections that are pertinent to the project.>

Appendix A: Glossary
<Define all the terms necessary to properly interpret the SRS, including acronyms and
abbreviations. You may wish to build a separate glossary that spans multiple projects or the
entire organization, and just include terms specific to a single project in each SRS.>

Appendix B: Analysis Models


<Optionally, include any pertinent analysis models, such as data flow diagrams, class
diagrams, state-transition diagrams, or entity-relationship diagrams.>

Appendix C: To Be Determined List


<Collect a numbered list of the TBD (to be determined) references that remain in the SRS so
they can be tracked to closure.>
Software Requirements Specification for <Project> Page 22

CONCLUSION

In this assignment we draw data flow diagram for level-0, level-1 and level -2.
We then use the IEEE SRS template to write the SRS document. Data flow
shows the data flow for a particular system in this case it is drawn to show how
the data flows between operation in the payroll Management System. The SRS
document gives the in-depth knowledge about the resource required by the
System.
Software Requirements Specification for <Project> Page 23

ASSIGNMENT 3

Question: Do class analysis along with associations to prepare an


initial class diagram.
Problem Statement

Login, Admin, Manager, Employee, Take-Leave, Attendance, Salary-slip,


Detailed Salary-Slip, Employee-Details, Deduction-slip, Salary, Modify
Employee, Access Employee

Bad Classes

Deduction-slip, Salary, Modify Employee, Access Employee, Employee-Details

Good Classes

Login, User, Admin, Employee, Manager, Salary-Slip, Take-leave, Detailed-


Slip

Data Dictionary

1. Login-It allows the user to access his/her account details. Employee can
get his salary slip. Manager generates the salary slip and detailed salary
slip.
2. User-Generalizes in three parts managers, admin, employee.
3. Admin-Admin has permissions to access and modify the employee
details.
4. Employee-Takes leaves and can edit its details.
5. Manager-Generates salary-slip and detailed-slip.
6. Take-Leave-Employee can apply for leave.
7. Salary-Slip-Generates Slip.
8. Detailed-Slip-Generates Slip including deduction report, employee
details, account details.
Software Requirements Specification for <Project> Page 24

Initial Class Diagram


Software Requirements Specification for <Project> Page 25

Conclusion

In this assignment we learn about the class diagram and how to draw the initial
class diagram and perform the class analysis. In initial class diagram, we write
the problem statement. We analyse the good classes and bad classes. After
analysis we define good classes in the form of data dictionary.
Software Requirements Specification for <Project> Page 26

ASSIGNMENT 4

Question : Refine the class diagram to get the final complete class diagram.

Final Class Diagram


Software Requirements Specification for <Project> Page 27

CONCLUSION

In this Assignment we draw the final class diagram after refining the initial
class diagram. We find the good classes, redundant classes and bad classes, then
after removing the bad classes and redundant classes, we draw the final class
diagram.
Software Requirements Specification for <Project> Page 28

ASSIGNMENT 5

Question: Using Use case diagram and class diagram construct the
interaction diagrams like sequence, collaboration and state chart diagram.

Sequence Diagram:- A sequence diagram simply depicts interaction


between objects in a sequential order i.e. the order in which these interactions
take place. It describe how and in what order the objects in a system function .
Software Requirements Specification for <Project> Page 29

Collaboration Diagram:- A collaboration diagram, also called a


communication diagram or interaction diagram, is an illustration of the
relationships and interactions among software objects in the Unified Modeling
Language (UML).
Software Requirements Specification for <Project> Page 30

State Chart Diagram:- Statechart diagram is one of the five UML diagrams
used to model the dynamic nature of a system. They define different states of an
object during its lifetime and these states are changed by events. Statechart
diagrams are useful to model the reactive systems.

State chart for Login:

State chart for Leave Details:


Software Requirements Specification for <Project> Page 31

Conclusion

In this assignment we draw the sequence, collaboration and state-chart diagram


using the use case and class diagram. Sequence diagram is used to depict the
order in which the operation takes place in the payroll management system.
Collaboration diagram is made using the sequence diagram. State chart diagram
is used to show state of the particular class.
Software Requirements Specification for <Project> Page 32

ASSIGNMENT 6
Question : Draw an Activity diagram to capture the various activities involved
while capturing the behavioural aspect of the system.

Activity Diagram: In Unified Modeling Language (UML), an activity diagram


is a graphical representation of an executed set of procedural system activities
and considered a state chart diagram variation. Activity diagrams describe
parallel and conditional activities, use cases and system functions at a detailed
level.
Software Requirements Specification for <Project> Page 33

CONCLUSION

In this Assignment we draw the activity diagram. We divide the


system into employee, admin, manager and database. Employee first
sign up to create his/her account then updates his detail. After creation
of account the employee can login to do attendance via biometric
system or he can send in his leave application. It is upto the manger to
accept or reject his leave. The final salary calculation is done by the
manager using the account details and then salary slip and detailed
salary report along with the deduction report is generated.
Software Requirements Specification for <Project> Page 34

ASSIGNMENT 7
Question : Draw the component and deployment diagram to analyze the
environmental and deployment view of the system.

Component Diagram : Component diagrams are different in terms of nature


and behavior. Component diagrams are used to model the physical aspects of a
system.
Software Requirements Specification for <Project> Page 35

Deployment Diagram: Deployment diagrams are used to visualize the


hardware processors/ nodes/ devices of a system, the links of communication
between them and the placement of software files on that hardware.

CONCLUSION

In this assignment we draw the component and deployment diagram for the
payroll management system to analyze the environmental and deployment view
of the system. Deployment diagrams are typically used to visualize the
physical hardware and software of a system.
Software Requirements Specification for <Project> Page 36

ASSIGNMENT 8
Question : Learn and analyse the usage of software testing tools.: JUnit, Jmeter,
Selenium, LDRA Etc.

Selenium
Software Requirements Specification for <Project> Page 37

CONCLUSION

Selenium is a free (open source) automated testing suite for web applications
across different browsers and platforms. It is quite similar to HP Quick Test Pro
(QTP now UFT) only that Selenium focuses on automating web-based
applications. Testing done using Selenium tool is usually referred as Selenium
Testing.
Software Requirements Specification for <Project> Page 38

J UNIT

CONCLUSION:

JUnit is a Regression Testing Framework used by developers to implement unit


testing in Java, and accelerate programming speed and increase the quality of
code. JUnit Framework can be easily integrated with either of the following :
Eclipse , Ant and Maven.
Software Requirements Specification for <Project> Page 39

LDRA
Software Requirements Specification for <Project> Page 40
Software Requirements Specification for <Project> Page 41
Software Requirements Specification for <Project> Page 42
Software Requirements Specification for <Project> Page 43
Software Requirements Specification for <Project> Page 44

CONCLUSION:

The LDRA tool suite helps you build quality into your software development
life-cycle. Our software standards compliance, testing, and verification tools are
based on industry best practices to help you develop high quality safety- and
security-critical products. Many users of the LDRA tool suite are required to
certify their software. The LDRA tool suite’s open and extensible platform is
unique in its integration of software life-cycle traceability, static and dynamic
analysis, unit test and system-level testing on virtually any host or target
platform.

Vous aimerez peut-être aussi