@CloudExpo Authors: Pat Romanski, Elizabeth White, Liz McMillan, Yeshim Deniz, Zakia Bouachraoui

Related Topics: @CloudExpo, Microservices Expo

@CloudExpo: Article

Cloud Transformation Factory

Industrialization of Cloud Transformation

Factory Ideas in the IT Industry
The idea to industrialize Information Technology operations like an assembly line in a factory is not new. In software development, typically a software factory is about forming a specialized organizational structure that creates an assembly of subdivisions each of which specializes in aspecific aspects of software development, and the overall organization works much like an assembly line in a manufacturing industry.

Several of the software vendors like Microsoft  have implemented support for software factories in their integrated development tools like Visual Studio. As part of  Patterns and Practices, Microsoft has come up with a vision for software factory realization of many of the common software development paradigms. One such being the Smart Client Software Factory.

Many of these software development factories have built their concept with a set of

  • Reference implementation
  • Quick starts
  • How to ropics
  • Best practices repository
  • Fine-grained building blocks that can be chained together
  • Template or Model driven development process where by each team is dependent on the standard artifacts produced by other teams
  • Common integrated tools

Factory Concept in Cloud Transformation
With the whole concept of cloud computing aimed at optimization and built around the lean manufacturing concept of manufacturing industries, bringing the concept of cloud transformation factories will be of the highest value to enterprises, which will provide an effective path for cloud transformation. Some of the aspects like self-servicing,  automation and the availability of standard  reference architectures further strengthens the case for cloud transformation factories.

The following are important supporting cases for implementing Factories for Cloud Transformation, which fits well with the benefits of Cloud Computing.

  • Cloud transformation is a multi-step process and each step depends on the successful execution of prior steps
  • The entire operation is aimed at optimization, because CXOs won't buy into the case of cloud transformation, resulting in a 30% a CAPEX and OPEX benefits for them, while the transformation itself will make an 100% increase in their development costs
  • Stress on automation and self-service makes it easier for independent teams to work in a factory-like process
  • Emergence of reference architectures and best practices will benefit from a factory framework repository

Building Blocks of Cloud Transformation Factory
The following services could be a part of the cloud transformation factory, so that each of the steps can be executed like a factory assembly line with well-defined documentation and output standards from each step that can be fed into the next step.

  • Cloud Assessment Services: These consist of evaluations of existing applications for suitability to cloud. Typically most cloud assessment assignments create detailed check lists, workshops and questionnaires; the output of this would be reports on which applications can move to cloud.
  • Cloud Platform Services: With multiple choices for the cloud platform available, there are multiple decisions to be made between internal private cloud, public clouds, and whether SaaS services needs to be procured and other orchestration needs. So choosing a cloud platform that can host the application in scope will in itself be a separate service. There are lot of self-service tools available in the public clouds, but still having the platform selection and provisioning ready for a pilot will be key tasks.
  • Cloud Code Migration Services: Movement of a data center application to cloud will definitely lead to code changes and in some cases changes to the architecture of the system. Even the simplistic scenarios of moving from .NET to Windows Azure most times lead at least to minimal code changes. Most of the time, we may get rid of some legacy code and replace them with a SaaS-based service call or link them from other services. So getting a legacy code as an input and making it into a form that can be hosted on the Cloud Platform identified in the step 2 above will be the next step in the assembly process.
  • Cloud Integration Services: Invariably we won't find any enterprise application that does not interact with others and be standalone, hence even after movement to cloud applications need to continuously integrate with existing legacy application both in-bound and outbound. These require a set of tools and ETL (Extraction, Transformation and Loading) options. Cloud frameworks like Windows Azure do provide a lot of tools in this regard, however, this will be one important aspect of the Cloud Transformation assembly, until all the applications are migrated to cloud.
  • Cloud Deployment & Monitoring Services: While we can quickly get to a pilot cloud environment by getting a virtual image from a public cloud, a production-class cloud infrastructure requires much planning. We need to be careful in choosing the backup, recovery, upgrade and availability options. Even though these services are out-of-the-box in cloud, it is up to the ‘Cloud Deployment Service' to choose the most appropriate ones.

Also once deployed, Cloud applications need to be monitored using the new APIs and agents provided by the cloud provider. These require a lot of initial preparatory work, but  they are repetitive in nature for further deployments and hence a factory can be of much value here.

The following diagram provides a conceptual view of the Cloud Transformation Factory that can be used for efficient transformation of applications to the cloud.

Factories in the software development process have been one of the concepts aimed at  economies of scale and economics of scope, by decreasing the overall cost of development. With the cloud platform being an attraction mainly for CAPEX and OPEX reduction, we see a huge potential for bringing up Cloud Migration Factories by various organizations.

If cloud computing platform vendors can bring up more tools for the Cloud Migration Factory, much like the ‘Patterns and Practices Group' Microsoft has come up with for Smart Client, this concept will be strengthened further.

More Stories By Srinivasan Sundara Rajan

Highly passionate about utilizing Digital Technologies to enable next generation enterprise. Believes in enterprise transformation through the Natives (Cloud Native & Mobile Native).

CloudEXPO Stories
A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great deals to great conferences, helping you discover new conferences and increase your return on investment.
Using new techniques of information modeling, indexing, and processing, new cloud-based systems can support cloud-based workloads previously not possible for high-throughput insurance, banking, and case-based applications. In his session at 18th Cloud Expo, John Newton, CTO, Founder and Chairman of Alfresco, described how to scale cloud-based content management repositories to store, manage, and retrieve billions of documents and related information with fast and linear scalability. He addressed the challenges of scaling document repositories to this level; architectural approaches for coordinating data; search and storage technologies, Solr, and Amazon storage and database technologies; the breadth of use cases that modern content systems need to support; how to support user applications that require subsecond response times.
Poor data quality and analytics drive down business value. In fact, Gartner estimated that the average financial impact of poor data quality on organizations is $9.7 million per year. But bad data is much more than a cost center. By eroding trust in information, analytics and the business decisions based on these, it is a serious impediment to digital transformation.
With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale or of automatically managing the elasticity of the underlying infrastructure that these solutions need to be truly scalable. Far from it. There are at least six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments. In this presentation, the speaker will detail these pain points and explain how cloud can address them.
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portability. In this session we'll describe best practices for "configuration as code" in a Kubernetes environment. We will demonstrate how a properly constructed containerized app can be deployed to both Amazon and Azure using the Kublr platform, and how Kubernetes objects, such as persistent volumes, ingress rules, and services, can be used to abstract from the infrastructure.