Skip to main content

Measuring Up: How to Preview User Satisfaction before Your Release

Article

Measuring Up: How to Preview User Satisfaction before Your Release

Article by Esther Derby | Comments: (8) | Thu, 02/07/2002 - 1:13pm
Summary:

Why wait to discover how your users will react to your system when there are ways to measure such things during development? This week's column describes a simple tool to develop visibility into customer satisfaction. Learn how you can begin to manage expectations so that neither you nor the customer has an unpleasant surprise on release day.

It's 10 a.m. You're about to ship to five beta sites. You've met the date, you're within budget, and the defect counts have been steadily declining for the last four weeks. Still, you're a little nervous. How will the customers react to this new release? 

Carrie was unhappy to learn during beta testing that the product her team had been building for insurance underwriting reps had drifted from what the users had wanted.

"It's too slow," the beta test group said. "It takes forever to pull up the records when I have a customer on the phone!"

"But in test it performed within the parameters in the requirements," Carrie protested. "What changed?"

Just a small design tradeoff that affected the default display order of the records. It had seemed like a reasonable decision at the time.

If you're a project manager, you know how important it is to have visibility into the product and the project. It's bad news to find out in a beta test that you have built a product that doesn't meet your customer's expectations. How can you tell if you're still on track to meet customer expectations?

Agile methods are one option. The agile school advocates close customer contact and frequent deliverables that are directly tied to business value. Still, many projects follow more traditional models: the customers (or their surrogates) are involved up front in defining features and then come back in during testing. A lot can happen during the time in between. If you're not using an agile method and don't have the luxury of having a customer assigned full-time to your team, how can you stay in touch with what the customer expects? One option is to measure customer satisfaction as you design and build the product.

Take a page from marketing and use a survey to catch a glimpse of customer reactions before the product ships. During development, ask the people who are closest to the product-sponsors, designers, and customers (or surrogates)-how they feel about the project.

You probably identified a set of system attributes during initial project definition. Suppose your customers identified these four qualities that were most important to them: easy to use, fast, always available, and secure. Of course, these descriptions are too vague to be helpful in actually building a system. You probably negotiated more specific targets for the product as a whole and for specific functions within the product. But for the purpose of a satisfaction survey, these more general attributes are about the right level.

For each attribute, create a bipolar scale, with the desired attribute on one end of the scale and its opposite at the other. For example: the opposite of "fast" is "slow"; the opposite of "easy to use" is "difficult to use."

Here's what a simple survey might look like:

____________________________________________

How do you rate the WidgetMaster system at this time?


 

1

2

3

4

5

6

7

 

Difficult to Use

             

Easy to Use

Slow


 

 

 

 

 

 

 

Fast

Low Availability


 

 

 

 

 

 

 

High Availability

Unsecured


 

 

 

 

 

 

 

Secure

What pleases you about the system at this time?

What displeases you about the system?

Comments:

Then approach the cross-section of people you've chosen to fill in the survey with their opinions, and ask them about the version of the system under development. Be sure to leave plenty of room for comments at the bottom of the survey.

You won't obtain scientifically precise data from your survey. However, you can find out how people feel about the project, and that ties directly to their expectations for the system.

When you first start using a survey, the comments section will provide the best clues. You may also want to investigate if the ratings vary widely. Big variations may be a sign that one stakeholder or group is unhappy with the direction the system is going. Follow up. You may learn something valuable.

Jodi used a survey as a window on satisfaction for an application she was building for customer service reps. Jodi was surprised when the average ratings on "ease of use" took a dive, and she decided to investigate. It turned out that the customers had recently reviewed the screen and dialogue designs for the customer record retrieval function.

Supervisors were happy with the screen navigation because it was directive-helpful for new employees who weren't familiar with the system. For them, it meant fewer questions and fewer errors from new customer service reps.

Experienced customer service reps weren't as happy. They were forced to respond to prompts that they no longer needed. For them the detailed navigation was a burden. They wanted to be able to take shortcuts and skip through prompts for functions that were second nature to them.

Armed with this information, Jodi was able to implement an alternate navigation scheme that better met the needs of experienced customer service agents. On the next survey, satisfaction was back up.

Best of all, Jodi was able to discover the dissatisfaction long before the system went into beta testing, when it would have been difficult to make the changes the agents wanted.

You can't always "fix" the cause of dissatisfaction…but you can begin to manage expectations so that neither you nor the customer has an unpleasant surprise on release day.

Why wait to discover how your customers will react to the system? Finding out how they are reacting to the work of building the system can give you valuable clues to help steer your project toward meeting expectations. This simple tool can help develop visibility into customer satisfaction.

To learn more about uncovering customer expectations, check out the book Exploring Requirements: Quality Before Design by Donald Gause and Gerald M. Weinberg.

