Page tree

Case of documentation 

Input from the client 

DDT. Mid-level document

"I want that users could log in to the app AND have the ability to reset the password  "
Document status
Document owner
Tech lead
PM


Related requirements:

  1. Registration 

  2. Onboarding 
  3. App launch 

Goal

The goal is to provide users with the ability to log in to the account with their personal credentials.

Requirements

#User StoryDescriptionVisualizationNote
1

As a user, I want to log in so that I can have access to application functionality

General requirements 

  • On the login screen, I can enter my email address and password and submit them for authentication. 
  • I must also see a button that allows me to re-set my password. If I pressed it I will be redirected to  
  • When I enter the required data in the Email field I can proceed to the field below by pressing next (keyboard button).
  • When I entered the required data on the password field I can tap the Done button (keyboard button) in order to close the keyboard. 
  • By default Next button is disabled. If I enter all fields with data it becomes enabled.
  • Upon successful login, I am re-directed to My profile.
  • If I press back I will be re-directed to the sign-in screen with social networks.
  • An appropriate error message should appear when:
  1. If I enter incorrect authorization credentials I should see an appropriate error message indicating my credentials are incorrect.
  2. If my authorization credentials don't exist I should see an appropriate error message indicating my credentials are incorrect.

  


2

As a user, I want to get a link for restoring password so that I can log in to the system in case I forgot the password



Restore a password 

  • On the restore password screen, I can enter my email address, and the "Send a code" button
  • If I press back I will be re-directed to the login screen with previously entered data in the Username/Email entry field
  • Upon submitting an email address:
  1. I should receive an email with a code at the submitted email address.  
  2. I also should be redirected to the Enter 6-digit code screen where I can:
    1. Input a code  - when the user inputs the last number the system should automatically validate the code:
      1. If the code is correct the system should open reset your password screen
      2. If the code is incorrect - the system should show the message "Sorry, the code is incorrect. Try to resend a code"
    2. Resend a code- by tapping on it the system should generate AND send a new code 
  • If I entered the email address on the login screen I should see this email address as a default value.







3As a user, I want to receive a verification code so that I can restore my password 

Receive an email 

I should receive an email with the structure according to the  Restore password email 

  • Code in my email should be valid 24 hours after the moment the email is sent
  • If I sent more than one request for restoring the password, only the latest code should be valid
  • If the code was not valid anymore:
  1. Once I submitted a new password  I should see a default alert with the text "Restore password code is no longer valid or used, "Resend email" and "Cancel" buttons.
  2. If I press "Resend email" I should be redirected to Restore a password screen. 
  • If I press "Cancel" the alert should be closed and I should be redirected to the Home Screen 


4As a user, I want to reset my password

Change password screen 

  • On the Change password screen, I can enter a new password, confirm the password and submit it
  • Upon successful changing the password 
  1. I should see a popup indicating that the password was changed successfully. After the pop-up disappears I should be redirected to the Home screen
  2. The used code should become not valid
  • If I enter an incorrect password or confirm a password I should see an appropriate error message 
  • If I press back I should be redirected to the login screen. The new password and password confirmation that I entered will not be saved. 


  • No labels