Welcome!

Microservices Expo Authors: David Sprott, Elizabeth White, Liz McMillan, Daniel Khan, Lori MacVittie

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 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.


@MicroservicesExpo Stories
Right off the bat, Newman advises that we should "think of microservices as a specific approach for SOA in the same way that XP or Scrum are specific approaches for Agile Software development". These analogies are very interesting because my expectation was that microservices is a pattern. So I might infer that microservices is a set of process techniques as opposed to an architectural approach. Yet in the book, Newman clearly includes some elements of concept model and architecture as well as p...
Ovum, a leading technology analyst firm, has published an in-depth report, Ovum Decision Matrix: Selecting a DevOps Release Management Solution, 2016–17. The report focuses on the automation aspects of DevOps, Release Management and compares solutions from the leading vendors.
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, ...
SYS-CON Events announced today that LeaseWeb USA, a cloud Infrastructure-as-a-Service (IaaS) provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. LeaseWeb is one of the world's largest hosting brands. The company helps customers define, develop and deploy IT infrastructure tailored to their exact business needs, by combining various kinds cloud solutions.
SYS-CON Events announced today that Venafi, the Immune System for the Internet™ and the leading provider of Next Generation Trust Protection, will exhibit at @DevOpsSummit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Venafi is the Immune System for the Internet™ that protects the foundation of all cybersecurity – cryptographic keys and digital certificates – so they can’t be misused by bad guys in attacks...
No matter how well-built your applications are, countless issues can cause performance problems, putting the platforms they are running on under scrutiny. If you've moved to Node.js to power your applications, you may be at risk of these issues calling your choice into question. How do you identify vulnerabilities and mitigate risk to take the focus off troubleshooting the technology and back where it belongs, on innovation? There is no doubt that Node.js is one of today's leading platforms of ...

Let's just nip the conflation of these terms in the bud, shall we?

"MIcro" is big these days. Both microservices and microsegmentation are having and will continue to have an impact on data center architecture, but not necessarily for the same reasons. There's a growing trend in which folks - particularly those with a network background - conflate the two and use them to mean the same thing.

They are not.

One is about the application. The other, the network. T...

DevOps at Cloud Expo – being held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Am...
This is a no-hype, pragmatic post about why I think you should consider architecting your next project the way SOA and/or microservices suggest. No matter if it’s a greenfield approach or if you’re in dire need of refactoring. Please note: considering still keeps open the option of not taking that approach. After reading this, you will have a better idea about whether building multiple small components instead of a single, large component makes sense for your project. This post assumes that you...
The 19th International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Digital Transformation, Microservices and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding business opportuni...
Before becoming a developer, I was in the high school band. I played several brass instruments - including French horn and cornet - as well as keyboards in the jazz stage band. A musician and a nerd, what can I say? I even dabbled in writing music for the band. Okay, mostly I wrote arrangements of pop music, so the band could keep the crowd entertained during Friday night football games. What struck me then was that, to write parts for all the instruments - brass, woodwind, percussion, even k...
In his session at @DevOpsSummit at 19th Cloud Expo, Yoseph Reuveni, Director of Software Engineering at Jet.com, will discuss Jet.com's journey into containerizing Microsoft-based technologies like C# and F# into Docker. He will talk about lessons learned and challenges faced, the Mono framework tryout and how they deployed everything into Azure cloud. Yoseph Reuveni is a technology leader with unique experience developing and running high throughput (over 1M tps) distributed systems with extre...
SYS-CON Events announced today that Isomorphic Software will exhibit at DevOps Summit at 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Isomorphic Software provides the SmartClient HTML5/AJAX platform, the most advanced technology for building rich, cutting-edge enterprise web applications for desktop and mobile. SmartClient combines the productivity and performance of traditional desktop software with the simp...
Internet of @ThingsExpo, taking place November 1-3, 2016, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with the 19th International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world and ThingsExpo Silicon Valley Call for Papers is now open.
Sharding has become a popular means of achieving scalability in application architectures in which read/write data separation is not only possible, but desirable to achieve new heights of concurrency. The premise is that by splitting up read and write duties, it is possible to get better overall performance at the cost of a slight delay in consistency. That is, it takes a bit of time to replicate changes initiated by a "write" to the read-only master database. It's eventually consistent, and it'...
Node.js and io.js are increasingly being used to run JavaScript on the server side for many types of applications, such as websites, real-time messaging and controllers for small devices with limited resources. For DevOps it is crucial to monitor the whole application stack and Node.js is rapidly becoming an important part of the stack in many organizations. Sematext has historically had a strong support for monitoring big data applications such as Elastic (aka Elasticsearch), Cassandra, Solr, S...
If you are within a stones throw of the DevOps marketplace you have undoubtably noticed the growing trend in Microservices. Whether you have been staying up to date with the latest articles and blogs or you just read the definition for the first time, these 5 Microservices Resources You Need In Your Life will guide you through the ins and outs of Microservices in today’s world.
This digest provides an overview of good resources that are well worth reading. We’ll be updating this page as new content becomes available, so I suggest you bookmark it. Also, expect more digests to come on different topics that make all of our IT-hearts go boom!
Keeping pace with advancements in software delivery processes and tooling is taxing even for the most proficient organizations. Point tools, platforms, open source and the increasing adoption of private and public cloud services requires strong engineering rigor – all in the face of developer demands to use the tools of choice. As Agile has settled in as a mainstream practice, now DevOps has emerged as the next wave to improve software delivery speed and output. To make DevOps work, organization...
There's a lot of things we do to improve the performance of web and mobile applications. We use caching. We use compression. We offload security (SSL and TLS) to a proxy with greater compute capacity. We apply image optimization and minification to content. We do all that because performance is king. Failure to perform can be, for many businesses, equivalent to an outage with increased abandonment rates and angry customers taking to the Internet to express their extreme displeasure.