In software companies I have seen it's really hard to work on very large products where everything depends on everything else.
For instance Microsoft works on C#, F#, .NET, WPF, Visual Studio where these things are interconnected. I don't know how many people are involved, but if it's in 100s, how do they keep in sync with everything, so they design and implement features without conflicting with other dependencies and future plans of other products?
I am wondering that if MS is able to do this, they must have a very good system.
Any guidelines or secrets for MS or non-MS very large software product delivering?