I was recently at a client site and we started talking about SQL Server licensing, specifically for their development and testing (they call it staging) environments. The client said that they purchased regular licenses for their staging environment but that they had MSDN Professional (βVisual Studio Professional with MSDNβ) licenses to cover their developers. At this point I started to talk to them about SQL Server Developer Edition and how MSDN subscriptions β while they give you a boatload of available installable software β were intended for individual use and not for shared environments. I dug a little online and could not find anything definitive so I told the client I would call Microsoft.
Before I did that I turned to my primary help resource -
#sqlhelp on Twitter. I referenced
a blog post I found (but of course anyone can write a blog) talking about how to set up a lab with MSDN subscriptions and asked the question:
This question brought several responses from what I consider reliable technical sources saying βof course it doesnβt work that wayβ which is what I expected.
Finally MCM Robert Davis (
Blog/
@SQLSoldier) directed me down the only path to a true judgment:
I called Microsoft licensing today and to my amazement, the MSDN subscription answer appears to be correct, as long as you are careful to have an MSDN subscription of the appropriate level to include SQL Server (currently Professional or higher
as shown here) for each of the developers in your environment.
I asked the Microsoft Licensing rep a couple of key questions and here are his answers:
Q: βSo if a shop of twelve developers has twelve MSDN subscriptions does that mean they can install 50+ Enterprise Edition SQL Servers for development and testing?β
A: βYes β as long as all individual developers have subscriptions that include SQL, they can install as many servers as they wantβ
Q: βThe MSDN Licensing page (
http://msdn.microsoft.com/en-us/subscriptions/cc150618.aspx) says that βIT Pros that install a test labβ need subscriptions as well β so if my hypothetical twelve developers have two DBAβs that install their dev/test SQL Servers for them, I just need fourteen MSDN subscriptions to be covered for as many copies of SQL as I want in dev/test?
A: βYesβ
Q: βWhat about end-users that test the software? Do I need MSDN subscriptions for all of them too?β
Acceptance Testing
At the end of a software development project, end users (or team members such as a business sponsor or product manager acting as proxies for end users, particularly in cases where itβs infeasible or impossible for the actual end users of the program to participate) typically review an application and determine whether it meets the necessary criteria for releaseβa process often called user acceptance testing or UAT. MSDN software may be accessed by end users who do not have an MSDN subscription for purposes of acceptance testing, provided that the use of the software otherwise complies with all MSDN licensing terms. It is rare that someone whose primary role is designing, developing, or testing the software would also qualify as an βend user.β
Under MSDN licensing, acceptance testing must not use live production data. If a copy of any live production data is used, then that copy of the data must be discarded after the testing is complete and cannot be incorporated back into the live production data.
As you can see in this blurb, QA staff (whose primary role is to test software) would not qualify as end-users and as such would need MSDN subscriptions as well under this scheme.
This call still blows my mind β for a little shop, MSDN subscriptions (
which generally run $1000+ per year at list price) are expensive and make this scheme undoable compared to SQL Server Developer Edition licenses at $40-$50 each, but for a shop of any size, especially one that may already have MSDN subscriptions for their developers as part of doing business, this could save some money (*especially* if you arenβt using SQL Server Developer Edition in dev/test!)
Near the end of my #sqlhelp conversation the other day I had this exchange:
Maybe I finally found something that does work the βbeneficialβ way in licensing β it must be a trick! π