Virtualization technology certainly has changed the game when it comes to software development. Long gone are the days of hoping or guessing that the application developed will work on a disparate number of computer systems. Testing was possible but there was a good percentage of scenario’s that were missed due to hardware/software constraints. The web eased this by removing the concern for the OS and other related items but it brought about its own issues: browser capability, what standards to follow, etc.
That being said, virtual machines (VM’s) are a beautiful thing. You can create one with relative ease and destroy one and start over just as easily. Obviously there’s a low threshold for cost as opposed to duplicating every physical environment and VM performance has been improved substantially whether you’re talking about Hyper-V or VMware.
So if you’re not using VM’s you should be. However, there are a few caveats’, one of which I just recently found out when trying to install the MSF-Agile + SDL Process Template for Visual Studio Team System 2010 template (http://go.microsoft.com/?linkid=9733530). I’m currently using a VM that has Windows Server 2008 Standard which includes Visual Studio/Team Foundation Server 2010, SQL Server 2008, Office 2010 and various other installs. TFS comes standard with a few templates but I wanted to add the SDL version since security is a key component for good software development. Unfortunately the installer never got passed the disk space requirements screen.
Note: It is possible to click “Return” but then after clicking “Install” the message box is once again displayed.
Removing a mapped drive with a UNC path and disabling the integration features of the VM failed to get passed the requirements gathering screen. One last Hail Mary was to rename the installer package (as well as removing the local security protection of a downloaded file) but the problem was still occurring. The solution was rather simple but will require Administrator rights. If this error occurs, run the installer from command line using elevated privileges keying this syntax:
“msiexec /i MSFAgilePlusSDL-5.0.msi /qr”
Other commands are available by simply typing: “msiexec /?“
While I’m a big proponent of virtualization there are some “gotcha’s” that may come up from time to time but those shouldn’t deter an organization from bringing in and using this type of technology on either the developer or enterprise level.