I know it's a very subjective question , but this is one section of Software Engineering wherein I haven't seen any improvement in terms of how we can do it in a better way. I guess every programmer does documentation with some frustration, but when working I feel it's the most important tool for me. How can the process of creating and maintaining documentation be done in a better way?
There is no silver bullet. Like other aspects of programming, you need to decompose the problem and tackle one area at a time.
Here are some ideas that can (in my experience) be helpful:
Reduce the need for documentation
Choose the right tools
Choose the right medium
Choose the right quality
Choose the right people
People should document according to the domain of their expertise. For example, users should write user documentation (after all, users best understand the business problems that the software solves, and will express their understanding of the software in business terms).