Skip to content

Requirements and Specification

jomjung edited this page Dec 17, 2019 · 21 revisions

SurBing(Team11)

Project Abstract

This service is intended for users who want to obtain, compare, or share their survey results. There are some existing services similar to ours, but they do not serve integrated service for both making survey and sharing survey results.
SurBing is designed to make/deploy survey&view survey results. Thus, it is possible to satisfy both those who want to do survey and those who want to see the survey results.
If users want to see the survey results, users need a point. For getting point, users should respond to ongoing surveys. This point system encourages more survey participations by the users.
When we look for survey data, we often want to search for similar surveys too. SurBing calculates text similarity among all surveys using machine learning and recommends context -based similar surveys to users.

Document Revision History

Rev. 1.0 2019-10-05 - initial version
Rev. 2.0 2019-11-13 - revised version after mid demo
Rev. 2.1 2019-12-16 - revised version after poster session

Customer

Survey results are required in broad fields from marketing to academic researches in order to analyze the public and society. So anyone who wants to obtain the survey results easily would be our main customer. If they can't get survey results which they want, they can do survey in this service. This service is targeting both those who want to do survey and those who want to see the survey results.

Competitive Landscape

Survey Monkey

  • Survey monkey is a site where users can create survey sheets conveniently because this site has many types of items and users can modify design according to their preference. On the other hand, not only can users make a survey, but surBing can also collect opened survey results and provide them to those who want to conduct the same survey. Our site is specialized in the function of searching system and selecting and displaying survey items which has similar contents.

KOSIS

  • KOSIS has a wide range of public survey, such as census and occupational surveys. In contrast, SurBing can do survey about various topic and collect the results. In other words, users can gather survey results about a narrow range of subjects, such as surveys for needs of university students in 2019s. Using Surbing, if there are existing survey results on the same topic, users can get them without redoing the survey.

User Stories

Log In

  • Actors: All site user
  • Precondition: The user has to be registered
  • Trigger: User is at the login/signup page
  • Scenario:
    1. The page displays a form with two fields "ID" and "Password". Below the form, there is "Log In" button
    2. The User fills out the two fields with his/her login information
  • Exceptions & Required Behaviors:
    1. The user does not fill out all fields to log in
      • Pop up an alert "Please fill in the missing fields."
    2. The user fills inappropriate ID or Password
      • Pop up an alert "Incorrect ID or Password." and empty the filled text
  • Acceptance Test:
    Given the user has filled out appropriate login information
    When the user clicks on the "Log in" Button
    Then the user should see "Successfully Logged In!"

Sign up

  • Actors: All site user
  • Precondition: The user has to be not registered yet
  • Trigger: User is at the login/signup page
  • Scenario:
    1. The page displays a form with four fields "E-mail", "ID", "Password" and "Password Confirmation". Below the form, there is "Sign up" button
    2. The User fills out the six fields with his/her E-mail, ID, preferred password, age and gender.
  • Exceptions & Required Behaviors:
    1. The user does not fill out all fields to Sign up
      • Pop up an alert "Please fill in the missing fields."
    2. There is a duplicated E-mail or ID in previously registered accounts
      • Pop up an alert "There is duplicated E-mail or ID." and empty the filled text
    3. The user fills out the password Confirmation and password differently
      • Pop up an alert "Incorrect Password confirmation." and empty the filled text
  • Acceptance Test:
    Given the user has filled out appropriate Sign up information.
    When the user clicks on the "Sign in" Button
    Then the user should see "Successfully Registered!"

Log out

  • Actors: Site users logged in
  • Precondition: The user has to be logged in
  • Trigger: User clicks the log out button on the my ID
  • Scenario:
    1. Pop up the message “Do you really want to log out?”
    2. The user clicks yes, then be logged out
  • Exceptions & Required Behaviors:
    1. If the user is doing some work when clicking the button, that work will be quit
  • Acceptance Test:
    When the user clicks on the “log out” button
    then the user should see pop up message
    Click yes, then the user will be logged out

Go to My page

  • Actors: All site user
  • Precondition: The user has to be registered
  • Trigger: User clicks the Profile button at the right top
  • Scenario:
    1. Below the button, "My Page" and "Log Out" buttons appears
    2. The User Clicks "My Page" button
  • Exceptions & Required Behaviors:
    • no expected exceptions
  • Acceptance Test:
    When the user clicks on the "My Page" button
    Then the user should see "My Page" page

Watch the ongoing survey's responses

  • Actors: Site user who has opened a survey
  • Precondition: The user has already opened a survey.
  • Trigger: User enters the mypage
  • Scenario:
    1. On the fraction of the page, a section of ongoing survey appears.
    2. The User can see the ongoing survey's brief information, and respondant counts.
    3. If user clicks particular survey tab, go to detail page of that ongoing survey.
  • Exceptions & Required Behaviors:
    • no expected exceptions
  • Acceptance Test:
    The user opens a new survey. The other user writes and submits a response for that survey. The user should see the ongoing survey with one response on mypage.

Return to Home

  • Actors: Site user that navigated other pages in the site
  • Precondition: The user has to be registered
  • Trigger: User is at the other page(ex: search for survey, cart, survey information tab, Home... )
  • Scenario:
    1. On top left corner of pages, there is a logo for going home
    2. The User clicks the logo
  • Exceptions & Required Behaviors: The operations that were going on stop and the page moves to Home
  • Acceptance Test:
    Given the user is at page excluding login/signup page
    When the user clicks on the Button to home, then the user should see page ‘Home’

