use cases message board authors - university of california...

32
Updated: November 20, 2010 Developing Enterprise Undergraduate Solutions Page 1 of 32 Use Cases Message Board Authors Daniel Barajas System Architect Aram Danakian Senior System Analyst Matt Jones Software Development Lead Chad Morse Project Manager Jason Snyder Database Specialist Norman Wu Quality Assurance Lead Company Developing Enterprise Undergraduate Solutions, D.E.U.S. Compilation Date: November 18, 2010

Upload: others

Post on 16-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 1 of 32

Use Cases

Message Board

Authors Daniel Barajas – System Architect

Aram Danakian – Senior System Analyst Matt Jones – Software Development Lead

Chad Morse – Project Manager Jason Snyder – Database Specialist

Norman Wu – Quality Assurance Lead

Company Developing Enterprise Undergraduate Solutions, D.E.U.S.

Compilation Date: November 18, 2010

Page 2: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 2 of 32

Use Case Description

As requested by the Customer on Monday, September 27th, this Use Case Model will

function as a tool in order to describe the various paths available regarding the Message Board. The

tool will be presented as a Web Forum for the purpose of facilitating communication between

members of a participating group. Per specific request of the customer, this group will be

represented by the students in a given class. However, the tool is intended to be extensible and will

allow for the use of the Web Forum by various groups including classes, fan groups, and company

communication boards.

Within the Web Forum, three distinctive Actors will be referenced. The actors are, Regular

User, Moderator, and Super User. The different actors will hold different levels of capability within

the Forum. Based on the Customer's requests, the Super User will have all the capabilities of the

Moderator which will have all the capabilities of the Regular User.

The Web Forum will have 3 levels of messages. The top level will be represented by Topic(s) which will represent an overarching category within the Forum. In a specific example, one Topic might be an assignment within a given class. The next level is represented by a Thread. In this set of examples, a Thread might be something like 'Technical Assistance'. There may be multiple Thread(s) within each Topic. The next level down will consist of Post(s). There may be multiple Post(s) within a single Thread. In this case a Post could be a student asking for assistance in setting up his C++ compiler. A Post may also be created in response to another Post rather than just a Thread. The final level within the system is referred to as a Reply. Each Reply will originate as a response to either a Post or Reply. In this way, a Reply will only have one 'parent' but may have multiple Reply(s) responding to it.

Page 3: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 3 of 32

Table of Contents

Test Cases

- UC 1 Log in

- UC 2 Topic Level View

- UC 3 Thread Level View

- UC 4 Create Topic

- UC 5 Modify Topic

- UC 6 Delete Topic

- UC 7 Create Thread

- UC 8 Modify Thread

- UC 9 Delete Thread

- UC 10 Create Post

- UC 11 Modify Post

- UC 12 Delete Post

- UC 13 Mark Thread as Read

- UC 14 Mark Thread as Unread

- UC 15 Search Forum

Page 4: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 4 of 32

Use Case #1: “Log In”

Description: This use case outlines the presentation layering step process of a user logging into the forum.

Within this use case, user shall refer to any Regular User Super User or Moderator.

Desired Outcome: The user is logged in and viewing the home page.

User Goals: The user wants to log into the forum.

Dependency Use Cases: N/A

Involved Requirements: N/A

Details:

Priority: 1

Status: Coding Phase

Test Phase Status: Planned

Preconditions: 1.) The user credentials are valid and the user exists in the forum Users list.

Postconditions: 1.) The user is logged into the forum. 2.) The user is redirected to the Homepage.

Trigger: 1.) The user enters his or her credentials and clicks on login.

Workflow: 1.) The user opens the web page for the forum. 2.) The user puts in credentials in textboxes before clicking on 'Login'. 3.) The System successfully receives the correct credentials and displays the main page to the user. The main page now shows a user toolbar at the top containing tools specific to the particular user type.

Alternate Paths: 1.) The user accidentally puts in the wrong credentials and clicks 'Log In'. The "System" brings the User* to the incorrect password page, showing the login interface in the center of the page, and is prompted to put in the correct credentials. This occurs after step 2. Options: N/A

Page 5: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 5 of 32

Use Case #2: “Topic Level View”

Description: This use case outlines the presentation layering step process of a user viewing the contents of a given Topic.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: All threads within a topic are displayed on the screen. User Goals: The user wants to view all threads within a given topic on the message board. Dependency Use Cases: 1.) login – UC1 Involved Requirements:

