I've been working at the same company for almost 10 years now - in different capacities, but always in the role of determining how we will communicate with our users. Over the years, I've gotten teams to be better and better about bringing training and writing staff into the development cycle early on. There's nothing worse than coming into a project at the end and being asked to write training material or help systems on a product that couldn't be less user-friendly if you tried. It's too late most times for changes to the system and the trainer/writer is left feeling like they're setting the user up for failure.
Unfortunately, every once and a while, we still get thrown in at the end, as is the case with a project I've recently been assigned. The web-based application that I've been asked to write a help system for is one we got from an outside vendor. I can tell we got this one because it was the cheapest one we could find. This application is supposed to track information about the deals we do (I work for a law firm).
So, I met with the project manager last week to go over what was needed and I found that I had to stop asking questions about why certain things work the way they do because I was entirely frustrated with the answers. It went something like this:
Me: Why do we have some fields that are picklists and some fields that are lookups and some fields that are free form, all on the same screen?
Him: Because the information from this field comes from the authentication file and this one comes from the core database.
Me: Why should a user have to care about that or know about that? Can't we just have them enter information in one way?
Him: No, it doesn't work that way. We tried to get the vendor to change some things, but they won't.
Me: OK, I'll figure the rest of the application out myself - you can go now.
Yes, the user can figure out how to fill out each field, but they shouldn't have to. A designer should have usability in the forefront when designing applications. I realize my involvement earlier on in this particular project wouldn't have helped as we have a vendor who has already sold us a product that they know they don't have to fix....we've already paid, after all....
But, if your designers aren't very good at usability, do your user base a favor and have a few people test it out and give you feedback. It can make a world of difference.
A couple of useful usability links