Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • The betting screen was implemented by drawing text, numbers and images on an Android canvas. The text, numbers, and position of images are decided by user’s actions, which are detected by tracking the position of the user’s finger.
  • The whole screen is divided into different rectangular areas (boxes) that represent different options in each category (location, price, cuisine) as well as the three piles of chips (5, 10 and 25). Each box keeps a record of the number of each type of chips currently inside the box. The numbers (chips left, total points for a category) are updated based on the chips in each box.
  • An event listener is used to capture user’s actions. When the user taps the screen, the app checks if the position is inside any box and changes the value of a status variable to record the starting box of the action. If the starting box has chips, when the user moves his finger, there is going to be a chip following his/her finger. At the same time, each box recalculates the number of chips in it or the total points of chips left to decide the updated number of chips to show in the box. When the user’s finger leaves the screen, the position is checked and we decide based on the position whether or not the action results in the chip moving to a new box. Then all the numbers and status are updated and redrawn.
  • To make the app more playable and enable all the direct manipulations that a user can expect, the betting screen enables users to “drag” chips instead of just clicking the chip and clicking one destination. Also, it enables users to move chips freely, including moving from chip piles to betting table, moving within the betting table, and removing from the betting table.
  • To clearly indicate wrong alert users in the case of incorrect actions, vibration is added when the user fails to put a chip in a correct place.
  • The betting screen is made more realistic by not displaying chip piles of denominations greater than what the user has available for betting.

...

  • Early stage design is crucial to the success of a UI project, including the design of tasks, paper prototyping, and early stage user testing. The cost of time to correct a bug or an improper design in the early stage is much smaller than that in the implementation stage or even in the user test stage after the implementation. The spiral model rocks!
  • However, sometimes Sometimes the problem appearing in the paper prototype will no longer be a problem in the computer prototype or for the final implementation. For example, the users enjoyed the app more when playing with the implemented betting screen and spinner than they did when we simulated those parts in the paper prototype.
  • It is important for the app to be useful, and being fun and playable is a plus.
  • The first few stages were the most difficult. Once we identified the right ideas and figured out how to make them into a game, the implementation was straightforward. Implementing the interface was time-consuming, but we had a clear goal in mind at that point.