- szjanikowskiThanks, please join our Discord here: https://discord.gg/QF5PMX4Dqg It would be easiest to discuss all the options there :)
- We are building https://noesis.vision/ a similar tool to extract the system architecture from the source code according to the patterns. We are now in beta for .NET.
After working with the topic for multiple months I can tell you that introductions for new-joiners are not the only use case for this kind of extracted knowledge. Many ppl in the organizations need insights into the software structure as they either impact decisions shaping this structure (e.g. analysts) or depend on the decisions about this structure (e.g. testers, or support agents)
It's all the matter of giving access to reliable architecture knowledge structured by a consistent ontology. Garbage in / garbage out - the higher the knowledge quality, the better the output - both for human and agentic knowledge consumers.
- Oh that's more clear right now. Hints of such refactorings are certainly within reach of todays AI tools (if you agree to send your code to the LLM models). Have you tried asking Cursor/Windsurf this question with a prompt similar to what you've just written above?
BTW it might be an interesting feature for Noesis if it needs to be done during regular scans. Thanks for a tip ;)
- Hey, what do you mean by "performance bottlenecks"? Do you mean finding CPU/memory hotspots in your apps? If so, APM tools like New Relic or runtime scanners like AppMap sound like a better fit than static code analysis.
However, if you want to visualize the codebase structure and reason about how coupling and design choices impact performance, static analysis becomes your friend.
If you're on .NET, you might consider joining our early testing campaign at Noesis.vision (https://noesis.vision). There are also a bunch of other tools—some more AI-based (like GitDiagram, DeepWiki), and others less or not AI-based and more language-specific (often IDE plugins). Let me know if you'd like to chat more.