Sprint 3 Process View Sequence Diagrams - Fatima-Essa/Wits-Social-SDP GitHub Wiki

The Registration and Login Process

In order to use the application a user must be logged in. The user has the choice go logging in on the first page or clicking the registration button which will take them to a registration page.

On the login page the user may enter their details, if these are valid and the user has validated their email, the user will be redirected to the home page. If the user has not validated their email this will first occur and then the user will be taken to the homepage. Alternatively the user may click the "forgot password button" which will bring them to the forgot password pop-up. Here they will be prompted to enter their email address. If a user with that email address exist then they will be sent an email with a link allowing them to reset their password(the link sent also contains an authentication token). After entering a new password the user will be redirected to the login page and will also receive an email notifying them of the change.

On the registration page the user can enter their details and click the register button. If anything goes wrong with the registration, for example if the users username has already been taken, then the user will be notified of this. If the registration is successful the user will be redirected to the login page where they will have to login and validate their email.

SequenceDiagram

Once logged in various processes can take place. These processes have been split up into smaller sequence diagrams for better understanding.

Navigation Bar

This navigation bar remains as a constant through out the application. It initially started with very few options with less than optimal functionality but will grow and expand through the sprints. Buttons on the navigation bar can be clicked and pressed on multiple times through the entire process of using the application.

NavBar

Post Pop-up

This pop-up is rendered to allow users to create posts with captions. This method can be invoked multiple times.

PostPop-Up

Homepage

On the homepage users are able to interact will all posts as much as they'd like. Users are able to click on posts to view them individually and in a larger formal. Users can also view other users profiles(by clicking on a suggested user or a username displayed on a post of comment) to follow them and view the rest of their account relevant information.

HomePage-5

Profile Page

Here users can view the amount of followers they have obtained and the amount they follow. Users can upload profile pictures and view their posts as well as interact with their posts.

ProfilePage-2

Settings Page

This page is rendered to allow users to change their bio and their full name.

SettingsPage

Saved Posts Page

This page is rendered to allow users to view the posts that they have saved. This method can be invoked multiple times.

SavedPostsPage