Category Archives: Information Architecture

Information Architecture topics.

SpeechTEK – Multimodal Interaction Design Slides

I just realized that for some reason the digital handout for my presentation isn’t available on SpeechTEK’s site.
While I sort that out, I though about proactively posting the deck for anyone wanting to download a copy.

The session is entitled “Lessons in Multimodal Interaction Design”, and particularly, the topic I’m going to cover is “The Coexistence of IVRs and Small Screens”. If you’re attending SpeechTEK, I would love to have you join us tomorrow, August 3rd, at session D203 from 1:45 pm – 2:30 pm.

See you there!

More on documentation and creativity

It was very interesting that we were just recently talking about what it would take to make documentation actually useful, and a couple of weeks later I heard about a new book by the GuiMags guys (creators of a magnet-based prototyping tool for interface design) titled “The Unplugged.”

What I find very interesting about it is that as part of being a UI designer, I’ve always had a passion for creativity in general — tools, techniques, case studies, etc. — and one of the common themes that comes up in relation to Creativity and Design is that sometimes, the only way to design something right is to go analog.

Analog? Let me clarify. What I mean by that is that before you write your first line of code, before you create the first page of that design document, before you draw that first block in your call flow, you need to turn the computer off, step away from it (yes, laptops too), grab a pad of paper and a pencil, and start drafting your ideas.

I know it sounds counterintuitive, but sometimes all those software tools we’re so used to in fact hinder our creativity because they force us to adapt our way of thinking to the inherent rules and restrictions of each individual software package. We’re visual creatures: anyone can take a napkin and a pen and quickly sketch a new idea or a solution to a problem (this is my favorite book on this subject), yet those same individuals often remain quiet during design meetings and let the “creative” members take the lead role since they can create breathtaking digital images and amazing presentations with digital effects.

Next time you’re faced with a new design challenge, give it a try, unplug yourself, go analog for a little bit and let your brain and hand take control. Great things will emerge, believe me.

Making Documentation actually useful

I was recently reading an article about the future of wireframes in the context of user interface design documentation. Wireframes have been used mostly for visual elements and became a critical building block in the early days of the web.

But since I like drawing analogies between other UI fields and the VUI field, there were a few quotes that struck a cord because of their universality:

“The object was to create as many wireframes as possible, of every screen in the entire site, in big, monolithic and hugely detailed chunks. Rather than exploring different approaches to the information and structure of the site, the emphasis became entirely focused on using all of the time available to build a collection of wireframes, regardless of whether they were the right wireframes.”

Ouch, how much of that is still taking place nowadays? You create as many “detailed individual states” as possible sometimes loosing track of the real intent of the document. Nevertheless, some of those risks can be lowered by using a layered approach where you start as simple as possible and then start adding details to the design that make sense from a design perspective and that help clarify the overarching intent; for example: starting with a high-level, 1-page interaction flow, then adding details in the form of sample calls, which then evolve into detailed flows and become the source for an initial or “skeleton” specification document (containing mostly initial interactions, without error strategies) which after various reviews (including Usability) become a complete or “full” specification document.

“Why hold the information in a document that’s no one wants to read?”

Thank you, thank you, thank you. How many times designers have to create alternative “views” of their documents because some groups may not be able to use (or care) about certain aspects of the design, which might be buried with other details or is presented in a format that is neither usable nor efficient. But of course, the question that begs to be answered is “What’s the ideal document the developer would like to see to build a system from?.” Suggestions anyone?

“In a previous life at a big ‘old style’ new media agency, there often seemed to be a one tool fits all approach to projects. This applied to information architecture too.”

I’m sorry to say some of might still be living that life. Methodologies/Systems anyone? I totally agree with the notion of finding out what’s the best tool for a particular project. Not every project requires the 12-step program, and not every customer processes information the same way.

“The best sites are those where there’s a seamless divide between the look, the content and the experience.”

This one I would like to borrow and extend as a closing statement: “The best systems are those where there’s a seamless divide between the look, the sound, the content and the experience.”

Time to rethink our current documentation practices…

12 Useful Techniques For Good (Voice) User Interface Design

Smashing Magazine just published an article about Useful Techniques for Good UI Design, that even though concentrated on Web Applications, I felt there were a few techniques that could be reviewed with an eye towards VUI design:

  1. Highlight important changes
  2. And by this I don’t mean “Please listen careful for our menu options have changed”. Here we’re talking about system status visibility - knowing where you are and that actions led to expected results. Implicit confirmations are a good example of this.

  3. Enable shortcuts in your application
  4. The key concept here is to offer users more responsive user interfaces. In the case of the phone, this can be somewhat compared to having “touch-tone equivalents” which allow expert users to breeze through applications without having to wait to be prompted for input. But here I would also argue that other things would fall under this same principle: good command selection, “shadow” options that even though not prompted for can be supported if tuning data backs up the decision, and even “parallel” choices which allow someone picking one branch to swiftly change “branches” without having to “go back” or return to a “main menu”.

  5. “Upgrade” options
  6. I feel this would be similar to having functionality available for “expert users”. Proper use of barge-in as well as multi-slot support allows someone to interact in more “advanced” ways with a system keeping such a transition simple and intuitive.

  7. Advertise features of the application
  8. And no, sending out “user manuals” for applications does not qualify for this. Here we would be talking about pointing out “new” features or even “advanced” features that are available. As with most non-task-oriented information, this should be presented only after the user has successfully completed their task.

  9. Use “color-coded” lists
  10. Items appearing together are an issue, no matter what type of interface we’re talking about. Therefore it is really important to put attention to the different tools at our disposal to avoid this issue: voice intonation/emphasis (such as making menu options clearer), word choice (avoid confusion amongst different choices), silences (natural pauses to allow mental processing of the information), etc.

  11. Offer personalization options
  12. I’m sorry to say this has been out there for quite a few years for most interfaces, yet voice user interfaces hardly ever offer them. It may be harder to do than with visual interfaces (where you can change colors, rearrange items, etc.) yet small things like offering only relevant choices based on someone profile or remembering the last tasks they’ve performed go a long way in making users feel like they “own” the system.

  13. Display help messages
  14. Help is definitively one of those topics that has been debated a lot, and like most controversial ones, whether or not it should be used and how it should be used can be summarized in two words: “it depends”. Personally I feel help should not be a stand-alone piece of a design (whether it is a tutorial or a separate collection of help prompts) but rather an integral part of design – commands offered should be helpful to a user, error messages should add relevant information to help users recover, transition messages should help users know where they are and where they are going, etc.

  15. Design feedback messages carefully
  16. Here we can think about transition messages (exit prompts) and error recovery prompts. Here, there are various things that can be done to make them more effective: control voice intonation so as to convey the right meaning, reword questions and statements so as to convey the same meaning without simply “reprompting” users (if the problem had to do with users not understanding you in the first place, simply repeating is not going to help at all)

  17. Use tabbed navigation
  18. This is one of those areas where visual design has an advantage over non-visual design. Nevertheless, good information architecture can help obtain similar results, where applications reflect user’s mental models making it easier for them to know what choices mean and how the system works. This makes users feel at ease since they feel more in control.

  19. Darken background
  20. Conversely, here non-visual design has the advantage since all interactions happen in sequence. No need to “gray out” parts of our design since by the time we move on with a new “task”, all previous information now belongs to the past.

  21. Lightboxes and Slideshows
  22. The concept here is to allow users to navigate back and forth. In the visual world there are a lot of tricks to reduce the noise and allow a user to focus on a particular item. In the case of non-visual design, there are ways to do similar things when the system has been properly architected, which should include consideration of “go back” behavior that would contextually match a user’s mental model, as well as proper “sub task” definitions so that if users need to make a change or update a certain piece of information, they don’t have to start all over again or get confused about how to do it.

  23. Short sign-up forms
  24. This is another one where non-visual design has the opportunity to leverage information. The whole notion here is to minimize the effort needed to identify a user and to speed up the process. On one hand, this means taking advantage of what technology has to offer: ANI identification, DNIS separation (ideal for language selection), CTI (please, please, please don’t loose everything that the user has accomplished so far). And on the other, there are design techniques such as the removal of “optional” elements if that allows a user to proceed (and especially if that avoids confusion and distraction from the user’s real goal).

Usability on wide and deep menus

It seems one of the most frequent questions that come up when designing a new user interface is “how many options should appear on any given menu?” which depending on the answer is almost always followed by “how many levels down should the system have?”

And believe me, neither one has an easy or absolute response. As witnessed by some of the heated debates on the VUIDs list, the old standing guideline of “five options or less” was recently put to the test when Patrick Commarford and James Lewis from IBM published the article entitled “A Comparison of Broad Verses Deep Auditory Menu Structure” where the results seem to indicate that when comparing broad vs. deep menu designs, giving callers a single menu with many options (providing touchtone fallback) yields better results than using fewer options supported by submenus.

Aside from all the points, concerns, comments and objections raised by both the authors, the VUI community and other blogs, in my opinion I think it’s going to be really hard to reach a consensus if the main focus of the discussion if to agree on whether *5* is the right number of choices or not. The problem I see with trying to find that ‘ideal’ number is that a number by itself doesn’t mean anything. In this case, I think the devil is in the *context*.

In other words, any attempt to generalize what a good design should look like without taking into consideration the context of the application is not very responsible. We all know there are many factors that need to be taken into account when designing any system: caller’s age, demographics, type of application, caller’s objectives, business goals, etc.

Furthermore, when evaluating possible menu choices, the frequency with which each choice is needed and used by callers should not only drive their position within the menu but also the decision of whether or not the option should be in that menu in the first place (for example, if the top 3 choices on a menu are used 45%, 31% and 20% of the time respectively, then adding one more choices that’s only used 1% of the time should not be considered – in fact those calls are likely to be better handled by agents in the first place).
When all those factors are added to the mix, then an appropriate design *strategy* can be conceived.

For example, when thinking about the context of an application, imagine a system asking callers to choose a bird species – “And which type of bird is circling around you: dendrocygna, gelochelidon, herpethotheres, or tachycineta?”. In that scenario, unless you’re a birdwatcher, you’re likely to be overwhelmed even after hearing only 3 choices. The counterpart of course would be to ask for something so common and known that the number of choices in itself wouldn’t make a difference – “And which planet are you calling from: Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune or Pluto?”

I definitively believe the industry should strive to find more answers to long standing questions, particularly when those responses can be backed up by real world data, but in this case, I think that unfortunately the answer to the question whether to go broad or deep on menus still is… it depends.

7 Components for a Successful Phone System Redesign

(I found this great article by Jared M. Spool) and decided to do an adaptation)

From observation and analysis, it seems teams who focus on the long term objectives of a project and an organization are far more likely to create designs that really pay off for the organization, whereas short-term vision teams end up not only not meeting the caller’s expectations, but often having to revisit the design and redo most of the work later on.

It is important to understand that the right approach to any Redesign involves turning the system into a living, breathing entity that evolves over time and grows with the caller’s and organization’s needs.

Here are seven essential long-term components to reach a successful phone system redesign project:

1. Make Sure You Have A Vision

This can be as simple as to look five or ten years into the future and ask the question, “What will calling our system be like on that date? What experience will the user have?” Team members from the best organizations have a consistent, clear idea what the user’s experience will be like in the future. Such a vision helps drive the design as well as any future changes/enhancements (“will this change get us closer to that vision?”).

It’s critical the vision not focus on future technology but instead on future experience. What are the steps in today’s process that makes things cumbersome or frustrating? How could the experience become more delightful?

2. Spend Time With Your Users

To successfully redesign (and to design for that matter), you need to be in close contact with the source – your users. You need to know who is using your system and what they are doing with it. You need to know what works and doesn’t work for them.

Based on the number of new implementations and changes happening out there, it seems many companies finally understand the importance of the telephone channel as a critical touch point with their customers. Unfortunately, even though some of those systems are getting major face lifts (heard any new “please listen carefully as our options have recently changed” recently?), most of the time decisions are made without even looking or listening to their users.

When preparing for a redesign of any system, teams should not only focus on what the new design should do but should also spend the same amount of time listening to real caller interactions with the existing design as well as sitting down with call center agents.

3. Reduce Risk By Working In Little Bits

Going back to thinking about design as a never-ending, always-improving process, the most successful teams keep their projects small. They don’t attempt to redesign everything in a single launch; instead, they work on one small section at a time.

Otherwise, you end up with complexity at all angles: the scope of functionality is larger, the number of stakeholders is larger (each with their own concerns), the number of archetypes the team is designing for is larger, more compromises are made, and the risk is much higher. If things don’t go as planned (as it often happens), it’s a huge problem for everyone, often with more visibility in the organization than the team would like.

Teams that only focus on a small portion of the application at a time reduce all those factors and risks while being able to concentrate on those critical areas that will make or break the design. Plus of course, reducing scope and concentrating on the most used features yield much better ROI numbers and timeframes.

4. Have the Right Skills Internally

Here recommendations might slightly different from what a regular web project might require. Even though on the web the best teams are less likely to hire outsiders to do their designs, building the right speech and VUI skills in-house is not only hard and too specialized, but may get in the way of a successful redesign. Nevertheless, since the idea is to have a design that evolved over time, it is up to the company to maintain, change, update and enhance the application as user’s needs change.

Therefore here the suggestion would be to have a dedicated in-house team that would work side-by-side with someone with experience in these types of systems so they can learn not only the intricacies of the design but also the reasoning and the strategy behind it (which will also help them become advocates of it and defenders of the user experience). That way, external resources can be later on used as mentors or as a way to make larger changes faster.

5. Think ‘Standards’

The VoiceXML and SRGS standards are the successful teams’ best friends. Careful application of the standards can dramatically shorten the time it takes to make changes down the road, as well as to simplify the integration of third party components and technologies.

Even if an original application didn’t start out as standard-compliant system, it’s worth the effort of slowly converting it. As functions/modules/flows are redesigned (in little bits, remember), changing them over to be standards-compliant is an effective approach. Every new redesigned area helps improve the team’s skills in using standards, thereby making the next section even easier to convert over.

6. Have a Plan for Change

Aside from having clear implementation and maintenance plans in place (system architecture, internal processes, etc.), it is critical to also plan for how the users will experience the change. Will they just call in one day to find an entire new experience or will the change slowly happen over time, almost imperceptibly? Will they be notified in advance of what the new system is prepared to do for them? Are all other contact points (web, branches, etc.) ready to support the cross-channel interactions that will be generated by the new system? Will the agents be prepared to handle the temporary increase in the number of questions and issues that often arise as soon as a new system is implemented? (and no, asking callers to “please listen carefully as our options have recently changed” doesn’t count as a plan)

For example, one interesting approach some companies take on the web is to slowly convert users over to a new version of a system by offering the new options while still allowing users to continue to use the old functionality/version for a while (this may be particularly critical for caller populations with a wide gap between infrequent callers and expert users, specially if moving from a DTMF system to speech). That way companies can assess the risk of changing the functionality out from under these users versus the cost of supporting both interfaces.

7. Understand the Internal Processes

Unfortunately, just as it happens on the web, many teams approach the redesign process much like they’d approach the design of a brochure or a monthly statement. Designing either one has the advantage that, at some point, it is printed and delivered. Once that happens, it can’t be changed — it’s done. The only thing is to start over with a new one.

The problem of course is that if you think you can think about a new design, implement it, then pay attention to other business, not giving the system any further attention, you’ll be in trouble.

The most successful teams consider, in the planning stages of the project, what the long-term internal processes will be for updating/enhancing the system after the design changes (due to new user’s needs or business requirements). How will they add new functionality? When do they remove low usage flows? Who will edit prompts before they go live? Who will review changes? Who will decide about changes to the user’s experience?

Understanding how the organization will handle the ongoing system changes shortens the time it takes to make improvements, reducing the need for a risky major relaunches (or sometimes even worse – pulling out the new system and bringing back the old one).

Conclusion

Careful consideration of long-term factors dramatically increases the odds a team will produce ongoing results that have considerable business impact. Teams ignoring these long-term components may get a new design launched, but will likely find themselves reliving the difficult experience again in just a few months.

People-centered design

Considering the latest advancements and the impact of social media in our environment, I think it would make sense to borrow a page from social design and re-think who should be the center or “pivot” of our designs.