About The Author: Esther Derby

A regular StickyMinds.com and Better Software magazine contributor, Esther Derby is one of the rare breed of consultants who blends the technical issues and managerial issues with the people-side issues. She is well known for helping teams grow to new levels of productivity. Project retrospectives and project assessments are two of Esther's key practices that serve as effective tools to start a team's transformation. Recognized as one of the world's leaders in retrospective facilitation, she often receives requests asking her to work with struggling teams. Esther is one of the founders of the AYE Conference. She co-author of Agile Retrospectives: Making Good Teams Great. She has presented at STAREAST, STARWEST and the Better Software Conference & EXPO. You can read more of Esther's musings on the wonderful world of software at www.estherderby.com and on her weblog at www.estherderby.com/weblog/blogger.html. Her email is derby@estherderby.com.

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

#1

A really good article. I never thought that it could be done this way. I am looking forward for this type of stuff.

#2

I agree completely with your comments but would like to add one point about this type of survey. Be prepared to fix everything reported. Each individual's feedback is as important as the next. This is how THEY see it. I find it better to conduct one on one or small group sessions with predefined questions. A survey will often supply comments that are as obscure as the original requirements. A small group can often feed off each other's ideas until a compromise is reached.Take them by the hand - show that you are empathetic to their "additional/altered/reprioritised" requirements.Seek clarity - whiteboard the screens. Use as prototype (time permitting)Walk through the entire business process - end to endIn this way you will not only find out what they want but how badly they want it. Just remember that the earlier you can identify these issues, the quicker, cheaper and easier they are to resolve.

#3

A very good article to meet customer satisfaction. In addition to the requirement specs, I would recommend adding a bit of 'common sense' while testing. When you think you are done with developing/testing, you assume the role of the User ...then go through the application again carefully from screen 1. Assume what might be required in addition to what is already there and observe the performance. This is what I did when I was doing a Medical Service application last year and I could get very fine points. One more secrete....the ultimate user doesn't have any 'Mantra' which gives him a list of defects. He also runs the application like you and me and gets the defects.

#4

This is a good article that reminds us that if the customer is not satisfied with our product we will eventually hear about it. Why not hear up front? Consistant feedback is good and this sounds like an excellent way to keep communications open. However, as with all good practices, each project manager must weigh how this activity will impact their project and gauge the return of acting on feedback vs meeting project milestones.

#5

we are currently in beta testing. at the end of the test phase we will conduct a survey similar to what esther proposes. my impression is that a well organized beta test with a limited group of motivated users is extremely helpful in reducing both technical or usability risks at release time. i also realised that we came across input data and configurations that would have been hard to capture with a system test alone. i doubt that setting the "agile" flag will change project situations substantially. for example, having this "on-site customer" could lead you into situations where the "off-site customer" that do exist are not noticed.

#6

I never thought of doing surveys in this method. And having the selection or table before the comments is probably a good scheme as well, as the once the person sees what they are filling out; they can then formulate why, and explain below.What I did when I was a programmer was invite the customer in through various stages of the development and have them do a test drive on the system. Typically what happened was they liked certain features, disliked very few, but wanted to enhance a bunch more - based on usability. Granted this went outside the specification, which most times the customers were willing to pay for. In addition I always felt this gave the customer a sense of where one was at, and it forced me to create milestones in my development activity for these "test drives"

#7

This always can be a good practice to have the users view point as far as the usability of software is concerned. The tool suggested by Derby is an excellent one. But my only concern is, this kind of survey, generates very erratic comments if the users do not have time and forcerd to answer the questions. Sometimes it will be difficult to analyse those if you don't have enough time. I aprreahend, there might be cost and time overrun if you don't have provision for that in the project plan. In my opinion the most important target users should be surveyed first and others should be considered after seeing the response. Moreover you can satisfy one user, you can satisfy some users but you can't satisfy all of the users.

#8

This is a good article. The customer surveys are considered reactive approach as for as the current version of the Beta is considered. However it adds plenty of value. This approach mixed with some proactive steps will add more value. "Measurable requirements for non-functional testing" can be considered in addition to this customer survey. In the requirements phase please ask your customers;1. What is the performance customers are looking at; in specific please ask your customers what is the max/min duartion for adding/modifying/deleting and searching a record in the database. In the absence of any expectation from the customer, you decide the performance level and ask the customer whether that is OK. 2. How many hours the application is expected to run with a particular load(you need to define) (Reliability/Stress/Load). ...etc.All these measuarble data can be put in to "testing requirements" and now that the tester will know what is acceptable for the product. The tester can test the product against these measuable non-functional requirements and send the test data along with customer survey sothat the customer knows we are serious about the survey and in incorporating their inputs.