Food for thought, perhaps:
When implementing changes to a table in a database, in order to have minor impact, you can create a new table with a new name to house the change, and migrate the data from the old table according to the new scheme. Then, create a(n updateable) view with the same name as the old table, querying from the new table. This sets the stage for changes with little affect on the current code base.
Once that is in place, changes can be made slowly, using the new table instead of the view, while the current code using the view.