This page contains the defined functional and non-functional requirements of the TECHCUP Football Platform.

Functional requirements describe the system functionalities and services that must be provided to support tournament organization and participant interaction.

Non-functional requirements describe the quality attributes and architectural constraints that the TECHCUP system must satisfy in order to ensure reliability, security, and proper system operation.

Below is the list of all requirements classified according to their type.

Functional requirements list

ID Requirement name
FR-01 User registration
FR-02 User authentication
FR-03 Sports profile management
FR-04 Player availability management
FR-05 Team creation
FR-06 Team configuration
FR-07 Player search
FR-08 Team invitation management
FR-09 Team membership validation
FR-10 Payment receipt upload
FR-11 Payment validation
FR-12 Tournament configuration
FR-13 Team lineup management
FR-14 Opponent lineup consultation
FR-15 Match result registration
FR-16 Match result registration
FR-17 Match consultation for referees
FR-18 Standings calculation
FR-19 Knockout bracket generation
FR-20 Tournament statistics consultation

Non-functional requirements

ID Requirement Name
NFR-01 Role-based access control
NFR-02 Audit logging
NFR-03 REST API architecture
NFR-04 Layered backend architecture
NFR-05 Web frontend technology
NFR-06 Database technology
NFR-07 System performance
NFR-08 System availability
NFR-09 System security

FR-01 - User registration

Field Description
ID FR-01
*Requirement name** User registration
Description The system must allow users to register using institutional email accounts (students, graduates, professors, administrative staff) or personal Gmail accounts for family members.
Preconditions The user must belong to one of the allowed categories: student, graduate, professor, administrative staff member or family member.
Actor Participant
Main flow 1. The actor accesses the registration page.
2. The actor enters the required personal information.
3. The actor submits the registration form.
4. The system validates the information.
5. The system creates the user account successfully.
Use case diagram image
Postconditions The user account is created and the participant access the system.

FR-02 - User authentication

Field Description
ID FR-02
Requirement name User authentication
Description The system must allow registered users to authenticate in the platform using their credentials in order to access the system functionalities according to their role.
Preconditions The user must already be registered in the system and have valid login credentials.
Actor Participant, Captain, Organizer, Referee, Administrator
Main flow 1. The actor accesses the login page.
2. The actor enters their credentials.
3. The system validates the credentials.
4. The system grants access according to the user’s role.
Use case diagram image
Postconditions The authenticated user gains access to the platform and can interact with the system according to their permissions.

FR-03 - Sports profile management

Field Description
ID FR-03
Requirement name Sports profile management
Description The system must allow participants to create and update their sports profile, including playing positions, jersey number, and profile photo.
Preconditions The participant must be authenticated in the system.
Actor Participant
Main flow 1. The participant accesses the profile management section.
2. The participant enters or updates sports profile information.
3. The participant saves the changes.
4. The system validates and stores the information.
Use case diagram image
Postconditions The participant’s sports profile information is stored and available for team captains to consult.

FR-04 - Player availability management

Field Description
ID FR-04
Requirement name Player availability management
Description The system must allow participants to indicate their availability to join a team so that captains can contact them.
Preconditions The participant must be authenticated and have a completed sports profile.
Actor Participant
Main flow 1. The participant accesses the availability settings.
2. The participant marks themselves as available for recruitment.
3. The system updates the availability status.
Use case diagram image
Postconditions The participant appears as available for team recruitment searches performed by captains.

FR-05 - Team creation

Field Description
ID FR-05
Requirement name Team creation
Description The system must allow a participant acting as a captain to create a team for the tournament.
Preconditions The participant must be authenticated and must not belong to another team.
Actor Captain
Main flow 1. The captain accesses the team creation interface.
2. The captain enters the required team information.
3. The captain confirms the creation of the team.
4. The system validates the information and creates the team.
Use case diagram image
Postconditions A new team is created in the system and the captain becomes the team manager.

FR-06 - Team configuration

