This chapter from the Software Development: An Open Source Approach discusses User Support. Technical writing is one of the first things mentioned in the chapter that sets the medium of good quality writing. Specifically using technical writing for user documentation, the chapter suggested a few elements of presentation: organization, illustrations, style, and tone.
Furthermore, “knowing your audience” is another important prospect of writing good user documentation. Regardless of the user experience, a good documentation will directly answer questions and cover all situations that users may encounter while utilizing the software. Some ways to avoid writing bad documentation is to organize topics, putting the summary information first, being precise, direct and concise, avoiding jargon, and using graphics. These practises will make the users troubleshooting flow well architected. Finding the right balance between novice and expert users is another very import part of good documentation. To get around this, there are many approaches where developers usually write a tutorial for novice users and a reference manual for the advanced/expert users. Usually there is also online-help where it maps the beginning to end of anything related to the software. Sometimes there are discussion boards or forums where users can go and find help from developers directly.
‘Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing’