We recently had the chance to catch up with Eric Knipp, who happened to be in the area (yes, we have astute local Gartner analysts in Dallas, and no cowboy hats on in the room). He made an interesting point: that the way we describe Service Virtualization was really oriented toward the "Design Time" aspect of a development environment.
That is definitely a "development gap" that needs to be minded. When I read and hear articles about new development processes, it seems
like there is a wide gap between the developer's code itself (addressed
by Agile, scrum, source control, some ALM) that extends all the way through integration and testing, and continues until Deployment (where the software assets exist in Runtime).
As an industry, we look at Virtualization and Cloud as deployment frontiers. That's cool, but it represents a small portion of what could be done with the two technologies working together to eliminate that development gap, before we step off into it.
We are increasingly finding that as development becomes more distributed across small teams and separate domains, the number of pre-production development servers and test beds balloons. Whether that deployed app is on a regular web server, or a Cloud-hosted VM, it still seems like we are leaving a bigger proliferation there. It might not seem that big at first, but few real enterprises haven't already started leveraging these distributed computing resources now.
If Cloud Computing and Virtualization are all about replicating or replacing production servers, then why would a top banking customer replicate more than 1100 services and systems with Virtual Services instead of letting them keep making copies of Virtual Machines (VMs) on their network, and later, in their private cloud solution?
Short of longing for the old days of monolithic, centrally controlled systems with 1 production environment and a couple test and staging environments... business won't let IT go back to slow releases - our agility is also creating a new burden in pre-production. Of course, this applies for larger enterprises - there are many instance of new companies who are building functionality "for the Cloud" that is limited in scope and integration requirements, starts fresh, and thus, does not have as much of a burden here.
So here's my question again: If you had to count up the instances of pre-production vs. production "environments" and servers, would the pre-prod outnumber the production by 10-1? 100-1? Be honest and think about all those dev and test servers you don't know enough about to shut down... and think about all the partners that must have their own as well.
And, mind the gap before you step off that platform!

Such gaps can be minimized through proper training on project management.
Posted by: Mandar Thosar | August 02, 2010 at 03:37 AM