Welcome!

Related Topics: @CloudExpo, Java IoT, Microservices Expo, Linux Containers, @BigDataExpo, SDN Journal

@CloudExpo: Blog Post

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 director/senior enterprise architect at CGI. He brings 35 years of technology experience in designing, building, and implementing large complex solutions. He has significant expertise in systems integration, Internet/intranet, and cloud technologies. He has delivered projects in various 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.


Latest Stories
"We are an all-flash array storage provider but our focus has been on VM-aware storage specifically for virtualized applications," stated Dhiraj Sehgal of Tintri in this SYS-CON.tv interview at 19th Cloud Expo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Choosing the right cloud for your workloads is a balancing act that can cost your organization time, money and aggravation - unless you get it right the first time. Economics, speed, performance, accessibility, administrative needs and security all play a vital role in dictating your approach to the cloud. Without knowing the right questions to ask, you could wind up paying for capacity you'll never need or underestimating the resources required to run your applications.
Web Real-Time Communication APIs have quickly revolutionized what browsers are capable of. In addition to video and audio streams, we can now bi-directionally send arbitrary data over WebRTC's PeerConnection Data Channels. With the advent of Progressive Web Apps and new hardware APIs such as WebBluetooh and WebUSB, we can finally enable users to stitch together the Internet of Things directly from their browsers while communicating privately and securely in a decentralized way.
WebRTC is about the data channel as much as about video and audio conferencing. However, basically all commercial WebRTC applications have been built with a focus on audio and video. The handling of “data” has been limited to text chat and file download – all other data sharing seems to end with screensharing. What is holding back a more intensive use of peer-to-peer data? In her session at @ThingsExpo, Dr Silvia Pfeiffer, WebRTC Applications Team Lead at National ICT Australia, looked at differ...
Adding public cloud resources to an existing application can be a daunting process. The tools that you currently use to manage the software and hardware outside the cloud aren’t always the best tools to efficiently grow into the cloud. All of the major configuration management tools have cloud orchestration plugins that can be leveraged, but there are also cloud-native tools that can dramatically improve the efficiency of managing your application lifecycle. In his session at 18th Cloud Expo, ...
Security, data privacy, reliability and regulatory compliance are critical factors when evaluating whether to move business applications from in-house client hosted environments to a cloud platform. In her session at 18th Cloud Expo, Vandana Viswanathan, Associate Director at Cognizant, In this session, will provide an orientation to the five stages required to implement a cloud hosted solution validation strategy.
The security needs of IoT environments require a strong, proven approach to maintain security, trust and privacy in their ecosystem. Assurance and protection of device identity, secure data encryption and authentication are the key security challenges organizations are trying to address when integrating IoT devices. This holds true for IoT applications in a wide range of industries, for example, healthcare, consumer devices, and manufacturing. In his session at @ThingsExpo, Lancen LaChance, vic...
With the proliferation of both SQL and NoSQL databases, organizations can now target specific fit-for-purpose database tools for their different application needs regarding scalability, ease of use, ACID support, etc. Platform as a Service offerings make this even easier now, enabling developers to roll out their own database infrastructure in minutes with minimal management overhead. However, this same amount of flexibility also comes with the challenges of picking the right tool, on the right ...
With all the incredible momentum behind the Internet of Things (IoT) industry, it is easy to forget that not a single CEO wakes up and wonders if “my IoT is broken.” What they wonder is if they are making the right decisions to do all they can to increase revenue, decrease costs, and improve customer experience – effectively the same challenges they have always had in growing their business. The exciting thing about the IoT industry is now these decisions can be better, faster, and smarter. Now ...
"Splunk basically takes machine data and we make it usable, valuable and accessible for everyone. The way that plays in DevOps is - we need to make data-driven decisions to delivering applications," explained Andi Mann, Chief Technology Advocate at Splunk and @DevOpsSummit Conference Chair, in this SYS-CON.tv interview at @DevOpsSummit at 19th Cloud Expo, held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA.
Security, data privacy, reliability, and regulatory compliance are critical factors when evaluating whether to move business applications from in-house, client-hosted environments to a cloud platform. Quality assurance plays a vital role in ensuring that the appropriate level of risk assessment, verification, and validation takes place to ensure business continuity during the migration to a new cloud platform.
In his session at @DevOpsSummit at 19th Cloud Expo, Robert Doyle, lead architect at eCube Systems, will examine the issues and need for an agile infrastructure and show the advantages of capturing developer knowledge in an exportable file for migration into production. He will introduce the use of NXTmonitor, a next-generation DevOps tool that captures application environments, dependencies and start/stop procedures in a portable configuration file with an easy-to-use GUI. In addition to captur...
Who are you? How do you introduce yourself? Do you use a name, or do you greet a friend by the last four digits of his social security number? Assuming you don’t, why are we content to associate our identity with 10 random digits assigned by our phone company? Identity is an issue that affects everyone, but as individuals we don’t spend a lot of time thinking about it. In his session at @ThingsExpo, Ben Klang, Founder & President of Mojo Lingo, discussed the impact of technology on identity. Sho...
Fact is, enterprises have significant legacy voice infrastructure that’s costly to replace with pure IP solutions. How can we bring this analog infrastructure into our shiny new cloud applications? There are proven methods to bind both legacy voice applications and traditional PSTN audio into cloud-based applications and services at a carrier scale. Some of the most successful implementations leverage WebRTC, WebSockets, SIP and other open source technologies. In his session at @ThingsExpo, Da...
A critical component of any IoT project is what to do with all the data being generated. This data needs to be captured, processed, structured, and stored in a way to facilitate different kinds of queries. Traditional data warehouse and analytical systems are mature technologies that can be used to handle certain kinds of queries, but they are not always well suited to many problems, particularly when there is a need for real-time insights.