...
- Brainstorming early design ideas in the context of user's work. Creating storyboards for several of your primary scenarios is a good idea.
- Communicating how the system SHOULD work to implementors. They should be part of any functional specification. They can also become or supplement user stories in agile development.
- Communicating how the system works to users. They can be used in a help system or user manual for instance. You'll likely want to use screen shots of the actual system in this case.
How to do storyboarding?
Many designers recommend starting on a whiteboard (or similar low tech).
There are many techniques for creating storyboards. The main idea is to tell a story about the user using your product to complete a task. We recommend you start early and with low fidelity tools like whiteboards or pen and paper so you quickly draw, change and throw things out. Storyboards can show the user's interaction with the product or can just be a screen by screen walk through of what the users sees and does like we've done in Fluid (see examples above).
Your storyboards will get higher and higher fidelity to the extent that the team requires.
How-to and other Storyboard Resources
Storyboarding Rich Internet Applications with Visio - Boxes and Arrows, The Design Behind the Design