You are on page 1of 22

Gym Management System

Software Requirements Specification

Course Code: BITE307P

Course Title: Software Engineering Lab

Slot: L23+L24

Faculty: Sweta Bhattacharya

Team Members:

Heet Mehta 21BIT0584


Khush Sanghavi 21BIT0595
Geet Pawade 21BIT0582
Anshuman Gupta 21BIT0271

1|P age
Revision History
Date Version Description Author

<06/01/2023> 1.0 WBS generated Khush Sanghavi,Anshuman


Gupta,Heet Mehta,Geet
Pawade
<08/01/2023> 1.0 Introduction completed Khush Sanghavi,Anshuman
Gupta,Heet Mehta,Geet
Pawade
<10/01/2023> 1.0 Specific Requirements Completed Khush Sanghavi,Anshuman
Gupta,Heet Mehta,Geet
Pawade
<13/01/2023> 1.0 Architecture And User Flow Diagrams Khush Sanghavi,Anshuman
completed Gupta,Heet Mehta,Geet
Pawade

2|P age
Table of Contents
1. Introduction 4
1.1 Purpose 4
1.2 Scope 4
1.3 Definitions, Acronyms and Abbreviations 5
1.4 References 6
1.5 Technologies to be used 6
1.6 Overview 7

2. Overall Description 7
2.1 Product Perspective 7
2.2 Product Functions 7
2.3 User Characteristics 8
2.4 Work Breakdown Structure 9
2.5 Constraints 13
2.6 User- Flow Diagrams 14
2.7 Architecture Diagrams 19

3. Specific Requirements 20
3.1 Use-Case Reports 21
3.2 Supplementary Requirements 21

3|P age
Software Requirements Specification
1. Introduction
1.1 Purpose

The purpose of a gym management system is to help gym owners and managers efficiently and
effectively manage the day-to-day operations of their gym. This can include tasks such as
member management, class scheduling, financial tracking, and employee management. A gym
management system can also be used to track member progress, create workout plans, and
generate reports on gym usage and revenue. The ultimate goal of a gym management system is
to streamline operations, improve member satisfaction, and increase revenue.

1.2 Scope

Initial functional requirements will be: -

o Member registration: The system should allow new members to create an account and
provide their personal and billing information.
o Member login: The system should allow existing members to log in to their account using
a unique username and password.
o Class and personal training booking: The system should allow members to view the
schedule of available classes and personal training sessions, and sign up for the ones they
want to attend. The system should also allow for easy rescheduling or cancellation of
classes and sessions.
o Attendance tracking: The system should keep track of which members have attended
which classes and sessions.
o Membership fee tracking: The system should keep track of when membership fees are
due, and send reminders to members when their fees are overdue.
o Staff scheduling: The system should allow staff to view their schedules and request time
off, and allow gym management to approve or deny these requests.
o Payroll management: The system should handle payroll and time tracking for gym staff.
o Equipment inventory: The system should keep track of the gym's equipment, including
items such as weights, treadmills, and exercise bikes. It should allow staff to check out
equipment to members and track its usage, and send alerts when equipment needs
maintenance or repair.
o Reporting: The system should generate reports on various aspects of the gym's
operations, such as attendance at classes and sessions, membership fees collected, and
equipment usage.

These are just a few examples of initial functional requirements for a gym management system. The
specific requirements for a given system will depend on the needs and goals of the gym and
its stakeholders.

4|P age
For the previous paragraph, depicting the functions of the system, from the perspective of the
various users of the system, the following colour codes has been used :
o RED for administrator.
o BLUE for members of the GYM.
o GREEN for the employees.

Initial non-functional requirements will be: -


o Performance: The system should be able to handle a high volume of users and
transactions without significant delays or errors.
o Scalability: The system should be able to handle an increase in usage or the addition of
new features without significant impact on performance.
o Security: The system should protect user data and prevent unauthorized access to
sensitive information. This might include measures such as secure login and password
recovery processes, and encryption of sensitive data.
o Data integrity: The system should ensure that data is stored accurately and consistently,
with appropriate validation and error handling.
o Maintainability: The system should be easy to maintain and update over time, with clear
documentation and a modular design.
o Compatibility: The system should be compatible with common browsers and devices, and
should support a range of screen sizes and resolutions.
o Accessibility: The system should be accessible to users with disabilities, following best
practices for making the system usable for people with visual, auditory, or mobility
impairments.

Non-functional requirements are constraints or requirements that apply to the system as a whole, rather
than specific features or capabilities. They are important considerations in the development of a gym
management system, as they can have a significant impact on the usability and success of the system.