As Joshua points out in his blog, social software has changed the focus of most web applications from a thread-centered approach (the way Usenet was setup and how most Forums work so that each new thread was assigned a specific topic under which the discussion took place) to a people-centered design (the way MySpace, Ryze, LinkedIn, Friendster, and others work where the individual becomes the focal point of all interactions which then spread throughout that individual’s network of friends.

From a VUI perspective, I think there are some lessons that can be learned and applied to application design. In particular I think the point about how if we live our daily lives with ourselves as the center it would also make sense for the applications around us to behave the same way makes total sense in the context of self-service.

We all know the drill: design tends to be driven by all sorts of requirements which tend to yield solutions that are business-rule-driven, ROI-driven, containment-driven, call-length-driven and from time to time, user-driven (even though I’m glad to report that tendency seems to be changing).

But to me, user-driven is not the same as people-centered. On one hand, applications can certainly be designed around user’s needs and offer things that most users want. But on the other hand, in a true step towards personalization, designs could certainly be centered on people: who they are, what they like, how they interact, what they need, etc. at a very individual level in some areas, but yet connected to that individual’s network of friends, peers, family, and acquaintances.

And as we know, once a different “pivot” is selected during the definition of an organizational scheme, the entire interaction, steps needed and flow are likely to change dramatically.

For example, what would a financial system sound like with people as the pivot point? Is there a shared object in our systems around which people would like to connect?

SpeechTEK trend – Alternative A/B call flow design

One very interesting trend that came up a handful of times during this year’s SpeechTEK East Conference was the use of Alternative A/B Call Flow designs, pushed by companies such as SpeechCycle and Google.

The basic premises of A/B Call Flow Design are that designs shouldn’t use a single path for all interactions, and that those paths should be driven by actual data.

And it definitively makes sense. Think about it. When you’re designing a call flow path, you’re basically implementing a version of all the assumptions that took place during the Context Gathering phase of your project. You gathered data, considered business requirements and user needs, monitored calls, and drafted what you considered to be the ideal design for that organization (which you hopefully also usability tested).

Unfortunately, those types of designs rely on data that could be coming from disparate systems, from existing designs (which we cannot guarantee are an accurate reflection of user’s behaviors), or sometimes are flat out missing. So what can we do?

The process is pretty straight forward. You create two or more alternate versions of a design (A and B), each using slight variants of prompting and/or call flow, which implement a metric tracking system that follows a call and assesses whether a certain call was successful or not (based on criteria such as caller-generated transfers, call length, etc.). Then, a randomization script receives all calls and routes callers through the alternate paths. Finally, the VUI designer analyzes the data and is able to conclude (with actual data and statistics) which of the various alternatives yields the best results… taking some of the faith out of the design phase.

For example, imagine you have a “Say Anything” or “Speak Freely” type of system in place (which uses Statistical Language Modeling – SLMs – to accurately route callers to specific destinations) and you’re wondering whether prefacing it with just a “How can I help you?” prompt will be enough for callers to understand what’s expected of them. Other alternatives of course include expanding that prompt to include a set of examples (sample phrases callers can say), a set of choices (options callers can choose from) or a combination of both. And on top of that, we could also be wondering what should be the appropriate number of examples and/or choices that we should be presenting. Pretty tough, right?

This type of strategy is also very helpful when dealing with Main Menus. Sometimes the Information Architecture of a system is pretty obvious, but sometimes it allows for alternate designs. For example, on a financial application, some callers think about their institutions in terms of the products they offer (checking, savings, loans, credit cards, etc.), while some others think about them in terms of the services they offer (getting balances, making payments, executing transfers, etc.). So again, we could implement two alternate versions of a main menu (each using a different focus) so that we could track the performance of each type in real time and then we would be able to identify the one that yields the best results (completion rates, call lengths, transfer volumes, etc.)

Up until now, most designs followed a “me too” strategy simply replicating what other systems out in the field were doing, and then having to wait until a full pilot analysis was completed before being able to assess the state of the system. But now, with A/B designs, systems themselves can provide the data we need to make those decisions, and in a way, even learn by themselves and self-tune the interaction using reinforced learning.

Have you tried something similar before? If so, have you find other types of uses for it? And what were your results?

SpeechTEK Fall 2007 – Customers Request the Darndest Things

As promised, here’s a copy of my presentation from this year’s SpeechTEK in New York: “Customers Request the Darndest Things – 10 Challenges for VUI Designers”

Description: Business owners have business goals, objectives, and requirements. Designers bring experience and advocate user needs throughout the design process. So how can we create outstanding experiences when objectives may seem to clash or customers have preconceptions about “how the system should work”? Explore some common challenges, understand the real issues behind resistance, and discover how to focus instead on successful systems.

Thoughts?