Friday Mar 09, 2012

What Are Design Patterns? Proven, Reusable Usability Solutions

Just back from speaking about cross-platform design patterns at the Oracle Applications User Experience (Applications-UX) training event in Munich, Germany (March 6 and 7, 2012). The Oracle EMEA sales audience (yes, the UX Samba is worldwide) heard all about how Applications-UX research and design expertise created these building blocks for a new standard in enterprise applications user experience, how they are used by Oracle's developers, and what they mean for Oracle applications users, customers, and partners too.

What Are Design Patterns?

Design patterns are reusable user experience solutions to common problems or tasks in enterprise software. Using design patterns means our internal developers have proven, easy-to-follow design guidance implemented with Oracle Application Development Framework (ADF) and Fusion Middleware (FMW) components. The development process can scale, and the result is highly usable and consistent user experiences in our apps.

We can also make those patterns available to customers and partners who take Oracle applications usability even further by creating new usable solutions when they tailor our apps. Check out these Oracle Business Intelligence Enterprise Edition 10g and 11g design patterns, for example.

Design Patterns Explained

When speaking to non-UX audiences, it’s important to grab their attention early, speak in plain language, and use examples that they can relate to. In the case of design patterns, I could have told them about Christopher Alexander and A Pattern Language: Towns, Buildings, Construction (1977) and how design patterns became popular in software and web development. But they might not remember that or know how to apply it!

A sales audience wants to know about a competitive message about how design patterns help apps users navigate a virtual world easily, and how this knowledge can be used by to develop and extend usable apps. Using everyday examples that we are all familiar with, and adding in local flavors, gets the message across.

Item in Amazon.de shopping cart before signing in

Searching for and adding items to Amazon shopping cart before signing in.

Bahn.de web site date picker

Using a DBahn date picker to automatically selects a date in the right format.

Google maps typeahead feature in search fields

Typing add in Google Maps is faster that selecting options from a list of values or waiting for search results.

So, to help illustrate, I used the “lazy registration” (that is, you can do your shopping and sign in or create an account later) on Amazon.de, the date picker on the Deutsche Bahn web site, the typeahead feature in Google Maps destination search, and a few other well-worn patterns that we now use on the web without even thinking!

Looking forward to the next opportunity to tell the Applications-UX design pattern story and to finding local examples that work for the audience too.

Thursday Jan 12, 2012

UK OUG Birmingham December 2011: Lessons Well Learned

Better late than never, a quick reflection on my attendance at the UK Oracle User Group Conference held in the ICC in Birmingham in December 2011.

UK OUG logo. UK Oracle User Group. Serving the Oracle Community


While there I spoke to an especially privileged audience about the Oracle Fusion Applications User Assistance. There was a strong Applications User Experience (Apps-UX) presence at the event overall, with other sessions from the Apps-UX team about Fusion Apps, Middleware, and so on, and a range of usability testing events going on in the background too.

Takeaways


  • Remind me never to confuse ICC with NEC again. Or, at least, to rely more on Google Maps to verify a recommendation from a corporate travel system that suggests a hotel in Solihull as an option, for example.
  • Loved the UK OUG conference mobile app. Very handy for making decisions about which sessions to attend and keeping track of developments. Wonder if we could use the in-built notifications for soliciting more testers at our usability sessions next time?

    UKOUG mobile app


  • Spend some timing picking your sessions. The UK OUG folks do an incredible job providing such a range of content running in parallel. Making decisions between sessions on the spot can be a tall order, so maybe set some objectives upfront about what your want to learn from the conference, overall.

    I wanted to focus in on apps implementation and usability. In seems to me that many of our partners and customers realize the importance of usability and how it contributes to an apps implementation’s success, but we (Oracle) can optimize this opportunity by providing usability expertise, resources, and guidance that works at the system implementor level. This isn’t about turning system implementors into UX professionals with all the trappings (dem highfalutin MacBook Airs and Graces, if you like), but rather it’s about enabling their capability to treat usability as part of the business requirements and easily deliver on implementation ROI without extra resources or overheads.

    So, the languages we use when discussing user experience (or usability), the materials we provide, the relationships we build all, themselves, need to be highly usable (that is, efficient, effective, and satisfying) by implementors. The stories I heard ar UK OUG 2011 about the superb applications flexibility and functionality being offset when users are forgotten (oh, let's stop using that term and call ‘em by their real names or job titles instead) and who then complain to implementors “But, all I wanted was...” was worth the attendance alone in terms of opportunity presented.


In all, a great event, rich in offerings, way too much for me to take all in at times, but I got what I came for: insights into how usability fits into apps implementation picture and the building new relationships with members of the Oracle community while cementing others. Great to catch up with the UK OUG players and other Fusion Apps UX Advocates too.

Looking forward to my next outing (I hope) at the UK OUG Ireland conference in March 2012.

UK OUG Ireland Conference 2012


Thank you, UK OUG team.

Wednesday Oct 05, 2011

Designing Mobile Enterprise Applications User Assistance: 10 Points to Consider

Here are design considerations to optimize the mobile enterprise applications user assistance. These considerations are based on Oracle Applications User Experience research into mobile user assistance, ethnography, and context of use. Understanding mobile app users' profiles and the mobile context--and how it differs from the desktop--is critical to delivering a successful overall user experience.

1. Forget the notion of porting over documentation manuals in any form to mobile devices. Users on the move do not have time to read such content. How the mobile app communicates with users must reflect a world of changing location, frequent disruption, and the need to complete tasks rapidly or to maybe revisit them later when time, social circumstance, or information availability changes.  Brent White's blog entry on mobile design principles will help you focus on how design must reflect the mobile user context.

2. Pay close attention to the language in the app UI. Language drives user action. If a term requires explanation to users then it's probably the wrong term. Explaining terminology slows down users and wastes valuable real estate in the UI.

Generally, web-based mobile apps terminology can follow the desktop version, while native apps can use the familiar terms provided by their platform. Test any new terminology along with interactions before you release the app.

The style of language (formal, casual, and so on) must reflect the user profile. Check out these excellent mobile international style guides from Microsoft for examples.

3. Avoid writing procedural user help about the task flow. If such usability isn't intuitive, then the app usability has failed. A quick first-run only orientation to new feature functionality is all that's needed in terms on onboard assistance for mobile apps, along with some basic instruction around areas that might not be often used, such as settings or configuration.

LinkedIn and iPhone user assistance

Full screen overlays or component popups can act as a modal barrier to task completion, slowing down users working under pressure. Use inline information instead.

Google search help on mobile

4. Eliminate errors by affirmations in advance, using placeholder text showing examples of data format, usage intention and so on (check out the HTML5 placeholder types for examples, and native device apps can offer similar features). Allowing users to quickly enter numeric, date or other data in the format they want and then seamlessly converting it to the accepted storage format is also the way to go. See the Oracle Application Development Framework (ADF) Trinidad converter demos for the idea.

5. Allow users to complete fields on the screen in any order they like, and then perform a validation on final action rather than validating each field one by one and slowing down task completion.

Validate data input on the device before submission to the server, saving on round tripping time from the mobile device if you can. Use those validation or conversion features to speed up the entire task completion process, reflecting a mental model of users knowing their data entry is valid on the mobile device rather than hoping it was on the server.

6. Inline placement for messages for task-completion errors and confirmation messages is best as this approach doesn't block access to the page or disrupt the user too much if they want to complete another task from the same page. Dialog boxes are still best for those critical issues, however (at this point, the user action has already stopped).

Inline versus dialog box message

7. Show the message clearly with distinct visual indicators and near the point of the error (see the ADF Trinidad demo on messages for an example). Different types of messages (error, warnings, or confirmations, for example) require different visual indicators and styling so that users can learn the intent of each type quickly and also rely on such visual indicators elsewhere without the benefit of reading the message text too.

8. Centralized lists of messages in a notifications center are the way to go for sure, but allow users to control which ones they want to see and when. Android does a great job on notifications, but Apple’s iOS5 looks set to create a new standard in mobile notifications and their personalization (the following screens are from pre-released software).

Apple iOS 5 notifications center

9. Choice of content for messages may vary depending on what application functionality is available or regional user preference even. For example, our research into expense report submission confirmation messages, revealed that US and UK-based mobile app users wanted to see the word successful in the message (indicating the task was completed as intended), though UK-based users were less adamant about the word. UK users preferred to have more details of transaction objects in the message content (for example, the expense report and amount), whereas US users preferred a simpler message without all the details. So, how do you resolve such differences?

Expenses confirmation message text alternatives

A difficult question to answer without access to the entire task flow or application features, but in this case, let context win out over consistency. Include the word successful, as users want to be assured that their task is done. Although only one word, it shapes their perception of what has happened. Are users on the move likely to remember all the expense details anyway after they dismiss the message? Probably not. So, allow users to refer back to a notifications center that reminds shows that the action was successful and all relevant transaction details as well as further activity around the transaction (approval, deposit of reimbursement, and so on).

10. What about audio, sound, or vibrate options as messaging for mobile app activity? These options can be offered as a personalization feature if your development effort can afford it, but don't expect a whole ton of usage uptake right now. Auditory messages can be ill timed for sure depending on the context. Who wants to receive a message like this during a business meeting?

Informational messages can always be recalled from a centralized notifications list, as they frequently don't demand immediate response. This is superior from showing them suddenly on the page during transaction completion, disrupting the current activity anyway.

As for SMS (text messaging) used for application confirmations, sure, such a personalization option can be considered, but as a lower priority, as there may be security issues at stake in an enterprise environment. Functionality that enables users to see confirmations from a centralized notifications center and to take any follow up actions arising from that location (for example, knowing when an expense report is approved) allows for more efficient working.

You may have other considerations. If so, then find the comments. To explore this area further, don’t forget to check out Marta Rauch's (@martarauch) presentation at LavaCon 2011 on mobile user assistance usability guidelines.

Friday Apr 22, 2011

Geezers and iPhones

Shortly after I relocated to the United States I realized that the term "geezer" wasn't a reference to one of those dodgy, fast-talking, wheeler-dealer character types from "Eastenders" or "Only Fools and Horses", but to an, eh, more mature person. All sorts of labels apply to the older generations: seniors, senior citizens, old folks, the elderly, old age pensioners, and so on. From a design perspective though, whatever you call this group of users, one thing is clear: the last thing you want is a UX that screams "older user", something I was reminded of by this Irish Times article.

Nowhere is this clearer than in the smart phone space. Instead of offering older users dumbed-down and patronizing designs with over-simplified features and larger controls, it is possible to offer a graceful, highly intuitive and classy design for all. The iPhone for example is one such device that works for users of all ages simply because of a great universal design, and one whose form factors--the large display and controls--work especially well for older users (though perhaps some of the finger-based gestures not so, maybe). Compare the keyboard experience when sending an SMS message on the BlackBerry with the iPhone, for example.

keyboards_compared.JPG

The Nokia 6310 phone was another device example, cited by the article, that was very popular with older users, yet like the iPhone was never marketed specifically for that age group (mind you, an endorsement by Jeremy Clarkson of any product would be enough to put me off it for life).

nokia_6310s.jpg

These older users must not be forgotten from design perspective. They're active with technology and online too, and besides the obvious social inclusion aspects of universal design, to not consider their UX needs leaves designers missing out on a very large global audience, one with a lot of economic clout. And, of course, we're all getting older too. If we consider ageing as an accessibility issue, then remember we're all "temporarily abled" up to some point in time, so designing for age is a wise investment, one that doesn't mean compromising on features or usability in any way (in fact, designing on accessibility ground has often led to improvements for the entire community). For details of the importance of this group in Ireland as well as some general observations, see the proceedings of the Business of Ageing conference.

So, it's not just "UX for kids"  that we need to think about.

Addendum: I picked up some great Tweets on this subject from CHI 2011, triggered by Alan Newell's presentation: Older people - a commercial imperative.

@chatchavan: #chi2011 Alan Newell: older people don't want "accessiblity". They just want to use the damn system!

I must read that paper!

Tuesday Mar 29, 2011

Applications User Experience User Assistance at CHI 2011

Delighted to say team members Erika Webb, Ray Matsil, and Jeff Sauro have a case study on The Benefit Analysis of User Assistance Improvements  in CHI 2011. You can check out more details of this and the other Oracle contributions to CHI 2011 on the usableapps website.

Great job everyone!

Monday Mar 07, 2011

Community Conversation

Applications User Experience members (Erika Webb, Laurie Pattison, and I) attended the User Assistance Europe Conference in Stockholm, Sweden. We were impressed with the thought leadership and practical application of ideas in Anne Gentle's keynote address "Social Web Strategies for Documentation". After the conference, we spoke with Anne to explore the ideas further.

annegentle4.jpg

Applications User Experience Senior Director Laurie Pattison (left) with Anne Gentle at the User Assistance Europe Conference

In Anne's book called Conversation and Community: The Social Web for Documentation, she explains how user assistance is undergoing a seismic shift. The direction is away from the old print manuals and online help concept towards a web-based, user community-driven solution using social media tools.

User experience professionals now have a vast range of such tools to start and nurture this "conversation": blogs, wikis, forums, social networking sites, microblogging systems, image and video sharing sites, virtual worlds, podcasts, instant messaging, mashups, and so on.

That user communities are a rich source of user assistance is not a surprise, but the extent of available assistance is. For example, we know from the Consortium for Service Innovation that there has been an 'explosion' of user-generated content on the web. User-initiated community conversations provide as much as 30 times the number of official help desk solutions for consortium members!

The growing reliance on user community solutions is clearly a user experience issue. Anne says that user assistance as conversation "means getting closer to users and helping them perform well. User-centered design has been touted as one of the most important ideas developed in the last 20 years of workplace writing. Now writers can take the idea of user-centered design a step further by starting conversations with users and enabling user assistance in interactions."

Some of Anne's favorite examples of this paradigm shift from the world of traditional documentation to community conversation include:

bob_bringhurst.png

Adobe Writer Bob Bringhurst's Blog

Oracle is not without a user community conversation too. Besides the "community discussions and blogs around documentation offerings, we have the My Oracle Support Community forums, Oracle Technology Network  (OTN) communities, wiki, blogs, and so on. We have the great work done by our user groups and customer councils. Employees like David Haimes are reaching out, and enthusiastic non-employee gurus like Chet Justice (OracleNerd), Floyd Teter and Eddie Awad provide great "how-to" information too.

But what does this paradigm shift mean for existing technical writers as users turn away from the traditional printable PDF manual deliverables? We asked Anne after the conference. The writer role becomes one of conversation initiator or enabler. The role evolves, along with the process, as the users define their concept of user assistance and terms of engagement with the product instead of having it pre-determined. It is largely a case now of "inventing the job while you're doing it, instead of being hired for it" Anne said. There is less emphasis on formal titles. Anne mentions that her own title "Content Stacker" at OpenStack; others use titles such as "Content Curator" or "Community Lead". However, the role remains one essentially about communications, "but of a new type--interacting with users, moderating, curating content, instead of sitting down to write a manual from start to finish."

Clearly then, this role is open to more than professional technical writers. Product managers who write blogs, developers who moderate forums, support professionals who update wikis, rock star programmers with a penchant for YouTube are ideal. Anyone with the product knowledge, empathy for the user, and flair for relationships on the social web can join in. Some even perform these roles already but do not realize it. Anne feels the technical communicator space will move from hiring new community conversation professionals (who are already active in the space through blogging, tweets, wikis, and so on) to retraining some existing writers over time. Our own research reveals that the established proponents of community user assistance even set employee performance objectives for internal content curators about the amount of community content delivered by people outside the organization!

To take advantage of the conversations on the web as user assistance, enterprises must first establish where on the spectrum their community lies. "What is the line between community willingness to contribute and the enterprise objectives?" Anne asked. "The relationship with users must be managed and also measured." Anne believes that the process can start with a "just do it" approach. Begin by reaching out to existing user groups, individual bloggers and tweeters, forum posters, early adopter program participants, conference attendees, customer advisory board members, and so on. Use analytical tools to measure the level of conversation about your products and services to show a return on investment (ROI), winning management support.

Anne emphasized that success with the community model is dependent on lowering the technical and motivational barriers so that users can readily contribute to the conversation. Simple tools must be provided, and guidelines, if any, must be straightforward but not mandatory. The conversational approach is one where traditional style and branding guides do not necessarily apply. Tools and infrastructure help users to create content easily, to search and find the information online, read it, rate it, translate it, and participate further in the content's evolution. Recognizing contributors by using ratings on forums, giving out Twitter kudos, conference invitations, visits to headquarters, free products, preview releases, and so on, also encourages the adoption of the conversation model.

The move to conversation as user assistance is not free, but there is a business ROI. The conversational model means that customer service is enhanced, as user experience moves from a functional to a valued, emotional level. Studies show a positive correlation between loyalty and financial performance (Consortium for Service Innovation, 2010), and as customer experience and loyalty become key differentiators, user experience professionals cannot explore the model's possibilities.

The digital universe (measured at 1.2 million petabytes in 2010) is doubling every 12 to 18 months, and 70 percent of that universe consists of user-generated content (IDC, 2010). Conversation as user assistance cannot be ignored but must be embraced. It is a time to manage for abundance, not scarcity. Besides, the conversation approach certainly sounds more interesting, rewarding, and fun than the traditional model!

I would like to thank Anne for her time and thoughts, and recommend that all user assistance professionals read her book. You can follow Anne on Twitter at: http://www.twitter.com/annegentle.

Wednesday Feb 09, 2011

User Experience Guidance for Developers: Anti-Patterns

Picked this up from a recent Dublin Google Technology User Group meeting: Android App Mistakes: Avoiding the Anti-Patterns by Mark Murphy of CommonsWare. Interesting approach of "anti-patterns" aimed at mobile developers (in this case Android), looking at the best way to use code and what's in the SDK while combining it with UX guidance (the premise being the developer does the lot).

anti-patterns message about forcing wrong UI

Interestingly, the idea came through that developers need to stop trying to make one O/S behave like another--on UX grounds. Also, pretty clear that a web-based paradigm is being promoting for Android (translators tell me that translating an Android app reminded them of translating web pages, too). Haven't see the "anti"-approach before, developer cookbooks, and design patterns, sure. Check out the slideshare presentation.

About

Oracle Apps Cloud UX assistance. UX and development outreach of all sorts to the apps dev community, helping them to design and deliver usable apps using PaaS4SaaS.

Profile

Ultan Ó Broin. Director, Global Applications User Experience, Oracle Corporation. On Twitter: @ultan

See my other Oracle blog about product globalization too: Not Lost in Translation

Interests: User experience (UX), user centered design, design patterns, tailoring, BYOD, dev relations, language quality, mobile apps, Oracle FMW and ADF, and a lot more.

Search

Archives
« July 2015
SunMonTueWedThuFriSat
   
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
       
Today