Welcome!

Microservices Expo Authors: Flint Brenton, Automic Blog, AppDynamics Blog, Liz McMillan, Sujoy Sen

Related Topics: Microservices Expo, Java IoT, Agile Computing, @CloudExpo, @BigDataExpo, SDN Journal

Microservices Expo: Blog Feed Post

Connected Architecture for a Connected Planet

Or how to connect the architecture dots to support a smart connected planet

Or how to connect the architecture dots to support a smart connected planet.

Introduction
The notion of a connected planet is far from new. However, the number of connections as illustrated in figure 1 is growing at an exponential rate, and it is fast becoming a reality in which many organizations must operate.

However, I doubt many organizations are preparing for this in a systematic way. More likely, experience suggests that dozens of connected ‘solutions' will permeate the organization via myriad routes and just add to the complexity of the business and IT landscape, becoming yet more spaghetti that someone is left to untangle.

Architecture is key to dealing with this. However, architectural practices must evolve to themselves become more connected, and not a set of isolated disciplines as they are often practiced today. Hence, in this note as well as considering the challenges and opportunities provided by the connected planet, I outline the role of connected architecture.

The Connected Planet
The looming challenge, or for some the opportunity, facing organizations is how they cope with the scenario shown in figure 1.

Figure 1 - The Connected Planet

Namely, that there will be

  • Trillionsof connected things, sometimes dumb but increasingly smart
  • Used by billionsof people, socializing and interacting to evaluate and rate you, your products, prices, and competitors.
  • Generating quadrillionsof messages representing quadrillions of events, some significant but many insignificant
  • Connected to millions of APIs and services, hosted in the cloud
  • Accessing and creating petabytes of information, both current and historical

This is a scenario I first documented back in a blog in2009 [1]. IDC talk about this as the "3rd platform, built on mobile devices and apps, cloud services, mobile broadband networks, big data analytics and social technologies" [2], and paint a scenario in their research that reads remarkably similar to the above.

Winners and Losers on the Connected Planet
The key issue for organizations will be

  • How does the business cope with information overload, or derive value from it?
  • How does IT deliver business solutions that manage the resulting transaction and information explosion, in a cost-effective manner?

The winners in this scenario will be those that exhibit the characteristics outlined in Table 1.

Winners are:
Constantly Connected With their Customers. Anywhere, Anytime, Anyhow
Constantly Engaged To help customers (and themselves) make informed decisions
Agile Responsive to change Creating new opportunities
Decoupled Provider from Consumer Solution from Technology Application from Process from Capability
Responsive Sensing and predicting events Correlating events Autonomic response
Excellent Six-Sigma products and processes
Efficient Automated and Autonomic Low operational cost per event response (e.g. business transaction) Optimized processes
Federated Driving multi-party ecosystems (internal and external)
Focused On core capabilities Best sourcing and collaborative sourcing of non-core capabilities

Table 1 - Winners and Losers on the Connected Planet By implication, the losers will be those organizations that fail to exhibit these characteristics!

The Connected Architecture Solution
So, how does an organization make sense of trillions of connected things and billions of people accessing petabytes of information via millions of APIs and services? Firstly, organizations and their IT solutions need to become increasingly,

  • Autonomic, in the way they,
    • respond to events, and how they correlate events and information
    • discover new service providers and their APIs
    • manage resources, adopting the principle of ‘management of services, by services'
    • freeing up human resources to deal with exceptions and ‘special cases'
  • Analytical, in the way they,
    • make sense of events and information
  • Decoupled, in the way they,
    • participate in federated ecosystems, not tightly bound partnerships
    • separate service provider from service consumer
    • assemble solutions from services not implementations

Figure 2 - Connected Architecture

As stated earlier, architecture is key to dealing with this. However, there is no one architectural ‘style' that encompasses everything that is required to solve the problem. It would be tempting to say the answer is SOA, or the answer is WOA, or any other acronym that is or was flavor of the month, or for architects to believe that it all revolves around whatever is their ‘pet' approach. While SOA principles of encapsulation and separation will inevitably be at the heart of the connected architecture, the practical reality of a collaboration between disparate organizations and capabilities will mean a federated architecture involving different technical solutions.
As illustrated in figure 2 what is required is an agile federated approach to architecture that assembles a Connected Architecture consisting of the following,

  • Web 2.0 Architecture - enabling people to rapidly mash up user and community driven solutions, in turn assembled from millions of APIs and services, and generating quadrillions of events,
  • leveraging Enterprise Mobility to connect employees, partners and customers, and their devices, anytime, anywhere,
  • requiring Event Driven Architecture (EDA) to determine the autonomic response required to sensors and changes in state, and correlate events,
  • that are also placed into context by agile Business Process Architecture (BPA/BPM) and Information Architecture (IA), with Real-time Business Analytics (BA) to make sense of what is happening,
  • using capabilities provisioned through APIs and services in a Service Oriented Architecture (SOA) that provides a formal basis for the decoupling of Provider and Consumers resources,
  • combined with a Web Oriented, or Resource Oriented Architecture (WOA/ROA) exchanging information between those trillions of devices in an efficient manner that will likely be done in a more lightweight manner than full blown Web Service-based SOA, with their implementations defined in a Component Based Software Architecture (CBSA) - with the focus on right-grained software units enabling agile, federated software delivery, that is hosted anywhere, anytime on a Cloud Based Architecture (CBA) that describes the virtualized, federated infrastructure providing scalability, reliability.

No one of these styles covers the problem space by itself. Rather, the problem space needs to be decomposed and the appropriate architecture approach applied to each domain.

Connected Platform

Another key enabler will be the increasing use of ‘Connected Platforms'. Cloud ‘platforms' such as Salesforce, Facebook or Amazon are in wide use and are already dominant in their respective domains because their platforms provide a considerable benefit by way of platform capabilities in comparison to building their own, and more importantly to business perhaps, provide a gateway to a ready-made ecosystem that use the platform.
Expect Connected Platforms to emerge that act as a ‘hub' or focal point around which industry ecosystems evolve, and it is likely that every industry will come to be dominated by a few key platform providers.

Many organizations will therefore have little choice of which Connected Platform they use as they will be forced upon them by participants in their industry - either by the 400lb gorillas who already dominate their industry, or by the platforms to which their ecosystem and end customers have gravitated, forcing them to adopt.

As illustrated by figure 3, the challenge for each enterprise will be to determine,

  • what their role is in the ecosystem, as provider and /or consumer, or possibly platform operator
  • hence, which services they should be expected to provide, and which they should consume
  • what services the Connected Platform is or should be providing, and who should providing them
  • their willingness to depend on the Connected Platform and the extent to which they allow the platform to dominate
  • the extent to which architects design their service architecture around the Connected Platform, or to what extent they should design their own platform independent architecture, especially for large organizations who may participate in multiple overlapping ecosystems, with multiple Connected Platforms.

Figure 3 - The Connected Platform

The Architect's Challenge

The key challenge for architects is that they cannot treat the various elements of the Connected Architecture as they often do today - as architectural silos [3] in ivory towers. Instead, as discussed earlier the elements must work seamlessly together. But this isn't solved by Enterprise Architecture - which may contain elements of all these - at least not alone, as this is about working at the detailed level to deliver solutions, not just a high-level view of the enterprise.
Hence it is important that architects develop a consistent framework for collaboration within the Connected Architecture. This is an area in which Everware-CBDI is well placed to assist.

IASA UK Architecture Summit

My colleague David Sprott and I will be running a one day workshop on these and other related ideas at the IASA UK Architecture Summit.

References

[1] Architecture for the Smarter Planet. http://lwsoa.blogspot.co.uk/2009/10/architecture-for-smarter-planet.html [2] IDC Predictions 2013. November 2012, IDC #238044, Volume: 1 http://www.idc.com/research/Predictions13/index.jsp#.UR4HSmf-unI [3] Beware the new silos! http://everware-cbdi.com/index.php?cID=118&cType=document