SR01 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The user requesting the display is registered and logged in. 2.) The topic has not been deleted. Postconditions: 1.) The System displays all threads within a given topic to the user. Trigger: 1.) From homepage.jsp, the user selects a topic to view. 2.) From the following java server pages by selecting the name of the topic within the breadcrumb path. a.) threadLevelView.jsp b.) createThread.jsp c.) modifyThread.jsp d.) deleteThread.jsp e.) createPost.jsp f.) modifyPost.jsp g.) deletePost.jsp

Page 6: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 6 of 32

Workflow: 1.) The System verifies that the user is logged in. 2.) The System verifies that the Topic is still viewable. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 1. 2.) The System determines that the Topic has been deleted and so it may no longer display its contained threads. The System displays an updated view of the topics in the forum. This path occurs following step 2. Options: N/A

Page 7: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 7 of 32

Use Case #3: “Thread Level View”

Description: This use case outlines the presentation layering step process of a user viewing the contents of a given Thread.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: All posts within a thread are displayed on the screen. User Goals: The user wants to view all posts within a given thread on the message board. Dependency Use Cases: 1.) Login – UC1 2.) Topic Level View – UC2 Involved Requirements:

SR09 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The user requesting the display is registered and logged in. 2.) The thread has not been deleted. Postconditions: 1.) The System displays all posts within a given thread to the user. Trigger: 1.) From topicLevelView.jsp, the user selects a thread to view. 2.) From the following java server pages by selecting the name of the thread within the breadcrumb path. a.) createPost.jsp b.) modifyPost.jsp c.) deletePost.jsp

Page 8: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 8 of 32

Workflow: 1.) The System verifies that the user is logged in. 2.) The System verifies that the Thread is still viewable. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 1. 2.) The System determines that the Thread has been deleted and so it may no longer display its contained posts. The System displays an updated view of the topics in the forum. This path occurs following step 2. Options: N/A

Page 9: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 9 of 32

Use Case #4: “Create Topic”

Description: This use case outlines the presentation layering step process of a user creating a topic.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: A new topic is successfully added to the forum. It is available to the public’s view. User Goals: The moderator or super user wants to create a particular topic for public discussion on the message board. Dependency Use Cases: 1.) login – UC1 Involved Requirements:

SR02 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The form content is valid. 2.) The user submitting the form is registered and logged in. 3.) The user is a moderator or a super user 4.) No topic with the same title exists in the forum. Postconditions: 1.) The form content and settings are successfully added to the forum. 2.) The user is redirected to the new topic’s topic-level view. Trigger: 1.) From the homepage, the user clicks on the create topic button.

Page 10: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 10 of 32

Workflow: 1.) The System brings the user to a create topic-page. The page contains a topic-name textbox as well as a description textbox. The form also includes a ‘Submit’ button. 2.) The user fills in the form and selects submit. 3.) The System verifies that the user is logged in and is either a Moderator or Super User. 4.) The System validates the form content. 5.) The System processes the content addition and adds the topic to the forum. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 3. 2.) The System determines that the user is not a Super User or Moderator and sends the user to the homepage. This path occurs following step 3. 3.) The System determines that the form content is not valid and sends the user back to the create topic page. This path occurs following step 4. 4.) The System determines that the topic has a title that is a duplicate of a pre-existing topic on the forum. The user is returned to the create topic page. This path occurs following step 5. Options: N/A

Page 11: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 11 of 32

Use Case #5: “Modify Topic”

Description: This use case outlines the presentation layering step process of a user modifying a Topic.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: The content of the topic is changed in the forum. It is available to the public’s view. User Goals: The moderator or super user wants to modify a particular topic on the message board. Dependency Use Cases: 1.) login – UC1 Involved Requirements:

SR03 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The form content is valid. 2.) The user submitting the form is registered and logged in. 3.) The topic is currently viewable in the homepage. 4.) The user is a moderator or a super user. Postconditions: 1.) The form content and settings are successfully changed within the forum. 2.) The user is redirected to the modified topic’s topic-level view. Trigger: 1.) From the homepage, the user clicks on a topic’s modify topic link.

Page 12: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 12 of 32

