Я в последнее время полюбил Doxygen -
http://www.stack.nl/~dimitri/doxygen/ - для оформления тех. документации, для тех случаев когда надо писАть про firmware, код, и тому подобное. К этому пользуюсь graphviz для рисунков bubble diagrams, flows, memory maps, итд. Естесвенно такая прелесть можит работать только под Линукс. Изюминка связки doxygen + graphviz является то что как и все под линуксом, инфо сохроняется в config files, соответственно можно эти конфиги содержать вместе с кодом в repository - т.е. в CVS, subversion, или (не дай бог) в ClearCase (чтоб они все
подохли нездорово себя чуствовали). Получается что можно легко создать make file которая автоматически реагирует на изменения в source коде каждый раз когда происходит изменение.
Теперь я вставляю в doxygen config file сам текст документации, и заставляю doxygen выдавать все в том формате которым пользуется фирма - т.е. headings параграфов, энумерация, итд. можно сохранить так как сотрудники предпочитают видеть. В dox config можно вставить и требованье вставить в документ соответствущие .png and .jpeg диаграммы которые создаются автоматически из grapfviz config files. Все это дело превращяется в .rtf файл который, по идее, не нуждается в ручной поправке в Word или OpenOffice.
In Mozilla, you keep tabs on your browser. In the USSR, your browser keeps tabs on you.