Field Description
ID FR-06
Requirement name Team configuration
Description The system must allow captains to configure their team information, including team name, crest, and uniform colors.
Preconditions The captain must have an existing team and be authenticated in the system.
Actor Captain
Main flow 1. The captain accesses the team configuration page.
2. The captain enters or updates team information.
3. The captain saves the changes.
4. The system validates and stores the updated information.
Use case diagram image
Postconditions The team information is updated and available to other participants in the platform.
Field Description
ID FR-07
Requirement name Player search
Description The system must allow captains to search for participants using filters such as playing position, semester, age, gender, name, or identification number.
Preconditions The captain must be authenticated and have a team created.
Actor Captain
Main flow 1. The captain accesses the player search interface.
2. The captain selects the desired search filters.
3. The system processes the query.
4. The system displays a list of matching participants.
Use case diagram image
Postconditions The captain can view a list of participants matching the search criteria.

FR-08 - Team invitation management

Field Description
ID FR-08
Requirement name Team invitation management
Description The system must allow captains to send invitations to participants and allow participants to accept or reject those invitations.
Preconditions The captain must have a team created and the participant must be available for recruitment.
Actor Captain, Participant
Main flow 1. The captain selects a participant from the search results.
2. The captain sends an invitation to join the team.
3. The participant receives the invitation.
4. The participant accepts or rejects the invitation.
5. The system updates the team roster accordingly.
Use case diagram image
Postconditions If accepted, the participant becomes a member of the team.

FR-09 - Team membership validation

Field Description
ID FR-09
Requirement name Team membership validation
Description The system must validate that participants belong to only one team and that the team complies with the minimum (7) and maximum number of players (12) allowed.
Preconditions A participant attempts to join a team through an accepted invitation.
Actor System
Main flow 1. The participant accepts a team invitation.
2. The system verifies whether the participant already belongs to another team.
3. The system validates that the team roster size is within the allowed limits.
4. The system confirms or rejects the membership accordingly.
Use case diagram image
Postconditions The participant is successfully added to the teajam or the system prevents the action if the validation rules are not satisfied.

FR-10 - Payment receipt upload

Field Description
ID FR-10
Requirement name Payment receipt upload
Description The system must allow the captain or participant to upload proof of payment for the team registration fee.
Preconditions The captain must have a team registered in the tournament.
Actor Captain
Main flow 1. The captain accesses the payment submission interface.
2. The captain uploads the payment receipt.
3. The system validates the file format.
4. The system stores the receipt and marks the payment as pending review.
Use case diagram image
Postconditions The payment receipt is stored and awaits review by the tournament organizer.

FR-11 - Payment validation

Field Description
ID FR-11
Requirement name Payment validation
Description The system must allow the organizer to review uploaded payment receipts and update their status as approved or rejected.
Preconditions A payment receipt must have been uploaded by a team captain and be pending review.
Actor Organizer
Main flow 1. The organizer accesses the payment review section.
2. The system displays the list of pending payment receipts.
3. The organizer selects a receipt.
4. The organizer reviews the payment information.
5. The organizer approves or rejects the payment.
6. The system updates the payment status.
Use case diagram image
Postconditions The payment status is updated and the corresponding team is notified of the decision.

FR-12 - Tournament creation

Field Description
ID FR-12
Requirement name Tournament creation
Description The system must allow the organizer to create a new tournament by defining basic information such as name, start date, end date, and number of teams.
Preconditions The organizer must be authenticated in the system.
Actor Organizer
Main flow 1. The organizer accesses the tournament management section.
2. The organizer selects the option to create a new tournament.
3. The organizer enters the required tournament information.
4. The organizer confirms the creation.
5. The system validates and stores the tournament information.
Use case diagram image
Postconditions A new tournament is created and becomes available in the system.

FR-13 - Tournament configuration

Field Description
ID FR-13
Requirement name Tournament configuration
Description The system must allow the organizer to configure tournament parameters such as rules, registration deadlines, match schedules, and playing fields.
Preconditions A tournament must already exist and the organizer must be authenticated.
Actor Organizer
Main flow 1. The organizer accesses the tournament configuration section.
2. The organizer selects a tournament.
3. The organizer defines the rules and tournament parameters.
4. The organizer saves the configuration.
5. The system validates and stores the configuration.
Use case diagram image
Postconditions The tournament configuration is updated and applied to the competition.

