-
Notifications
You must be signed in to change notification settings - Fork 1
Heuristics Evaluation
https://drive.google.com/open?id=1Q8IgkUVHPwP5_uvjlJBpNCb6z1I-lhM8FIZOv-ql-x0
The device should keep the user informed about all the processes and state changes through feedback and in a reasonable time. One feature of the Movie pigeon feedback system that complies with this heuristics is the usage of toast message(Fig 1) to display the result of the action. For each action including rating, searching, bookmarking and other functions, the status of the action, whether it is successful or not, will alert the user through the toast message. Moreover, the user also knows about which section(home, cinema or me) he is currently at. There is also indication of search keywords entered by the user on the top bar of the search result to notify the user. These actions are all completed in reasonable time and users are able to view the results of the action shortly.
However, it is important to point out that there is no display of user information. Users are not able to know the account status(i.e. email and username) in the app. Furthermore, in setting page, the edit text box should not be shown until they choose what to change(see Fig 2). A point to note is that there will be significant delays in toast status response when there is a high clicking frequency.
The device should speak the users' language instead of system-oriented concepts and technicalities. The device should follow the real world conventions and display the information in a logical and natural order.
Overall, there is a strong match between the system of our app and the real world. On the one hand, the language used is very natural and conventional, and operations that can be performed are logical. The feedback messages are written in natural language without any technical jargon which makes it easy to read and understand. On the other hand, the use of language may not be friendly to non-English speaking users as the app is only in English. Regarding the language usage in the toast message, it is clear to users in most cases, except the message "operation successful" popped up when there is a change in password / username, which is vague and a refined toast message should be included.(see Fig 3)
The device should allow the user to undo and redo his actions, and provide clearly pointed "emergency exits” to leave unwanted states. These options should be preferably through a physical button or similar.
Users often choose system functions by mistake and will need a clearly marked "emergency exit" to leave the unwanted state without having to go through an extended dialogue. For the undo aspects, user are able to unbookmark if already bookmarked, or edit rating of a movie after their initial ratings. However there is no redo function provided for the actions in the app. There are also reasonable 'back' buttons placed in the appropriate views(see Fig 4) to allow users to exit from the current page. For example, when they accidentally input the wrong search string for movie title, a back button is provided for user to quickly escape to home page where they can search again.
The device should follow the established conventions, on condition that the user should be able to do things in a familiar, standard and consistent way.
Overall, the app follows android design pattern in all views. An android user should be navigate more easily as compared to the existing market movie apps. Users are able to search by typing, viewing the results by clicking on the screen, and switching views by clicking tabs just like how most movie apps do.
There are still a lot of areas for improvement though. For example, confirmation requests for critical actions like editing password should be included. Current password should also be required in order to edit the password. Meanwhile, typing passwords are not in concealed form. Changing username and password together in the same section is not natural and it is more appropriate to have two split pages for them.
There is also inconsistency in the app. Sign-in page and setting page have Back button while others using back arrow at the top left corner(see Fig 5). Toast message should be based on replacing instead of stacking up to prevent overloading the app with a large amount of messages.
The device should hide or deactivate unavailable functionalities, warn users about critical actions and provide access to additional information.
It is important to note that this app is still development-in-progress when doing this heuristics such that error prevention methods are lacking. One basic error prevention method available is that if there is no internet connection, toast message will be shown to notify the user to check internet connection on their device.
However, many more areas still require such methods in order not to crash when an error is encountered. The followings are some examples. One would be that, in the cinema page, child spinner for specific cinema will be invisible if currently its parent spinner is selected. Besides that, there is no error prevention using confirmation request for password changes. It would be very dangerous if the user misclicked. Another problem we found is that a user may not remember what he has keyed in for password as the password is logged in concealed form. Thus there should be a way to show password to prevent error. Moreover, multiple quick succession of clicks is not disabled as this may result in error. Regarding the error message, unacceptable format of user input will notify the user, but without any suggestion for improvement.(see Fig 6)
The device should offer visible objects, actions and options in order to prevent users to memorize information from one part of the dialogue to another.
Generally, the features of the app follow the guideline of this heuristics by providing convenient functions for users to use. Rating and bookmark history can help users to track things they have done, so they do not have to memorize their past activities as time goes. Search-result page displaying the search keywords at the top of the search result(see Fig 7) is one way to reduce users' memory load. Users do not need to remember what has been input to search but to directly check the status bar in the result page for the search keywords. This is very useful when there is a need to change the search keywords. Another feature available is the auto login function for the second time onwards if user has already logged in. Users do not need to remember the email account and password and enter the credentials each time they launch the app. However, there are some drawbacks in the current state of the app as there is no display of user account information, including email and username.
The device should provide basic and advanced configuration options, allow definition and customization of (or to provide) shortcuts to frequent actions.
There are some predefined shortcut functions available in the app. For example, shortcuts to recent rated movies and bookmarked movies are provided as “my ratings” and “my bookmarks” in the “me” section.(see Fig 8) But no other customization option is available in the app. There is a lack of relevant system and environment settings (e.g. load poster only on WiFi and clear cache). A push notification may be good for user to directly launch the app and access our content.
The device should be able to load and display the required information in a reasonable time and minimize the required steps to perform a task. Animations and transitions should be displayed smoothly
By assessing this heuristic, the performance of the app can be evaluated. Firstly, the responses of most of requests are immediate and search needs a longer but still reasonable time. Bookmark and rating functions both only require one click to achieve which are quite efficient. The animations of buttons clicked have minimal impact on performance.
Selecting cinemas, on the other hand, needs a bit more clicks to view the full schedule of that cinema. There is also a delay in showing the search page due to the back-end request. A better solution is to open a blank page while back-end is processing the request and only then load the content into the page when the data is ready. In addition, search time goes longer when the number of results goes up. Removing sub-string search is a better idea of minimizing such delay. Including functions like autocomplete in search bar and search history will also minimize the search input and improve the overall efficiency. Animation lag occurs when multiple actions are done repeatedly. Another way to improve searching is through getting rid of the sub-string search since most of the sub-string match results are tested to be irrelevant and not useful. There are also other areas of improvements for reducing the steps. One example would be search button can be replaced by an implicit wait.
The device should avoid displaying unwanted information in a defined context of use
There are some areas for improvements regarding aesthetic design. We try our best not to overwhelm our users with too much information through sub-pages, expansion of texts, lists and etc. However, it seems that some changes are still needed. Overall design is too plain and there is a lot of blank left in the app(see Fig 9) which is not really good-looking and inefficient in terms of making use of the app space.
The device should display error messages in a language familiar to the user, indicating the issue in a precise way and suggesting a constructive solution.
This heuristic is tightly related to the error prevention heuristic as the communications between the app and users plays a huge role. In this app, users are able to reset password if they forget password through email service. There are messages to show users what error happens. For example, if there is no internet connection available, the app will ask the user to check internet connection. If no search result is found, users will be notified and asked to check the search input(see Fig 10). On the other side, regarding the error messages, users will be notified if user inputs contains unacceptable format like illegal characters, but without any suggestion for improvement. These error messages should be delivered in a bigger font in the toast and adjusted to different dpi of different Android devices. There should be a “do you mean” or a suggested movie search input when users input wrong film names due to typo. There should also be a feedback to reflect the ratings assigned(3 star, 4 star) in the toast instead of just displaying that the rating is successful.
The device should provide easy-to-find documentation and help, centered on the user’s current task and indicating concrete steps to follow.
There is no help documentation available. It is possible to introduce a simple tutorial at the start of the app when the app is launched for the first time. Operations are easily interpreted from the name of the tab or action context.
The device should provide physical buttons or similar for main functionalities, located in recognizable positions by the user, which should fit the natural posture of the user’s hands.
There are noticeable tabs at the bottom of the app to switch the context among homepage, cinema page and user setting page. On the top left corner, there is also back button available to go back to previous page. In contrast, important requests need further interaction to confirm by clicking some more buttons. The rating bar works as a button but instead of a scale(see Fig 11). This will submit ratings immediately after their changes but it does not specify the ratings posted to the server and it is ambiguous where there is no differentiation between a 0-star movie and an unrated movie. No clear button is available for the search bar, edit username and password input field. There is no go to the top button available in the app when movie search result goes long and it takes some time to scroll up to go back to the first result.
-
2.1 Team Details
2.2 Project Worklog
-
5.1 Usability
5.2 Efficiency
5.3 Robustness
5.4 Security