Workflow: 1.) The System brings the user to a modify topic page. The page contains a topic-name textbox as well as a description textbox with the content pre-filled with the original topic information. The form also includes a ‘Submit’ button. 2.) The user fills in the form and selects submit. 3.) The System verifies that the user is logged in and is either a Moderator or Super User. 4.) The System validates the form content. 5.) The System processes the content and modifies the topic within the forum. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 3. 2.) The System determines that the user is not a Super User or Moderator and sends the user to the homepage. This path occurs following step 3. 3.) The System determines that the form content is not valid and sends the user back to the modify topic page. This path occurs following step 4. 4.) The System determines that the topic has a title that is a duplicate of a pre-existing topic on the forum. The user is returned to the modify topic page. This path occurs following step 5. Options: N/A

Page 13: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 13 of 32

Use Case #6: “Delete Topic”

Description: This use case outlines the presentation layering step process of a user deleting a Topic. • Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: A particular topic has been removed from view on the forum. User Goals: The moderator or super user wants to delete a particular topic from the message board. Dependency Use Cases: 1.) login – UC1 Involved Requirements:

SR04 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The topic is currently viewable in the homepage. 2.) The user submitting the form is registered and logged in. 3.) The user is a moderator or a super user. Postconditions: 1.) The topic has been removed from view in the forum. 2.) The user is redirected to the homepage. Trigger: 1.) From the homepage, user selects the delete topic link next to one of the visible topics.

Page 14: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 14 of 32

Workflow: 1.) The System verifies that the user is logged in. 2.) The System brings the user to a confirmation page requesting the user to verify the deletion before processing the action. 3.) The user selects the confirm button.

The System verifies that the user is either a Moderator or Super User. 4.) 5.) The System removes the topic from view on the forum. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 1. 2.) The System determines that the user is not a Super User or Moderator and sends the user to the homepage. This path occurs following step 4. 3.) The System determines that the topic has already been removed from view on the forum and returns the user to the homepage. This path occurs following step 5. Options: N/A

Page 15: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 15 of 32

Use Case #7: “Create Thread”

Description: This use case outlines the presentation layering step process of a user creating a Thread. • Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: A new thread is successfully added to the forum. It is available to the public’s view. User Goals: The user wants to create a particular thread for public discussion on the message board. Dependency Use Cases: 1.) login – UC1 2.) topic-level view – UC2 Involved Requirements:

SR10 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The form content is valid. 2.) The user submitting the form is registered and logged in. 3.) The parent topic exists in the forum. 4.) No thread in the same topic exists with the same subject in the forum. Postconditions: 1.) The form content and settings are successfully added to the forum. 2.) The user is redirected to the new thread’s thread-level view. Trigger: 1.) From a particular topic’s topic level view, the user clicks on the create thread button.

Page 16: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 16 of 32

Workflow: 1.) The System brings the user to a create thread page. The page contains a thread-name textbox as well as a description textbox. The form also includes a ‘Submit’ button. 2.) The user fills in the form and selects submit. 3.) The System verifies that the user is logged in. 4.) The System validates the form content. 5.) The System processes the content addition and adds the thread to the forum. Alternate Paths:

1.) The System determines that the user is not logged in and sends the user to the login pa

2.) ge. This path occurs following step 3. 2.) The System determines that the form content is not valid and sends the user back to the create thread page. This path occurs following step 4. 3.) The System determines that the thread has a title that is a duplicate of a pre-existing title within the having the same parent topic m. The user is returned to the create thread page. This path occurs following step 5. Options: 1.) Mark as sticky: On the parent’s topic-level view, this thread is displayed in the sticky table of displayed threads. Details in topic-level view UC2. 2.) Mark as important: On the parent’s topic-level view, this thread is displayed in the sticky table of displayed threads, but is specific to the client’s view only. Details in topic-level view UC2. 3.) Lock thread: Removes capability to create posts within this thread. Details in create Post UC11. 4.) Email settings: Sends all posts as emails to the author of this thread. Details in create Post UC11.

Page 17: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 17 of 32

Use Case #8: “Modify Thread”

Description: This use case outlines the presentation layering step process of a user modifying a Thread. • Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: An existing thread is modified in the forum. It is available to the public’s view. User Goals: The user wants to modify a thread on the message board. Dependency Use Cases: 1.) login – UC1 2.) topic-level view – UC2 Involved Requirements:

SR11

SR12

