Understanding NDepend Analysis Inputs
This short document clarifies from where NDepend analysis takes its inputs. Indeed, it might sound mysterious how NDepend can infer comment metrics from assemblies for example. The trick is that the analysis is fetching data from different sources:
Here are various notes:
How NDepend is resolving assemblies
The NDepend project file (.ndproj extesion) contains 2 lists of assembly names (case insensitive, without extension .dll .exe)
The NDepend project also contains a list of directories (absolute, relative to .ndproj, envvar ... see Project > Paths Referenced )
This list of directory also contain .NET Fx directories like C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319 to resolve third-party .NET Fx assemblies referenced by your Application assemblies. The .NET profile can be changed, .NET Fx, Win RT, Silverlight and soon .NET Core.
To resolve assemblies, NDepend attempts to locate assemblies by name in the directories.
If several assemblies with the same name are found in several directories, here is the heuristic used to resolve the assembly to analyze: