Versions Compared

Key

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

...

At the start of choosing an interface for our application, we explored many different designs and eventually narrowed them down to three important ones after paper prototype stage: Organization, Simplicity, and Category. After testing users on paper prototype, we decided to choose the Simplicity design and slightly modify it, incorporating users’ opinions. As an application intended to offer users the convenience and efficiency of donating, we agreed on keeping the design simple, efficient, and easy to navigate, which are the main concepts of this design. As a high level overview, the design focuses on allowing users to easily manage their causes and navigate to them easily to donate. As soon as the user logs in, he is directed to a homepage that displays all the causes he added as informative thumbnails. On any page of the application, there is a navigation button that takes the user back to this page, so only one click is required to find the causes that the user think are important. Below are the screenshots of the application to illustrate: Image Added
Figure 1. Login Page. This is the first page user can access when they open the application. The links to creating an account and recovering the password are clearly presented in order to guide the user to the respective tasks immediately and to make the interface learnable.

2. Implementation

For implementing the phone app Donate2Us, we take advantage of the built library jQuery Mobile, which makes the process much more convenient and natural. However, due to a glitch with our use of jQuery Mobile, some pages of the application need to be refreshed before all the features function fully, which might cause inconsistency for the users. On the front end, each page of the app is represented by one HTML file, and only one CSS file is used to control the layout of all the pages. On the backend, one javaScript file manages the behavior of the application in response to the users. We decided to use jStorage instead of mySQL to store the information regarding account information, causes database, etc., as the full implementation of mySQL in the backend is beyond the scope of this class. Due to that decision, the app is currently limited to storing data on only one device and can’t connect across all devices yet. Billing transactions and integration with Facebook are also introduced features but not fully implemented for the same reason.

...