Welcome!

SOA & WOA Authors: Adine Deford, Liz McMillan, Pat Romanski, Dana Gardner, Elizabeth White

Related Topics: Cloud Expo, Java, SOA & WOA, Linux, Big Data Journal, SDN Journal

Cloud Expo: Article

How Are You Architecting for the Cloud – Science, Art or by Accident?

Good architecture is a successful combination of science and art

When was the last time you had a technology conversation that did not include the word ‘cloud' in it? Gartner predicts that by 2016 the bulk of IT spend will be for the cloud. Gartner also believes that ‘nearly half of large enterprises will have hybrid cloud deployments by the end of 2017.' Cloud technology continues to evolve at breakneck speeds and business wants to move to the cloud equally as fast. This presents significant challenges for technologists who need ensure the business doesn't go crashing into a brick wall while moving at these speeds.

Don't Let It Be by Accident
I will lead with a personal bias. I have been brought into too many clients over the years to help solve problems, only to discover that the root cause was accidental architecture. You may ask, how does one create an architecture by accident? In Beware the Accidental Cloud Architecture, Bruce Tierney (a director for Oracle's SOA Suite), describes it quite well. He discusses how many lines-of-business (LOB) will outsource applications and installations to a variety of SaaS vendors. This is frequently done bypassing the IT organization entirely.

The net result is the "evolution of an architecture that was not planned but grew ad-hoc by incrementally adding one new connection after another to a cloud vendor into a new ‘accidental cloud architecture.'" The challenge becomes trying to integrate these ‘siloed' applications from different vendors with different environments and tools. The integration becomes ad-hoc. The costs inherent in dealing with the results of an accidental architecture far outweigh any perceived benefits.

The perception for many LOB is that by going to the cloud they no longer need IT or architecture. In an earlier blog, Why do I need an architect? I discussed the on-again / off-again viewpoints on the need for architecture. The client I mentioned in that blog was among those that suffered from an accidental architecture. As many have heard me say before, no technology negates the need for proper planning and design. Someone must always be looking at the bigger picture, or failure will surely follow.

If we can agree we don't want our architectures to be accidental, we can now discuss a long-standing debate: Is architecture a science or an art?

The Argument for Science
At this point, you may be saying ‘of course architecture is a science, it's technology.' First, I would argue that architecture is more than just technology. Technology is a key component that architecture addresses, but architecture's key driver is the business, and includes process, management and discipline as well as just technology. At the risk of sounding clichéd, whether it's a science or not also depends on how you define science. Tom Graves recently wrote a blog discussing this subject, The Science of Enterprise Architecture. In it he puts forth a very compelling argument of ‘science as portrayed' vs ‘science as practiced,' the inherent differences, and how they apply to architecture.

For those expecting architecture to be ‘science as portrayed,' there is an implied absolute certainty and control that is not realistically achievable. ‘Science as practiced' is more real-world and applicable in architecture. Every solution and architecture is always a series of trade-offs. There are no perfect solutions that you can be absolutely certain about. You can achieve a level of effective certainty and control. These are the tradeoffs that are made during design. By treating architecture as a ‘science as practiced,' you will achieve much higher levels of control and certainty than from the accidental architectures.

One must be sure to set the proper expectations. Absolute certainty will not be achieved. Effective certainty can be achieved. It provides significant benefits over accidental architectures where there will be no certainty of outcomes.

The Argument for Art
I will admit another personal bias here. There is a part of me that views architecture (and technology in general) as a form of creativity and art. How many of us, when explaining or working on an architecture with a group, gravitate to a white board and start drawing? Recently I was having this discussion on Twitter with several folks. One of them, Ruth Malan pointed me to an interesting article in the NY Times, Architecture and the lost art of drawing. The article is about building architecture, but I found it very relevant to technology architecture as well.

There was one quote in particular that struck me, ‘Drawings are not just end products: they are part of the thought process of architectural design. Drawings express the interaction of our minds, eyes and hands.' I find that statement true of technology architecture as well. Architecting systems is a science, it is a discipline, and it is a process. That process is a creative one. This may sound counter to it being a science and discipline, but I think it's part of the balance that helps produce quality systems. When trying to solve complex problems, how often have you been encouraged ‘to think outside the box,' or to be creative? That to me is asking for the artist in you to emerge.

Are Your Architectures Science, Art or Accidental?
I sincerely hope we can all agree - no one wants accidental architectures. As you can tell, I view good architecture as a successful combination of science and art. In the ever-growing and expanding cloud universe, I find the balance even more critical. Science as practiced gives us the level of effective certainty needed to provide robust and stable systems. Creativity enables us to think outside the box, providing us with the opportunity to make leaps in leveraging technology to the benefit of the business that might not have been achieved otherwise.

More Stories By Ed Featherston

Ed Featherston is a senior enterprise architect and director at Collaborative Consulting. He brings more than 34 years of information technology experience of designing, building, and implementing large complex solutions. He has significant expertise in systems integration, Internet/intranet, client/server, middleware, and cloud technologies, Ed has designed and delivered projects for a variety of industries, including financial services, pharmacy, government and retail.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.