Category Archives: Misc Technobabble

Is speed becoming a commodity? UX is dead. Long Live UX!

#include <std_disclaimer.h>

The other day I tweeted how I love as I learn more my definition of User Experience (UX) continues to expand. For many years, as a part of end-user monitoring businesses, I spoke about UX as if it completely depended on what I have come to call Feelsfast.

Feelsfast is the mythical metric that measures how long it takes for a user to feel like your page has loaded. This is a basic requirement, a basic need that’s lower on the hierarchy of needs. Without Feelsfast the rest of UX doesn’t matter because no one will use your website or mobile application.

UX = Feelsfast is dead. Long live UX!

My newer, more cultivated view of user experience goes something like…

UX = Feelsfast + Usability + MarketingPs

What do I mean when I say Usability?
It’s the ease of use, learnability and enjoyment that can come from a digital interaction. This is the stuff of the Carnegie Mellon, Human Computer Interface model that Forrester frequently discusses and Aberdeen presents a refined interpretation below:

Aberdeen Research interpretation of Andrew's CX hierarchy

Aberdeen Research interpretation of Andrew’s CX hierarchy

BUT…désign, style and grace is akin to store design, layout and optimization in the retail world, although it is part of the Product in the SaaS and application world as the user interface IS the product.

Usability still leaves something, something more essential, the substance.
The MarketingPs are the substance. This is the traditional Price, Promotion, Product, Placement stuff that we all learned in our Principles of Marketing class back in college. This is the what people are buying.

The amazing opportunity for businesses moving forward is to leverage the latter two in my UX equation to reimagine the customer journey and more effectively engage users at every touchpoint of the customer experience.

Digital, as a virtual experience, supports endless experimentation promoting a culture of innovation that allows businesses to create real competitive advantages. Combine experimentation with big data powered multi-variate analytics and our systems can create a safety net allowing our employees to take risk without risk!

So where does that leave Feelfast?
Yes, we can’t deliver the rest of UX without it! And yet it is really the stuff of infrastructure. It’s the rails our train of digital experience ride on.

For modern, well-designed software applications adding performance is getting to the point where you should just be able to add more coins to the computing machine to get more performance.

Is SPEED becoming a commodity?
We are not quite there yet, but that’s where we are going :)

5 things your business needs to do now to win the game of CX

#include <std_disclaimer.h>

I love the now and the place we are going. It’s so exciting for businesses and customers!

Trying to understand how business is changing technology and technology is changing business is so much fun. One of the themes I’ve been thinking a lot about lately is that IT and business have changed each other so much they are now one.

Call it the digital transformation that’s the driving force, ok, but that transformation is at least in part driven by our own over-indulged interactions with our digital devices and need for the constant pulse of engagement. I think everyone in my household could use a little 12-step digital addiction counseling including me :)

What a wonderful opportunity for brands to take advantage of human nature and pervasive connectedness!

Capitalizing on this opportunity for customer engagement will rely, at least in part, on how well your organization understands your conceptual value chain and can generate the three fuels that feed success.

The conceptual value chain looks something like this:

Business outcomes from
User behaviors because of
UX = Available + Feelsfast + Usable + Enjoyable (delivered by)
Applications depending on
Services running on
Servers residing in
Datacenters

That value chain runs on these fuels:

Customer experience planning and design is customer experience management largely as defined by Forrester. And they do a very good job of publishing guidance on the processes and roles required to do this well. The concept of the truly empowered “product owner” from Agile model is a much leaner interpretation for small teams. It really comes down to who owns the customer experience and the business outcomes generated.

Customer acquisition is primarily a sales and marketing function, and frankly there should be very little light shining between the cracks. Today, marketing is sales at scale. Brand message and core value proposition should be consistent in an omni-channel world. And it is the larger customer experience design – the what we have and why people care about it – that defines the product and experience. Sales and marketing almost becomes the way we project the emotional and business impact of the planned customer experience with it’s delightful fulfillment.

Fulfillment of the user experience has a hard and soft component. The hard component is the service delivery of the application. Is it available and does it feel fast? It’s the applications running on services that use servers in different data centers hierarchy. The soft component is the result of customer experience design and driven by usability factors like utility, ease and enjoyment.

Here are 5 things your organization can do right now to create the fuel you need to win big:

1 Tie the value chain together so everyone can understand and own business outcomes.
This means the what and the why needs to be very clearly stated. What is the desired business result? What user behaviors will get us to that business result? What user experience must be delivered to drive that user behavior? and so on. This means monitoring and metrics, metrics, metrics.

2 Get serious about UX
User experience is contact patch with the customer. It’s the blender that mixes the “just right experience” by carefully combining innovative CX planning and operational service delivery. The importance of UX needs executive voice as well as support at every level of the organization. Saying get serious about UX is almost like saying get serious about winning.

3 Be a team!
Stop having the business make requirements and IT produce deliverables. We – the business and IT people – need to use information and technology to collaborate and break through traditional business perimeters. To win big you have to win as a team!

4 Go faster.
Run projects with an Agile format and adopt a DevOps approach to your test and deploy methodology. Use the cloud to dev, build, test and deploy. It takes a lot less time that ordering, racking, and configuring hardware. These are big cultural changes so pick a project to start with and show the rest of your teams how successful and fun for the team the new ways can be.

5 Leverage analytics and big data.
We all talk about data-driven decisions, but a team of analysts spending a week gathering data in Excel from systems spread all over the company for last weeks data doesn’t cut it anymore. Monitoring both the service delivery systems and customer acquisition systems at every step of the value chain with real-time granular data is needed. There are so many areas where this can impact success. Analytics are the thread of data that ties the value chain together and shows you the business the moving parts as well as the whole. Analytics and anomaly detection are an important power tool so mere humans can get help knowing what might be changing and important to pay attention to in the sea of big data. Software analytics are the silent voice of the customer pointing to product usage and frustration.

Let’s stop building software and start building amazing user experiences that people can’t wait to share!

Exploring the methods of end-user experience monitoring for APM

#include <std_disclaimer.h>

Today’s application performance management (APM) marketplace is maturing and the best solutions bring a wide-ranging set of capabilities for measuring performance and understanding behavior for many aspects of the application delivery stack. One of the cornerstone’s of APM is end-user experience monitoring (EUM).

As defined by Gartner for the APM Magic Quadrant, EUM is:
“The capture of data about how end-to-end latency, execution correctness and quality appear to the real user of the application. Secondary focus on application availability may be accomplished by synthetic transactions simulating the end user.”

But what does that mean? What are those capabilities?

There are a number of methods to do end-user monitoring. Each has advantages, and one is not enough. It is important to look at end-user experience through a number of different sides of the prism to really try and understand how the metrics match up against user experience. As I was cataloging them for myself I thought it would be good food for thought to share my definitions.

Synthetic monitoring
Web performance monitoring started with synthetic monitoring in the 1990s. A synthetic monitor is not a real user of your application but an artificial robot user, thus synthetic. The robot periodically executes an interaction with your website, API or web application to verify availability and measure performance. It is one of the easiest monitoring to setup and provides almost immediate value by delivering visibility and hard data without having to install or configure anything within the application. An example of a synthetic monitor would be a web transaction monitor that ensures a online store is working by visiting the home page, searching for a product, viewing the product detail, adding it to the cart, and checking out. This is very similar to the pile of functional tests that should run every time

Although Gartner has relegated synthetic monitoring to an availability role, it still has a lot of value for performance monitoring that passive methods do not address. No other method can help you measure service delivery when real users are not on the system. Thus it is ideal for measuring SLAs. And it is the only way to see individual page resources (a la the waterfall report) as this is still not quite yet a real user monitoring (RUM) capability. Synthetics eliminate a lot of the independent variables that can make it difficult to compare real user monitoring data. Finally, the synthetic connection to the DevOps tool chain of tests run at build or in QA provides a continuous reference point from development environments, through test and production.

Web real-user monitoring (RUM)
When I first saw real-user monitoring back in 2008, I knew it was going to change the way we measure web performance. RUM works by extracting performance values using javascript. As actual users visit web pages performance metrics are beaconed back to the great reporting mothership. Originally, the only metric that could be captured by RUM was a basic page load number, but modern browsers now collect a slew of detailed performance metrics thanks to the w3c timings standards and soon will even provide access to page resource level detail.

RUMs great advantage vs. synthetic is that is can see what’s happening for all of your actual users on all of the web pages they visit. This means you can understand web performance metrics by page, geography, browser or mobile device type. While this provides a broader understanding of general performance, it also has many, many more independent variables making specific trending and comparison more challenging. RUM is also the front-end method by which transactions are “tagged” so they can be traced and correlated through the back-end for greater understanding of how software and infrastructure work together to deliver end-user experience and root-cause analysis.

RUMs greatest and perhaps least exploited value to business today is that it captures business activity information that represents the WHY we have a website to begin with. It is this business outcome data that should be our first canary in the coal mine for determining if something needs attention.

Mobile real-user monitoring
Mobile web applications can be monitored with traditional RUM; however, today’s native mobile apps require a different mechanism to measure the application experience. That is typically accomplished by adding an extra library into your mobile application that beacons mobile application performance data back for reporting. Like traditional RUM, this is also how transactions are “tagged” for mapping through delivery software and infrastructure.

With mobile web traffic now reaching 25% or total traffic and mobile being the #1 method for brands to engage consumers, mobile RUM will be of increasing importance to most organizations.

Network real-user monitoring
Hardware appliances that plug into a network switch’s span port to passively listen to network traffic provides network based RUM that very accurately represents end-to-end network performance of the application. This type of packet smashing leverages timestamps in the network packet headers to break performance down into client, server, and network components.

My own assessment is that network RUM is particularly good at monitoring HTTP API performance for services rather than the higher level end user experience of an application consumer.

Desktop agent based monitoring
A few tools focussed on the enterprise measure end-user performance and usage by installing an agent on the Windows desktop. These agents often use similar technology as network RUM to inspect client network traffic by IP address and Port. This method also provides visibility into usage of enterprise applications as well as general performance and availability.

How many sides of the prism is your organization looking at user experience through?

Hopefully, unless you are already a monitoring guru, you learned a little about the monitoring methods being offered by today’s crop of APM tools for understanding end-user experience. What is also interesting to explore is what capabilities do users get from the different tools leveraging these methods.

Perhaps good subject for a future post :)

Unified Monitoring – the new monitoring renaissance has a moniker

#include <std_disclaimer.h>

I’ve been seeing a lot of marketing leveraging the term Unified Monitoring lately. At times it’s made me smirk but mostly smile. Let me explain.

It’s made me smirk because once again what’s old is new.

Many of the infrastructure components of Unified Monitoring have been a part of Enterprise Systems Management tools for more than 20 years. IBM, BMC, and CA products have offered dashboards, event management, correlation, reporting and service level management for as long as I can remember and I have a fair amount of gray hair :)

What’s so compelling is to maximize customer experience in the real-time digital enterprise we are re-imagining traditional management systems. Existing network and systems management capabilities are being enhanced with easy-to-use web based access, big data powered analytics, and more focused APM capabilities including visitor behavioral data. Put all of that capability in a well-defined, self-service pricing model bringing it to hundreds of thousands of companies and not just blue chip enterprises and you can start to see the potential.

This is making me smile a big toothy grin!

I’ve suggested before that we are in the great monitoring renaissance and I think that the term Unified Monitoring is probably the arrowhead that all this is lining up behind.

For years we have heard the term business alignment to help IT do the right thing. In tomorrow’s successful digital enterprise there will be no clear lines between business and IT. There will just be teams of specialists all working on part of the customer experience, the business. And, those teams will include IT people and UX people and marketing people and customer support people.

Do you remember, back in middle-school, the way the science book used to have those cellophanes of the human body systems? The skeleton, muscular, circulatory, organs layers. I’ve always had this vision that we could do the same for our customer experience delivery stack. Business results come from user behaviors that are the result of user experience delivered by application performance supported by the technology delivery stack.

Layering the business like this allows the team to focus on business results. And it let’s the teams focus on building a user experience first and then the technology required to support that. Combine the above visualization of the layers with powerful anomaly detection and statistical algorithms and you now have a competent and logical artificial intellect helping you deliver, manage and optimize the customer experience. Add marketing analytics, financial and supply chain data and we might be able to imagine closed-loop, machine learning powered Business Resource Planning.

I’m excited about the future of Unified Monitoring and you should be too!

Am I being too utopian?

How to select the most important web performance metric as a KPI – #feelsfast

We all know intrinsically that website performance is important. It has a tremendous impact on all of the business KPIs that measure the success of our online endeavor. I think website performance gets so much attention for two reasons: (1) it’s the most obvious symptom for bad results and (2) and it is easy to measure.

In my larger philosophical views on Customer Experience (CX) I’ve suggested…

PX > CX > UX = #usable + #feelsfast + #emotive

Feelsfast here represents “a lack of perceived latency.”

15 years ago, when I first started thinking about web performance, we only had network oriented metrics to understand web page performance. Today, there are a larger set of collectible metrics to measure many aspects of the spectrum on User Experience (UX). And today’s web applications, because they are pretty fat clients, must take client-side performance into account as well.

We are constantly reminded of the importance of performance by vendors, the media and customers through their actions.

What is the most important metric to measure web performance as a KPI? It’s the one that best represents User Experience or a lack of perceived latency.

We have network metrics. These are old school metrics that focus on how long it takes your server and the network to delver web page resources to the browser’s network layer.

  • DNS lookup time – time to resolve DNS name
  • TCP connect time – time to TCP connect
  • SSL handshake time – time to perform SSL handshake
  • Time to first byte – time to receive the first packet of data
  • Time to receive the data – time to receive the data
  • Fullpage time – time to load the web page and all it’s resources

Most of today’s modern network browsers supplement this with a richer set of data based on the W3C standards for navigation timings:

  • navigationStart – time that the action was triggered
  • unloadEventStart – time of start of unload event
  • unloadEventEnd – time of completion of unload event
  • redirectStart – time http redirection begins
  • redirectEnd – time http redirection completes
  • fetchStart – time that request begins
  • domainLookupStart – time of start of DNS resolution
  • domainLookupEnd – time DNS resolution completes
  • connectStart – time when tcp connect request begins
  • connectEnd – time when tcp connect completes
  • secureConnectionStart – time just before secure handshake
  • requestStart – time that the browser requests the resource
  • responseStart – time that the browser receives first packet of data
  • responseEnd – time the browser receives the last byte of data
  • domLoading – time that the document object is created
  • domInteractive – time when the browser finishes parsing the document
  • domContentLoadedEventStart – time just before DomContentLoaded event
  • domContentLoadedEventEnd – time just after DOMContentLoaded event
  • domComplete – time when the load event of the document is completed
  • loadEventStart – time when the page load event is fired
  • loadEventEnd – time when the page load event completes

This is a nice visual of the W3C timings.

timing-overview

And we have visual timing metrics available from various tools:

  • IE11 brings us msFirstPaint as part of the browser timings
  • webpagetest.org gives us start render, filmstrip view, and the innovative speed index
  • AlertSite.com can provide visual capture and metrics for FirstPaint and Above the Fold using Firefox

How do you choose which web performance metric has the most value as a KPI when all of these have some value? The key is to identify, for any particular monitored application or web page, which metric best represents a users perception of latency, in other words, if it feels fast. This is likely one of the more modern metrics – loadEventEnd, FirstPaint, Speedindex, Above the fold.

Once selected, this #feelsfast metric should become a critical business KPI and tracked and managed as such.

Are you giving the web performance component of UX enough attention?

Ken