How Virtualization Improves Software Development

Virtualization technologies aren't just for server consolidation. They've long been valuable tools to anyone writing or testing software. We show how these tools are being used for software development and quality assurance now and identify a few places where developers still want more from virtualization.

The Limits of Virtualization

There are, developers acknowledge, part of the process where virtualization can't help.

"One area where virtualization doesn't help is in stress testing our product, which is a network-based backup appliance," notes 3X's Floehr. "While we could test 10 simultaneous clients virtually, it isn't a true stress test because the 10 clients are only going through, say, four physical CPUs and two NICs, which are constraints that would not exist if they were 10 physical clients in the real world."

"Virtualization does add some complexity," adds MarkMail's Mitchell. "It always adds some latency. But, even worse, you can't rely on VMs to give a clear view of the performance characteristics as you change the underlying execution environment, such as going from development and testing into production."

Finally, Mitchell notes that "The current generation of desktop virtualizers still have too many annoying quirks, bugs and missing features," at least with regard to their use by developers for software development.

"For load testing or scaling, you have to run on the raw hardware, the physical machine," says Microsoft's Mark Friedman. "Performance characteristics, unless you expect to deploy on a VM, are very different. And the same applies to the state of the art for performance measurements; you can't trust the [Physical Machines] you get on a VM currently." Although, Friedman notes, over time he expects this to be fixed.

Also, says Friedman, the para-virtualization approach used by the virtualization industry can change some does change some underlying aspects of the OS, notably the OS drivers. "So if you have a dependency on specific drivers or hardware environment, that will be impacted. For example, there's a virtual NIC, and there's a specific driver. The driver is 'virtualization-aware.' You have to understand that if you need testing against a native set of drivers, you won't see that within a VM. So this impacts people doing driver development, but not web developers, etc."

And, Friedman points out, "if you have a multi-tiered application, which requires several machines, consolidating these to shared hardware means "you get a functional but not a performance test."

Despite those quibbles, virtualization already gives developers real benefits. "Virtualization makes our developers more productive once they learn to work with the technology," says Microsoft's Friedman. "It allows them to spend more of their time in coding, testing and debugging. It eliminates a lot of time and delay spent in set-up and preparation, which isn't where we want them to be spending the bulk of their time."

Daniel P. Dern is a freelance technology writer based in Newton Center, MA. His web site is www.dern.com and his technology blog is TryingTechnology.com.

Join the newsletter!

Error: Please check your email address.
Rocket to Success - Your 10 Tips for Smarter ERP System Selection

Tags virtualisation

Keep up with the latest tech news, reviews and previews by subscribing to the Good Gear Guide newsletter.
Show Comments

Most Popular Reviews

Latest Articles

Resources

PCW Evaluation Team

Ben Ramsden

Sharp PN-40TC1 Huddle Board

Brainstorming, innovation, problem solving, and negotiation have all become much more productive and valuable if people can easily collaborate in real time with minimal friction.

Sarah Ieroianni

Brother QL-820NWB Professional Label Printer

The print quality also does not disappoint, it’s clear, bold, doesn’t smudge and the text is perfectly sized.

Ratchada Dunn

Sharp PN-40TC1 Huddle Board

The Huddle Board’s built in program; Sharp Touch Viewing software allows us to easily manipulate and edit our documents (jpegs and PDFs) all at the same time on the dashboard.

George Khoury

Sharp PN-40TC1 Huddle Board

The biggest perks for me would be that it comes with easy to use and comprehensive programs that make the collaboration process a whole lot more intuitive and organic

David Coyle

Brother PocketJet PJ-773 A4 Portable Thermal Printer

I rate the printer as a 5 out of 5 stars as it has been able to fit seamlessly into my busy and mobile lifestyle.

Kurt Hegetschweiler

Brother PocketJet PJ-773 A4 Portable Thermal Printer

It’s perfect for mobile workers. Just take it out — it’s small enough to sit anywhere — turn it on, load a sheet of paper, and start printing.

Featured Content

Product Launch Showcase

Latest Jobs

Don’t have an account? Sign up here

Don't have an account? Sign up now

Forgot password?