Tuesday, 20 March 2012

Evaluation of UI

In this post, i shall be examining the case of Role-Playing games, which generally places heavy emphasis on statistics and numbers. But before that, let us zoom into the question of whether we can make use of usability heuristics as a means of evaluating such a game interface. Let us first look at Nielsen's 10 Usability Heuristics -
  • Visibility of system status
  • Match between system and the real world
  • User control and freedom
  • Consistency and standards
  • Error prevention
  • Recognition rather than recall
  • Flexibility and efficiency of use
  • Aesthetic and minimalist design
  • Help users recognize, diagnose, and recover from errors
  • Help and documentation
These are golden rules that can be applied for any task-driven application. By fulfilling them, user can expect a software that is satisfying and easy to use. In other words, they are rules for evaluating usability. However, what is lacking in this heuristics is the task itself. It should be fairly obvious that a less tech-savvy person would be less motivated to use a software meant for compiling java codes than someone who is, regardless of how usable the program is. For a task-driven software, the goal is to make it easy and intuitive to use. In contrast, the goal of a game interface is to attract people to use it, and it does so with a key element missing in these heuristic - fun.

In fact, fun and usability may not be as inter-dependent as we thought they would be. An application that is simple to use may be rated highly when evaluated using Nielsen's heuristics, but may not be fun to use at all. Before we go any further, let us look at GameFlow Heuristics (Sweetser & Wyeth, 2005).
  • Concentration: Games should require concentration and the player should be able to concentrate on the game.
  • Challenge: Games should be sufficiently challenging and match the player’s skill level.
  • Player Skills: Games must support player skill development and mastery.
  • Control: Players should feel a sense of control over their actions in the game.
  • Clear Goals: Games should provide the player with clear goals at appropriate times.
  • Feedback: Players must receive appropriate feedback at appropriate times.
  • Immersion: Players should experience deep but effortless involvement in the game.
  • Social Interaction: Games should support and create opportunities for social interaction. 
In particular, let us consider the second heuristics which is 'Challenge'. An interface that is easy to use would probably not be challenging to use. In contrast, an interface with multiple layers of complexity may give users the satisfaction of mastering the game as they move deeper and discover more for themselves. For instance, take the RPG game 'Diablo'. A new player who plays the game for the first time would probably be overwhelmed by the amount of text that they need to read, most of which probably would not make much sense. However, as they play and experiment with the game, they start to learn more about what they mean and get a greater sense of control and mastery of the system, both of which contributes to what makes the game fun.


Malone's Heuristics for Designing Enjoyable User Interface (Malone, 1982) also supports the element of challenge in game interfaces.

1. Challenge
  • Goal. Is there a clear goal in the activity? Does the interface provide performance feedback about how close the user is to achieving the goal?
  • Uncertain outcome. Is the outcome of reaching the goal uncertain?
  • Does the activity have a variable difficulty levels. For example, does the interface have successive layers of complexity?
  • Does the activity have multiple level goals? For example, does the interface include scorekeeping?
2. Fantasy
  • Does the interface embody emotionally appealing fantasies?
  • Does the interface embody metaphors with physical or other systems that the user already understands?
3. Curiosity
  • Does the activity provide an optimal level of informational complexity?
  • Does the interface use audio and visual effects: (a) as decoration, (b) to enhance fantasy, and (c) as a representation system?
  • Does the interface use randomness in a way that adds variety without making tools unreliable?
  • Does the interface use humor appropriately?
  • Does the interface capitalize on the users' desire to have "well-formed" knowledge structures?
  • Does it introduce new information when users see that their existing knowledge is: (1) incomplete, (2) inconsistent, or (2) unparsimonious?

Malone brought up an additional point, and that is the use of randomness to generate fun. If we look at Nielsen's Heuristics, the functions of the system should be visible to the users which can help in lowering the gulf of execution. Having an element of randomness in a task-driven software would probably be counter-intuitive. Clicking on a search button twice should produce the same result sorted by relevance, rather than a random mess of results. In a game interface of a RPG, randomising the statistics of a character can increase variety, and repeated clicking on the 'randomise' button to get a player's desired statistics and ultimately getting them can be satisfying.

