When a new release of base source is available we'll check in all source code, check out the entire project and then unpack the new release overwriting existing code. Next we'll run all unit test (SDMS will be a TDD solution) to ensure nothing broke and if we don't have to roll-back the update we'll check-in the project updates.

In a perfect world the above would be all that is required but the problem is we may be forced to update our code base... In preparation for this we have created the following attribute:

This requires us to modify our upgrade plan to include running a "SourceBaseUpdate" report to show all changes made to the base as our first step; we can then rollback the specific files (if code compare reveals our changes were the only ones since last release) or copy/paste updates from a change repository (a feature we would have to write) to the affected files.