storing development database on local machine.

Heisenberg 221 Reputation points

hi all, one of our development teams want to store their database locally (on developer's laptop). They are having issues connecting the main development servers due to network latency, hence they want it. I'm reluctant to accept their requirement. Can someone give me few points/issues i can raise to convince them its a bad strategy to have development database hosted on a some developer's laptop?

SQL Server
SQL Server
A family of Microsoft relational database management and analysis systems for e-commerce, line-of-business, and data warehousing solutions.
10,899 questions
{count} votes

4 answers

Sort by: Most helpful
  1. Erland Sommarskog 87,181 Reputation points

    I'm not sure that I can give any good arguments, since I have a local database on my laptop. And, yes, it is a copy of production.

    But that is all up to how you work in your team. Depending how sensitive the data is, this can certainly alone being blocker for having copies on a developer laptop.

    On the other hand, if someone is going to work on a bigger development task which requires changes to multiple tables, there is all reason that this person gets a sandbox isolated from everyone else.

    Obviously, the change that the developer makes on his or her own laptop has to be propagated to the main dev server at some point, but I take for granted that you have all database code under source control.

  2. CathyJi-MSFT 20,981 Reputation points Microsoft Vendor

    Hi @SQLServerBro,

    It depends on your company policy. And how sensitive the data is in your develop environment. If the develop data is sensitive, so you can reject developer requirement. If your company has this security policy to protect data, you can reject developer requirement.

    But if the data is not sensitive and the developer’s requirement do not violate company security policy, and the requirement can improve their work efficiency, I think that you do not have reason to reject their requirement.

    If the response is helpful, please click "Accept Answer" and upvote it, as this could help other community members looking for similar queries.

  3. Sam of Simple Samples 5,486 Reputation points

    See Why should we have separate development, testing, and production environments? - Linux Together. It seems to be a simple explanation of the methodology that large organizations follow. It has been more than three decades since I worked in a large aircraft manufacturer that practiced such guidelines; keeping the production, staging and testing (using other names often) environments separate.

    Software Development Life Cycles (SDLCs) have evolved significantly and now test case development is typically included in the design and development of systems, as in Test Case Design Techniques | There is abundant resources for understanding, developing and following a SDLC including test data design and maintenance. Test data should be created such that it contains no sensitive customer data and test the software as thoroughly yet efficiently as possible.

    0 comments No comments

  4. Nilsson Fredrik K 6 Reputation points

    If I were you I would rather look into that latency they are talking about, you say "one of our development teams", why doesn't the others have the same issue? I mean of course everyone wants to have everything they need running locally, that bypasses any "conflicts" with other teams. On the other hand, that also makes for a "not so production like" setup which might lead to "but it works great when the database is running locally" which the ops people, once the app is deployed, might have an issue with...

    0 comments No comments