FR-14 - Team lineup management

Field Description
ID FR-14
Requirement name Team lineup management
Description The system must allow captains to define the lineup for each match, including starters, substitutes, and player positions.
Preconditions The captain must have a registered team participating in the tournament.
Actor Captain
Main flow 1. The captain accesses the lineup management section.
2. The captain selects the match.
3. The captain assigns players to starting and substitute positions.
4. The captain confirms the lineup.
5. The system stores the lineup information.
Use case diagram image
Postconditions The lineup for the selected match is registered and available for consultation.

FR-15 - Opponent lineup consultation

Field Description
ID FR-15
Requirement name Opponent lineup consultation
Description The system must allow participants and captains to view the lineup of the opposing team before a match.
Preconditions The lineup must have been previously registered by the opposing team.
Actor Participant, Captain
Main flow 1. The actor accesses the match information section.
2. The actor selects the match.
3. The system displays the lineup of both teams.
Use case diagram image
Postconditions The actor can view the opposing team’s lineup.

FR-16 - Match result registration

Field Description
ID FR-16
Requirement name Match result registration
Description The system must allow the organizer to register match results including goals, scorers, and disciplinary cards.
Preconditions The match must have been previously scheduled in the system.
Actor Organizer
Main flow 1. The organizer accesses the match management section.
2. The organizer selects the completed match.
3. The organizer enters the match result and relevant statistics.
4. The organizer confirms the information.
5. The system stores the match results.
Use case diagram image
Postconditions The match results and statistics are recorded in the system.

FR-17 - Match consultation for referees

Field Description
ID FR-17
Requirement name Match consultation for referees
Description The system must allow referees to consult match schedules including date, time, field, and teams involved.
Preconditions The referee must be authenticated in the system and matches must be scheduled.
Actor Referee
Main flow 1. The referee accesses the match consultation section.
2. The referee selects the relevant match.
3. The system displays the match information.
Use case diagram image
Postconditions The referee can view the details of the match to be officiated.

FR-18 - Standings calculation

Field Description
ID FR-18
Requirement name Standings calculation
Description The system must automatically calculate tournament standings based on match results.
Preconditions Match results must have been registered in the system.
Actor System
Main flow 1. Match results are registered in the system.
2. The system calculates statistics such as matches played, wins, draws, losses, goals for, goals against, and points.
3. The system updates the tournament standings table.
Use case diagram image
Postconditions The standings table is updated and available for consultation.

FR-19 - Knockout bracket generation

Field Description
ID FR-19
Requirement name Knockout bracket generation
Description The system must automatically generate knockout stage brackets including quarterfinals, semifinals, and final matches.
Preconditions The group stage of the tournament must be completed and standings must be available.
Actor System
Main flow 1. The system identifies the qualified teams.
2. The system generates the knockout bracket structure.
3. The system schedules the corresponding matches.
Use case diagram image
Postconditions The knockout stage matches are created and visible in the tournament schedule.

FR-20 - Tournament statistics consultation

Field Description
ID FR-20
Requirement name Tournament statistics consultation
Description The system must allow users to consult tournament statistics such as top scorers, match history, and team performance.
Preconditions Match results and statistics must be available in the system.
Actor Participant, Captain, Organizer
Main flow 1. The actor accesses the statistics section.
2. The actor selects the desired statistics category.
3. The system retrieves and displays the statistics.
Use case diagram image
Postconditions The requested tournament statistics are displayed to the user.

NFR-01 - Role-based access control

Field Description
ID NFR-01
Requirement Name Role-based access control
Description The system must enforce role-based access control to ensure that users can only access functionalities permitted by their role.
Preconditions Users must be authenticated in the system.
Actor Administrator
Main Flow 1. A user attempts to access a system function.
2. The system verifies the user role.
3. The system checks whether the role has permission for the requested action.
4. The system allows or denies access accordingly.
Use Case Diagram image
Postconditions System access is restricted according to the permissions assigned to each role.

