In-application integration is necessary? Higher integration just means that your debugging task is modal instead of allowing you to edit your comments while the debugger is running. It also means your application eats up more memory and takes longer to launch. It also means you can't substitute it as easily for something different.
I'll take my separation + hooks for launching any day over massive integration that means doing what you want is hard / impossible.
Depends on the language / framework. ASP.NET 2.0 with VB, for instance, does not. Furthermore, modifying a WebService doesn't inform the web server that it's been updated, so it keeps serving up old versions of your code.
ie, even MS's own products don't play nicely with each other. But you're more stuck with them than you would be with something more atomic and disconnected.
I'll take my separation + hooks for launching any day over massive integration that means doing what you want is hard / impossible.