Developers who need more computing resources to build their Java-based applications will one day be able to take advantage of a new developer grid Sun Microsystems Inc. is preparing.
The Santa Clara, Calif. vendor has only started publicly discussing the developer grid, — which is still in the development stages — and has not yet set an official launch date. It has revealed, however, that the grid will feature compute cycles for testing as well as resources for application verification.
According to Aisling MacRunnels, Sun’s senior director of utility computing in Menlo Park, Calif., developers are sometimes unable to test newly developed applications in an environment that would simulate peak utilization periods.
“Then when they have problems, the application goes down because there was not enough due diligence,” she said. With the new grid, developers would be able to create the applications and then immediately test and deploy them using the appropriate level of resources.
“There will be huge opportunities to compete that smaller developers haven’t had in the past,” MacRunnels said. The grid would provide economies of scale across developer communities and be easy to use, said Matt Thompson, director of the Technology Outreach & Open Source Programs Office at Sun.
“The way to think about it is it’s a service-based grid just like you have with your telephone company,” he said.
MacRunnels said the developer grid would adhere to the “multi-tenant” utility computing concept, enabling several companies to tap into the same grid on a pay-per-use basis. This is a significant break from Sun’s and other service providers’ traditional “single-tenant” contracts, where the service provider would put its servers on a customer’s site and measure how much computing power they used.
She said contract negotiation around how much computing power developers would be able to access — part of the single-tenant concept — will be a thing of the past.
“It will be a click-through licence. Any developer will be able to just log on and start developing applications within minutes,” she said. Tony Enerson, chief technology officer at development firm Catalyst Realtime Corp. in Calgary, said access to a developer grid would benefit his firm’s internal and external development projects.
For any internal development to support Catalyst’s own products, the developer grid would “literally give me a virtual development environment wherever I happen to be,” Enerson said. “There are a lot of consultants we have working on software projects that do spend time on or offsite. It’s that connected aspect that we would get value from.”
As for external projects, Catalyst’s testing process would be the main beneficiary. The developer practices what Enerson called “test-driven development,” whereby developers write and conduct tests to define what their software does. “We first make sure it’s a clean product, then we run system tests to make sure we haven’t broken anything.”
System tests are very expensive to run but they need to be done on a regular basis in order to maintain development discipline. A piece of software with several features may require 10 or more tests for each feature. “It doesn’t take long until you get to doing thousands of tests” and the costs start adding up, he said.
Access to a developer grid would “put a supercomputer in my back pocket,” Enerson said. Because of the number of additional compute cycles available, tests that may normally take four hours to complete might only take a few minutes.
In addition, speeding up tests would mean that if the software had a glitch, developers would catch it sooner. Otherwise, they would have to wait several hours to find out what the problem was, thereby losing a day of development.
Enerson estimated using the developer grid would reduce developer hours on a project by at least 15 per cent.
For more information on Grid Computing including a primer plus more articles, case studies, white papers, industry links and more, be sure to visit our currently featured Grid Computing Spotlight.