- The product should be developed with Flutter
-
As a user, I want to add a new purchase to the app so I can review it later. (Must Have 5)
Acceptance test:
Given that I am on the purchase screen,
When I submit a purchase,
Then the purchase will be registered, and I can review it later. -
As a user, when I add a purchase, I want to add a category so I can see where I spent more money. (Must have 3)
Acceptance test:
Given that I select a purchase category,
When I submit the purchase,
Then it will be registered on the database with a category. -
As a user, I want to be able to add purchases at the frequency I choose so I don't have to add them every time I make them. (Should have 8)
Acceptance test:
Given that I select the option "multiple purchases",
When I choose a timeline for the purchases, a total amount spent and submit,
Then the purchase will be registered with those attributes. -
As a user who has made a mistake, I want to be able to cancel (and edit) an issue I've made so that I can correct my mistake. (Must have 20)
Acceptance test:
Given that I select a previous purchase,
When I edit it, correcting a mistake,
Then the purchase will appear with the new information selected. -
As a user, I want to be able to add a description to my expenses so I can remember what I spent the money on. (Should have 3)
Acceptance test:
Given that I fill in a description and submit a purchase,
When I select the purchase,
Then I will see its description. -
As a user, I want to be able to add a picture of the bill of the expense so that I can check all the information about the purchase. (Could have 3)
Acceptance test:
Given that I submit a purchase with a picture,
When I select the purchase,
Then I will see the picture with all of the purchase's details. -
As a user, I'd like to add the price of a new purchase in many different currencies to the app so that the app does the coin conversion to my main currency so that I don't have to search for how much I spent in my currency. (Should have 2)
Acceptance test:
Given that I choose a currency,
When I click "confirm",
Then all of my spendings will be in the selected currency. -
As a user, I want to have an intuitive User Interface where I can see all of my spends so that I can remember my past purchases
-
As a user, I want to check how much I spent in each category last month so that I can spend more efficiently. (Must have 20)
Acceptance test:
Given that I am in the history menu,
When I choose a category,
Then I will see the amount of money spent in that category in the last month. -
As a user, I like to check my spending by giving a start day and an end day so that I can see what times I spent more money. (Could have 20)
Acceptance test:
Given that I am in the history menu,
When I choose a start date and an end date,
Then I will see the total amount spent across that time period and all of the purchases. -
As a user, I want to be able to add new expense categories so that I can customize my stats to my own liking. (Should have 5)
Acceptance test:
Given that I am on the settings menu,
When I fill in a textbox and confirm,
Then I will get the option to choose that custom category in every purchase.
-
As a user, I would like to be able to ask a question in a forum organized by categories that users can create, so that other people can answer me and we can exchange ideas. (Should have 100)
Acceptance test:
Given that I am on the main menu,
When I select the forum,
Then I will see posts by other users. -
As a user, I would like to have a forum organized by category so that I can check the topics that interest me the most. (Must have 5)
Acceptance test:
Given that I am on the forum,
When I select a predefined category,
Then all the posts on the forum will be in that category. -
As a user, I want to be able to search the forum for the topics that interest me so that I can make my search more efficient. (Must have 20)
Acceptance test:
Given that I select the search option,
When I write a text in the searchbox and confirm,
Then the posts that show up will have that text in their title. -
As a user, I'd like to be able to write my text in different languages so that I can contribute to the forum even if I don't speak English. (Must have 1)
Acceptance test:
Given that the user is in the forum menu,
When they write a post,
Then an error will never be thrown, so that they can write in any language. -
As a user, I want to have a quick translator for other users' texts so that I can understand what the user is trying to say. (Should have 8)
Acceptance test:
Given a post written in some language,
When the user doesn't understand that language,
Then they can click on the button below the post to translate it. -
As a user, I want to be able to delete and edit the text I add, so that I can remove text I no longer find useful. (Must have 13)
Acceptance test:
Given that the user wants to edit some post,
When they made a mistake or want to delete it,
Then they can edit the post by pressing the edit button. -
As a user, I would like to be able to sort all posts in the forum by a number of options, such as date, title, and others, so that I can search the site more efficiently. (Must have 3)
Acceptance test:
Given that the user is in the forum,
When they choose to sort by date,
Then the posts will be sorted such that the most recent show up first.Acceptance test:
Given that the user is in the forum,
When they choose to sort by title (ascending or descending),
Then the posts will be sorted alphabetically (ascending or descending).
-
As a user, I would like to receive a notice every time I spend more than usual so that I can take action against it. (Could have 8?)
Acceptance test:
Given that the user has a budget,
When the user spends more than that,
Then they will be notified. -
As a user, I'd like to have the ability to disable the built-in tips so I don't have to deal with them anymore. (Could have 2)
Acceptance test:
Given that the user disables the tips,
When they are browsing the app,
Then they won't get annoyed by them.
-
As a smoker, I'd like to have a tracker that shows me how much I've saved since quitting smoking so that I'm even more motivated. (Should have 5)
Acceptance test:
Given that the app stores all the purchases,
When I create a new one,
Then the app can keep a record of the user expenses giving the user the ability to see if they are spending less than usual.
-
As a user, I want to be able to add a budget in some category so that I can guarantee I don't spend more money than usual. (Could have 5)
Acceptance test:
Given that the user wants to have a budget in some category,
When the user is trying to spend less money than usual on that category,
Then the user can press a button in the desired category and insert a budget limit.
-
As a new user of the app, I would like to be able to create a new account with my e-mail so that I can use the app. (Must have 40)
Acceptance test:
Given that the user chooses the option register,
When they enter their email and password,
Then their information will be stored and they can read the app. -
As a new user I would like to be able to log in with Google so I do not have to create a new account first. (Should have 13)
Acceptance test:
Given that the user chooses the option "Sign in with Google",
When they enter their email and password in a Google dedicated window,
Then their information will be stored and they can read the app. -
As a user of the app, I would like to receive a warning every time someone tries to log in to the app and the password is wrong so I feel safer. (Should have 5)
Acceptance test:
Given that someone fill in the wrong password,
When they fail 3 times,
Then the user will receive a warning by email telling them that someone is trying to access their account. -
As a new user, I would like to test the app without having to register so I can test the app and see if I like it. (Could have 20)
Acceptance test:
Given that the user doesn't want to register,
When they open the app,
Then they choose an option to continue without having to login/register and their information will be kept locally.