Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I saw this in a job posting for an developer.

"An understanding of basic software development practices such as ...and Dependency Analysis."

I read the wikipedia entry for Dependency Analysis and understand that it basically means one thing depends on the other so you can't reorder or parallelize them.

What does this mean in practice? Is there a tool that is used to do a Dependency Analysis? What should I know about it for an interview and in practice if I get the job?

share|improve this question

When you say Dependency Analysis, the first tool that comes to mind is NDepend.

Here's a great blog post by Scott Hanselman explaining how you can use it to analyze dependencies in your code.

You can use NDepend to create dependency graphs of your assemblies, use CQL (Code Query Language) to query for overly complicated classes and methods, and perform a number of other code analysis tasks.

share|improve this answer

In software, dependencies are things like external libraries, method calls, header files, inherited classes, and data interfaces. They are things without which the software won't work.

In high-end versions of Visual Studio, there are tools you can use to map out the dependencies.

share|improve this answer
What are those tools? I know they use TFS – Joshua Slocum Nov 10 '10 at 19:10

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.