Pick'em
Pick'em
Overview
The Pick'em service is a tournament and prediction system that allows users to make predictions about competition results and receive rewards for correct forecasts. The service provides a complete tournament management cycle, from creation to completion and reward distribution to participants.
Business Processes
1. Tournament Management Process
Tournament creation and configuration:
- Defining name and game
- Setting time frames (start and end)
- Determining tournament stage
- Configuring participating teams
Tournament lifecycle:
- Draft → Published → Completed → Archived
- Tournament is available for predictions only until its start
- After tournament completion, rewards become available
- Teams and positions can be changed until a certain point before start
2. Prediction Process
Prediction creation mechanism:
- User selects team for specific position in tournament
- System validates selection (team must participate in tournament)
- System controls team limit per position
- Prediction is saved and becomes active
Prediction management:
- User can delete their prediction before tournament start
- User can view their prediction history
- After tournament start, predictions become immutable
Results processing:
- After tournament completion, correct predictions are determined
- System compares actual results with user predictions
- Number of correct predictions is calculated for each user
3. Reward Process
Reward system:
- Rewards are configured in reward grid with different levels
- Reward level depends on number of correct predictions
- If exact match is not found, previous value in reward grid is used
Receiving rewards:
- User can request rewards after tournament completion
- System checks for correct predictions and reward distribution status
- Rewards can be received only once
- After reward distribution, user's tournament status is updated
Functional Capabilities
1. Tournament Management
- Creating and editing tournaments with various parameters
- Managing participating team lists
- Configuring positions and possible places
- Controlling tournament time frames
- Changing tournament status (draft, published, completed, archived)
2. Prediction System
- Selecting teams for specific positions
- Deleting and editing predictions before tournament start
- Viewing prediction history
- Tracking prediction accuracy
- Prediction success statistics
3. Reward System
- Configuring reward levels based on correct prediction count
- Automatic determination of eligible rewards
- Distributing resources to users for correct predictions
- Tracking received reward status
4. User Experience Management
- Personalized tournament access
- Participation status tracking
- Notification system for important events
- Information about results and available rewards
Main System Objects
1. Tournament
- Central service entity
- Contains time frames and status
- Linked to game, teams, positions, and rewards
- Defines stage and competition conditions
2. Team
- Tournament participant
- Linked to specific tournament
- Can be selected for prediction on specific position
3. Position
- Represents possible place in tournament table
- Includes set of possible places
- Used for structuring predictions
4. Prediction
- Links user, tournament, team, and position
- Contains information about prediction correctness
- Allows tracking prediction success
5. Reward
- Defines reward for correct predictions
- Linked to reward grid with different levels
- Tied to specific resource and its quantity
Key Performance Indicators
- User engagement in tournaments
- Number of predictions per tournament
- Percentage of correct predictions
- Reward collection activity
- User satisfaction with the system