In addition to the abovementioned points, due to the highly evolving nature of the project, the
following are planned to be delivered if deemed necessary:
o Additional features
o Updates to existing components
o Changes to the project schedule
This list is by no means, a final one. The final list will be dictated by implementation constraints, market
forces and most importantly, by end user demands for whom this is being built.

1.3 Definitions, Acronyms and Abbreviations


 Gym Management System (GMS): A software solution designed to assist gym and fitness
center operators in managing various aspects of their business, such as member

5|P age
information, billing, scheduling, and equipment inventory.EJB: Enterprise Java Beans.
 HTTP: Hypertext Transfer Protocol is a transaction oriented client/server protocol
between a web browser & a Web Server.
 HTTPS:Secure Hypertext Transfer Protocol is a HTTP over SSL (secure socket layer).
 CRM: Customer Relationship Management, It's the process of managing interactions
with potential and current customers.
 API : Application Programming Interface.
 UI : User Interface.
 TCP/IP:Transmission Control Protocol/Internet Protocol, the suite of
communicationprotocols used to connect hosts on the Internet. TCP/IP uses several
protocols, thetwo main ones being TCP and IP.

1.4 References
IEEE SRS Format.

1.5 Technologies to be used


Programming languages:
 HTML, XML: Hyper Text Markup Language and Extensible markup Language are the
predominant markup languages for web pages. It provides a means to describe the
structure of text-based information in a documentand to supplement that text with
interactive forms, embedded images, and other objects.
 JavaScript: A client-side scripting language used to create dynamic web content and user
interface.
 Database Technology: A GMS will typically require a database to store member
information, billing records, and other data. Some popular options for database
technology include MySQL, MongoDB.
 Frameworks: Some common frameworks that can be used to build a GMS include
Django, Ruby on Rails, ExpressJS, Spring, and ASP.NET Core. These frameworks
provide a structure and set of tools that can help speed up development and make the
code more maintainable.
 Front-end web technologies: A GMS will typically include a web-based user interface,
which can be built using a variety of front-end web technologies such as HTML, CSS,
JavaScript, and ReactJS or AngularJS.
It is worth noting that the choice of technology will depend on factors such as the scale of the project,
the budget, the skill set of the development team, and the specific requirements of the project.

Tools & Development Environment

6|P age
 VS Code: Visual Studio Code is a code editor redefined and optimized for building and
debugging modern web and cloud applications.
 Oracle SQL:Oracle SQL Developer is a free, integrated development environment that
simplifies the development and management of Oracle Database in both traditional and
Cloud deployments. SQL Developer offers complete end-to-end development of
PL/SQL applications.

1.6 Overview
The rest of this SRS is organized as follows: Section 2 gives an overall description of the
software. It gives what level of proficiency is expected of the user, some general constraints
while making the software and some assumptions and dependencies that are assumed. Section 3
gives specific requirements which the software is expected to deliver. Functional requirements
are given by various use cases. Some performance requirements and design constraints are also
given.

2. Overall Description
2.1 Product perspective
GMS is intended for owners of gyms and fitness facilities who wish to connect with as wide a
range of customers and potential members as possible. The purpose of this project is to close the
communication gap between gym owners, equipment suppliers, and patrons. For the
aforementioned objective, GMS should be user-friendly and a dependable software. GMS is
designed to function independently. It must function on a Windows-based system.
2.2 Product functions
User:Gym Manager/owner
Functions: The Gym Manager is the super user and has complete control over all the activities
that can be performed. Only the gym manager/owner has the power to create or delete a member
account based on the payment status. It also notifies the owner of upcoming expiration dates of
memberships and also helps in keeping track the leave days and salary dues for the gym staff.
The owner also has access to the gym inventory management system and can share the edit
access to update the inventory with the gym staff to request repair/maintenance requests for gym
equipment.
User:Gym trainer
Functions: The gym trainer has access to register any ember as personal trainee.The gym trainer
is henceforth responsible for updating diet and exercise regime for the personal trainees. Gym
trainer can also update weekly stats like weight, BMI and body measurements. After 5 personal
trainees the gym trainer has to request for registering any other member as trainee the permission
of which is given by the gym owner/manager. The gym trainer must also daily update his/
personal training schedule to determine free time available for general floor duty and also punch
in and punch out general duty times. The trainer will be notified of no of leaves remaining and
due payments. The gym staff may or may not have access to request maintenance and repair for
equipment(s) based on the owner’s discretion.

7|P age
User:Gym members
Functions: The account for any user once registered for the gym will be created by the gym
owner. The user has access to directly contact the personal trainer and schedule daily
appointments with the trainer. The gym member can also change the plan he/she is enrolled in
the gym i.e. from general training to personal training and even extend their membership. It will
also remind the member of upcoming expiration dates. General gym members can update their
weekly weights and measurements on the platform and can also have access to exercise
guidelines designed by the gym trainers on floor duty.Gym members enrolled in a personal
training programme will also have access to the tailored diet curated by their respective personal
trainer.