NFR-02 - Audit logging

Field Description
ID NFR-02
Requirement Name Audit logging
Description The system must maintain audit logs of relevant actions performed by users in order to ensure traceability and security monitoring.
Preconditions Users must be interacting with the platform.
Actor Administrator
Main Flow 1. A user performs an action within the system.
2. The system records the action in the audit log.
3. The administrator can consult the recorded logs.
Use Case Diagram image
Postconditions Relevant system actions are recorded and available for administrative monitoring.

NFR-03 - REST API architecture

Field Description
ID NFR-03
Requirement Name REST API architecture
Description The backend of the system must expose its functionality through a REST API to enable communication between the frontend and backend services.
Preconditions The system backend must be deployed and available.
Actor System
Main Flow 1. The frontend sends a request to the REST API.
2. The backend processes the request.
3. The system returns a response to the client application.
Use Case Diagram Not applicable for this requirement.
Postconditions System services are accessible through RESTful endpoints.

NFR-04 - Layered backend architecture

Field Description
ID NFR-04
Requirement Name Layered backend architecture
Description The backend must follow a layered architecture separating controllers, adapters, business logic, and data access components.
Preconditions The system architecture must be defined.
Actor System
Main Flow 1. The system receives a request.
2. The controller processes the request.
3. The business logic layer handles the operation.
4. The data layer stores or retrieves information.
Use Case Diagram Not applicable for this requirement.
Postconditions System components interact through well-defined architectural layers.

NFR-05 - Web frontend technology

Field Description
ID NFR-05
Requirement Name Web frontend technology
Description The frontend must be implemented as a web application using React and TypeScript.
Preconditions Frontend development environment must be configured.
Actor System
Main Flow 1. The user accesses the web platform.
2. The React application renders the interface.
3. The frontend communicates with the backend through API requests.
Use Case Diagram Not applicable for this requirement.
Postconditions Users interact with the system through a web-based interface.

NFR-06 - Database technology

Field Description
ID NFR-06
Requirement Name Database technology
Description The system must store and manage persistent data using PostgreSQL as the database management system.
Preconditions The database service must be available.
Actor System
Main Flow 1. The system receives a request to store or retrieve data.
2. The backend communicates with the database.
3. The database returns the requested information.
Use Case Diagram Not applicable for this requirement.
Postconditions System data is persistently stored and retrievable.

NFR-07 - System performance

Field Description
ID NFR-07
Requirement Name System performance
Description The system must process user requests efficiently and return responses within an acceptable time limit under normal operating conditions.
Preconditions The system is running and receiving requests from users.
Actor System
Main Flow 1. A user performs an action on the platform.
2. The system processes the request.
3. The system returns a response to the user interface within the defined response time.
Use Case Diagram Not applicable for this requirement.
Postconditions User requests are processed and responses are delivered without noticeable delay.

NFR-08 - System availability

Field Description
ID NFR-08
Requirement Name System availability
Description The system must remain available for users during the tournament registration and operation periods.
Preconditions The system infrastructure must be deployed and operational.
Actor System
Main Flow 1. Users access the platform.
2. The system processes requests continuously during operational hours.
3. The system remains accessible to users without unexpected interruptions.
Use Case Diagram Not applicable for this requirement.
Postconditions Users can access the platform whenever the system is expected to be operational.

NFR-09 - System security

Field Description
ID NFR-09
Requirement Name System security
Description The system must protect user information and system resources by enforcing secure authentication and authorization mechanisms.
Preconditions Users must attempt to access protected resources within the platform.
Actor System
Main Flow 1. A user attempts to access a system resource.
2. The system verifies authentication credentials.
3. The system checks the user’s permissions.
4. The system allows or denies access accordingly.
Use Case Diagram Not applicable for this requirement.
Postconditions System resources remain protected and only authorized users can access restricted functionalities.