CHAPTER 9 Social Applications
290
Related design patterns
As users add friends to their networks and indicate their relationship to their
friends, it offers a good opportunity for the application to update their USER
PROFILES. In addition, it is important to offer mechanisms for users to grow
(a)
FIGURE 9.42
LinkedIn offers users several options to search their membership list (a). They
also offer a reference search for fi nding people in one’s network who may be able to provide
references for a candidate (b).
(b)
FIGURE 9.43
Twitter allows users to follow other users; “ followed ” users ’ activities are then
shown as updates on the “ followers’ ” pages.
291
their network, because the size of the network is an important factor that con-
tributes to their REPUTATION.
FRIEND LIST
Problem
Users are likely to communicate with the same core group of people — friends,
colleagues, family, and acquaintances. Requiring them to remember their infor-
mation every time they want to contact someone would make the interaction
ineffi cient.
Solution
Allow users to create and maintain a friend list ( Figure 9.44 ); friend list is also
referred to as a “ buddy list. ” In addition, allow users to group their friends to
make it easier to fi nd them and communicate as a group.
Why
A friend list is similar to an address book and enables users to fi nd their friends
and their profi le information quickly. In addition, like address books, many
users of social networking applications have tens to hundreds of friends. If pre-
sented just as a simple list or paginated list, fi nding friends can become diffi cult.
Therefore, it’s important for users to be able to group their friends based on their
relationship, how frequently they interact, how they were introduced, and so on.
In essence, this helps users maintain, if they so desire, an accurate “ social graph ”
of their friend list. Furthermore, this feature also allows them to tailor their pri-
vacy controls and send messages to them as a group instead of individually.
How
Update users ’ friend lists whenever they accept a request to become a friend or
when their request to “ friend ” someone is accepted.
Friend List
FIGURE 9.44
MySpace allows users to view and manage their friend lists on the My
Friends page. In addition, it allows users to group friends into separate categories. They can
also indicate privacy settings in terms of who can view the categories they create.
CHAPTER 9 Social Applications
292
ALLOW USERS TO GROUP THEIR FRIENDS
Users may want to group their friends to make fi nding them easier — for exam-
ple, they may want to group them based on the nature of their relationship or
on the frequency of their interaction with them. To afford maximum fl exibil-
ity on how they want to organize their friends, allow them to create their own
groups. If users have created groups, make assigning friends to a group part of
the accept (or “ request to add ” ) process ( Figure 9.45 ).
MAKE THE FRIEND LIST EASILY ACCESSIBLE
Among the common reasons users visit social applications is to interact with
their friends or see their status and history. To enable quick access to such
information, make it easy for them to access their friend list. Most social appli-
cations allow users to see a list of friends on their home pages.
ALLOW USERS TO VIEW THEIR FRIENDS ’ ONLINE STATUS
An important reason to maintain a friend list is to enable messaging between
friends (both synchronously and asynchronously). To initiate synchronous mes-
saging (i.e., chats), it’s important to know if a friend is online ( Figure 9.46 ; see
the MESSAGING and PRESENCE INDICATOR patterns later in this chapter).
Related design patterns
To promote communication with friends, both the MESSAGING and
PRESENCE INDICATOR patterns usually accompany FRIEND LIST. In addi-
tion, to make it easy to fi nd people, a friend list is often shown as an IMAGE
GRID (see Chapter 7).
FIGURE 9.45
Orkut allows users to group their friends into different categories. By default,
they offer the groups “ best friends, ” “ family, ” “ school, ” and “ work ” ; users can also create
their own groups and put the same friend in more than one group.
293
GROUPS AND SPECIAL-INTEREST COMMUNITIES
Problem
Users need a way to connect with those with similar interests and experiences
so that they can learn, share their knowledge and opinions, build relationships,
grow professionally, grow their networks, and so forth.
Solution
Allow users to join and create groups, also referred to as forums or online
communities ( Figure 9.47 ).
Why
One of the reasons users participate in community-based applications is to
connect with those who share similar interests and experiences. Enabling users
to create groups and connect with others is therefore essential because it con-
tributes to a sense of community and encourages participation. For companies,
forums and communities are also useful for customer support because they
allow customers to help each other and, in the process, reduce support costs.
Groups and Special-Interest Communities
(a)
FIGURE 9.46
MySpace allows users to fi lter their friend list by who is online (a). Gmail, on the
other hand, shows a green bullet in front of online users (b).
(b)
FIGURE 9.47
LearnHub, a site that supports educational communities, allows users to join
existing ones or to start their own community.
CHAPTER 9 Social Applications
294
How
Groups or online communities are virtual places where users with like interests
can share and connect with each other. Therefore, a community can be in the
form of discussion groups around a topic (e.g., Usenet); groups created within
a social networking application (e.g., Facebook); discussions around social
objects such as photos, music, movies, books, and so forth (e.g., YouTube,
Flickr); comments in response to a blog entry (e.g., blogger); or communities
created by companies to support their customers (e.g., Dell Support Forums).
Groups can be derived dynamically by using shared tags ( Figure 9.48 ), or users
can create them explicitly based on their specifi c interests ( Figure 9.49 ). Creating
groups dynamically is a good way to discover people who share common inter-
ests. However, such implicitly created groups may not be sustainable because users
have not chosen to be part of that group. Explicitly formed groups, on the other
hand, require users to join them and may have better chances of surviving.
Groups may also be created around specifi c events by people attending, or
those wishing to attend, an event. Events are just a type of group with location
FIGURE 9.48
43 Things creates groups dynamically based on tags.
FIGURE 9.49
Facebook allows
users to create their
own groups.
295
and dates. A good example is SlideShare ( www.slideshare.net ), where users can
create event-based groups. The advantage of event-based groups is that they can
allow users to join groups for specifi c dates and locations.
ALLOW USERS TO MAKE GROUPS PUBLIC OR PRIVATE
Groups created by users can be either public or private ( Figure 9.50 ). Public
groups are helpful for general-interest subjects, such as cooking, hiking, poli-
tics, and so forth, that are likely to invite participation from many users. These
public groups may spawn more specialized subcommunities as their users ’
interests demand. Private groups are typically created by users who have very
specifi c goals or are dealing with topics that are sensitive in nature.
Public groups can be joined by anyone and may or may not require acceptance
by the creator of the group. Private groups, on the other hand, are restricted to
those invited by the creator of the group. Joining public groups is usually as
easy as clicking “ Join this group ” and confi rming the intent.
ENCOURAGE USERS TO JOIN AND PARTICIPATE
Users generally prefer to join groups or communities that are active. Therefore,
it is important to show indicators of group activity such as number of users,
number of posts, number of replies, recency of posts, and so forth ( Figure 9.51 ).
It also helps to show a gallery of active group users. This may be done by show-
ing users ’ avatars as part of the discussion and/or showing a gallery of new or
active community members.
SHOW USERS THEIR FRIENDS ’ GROUPS
Because users share some commonality with their friends, they are more likely
to join the groups to which their friends also belong. Therefore, it’s important
for users to see the groups their friends have joined.
Groups and Special-Interest Communities
FIGURE 9.50
Facebook categorizes groups into open, closed, and secret groups. Open groups
are public groups, secret groups are private groups, and closed groups are semipublic, since
they require approval of the group administrator to join.
CHAPTER 9 Social Applications
296
CREATE COMMUNITIES TO INVITE IDEAS AND SUGGESTIONS
It is not necessary to have communities started only by users. They may be started
by companies to invite comments and feedback from customers ( Figure 9.52 ).
Several companies have used communities to shape their products and service
offerings. Salesforce.com uses the IdeaExchange community to invite ideas
from users and ask them to promote or demote ideas on their product road-
map (see ideas.salesforce.com/popular/ideas_under_consideration ).
FIGURE 9.51
Flickr shows users the number of group members (a), the “ photo pool ” (b), and
a list of ongoing discussions (c) to indicate activity and interest in the group.
FIGURE 9.52
Rally Software uses communities to support new and existing users, share their
release backlog, invite users to request features, and so forth.
297
Related design patterns
TAG CLOUDS are important navigation mechanisms for dynamically created
groups because users can click relevant tags and navigate to the desired group
(see Chapter 5). In addition, as users participate in communities, they may
gain a REPUTATION based on the quality of their contribution.
MESSAGING
Problem
One of the reasons users participate in an online social community is to be
able to communicate with one another. This may be in the form of a conversa-
tion (i.e., chat) or as a message that can be responded to later. Also, in some
instances, users may want to send a broadcast message — that is, send a message
to several people at once — and they may not necessarily need a response.
Solution
Enable users to communicate with each other synchronously (e.g., chat) or
asynchronously (e.g., messages, pokes, scraps, etc.) ( Figure 9.53 ).
Why
An important aspect of being in an online community and sustaining it is to
encourage communication among its members. The easier it is for users to
communicate with each other, the more likely that the community will thrive
and be able to sustain itself.
How
Allow users to communicate with each other synchronously in real time using
Instant Messaging (IM) features (e.g., chat), as well as asynchronously via send-
ing messages to one another or posting messages on a shared public area. The
most common asynchronous messaging options are to allow users to send pri-
vate messages to an individual ( Figure 9.54 ) or posting comments on shared
areas (e.g., “ walls ” on Facebook).
TO FACILITATE CHATS, SHOW FRIENDS ’ ONLINE STATUS
Because synchronous messaging requires users to be online simultaneously to
initiate conversation, indicate whether users are online ( Figure 9.55 ; see also
the PRESENCE INDICATOR pattern next for additional details).
Messaging
FIGURE 9.53
Facebook offers users
several messaging
options: send an
email, chat in real
time (a green bullet
indicates that the user
is online), and poke
(a nonverbal
message).
CHAPTER 9 Social Applications
298
SUPPORT BROADCAST MESSAGES
Although one-to-one communication between users is effective via messaging
options such as chat and email, users may want to write a message for every-
one to see. It’s a broadcast message rather than a message targeted to a specifi c
person in the network. Several different terms are in use today to indicate this
feature, such as walls (e.g., Facebook), scraps (e.g., Orkut), and comments (e.g.,
MySpace) ( Figure 9.56 ).
ALLOW USERS TO INDICATE THEIR MESSAGING
PREFERENCES
Because broadcast messages, such as comments and scraps, are part of a user’s
profi le, they are visible to anyone who is granted access to profi les. However,
allow users to manage permissions so that they can specify who can write and
view comments ( Figure 9.57 ). Once set, it’s important that such preferences be
clearly indicated on users ’ profi le pages ( Figure 9.58 ).
Related design patterns
To allow users to communicate synchronously (i.e., in real time), it’s impor-
tant that they know when their “ friends ” or “ contacts ” are online. Having a
PRESENCE INDICATOR can help communicate users ’ online status and will-
ingness to converse.
FIGURE 9.54
LinkedIn allows users to communicate with each other using the “ Send a
Message ” option.
FIGURE 9.55
Facebook shows users the number of their friends who are online.
FIGURE 9.56
Facebook allows users to post comments on their friends ’ “ walls. ”
299
PRESENCE INDICATOR
Problem
In applications that allow users to interact with each other and maintain their
friends (or contact) list, users may want to know whether they can initiate a
real-time conversation with one or more friends.
Presence Indicator
(a)
FIGURE 9.57
Facebook allows users to specify who can write comments on the wall (a).
It also allows specifi c users to be excluded from writing comments (b).
(b)
FIGURE 9.58
Yahoo! Answers indicates users ’ communication preferences on their profi le
pages. In this example, the user has chosen to not communicate via either IM or email.
Không có nhận xét nào:
Đăng nhận xét