2.3 User characteristics


 The user should be equipped with an internet enabled desktop/mobile.
 The user should be a registered member/employee of a gym whose GMS he/she is trying
to access.
 The user should be familiar with basic gym equipments and terminologies such as bench
press, warm up, post workout stretching and so on.
 The user should be familiar with the Internet.

8|P age
2.4 Work Breakdown Structure

1.0 Project management

1.1 Conceptualize and initialize project

1.1.1 Discuss product feasibility with user

1.1.2 Define project scope and objectives

1.1.3 Develop project plan

1.1.4 Assemble project team

1.1.5 Milestone: project conceptualization is completed and team is debriefed

2.0 Analysis

2.1 Requirement gathering

2.1.1 Conducting user interviews and surveys

2.1.2 Define functional and non-functional requirements

2.1.3 Ethnographical analysis

2.1.4 Milestone: requirements compiled

2.2 Requirement Analysis

2.2.1 Identifying potential issues that could hamper system security and result in
data breaches

2.2.2 Analyzing technical risks to identify challenges in implementing certain


features.

9|P age
2.2.3 Assessing difficulty in integration of system with existing gym processes.

2.2.4 Laying down methods to prevent cost overruns

2.2.5 Milestone: Initial risk assessment report prepared.

3.0 System design

3.1 Design database schema

3.1.1 Defining entities which may include gym member, trainer and administrators.

3.1.2 Identifying suitable APIs for posting and fetching data.

3.1.3 Defining parameters of each entity to be stored in database

3.1.4 Milestone: entity relationships defined and database design completed.

3.2 UI/UX design

3.2.1 Researching user personas

3.2.2 Deciding color schemes and creating moodboards

3.2.3 Creating information architecture diagram

3.2.4 Modification of design keeping accessibility and responsiveness in mind

3.2.5 Milestones: UI/UX design completed. Project ready for development

10 | P a g e
4.0 Development

4.1 Client side scripting

4.1.1 Basic login page and calling firebase

4.1.2 Tier 1 feature development

4.1.3 Tier 2 feature developments

4.1.4 Tier 3 feature development

4.1.5 Milestone frontend development completed

4.2 Server side scripting

4.2.1 Basic route developments

4.2.2 User authentication and security

4.2.3 Milestone: backend development completed

4.3 Integration

4.3.1 Integrating client side and server-side modules

4.3.2 Payment processing system integrated

4.3.3 Milestone: integrated prototype ready for user testing

11 | P a g e
5.0 Testing

5.1 Unit testing

5.1.1 Testing individual units of the gym management system such as the login module and
the billing module

5.1.2 Milestone: unit testing completed

5.2 Integration testing

5.2.1 Testing interaction between different components of the gym management system

5.2.2 Milestone: integration testing completed

5.3 System testing

5.3.1 Testing the gym management system as a whole to ensure smooth functioning

5.3.2 Milestone: system testing completed

6.0 Deployment

6.1 Configuration and setup

6.1.1 Installation of the system

6.1.2 System deployment completed

6.2 After sales service

6.2.1 User training

6.2.2 Maintenance and support

12 | P a g e
2.5 Constraints
 The system needs weekly 2 hours of downtime for maintenance and update(s).
 Limited to HTTP/HTTPS.
 No payment gateways or online banking system integrated.
 No multilingual support.
 No supplementary mobile application. Limited to web page.

13 | P a g e
2.6 User-Flow Diagrams

14 | P a g e
15 | P a g e
16 | P a g e
Given below is an overall picture of the system:

1. Gym owner/manager:
 Database Management: Control the database and keep track of all records of customers and
employee details.

 Registration and deletion of accounts:The gym owner should create anew account for any new
gym member. In case of change of plan the changes need to be updated as well.

 Permit personal trainings:The gym owner/manager can accept/deny permissions of personal


trainings once the number of personal trainees per trainer exceeds 5.

 Inventory Management: The gym owner/manager can view/accept/delete requests for equipment
maintenance and repair.

 View and analyze: The gym owner/manager can view and analyze various performance and growth
metrics such as new members added, users upgraded and user retention. The owner can also view revenue
generated.

 Payments: The gym owner/manager is responsible for manually clearing payments making use of
the prompts in case of nearing payment dues and can also accept payments from members in case of nearing
expiration dates.

2. Gym trainers and staff:


 Login: Staff must have a unique employee ID and password to login.

 Registration: New users can sign up by creating new ID.

 View and edit personal trainee details: Can view/edit his/her personal trainee’s diet and exercise
routine and body measurements.
 Update training timings:Staff must update their daily schedule for system to determine free hours
