-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Docs: add system use case with retry as alternate flow #1798
Conversation
Coverage reportThe coverage rate went from None of the new lines are part of the tested code. Therefore, there is no coverage data about them. |
4e6c28e
to
6c9149b
Compare
|
||
- 3a. Payment processor returns with one of the following errors: address verification failed, token is invalid, or general server error | ||
- 3a1. Transit rider chooses to retry, starting back at initiating the enrollment process | ||
- 3b1. Transit rider leaves the Benefits app |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does 3b1
mean the user clicks the X on their browser, or that there is a button that takes them to Home or somewhere else? (Or is this kind of more specific user interface question not what a Use Case is all about? Not sure).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, so 3b1
is saying that the user's only alternative to retrying is to give up. And right, for use case purposes, we are not concerned with what specific UI mechanism they use to give up. The focus is on how the system and the user respond to each other.
Here I'm documenting how the app currently works, but if let's say we wanted different behavior, we could update these alternate flows, e.g. we could add 3c1. Transit rider chooses to start over completely
or 3d1. Transit rider contacts customer support
or whatever we think would be the best user experience. The nice thing about this is it expresses what the change is at a basic, conceptual level for everyone to see without having to touch Figma or code.
Side note: I'm not sure if it's actually necessary to document Transit rider leaves the Benefits app
-- that's a thing that really can happen at any point for any use case, right? -- but I left it in here for this first round to spark questions just like yours.
docs/use-cases/system-use-cases.md
Outdated
**Alternate flows**: | ||
|
||
- 3a. Payment processor returns with one of the following errors: address verification failed, token is invalid, or general server error | ||
- 3a1. Transit rider chooses to retry, starting back at initiating the enrollment process |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3a1
means that the user has to have a Button to retry right? Or be allowed to use the Back button Browser?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, 3a1
means that the app needs to provide the user with some way to go back to initiate the enrollment process. In the current implementation, this is manifested as a button that takes the user back to /enrollment
.
As for the question about the browser back button, I would guess that since our app has a "Previous page" button on some pages, this implies that our UX philosophy is to not solely rely on the browser's back button.
@thekaveman @machikoyasuda @indexing What do y'all think about scheduling some time to go over this format and terminology? Maybe next week or after the break? Despite there being so much literature on use cases, I found that there is a lot of variation on how people actually write them, and it took a bit for me to have a clear idea on what different parts of it mean to me. |
@angela-tran we have a workshop next Wed, is that waiting too long or would that work for a discussion? |
@thekaveman Next Wednesday's workshop sounds great! Thanks |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking really good!
address verification used to be a part of the hosted verification flow, but no longer is
90be6de
to
1f3d8c3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a great start!
I think we talked yesterday about renaming the current "Use Cases" section into "User Flows" or something? In the next iteration of this work I'd like each of these newer "system use cases" to be their own page/doc in a folder -- so we get the free nav menu and easier linking etc.
Tasks discussed yesterday:
|
Closes #1762
The resources that I took a lot of inspiration from are:
From that Wikipedia page, this is what I hope we can get out of writing use cases at this level of granularity: