Designing with data and incremental development

Paul Boag

Designing with data and incremental development are great in principle. But practically they face problems. Problems a new generation of tool help us overcome.

This post is sponsored by FullStory.

Modern web design has come a long way from its early days. For years I would take a brief from a client, go away and produce a design, iterate the design until they were happy, then build the final site.

The entire process was flawed to say the least. For a start the client had to guess about what they needed built. Then there were the endless debates over design. Finally, once I had built the site, it was often abandoned. This is particularly ironic as that was the moment we first began to discover what users wanted.

Modern best practice in design and development

Of course today things are different. Today we talk about designing with data and incremental development. Instead of guessing what users want we build prototypes and gather data. Instead of launching a final site and walking away, we launch a minimum viable product. We iterate over time based on how we observe users interacting with it.

At least that’s the idea.

The challenge of modern web design

In reality it doesn’t always quite work like that. Designing with data and incremental development are great in theory. But they rely on monitoring user interaction with your product or service on an ongoing basis. Unfortunately this doesn’t always happen.

The problem comes down to time, budget and energy. Usability testing is a bit like healthy living. We all know it is important, but many of us never get around to doing it. Recruiting users, finding an appropriate space to test and running the sessions, all takes time.

As a result we do not test as much as we should. Even when we do stakeholders question its validity. They argue we are not using the right audience or the results are not statistically significant.

Of course the alternative is to make use of site analytics. After all these are real users interacting with your website or prototype as part of their natural behaviour. Nobody can argue that is not accurate information.

What is more, analytics are easy to gather. Updated on a continue basis you can glance at them to find out what is going on and inform your designs. Or can you?

Analytics aren’t always that helpful

Analytics can be hard to interpret. The default metrics that they provide are less than helpful. Statistics like page views tell you little about user behaviour or whether your design is performing well. To discover anything of value it is necessary to set up funnels and events to track specific activities. This takes time and does not provide historical data from before these things were set up.

The default Google Analytics Dashboard tell you nothing of real value in judging the effectiveness of your website.
The default Google Analytics Dashboard tell you nothing of real value in judging the effectiveness of your website.

But the biggest problem with analytics is that it tends to raise more questions than it answers. For example, analytics will tell you if users are dropping out after encountering a specific page. But they provide little insight into why that is happening.

The next generation of analytics tools

That is why I’m excited by a new generation of tool that is easier to set up as analytics, yet almost as insightful as usability testing. Tools such as FullStory.

FullStory records every user session on your website. Think about that for a moment. You can watch any interaction any user has with your website. That in itself is incredibly useful. But of course, that amount of information would become overwhelming. That is why FullStory also provides powerful search tools to find just the user sessions you need.

For example, lets say your boss or client has a problem with the new signup button. He thinks nobody will notice it on mobile devices because it is ‘below the fold’. You could setup a search that returns sessions that meet those criteria. You can now assemble a nice show reel demonstrating that users are finding the button just fine. You could even throw in some graphs and charts for good measure just to prove you haven’t hand picked the videos.

FullStory records every user sessions to your website. That allows you to prove to clients or bosses that the site is performing.
FullStory records every user sessions to your website. That allows you to prove to clients or bosses that the site is performing.

Can you see the power of this? It is not just informing and improving your design. It is also saving hours in endless debates about who is right. It is defusing arguments and keeping your projects moving forward.

But it gets better. Because FullStory records the DOM, you don’t have to setup specific event handlers. This is far easier than Google Analytics. Instead, all you need to do is specify the CSS selector of the item that you wish to track. For example if you want to track users who have completed a particular form field all you need is the ID of that form field.

You can search for user sessions based on what DOM elements they interact with.
You can search for user sessions based on what DOM elements they interact with.

Not only does this allow you to track pretty much any interaction the user has on your website, it also allows you to do so historically. With Google analytics you can only track an event once you have added the event handler. But with FullStory you can go back as far as you want as long as your specified CSS selector exists. This makes it ideal for monitoring before and after scenarios. But most of all it means you don’t have to plan ahead, predicting what information you might want to track in the future.

For me a tool such as FullStory makes designing with data much easier. It brings together the overview of Google analytics with the individual perspective of usability testing. All with a couple of lines of Javascript. Javascript optimised to not impact performance.

A tool for bug fixing too

But there is one more opportunity that this opens up as we develop our products and services incrementally. It is a powerful way of resolving bugs. Because FullStory is capturing the DOM you can see exactly where bugs are and even inspect the code. Even better it integrates with customer support tools like Zendesk.

Imagine getting a bug report from a customer, but with an attached session video. A session that you can playback and see the bug yourself. A session that even lets you look under the hood and see what the problem is.

Let me be clear. Tools like FullStory will never replace usability testing. But it does make designing with data and incremental development easier. That has to be good for the quality of the products and services we are building.

Boagworks

Boagworld