1. Get it right the first time
If you don't you're in for a real treat. Most likely you'll have to
redo certain areas of the application or quite possibly the whole
entire application. I have been in several situations where the
previous developer didn't analyze the customers business in depth and
whatever comes out of the development process does NOT get the job done
for the customer. What does that mean? An application that has to be
re-created or go through a major overhaul. NOTE: This is very
expensive.
2. Identify opportunities
To continue on from the first point, if you map out how your users
currently work, there is no doubt you will find opportunities for how
they could improve their process. This is what users cannot articulate
and what technologists can. The best part is, some of these
opportunities maybe much easier to implement but could be highly
appreciated by users. By finding out how the user's work, you can also
remove some of the painstaking features that the users were asking in
the first place.
3. Increase user base faster
Making your users happy naturally makes them want to spread its
usefulness by word of mouth. But not only that, if you know how they
currently work, it makes it much easier to communicate to your target
audience why your application is worth using to them. You don't need a
hard sell.
4. Developers get on board faster
Like the old saying goes, a picture paints a thousand words. Even
among people who love and create technology, most all would prefer to
see a diagram of how users work rather than read a 10 page
specification document.
5. Developers are much more effective
Not only do developers get on board faster, they understand how certain
features that they are developing will help the user's process. The
reason they are developing a feature is not because "AJAX is hot and
every new app is using it!" The reason is: "This is how our target
audience currently works and this is how they'll be far more effective
with our product.