Use Cases for Iteration1 - danask/MIS GitHub Wiki
Requirements
- Full Use-cases with detailed specifications for the two current use cases for this iteration
- Diagram and descriptions
Iteration1
- The two current use cases for this iteration: Login, User registration
Menu Home

- Use case: Menu bar and screen when user access to MIS.
- Primary actor: Everyone
- Goal in context: To display the first page with navigation menu.
- Precondition: MIS has been installed properly and a user can access the correct URL. The account should be already registered and login properly.
- Trigger: Access to the URL in Chrome and navigate the menu bar in the main page.
- Scenario:
- User: type the MIS URL to access the system
- User: log in the page (Already created accounts are only accessible to login)
- User: click ‘Login’ menu
- User: click the one of menu to check if it move on the other page.
- The server or database is not installed properly, then it shows error message when click the ‘Sign in’.
- The features which do not support currently, it is just disabled.
- The design layout is not finished yet. So, it may not be clear to see the menu when hover the menu.
- Priority: Essential for users.
- When available: In the home page.
- Frequency of use: It is possible whenever you access the application.
- Channel to actor: Via web browser
- Secondary actors: Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to show the page as the size of screen?
- Is there any way to move on the other page? (Navigation bar)
- Can we access to login page any time?
User Login

- Use case: Login the registered account information.
- Primary actor: Everyone
- Goal in context: To login into the system.
- Precondition: The account should be already registered. MIS has been installed properly and a user can access the correct URL
- Trigger: In the main page, click ‘Login’ menu
- Scenario:
- User: type the MIS URL to access the system
- User: log in the page (Already created accounts are only accessible to login)
- User: click ‘Login’ menu
- User: display the user id and password.
- The server or database is not installed properly, then it shows error message when click the ‘Sign in’.
- If the username and password is incorrect then it will not allow to login.
- Only registered users can be allowed to login.
- Priority: Essential for registered users.
- When available: In the home page.
- Frequency of use: Only once it is possible to login the account.
- Channel to actor: Via web browser
- Secondary actors: Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to login again into the incorrect account with username and password?
- Is there any way to logout from the system?
- How many users can login at a time?
User Registeration

- Use case: Register to the MIS
- Primary actor: General user
- Goal in context: To register to the MIS when the user visits the MIS
- Precondition: MIS has been installed properly and a user can access the correct URL
- Trigger: In the login page, click ‘Sign up’ button
- Scenario:
- User: type the MIS URL to access the system
- User: click ‘Sign up’ button under log in page
- User: input the user profile
- User: click ‘Submit’
- The server or database is not installed properly, then it shows error message when click the ‘Sign up’
- Invalid ID, name and password are input in the registration form: ‘Submit’ doesn’t work.
- Duplicate ID does not allow in the registration form: ‘Submit’ doesn’t work.
- Priority: Essential, must be implemented before login
- When available: In the first login page
- Frequency of use: Once
- Channel to actor: Via web browser
- Secondary actors: User manager or Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to change the user ID?
- Should the administrator assign the role to users?
- Is there a way to approve without user ID?
Overall

Search database
- Use case: Search the movie information from the registered account.
- Primary actor: Only the logged users can search the information.
- Goal in context: To get the information about the movie.
- Precondition: The account should be logged in. MIS has been installed properly and a user can access the correct URL
- Trigger: In the main page, click ‘Search’ menu
- Scenario:
- User: type the MIS URL to access the system
- User: Login into the account.
- User: click ‘Search’ menu
- User: Search the information (Only the logged users can access the information)
- User: display the whole information about the movie.
- The server or database is not installed properly, then it shows error message when click the ‘Sign in’.
- If the account is not login it will not allow to search the information.
- If there will be no information in the movie database, then the user cannot see any of the results.
- Priority: Essential for logged users.
- When available: After login the page, user can only access the ‘search’ button.
- Frequency of use: Only accessible when the user will enter into the textbox.
- Channel to actor: Via web browser
- Secondary actors: Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- How can the user access the information about movie database if he adds wrong characters in search textbox?
- Is there any way to download the movie information?
- Does it allow more than one movie information to access at the same time?
Add new data to MIS
- Use case: Add data in the database
- Primary actor: Database Administrator
- Goal in context: To add data about a movie in the database using SQL
- Precondition: Database Administrator account is needed. MIS has been installed properly and a user can access the correct URL
- Trigger: Click the database tab from the navigation bar
- Scenario:
- Database Administrator: type the MIS URL to access the system
- Database Administrator: Log in from the main page
- Database Administrator: click ‘Database’ menu
- Database Administrator: click ‘Add’ Button
- Database Administrator: input the data for the movies into database
- The server or database is not installed properly, then it shows error message when click the ‘Sign in’.
- This function only is implemented by database administrator.
- Only one movie data can be entered at one time.
- Priority: Optional, initially there can be no data, but DBA can add more data.
- When available: After login the page, in the database tab from the navigation bar.
- Frequency of use: Whenever choose ‘Database’ and click ‘Add’ button
- Channel to actor: Via web browser or MySQL
- Secondary actors: Administrator.
- Channels to secondary actors: Support via email address
Open issues:
- Is there a way to add the plenty of data at the same time?
- Is there a way to add data via the MySQL directly?
- Is there a way to import the list of data?
Delete a data to MIS
- Use case: Delete data from the database
- Primary actor: Database Administrator
- Goal in context: To delete data about a movie in the database using SQL
- Precondition: Database Administrator account is needed. MIS has been installed properly and a user can access the correct URL
- Trigger: Click the database tab from the navigation bar
- Scenario:
- Database Administrator: type the MIS URL to access the system
- Database Administrator: Log in from the main page
- Database Administrator: click ‘Database’ menu
- Database Administrator: click ‘Delete’ Button
- Database Administrator: delete data for movies from the database
- The server or database is not installed properly, then it shows error message when click the ‘Sign in’.
- This function only is implemented by database administrator.
- Only one movie data can be deleted at one time.
- If there is no data, then no chance to delete.
- Priority: Optional, initially there can be no data, but if DBA can add more data, then we can choose one to delete.
- When available: After login the page, in the database tab from the navigation bar.
- Frequency of use: When choose ‘Database’ and click ‘Delete’ button
- Channel to actor: Via web browser and MySQL
- Secondary actors: Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to delete the plenty of data at the same time?
- Does it allow to delete data via the MySQL directly?
- Is there a way to back up or roll back the data?
List up users
- Use case: Display user list which registered in the database
- Primary actor: User manager
- Goal in context: To show what users exist and verify the current status
- Precondition: User manager account. MIS has been installed properly and a user can access the correct URL
- Trigger: In the main page, click ‘User’ menu
- Scenario:
- User manager: type the MIS URL to access the system
- User manager: log in the page (if there is not account for user manager, create this first. Refer to 1.5.5)
- User manager: click ‘User’ menu
- User manager: display the list of users with status
- The server or database is not installed properly, then it shows error message when click the ‘Sign up’.
- This function only is implemented by user manager or administrator.
- If there is no user to register, it will only show user manager and administrator.
- The list displays a page with the limits of account up to maximum 20.
- Priority: Essential for user manager to check and manage the current users
- When available: In the menu bar of the main page
- Frequency of use: Whenever click the ‘User’ menu
- Channel to actor: Via web browser
- Secondary actors: Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to show the user list by order?
- Should the user manger (including administrator) access this menu?
- How many users can display a page?
Remove a user
- Use case: Remove a user which registered in the database
- Primary actor: User manager
- Goal in context: To remove a user from the database
- Precondition: User manager account is needed. MIS has been installed properly and a user can access the correct URL
- Trigger: In the main page, click ‘User’ menu
- Scenario:
- User manager: type the MIS URL to access the system
- User manager: log in the page (if there is not account for user manager, create this first. Refer to 1.5.5)
- User manager: click ‘User’ menu
- User manager: display the list of users with status and there is a button to delete a user
- The server or database is not installed properly, then it shows error message when click the ‘Sign up’.
- This function only is implemented by user manager or administrator.
- If the list only shows user manager and administrator, then there is no user to remove. This is because they are users given by default.
- Only a user can be erased at a time.
- Priority: Essential for user manager to manage the current users
- When available: In the menu bar of the main page
- Frequency of use: When choose a user and click ‘Delete’ button
- Channel to actor: Via web browser
- Secondary actors: Administrator
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to roll-back the removed in the user list?
- Should the user manger (including administrator) access this menu?
- How many users can delete at a time?
Assign the role to a user
- Use case: Assign the role to a user which registered in the database
- Primary actor: Administrator
- Goal in context: To map a user with the one of proper roles from the database
- Precondition: Administrator account is needed. MIS has been installed properly and a user can access the correct URL
- Trigger: In the main page, click ‘Admin’ menu
- Scenario:
- Administrator: type the MIS URL to access the system
- Administrator: log in the page
- Administrator: click ‘Admin’ menu
- Administrator: there is a button to map a user with the roles such as guest, database administrator, user manager
- The server or database is not installed properly, then it shows error message when click the ‘Sign up’.
- This function only is implemented by administrator.
- If the list only shows user manager and administrator, then there is no user to assign. This is because they are users given by default.
- Only a user can be assigned at a time.
- Priority: Essential for administrator to manage the current users
- When available: In the menu bar of the main page
- Frequency of use: When choose a role for a user and click ‘Assign’ button
- Channel to actor: Via web browser
- Secondary actors: None. Administrator only
- Channels to secondary actors: Support via email address
- Open issues:
- Is there a way to add more roles for users?
- Can the administrator only access this menu?
- How many users can assign at a time?