Read the original blog entry...

More Stories By Lawrence Wilkes

Lawrence Wilkes is a consultant, author and researcher developing best practices in Service Oriented Architecture (SOA), Enterprise Architecture (EA), Application Modernization (AM), and Cloud Computing. As well as consulting to clients, Lawrence has developed education and certification programmes used by organizations and individuals the world over, as well as a knowledgebase of best practices licenced by major corporations. See the education and products pages on http://www.everware-cbdi.com

@MicroservicesExpo Stories
From the conception of Docker containers to the unfolding microservices revolution we see today, here is a brief history of what I like to call 'containerology'. In 2013, we were solidly in the monolithic application era. I had noticed that a growing amount of effort was going into deploying and configuring applications. As applications had grown in complexity and interdependency over the years, the effort to install and configure them was becoming significant. But the road did not end with a ...
The goal of any tech business worth its salt is to provide the best product or service to its clients in the most efficient and cost-effective way possible. This is just as true in the development of software products as it is in other product design services. Microservices, an app architecture style that leans mostly on independent, self-contained programs, are quickly becoming the new norm, so to speak. With this change comes a declining reliance on older SOAs like COBRA, a push toward more s...
Many private cloud projects were built to deliver self-service access to development and test resources. While those clouds delivered faster access to resources, they lacked visibility, control and security needed for production deployments. In their session at 18th Cloud Expo, Steve Anderson, Product Manager at BMC Software, and Rick Lefort, Principal Technical Marketing Consultant at BMC Software, will discuss how a cloud designed for production operations not only helps accelerate developer...
Small teams are more effective. The general agreement is that anything from 5 to 12 is the 'right' small. But of course small teams will also have 'small' throughput - relatively speaking. So if your demand is X and the throughput of a small team is X/10, you probably need 10 teams to meet that demand. But more teams also mean more effort to coordinate and align their efforts in the same direction. So, the challenge is how to harness the power of small teams and yet orchestrate multiples of them...
In a crowded world of popular computer languages, platforms and ecosystems, Node.js is one of the hottest. According to w3techs.com, Node.js usage has gone up 241 percent in the last year alone. Retailers have taken notice and are implementing it on many levels. I am going to share the basics of Node.js, and discuss why retailers are using it to reduce page load times and improve server efficiency. I’ll talk about similar developments such as Docker and microservices, and look at several compani...
SYS-CON Events announced today that Peak 10, Inc., a national IT infrastructure and cloud services provider, will exhibit at SYS-CON's 18th International Cloud Expo®, which will take place on June 7-9, 2016, at the Javits Center in New York City, NY. Peak 10 provides reliable, tailored data center and network services, cloud and managed services. Its solutions are designed to scale and adapt to customers’ changing business needs, enabling them to lower costs, improve performance and focus inter...
Much of the value of DevOps comes from a (renewed) focus on measurement, sharing, and continuous feedback loops. In increasingly complex DevOps workflows and environments, and especially in larger, regulated, or more crystallized organizations, these core concepts become even more critical. In his session at @DevOpsSummit at 18th Cloud Expo, Andi Mann, Chief Technology Advocate at Splunk, will show how, by focusing on 'metrics that matter,' you can provide objective, transparent, and meaningfu...
In the world of DevOps there are ‘known good practices’ – aka ‘patterns’ – and ‘known bad practices’ – aka ‘anti-patterns.' Many of these patterns and anti-patterns have been developed from real world experience, especially by the early adopters of DevOps theory; but many are more feasible in theory than in practice, especially for more recent entrants to the DevOps scene. In this power panel at @DevOpsSummit at 18th Cloud Expo, moderated by DevOps Conference Chair Andi Mann, panelists will dis...
Last week I had the pleasure of speaking on a panel at Sapphire Ventures Next-Gen Tech Stack Forum in San Francisco. Obviously, I was excited to join the discussion, but as a participant the event crystallized not only where the larger software development market is relative to microservices, container technologies (like Docker), continuous integration and deployment; but also provided insight into where DevOps is heading in the coming years.
Wow, if you ever wanted to learn about Rugged DevOps (some call it DevSecOps), sit down for a spell with Shannon Lietz, Ian Allison and Scott Kennedy from Intuit. We discussed a number of important topics including internal war games, culture hacking, gamification of Rugged DevOps and starting as a small team. There are 100 gold nuggets in this conversation for novices and experts alike.
The notion of customer journeys, of course, are central to the digital marketer’s playbook. Clearly, enterprises should focus their digital efforts on such journeys, as they represent customer interactions over time. But making customer journeys the centerpiece of the enterprise architecture, however, leaves more questions than answers. The challenge arises when EAs consider the context of the customer journey in the overall architecture as well as the architectural elements that make up each...
Much of the discussion around cloud DevOps focuses on the speed with which companies need to get new code into production. This focus is important – because in an increasingly digital marketplace, new code enables new value propositions. New code is also often essential for maintaining competitive parity with market innovators. But new code doesn’t just have to deliver the functionality the business requires. It also has to behave well because the behavior of code in the cloud affects performan...
Admittedly, two years ago I was a bulk contributor to the DevOps noise with conversations rooted in the movement around culture, principles, and goals. And while all of these elements of DevOps environments are important, I’ve found that the biggest challenge now is a lack of understanding as to why DevOps is beneficial. It’s getting the wheels going, or just taking the next step. The best way to start on the road to change is to take a look at the companies that have already made great headway ...
In 2006, Martin Fowler posted his now famous essay on Continuous Integration. Looking back, what seemed revolutionary, radical or just plain crazy is now common, pedestrian and "just what you do." I love it. Back then, building and releasing software was a real pain. Integration was something you did at the end, after code complete, and we didn't know how long it would take. Some people may recall how we, as an industry, spent a massive amount of time integrating code from one team with another...
I have an article in the recently released “DZone Guide to Building and Deploying Applications on the Cloud” entitled “Fullstack Engineering in the Age of Hybrid Cloud”. In this article I discuss the need and skills of a Fullstack Engineer with relation to troubleshooting and repairing complex, distributed hybrid cloud applications. My recent experiences with troubleshooting issues with my Docker WordPress container only reinforce the details I wrote about in this piece. Without my comprehensive...
Struggling to keep up with increasing application demand? Learn how Platform as a Service (PaaS) can streamline application development processes and make resource management easy.
As the software delivery industry continues to evolve and mature, the challenge of managing the growing list of the tools and processes becomes more daunting every day. Today, Application Lifecycle Management (ALM) platforms are proving most valuable by providing the governance, management and coordination for every stage of development, deployment and release. Recently, I spoke with Madison Moore at SD Times about the changing market and where ALM is headed.
If there is anything we have learned by now, is that every business paves their own unique path for releasing software- every pipeline, implementation and practices are a bit different, and DevOps comes in all shapes and sizes. Software delivery practices are often comprised of set of several complementing (or even competing) methodologies – such as leveraging Agile, DevOps and even a mix of ITIL, to create the combination that’s most suitable for your organization and that maximize your busines...
Digital means customer preferences and behavior are driving enterprise technology decisions to be sure, but let’s not forget our employees. After all, when we say customer, we mean customer writ large, including partners, supply chain participants, and yes, those salaried denizens whose daily labor forms the cornerstone of the enterprise. While your customers bask in the warm rays of your digital efforts, are your employees toiling away in the dark recesses of your enterprise, pecking data into...
You deployed your app with the Bluemix PaaS and it's gaining some serious traction, so it's time to make some tweaks. Did you design your application in a way that it can scale in the cloud? Were you even thinking about the cloud when you built the app? If not, chances are your app is going to break. Check out this webcast to learn various techniques for designing applications that will scale successfully in Bluemix, for the confidence you need to take your apps to the next level and beyond.