Software Requirements Specification
(SRS)
FOR
SOFTWARE PERSONNEL MANAGEMENT SYSTEM
Minor Project
Submitted By Rizul Kasana (Roll No: 24001001115)
Course Software Engineering
Technology used HTML , CSS , JavaScript
Development Waterfall Model
Model
Table of Contents
1. Introduction
a. Purpose
b. Scope
c. Definitions, Acronyms, and Abbreviations
d. Overview
e. Problem Statement
2. Overall Description
a. Product Perspective
b Product Functions
c. Product Features
d. User Classes and Characteristics
e. Design and Implementation Constraints
3. Development Methodology: Waterfall Model
a. Requirement Analysis
b. System Design
c. Implementation
d. Testing
e. Deployment
4. System Requirements
a. Functional Requirements
b. Non-Functional Requirements
5. Technologies and Tools
a. Frontend Technologies
i. HTML
ii. CSS
iii. JavaScript
b. Data Storage
6. System Design
a. Overall System Design
b. User Interface Design
c. Database Design (Logical)
d. Entity Relationship (ER) Diagram Description
e. Module Description
7. Testing Strategy
a. Black Box Testing
b. White Box Testing
8. Layout Design
a. Home Page Layout
b. Admin Panel Layout
c. Employee Panel Layout
d. Common Layout Features
9. Conclusion
1. Introduction
a. Purpose
The purpose of this Software Requirements Specification (SRS) document is to describe the
requirements of the Software Personnel Management System. This document provides a clear
understanding of system functionality, design, development model, and testing approach. It is
intended for academic evaluation and project development.
b. Scope
The Software Personnel Management System is a web-based frontend application designed to
manage employee-related activities such as employee records, attendance, leave management,
job vacancies, and work tracking. The system contains two panels: Admin Panel and Employee
Panel. The project is developed using only HTML, CSS, and JavaScript and is intended as a minor
project.
c. Definitions, Acronyms, and Abbreviations
Term Definition
SRS Software Requirements Specification
SPMS Software Personnel Management System
HR Human Resources
UI User Interface
Admin System Administrator with full access rights
d. Overview
This document explains the system overview, problem statement, software requirements,
development model, system design, ER diagram, and testing techniques including black box and
white box testing.
e. Problem Statement
Managing employee records, attendance, leave applications, and work details manually is time-
consuming and prone to errors. Small organizations and institutions require a simple and easy-
to-use system to manage personnel information efficiently. The proposed Software Personnel
Management System aims to automate these activities using a web-based solution, reducing
paperwork and improving accuracy.
2. Overall Description
a. Product Perspective
The Software Personnel Management System is a standalone, frontend-based web application
developed as a minor academic project. The system does not rely on any backend server or
database and works entirely on client-side technologies. All operations such as storing
employee details, attendance records, and leave information are handled using JavaScript logic
and browser-based storage for demonstration purposes.
The application follows a role-based structure with two major panels: Admin Panel and
Employee Panel. Each panel provides a separate interface and set of functionalities according to
user responsibilities. The system is designed to be simple, easy to understand, and suitable for
small organizations or educational demonstrations.
b. Product Functions
The major functions of the Software Personnel Management System include employee record
management, attendance tracking, leave management, job vacancy handling, and daily work
tracking. These functions help in reducing manual paperwork and improve efficiency in
managing personnel-related information.
c. Product Features
Admin Panel Features (Detailed): -
Employee Record Management: Admin can add new employees by entering basic details such
as name, designation, department, joining date, and contact information. Admin can also view
and manage employee records.
Attendance Monitoring: Admin can view employee check-in and check-out times along with
attendance history.
Leave Management: Admin receives leave applications submitted by employees and can
approve or reject them based on requirements.
Job Vacancy Management: Admin can add job vacancies with role description and required
qualifications.
Work Monitoring: Admin can view daily work updates submitted by employees.
Employee Panel Features (Detailed): -
Profile Management: Employees can view their personal details.
Attendance System: Employees can mark check-in and check-out to record daily attendance.
Leave Application: Employees can apply for leave by submitting leave details and reason.
Attendance History: Employees can view their past attendance records.
Daily Work Update: Employees can submit details of work performed during the day.
d. User Classes and Characteristics
Administrator: Responsible for managing employee data, job vacancies, attendance records,
and leave approvals. Admin users are expected to have basic computer knowledge.
Employee: Uses the system to mark attendance, apply for leave, and update daily work.
Employees may have varying levels of technical knowledge.
e. Design and Implementation Constraints
The system is implemented as a frontend-only application without backend server
infrastructure or traditional database systems. All data is stored locally in the browser using
localStorage API, which limits data sharing between different devices and browsers. The system
must implement data export and import functionality to enable data portability. The
application must adhere to browser security policies and same-origin restrictions. The system
design must ensure data persistence across browser sessions while maintaining security and
preventing unauthorized access. The application must implement proper data validation and
sanitization to prevent injection attacks and ensure data integrity.
3. Development Methodology: Waterfall Model
The Software Personnel Management System is being developed using the Waterfall Model, a
sequential software development process that follows a linear and systematic approach. This
methodology was chosen for its structured nature, clear milestones, and comprehensive
documentation requirements, making it particularly suitable for an academic project with well -
defined requirements and a fixed timeline.
The Software Personnel Management System is developed using the Waterfall Model, which
follows a sequential development approach.
a. Requirement Analysis
In this phase, system requirements were identified based on user needs and academic
guidelines.
b. System Design
The overall structure, page layout, data flow, and ER diagram were designed in this phase.
c. Implementation
The system was implemented using HTML for structure, CSS for styling, and JavaScript for
functionality.
d. Testing
The system was tested using black box and white box testing techniques to ensure correctness.
e. Deployment
The project is deployed as a web application and can be accessed through a browser.
4. System Requirements
a. Functional Requirements
• The system shall allow admin and employees to log in.
• The admin shall be able to add and manage employee records.
• The employee shall be able to mark check-in and check-out.
• The employee shall be able to apply for leave.
• The admin shall be able to approve or reject leave requests.
• The admin shall be able to add job vacancies.
• The system shall display attendance history.
b. Non-Functional Requirements
• The system shall be user-friendly.
• The system shall provide fast response time.
• The system shall run on modern web browsers.
• The system shall store data locally for demonstration.
5. Technologies and Tools
a. Frontend Technologies
i. HTML (HyperText Markup Language)
HTML is used to create the basic structure of the web pages. It defines the layout of elements
such as forms, tables, buttons, and text. HTML helps in organizing the content of the application
in a clear and structured manner.
ii. CSS (Cascading Style Sheets)
CSS is used to design and style the web pages. It is responsible for the visual appearance of the
system including colors, fonts, layout, and spacing. CSS makes the user interface attractive and
user-friendly.
iii. JavaScript
JavaScript is used to add functionality and interactivity to the system. It handles user actions
such as login validation, attendance marking, leave application, and data storage. JavaScript
also controls the dynamic behavior of web pages.
b. Data Storage
The Software Personnel Management System is a frontend-only minor project and does not use
any backend server or database system such as MySQL, MongoDB, or Oracle.
Since the project is developed only using HTML, CSS, and JavaScript, simple browser -based
localStorage is used to store data temporarily for demonstration purposes. Local storage allows
data to be saved in the web browser in the form of key–value pairs.
In this project, localStorage is used to store:
• Employee basic details
• Attendance records (check-in and check-out time)
• Leave application details
• Job vacancy information
• Daily work updates
The data stored in localStorage remains available even after page refresh, but it is limited to the
same browser and device. This approach is suitable for academic learning and fulfills the
requirements of a frontend-only minor project.
6. System Design
a. Overall System Design
The system design focuses on simplicity and clarity. The application is divided into multiple web
pages connected through navigation links. Each page is designed according to its functionality,
ensuring ease of use for both admin and employee users.
b. User Interface Design
The user interface is designed using HTML and CSS with a clean and structured layout. The
homepage provides login options for both admin and employee users. After login, users are
redirected to their respective dashboards. Forms, tables, and buttons are used to collect and
display information clearly. The layout is kept consistent across all pages to improve usability.
c. Database Design (Logical)
Although no backend database is used, the system follows a logical database design approach.
Data entities such as Employee, Attendance, Leave, and Job Vacancy are represented in
structured formats using JavaScript objects. These entities are interconnected logically to
represent real-world relationships.
d. Entity Relationship (ER) Diagram Description
The ER diagram represents the structure of data and relationships among entities used in the
system. The Employee entity acts as the central entity and stores employee details. Each
employee can have multiple attendance records and leave applications. The Attendance entity
stores daily check-in and check-out details. The Leave entity stores leave application details
including status. The Job Vacancy entity stores information related to job openings managed by
the admin. The relationships shown in the ER diagram help in understanding data flow and
system structure.
e. Module Description
• Login Module: Handles authentication for admin and employee users.
• Employee Module: Manages employee records and profile details.
• Attendance Module: Records and displays attendance information.
• Leave Module: Manages leave application and approval process.
• Job Vacancy Module: Handles job vacancy creation and display.
• Work Update Module: Stores daily work details of employees.
7. Testing Strategy
a. Black Box Testing
Black box testing is performed without knowledge of internal code structure.
Test Case Description Expected Result
Login Valid credentials Successful login
Login Invalid credentials Error message
Leave Apply Submit leave form Leave request submitted
Leave Approval Admin action Status updated
b. White Box Testing
White box testing focuses on internal code logic. - Statement coverage - Branch coverage
8. Layout Design
a. Home Page Layout
The home page contains the system title and login options. Separate login buttons or forms are
provided for Admin and Employee users. The layout is centered and simple to avoid confusion
for users.
b. Admin Panel Layout
The Admin Panel layout consists of a dashboard with a navigation menu. The menu provides
options such as Employee Management, Attendance Records, Leave Requests, Job Vacancies,
and Work Details. The main content area displays forms and tables related to the selected
option. This layout helps the admin to manage all activities efficiently from a single interface.
c. Employee Panel Layout
The Employee Panel layout includes options such as My Profile, Check-In/Check-Out, Apply
Leave, Attendance History, and Daily Work Update. The layout is kept simple so that employees
can easily perform daily tasks without any technical difficulty.
d. Common Layout Features
• Consistent header and navigation menu across pages
• Forms and tables arranged in a readable format
• Clear buttons and labels for actions
• Simple color scheme for better readability
This layout design ensures clarity, usability, and smooth interaction for both admin and
employee users.
9. Conclusion
The Software Personnel Management System provides a simple and effective solution for
managing employee-related activities. Developed using frontend technologies and the
Waterfall Model, the system fulfills all academic requirements. The project demonstrates
practical understanding of software engineering concepts such as requirement analysis, design,
testing, and implementation.
Upon successful completion and deployment, the Software Personnel Management System will
streamline HR operations, improve efficiency in personnel management, enhance employee
experience through self-service features, and provide valuable insights through reporting
capabilities. The system represents a solid foundation that can be further enhanced with
additional features and capabilities as organizational needs evolve.
--- End of Document ---