SR13 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The form content is valid. 2.) The user submitting the form is logged in. 3.) The parent topic is currently viewable in the forum. 4.) The user submitting the form is either the owner of the thread, a Moderator, or a Super User. Postconditions: 1.) The form content and settings are successfully updated in the forum. 2.) The user is redirected to the modified thread’s thread-level view. Trigger: 1.) From a Topic’s Topic View, the user clicks on the modify link next to a particular thread.

Page 18: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 18 of 32

Workflow: 1.) The System brings the user to a modify thread page. The page contains a thread-name textbox as well as a description textbox with the content pre-filled with the original thread information. The form also includes a ‘Submit’ button. 2.) The user fills in the form and selects submit. 3.) The System verifies that the user is logged in. 4.) The System verifies that the user is either a Moderator or Super User or the author of the original thread. 5.) The System validates the form content. 6.) The System processes the content and modifies the thread within the forum. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 3. 2.) The System determines that the user is not the author of the thread, and is also not a moderator or super user. The user is returned to homepage. This path occurs following step 4. 3.) The System determines that the content is not valid and returns the user to the modify thread page. This path occurs just after step 5 in the workflow. 4.) The System determines that the thread has a title that is a duplicate of a pre-existing title within the having the same parent topic m. The user is returned to the create thread page. This path occurs following step 6. Options: N/A

Page 19: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 19 of 32

Use Case #9: “Delete Thread”

Description: This use case outlines the presentation layering step process of a user deleting a Thread. • Within this use case, user shall refer to any Super User, or Moderator. Desired Outcome: The thread is no longer visible in the public view of the forum. User Goals: The user wants to delete a particular thread in the forum. Dependency Use Cases: 1.) login – UC1 2.) topic-level view – UC2 Involved Requirements:

SR14

SR15

SR16

BR17

BR18 Details:

Priority: 1

Status: Coding Phase Test Phase Status: Planned Preconditions: 1.) The user deleting the thread is logged in. 2.) The parent topic is viewable in the forum. 3.) The user deleting the thread is a super user, or a Moderator. 4.) The thread is currently viewable in the forum. Postconditions: 1.) The thread is no longer viewable in the forum. 2.) The user is redirected to the topic-level view. Trigger: 1.) From a Topic’s Topic View, the user clicks on the delete link next to a particular thread.

Page 20: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 20 of 32

Workflow: 1.) The System verifies that the user is logged in. 2.) The System brings the user to a confirmation page requesting the user to verify the deletion before processing the action. 3.) The user selects the confirm button.

The System verifies that the user is either a Moderator or Super User. 4.) 5.) The System removes the thread from view on the forum. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 1. 2.) The System determines that the user is not a Super User or Moderator and sends the user to the homepage. This path occurs following step 4. 3.) The System determines that the thread has already been removed from view on the forum and returns the user to the homepage. This path occurs following step 5. Options: N/A

Page 21: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 21 of 32

Use Case #10: “Create Post”

Description: This use case outlines the presentation layering step process of a user creating a post.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: A new post is successfully added to the forum. It is available to the public’s view. User Goals: The user wants to create a post in response to a thread or another post on the message board. Dependency Use Cases: 1.) login – UC1 2.) topic-level view – UC2

3.) thread-level view – UC3

Involved Requirements:

SR32

Details:

Priority: 1

Status: Coding Phase

Test Phase Status: Planned

Preconditions: 1.) The user enters valid content in the form. 2.) The user submitting the form is registered and logged in. 3.) The posts parent topic is viewable in the forum. 4.) The posts parent thread is viewable in the forum. Postconditions: 1.) The form content and settings are successfully added to the forum. 2.) The user is redirected to the parent thread’s new Thread Level View. Trigger: 1.) The user selects a thread or post to respond to and selects the ‘Create Post’ link.

Page 22: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 22 of 32

Workflow: 1.) The System brings the user to a create post-page. The page contains a post subject textbox and a post content textbox. The form also includes a ‘Submit’ button. 2.) The user fills in the form and selects submit. 3.) The System verifies that the user is logged in. 4.) The System validates the form content. 5.) The System verifies that the posts parent thread and topic have not been deleted. 6.) The System processes the content addition and adds the post to the forum. Alternate Paths: 1.) The system determines that the user is not logged in and sends the user to the login page. This path occurs following step 3. 2.) The system determines that the form content is not valid and sends the user back to the create post page. This path occurs following step 4. 3.) The System determines that the parent thread or topic has already been removed from view on the forum and returns the user to the previous thread level view. This path occurs following step 5. Options: N/A

