I watched the latest video blog from Amanda Congdon, formerly of Rocketboom, now with ABC News. In this video, Amanda is in a dairy farm in Vermont. What makes this dairy farm unique is that it is entirely cow powered. They harvest the by-products of the cows, extract the methane gas, which powers a turbine that generates enough electricity for the farm with plenty leftover. The remnants of the by-products are separated into liquid by-products and solid by-products. The liquid by-products go to a lagoon, the solid by-products wind up becoming bedding for the cows. I found it very cool.
So here’s the analogy to SOA. You may find it a bit of a stretch, but everyone’s entitled to their opinion. Personally, I like to look for parallels in the real world to how our IT systems should behave. In the past world of dairy farming, I’m sure there was a time where the farmer was concerned with one thing: producing milk. Are there costs associated with it? Sure. Are there by-products? Absolutely. But in the end, the farmers really just cared about producing and selling milk. Now, the practice has progressed to where the system is a linear system with caw feed at the beginning and milk at the end, it is a closed-loop environment where even the by-products are turned around and leveraged in the process. Where are we at with IT systems today? I’d argue that most enterprises are still in the linear mode of thinking. You could even argue that it goes beyond IT, and into the business thinking, but being an IT guy, I’ll limit my assumptions there. IT produces solutions, and then forgets about them unless a user complains or some alarm goes off. If an organization takes on SOA, but still operates with this mentality, the only thing that has changed is that they are producing services instead of applications.
If an IT organization (and even the business) wants to mature and continue to wisely invest its IT dollars, the thinking has to stop being linear and start focusing on continued improvement. When a service goes into production, monitoring needs to go beyond just whether or not the service is available or not. Metrics (by-products) must be extracted from the process, and incorporated back into the planning process to continually improve the performance and behavior of IT systems. While it may begin with more operational metrics such as response time, there’s no reason that it can’t begin to involve business metrics and business events. These business events and metrics are processed by our analytics engines (business intelligence) and cause incorporated back into the IT systems themselves. Sometimes it may be a manual process where future improvements are justified through the analysis of usage metrics, other times it may be more automated where resources are automatically provisioning according to external factors that have been shown to increase demand. In any case, the IT operating model needs to be a loop, rather than a line. This isn’t anything new, as the concept of continual business improvement has been around for a long time. The thing that’s new is that it needs to be in the mindset of all of IT, all the way down to the developer writing the next service. While I’m sure those cows in Vermont don’t know that their manure is being used to keep their living space nice and cozy, the IT worker does need to know that by exposing metrics, whether IT centric or business centric, is a key to creating a feedback loop for continual improvement to the IT systems.