Evolve Your Cloud

Nicholas Parks
7 min readJun 16, 2022

You can’t stand still

Photo by Nick Fewings on Unsplash

Organizations of various sizes from various industries are launching cloud adoption initiatives, programs, and pilots. As such, these organizations are encountering challenges that risk the success of a cloud adoption journey. Specifically around how to choose and deploy flexible technical architectures that enable business flexibility. A balancing act that can impact the success of any adopting initiative. This article demonstrates that an organization can use Evolutionary Architecture as an approach to mitigate risk in the adoption journey. Before we get to a real-world example, what is Evolutionary Architecture?

What is Evolutionary Architecture?

The community of technologists may have competing definitions of terms. However, when it comes to evolutionary architecture or (evolutionary design), there is agreement that it is an architectural approach that supports technology change in a deliberate, guided, gradual manner. This should not be confused with the process of creating a highly detailed architectural design. Then following that design activity with a phased plan to deliver said architecture over time. Instead, an organization develops architectural goals (not detailed design) to be achieved over time. Of course, there are several books on this subject.

Focusing on goals instead of fixed designs allows an organization to make point-in-time evaluations of the architecture’s ability to fulfill business goals. This enables adapting to the rapid changes in the business and technology environment. The evaluation process requires the development of fitness functions to evaluate the available options. A fitness function simply refers to a consistent almost algorithmic way to determine if a proposed architectural change is appropriate -“fit”. The use and development of the appropriate fitness functions will enable a more objective evaluation of the various options at each architectural infliction point. In the real-world example, we will see fitness functions in use.

Real-World Example 2015–2020

In this scenario, an organization completed a business strategy development exercise in 2014. In this exercise, they analyzed their marketplace position, the opportunities they could pursue, and what capabilities they need to possess to be successful. As part of that exercise, the organization realized migrating to the cloud is more than a cost-saving opportunity but an opportunity to innovate — pursue new business. However, after some organizational introspection, understood that they did not have robust IT capabilities in dimensions of headcount and budget and could not compete in talent acquisition. The organization understood its capability deficiency would be a liability by the end of the decade. The organization's unfamiliarity with the cloud meant they could not even conceive what architecture they would need. With the widespread belief in the business opportunity, they pursued an evolutionary approach to de-risk their adoption journey.

The organization did have a robust understanding of lean processes and developing metrics. This led to the creation of fitness functions (Note: this article uses fitness functions to align with literature on the topic but the enterprise in question did not call them that) centered around business goals and related metrics to track goal attainment. The fitness functions added some clarity to the business goal statements and were elaborations on the dimensions of people process and technology.

The fitness functions had four-component evaluators:

  • Business Goal = What does the business need to accomplish in the next year?
  • People = How can our organization deliver on the next business milestone (current skills, ability to obtain skills, headcount)
  • Process = Can we improve a process to improve business goal attainment
  • Technology = Will this change enable our people and processes?

Next, we will see how using fitness functions allowed the organization to evolve its cloud across phases. The function descriptions are condensed for brevity.

Phase 0: Just Use the Cloud

  • Business Goal: Have existing production workload in the cloud
  • People: Can our organization operate a workload in the cloud
  • Process: What processes are needed in the cloud
  • Technology: What solutions will get our target workloads in the cloud
Too many acronyms? Google is your friend.

Result:

Migration of a mostly commercial-off-the-shelf software portfolio, so the organization can focus on understanding how to operate a completely known solution in the cloud. Solution leverage AWS EFS and Storage Gateway as the COTS solution used similar technology on-premise. Thus, a happy coincidence of achieving cloud-based data backup capabilities

Phase 1: Improve Delivery

  • Business Goal: Develop New Cloud Operational Capabilities to develop new in-house applications
  • People: Adopt a continuous improvement mindset — Kaizen
  • Process: Identify processes that support individuals' ability to deliver
  • Technology: Identify technology to enable continuous improvement
Trickle towards cloud-native

Result:

Adopted the “code” family of solutions from AWS as part of a Continuous Delivery initiative. Embraced containers as part of building software as opposed to acquiring COTS solutions.

Phase 2: Manage Less

  • Business Goal: Optimize to Pivot
  • People: Unlock our growing IT organization to focus on the customer and marketplace responsiveness
  • Processes: Enable autonomy
  • Technology: What technology changes enable autonomy
More Cloud Services but paradoxically less to manage

Result:

They started to adopt more stateless micro-services. Especially for user experience and other front-ends. User experience became single-page applications and Lambda functions with container back-ends for long-running processes or integrations with remaining on-premise solutions. Only a few COTS applications remain with some replaced with SaaS solutions where appropriate.

Phase Future: Pursue Value

Going forward, the organization is pursuing scalable architecture patterns, like event-driven, to support the desire to expand into new markets. The spirit of Kaizen is supported in all dimensions of people, processes, and technology.

Implications

Choosing to become evolutionary solved many challenges for the enterprise. It prevented the organization from over-committing to a single technical direction. It also allowed the organization to skill up appropriately in a competitive hiring environment. Most importantly, the organization was able to make technical choices aligned with what the business is capable of executing.

A few key points from this particular enterprise journey:

  1. Technology is viewed as an enabler of people and processes. No technology for technology's sake.
  2. The organization was Lean aware which means everything about how the business function is re-viewable and improvable — “this is how we do this for now” and not “this is how we always do it”.
  3. The fitness functions made decision-making rationale visible to everyone.

For business executives

Business leaders will need to focus on making strategy executable across all levels of the enterprise. One of the findings from the initial strategy exercise was a disconnect between the poetic waxing of the C-suite and the activities of the rank and file. This organization's specific solution was special corporate events. The primary business activity at this event where the value-stream mapping exercises.

The value stream mapping activities allowed everyone across the enterprise to “see” the tribal knowledge and ceremonies that informed how the business functioned (or did not function).

With everyone involved in this activity, distance colleagues could see how they interacted in the value chain. Sometimes for the very first time! The fitness functions came from these events. They also provided the social glue and reigned in the pie-in-the-sky dreams of the c-suite.

For Technologists

The business executives are depending on their technologists to align technology choices with business outcomes. This may mean the shiny new technology toy may not be the best solution now but maybe the best solution later. In this particular journey, the question that dominated the technologist conversation was not “we can get X to work” but rather “can we operationalize X so we can then work on the next thing”. This avoids the trap of accidentally over-committing to a technology stack by promoting a more value-driven R&D process. As this particular enterprise was performing the first phase (phase 0), there were R&D activities that supported the third phase (coincidently).

Parting Thoughts

Becoming evolutionary is just another way to frame how you and your organization can adapt to change. Whether you are adopting the cloud or any new technology as a business enabler. Fitness functions make the decision-making consistent and transparent to all involved. The difficulty will be in creating fitness functions that are relevant to one’s enterprise and by no measure does this article recommend copying the examples herein.

You can’t stand still.

story originally published in 2020 from a defunct blogger site, formatted for medium

--

--