Version 1.0 approved Prepared by Radu Deleanu, Ondina Lipsa, Alexandra Spanache Faculty of Computer Science 04/11/2021
- Revision History
- Introduction
- 1.1 Purpose
- 1.2 Document Conventions
- 1.3 Intended Audience and Reading Suggestions
- 1.4 Product Scope
- 1.5 References
- Overall Description
- External Interface Requirements
- System Features
- Other Nonfunctional Requirements
- Other Requirements
| Name | Date | Reason For Changes | Version |
|---|---|---|---|
| base | 04/11 | initial version | 1.0 |
This document is meant to cover the "Workout Generator" project for the Web Technologies class of 2021. This is the first revision for release 1.0, covering part of the HTML/CSS implementation.
To be decided later
This document is meant for the evaulators that will check over the project files and functionality of the project as a whole, as well as any developer or person interested in the project documentation.
The software covered by this document is the web application "Fitter", meant for people who want personalized workouts, either at home or at the gym. Its objective is to create an application that is welcoming to clients and provides a custom product based on their needs or preferences. The benefits of "Fitter" are mainly related to the cusomizability of the workouts that the app generates, which will be tailor-made for each user in particular.
to be decided later
"Fitter" is a new standalone web application, made from scratch, meant for use on browsers on both desktop computers and mobile devices.
The user must be able to:
- Create an account on the application servers
- Log into his/her personal account
- Browse all of the different sections available at the top navigation bar
- Generate one or more custom-made workouts
- Access previously-generated workouts
- Track statistics related to his workout
- View and gain achievements
- Access and modify his/her profile
We anticipate that the application will be suitable for any user, however, the focus is going to be put on young adults who wish to develop healthy habits. Technical expertise is not necessary, as we aim to create a friendly user experience through modern design and a simple-to-understand platform. As the platform is meant for the general population, no educational level is to be expected from the end-user.
System administrators will also use the app, as they will be the ones who will update the news section, the exercises library, achievements, and also the platform overall.
The product will operate on desktop and mobile applications, using any browser that the user may have. We do not expect any conflicts to appear, regardless of OS, browser or other web applications that the user may have.
The project is built from the ground up, using no frameworks (including bootstrap). All the code is written by the cited developers and any foreign code is licensed for personal or commercial use.
No user documentation is to be provided with the application, as our goal is to create an easy-to-understand interface that is accessible to anyone. Questions can be addressed via the "contact us" page or the "FAQ" page.
We plan to use various API's in order to perfect the product, which include Google sign-in, Youtube videos and more which will be added once the back-end work begins.
The logo will be used to redirect the user to the main page. If the user is not logged in, this will be the front page of the application. If the user is logged in, this will be their personal dashboard, where they can access all of the other pages.
A navigation bar will be used for quick access to the most used/required pages, as it is visible in the following image from the home page:
The navigation bar will help the user get to the Leaderboard, News, About Us and Contact pages upon arrival to the main page. Other options will be added once the users are logged in.
The "Login" button will help the user connect to their account. This will be replaced by a photo of their profile once logged in (which can be used as a shortcut to get to their profile, as shown in the picture below:
The software aims to support any device types and avoid any hardware collisions or bottlenecks.
The software aims to use various API's to gather and store data related to the inner workings of the application. One example would be the database that will store all the information regarding the user and their account.
Another example is a stopwatch which reads the current system time and allows the user to track the duration of their current workout session.
An emailing system will be implemented once work on the back-end side will start. A few of the services that will be implemented are:
- An automated e-mailing system, used to verify the user's email upon registering his/her account.
- A support contact form, which users will send emails to, if they have any queries regarding the website, including bugs, general inquiries etc.
- An automated e-mailing system, used to help the user reset their password.
The HTTP protocol will be heavily used in the development of the application, as it is meant to be deployed on the web. Other technologies and mechanisms will be added once they are implemented.
System features will be added to the document as soon as work starts on the back-end of the web application.
The end-users will require an internet connection able to stream Youtube videos at a constant rate. A stable connection is preferred overall, in order to avoid any time-outs or issues regarding the functionality of all the services that the project provides (workout generation, profile picture uploading and so on)
Users may injure themselves during the workouts that they perform. While our goal is to provide a series of easy and accessible workouts, we do not take responsibility for any injuries that users may have as a direct result of the exercises that they perform.
We will provide users with the following message as a part of our "Terms and Conditions":
"We highly recommend you should always CONSULT your physician or healthcare provider BEFORE starting an exercise program or changing your diet plan. Do not start new fitness program if your physician or healthcare provider advises against it.
Whenever you feel faintness, dizziness, pain, shortness of breath or any other uncomfortable symptoms while exercising you should STOP IMMEDIATELY."
Users must secure their accounts with strong passwords and must keep them private, in order to prevent a cybersecurity incident that may directly affect them by possible loss of data, limiting access to their account. GDPR regulations will also be implemented, such that the user will have the right to be forgotten and will always have access to all the data that we hold in relation to their account.
We will prefer to implement a system that values quality over quantity and flexibility over reusability. This is in order to assure our users that the app will always deliver the best experience regarding the workouts that they wish to perform. As we plan to make the platform available for everyone, we will focus on including a wide range of workouts. However, limitations may occur when users who have any health issues (disabilities, diseases etc.) plan on using the application.
We plan on making the project easy for developers to maintain and understand, as this will facilitate the robustness of the application and allow us to resolve any issues that may occur.
The developers who work on this project will have assigned tasks regarding future development and will be obligated to share their progress by using a version control tool (i.e. github)
No other requirements need stating at this moment.