For a more concrete example on the use of Malone's Heuristics to evaluate game interface, let us now look at the game interface of Torchlight, an action role-playing game which is fairly similar Diablo. The gameplay heavily emphasises on the collecting of loots (or resources dropped by monsters as they are vanquished) to build the characters the player play and thus, some sort of system has to be in place to help players manage all them. As the game is highly complex with a lot of statistics in play, we will only focus on the interface as presented in this screenshot here.


The game will keep track of all of your progress in terms of your level, the skills you have and so on. As your pointers hover over any of the 'class skills' on the right, a popup will appear showing you the current rank of the skill and the level needed to improve it. This gives gamers motivation to level up in order to improve their character. At the left side of the screen, it shows you your current XP (or experience points) and a bar that shows how close you are to leveling up.

While it may seem that the screen is cluttered with too much information at all, a great amount of them are needed when the player is trying to customise his character. For instance, while the player is trying to pick a skill, he might want to see what his existing skills are or what his statistics are in order to pick the best choice. While the player is not doing that, he can close both of the pop-outs at the side, and resume his game. The only HUD that is present will be the lower bar, which is an essential tool for gameplay as it shows when a skill is ready to be used, what key to activate it and how much of consumables are left.

In conclusion, the game interface as presented in the screenshot shows just a good amount of information without being overly cluttered. Most of the information are hidden in the form of pop-outs that will only appear when the player hover over it. It uses mostly icons to represent skills over the use of words. For a new player, none of the icons would probably be familiar and could be overwhelming. However, this could result in greater fun as the player tries to overcome the system and gain mastery over it.

References - http://beccascollan.com/wp-content/uploads/2009/04/emotionhci.pdf
Screenshots - http://www.torchlight-2.de/bestes-action-rpg-der-letzten-jahre.t3242.html

Monday, 19 March 2012

Speeding Up Touch

With touchscreens as the dominant input style on mobile devices, users are able to manipulate the information and graphics directly on the screen using their fingers or sometimes a stylus. Compared to former versions, today’s touchscreens may be very good in terms of color rendering, viewing angles and brightness. However, to give the user the impression of directly manipulating the displayed information, there is another characteristic which has to be considered: latency.

In the world of displays, latency or lag is the “difference between the time a signal is input into a display and the time it is shown by the display.” [1] Combining this with touch-capabilities, one can say it is the difference between touching the display, computing the input and showing the result on the screen.

Today’s touchscreens as e.g. those on smartphones have latencies of about 100ms, which is already pretty fast but still produce a noticeable lag when executing rapid movements or gestures. For example when quickly dragging an icon from one corner to another corner on all of today’s tablets, the finger reaches its goal a tiny bit earlier than the moving icon, giving it the effect of trying to follow and catch up with its manipulator, that is the finger. This lag may give the impression of not directly manipulating the display’s information and therefore impairs the overall user experience, especially the one of immediate feedback.

However, recent developments at Microsoft Research Labs and their Applied Sciences Group may put a stop to that issue, as they were able to reduce the latency by 99% as compared to average touchscreens, giving the display a latency of 1ms and hence not perceivable for the human eye [2]. 



The results they were able to achieve in a lab environment are impressive and definitely worth to check out if you always felt to be slowed down by your display’s reaction time. However, if this technology ever sees the light of electronic stores or that of your home will depend on the costs to make it a mass-product and the consumers’ care of a more natural feeling as today’s touchscreens already do a decent job.

Sources:

Tuesday, 13 March 2012

HCI and Multimedia

