Skip to content

User Story

EMiller34 edited this page Mar 1, 2023 · 2 revisions

Use Cases

General Usage:

Register account:

Use Case 1 Register Account
Actor All Users
Basic Flow All users will go to yamz.net. They will click the “Log In” tab in the top right. They will be prompted to “Sign-in with their Google Account”. Developer Note: “Reputation” is currently assigned randomly at user registration

Log-in

Use Case 1 Log In
Actor All Users
Basic Flow All users will go to yamz.net. They will click the “Log In” tab in the top right. They will be prompted to “Sign-in with their Google Account”.

Submitting

Use Case 1 Submit Term
Actor All Users
Basic Flow To submit a term, all users will navigate to the “Add” tab. Users will be prompted to search for their term to reduce redundancies. They will enter the Term String, Definition, and Examples per the guidelines located on the YAMZ site here. They will have the option to toggle “Draft” status, informing other users that the term may change. Once submitted, they will expect that the “Created” date field and the “Contributed” field on the term to update accordingly. They will also expect that their term will be assigned an Archival Resource Key (ARK) unique identifier, as well as a permalink. They will expect a link to the term to appear on their homepage.

Add tag

Use Case 1 Add tag
Actor All Users
Basic Flow After a user has submitted a term, they can navigate to it using the processes detailed in this document. They are prompted with a drop down of current tags. Once a user selects the tag, they ‘apply’ it to the term.

Remove tag

Use Case 1 Remove tag
Actor All Users
Basic Flow After a user has navigated to a term they submitted, they are presented with a list of current ‘tags’ applied to the term. They can click the X button to remove the tag from the term.

Searching

Use Case 1 Search for Term
Actor All Users
Basic Flow All users can search for terms from the “Search for a term” bar located on most tabs. The user expects to receive all terms that reference the search criteria in either the “term field” or the “Definition” field. Current functionality returns the results sorted by Consensus with Term, Score, Consensus, Class, Modified Date, and Contributor fields. Developer Note: With the ranking system, consensus falls when there is no interaction (commenting, voting, or modifying) with the term. Since there is low traffic, most terms have low consensus, and result sorting may appear arbitrary Developer Note: Clicking “alphabetical”, “high score”, or “recent” exists the search and returns the cumulative ‘browse’ results

Browsing

Use Case 1 Browse terms Alphabetical
Actor All Users
Basic Flow Users can browse terms by navigating to the “Browse Tab”. Terms are presented alphabetically by default. Users expect to see the list of terms, with the number of alternative instances per term in parentheses next to the term name. For instance, Ablation (11) means that there are 11 different entries for the term Ablation.
Use Case 2 Browse terms by Highest Score
Actor All Users
Basic Flow Users can browse terms by navigating to the “Browse Tab”. Terms are presented alphabetically by default. The user can select “high score” to sort the list by the terms with the highest scoring. Results are returned with the term string, score, consensus, class, last modified date, and contributor.
Use Case 3 Browse terms by tag
Actor All Users
Basic Flow Users can browse terms by navigating to the “Browse Tab”. Terms are presented alphabetically by default. Selecting a tag from the drop-down box and hitting “go” displays the terms with that tag in alphabetical order.
Use Case 2 Browser terms by recent
Actor All Users
Basic Flow Users can browse terms by navigating to the “Browse Tab”. Terms are presented alphabetically by default. The user can select “high score” to sort the list by the terms with the most recent “Last Modified” date. Results are returned with the term string, score, consensus, class, last modified date, and contributor.

Browsing Alternate Definitions

Use Case 1 Viewing alternative definitions from browsing
Actor All Users
Basic Flow The user can navigate to the “Browse” tab to display the list of terms in alphabetical order. The user can click on a term to display a list of the alternate term submissions, with each entry displaying the votes, definition, tags, created date, modified date, submitter, and permalink, as well as the option for the user to watch each entry. The list is no particular order. Developer Note: Sorting is currently using the system default sorting method.
Use Case 2 Viewing alternative definitions for an instance of a term
Actor All Users
Basic Flow After a user has navigated to an instance of a term (through whichever method), a blue number at the top of the page will inform the user how many alternative definitions exist for the term. The User can click on the number to display a list of the terms, with each entry displaying the votes, definition, tags, created date, modified date, submitter, and permalink, as well as the option for the user to watch each entry. The list is in no particular order. Developer Note: Sorting is currently using the system default sorting method.

Viewing archived items

Use Case 1 Including Archived Alternate Definitions
Actor All Users
Basic Flow After a user has navigated to the list of Alternate Definitions for a term, they can click “include archived terms” to include archived definitions. Developer Note: Sorting is currently using the system default sorting method. Developer Note: Many of the current archived terms are remnants from a previous iteration of YAMZ. Many of these archived terms have been split into the current existing entries.

Voting

Use Case 1 Voting
Actor All Users
Basic Flow After a user has navigated to a term with a definition they agree or disagree with, they are prompted with an up-arrow to ‘up-vote’ or a down-arrow to ‘down-vote’. The user expects to only be allowed to either vote up or vote down, and only once.

Commenting

Use Case 1 Comment
Actor All Users
Basic Flow After a user has navigated to a term, they are prompted with an “Add Comment” box. Users can submit their comment to the term to add additional context that might be useful. They will expect these comments to be visible to any other users who navigate to that term.

Edit

Use Case 1 Edit Term
Actor All Users
Basic Flow After a user has submitted a term, they can navigate to it. They are prompted with an option to “Edit” the term. They will be prompted with the editable fields, and the option to toggle Draft status. They will be prompted to submit the changes and will expect that the “Last Modified” field on the term be updated accordingly.

Delete

Use Case 1 Delete Term
Actor All Users
Basic Flow After a user has submitted a term, they can navigate to it. They are prompted with an option to “Delete” the term. The user will click the “Delete” button and be prompted “Are you sure?”. Clicking “OK” will delete the term, removing it from the system.

Trouble shooting

Use Case 1 Trouble Shooting
Actor All Users
Basic Flow If a user encounters an error or issue, and they wish to reach out for support, they will navigate to the bottom of the site, and click “Contact”. This will direct the user to a page with a link to a Google Group that the user can then request access to and start a conversation about their topic.

Advanced Usage

Importing

Use Case 1 Import Term List
Actor All Users
Basic Flow Users will navigate to the “Import” tab. They will be prompted to “Choose File”. They will select the CSV file on their local storage, name the import, create a description of the import, and hit “Upload”. The user will then be sent to the Termset tab and can view the terms uploaded.

Export

Use Case 1 Export Search
Actor All Users
Basic Flow Users will follow the steps to Search for a term. They will be moved to a page headed “Search Results For…”. They will click the button that says “Export Terms” located above the list. They will be prompted to save the list locally as a .csv file type.

Usage of Sets

Use Case 1 Viewing Set of Terms
Actor All Users
Basic Flow Users will navigate to the “Sets” tab. They will see a list of the sets created from the Importing Terms task. They will see the Set Name, the Description, and the Created Date. Clicking on a set will navigate to the Termset tab, which includes the Name and Description of the Set, and then the list of terms within the set. Current functionality returns the results sorted in no particular order with Term, Score, Consensus, Class, Modified Date, and Contributor fields. Developer Note: Sorting is currently using the system default sorting method.

Term tracking

Use Case 1 Watch
Actor All Users
Basic Flow After a user has navigated to a term, they are prompted with a “watch” selection. The user can select this to add the term to their home page. The user expects a shortcut to the term to be added to the homepage.

Home page notifications

Use Case 1 Watch Term notifications
Actor All Users
Basic Flow After a user has navigated to a term, they are prompted with a “watch” selection. The user can select this to add the term to their home page. The user will expect that they will be notified through the homepage of any updates made to the term. The user expects the notification to remain until the user “deletes” it from the home page.
Use Case 2 Contributor notification
Actor All Users
Basic Flow After a user submitted a term, the user will expect that they will be notified through the homepage of any updates made to the term. The user expects the notification to remain until the user “deletes” it from the home page.
Use Case 2 Other User Watching Notification
Actor All Users
Basic Flow After a user submitted a term, the user will expect that they will be notified through the homepage whenever another user “watches” their term. The user expects the notification to remain until the user “deletes” it from the home page, or until