Transcript
Appliance of UCD in an Ubi-comp application Mohammed Refat Chowdhury
Refat_chowdhury@yahoo.com
Matrikelnr:#112893
Abstract
User centered design is based on the philosophy of
keeping users at the center of the software
development process. UCD is distinguished by a few
common practices such as user studies, user
feedback and user testing. Usability testing
developed for tangible user interfaces is an
emerging research area that faces various
challenges. Therefore, methodologies to seek
solution for such application have to be considered
carefully with innovative mind. This paper
demonstrates how UCD can be applied for
developing an Ubi-comp system.
INTRODUCTION
User centered design is an effective method to
design and evaluate a system from the perspective
of the user. The tools that are utilized in this
method ranges from questionnaires, online surveys
and user involvement in person. This paper reflects
the appliance of UCD in a Tangible User interface
application as well as identifies and illustrates the
trade-offs of exercising such approach.
The application context / setting – identifying the
problem and needs
The application area that I have chosen here is to
combine different automated domestic facilities
that are currently available and to integrate them
into our regular life using Ubi-Comp technologies.
The idea is to coupling the digital information into
physical form with the help of an intuitive
interaction style. In present, we have TV, music
system, security system, cameras, social networking
services scattered in our houses and we need to get
trained separately based on gadgets interfaces in
order to access them. And different level of users
often gets puzzled using the devices which have
become almost unavoidable in respect of our social
life. The proposed system is called “Super
Window” which is controlled by a laser pointer
remote controller that allows users to manipulate
interface without having special knowledge about
interaction. This system includes the most
necessary gadgets such as Television, music system,
primary and secondary cameras both for security
and capturing events, social networking and buddy
trackers, display wallpapers with some special light
effects. All these facilities are fitted into the regular
windows at our home and these windows are
connected to each other. When we are inside the
house our visibility is limited by the walls and there
is one way to extend our vision that is by looking
through the window. So, the reason behind
choosing such system is to offer general users a
context aware system with natural interfaces [2].
A technical solution sketch
The multi-functional Super Window is aimed to
facilitate its users accessing the interface by a laser
pointer controller to keep the interaction as natural
as possible. By making the application context-
aware, it can be immersed into our regular life. The
automated cameras are designed to capture live
experiences based on past events as well as users’
specified mode.
One of the features of this system is Television
which can be designed in a way to sense the
desired programs based on the historical visits or
skip to another program during commercial breaks.
The surveillance cameras are equipped with the
intelligence that they can be operated themselves,
for example, if someone breaks into house it can
connect to local police station automatically and let
them watch the incident or the user can keep an
eye on the baby sleeping in the other room or
check out what is happening outside the house. In
essence, seeing the unseen makes you exist
everywhere. The buddy program is at the users
fingertips to locate the family members. Social
networking interface can play a role to keep in
touch with the family members for an instance,
parents can be always connected to their children
no matter where they live; hence, make them feel
like living in one house or a user can use it as a
means of conferencing with other members for a
collaborative work.
The system is also able to keep displaying current
weather and perhaps, suggesting dress that can be
worn or taking precautionary measurement in case
of imminent natural calamity. Exposing fake
sunlight with different levels of intensity from the
window to make you feel the day time which could
useful for countries where the sun is visible for only
a very limited period of time. However, some of the
features of this system might be a challenging task
to implement.
For cameras, the single biggest challenge is being
able to determine the focus of attention for the
group, and more difficult, for each individual at a
live event. Accessing images later can be difficult in
case of large scale database where users often can’t
remember time and date of the images that they
require. Hence, to put them in order the users
might need to spend a good chunk of time.
Coupling context aware part with natural
interaction could be another difficult part to deal
with.
Interpreting User-centered design for this scenario
To begin with the User-centered design, it is
necessary to identify and understand the
stakeholders and their needs. The proposed system
offers the facilities which are accessible to all kind
of users independent of age, sex, geographical
location and professional background. However,
design can be commenced by taking into
consideration that the users have different level of
learning ability and their characteristics can be
documented based on their cognitive system and
socio-psychological background. These can be
gathered by observing their way of dealing with
current tools and new products. Data can be
collected using focus group method where a group
of different stakeholders are brought to a meeting
for discussion. Using questionnaires method in
combination with focus may produce better result.
A description of environment such as technical and
physical can be included into the documentation as
well in order to specify user requirements. After
defining the target customers, the current systems
that are offering the similar facilities need to be
studied as this will help users and designers to
compare current system and the proposed system
so that they can determine their requirements by
focusing on what exactly need to be simplified. The
next step is to analyze users’ tasks and goals; it’s
the way how they perform tasks with the tools they
currently use [3]. Based on their experiences and
problems that they face, we can enhance the
usability of the system and the operations more
user friendly even to new users. The method that
can be used to perform this analysis is to get the
tasks prioritized and a close observation on their
procedure to perform the tasks. This approach
would help more than relying on what users say as
sometimes it differs from the way they actually do
it. It will also shape the design strengths and
weaknesses from the perspective of competing
with other products. Now, the next step is to work
thoroughly on the collected information and specify
the requirements. Requirements specification
keeps the users and the designer stick to the goals
[6]. In this part we focus on the following
requirements:
Data Requirements
The proposed system deals with a large scale of
database, so the designers have to understand and
clarify how data can be accumulated and fetched.
This will help to design database well to integrate
with functions and keep a good flow of information.
In this system, the database is built on personalized
users’ experience and the relationships between
the entities are mostly ‘one to many’. In addition,
keeping the track of date and time associated with
users’ activities is another field to be considered
with great importance. In essence, we have to
include all the data that are available in the
environment in order to produce a context aware
system. For example, user identity information, log
of activities for particular component of the system,
personalized data based on history, updated
information on user location, trained up data for
object or face recognition used to categorize
captured images .
Environmental Requirements
In general, the issues involved with environment
have a significant impact on designing interfaces to
communicate with users. In this case, the technical
environment includes the hardware that the user
will interact with for example touch screen, laser
remote controller, speaker and microphone,
operating system in which the application will run,
software environment such as java can be used to
develop the application. In this case, the “nearby”
classification of metaphor has been used to design
the physical outlook of the system where output
takes place near the input [1]. The reason behind
choosing such metaphor is to support industrial
designers to an extent who prefer not to have any
metaphor all [2]. The physical environment consists
of atmospheric environment as the screen will be
fitted as a regular window where the temperature
has to be controlled using special screen, visual
environment has to be leveled according to the
user’s posture, the mode of the interface can be
changed based on commercial and domestic places
so that the users’ find the application more
relevant, outside camera need to be protected
from the damages caused by the atmosphere, the
level and type of sound have to be detectable for
different purposes such as baby’s movement,
children location outside expected range, friends or
parents willing to communicate.
Functional Requirements
At this stage, we have to figure out how the functions of the application are going to be accessed by the user. In this application the functions can be the television, cameras, social networking, buddy tracker, image viewer, and lighting effects. Now, we have to discover how these functions can be implemented to support users’ workflow and this can be determined by following the steps that the users’ normally feel flexible to accomplish a task. In our application, all the components are quite familiar to all users to an extent such as television with thousands of channels and millions of programs but the question is how we can manage all the programs that we are interested in and bring them all into a single channel. This function can solve the problem by taking input from the user or by tracking the time spent on programs and channels as well as the frequency of visits which may consider the users’ aesthetics and socio-psychology background. Cameras function should work as the users’ eyes that depend entirely on what they want to see. The cameras are supposed to keep watching outside and inside and sense any object movements in its range and display the changes instantly. They also can be able to capture images on its own by putting it on to an automatic mode which might be helpful during any special occasion. Social networking service is to connect people and facilitate communication as well group activities. In this module we make the interface accessible by graphical tools so that the user can understand it without referencing any manual and group activities can be promoted by board games where grandchildren will find a good cause to spend more time with their grandparents for an instance, talk room for current affairs which will generate different topics that the users might be interested in. Buddy tracker will have graphical map to represent the location of all the connected people based on mobile devices. Different colors can be
used for different ranges, for an example, children outside school perimeter can show a red alert caution sign and a beep sound as well. Image viewer has to act as regular picture albums but intelligence underneath such as face detection, timeline is used to categorize the images. Lighting effects include artificial sunlight also known as full-spectrum lighting to simulate sunlight where natural sunlight is not available. The intensity of the light is controlled by a virtual dimmer and the timer is set to switch on the light.
Another important part is to synchronize the functions so that the features can communicate each other well and in order to do so we have to look for the gap between the current user interface and the users’ need. In present, we have all the above mentioned functions being offered by the different applications from several devices but they are not interconnected. As a result users’ have to enter the same data separately for particular application of a device. For an instance, the image viewer is connected to the camera and the buddy track has to interact with social networking.
Usability Requirements
We can make the interface more user-friendly by taking direct approach that makes appearance inviting actions aesthetically. Therefore, perceptual motor centered design is more desirable than data centered as perceptual motor capabilities of human beings can lead to highly developed usability with aesthetic satisfaction [1]. This function is practiced repeatedly as it entirely depends on the users’ flexibility with the interface. However, the interface has to be efficient enough to accomplish the goals with few or no errors, the visual navigational tools have to be simple with comprehensive help and error messages. In essence, anything that irritates users should be kept modifying until user satisfaction is obtained.
User Experience Requirements
These requirements are specified by the users’
pleasant experience; something that amazes the
user. For example, the user switch on the TV in rush
to see the desired program and she finds it without
changing the channel or may be some amusing
pictures that the camera has taken on its
automated mode. These requirements can be
gathered by observing such features in the existing
applications and then letting the users have
experience on the prototype. Some other methods
such as one-on-one structured interviews, focus
groups, and ethnographic observations may be
proven effective as well.
Design
Using the specified requirements analysis we can
establish an initial design framework for the
application. In this framework, the core part is the
database which has to be handled by the
programmers where the data will be gathered from
the users through an interactive interface. The
preliminary database design can begin based on the
data that we need to store considered in data
requirements. A dataflow diagram will be necessary
to visualize the data flowing from one function to
another. However, we might need to keep changing
it in the iterative process which involves both
internal design reviews and collecting data by
observing people work with and review the
application. One of the robust attribute of this
system is to eliminate input of the same data
repeatedly as it integrates several available
applications that are already present in the market.
For example, the data for social networking and
buddy tracker should not be duplicated, hence,
avoiding data redundancy. In order to make the
appearance of interface inviting actions
aesthetically, the database should include entities
to store data of users’ activities. For an instance, if
the user watches a specific program every Sunday
at 7pm then system should sense it and should put
that channel on if the user just turn the TV on or
simply can suggest that program without creating
disturbance while watching any other program.
Using the data flow diagram we can look for and
identify the entities to store and classify the data so
that we can relate them properly. There could be
some entities for storing the tools for presenting
the interface based on users’ social psychology
background as the product can be launched
worldwide. These tools might be identified at the
goal and task stage and more specifically while the
users’ will be observed working with prototypes.
Now we have to design an initial interface considering all the requirement analysis we have done in the research and analysis part. There are various ways to commence this process, however we can start with looking at the applications that the users’ are already using and trying to visualize the conceptual model as it will help us to find the missing components that we might include in our interface. Then we can proceed with the navigational design where a careful selection of buttons and colors are required to make the visibility and accessibility of the interface more appealing, although these attributes might keep changing in the iteration process. Next, we have to sort out the functions of the components as to how they are going to be presented to the user in order to keep the natural flow of the operation. For this, we can use the card sorting method where a participant is given an unsorted pack of cards. In each card there is a statement written on it that relates to different pages of the interface. For example, the statement could be “Would you like to check out the location of your children while you are watching a movie?". Based on the answer we can figure out a way to navigate to the buddy programmer presented with the location of the children. The participant is asked to sort these cards into groups and then to name these groups. The results of multiple individual sorts are then combined and analyzed statistically. Hence, we can be assured about what and how the users are more likely to roam around. Another method to assist design process is called participatory design [7] where users can be involved actively in the design and the decision making process. Using this method we can always be in touch of information regarding what people say, think, do, use, know, feel and dream. In this workshop developers, designers and the users work together to design an initial prototype.
For prototype we can start with low fidelity paper
based prototype to help making initial design. In
this prototype we can check out the input system
flexibility how the users’ would like to interact with
the interface icons. For example, the magnetic
selection process could make the users’ feel more
confident about their selections or if they like to
scroll down for more options instead of turning
over a page for more selections. Moreover, we can
get the feedback from the user as to how they feel
about the physical appearance of the product by
touching it and moving around. In the iteration
process we can move to the high-fidelity prototype
by making a web based interface where users’ from
various regions can interact with it. This prototype
will be a modified version of the paper based
prototype considering all the updated requirement
specifications using HTML, java script and flash. The
user will have better view of the application with
the user colors, screen layout, fonts, response time
and interactive behavior. However, the
functionality is limited and more like to be task
oriented. In this case, the best thing would be to
apply horizontal prototype as this approach would
let us observe the interaction with all the functions
but not in depth. As we would be able to figure out
the perfection of the response from the user in all
components, it will accelerate the progress of the
real application. Later, we can go for vertical
approach which will let us bring more perfection to
the user interface.
Evaluation
Iteration is a key to building a successful application
in UCD. Evaluation is the most important stage
where the design is shaped into its desired form.
Therefore, we need to follow some systematic
methods to evaluate the prototype and then using
the data to improve the design of the application in
a recursive manner to achieve the goal to identify
problem areas and testing to solve those problems.
The tests need not to be complex but to be tailored
to keep up the development and minimize cost. So,
in order to evaluate the prototype we need to set
up a structure to organize our work and this can be
done using five steps as follows[9]:
Step 1: Plan and preparation:
A test plan includes list of questions which depends
on the level of testing. It is the best to have a form
ready based on test objective, testing procedure,
profile of target user, test questions. This process
will make the communication between the user and
the requirement specs more comprehensive.
Step 2: Select Participants.
Selection of potential users depends on the type of
test such as formal or informal. The informal test
can be done with co-workers, friends and family
members. Testing with the users’ who are not
related to the workforce is more important and
they can be recruited by ad online, temp agencies,
or college campus.
Step 3: Conduct test.
The personnel responsible for conducting the test
have to explain the process, the task list and he has
to play a role of observer to take notes on their
activities.
Step 4: Analyze results.
The notes taken in the previous step have to be
processed and stored properly including the
summary report written just after finishing the test.
The report should contain the details of difficulties
and problem areas along with explanation.
Step 5: Develop recommendations.
The recommendations should be based on all the
information taken before. The focus has to be on
improved user experience and can be divided into
short or long term goals. It may include information
about the given task, reason for problem, and
recommended solution.
Before heuristic evaluation and usability testing we
would like to focus on navigation map that deals
with users’ manipulation of their viewpoint to move
from one page to another. If the user cannot
successfully navigate, it affects all user tasks as it
involves object manipulation, selection, querying,
response and aggregation. Although, this
evaluation can be started based on assumption but
it becomes precise as we perform heuristic
evaluation and usability test.
Heuristic evaluation
Expert heuristic evaluation technique will be
required to be performed by a human factor
specialist who has little involvement in the project
[8]. In this case we will follow the following general
principles of heuristics [Nielson and Molich 1990].
Visibility of system status
A page of the system should carry the information
of its status, so that the user can know where he is
and what other activities are available in course of
time. For an instance, if a user gets into the settings
page then he should know the status of the page by
looking at it.
Match between system and the real world
The system has to present its attributes in a familiar
manner such as languages, words, phrases,
concepts what makes the user interact in a natural
way. This will facilitate the user from different
social psychology background to have an
aesthetical control.
User control and freedom Users’ must have a good control of the system and
freedom to move to relevant state. For example if
the user is playing games online then he should
have the way to exit instantly without have to go
through an extended dialogue and move to the
main page.
Consistency
The words, situations or actions that we use in the
application should be consistent and recognized as
conveying unique properties.
Error prevention
There should not be any error messages rather than
the system should be redirecting the user from one
page to another or suggest on what to do if any
function is not available. For an instance, if there is
any connection problem such as internet or
broadcasting, it can show a message to check the
settings or the hardware. In the worst case, it
should display the main page.
Recognition rather than recall
The interface must not put stress on users’ head to
remember the actions or options. The instructions
to use the system should be visible and
understandable easily without making any notes.
Aesthetic and minimalist design
The system should not contain any dialogue or
information which do not seem to relevant to the
user. In addition, the information must be brief but
effective.
Help and documentation
Help and documentation must be in plain language
and should be written in an interesting with the
snapshots. They can be interactive using the real
interface. For an instance, if the user wants to learn
how to play a game or capture an image, the help
can be provided using the arrows and pointing out
the objects.
Usability testing
According to Rubin and chisnell, the compilation of
usefulness, efficiency, effectiveness, learning ability
and satisfaction equate to usability. So, the target
of our testing is to find the compliancy with those
attributes. We have to plan and prepare the test for
the users who are not involved with any job that
requires high level skill or education as any one is a
potential user of the system. Separate forms need
to be maintained for test plan, the results and
analysis followed by recommendations. We can run
testing in laboratory or in the real field with real
end users and record all critical incidents,
comments, observations, impression and measure
mental work load. Then, formative evaluation can
be done for a group of users’ using an interactive
system for their opinions and more precise critical
incidents. The summative evaluation with two or
more groups can be effective to measure the users’
experience with electronics devices and compare
the performance to analyze the data with applied
statistics. The aim is to choose the best system. Test
can be done based on appropriate task
environment where real end user and tester can
work together to observe the changes in actions
placed in different surroundings and record data
using questionnaires.
Challenges and opportunities
Even after careful design and elaborated
evaluation, there are number of challenges that the
developers may need to deal with discussed as
below.
Challenges in capture
Capturing images with single fixed angle will not be
able to capture all parts of a live experience, even
with auto-rotate featured cameras it might be
difficult to find a way to make it rotated based on
the moving object. Hence, one of the biggest
challenges here is being able to determine the
focus of attention for the group and even more
difficult for each individual at a live event [5].
Challenges in access
Accessing images can be very difficult in case of
large scale database where users often can’t
remember time and date of the images that they
require. Hence, to put them in order the users
might need to spend a good chunk of time [5].
Challenges in security
The operating system must be highly secured as
this system stores very personnel information of
the user. So, if the system gets hacked then an
outsider will have access to all the information of
the user which is most undesirable.
Challenges in data input method
Data input using the laser pointer remote controller
can be difficult to use by some users’ as they have
to select characters on the virtual keyboard. In
addition, using the keyboard for some languages
such as Chinese, hindi, bangla could be more
difficult to use. A pie input method could be better
solution here [ref: textinputmethod.pdf] but still
subject to pass evaluation or perhaps we have try
with other methods which might be one of the
biggest challenges for this application.
Challenges in aesthetical design
The design may be culturally constraint. If the
design is aesthetically acceptable by one culture
that doesn’t mean that it has to be accepted by
another culture. However, it has to contain the
properties of connectivity and accepted throughout
all the people from different cultural background.
So, conforming to the users’ from that point of view
could be really difficult. In addition, the objective of
the design is to avoid tree and menu structure and
deploy an intuitive interaction style within an
affordable cost. Therefore, the interaction should
be based on man’s skill such as cognitive,
perceptual motor and emotional skills and carrying
out designing that deals with human motor
capabilities could be subject to a challenging task.
Finding potential test users
Employing users’ for test could be very difficult as
this system is to be used by anybody and involving
users’ from different social background may require
adhering critical approaches. Moreover, online
surveys wouldn’t be an effective method to
evaluate components as a large number of target
customers are not familiar with internet facilities.
Connectivity
In some countries, internet is not still available
greatly to all kind of users or probably people are
lagging far behind from using fast internet
connection. This is considered to be a hindrance for
using some features of the application as this
problem largely affects data downloading time and
quality of streaming media. Therefore, how to deal
with various network conditions must be taken into
consideration in a usability study.
Discussion and conclusion
Usability studies collect a wealth of information
aimed to discover how users work or trying to
understand the issues that users have working in a
system. One of the objectives of UCD is to produce
a proper functional system but the system may
unsuccessful upon implementation if it is not
integrated into the culture of its target customers
diligently. This could lead the achievement of this
system to a total disaster if it is not built
considering the greater context to which it belongs.
We also have to consider that usability from
developers perspective may differ to a great extent
from usability perceived from user’s point of view.
However, developing a system by considering
anybody in general is not an easy task. The problem
and challenges may exceed the capability of the
workforce and enhancement will force the budget
to be increased. So, cost-benefit tradeoffs play a
major role in the adoption of UCD methods. For
example, heuristic evaluation is relatively easy and
less costly, whereas field studies are expensive in
comparison to other methods [6].UCD offers
iterative design and it keeps repeating unless the
design meets its perfection or sees wide acceptance
by following usability techniques. And usability of a
system is depicted based on target user
requirements or what makes them feel about it.
Hence, UCD approach produces a system which is
customized for every single user of the application.
Therefore, it raises the question that to what extent
the UCD would be successful in this regard as entire
development hugely dependent on field studies. A
solution is to integrate agile methods in order to
minimize the iteration of the process [4]. Agile
developments short iterations can be used for
testing when basic UI prototype has been
approved. In this process, every cycle is a working
version of the system with limited functionality.
This procedure helps the specs to be more correct
as it is tested with users. So, UCD blending with
agile methods can be able to ensure the production
of a successful application in relation to large
projects.
REFERENCES
1. Tangible Products – Redressing the Balance
between Appearance and Action
2.Tom Djajadiningrat, Stephan Wensveen, Joep
Frens, Kees Overbeeke
3.User centered requirement Handbook
Martin C. Maguire HUSAT Research Institute
4. An Agile User-Centered Method: Rapid
Contextual Design
Hugh Beyer, Karen Holtzblatt, Lisa Baker
5. Charting Past, Present, and Future Research in
Ubiquitous Computing
GREGORY D. ABOWD and ELIZABETH D. MYNATT
Georgia Institute of Technology.
6. A Survey of User-Centered Design Practice
Karel Vredenburg IBM, Ji-Ye Mao University of
Waterloo, Paul W Smith IBM, Tom Carey University
of Waterloo.
7. http://www.interaction-design.org/
8. From User-Centered to participatory design
approaches Elizabeth B, N. Sanders sonicRim
9. Handbook of usability testing
Jeffrey Rubins
top related