Page 23: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 23 of 32

Use Case #11: “Modify Post” Description: This use case outlines the presentation layering step process of a user modifying a post.

Within this use case, user shall refer to any Regular User, Super User, or Moderator unless specified. Desired Outcome: The post is modified in the forum. It is available to the public’s view. User Goals: The user wants to modify a post on the message board. Dependency Use Cases: 1.) login – UC1

2.) Topic Level View – UC2

3.) Thread Level View – UC3

Involved Requirements:

SR33

SR24

SR25

Details:

Priority: 1

Status: Coding Phase

Test Phase Status: Planned

Preconditions: 1.) The form content is valid. 2.) The user submitting the form is registered and logged in. 3.) The user submitting the form is either the author of the post, a moderator, or a super user. 4.) The posts parent is viewable in the forum. 5.) The posts parent thread is viewable in the forum. 6.) The post is viewable in the forum. Postconditions: 1.) The form content and settings are successfully changed in the forum

2.) The user is redirected to the Thread Level View containing the post. Trigger: 1.) The user selects a thread or post to respond to and selects the ‘Modify Post’ link.

Page 24: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 24 of 32

Workflow: 1.) The System brings the user to a modify post-page. The page contains a post subject textbox and a post content textbox. The form also includes a ‘Submit’ button. 2.) The user fills in the form and selects submit. 3.) The System verifies that the user is logged in. 4.) The System verifies that the user is either the original author of post, a Moderator or a Super User. 5.) The System validates the form content. 6.) The System verifies that the posts parent thread and topic have not been deleted. 7.) The System verifies that the post has not been deleted. 8.) The System processes the content addition and adds the post to the forum. Alternate Paths: 1.) The System determines that the user is not logged in and sends the user to the login page. This path occurs following step 3. 2.) The System determines that the user is not the original author of post, Super User or Moderator and sends the user to the Thread Level View. This path occurs following step 4. 3.) The system determines that the form content is not valid and sends the user back to the modify post page. This path occurs following step 5. 4.) The System determines that the parent thread or topic has already been removed from view on the forum and returns the user to the previous thread level view. This path occurs following step 5. Options: N/A

Page 25: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 25 of 32

Use Case #12: “Delete Post”

Description: This use case outlines the presentation layering step process of a user deleting a post.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: The post now displays the message “this post has been deleted”. User Goals: The user wants to delete a particular topic from within the forum. Dependency Use Cases: 1.) login – UC1

2.) Topic Level View – UC2

3.) Thread Level View – UC3

Involved Requirements:

SR36

SR37

SR38

BR39

BR40

Details:

Priority: 1

Status: Coding Phase

Test Phase Status: Planned

Preconditions: 1.) The form content is valid. 2.) The user submitting the form is registered and logged in. 3.) The user submitting the form is either the author of the post, a moderator, or a super user. 4.) The posts parent is viewable in the forum. 5.) The posts parent thread is viewable in the forum. 6.) The post is viewable in the forum. Postconditions: 1.) The post is no longer viewable in the forum. 2.) The user is redirected to the parent threads Thread Level View. Trigger: 1.) The user clicks the delete button next to a post on a thread level view.

Page 26: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 26 of 32

Workflow: 1.) The System verifies that the user is logged in. 2.) The System brings the user to a confirmation page requesting the user to verify the deletion before processing the action. 3.) The user selects the confirm button.

The System verifies that the user is either the author of the post or a Moderator or Super 4.) User. 5.) The System verifies that the posts parent thread and topic have not been deleted. 6.) The System verifies that the post has not been deleted. 7.) The System removes the post and all children of the post from view on the forum. Alternate Paths: 1.) The system determines that the user is not logged in and returns the user to the login page. This path occurs following step 1. 2.) The system determines that the user is not the owner of the post and is neither a Super User nor a Moderator. The user is redirected to Thread Level View indicating lack of significant privileges to perform the action. This path occurs following step 4. 3.) The system determines that the post has been deleted in the system. The user is redirected to the Thread Level View with an error message indicating that the thread no longer exists. This path occurs following step 6.

Options: N/A

Page 27: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 27 of 32

