-
Notifications
You must be signed in to change notification settings - Fork 3
Requirements Specification
As a GeoTask User I want to access my information by providing an authenticating factor.
User
The user has an account.
User is accessing the app from his/her profile.
User opens app
User Opens the app, Enters Login information wIth username and password, and authenticate with the server
N/A
A requester wants to request a task, giving it a description, and optionally a location and photographs. It’s status is initially “requested”
Task Requester
Task requester has task details to post and is in any task list view mode.
The task that the requester inputs is now in the list of tasks that everyone can see in their all menu.
Task requester selects the “Request New” option.
User selects the “Request New” option, enters task information, and confirms the task entry.
User selects “Request New” option and cancels their entry.
As a requester, I want to view a list of my Tasks, to see the Title, Status, Bid, Description, and Photographs
Task Requester
User must be logged in
User is viewing List of Assigned Tasks
User selects on Task Requester view
User selects from the list of options. User then selects on the Task Requester option. The users requested Task are then shown to the User.
User selects on the list of options. User then selects on the filter option. User then selects on the Task Requester option. The users filtered requested Task are then shown to the User.
As a requester, I would like to delete a task that I have requested.
Task Requester
A requester must be selecting a task that they have previously requested, and wish to delete it.
The selected task must be removed from the list of tasks.
The delete option was selected by the requester.
The requester selects the delete option, they are prompted with a “yes/no”, they select yes, and the task is deleted.
The requester decides not to delete, so they select no when prompted, and the task remains as it was before the trigger.
As a User, I would like to logout.
End User
User is Logged in
User is on the Login Page
User Clicks on Dropdown menu User Clicks on logout button
User wishes to logout. User selects from the list of options, then selects the logout option. User is then directed to the login option
N/A
A User wishes to view all of the tasks (requested, bidded, accepted by him/her, or completed for him/her).
User
The user is logged in.
The user is viewing a list of all tasks.
Either the user logs in or the user selects the “all tasks” option.
The user logs in and is presented with this list. Or the user is viewing some other activity and selects the “all tasks” option.
N/A
As a user, I want to view all tasks based on geolocation.
End User
User is logged in. User in on main page
User is viewing all tasks on the map
User selects mapview
User selects on the list of options. User then selects on the mapview option. The map with all tasks is displayed
the user may use a filter which will change the search results.
As a user, I want to view details of a task: title, description, status, lowest bid, location, photographs, requester, ...
User
A user must be logged in and viewing the task list
N/A
User selects a task from the task list
User wishes to view a task. User selects a task from the task list, and is then brought to the page for the selected task.
N/A
Use Case Description As a user, I would like to create an account to use GeoTask. I would like to provide a unique username, and my contact information. I would like to have my account protected by an authenticating factor.
End User
User does not have an account
User is directed to the main page
User selects create account
User selects Create a new account option in the start screen. User then enters a unique username, and provides contact information and the user provides a password. The user information is then verified, and an account is created.
User does not enter a unique username. User decides to hit cancel button
As a user, I want to view and edit details on my profile
User
A user must be logged in
Changes made to profile should be saved to the server
User selects ‘Profile’ from the menu
User wishes to edit their profile. User selects profile from the menu and is taken to a page where they can view profile details. The user selects then selects edit and is taken to a page where they can edit details of their profile. The user then selects save to save data to the server.
[optional] User does the above, but instead of selecting save, they select cancel. The changes are then not saved to the server.
A User wants to view another person’s profile.
User
The User is viewing a task of any kind.
The user is viewing the profile they select.
The user clicks on the name of another user.
The user is viewing a task and either selects the requester name or selects a bidder’s name from a list of bids.
N/A
A User wants to add filters to the list of tasks to view tasks more specifically
User
The User is viewing the list of tasks.
The user is viewing the list of tasks where the tasks contain all the keywords and have matching status to the one provided by the user.
The user selects the “filters” option.
The user is viewing the task list, selects the filters option, enters they keywords they wish to filter the list for, and selects a status to filter for, then applies the filter. The list is now displayed with the correct filter.
The user is in the process of applying a filter and decides to cancel, the user hits back and the list remains as it was before the filter.
A User wants to filter the list of tasks by distance from them.
User
The User is viewing the list of tasks.
The user is viewing the list of tasks where the tasks have less or equal distance to the range entered.
The user selects the “filters” option.
The user is viewing the task list, selects the filters option, enters the range they wish to filter for, then applies the filter. The list is now displayed with the correct filter.
The user is in the process of applying a filter and decides to cancel, the user hits back and the list remains as it was before the filter.
As a task provider, I want to make a bid on a given task with status: requested or bidded using a monetary amount
Task Provider
The user is currently viewing the details of a bid
A notification is sent to the requester, the task appears in the providers list
The user chooses to add bid
The user chooses to add bid The user is given a prompt to enter information (amount, optional description) User enters information Information valid Internal information is updated Return to main screen
[optional] 4. User enters invalid info 5. A prompt is shown 6. Return to 3
A Provider wants to view tasks that they have bidded on.
Provider
The provider is viewing the list of tasks.
The provider is viewing the list of tasks which they have previously bidded on.
The user selects the “provider view” option.
The provider is viewing the task list and selects the provider view option. The list now displays only the tasks which have been bidded on by the provider.
N/A
A Requester wants to view tasks that they have bidded on.
Requester
The requester is viewing the list of tasks.
The requester is viewing the list of tasks which they have requested and have been bidded on.
The user selects the “requester view” option and applies the filter for status = bidded.
The requester is viewing the task list and selects the requester view option. The list now displays only the tasks which have been requested by the requester, then he/she selects “filters” and applies the filter for status = bidded. The list now displays only the requesters tasks which have been bidded on.
The requester decides to cancel the search after going into requester view. They do not apply any filter or cancel a filter and the list remains a list of only requests made by the requester (not necessarily bidded on).
As a task requester, I want to view the bids on one of my tasks
Task Requester
User has tasks and has navigated to the lists of tasks and selected to view the details on one of the tasks.
The requester is presented with a list of bids on the task that was selected.
The user has clicked on the “Bid List” option
The user clicks on bid list The list of bidders is shown
[optional] 3. The user hits the back button
As a task requester, I want to accept a bid on one of my tasks
Task Requester
The user is currently viewing the list of bidders
The task is no longer visible in searches The task appears in the task providers task list
The user has clicked on a bid
The user clicks on bid a prompt appears The user accepts bid The task is now assigned to the task provider and the state of the task has changed to accepted
[optional] 3. The user declines 4. The user clicks on another provider 5.The task is not assigned to the task provider and the state of the task has changed to accepted
As a task requester, I want to decline a bid on one of my tasks
Task Requester
The user is currently viewing the list of bidders
The bid no longer appears in the bid list
The user has clicked on a bid
The user clicks on bid a prompt appears The bid no longer appears in the list of bids
n/a
As a task provider, I want to view a list of tasks I am assigned to
Task Provider
User user is logged in. User has a filter selected for showing only active tasks
User is viewing active tasks
User selects Task Performer from list of options after having a filter that only shows active tasks applied
User selects from the list of options. User then selects on the filter option. THe user selections the active option. The user then selects on the Task performer option in the list of options. The task performers active jobs are then shown
Task performer may forget to filter tasks and would list all tasks, bids and previous jobs by the task performer
As a Task Requester, I want to view a list of my tasks with status assigned
Task Requester
User is on main section User is logged in
What postconditions must be met after this use case has ended
What event triggers this use case
User selects from the list of options. User then selects on the request view option. The task requesters tasks will be shown.
The task requester may filter the options which will alter the search results
As a Task requester, i want to change one of my accepted tasks status to complete
Task requester
User is logged in User is on the main menu
Task requesters task will be changed status to completed
Task requester selects edit option and changes status to completed
User selects on the list of options. User then selects on the task requester option. The user selects the task they wish to update to completed. The user then edits the task to completed. The task will now be shown to be completed.
N/A
As a task requester, i want to change one of my accepted tasks back to bidding
Task requester
User is logged in User is on the main menu
Task requesters task will be changed status to bidding
Task requester selects edit option and changes status to bidding
User selects on the list of options. User then selects on the task requester option. The user selects the task they wish to update to bidding. The user then edits the task to bidding. The task will now be shown to be bidding.
N/A