Database Development Models

Source Control is a Microsoft SQL Server Management Studio (SSMS) add-in that is designed to manage database changes in most well-known version control systems. With the help of the tool, you can version-control database schemas and data, roll back unwanted changes, handle static data conflicts, and maintain the integrity of the database.

This topic explains what are the differences between the shared and dedicated database development models and how to switch from one model to another.

There are two common ways for teams to develop databases: the dedicated model and the shared model.

Dedicated model

In this model, developers are working on their own local copy of the database and later commit changes to a centralized repository.

The dedicated database development model implicates that each developer works on their own copy of the database and apply changes to the source control master repository. Developers can make changes independently, test and commit them to source control once they’re confident in the changes.

In case of any damage, the developer can get the latest version from the Source control server.

Shared model

This model is designed for situations where multiple developers are working on a single database and commit their changes to a centralized repository.

The shared development model is an attractive development model, especially for small teams. You cannot test and play with your designs in a shared development model environment, as all your changes immediately affect everybody else.

Some development teams use combinations of the two. For example, a large team might use more than one shared development database.