Use Case #13: “Mark Thread as Read” Description: This use case describes the implementation details for a user marking a thread as read. This use case is client specific, meaning that the mark as read action taken by this unique user does not influence the mark as read/unread view of this same thread of any other user.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: The thread will successfully display as a read thread for a user on the Topic Level View. User Goals: The unique user wants to view a thread as read within a Topic Level View. Dependency Use Cases: 1.) Login – UC 1

2.) Topic Level View – UC 2

Involved Requirements:

SR27

Details:

Priority: 5

Discontinued

Test Phase Status: N/A

Preconditions: 1.) The user is logged in. 2.) The thread has not been deleted from the forum. Postconditions: 1.) The thread is now marked as read to the user. 2.) The user is redirected to the updated topic-level view. Trigger: 1.) From Topic Level View, the user clicks on the mark as read button. Workflow: 1.) The system checks to see if the user is logged in. 2.) Within this use case, user shall refer to any Regular User, Super User, or Moderator. 3.) The system marks the thread as read.

Page 28: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 28 of 32

Alternate Paths: 1.) The system determines that the user is not logged in and returns the user to the login page. The path occurs following step 1. 2.) The system determines that the thread has been deleted. The user is then sent to the Topic Level View. This path occurs following step 1. Options: N/A

Page 29: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 29 of 32

Use Case #14: “Mark Thread as Unread”

Description: This use case describes the implementation details for a user marking a thread as unread. This use case is client specific, meaning that the mark as unread action taken by this unique user does not influence the mark as read/unread view of this same thread of any other user.

Within this use case, user shall refer to any Regular User, Super User, or Moderator. Desired Outcome: The thread will successfully display as an unread thread for a user on the topic level view. User Goals: The unique user wants to view a thread as unread within a topic level view. Dependency Use Cases: 1.) Login – UC 1

2.) Topic Level View – UC 2

Involved Requirements:

SR28

Details:

Priority: 5

Status: Discontinued

Test Phase Status: N/A

Preconditions: 1.) The user is logged in. 2.) The current thread has not been removed from the forum. Postconditions: 1.) The thread is now marked as unread to the user. 2.) The user is redirected to the updated topic-level view. Trigger: 1.) From Topic Level View, the user clicks on the mark as unread button. Workflow: 1.) The System checks to see if the user is logged in. 2.) The System verifies that the thread has not been removed from the forum. 3.) The System marks the thread as unread.

Page 30: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 30 of 32

Alternate Paths: 1.) The system determines that the user is not logged in and returns the user to the login page. The path occurs following step 1. 2.) The system determines that the thread no longer exists. Sends user to Topic Level View. This path occurs following step 2. Options: N/A

Page 31: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 31 of 32

Use Case #15: “Search Forum”

Description: This use case outlines the presentation layering step process of a user searching through the forum returning relevant threads and posts.

Within this use case, user shall refer to any Regular User, Super User, or Moderator.

Desired Outcome: A listing of relevant thread(s) will be displayed for the user. User Goals: The user wants to view any content related to his or her desired keyword(s). Dependency Use Cases: 1.) Login – UC1

Involved Requirements:

SR67

SR68

Details:

Priority: 2

Status: Coding Phase

Test Phase Status: Planned

Preconditions: 1.) The user submitting the form is registered and logged in. 2.) The form content is valid. 3.) There exists a relevant thread or post in the database. Postconditions: 1.) All relevant thread(s) and/or post(s) that exist in the database are retrieved from the database. 2.) The user is redirected to a result page that lists the thread(s) and/or post(s) in organized and formatted manner. Trigger: 1.) The user fills out the advanced search form and clicks on the search button. Workflow: 1.) The system processes the form content. 2.) The system checks to see if the user is logged in

3.) The system searches for related content in thread(s) and/or post(s). 4.) All relevant finds are displayed on a search results page.

Page 32: Use Cases Message Board Authors - University of California ...ieng6.ucsd.edu/~cs110x///static/res/Use Cases 2.0.pdf · -UC 15 Search Forum . Updated: November 20, 2010 ... Coding

Updated: November 20, 2010

Developing Enterprise Undergraduate Solutions Page 32 of 32

Alternate Paths: 1.) The system determines that there is security risk or profanity within the search request. The user is brought to search results page where a message informs the user of the invalid search request. The path occurs following step 1. 2.) The system determines that the user is not logged in and returns the user to login page. The path occurs following step 2. 3.) The system determines that there is no thread and post found based on the search. A message indicating that there are no results is displayed on the search page. The path occurs following step 3

Options: N/A