Requirements - askpt/ExpenseManager GitHub Wiki

Application to register the personal expenses

Is intended a registration system for personal expenses where the user can record your daily expenses (properly typed, ex., Meals, clothing) as well as setting savings targets

Use Case

  1. Definition of expense type - the user should be able to define expense types, ex., Meals, clothing, transportation, leisure

  2. Definition of payment methods - the user should be able to create payment methods of various types, eg., Visa card XPTO nr. 12345678, checks account 1234 bank XYZ, etc..

  3. Register expense - the user must enter an expense indicating the amount involved, the type of expense, the payment method and the date thereof. You can include a short comment. For payments by check must be given the check number. After this operation, the balances are updated. Payment types - the system already has the following types of payment: cash, debit card, credit card and check. Some types of payment require the introduction of additional information in the register, eg., An expense paid by check will need to enter the check number.

  4. View the spending in this week - the user should always have visible spending of current week

  5. View the spending in this month - the user should always have visible spending for the current month

  6. Query of monthly expenses - the user can view a listing of all expenses in a given month with grouping by expense type

  7. Query of monthly expenses in graphical form - the user can query the expenses of a given month grouped by expense type in a bar chart

  8. Definition of income type - the user should be able to define income types, eg., Salary, allowance, provision of services.

  9. Receiving register income - the user enters an income indicating the amount, date, description and income type. After this operation, the balances are updated.

  10. View balance - the user should always have visible your balance (income - expenses)

  11. Startup balance - the user should be able to set up a initial balance

  12. Export to CSV - the user should be able to export their expenses and income (for a given period of time) to CSV format

  13. Export to XML - the user should be able to export their expenses and income (for a given period of time) to an XML format

  14. Import to CSV - the user should be able to import a CSV file with movements and may choose to attach this information to existing or override movements in the system

  15. Import to XML - user should be able to import an XML file with movements and may opt to join this information or override the existing movements in the system

  16. Trend display weekly and monthly expenses - the user should always have visible trend of monthly and weekly expenditure compared to the previous month (the same day)

  17. Configure alert limits - the user should be able to set limits "yellow" and "red" from which the system issues alerts: Limit weekly expenses, Limit monthly expenses, The offset from the average expenses of a given type, Limit minimum balance

  18. Alert if it exceeds certain amount of expense - the user should be alerted if your total expenses (eg, weekly) exceeds a previously set value

  19. Alert if an expense out x% of the average expenses of this type - the user should be alerted whenever he enters an expense that exceeds the average x% of such expense

  20. Alerts if the account balance below a certain amount - the user should be alerted if your balance falls below a pre-set value.

  21. Establishment of saving - the user can define an objective value of annual savings for a given order (free text), ex., vacation, camera.

  22. Putting into savings - the user can affect the amount to a saving in concrete. If this placement will achieve the intended goal, he will be welcomed.

  23. Taking savings - the user can take an amount of a rubric savings, either because'll use for the intended purpose or because they need money to cover such expense. It should be stated the reason the movement

  24. Verification of savings targets - the user can view the status of your goals greetings savings him being shown for each objective in the desired amount, the current value and the percentage of execution.

  25. Verification of savings targets in graphical form - the user can consult a bar chart "100%" status compliments of their savings targets being shown him for each objective in the desired amount and the present value as a percentage of execution.