Filter Searched Results

  • Actors: All site user
  • Precondition: The user has searched for survey
  • Trigger: User is at Search result page
  • Scenario:
    1. At the left column of the page, there are two text forms for each filtering criteria (Response number, etc...)
    2. User fills out the range value for each criteria (leave empty for unlimited)
    3. User clicks the "Apply" button at the bottom
  • Exceptions & Required Behaviors:
    1. The start value is bigger than end value in certain criteria
    • Shows up a red message "Please check the range of the value" under corresponding criteria
  • Acceptance Test:
    Given that the user filled out some of (can be none/all of) the range value for filtering criteria
    When the user clicks on the "Apply" Button
    Then the user should see all the search results matching with the criteria
    And should not see any search results not matching with the criteria

Delete survey that the user uploaded

  • Actors: site users who wants to delete ongoing survey he uploaded.
  • Precondition: user has to be at his mypage.
  • Trigger: user clicks delete button of ongoing survey.
  • Scenario:
  1. User wants to delete a single ongoing survey.
  2. User clicks on the delete button.
  • Exceptions & Required Behaviors:
  1. user presses the delete button.
  2. The popup comes out asking if you are going to delete this survey.
  3. If the user clicks yes, the survey must be deleted at the database.
  4. user can't delete opened survey.
  • Acceptance Test:
    On myPage, we can click on the delete button and check if the survey is deleted when pressing yes, and not deleted when pressing no.

See Survey Information Tab

  • Actors: Site users who wants to see survey details and items
  • Precondition: The user has to be at searched survey list page & user has points
  • Trigger: User clicks the survey block
  • Scenario:
    1. The user moves to the information tab about clicking survey
    2. User points are deducted
    3. Show the each of item results and details about the survey(subjective -> responses, selection -> numbers of responses, block chart, pie chart)
  • Exceptions & Required Behaviors:
    • No Exceptions
  • Acceptance Test:
    When the user clicks on the survey block
    then the user should see information tab consisting of details and items
    If user has no point, user can't see detail information(some items blinded)

Add Survey to Cart

  • Actors: site users who wants to add surveys to cart
  • Precondition: user has to be at searched survey list page
  • Trigger: user clicks add to cart button
  • Scenario:
  1. User wants to add survey into his/her own cart.
  2. User clicks the button on the right side of the survey block.
  • Exceptions & Required Behaviors:
  1. The item is added to cart with an alert message which informs that the item is successfully added.
  2. If the survey is already in the cart, the alert message pops up to inform that.
  3. User can move to his own cart by clicking the button on the right top corner of the website.
  • Acceptance Test:
    On search result page, we can click on many survey’s add-to-cart button and finally go to the personal cart page and check if surveys are successfully added.

Delete Surveys from Cart

  • Actors: Site users who wants to delete surveys
  • Precondition: The user has to be at “Cart” page
  • Trigger: User checks one or more boxes, then clicks delete button
  • Scenario:
    1. User selects surveys which wants to delete by checking the boxes
    2. Checking boxes, user clicks delete button
    3. The surveys disappear from the cart list
    4. Pop up the message “Done!”
  • Exceptions & Required Behaviors:
    1. If user doesn’t select any checkboxes and clicks the delete button, then pop up “Please select surveys which you want to delete”
  • Acceptance Test:
    When the user clicks on delete button
    then the user should see surveys deleted

Create New Survey

  • Actors: site user who wants to upload the survey he made.
  • Precondition: user has to be at page excepts survey making page or responding page.
  • Trigger: user clicks the 'Create Survey' button in 'utilbar' at upper side of the page.
  • Scenario:
  1. User wants to upload survey here and get a survey result from this homepage.
  2. User writes the survey's title, content, questions, and their options.
  3. User inputs survey period, open date and goal personnel.
  4. User inputs survey items(subjective, radio, multi-selections).
  5. User presses the send button.
  • Acceptance Test:
    User clicks 'Create Survey' button and writes the survey's informations and questions and presses submit button. It saved in database and will be shown to other users who clicks the participating page.

Response on ongoing survey

  • Actors: site user who wants to response on other's ongoing survey for download.
  • Precondition: user has to be at participating page.
  • Trigger: user has to click specific ongoing survey.
  • Scenario:
  1. User wants to see others' survey results.(need points)
  2. Ongoing surveys based gender and age appear on the participating list.
  3. User click specific survey.
  4. Response all items of survey.
  5. Clikcing submit button, user can get point.
  • Acceptance test:
    If user responses on survey, the results should be stored in backend.
    The number of responses exceeds a certain number(according to user settings), then that survey is treated ad a completed survey and people can't response on that.

Download Survey Result from Information Tab

  • Actors: site users who wants to download a single survey result
  • Precondition: user has to be at some survey’s detail page
  • Trigger: user clicks download button
  • Scenario:
  1. User wants to download a single survey result.
  2. User clicks on the download button
  • Exceptions & Required Behaviors:
  1. The survey’s download starts with no alert.
  • Acceptance Test:
    On survey detail page, we can click on the survey download button and check if the download starts.