Observability has become a common topic among DevSecOps, and a must-have for mission-critical production runtime environments. Furthermore, application architecture and development consider observability as a severe design principle. As a result, observability becomes crucial, and the collected data becomes an input to the observability platform for processing and delivering value. We will not focus on this typical behavior today but refer to this article if you would like to find more information on runtime observability.
‘An Enterprise is a complex adaptive system.’ necessitating observability at multiple levels and not just for application runtimes, not unlike our human body or a commercial aircraft. Let’s explore these two examples in more detail.
Human Complexity
The human body is a complex adaptive system, an excellent metaphor for understanding system-wide observability. There are many observability points in the human body, allowing us to constantly sense our environment, observe, make decisions, and learn. The largest organ in our body—the skin—is a unique system of observability and programmability. Consider how we learned about the sensation of heat for the first time, probably as toddlers. We approached a fireplace or a hot surface, and our skin detected danger, prompting us to pull back in time and then adjust to avoid the threat. Sometimes, curiosity got the better of us, and we learned some things the hard way. We registered the symbolic representation of a fireplace or the hot surface and programmed our behavior to avoid them. As we grew older, we learned not to limit ourselves to a single sense and combined it with our other sensors such as eyes, ears, and nose.
Let’s get back to the enterprises and look at a few examples of plug-in observability outside a runtime environment. System thinking and digital supply chain are two crucial concepts to utilize here. System thinking allows us to look at the business in a holistic view while the digital supply chain provides multiple observability points in the product or service delivery. On the other hand, programmability allows us to implement the strategy identified.
Business architecture to the rescue
We have examined business architecture in our previous posts, and we can make a strong case for it in this example. Imagine storing the system’s objectives and expected results in an application, a simple database, or a file system as name-value pairs. The results are gathered through runtime observability. Now you can match the objectives and key results (OKRs) programmatically with actual data. Not only that, you can set the notifications, predict certain things using machine learning (ML), and forecast using artificial intelligence (AI). This increases the agility of the system and allows for improvement iteratively by referring to facts (not assumptions).
Reflect on the development phase of the product or service. Assume that you capture source commits and input them into the observability layer. A scrum master noticed the commits coming from a lab at midnight during the production cycle. Even they can identify how many developers are involved. So how about sending pizza and coffee to that team – isn’t it a motivation factor and a productivity booster? In addition to that, you can compute how that particular effort affected the overall delivery timeline.
Test automation is another critical success factor in modern software development. Feeding the test results into the observability layer and correlating with key performance indicators (KPIs). That allows you to evaluate the effect on the delivery timeline programmatically.
At the same time, modern organizations have a distributed technical architecture built using domain-driven, microservice, and cloud-native principles and organization architecture with autonomous (AKA two pizza) functional teams consisting of many remote workers. A lot of moving components! Enabling observability to every stage of the digital supply chain will allow providing governance, making early (but intelligent) calls on rapid application development, and increasing the productivity of the team members.
Commercial aircraft are just like humans
Another example of a complex adaptive system is an airplane. We receive copious observability points from the cockpit, galley, passenger area, cargo area, and the various internal components. Not only that, we receive profuse information from the environment (outside the aircraft) – from external sensors, traffic control centers, operators, and other planes on air. Pilots and the crew adjust their decisions that help to safely take the passengers to the destination on time based on the information gathered from the entire ecosystem, which feeds into the observability engine that provides real-time and near real-time notifications.
The same scenario applies to enterprises. Observability events must be captured within the organization and the partner ecosystem to make accurate and timely decisions. This dynamic environment has constant and consistent learning, adjustment, modification, and programmability.
It’s all about people and culture
Both the analogies emphasize the need for an automated, programmable connected digital supply chain. Digitization (moving from physical to digital) and digitalization (connecting digital systems) enablers this process. While we are working on providing digital experiences to external consumers such as customers and partners, we have to bring the digital experiences internally to the employees. While observability enhances the digital experience, it allows making accurate decisions based on data. Everyone in the organization will benefit from the real-time, personalized, and predictive information delivered from the observability layer. Enterprises must invest in business architecture and observability for a successful and sustainable digital transformation. But we cannot declare victory with technology and architecture alone. People and culture are an integral part of an enterprise. Culture forms the engine that enables people to become value creators. People and culture will be the focus for enterprises in 2022.