Wednesday, May 25, 2011

SOA-UX, Services-Oriented User Experience Design Architecture

During a recent solution strategy session for a very large enterprise, a need developed for creating visual prototypes and simulations illustrating the end-state of the enterprise system to be built. The system, or really "solution" (since the ROI would be derived not only from IT, but also from organization change, process re-engineering, physical and digital asset value realization) included many audiences and stakeholder roles plus many distinct (though integrated) business services. "Services" is the key term here, i.e. not "applications" or "websites" – customers would find and use these business services offered by the company, governed with managed agreements and supported by information technology.

The best practice SOA methodologies separate business concerns from underlying fulfillment concerns, in a manner that enables reuse and evolution of each – maximizing ROI (hopefully). Business service architecture strategies begin frequently with the "What" (what is the scope and nature of the business service offered), the "Who" (who are the participants in the service agreement) and operate constrained by the "Why" (i.e., the ROI objectives drive performance measures and limitations, KPIs, etc.). "How", "when", "where", "which" and all other implementation questions follow these first three concerns.

For netcentric services, i.e. those business services intended to be delivered leveraging networked, digital technologies and content (like websites), the User Experience (UX) should be considered both in the strategy and business requirements (i.e. it’s part of the "What", and helps define the "Who" and "Why"), and in the implementation (i.e. UX design tasks, artifacts, deliverables). "Great-UX" is a corporate asset, and a positive, useful "experience" (regardless of the specific tasks or processes executed) is itself a business service. As Navigation Arts puts it, "user experience is the only sustainable competitive advantage a business can employ in the online world today".

Therefore, a successful online capability created with SOA principles requires early UX insight, and a successful UX is best associated with an SOA approach to the business service design. Best practices in SOA and UX are inexorably linked for successful online services. UX is both a governance mechanism (i.e. a set of standards, methods, guidelines) and is itself a business service.

So, in constructing a services architecture to fulfill business objectives, the first step includes Services Identification, usually approached from a "Business Domain" perspective. Let’s say the Domain is "Customer Support", and the business objective is to enable more customers to derive value from ongoing support dialogue. This objective should lower the number of commonly-repeated service requests and decrease the time it takes for the company’s stakeholders to alert the company to "root-cause" information concerning incidents (i.e. customers may find they have similar problems, and offer different, additional information after viewing what others are discussing). The new business service is "online self-service knowledge management", or from the Marketing Team perspective, the "Social Help Desk".

This business service has a few subordinate, composite services (i.e. that themselves are made up of multiple, more granular services), like an automated process for "incident discovery and alerting", a manual "live chat" service, and an application component to "search for issues like yours". Note the developing inventory and relationship of services isn’t constrained by or prescribing specific technology – though the end-state definition of the service will be informed by the technology context (i.e. define something we can actually buy or build, within budget and compliance).

The roles involved at this stage of an SOA project include those like "Solution Architect", "Enterprise Architect", "Business Architect" and "SOA or Functional Architect" – all helping to identify layers (to comparable abstraction) of reusable, independently-governed and measurable service that make sense in the overall Enterprise investment context.

What about the business service "provide a great customer experience" (i.e. provide "Great-UX")? This is certainly a measurable business objective, and should be a service that supports the successful delivery of service like "Live Chat". Unless Great-UX is the actual, independent outcome to be delivered (as in entertainment and advertising), Great-UX is a service component of the broader, composite business services. The "live chat" service may include a tailored "Great-UX" service, for example.

But what is this "Great-UX" service made of? For live chat, it may include reusable items, like common branding, buttons, navigation anchors or feedback signals. It may also include custom UX elements for this specific business service, like a Chat window frame design, a "click-to-share" interactive metaphor, or a "communications status" dashboard interface, not found anywhere else in the overall provision of the Social Help Desk.

The important thing to consider in the definition and initial design approach of UX services, is that UX services are both mapped effectively to the corresponding definitions of the business services, and are themselves defined with reuse in mind (included likely instances of unintended use, for example in third-party applications or syndicated channels).

SOA-UX, delivered.

Thursday, May 19, 2011

Corporate Knowledge Management Applied to Online Customer Engagement

There’s certainly no shortage of stories regarding customer engagement and social media interactivity by many businesses on the Internet, especially when responding to negative feedback and proactively shaping the amplified, echo-chamber public dialogue that follows.

PR and marketing staff may be tuned to trending commentary through "social listening" tools, search engine alerts and direct monitoring of inbound call center or emailed sentiment. However, especially with businesses that sell quite sophisticated or complex goods and services, it can be really difficult to find and assign – quickly - the right SMEs to evaluate and help respond to quickly growing community sentiment or complaints. SMEs who not only explicitly understand the product, but who also may have valuable, tacit understanding of the intersecting contexts – i.e. how the product's being used, the nature of the user community, and perhaps some knowledge of implicit product use guidelines (that don't show up in the instruction manual).

How can this be addressed? On the one hand, the situation calls for some kind of "expertise management" capability, where SMEs around the company are routinely, digitally profiled via categorized knowledge, and this information is available real-time via search or faceted navigation. Or maybe Hal knows, down in the IT Department – so just call him.

On the other hand, it's only a sharp and informed social Tweeter that can separate the bottom-line concerns and issues from the noise and opinion, and classify the conversation for the organization in a way that enables the most effective response and applied corporate intellect. In other words, to engage the public community in the most contextually relevant and accurate way – thereby shortening the "hype cycle", diluting the angst, solving the right problem.

So the customer relationship Tweeter or Blogger needs to quickly package and convey the right query to the most appropriate SME, to help elicit the best response. Implementation of a few knowledge management concepts can help. For example, within your company, perhaps information is being "semantically tagged" - identified with additional contextual value by pre-defined taxonomies of terms associated via file metadata or a content tagging index. As the information gets tagged (not only documents, but expertise profiles, conversations, multimedia), it would probably be very useful to enable tagging not only according to pre-defined corporate taxonomies, but also in free-form (i.e. building an organic folksonomy). As well, tagging should be encouraged for "dialogue instances" – i.e. blog entries and comments, bulletin board entries, intranet or wiki page updates, etc.

For the Tweeter searching for internal SMEs, this may result in a much closer match between the external issue topic and the internal expertise, because the lexicon is more semantically accurate or inclusive. A search within the standard corporate repository for "customer software release X defects" might turn up testing parameters or results from the software development lifecycle (keying off the standard terms "software", "release" and "defects"), but a search for "the stupid XX page loses my address when I hit the recalculate button" (per the complainant) might just turn up some salient internal dialogue and references among developers about this particular "feature" (or similar ones), keying off the user-supplied tags "recalculate", "button", "address" and "XX page". Maybe even "stupid", as a signal emanating from a commonly problematic area.

The unstructured dialogue instances are also bound to be easier to interpret and verify (since real experts are involved), as to whether the issue smells like a widespread problem, or it's a short-lived, one-time issue. As well, additional material may be identified that’s easy to consume and understand by customers, adding up to support for an online customer and community engagement process that's more helpful and credible.