You are on page 1of 7

Submitted To: Mam Raheela Naseem

Submitted By: Ali Hamza

Ag#: 2020-ag-6512

Topic: Functional Requirements about Software

Q) Select any software project write 10 to 15 Functional requirements


Ans: Following are the functional requirements of the Software Cricket Academy (club).

1. User Registration: The software should allow users to create and manage their accounts,
providing basic information such as name, contact details, and membership details.
2. Membership Management: The software should handle membership details, including
membership types, duration, renewal reminders, and fee collection.

3. Class Scheduling and Booking: Users should be able to view and book gym classes,
including group workouts, yoga sessions, or personal training sessions.

4. Attendance Tracking: The software should track and record member attendance for
classes or individual workout sessions, providing data for member engagement and instructor
performance analysis.

5. Personalized Workout Plans: The software should offer personalized workout plans
based on user preferences, fitness goals, and fitness levels, considering factors such as age,
gender, and medical conditions.

6. Progress Tracking: Users should be able to track their fitness progress, including weight
loss, muscle gain, or improved endurance, and view graphical representations or metrics of their
achievements.

7. Equipment Reservation: If the gym has limited equipment or specialized equipment, the
software should allow users to reserve specific machines or equipment for a particular time slot.

8. Trainer Appointments: Users should be able to schedule appointments with personal


trainers or fitness instructors, selecting preferred dates, times, and specific trainers.

9. Nutrition and Diet Planning: The software can provide nutritional guidance, including
personalized diet plans, calorie tracking, and meal suggestions, to help users achieve their fitness
goals.

10. Social Interaction and Challenges: The software can provide social features such as
forums, chat groups, or challenges, allowing members to connect, motivate each other, and
participate in fitness competitions or challenges.
11. Payment and Billing: The software should handle online payments for memberships,
personal training sessions, equipment rentals, or additional services, and generate invoices or
receipts for members.
12) Integration with Wearable Devices: The software can integrate with popular wearable
fitness devices such as fitness trackers or smartwatches, allowing users to sync their workout
data and monitor their progress seamlessly.

13) Virtual Training: If applicable, the software can provide virtual training sessions or live
streaming of fitness classes for remote users, ensuring accessibility and convenience.

14) Feedback and Rating System: Users should be able to provide feedback and ratings for
trainers, classes, or overall gym experience, helping the management to assess and improve the
quality of services.

15) Mobile App Integration: The software can provide a mobile app for users to access the
features mentioned above, allowing them to book classes, track workouts, receive notifications,
and stay connected on the go.

Q2) Write test cases for each requirement or group of requirements

Test Case ID TC 001 TC 002 TC003 TC 004 TC 005 TC006 TC 007 TC 008 TC 009
Test Case User Membership Class Attendance Personalized Progress Equipment Trainer Nutrition
Registration Management Scheduling Tracking Workout Tracking Reservation Appointments And Diet
Title
and Plans Planning
Booking
Test Case High Medium High Medium High Low High Medium Medium
Priority
Requirement User Membership Class Attendance Personalized Progress Equipment Trainer Nutrition
Registration Management Scheduling Tracking Workout Tracking Reservation Appointments And Diet
and Plans Planning
Booking
Test Verify that a Verify that Verify that Verify that Verify that Verify that Verify that Verify that Verify that
user can the software users can the software the software users can track users can users can the software
Description allows the accurately reserve provides
successfully view and generates their fitness schedule
register an creation and book gym tracks and personalized progress and specific appointments nutritional
account management classes records workout view graphical machines or with personal guidance
of member equipment and
plans based representations trainers or
membership attendance for a personalized
on user fitness
details particular diet plans
preferences instructors
time slot

Test Date 2023-05-22 2023-05-22 2023-05-22 2023-05-22 2023-05-22 2023-05-22 2023-05-22 2023-05-22 2023-05-22
Pre-Condition - - - - - - - - -
Dependencies - - - - - - - - -
Test Steps Navigate to Add a new View Check-in a Provide user Log user's Select a Select a Provide
registration membership available member for preferences fitness data machine or preferred user
page type classes a class and fitness equipment trainer information
goals for and goals
reservation
Test Data User Details Membership Member User Fitness Data Machine/ Appointment User
Details Details Preferences, Equipment Details Information
Fitness goals Details Goals

Expected User account Membership Available Member Personalized Fitness progress Reservation Appointment is Personalized
Is created Type is added classes are Attendance Workout plan Is displayed is Successfully Diet plan
Results
Successfully Successfully displayed Is recorded Is generated Correctly successful Scheduled Is
correctly Successfully Successfully and Generated
equipment is correctly
reserved

Actual - - - - - - - - -
Results
Post User account Membership Available Member Personalized Fitness Equipment Appointment Personalized
Is created Type is Classes are attendance is workout plan Progress is Is reserved is successfully diet plan is
Condition display- ed displayed
Successfully Added recorded is generated In the systemscheduled generated
successfully correctly successfully successfully correctly correctly

Status - - - - - - - - -
(Pass/Fail)
Other - - - - - - - - -
Comments

Tool: Watir
Watir is a free and open-source tool for web application testing. It uses the
Ruby programming language to automate tests. Watir can be used to automate
a wide range of tasks, including:

 Opening and closing web browsers


 Navigating to web pages
 Entering data into forms
 Clicking on buttons
 Validating the output of web pages

Watir works by interacting with the web browser through the WebDriver API.
The WebDriver API is a standard API that allows software to control web
browsers. Watir uses the WebDriver API to send commands to the browser,
such as "open this page" or "click this button."

Watir is a powerful tool that can be used to automate a wide range of web
application testing tasks. It is easy to learn and use, and it is supported by a
large community of users.

Here are the steps involved in the working process of Watir software testing
tool:

1. Install Watir. Watir can be installed using the RubyGems package


manager.
2. Create a test script. A test script is a set of instructions that Watir will
follow to automate a test. Test scripts can be written in Ruby or in a
variety of other languages.
3. Run the test script. Once a test script has been created, it can be run
using the Watir command-line tool.
4. Analyze the test results. Watir will generate a report of the test results.
This report will include information about any errors that occurred
during the test.

Here are some of the benefits of using Watir:

 Easy to learn. Watir is easy to learn and use, even for people who are
not familiar with Ruby.
 Powerful. Watir can be used to automate a wide range of web
application testing tasks.
 Free and open-source. Watir is a free and open-source tool, which means
that it is available to anyone to use and modify.

Here are some of the limitations of using Watir:

 Not as robust as some commercial tools. Watir is not as robust as some


commercial tools, such as Selenium.
 Not as well-supported. Watir is not as well-supported as some
commercial tools.
 Can be slow. Watir can be slow, especially when automating complex
tasks.

Overall, Watir is a powerful and easy-to-use tool for web application testing.
It is a good choice for small teams or individuals who are looking for a free
and open-source tool.

 Working process:
Here is a diagram of the working process of Watir software testing tool:

The diagram shows the following steps:

1. The user creates a test script. The test script is a set of instructions that
Watir will follow to automate a test.
2. The test script is run using the Watir command-line tool.
3. Watir interacts with the web browser through the WebDriver API.
4. Watir sends commands to the browser, such as "open this page" or
"click this button."
5. The browser executes the commands and performs the desired action.
6. Watir waits for the browser to finish executing the commands.
7. Watir checks the output of the browser to make sure that the test
passed.
8. If the test failed, Watir generates a report of the test results.

This is just a simplified diagram of the working process of Watir. The actual
process is more complex, but this diagram gives you a general idea of how
Watir works.

You might also like