Cloud Development: 9 Gotchas to Know Before You Jump in

Whether developing, testing, or deploying your apps in the cloud, you have to unlearn some beliefs and learn new ones to make it work

1 2 Page 2
Page 2 of 2

Other issues that can affect development and testing involve network delays and latency and the size of network pipes, especially in certain parts of the world. Embarcadero has research and development centers in Scotts Valley, Calif., Monterey, Calif., Toronto, St. Petersburg, Fla., and Iasi, Romania, plus a sprinkling of smaller teams and individuals throughout the world.

Embarcadero's geographically diverse development environment "makes it harder to synchronize check-ins, builds, and automated testing," Intersimone says. To solve some of this, developers do local builds and regional builds, as well as on the code check-in, on the virtual servers available to all. Developers also do local builds on their own machines. Embarcadero ensures these don't fall out of sync with the master versions on the private cloud byusing Subversion, an open source tool for source code control.

"When a build occurs, an automated test is run to validate the build," Intersimone says. "Then notifications go to all development teams and the build is automatically pulled over a Chinese wall to a large number of automated test virtual machines at our development centers." Automated and manual tests are done on the resulting build to verify the status, and emails go out to other team members after this process is completed. "All of this happens continuously during a project's development lifetime," he says.

Cloud development gotcha 6: It's easy to let the meter run unnecessarily on the cloud Another potential problem is wasting money on cloud fees. Developers can easily forget or neglect to turn off virtual machines they aren't using. "I've heard from some clients that let developers go wild with virtual machine resources that sometimes the developers would just leave stuff up and running, say over a weekend," Gartner's Knipp says. "When it was on an in-house, capitalized server, this was no big deal. But when it is on usage-metered, leased resources as with public cloud computing, this is a waste of money."

Knipp says he expects this to become a new challenge for enterprises as they roll out private cloud initiatives.

While there's little risk in getting a big, unexpected bill for developer virtual machine usage in a private cloud, "in a self-service, private IaaS environment, a developer can spin up VMs and never turn them off," Knipp says. "These will effectively eat up resources from machines that are not being effectively utilized and could result in the organization buying too much capacity as planning gets skewed."

Cloud development gotcha 7: Cloud licenses can contain surprising deployment restrictions Among the nontechnical issues with the cloud that can have an impact on development are licensing restrictions. Two years ago Kelly Services, a national temp agency, decided to use cloud-based development for many of its homegrown applications, with Salesforce.com's Force.com platform acting as the delivery vehicle.

Cloud development has brought benefits such as faster turnaround time on app development and lower costs, says Joe Drouin, CIO at Kelly Services. But the company also encountered some unexpected issues with licensing, specifically regarding what types of user seats it had and what limitations they carried. For example, a seat might have a set number of objects a user could access. As a result, "at some points we were surprised by what we could or couldn't do" with development, Drouin says.

Cloud development gotcha 8: Integration can be harder to troubleshoot Integrating new applications with existing ones can be a key part of the development process, and the cloud brings even more challenges from an integration perspective, Drouin says: "With cloud computing, companies typically don't have open access into their cloud providers' infrastructure, applications, and integration platforms."

Kelly has experienced performance issues between cloud-based applications and its on-premise systems as well as among multiple applications in the cloud. It's difficult to troubleshoot these issues because the company often can only track transactions in its own infrastructure, Drouin says.

To minimize integration issues, Kelly developers try to use cloud providers' APIs whenever possible; that's been fairly easy to do because many cloud providers expose their APIs, Drouin says.

Cloud development gotcha 9: The cloud's fast pace of change can be hard to keep up with IT services provider Avanade uses the Azure cloud platform from its part owner Microsoft, along with Microsoft development tools, to develop and test both internal and client work.

The familiarity of the development tools and the speed of the development and test environments have been pluses for the firm, says Graham Astor, director of global solutions at Avanade. But "being on a quickly evolving cloud development platform means it's necessary to update best practices frequently," he says.

Azure is on a two-month release cycle of performance and feature improvements, so Avanade meets monthly with members of the Microsoft product teams to get a heads-up on what's coming. Would others get that kind of access? "I have no idea," Knipp says, "but it is in Microsoft's interest to get as many consulting firms as possible on board with Azure, in order to drive adoption."

Despite the learning curve, cloud development is appealing Despite the potential challenges, for many organizations application development in the cloud rather than sticking with traditional methods makes sense, for the same reasons that cloud computing in general makes sense: elasticity of resources and cost, and reduced operational complexity, both of which lead to shorter completion time.

This article, "Cloud development: 9 gotchas to know before you jump in," was originally published at InfoWorld.com. Follow the latest developments in business technology news and get a digest of the key stories each day in the InfoWorld Daily newsletter. For the latest developments in business technology news, follow InfoWorld.com on Twitter.

Read more about application development in InfoWorld's Application Development Channel.

Copyright © 2011 IDG Communications, Inc.

1 2 Page 2
Page 2 of 2
Get the best of CSO ... delivered. Sign up for our FREE email newsletters!