Configuration Best Practice
Development in SharePoint consists of many different types of development. SharePoint Solution development, Web Part development, workflow development, .Net development, SharePoint Apps development, etc..
Therefore, each developer in the SharePoint environment should have their own development virtual server.
A powerful single server farm, i.e. App, Web & DB all on one virtual server. This will give them the ability to create or restore development environments at will, which greatly eases the development process and can speed up delivery.
- This VM should be hosted on a development dedicated VM host server which will host the entire development environment.
- Using a Remote Desktop Protocol (RDP) client, your developer has access to a complete environment without making any changes or installations on his local environment.
- To support each developer and maintain a consistent, known and clean environment, the Development environment will initially consist of two virtual servers.
A couple of notes:
- Do not share a sql server between development vms. SharePoint developers will need FULL control over their environment, to include SQL server. I have talked to many .Net (no SharePoint experience) developers who can not imagine needing SQL skills… but, make no mistake, SharePoint Solution developers will absolutely require access to SQL. By turning the SQL instance over to each individual developer in their own VM, will remove management of the Dev environment from SharePoint Admins to the developers….
- Do add a domain controller for all developers to share.. this will assist with VM cloning (to replace or upgrade developer vms)
This design provides the most comprehensive solution for SharePoint Developers with the least amount of management.