How do you manage development and deployment of a n-tier system that’s made up of multiple websites, desktop applications, web services and databases that have a mix of dependencies?
Assume that you have a continuous integration environment with source control and automated builds.
This is something you’ll find hard to achieve. However, one thing we do is to make sure that each distinct part of your system does the appropriate sanity checks, for example your data access layer will do something like:
This example is totally trivial, but you should get the idea.
Another thing you can do is make sure that when you package your app you package it as one unit. So someone can do something like:
Obviously this depends on how you plan to distribute your app.
Hopefully this gives you something to think about.