There are 4 million .NET developers in the world, so I figure one or two might read this blog, or you might know someone.
A couple weeks ago at the Professional Developers Conference, we began discussing, and announced a CTP, of Visual Studio 10. One of the many features of VS10 is lab management, which leverages virtualization to enable software development and test teams to build higer quality apps. Lab management accelerates setup/tear down time and elimiates no-repro bugs by creating better integration across dev and test teams throughout the application lifecycle.
You (or the someone you know) may be asking yourself – why is this a good thing? Here’s what the Visual Studio guys told me:
- 30% of testing time is spent in setting up machines and labs
- Under 30% utilization of test and dev assets
- “No Repro” bugs often slip into production impacting project success
The guys also told me:
Unlike other tools, Microsoft’s capabilities around lab management are fully integrated to Visual Studio Team System allowing teams to collaborate more effectively and not have to deal with disparate tools. Lab management is fully integrated with the testing capabilities allowing generalists testers to take quick checkpoints on failures & record rich bugs with links to the environment in the bug that the developer can then open. It is also integrated into the build process allowing customers to automatically trigger a virtual environment provisioning, build deployment & testing of the build.
Lab Management leverages virtualization and allows multiple checkpoints to be created across lab environments (consisting of multiple VMs). Since the checkpoints are part of the same image as opposed to having to clone at every state snapshot, that reduces the proliferation. In addition, lab management ties the environments to the notion of a project which allows the lab administrator to clean up the images as projects are completed.
Lab Management is built on top of System Center Virtual Machine Manager, and supports Hyper-V out of the box.
Since it’s built on SCVMM, lab management allows developers to:
• Manage groups of VMs as single entity
• Allows rapidly clone VMs using network fencing and other technologies
• Integrates with ALM tools to create tighter interaction between development/test & operations
• Patch virtual machines that are stored in a library by deploying the VMs on a dedicated resource pool (hardware) patching them and moving them back to the library.