The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

Usability Issue with our Application

We are discovering a usability issue with the application we recently released.  Our application Trade Watch  http://trade-watch.com monitors incoming emails and finds keywords.  It has more capabilities then the standard rules filter.  It can search a huge list of keywords all at once and can handle permutations on keywords (such as abc-123 vs. ABC/123 vs. AbC 123 etc).

The problem we are having is conveying to our user how to use the keywords.  Most people are used to a single line of searching like Google.  You enter a phrase and it searches for it.  Our program would be like having the ability to have multiple lines to search them all at once.

The problem people are having is that they dont understand our keyword list http://trade-watch.com/keywordlist.jpg Basically a row is an AND operation.  All keywords in that row must be found in an email in order for you to be notified and each row is a seperate search.  Most of our users are just filling in the list and they never get notified since it needs to find all three keywords.  Which is not how they wanted to search.

I am trying to find an easy to understand interface that will be obvious to the user how the keywords are searched for.  I thought about putting all the keywords in one column and call it a "Search Phrase" instead of keyword1, etc.  I also thought about putting static columns with the word AND in between each of the keywords.

Well I wanted to get your thoughts on this...
Nick Koranda Send private email
Wednesday, September 14, 2005
 
 
Rather than presenting all searches, only present one serach at a time.

Present a list of saved searches, but do not actually show the contents. (Show the individual searches separately)
Arafangion Send private email
Wednesday, September 14, 2005
 
 
It doesnt present multiple search results.  It works like this:

If you have say 100 keywords entered into the application, when an email comes in, it will search for all 100 keywords in the email.  If any of the keywords are found an alert occurs to notify the user.

The results would be a simple entry in a list saying the keyword(s) that were found.  You double click the line and it opens the email up.
Nick Koranda Send private email
Wednesday, September 14, 2005
 
 
I would put the ANDs in, or maybe a plus sign. Just make sure that it's highlighted in some way so that it stands out.
John Topley Send private email
Wednesday, September 14, 2005
 
 
You are used to the concept of 'AND', boolean logic. You are a computer scientist.  A non-programmer does have the capacity to learn the concept of 'AND', do you want to teach it to them?
Progammer
Wednesday, September 14, 2005
 
 
No, actually I dont want to teach them anything.  I want the program to do what they expect it to.  Users will want to narrow their search by including more keywords in an "AND" like fashion.  I need a way to represent that.

Perhaps I need the last two keywords to be hidden unless they click on an advanced button or something.
Nick Koranda Send private email
Wednesday, September 14, 2005
 
 
Change your algorithm. Provide exact AND matches as the highest in the results. Then provide results in priority order for different combinations of the key words, perhaps based on some frequence list or correlation metric.

This will be intuitive and work well.
son of parnas
Wednesday, September 14, 2005
 
 
If I had a program that automatically tagged my mail on comming in so as to make it easier to identify important things about it, I wouldn't necessarily need the mail sorted on those attributes.

Notus Lotes has a similar idea to what your talking about, in that it's mail in agents all run against the mail and can perform different tasks (move to somewhere, copy, mark up etc.)  The way their interface works is just to not confuse the user by providing the detail of all of the searches at once.

If you based it around the action to take - such as colour the entry magenta - you then have to manage what is to match and trigger that rule, which could be 1 or more sets with each set containing 1 or more things that must match together.

here is my text config representation

mail{
 action {
  highlite magenta
 }
 match {
  search1{ abc-123 computer }
  search2{ purple }
 }
}

Thursday, September 15, 2005
 
 
Nick, you've confused me with your language. Your original post said "Basically a row is an AND operation.  All keywords in that row must be found in an email in order for you to be notified". On a followup message you said "If you have say 100 keywords entered into the application, when an email comes in, it will search for all 100 keywords in the email.  If any of the keywords are found an alert occurs to notify the user."

Your second entry sounds like an OR operation, unless you meant that you have 100 lines of keywords, so you have OR *between* lines and AND *within* a line.

I can see why your users get confused. Most people don't get booleans. They are better at understanding phrases such as "All of the keywords" (for AND), "ANy of the keywords" (for OR). See Google's advanced search page http://www.google.co.uk/advanced_search?hl=en
Freddie boy
Thursday, September 15, 2005
 
 
Freddie boy,

Sorry for the confusion.  I agree that our customers are getting confused!

You are correct with your asumption.  Each row has three keywords in it.  All of those need to be found to alert the user.  But there are multiple rows, each having a set of keywords to search for seperate from the other rows.

I put together a grid that looked like this:

Search #xx - Find:  KEYWORD1  and KEYWORD2 and KEYWORD 3

where xx is the row number, but based on what you were saying, I think I will try out:

Search #xx - Find All Keywords:  KEYWORD1 KEYWORD2 KEYWORD 3

or something similar.
Nick Koranda Send private email
Thursday, September 15, 2005
 
 
Change the row logic to be OR rather than AND between the lines and allow the user to override that if they want.

That, at a quick guess, is what the user believes the application should do for them.
Simon Lucy Send private email
Friday, September 16, 2005
 
 
Why should the user even see both rows and columns? I'd change it into a list of text fields, then parse the text field for keywords.

People naturally assume that text in the same field makes one query, and the field below is unrelated. Since that's what you're after, it may be a decent compromise.

Most people wouldn't know how to use a search engine if they see a dozen horizontally aligned text boxes either.

And a few baloon pop-ups may help for first-time users. But that doesn't really solve the problem.
Mostly Harmless
Friday, September 16, 2005
 
 
"You are used to the concept of 'AND', boolean logic. You are a computer scientist.  A non-programmer does have the capacity to learn the concept of 'AND', do you want to teach it to them?"

I think most people who understand the English language understand the concept of "AND". I'd like tomatoes AND cheese on my pizza.
John Topley Send private email
Friday, September 16, 2005
 
 
John said "I think most people who understand the English language understand the concept of "AND". I'd like tomatoes AND cheese on my pizza."

_but_ the English language is wonderfully flexible. Ask someone whose mail you are looking for and they would tell you "I'm looking for emails from Ted and Jane". What they are talking about is a boolean OR  (Ted OR Jane), but in everyday conversation we say Ted AND Jane, and we understand what they mean!

Most people understand the words AND, OR, but everyday usage of those words confounds understanding of booleans
Freddie boy
Friday, September 16, 2005
 
 
Fair point, well made.
John Topley Send private email
Friday, September 16, 2005
 
 
I would second the idea of having a text field for each row and parse out the words based on spaces and commas. Much easier to enter than multiple text fields (and why limit them to three?)
Daniel S
Sunday, September 18, 2005
 
 
I agree with the idea of doing an OR, but then sorting the ones with all 3 higher than ones with 2, higher than 1.

But if that isn't possible, why not actually put the word "AND" on the screen somewhere?

If I just looked at the screenshot, I would have to guess whether it means AND or OR, as there doesn't seem to be anything to indicate which. (And I'd probably and incorrectly, guess OR)
S Tanna
Monday, September 19, 2005
 
 
Given the google uses and I think AND is probably the default now.
son of parnas
Monday, September 19, 2005
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz