Navigating the Cloud Computing Technical Interface
Because the cloud computing service market is so new, few applications have been built from the ground up for this new environment. So far, no corporate applications were built with this model in mind.
Organizations that already have well-designed interfaces between application and infrastructure components may find it easier to transition to the cloud. Companies that have moved to a service-oriented architecture (SOA) are well positioned to make the move.
With SOA, organizations build modular business services that include standardized interfaces. This modular approach is needed when approaching the highly distributed cloud environment. SOA is a good start; however, a lot of standardized interfaces will need to be developed for cloud service platforms in the coming years.
APIs and data transformations in cloud computing
A cloud’s Application Programming Interface (API) is the software interface that lets your company’s infrastructure or applications plug in to the cloud. This is perhaps the most important place for standardization.
Many vendors in the cloud space would like to claim overall leadership and control over the interfaces. Therefore, many different vendors are developing their own interfaces. This, in turn, means that customers are likely to be forced to support multiple APIs. Managing multiple APIs means that when applications are changed, there’s more programming involved; and there’s more potential for errors when too many APIs are supported.
Even if vendors agree to a set of API standards, there will be data transformation issues (as data moves from one physical machine to another). For an organization to easily build connections between its internal data center and the cloud, it must use standardized APIs and data transformation capabilities.
Data and application architecture in cloud computing
New internally created services that support the changing business’s changing demands must operate with cloud ecosystems. These services may need to migrate to and from the cloud. For example, a company might initiate a partnership that requires development and deployment in the cloud. This means that it will have to build an architecture that’s modular enough to allow services to move between various cloud platforms.
The consistency and flexibility of an SOA approach makes it a good fit for the cloud. In an SOA environment, software components are put into services or containers. These containers hold software that executes a specific task. After software exists within a container, it can be ported from one environment to another, which makes it easier to port into and out of the cloud.
Security in the cloud computing environment
Companies planning to use cloud services must be assured of tight, well-defined security services.
Many levels of security are required within a cloud environment:
Identity management: For example, so that any application service or even hardware component can be authorized on a personal or group role basis.
Access control: There also needs to be the right level of access control within the cloud environment to protect the security of resources.
Authorization and authentication: There must be a mechanism so the right people can change applications and data.
A comprehensive security infrastructure must be provided at all levels and types of cloud services. Developers also need tools that allow them to secure the services they design to be delivered in the cloud. Organizations need consistent security across their own data center environments that intersect with a cloud service.