for floor duty.

 Purchasing: Can purchase any product through valid credit card.

 Request for maintenance: Can raise requests for repair or replacement of equipment.

 Logout: Staff must logoutof the site after end of their duty

3. Gym member:
 Login: members must login to check for their exercise and diet routine.

 Viewing Schedule: members can view when their personal appointments have been scheduled.

17 | P a g e
 Viewing metrics: members can view important information such as their diet plan, body
measurements, exercise routine and upcoming expiration dates.

 Updating details: members can update their profile details such as weight,BMI and type of
membership plans.

 Logout:members mustlogout after completing all the tasks. In case of inactivity for greater than 15
minutes auto log out will be enabled.

18 | P a g e
2.7 Architecture Diagram

19 | P a g e
2.8 Assumptions and Dependencies
 A new member has to be registered as a new member manually.
 A payment processing system for membership fees and other charges
 Members and employees will have unique membership IDs and employee IDs.
 Administrator is created in the system already and is assigned manually.
 Roles and tasks pertaining to different types of gym employees are predefined.
 Integration with the biometric enabled entry system if one is in place.

3. Specific Requirements
Some common use cases for GMS include:

Membership management: GMS allows gym owners to keep track of member


information, such as contact details, membership status, and payment history. This
information can be used to generate reports and analyze member trends.

Scheduling and class management: GMS allows gym owners to schedule and manage
classes, such as yoga, Pilates, or cardio. This feature can also be used to manage the
availability of equipment and resources.

Billing and invoicing: GMS allows gym owners to create and send invoices to members,
track payments, and generate financial reports.

Employee management: GMS can be used to track employee information, such as


schedules, payroll, and attendance.

Marketing and customer engagement: GMS can be used to send out automated email and
SMS campaigns to members, to keep them engaged and informed about new classes,
promotions and events.

Real-time monitoring: GMS can be used to track and monitor the attendance, engagement
and customer satisfaction in real-time, which can help to optimize the gym's services and
activities to meet customer needs.

Data analytics: GMS can be used to generate various types of reports and analytics, such
as customer demographics, financial performance, and sales trends.
3.1 Use-Case Reports
Membership management:
Use case: A gym owner wants to track the number of active members to see if the gym is
reaching its membership goals.
Report: A membership report that shows the total number of active members, the number of new
members in a given period, and the number of cancelled members.

20 | P a g e
Scheduling and class management:
Use case: A gym owner wants to see which classes are the most popular to determine which ones
to keep and which ones to discontinue.
Report: A class attendance report that shows the number of attendees for each class, the average
attendance for each class, and the percentage of class capacity filled.
Billing and invoicing:
Use case: A gym owner wants to see how much revenue is being generated from membership
fees to gauge the financial performance of the gym.
Report: A billing report that shows the total amount of revenue generated from membership fees,
the number of members with overdue payments, and the total amount of overdue payments.
Employee management:
Use case: A gym owner wants to see which employees have the highest attendance rates to
determine which ones to schedule more often.
Report: An employee attendance report that shows the number of days each employee has
worked, the number of days they have been absent, and the attendance rate for each employee.
Marketing and customer engagement:
Use case: A gym owner wants to see how many members are responding to marketing
campaigns to determine their effectiveness.
Report: A marketing campaign report that shows the number of members who opened an email
or SMS, the number of members who clicked on a link, and the number of members who made a
purchase or signed up for a class as a result of the campaign.
Real-time monitoring:
Use case: A gym owner wants to see how many members are currently using the gym to
optimize staffing and equipment usage.
Report: A real-time monitoring report that shows the number of members currently checked-in,
the busiest hours of the day, and the most popular areas of the gym.
Data analytics:
Use case: A gym owner wants to see how customer demographics are changing over time to
target marketing efforts effectively.
Report: A customer demographics report that shows the age, gender, and location of members, as
well as any changes in those demographics over a given period of time.

3.2 Supplementary Requirements


A member database that allows for easy storage and retrieval of member information,
such as contact details, membership status, and billing information.
A scheduling system that allows members to book classes and trainers, and for staff to
manage class schedules and trainer availability.
A billing and payment system that allows for automatic billing and payment processing,
and the ability to handle different types of membership plans and pricing structures.
A reporting and analytics system that allows for tracking of membership trends, class
attendance, and revenue.
A mobile app for members to access their account information and schedule classes or
appointments
A website for members to view schedules, sign up for classes or appointments, and make
payments

21 | P a g e
A security and access control system to ensure that only authorized individuals have
access to the facility and equipment.
An inventory management system to keep track of equipment, supplements and other
gym related items.
A CRM (Customer Relationship Management) system to manage all interactions with
members, including sales, customer service, and member retention.

22 | P a g e

You might also like