Un vrai système de documentation associé au code, c'est vraiment excellent. Ça oblige a écrire ce à quoi servent les fonctions, quels en sont les paramètres, quelle est la valeur de retour. Ça permet aussi la génération de catalogues de fonctions, de fichiers, de variables avec la documentation associée. Ça permet également la génération de graphs d'appel ou de dépendance.

J'utilise doxygen sur heraia depuis pas si longtemps (même si je connaissais son existence depuis beaucoup plus longtemps - finalement, je regrette de ne pas l'avoir fait avant!). Un exempe de ce que ça peu donner se trouve dans un coin de mon site (version en cours de développement). Mais j'ai sélectionné, pour vous le graph d'appel de la fonction main, que j'aime tout particulièrement :

Donc, si j'ai bien un conseil à vous donner : utilisez un système de documentation associé au code source, c'est moins pénible qu'un système désolidarisé du code. Utilisez le dès que possible. Générez les pages de docs au moins pour chaque version, tenez les a disposition, d'une manière ou d'une autre. Ça peut toujours servir !

Ah, un dernier point c'est que doxygen est un système de documentation qui peut s'utiliser avec d'autres langages que le C/C++, tel java, python, etc...