Chapter 4. - Debugging The User

Chapter 4. - Debugging The User

Defining User Value —

You will learn the answer to these questions here:

  • What makes a user like a product?
  • What we developers have to do with that? (that UX designers can't do)
  • What's the road from stranger to customer?
  • And where do we come in to the picture of that process?
In this chapter/lesson the goal is to better understand the perspective of the user and how our work affects their relationship with the products and services we provide. We will explore the ways how developers have a unique role in creating a quality experience, beyond the obvious things like delivering as few bugs as possible and fixing them as soon as possible. This is a domain that is detached from our work in the mind of many software engineers. Let the designers do what they do, just give me the requirements - goes the attitude. Don't worry, I have no intention of converting any developer to a different profession, on the contrary. I want to show you, how our work and knowledge is complementary in creating and delivering the best user and customer experiences. However to get there we need to understand a little bit about the basics of CX, to have the vocabulary necessary to address the topic in our day-to-day work and in this material. At the end we will formulate a high-level definition of user value that can guide our technical decision making and show the way forward.
We will stand on the shoulders of giants here. First by defining properly what CX is, with the ideas of Harley Manning, VP, Research Director at Forrester.

What is CX?

He and his CX team identified the foundation of customer experience as the customers' perception of their interactions with the business. Very similar to how it was put in the previous chapter. Let's see where does it lead. Two questions are quite obvious to ask. What are the possible interactions with a business, and how to create a positive perception. If we analyze these, the whole landscape of CX will unfold in front of us. To answer the first one, I have to introduce a process that's quite unknown to the developers.

The customer lifecycle

This, in essence, describes the process of how a random person turns into a loyal customer from start to finish. However it gets even more significant, because - as I realized - this process is not unique to selling products, it's true for selling ideas too! That makes it very beneficial to know about, as we are up to convincing our clients, colleagues and leaders all the time. Understanding the steps will give you tremendous help in doing that more effectively. In terms of software, CL is about the customers' interactions with both the service and the product.
There are a lot of different takes on CL if you look it up. Here's the version I found the most applicable. It uses 6 stages that lead from "Oh, I never heard of it" to "I absolutely recommend this". Every single customer of the product you develop has went through these steps or is currently in the process. Our work can affect many of these stages so we can't afford to just turn a blind eye and let them be. Let's examine each of them.
  1. Awareness
    1. This is the place where our relationship starts with the customer, at the time they first become aware of the offering. This is mostly the domain of marketing, getting the product in front of the right audience, but word-of-mouth recommendations are also a crucial factor both in offline and online platforms.
  1. Engagement
    1. It covers all pre-purchase interactions with the company. The potential customers usually do this step when they want to learn more about the business, the values they stand for, their reliability or more details about the products/services they provide. The way it can happen spans many mediums ranging from directly contacting the company, through word-of-mouth reputation to researching the publications of the company. It's an optional step, not every costumer spends time and effort with this when there are readily available resources to do the next step.
  1. Evaluation
    1. This phase happens before every purchase. The costumers consider their options in order to make a decision they will be happy about. It can mean an extensive research or just a few thoughts before committing. At this point the most a company can do to convince their prospects is providing ample information about their offerings online and consistently across physical channels while ensuring it's relevant and easily findable.
  1. Purchase
    1. No explanations here, however it's important to know that a major factor in digital sales is offering support for the users while they are making the online purchase. It seems quite surprising to me but most sources state that a lot of customers need some kind of help during the purchase process. In 2021, live chat is the go to solution for this problem. The support usually means simply answering some final questions.
  1. Experience
    1. This is the real start of the life cycle in a sense, as the previous prospects are now customers. The final goal of a business is to reach the 6th stage, for that all previous steps, including this one, should be successfully passed. The keys to succeed at this phase are to provide a product that really satisfies its owners, but that is just the baseline. The real differentiator for many businesses is to offer stellar customer support and customer service. Researchers found that it has a major part in achieving brand loyalty. One study named 76% of the examined persons think the customer support is the true sign of how much a company values its clients. Shipping, handling of returns and refunds are just as much part of this as direct communication with the company representatives.
  1. Bonding
    1. This is the culmination and continuation of all the previous stages, if the customers are satisfied with their experience they are already likely to recommend the product and company to others. However a firm can further engage with their customers proactively and if done well that leads to a lasting relationship with them. The results are returning buyers who are much more likely to purchase other products and services from the company besides spreading the word about their good experiences. This is a perpetual process from this point on that tries to protect and increase customer commitment, and with valid reason. It's estimated to cost 6 to 7 times more to acquire a new customer than to keep and existing one. A very important realization companies made about this phase is the fact that not all customers' bonding hold the same value for them. Identifying and building a good relationship with the most influential customers will pay lots of dividends. On the other hand cutting ties with bonded but troublesome customers might be just as important.
I think most of you weren't surprised by any of these points. The steps are quite evident but seeing the whole process laid out in simple terms helps to examine the exact parts where we have some influence. I will be honest, even though it seems like common sense, if anyone would have asked me earlier than writing this book, I would have struggled to describe this process on my own. I believe most of us simply never cared to think about it. However this is part of the whole context of software development. That answers the first question about CX, let's move on to the second. What makes a good perception? All stages of the CL are a dimension of it's own with a distinct set of rules that determines the quality of the customer perception there. Our focus will be on stage 5 as that is where we can directly make a difference. The science of perception at that phase is called user experience.

What is UX?

I would like to discuss the main ideas of Peter Morville from his foundational work about the elements of user experience.
UX as a profession, focuses on understanding what makes people want to and enjoy using a product and designing them to be like that. The elements of UX are universal and timeless. The reason for that is, they are concerned with the experience of humans and the human nature is mostly immutable. The principles are rooted in the properties of our perception and psychology. This makes for a good foundation to base some parts of our evaluation system on. Morville identified 7 main areas, he calls them the "Facets of the User Experience". They are the high level categories that cover the whole field of UX for software products. Understanding them will give us a framework to analyze the impact of changes on people's experience. This way they also offer guidance in identifying what constitutes user value. Let's start.
Usefulness resonates well with some of the ideas we already discussed. This notion refers to the value a product brings to it's users by providing a solution to their problem. It's more about providing the right functionality than how the functionalities are implemented. The problem I mentioned has a broad meaning. The first things that come to my mind were all business and productivity related. For example, whether a workflow in the software really speeds up the business process it meant to make more efficient or it just complicates the life of the users. However a problem can be as simple as "I'm bored". A game, a streaming platform, a tutorial or many other products can help to solve that. So in general the software has to be deemed useful by an audience to fulfill this criterion of good UX. Improvements in this area can attract a huge number of new customers, so lots of thought goes into this from the business side. Our unique insight can come in handy to improve this, so as Morville encourages his readers we should step up as well and contribute in capturing value.
Usability is all about efficiency. The goal is to make it as seamless as possible for the users to achieve their goals. This is a broad topic, for now just think of ease of use and you got the main theme. There's usually specific focus on the first time usage because that includes a learning curve and can easily become offsetting. It's not hard to see why usability is an important factor. Whenever there are two products with the same functionality, the one which is more convenient to use will be the more attractive to potential customers.
Desirable doesn't need much explanation. It means the application is attractive and pleasing to interact with. For an example of the benefits this provides, just think of a poor vs luxury apartment with the same kind of appliances and functionalities. You can have your basic needs met in each but given the option to get one for free, few people would give up on the luxurious home. Going further, the more desirable option also provides the social benefits of popularity. This is really the area of designers, our work is not related to optimizing this aspect. An interesting side-note, as Morville says sometimes there is a trade-off between this property and usability that has to be balanced.
This is a property that applies both internally and externally to a product. The individual functionalities and the specific contents should be easily identifiable and reachable and the product itself should be easily findable by it's users and potential users. This includes aspects such as categorizing content, creating a hierarchy of visibility in order of importance, SEO, marketing and more.
I'm sure most of use have a decent general understanding what does accessibility means. It's all about widening the audience of the products we create, or from an ethical point of view being empathetic towards all of our users so people with disabilities can also use our software without problems. There are already laws and regulation in place in many countries that require a certain level of accessibility from many IT solutions so considering this matter seems to be inevitable. In more generic sense it can also mean destroying the barriers of usage like language differences or high costs.
The software we deliver should look legitimate. There are certain characteristics of counterfeit and malicious products that became commonly recognized by the people. So we should make sure to deliver a user experience that avoids replicating those. Adhering to visual brand identity is also an important part of credibility. Anybody would think twice before buying a can of soda with the Coca Cola name over the Pepsi logo on it, right?
It means somebody is willing to pay for it. Morville's thoughts about this point were simple descriptions of business value for non-profit and for-profit companies. We already explored this topic in Chapter 2, so go back to it if you need a reminder. The difference between useful and valuable is in whom it concerns. Usefulness is about the users, value is the concern of the stakeholders of the product. It has to be valuable for them to make creating it a worthy endeavor. All the previous properties can help in raising this. In a sense that's their goal. When a project is really valuable that will help a lot with the motivation to make it as good as possible for the users.
You might have noticed a few similarities with the ideas we discussed in earlier chapters. This was an interesting realization as I was doing my research. I also found it quite reassuring, as one of the main goals is to see the effects of our decisions in the whole context of software development. UX is also concerned with the holistic view of product delivery so it's logical to expect an overlap between the two approaches. Now with the 7 facets explained you can already have some intuitive notion of how to improve each of them. In the next chapter/lesson we will explore the concrete things only developers can do to boost the user experience.


Now you saw the elements of the customer's experience with a product in it's entirety. So taking a look on the definition of customer engagement again, I hope you will have a much better understanding of what does it mean by:
"Creating deep connections with customers that drive purchase decisions, interaction, and participation, over time" - from Forbes
Starting with the customer lifecycle we saw the whole picture. The 6 stages cover every area of our relationship with the clients. They showed how to build up these deep connections as a business. By analyzing user experience we zoomed in on the 5th phase. That gave us insight into how software affects these goals, but we still lack understanding of one thing. We don't know the exact details from a technical perspective. What should we do with our code to make the software more appealing? The answer lies ahead in the book. There are closely related topics we could expand upon. Like what makes CX great in a business-to-business (B2B) setting. We can have an influential part in that once we get included in pre-sales. Or talk more about how to offer customer support that makes the users go "wow", because sometimes developers have to do that too, but we will skip these. The reason is that the specific technologies used in the product doesn't really affect the value sales and support deliver.
So now we are well equipped to define what constitutes user value.

What is user value?

Our users have a problem. That's the reason why we are making software. Whatever solves it is valuable to the user. The better job it can do the more valuable it will be. What better means here is covered by the the relevant parts of UX. So we can answer this question similarly to how we did with business value. Whatever that helps the users to reach their goal is user value.
User value is anything that helps the users to reach their goals.
We have to put this front and center when thinking about tech decisions. However unlike in the business case, we can further break it down to actionable insights because even though analyzing the problem is mostly not our responsibility, working on the part of solving it better is.
Let's start with the most basic factor we could see from this chapter. The users like to feel valued. This means they are:
  • getting what they want, or
  • getting better than they knew they wanted
And that the business shows they really:
  • prioritize fulfilling their needs
  • care about them
  • want to go above and beyond


To understand the perspective of our users we need to know about the whole process of going from stranger to customer. CX incorporates all aspects of this journey. There are two main parts. The stages of the process, and the factors that determine how much the customers like what they get. The customer lifecycle describes the 6 different steps that are on this road and the 7 facets of UX shows how to provide a pleasant experience with software. Finally we define user value similarly to business value. It's anything that helps the users to achieve their goals.