Cloud Apps: The Seven Deadly Sins
Applications are the heart and soul of winning new cloud business, securing recurring revenue, and ensuring customer satisfaction.
As cloud computing evolves, it's becoming clear that most applications in the future are going to be composite by definition. Instead of depending on a set of well-defined services running on a local server, they will rely increasingly on any number of remote services in the cloud. But building those kinds of composite applications can be problematic because it's not like a developer can call the providers of those services and ask them for time on their machine in order to see how well their application performs.
According to Wayne Ariola, vice president of strategy for Parasoft, a provider of application testing tools, the only way to practically develop applications for the cloud is to rely on frameworks for application testing that allow them to create a virtual instance of those services. Parasoft refers to this capability as service virtualization, which Ariola says the company originally developed to help developers create complex applications based on service-oriented architectures (SOA).
It's difficult enough to ask an IT operations team for server time to build a composite application that, for example, may call on a COBOL service running on a mainframe. In the age of the cloud, it is almost an impossibility to get that kind of access. Service virtualization allows the developer team to create a virtual instance of that service that allows them to get a much better understanding of how their cloud application is going to perform in the real world.
Ariola says there's a lot more riding these days on cloud computing applications, so the risks associated with building these applications is just that much greater. At the same time, the number of these applications that are being built compared to SOA applications for the enterprise is exponentially greater. With so much at stake, Ariola says it doesn't make much sense to incur additional risk when a more disciplined approach that uses well-establish virtualization technologies is readily available.
IT organizations live in an age where the popular perception is that cloud computing is making everything easier to manage. In reality, the more touch points there are, the more things there are that can go terribly wrong.