In the past decades, usability was the antecedent research area in HCI. It often finds the balancing of interaction between human and computer. Thus, it is more on human adaptive to the machine. With the emergence of multimedia, a multi-modal information from senses, HCI has changed their focuses. It is no longer for HCI to find the balance rather HCI is now more biasing towards human-oriented and -specialty.  Furthermore, HCI is now more on simplicity. Simplicity has a very broad sense. It often includes user-friendly, natural and etc.

Multimedia system is tightly connected to human perceptual system. In fact, human beings are amazing multimedia system.  Generally, human perceptual system is composed of visual, acoustical, haptic, taste, and smell sense.  This forms the basic consideration for designing a multimedia system. Multimedia system is thus defined as a system that can receive and process multi-modal information from those senses and produce desired multimedia output effortlessly. Multi-modal information contains high-level abstract details produced by human such as sound, music, speech, gesture, reading, writing and etc. Thus, coordination of interaction became an important issue.

Being simplicity or naturally for human to interact, the system must be complex in handling information. This forms the trade-off between HCI and multimedia system. The following sections provide an overview of current and/or future applications that required minimum interaction yet a powerful and desirable system from user point of view.

Information Processing System
With the advancing on internet and hypertext technology, information is widely available and being directly interacts to user. One such example is searching (Information retrieval). There are five basic categories for this system, namely: free text system, information retrieval system, information extraction system, questioning and answering system, dialog system and natural content processing system, [3]. The interaction for those systems is often restricted as a form of simplicity (Or we can say that user tends to be ‘lazy’). The terms ‘relevance’ is often concerns by user when they interact to the system. Thus, the output of information processing system must have certain confidence level about the relevance detail for the particular user requirement. Sometimes, relevance can be referred as rank. This is a primary concerns for a search engine where the interaction is often easy and simple, type in query or even supply with an image.
Technically, a text-based content retrieval system consists of a relevance-feedback-term-based analyzer which in turns consists of term selection algorithm, stemming algorithm, similarity measure, vector space model and latent semantic analysis, [3]. While, an image-based content retrieval system consists of series or single technique found in the discipline of computer vision and image processing. Such technique can be color histogram [3], color coherent vector model [3], color correlogram [3], saliency detection [3], edge detection model [2][4], mathematic morphological model [2], automatic seeded region growing[2] and a lot more.

Speech Processing
Speech is a natural form of communication between human and it reflects the variability and complexity of humans. Speech processing is the process aiming at modeling and manipulating the speech signal to be able to transmit, produce and recognize, [1]. There are a lot applications involving speech processing such as information inquiry system, voice control system, voice synthesis system, audio-book and etc. The interaction of this kind of system is more simplify and natural.
Technically, a speech processing system is based on hidden Markov model (HMM). A simple architecture is shown below.




Digital face beautification
Digital face beautification is a new developing research area and it often required image processing technique (sometimes, it qualify as computational photography). Nowadays, image processing methods for computational photography are of paramount importance in the research and development community.  This field is mainly involved human visual sense yet an interesting and potentially commercial successful application.
Technically, a digital face beautification system involved machine learning, face detection, facial feature detection and image warping, [4]. Two common machine learning methodologies are applied in this field: K-nearest neighbor (KNN) based and support vector machine (SVM) based.
Each of those technical terms mentioned above is hardly to understand in one-shot (sometimes, it takes months to understand !!). Perhaps, you will perceive that there is no link to HCI. In fact, those technical details are emphasis the simplicity of interaction between user and computer by adding more abstraction, or complexity, to the system. Yet, it also represents the transition from single-user based to multi-user (social community) based interaction. Thus, the trend for HCI in multimedia system is going to be simplicity and natural.

References
[1] CS5241 Speech Processing, AY2010/2011 Semester 2, NUS, SOC
[2] CS4243 Computer Vision and Pattern Recognition, AY2011/12 Semester 1, NUS, SOC
[3] CS5342 Multimedia Computing and Applications, AY2011/12 Semester 2, NUS, SOC
[4] CS5341 Computational Photography, AY2011/12 Semester 2, NUS, SOC