NorthEast DataFlex Consortium  
Username Password
    Search
"The NEDC...a camaraderie of coordinated independent developers"             
"ca.ma.rad.er.ie", good will and comradeship among friends.

Software as a Conversation


Author: Garret Mott of Auto-Mate Software
 
While the title may sound strange at first, bear with me. Merriam Webster defines a conversation as “[an] oral exchange of sentiments, observations, opinions, or ideas”, from the Latin conversari “to associate with”.
 
Any data entry software requires input from a source and sends messages, or at least indications, back to the source. I think all would agree that this is two-way communication. Couldn’t the input be described as “observations” and the output the same? While not oral (at least presently), isn’t it really a conversation? Maybe you’re skeptical, but I hope to show you that’s exactly what it is, but even more, why it’s important.
 
Take a basic Customer View (or Form, if you’re a Microsoft product user), such as the one below (thanks to Data Access Corporation):
 
Customer View 
 
In entering the address, the user is telling the system “Wilson Bolt & Nut uses P.O. Box 456”. If the system requires that a phone number be entered, the system will tell the user that he or she needs to enter it. Sounds like a conversation to me!
 
So, assuming that data entry/processing is a conversation, just what kind of conversation is it? We deal with different conversations every day. For example, take the sentence “Take out the trash”. Think about your reaction to how it’s said. “If you don’t take out the trash, you’re fired!” “Would you do me a favor and take out the trash?” “Please take out the trash” “Take out the damn trash!”
 
While all of these might get the same result (let’s assume numbers 1 & 4 don’t make you dump it on the speaker!), which one will get you to do it most willingly & happily? Numbers 2 & 3 will probably work the best, won’t they?
 
So, what does this have to do with software you ask? Absolutely everything. First, imagine yourself as the end user, who sits in front of the system 8 hours a day, day in and day out.
 
Suppose you’ve entered 67 new customers and, on the 68th, you forget to enter the phone number. When you go to save the record, you get an error message:
“ERROR 326: CANNOT SAVE, CUST.PHONE IS A REQUIRED FIELD”. 
You then sigh, enter the phone number and try saving again – which works this time. So, the system did get you to enter a phone number, but...
 
Wouldn’t you (as the user) respond better to a message like “Please fill in the phone number”? How about after the 5th time you get the error? Polite, courteous messages will always work better. Remember the old adage “You catch more flies with honey than vinegar”? While we’re hopefully not working as flycatchers, I think you see what I mean. Sometimes humor helps. Maybe put “Oops!” in the caption bar for all “missing info” errors? The user will smile, and from then on know that whenever he or she sees that caption, it’s time to look for what he or she missed. No one likes to be told they’re stupid, but we can all use helpful advice.
 
Language and terminology
 
My first experience with a computer was in an auto parts store, where I worked as a counterman selling parts. We were used to customers asking for “that thingamajig you pour the green stuff into”, but we’d laugh at what people would come up with – and sometimes at them as well.
 
We’d just gotten a computer system and I wanted to find a price on a particular part. So I chose “Inventory Inquiry” from the menu and was then presented a screen that said “Enter Field Matrix”. How many people selling auto parts know what a “field matrix” is? Right - maybe 2 or 3, because they used to be software developers and decided to get real jobs.
 
What the system was really saying (I learned from trial & error) was “Enter the Part Number”. Well, why didn’t they just say that? By using “geek speak”, the developers of this package alienated the user right from the start – just as they would have in a live conversation with us. Lesson? Learn the terms that the end user knows and uses, and make sure to use them in the system. Call the part a radiator, not “air/water heat exchange device” or “that thingamajig you pour the green stuff into”.
 
Remember that the user will be staring at the screen all day long. Won’t they notice that “Addres” is spelled wrong? Don’t you find talking to someone who mispronounces words difficult?  
 
Spending a few minutes before going live to double-check these things can make a big difference in how the system is perceived: is it quality work or is it sloppy? Would you buy a new car that had runs in the paint? Wouldn’t you assume that the manufacturer probably also didn’t care about how well the engine was put together?
 
Layout
 
We’re all looking at delivering functional software at a competitive price. If you go to a store and the clerk is sloppily dressed, snapping his chewing gum and acts as if he’s doing you a big favor by helping you, aren’t you likely to go to another store?  Presentation/attitude is important! Take a look at this:
 
BD Customer View 
 
OK, this is an extreme example, but we’ve all seen screens that come close. What does it say to the end user? Maybe “I don’t care what you think”? Now, pretend this is the Sunday comics and count what’s wrong.   How many things did you find? Here are some of the ones I see:
 
§         Alignment of Customer Number
§         City, State & Zip come before Address & are misaligned
§         Phone Number and Fax are misaligned, different sizes & one uses “Number” while the other uses “#”
§         email is misaligned, as well as different case (compared with the others) & missing the colon
§         Extra space at the bottom of the Tab Page
§         Tab Page is off-center
§         Extra space below the Tab Page
 
Attention to the details can make all the difference in the world. Not only does this screen look bad and present the wrong impression, but it also forces the user to work in a non-intuitive way – by expecting them to enter the city, state and zip before the street address. Asking for a pizza, pepperoni will probably get you what you want (plus some strange looks), but saying “pepperoni pizza” will make for clearer communication.
 
Finally, make things easy for the user whenever possible. For example: If you ask someone to mail a letter, would you expect him to get it out of the file cabinet and put a stamp on it? If you need a user to input a filename and path, give them a prompt button that opens a file dialog. Give them calendars to pick dates from, comboforms (comboboxes to MS developers) to choose a status, and lookups wherever possible. Show negative numbers in red, etc. etc. Doing this sort of thing will cut down on mistakes and make for happier users. 
 
Clear, concise communication spoken in a friendly tone always works best, whether it be talking to a person or working on a computer. Does your system talk to your users that way?
 
AMLogo  Garret Mott  June, 15 2007 Auto-Mate Software 
 
 
       
      NEDC -- The Northeast Dataflex Consortium Website