Use Cases developed for the development of INcDb.

We have written a list of use cases for our project. This list is subject to change during the development process.

ID Use Case
1 Register an Account
2 Login
3 View Movie
4 View Term for a specific Movie
5 View Term for all Movies
6 View Component
7 Upload Raw Dataset
8 View Uploaded Raw Dataset Informationi
9 Edit Uploaded Raw Dataset Information
Use Case 1: Register an Account
Primary Actors Visitor, User, Server
Secondary Actors None
Preconditions Actor not logged in, does not have an account
Main Flow 1. The Visitor requests to create a new User account.
2. The Server responds with an application form, which includes fields for e-mail address and password.
3. The Visitor enters in their details and submits it to the Server.
4. The Server creates the new User account, and marks it to disabled. The User is emailed instructions on how to activate their account.
5. The Visitor receives the e-mail instructions, and follows the instructions to activate their account.
6. The Server marks the account as enabled, and redirects the Visitor to the "Login" page.
Post Conditions New account registered, logged in, return to "My Collections" page
Alternative Flows 1. Failed to register new account, error message(s) shown on same page
A) Duplicate email.
B) Field(s) left blank.
2. The User does not follow through on the account activation; the account is automatically deleted after a period of inactivity.
Use Case 2: Login
Primary Actors Visitor, User, Server
Secondary Actors None
Preconditions Actor not logged in, owns an account
Main Flow 1. A Visitor goes to the "Login" page.
2. The Visitor enters in an email and password, and submits the form to the Server.
3. The Server checks their email and password against the list of existing user accounts, and verifies that the account exists.
4. The Server updates the Visitor’s session to indicate that they are an authorised User.
5. The Visitor becomes a User, and is redirected to "My Collections" page.
Post Conditions Actor logged in, return to "My Collections" page
Alternative Flows Invalid Login, error message shown on same page "Invalid Login, please login using registered email address and password, or register" and prevented from continuing.
Use Case 3: View Movie
Primary Actors Visitor, Server
Secondary Actors None
Preconditions None
Main Flow 1. The Visitor requests a Movie from the list of Movies on "Movies" page.
2. The Server connects to the database and list the information (averaged brain images, list of Terms associated, list of Components) about the selected Movie
Post Conditions None
Alternative Flows The database cannot be accessed; an error message is displayed
Use Case 4: View Term for a specific Movie
Primary Actors Visitor, Server
Secondary Actors None
Preconditions None
Main Flow 1. The Visitor requests a Term from the list of Terms on "Movie" page.
2. The Server connects to the database and list the information (averaged brain images, list of Movies associated, list of Components) about the selected Term
Post Conditions None
Alternative Flows The database cannot be accessed; an error message is displayed
Use Case 5: View Term for all Movies
Primary Actors Visitor, Server
Secondary Actors None
Preconditions None
Main Flow 1. The Visitor requests a "Terms" page.
2. The Server connects to the database and list all available Terms.
Post Conditions None
Alternative Flows None
Use Case 6: View Component
Primary Actors Visitor, Server
Secondary Actors None
Preconditions None
Main Flow 1. View Movie.
2. From list of Components under "Components" tab, select a Component.
OR
1. View Term (either for specific Movie or all Movies).
2. From list of Components under "Components" tab, select a Component.

3.The Server connects to the database and list the information (averaged brain images, list of Terms associated) about the selected Component.
Post Conditions None
Alternative Flows None
Use Case 7: Upload Raw Dataset
Primary Actors User, Server
Secondary Actors None
Preconditions User must be logged In
Main Flow 1. The User attaches a file to the Dataset, by uploading a file to the Server.
2. The Server save this file to a temporary storage.
3. The User enter additional information for the Dataset.
4. Once, the User is finished, the file is uploaded and the temporary storage is deleted.
Post Conditions New Dataset uploaded, pending analysis
Alternative Flows 1. The uploading process is disconnected.
2. File is not uploaded.
3. The User is redirect to the "Contribute" page.
Use Case 8: View Uploaded Raw Dataset Information
Primary Actors User, Server
Secondary Actors None
Preconditions Logged In, Uploaded Dataset previously
Main Flow 1. The Visitor requests a "Dataset" page.
2. The Server connects to the database and list information about the Dataset.
Post Conditions None
Alternative Flows None
Use Case 9: Edit Uploaded Raw Dataset Information
Primary Actors User, Server
Secondary Actors None
Preconditions Logged In, Uploaded Dataset previously
Main Flow 1. The User requests the "Edit Dataset" page
2. The Server presents the "Edit Dataset" page, which contains all the fields on the dataset
3. The User changes one or more fields
4. The User submits the page back to the server
5. The Server changes the fields of the current Dataset to the value provided by the User
6. The User is redirected to the "Dataset" page
Post Conditions None
Alternative Flows 1. The User does not have the permissions to edit the Dataset and an error message is displayed.
2. The database cannot be accessed; an error message is displayed.