...
Complex transactions: Consider the case where at a dinner, a group of 4 decide to evenly split a $100 dinner bill. However, some people are short on cash while others have extra on hand. So one person pays $50, another $40, and two of them $5 each. If in the end this should be equaled out such that all pay only $25 for the dinner, how would that happen? The solution to this is currently unknown.
Design #3 Storyboard
From From the home screen, the Sally can click a button to add new transactions. This will take her to the “Add a Transaction” page. On this page, she can select a user from a dropdown list of know users or search for a new user by clicking on the “New User” button. A text box allows her to enter the amount of money the selected user owes. Clicking the “Submit” button records the transaction for Sally and the selected user, and brings Sally back to the home page. Clicking the “Cancel” button brings Sally back to the home page. The home page will also have a “Pending Transactions” button with a number displayed next to it. Clicking this button leads Sally to a page that shows any new transactions where other users claimed that she owes them some sum of money. Sally can dispute claims on this page by clicking any of the dispute buttons next to the individual claims. Clicking the “Done” button brings her back to the home page.
From the home page, Sally can view all current transactions she has with other users. If Sally wants to view all transactions, including past transactions, she can click on the “View All” button. Clicking this button leads her to the “All Transactions” page. This page shows two lists. The list closer to the top of the page shows current transactions she has with other users. The list below the current transactions list shows past transactions she’s had with users. The past transactions list does not include the amount of money because these transactions should have all totaled out to $0.00 since these are closed and settled transactions. In both lists of transactions, you can click the button corresponding to each user to view all transaction history with that particular user. This leads you to a different page, which displays a list of dates and money amounts for every past transaction Sally has had with that user.
Suppose Sally wants to dispute a transaction with Bob, she can do so by viewing the details of her transaction with him. This will lead to a page that shows the total that she owes Bob, or however much Bob owes her. This also shows a list of dates and money amounts for every past transaction she has had with Bob. Next to each transaction where Bob claimed that Sally owes him money, Sally can click the “Dispute” button if she disagrees with that transaction. The “Done” button brings the user back to the home page.
...