Use Case Descriptions
Use Case 1: Owner of the Discord Server Configures the WhatchaDoin bot
As a server owner, I want to easily integrate the WhatchaDoin bot into my server so that my community can become more active
Actor: Owner of the Discord server.
Triggering event: Discord server creation
Normal Flow:
- Owner signs in to Discord
- Owner opens the server "Preferences".
- Owner selects "Apps and Integrations" and installs the WhatchaDoin bot.
- Owner assigns roles and privileges to users in the community.
- Owner defines moderation and content guidelines.
- Owner defines type of prompts for WhatchaDoin bot to send properly suit the culture and vibe of their community.
- Owner configures the schedule for WhatchaDoin bot, defining the hours when the it will send prompts.
- Owner sets the duration for prompt responses to remain in the chat.
- Owner sets the amount of time users have to respond to prompt notification
- Owner saves the configuration settings.
Use Case 2: User Responds to a WhatchaDoin bot Prompt
As a Discord user, I want to respond to the bot’s prompt with an image so that I can share moments of my day with my community.
Actor: Discord User
Triggering Event: The user receives a prompt from the WhatchaDoin bot.
Normal Flow:
- User in the Discord community receives a notification at a random time of day that they have received a prompt from the WhatchaDoin bot.
- User opens Discord.
- User responds to the random prompt by taking a picture and uploading it.
- User replies to the WhatchaDoin bot with their response to the prompt, which is sent to the moderator.
- User waits for approval status from the WhatchaDoin bot.
Use Case 3: User Does Not Respond to a WhatchaDoin bot Prompt
As a WhatchaDoin bot, I want to remind the user to engage with its prompts when they miss them.
Actor: WhatchaDoin bot Triggering Event: User fails to respond to the WhatchaDoin bot’s prompt within a set time frame.
Normal Flow:
- The WhatchaDoin bot waits until timeout The WhatchaDoin bot sends a notification to the Discord user
- WhatchaDoin bot recognizes the user’s failure to respond, and sends a reminder notification to the users about the missed prompt.
Use Case 4 : User-Submission approved
As the Bot I want to post photos after they have been approved so they can get reactions and users can feel more connected.
Actor: WhatchaDoin bot
Triggering event: the submitted image is approved by moderators
Normal Flow:
- WhatchaDoin bot receives the approval decision
- WhatchaDoin bot posts the image with the caption and notifies the user
- WhatchaDoin bot logs emoji reactions, threaded replies, and comments from the community
- WhatchaDoin bot sends logs to the server
Use Case 5: User’s submission is denied
As a Discord user I want to have another chance to post a photo if it does not follow content guidelines so I can respectfully engage with my community
Actor: Discord User
Trigering event: The submitted image is denied by moderators
Normal Flow:
- User receives a notification that the post was not approved and is asked to resubmit with feedback
- User resubmits the image
- User receives a notification that the post was approved and it was posted
Use Case 6: User Reacts to a New Post Notification
As a user in the Discord community, I want to be updated on other user’s activities and show my reaction to other users so I can feel more engaged in the community.
Actor: User
Triggering Event: The user receives a notification about a new post in the Discord community.
Normal Flow:
- A user in the Discord community is notified by the WhatchaDoin bot that another user has posted a response to a prompt.
- User opens Discord to view the response in the Discord community channel
- User interacts with the post by leaving a comment or a reaction(likes, emojis, etc)
Use Case 7: User ignores New Post Notification
As a user in the Discord community, I want to be able to avoid certain notifications about posts from other users so that I don't have too many notifications.
Actor: User
Triggering Event: User is sent an unwanted post notification
Normal Flow:
- A user in the Discord community goes to the settings of the WhatchaDoin bot
- User chooses an option to turn off new post notifications.
- The user is no longer sent another post notification.
Use Case 8: Moderator Accesses Reaction Data in Database
As a moderator I want to be able to see reaction data so that I can understand how well users are interacting with the bot and each other.
Actor: Moderator
Triggering Event: Timeframe for getting reactions has ended
Normal Flow:
- Moderator logs into Discord
- Moderator runs a command to request reaction data in csv format
- Moderator exports reaction data for further analysis, if needed
Alternate Flow:
- Moderator logs into Discord
- Moderator runs a command to see reaction data
- Moderator receives data visualizations from bot
Use Case 9: Moderator makes approval status decision
As a moderator I want to be able to approve or deny user submissions, so that I can make sure community guidelines are being followed and users remain safe.
Actor: Moderator
Triggering Event: Moderator receives response from user submission via WhatchaDoin Bot
Normal Flow:
- Moderator receives notification about a user submission
- Moderator opens Discord
- Moderator reviews submission using predefined criteria from community guidelines
- Based on guidelines, moderators approves or rejects submissions
- Moderator marks submissions as “Approved” or “Denied” to bot
Use Case 10: WhatchaDoin Bot bans User from Prompting
As a WhatchaDoin bot I want to be able to prevent unwanted prompts, so that I can ensure users that break community guidelines are discouraged from doing so.
Actor: WhatchaDoin bot Triggering Event: User continuously fails to reply or gets denied by moderators.
Normal Flow:
- WhatchaDoin bot recognizes bad user behavior within the Discord community.
- WhatchaDoin bot sends a warning notification to the user about the bad behavior.
- WhatchaDoin bot notifies moderator about the bad behavior and asks if they want to add the user to the blacklist.
- If the user continues with bad behavior, WhatchaDoin bot adds the user to the blacklist.
- WhatchaDoin bot logs the action.
Use Case 11: Moderator manages blacklist
As a Moderator I want to be able to ensure the blacklist is functional and users that break community guidelines are discouraged from doing so.
Actor: Moderator Triggering Event: Moderator is notified about a bad actor.
Normal Flow:
- Moderator chooses to add user to blacklist.
- Moderator runs a command to view the blacklist and sees added user.
Alternate Flow:
- Moderator chooses not to add user to blacklist.
- Moderator views the blacklist and sees another user they want to remove.
- Moderator runs a command to remove the user from the blacklist.
- Moderator views the blacklist and no longer sees removed user.