I've become interested in abusing concept mapping (Wikipedia article, explanation by the inventor) as a technique for analyzing the design of moderately large software systems. (The systems are two compilers: One is about 25,000 lines with a 1,000-line runtime system; the other about 200,000 lines with a 90,000-line runtime system. Neither system is written in an object-oriented language or style.) I'm interested in something much simpler than UML; a concept map is essentially a directed graph with just one type of node and one type of edge. I would like to know if there are good software tools for this kind of job; I will upvote any answer that reports on experience with concept-mapping tools.
I'm not particularly interested in generating the concept maps automatically; we've done quite a bit of visualization by automatically generating graphs using dot
, and this was useful in its way, but we're looking for something that will enable more control over the layout of the final graph.