...
Goal | Alice wants to invite Bob to join her Synapse team. |
Primary actor | Alice. |
Secondary actors | Bob. |
Precondition | Alice has created a team and she is at her team's page. |
Success end | Bob joins the team, or Alice cancels the invitation to Bob. |
Main success scenario | Step 1. Alice invites Bob to join her team by entering his email address and an optional invitation message. Step 2. System sends Bob an email containing an invitation link to join Alice's team. Step 3. Bob clicks on the invitation link. Step 4. Bob reaches a registration/sign in page and creates his new Synapse account. Step 5. System adds Bob's account to Alice's team. |
Error scenarios | At step 1. The email address entered by Alice doesn't exist.
|
Alternative scenarios | At step 2. System detects that the email address entered already has a Synapse account associated with it, presumably it's Bob's account.
At step 3. Alice decides not to collaborate with Bob anymore and wants to cancel her invitation.
At step 4. A. Bob already has a Synapse account associated with a different email address and is already signed in in his browser.
B. Bob already has a Synapse account associated with a different email address but isn't signed in.
|
Relevant questions
At step 4 in the main success scenario, should we skip the email validation process that precedes registering an account?
+ Easier to use for the user.
- Forces the user to register Synapse account with the email address the invitation was sent to.
Leaning towards yes, we should skip it.
Related to the above, should the invitation email have one link to a sign in/registration page; or two links, one to a sign in page and one to a registration page?
Tentatively a single link is preferred.
Should we allow batch inviting? Currently only one user can be invited at a time.
Not necessary.
Should we display pending invitations in Alice's team page and allow her to cancel them? This would remove the need for the alternative scenario on step 5.
Yes, it's a good idea as it enables alternative scenario step 3.
What happens if the invitee is already signed in to Synapse when they click the invitation link(s)?
Addressed by alternative scenario step 4a.
Should we allow existing users to be searched by their email address?
No, we shouldn't allow reverse searches because user email addresses aren't public.
Mockups
View file | ||||
---|---|---|---|---|
|
...