Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

This question already has an answer here:

We have a big and complex application composed by at least 700 DLL. The number is growing month after month. The code is not well structured because every DLL is a stand alone solutions. As you can imagine, when have some problem when we have to test a new feature on a DLL because we do not know exactly where it is used.

I am thinking to write a program that scan the file system, open the solution XML file and create a graph that contain all the references.

Is it a good idea?
Do you have some other solutions?

share|improve this question
1  
NDepend (they aren't paying me to say that ;)) –  AakashM Sep 6 '13 at 8:04
1  
It's quite trivial to write such a tool (simply reading the solution files); I wrote something like this some years ago to track some circular dependencies in a messy and complex application. –  Dominic Kexel Sep 6 '13 at 9:02
    
@gnat: can any of those dependency management systems create a dependency graph of an existing project? If not, then this is not a duplicate. –  Doc Brown Sep 6 '13 at 11:21
    
Is your application under one .NET solution ? –  Yusubov Sep 6 '13 at 12:35
add comment

marked as duplicate by gnat, GlenH7, Yusubov, Corbin March, MichaelT Sep 6 '13 at 12:54

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

2 Answers

I'd first try to consolidate those dlls. Do you have a class per dll or something?! Combine related functionality currently contained within lots of dlls into a single dll, then you can start to get a grasp on your dependency chain. 700 is just too many to manage well.

share|improve this answer
    
Our system, our developers, out time and our business make this job not possible. I agree with you, but the scenario is pretty difficult –  AngeloBad Sep 6 '13 at 8:07
add comment

Do you have some other solutions?

In short: Combine your code under one solution and define project dependencies their.

Having so many dlls is troublesome for maintenance and further development. If you have the source code, I would suggest de-compile this dlls to their own small projects and combine them under one solution. It would be much clear and easier to manage dependencies from their on.

However, all that re-organizational work would cost you time of a developer who understands the system very well.

share|improve this answer
add comment

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