Blog Feed Post

The Solution and Service Architecture Relationship

Whilst we might have a particular specialization at Everware-CBDI in all things SOA, most of the system integration/delivery projects we are engaged on are still solution focused. The delivery of services, organized into a service architecture may be central to the solutions we deliver, and the reason for our engagement, but the end result is still a solution in the conventional IT sense.

Following the recent delivery of a solution architecture class, I produced a new eLearning module for our Service Architecture Practitioner Syllabus, and part of that module is explored in this post, where I examine the relationship between the solution and service architecture.

Parallel Architectures

A solution can be understood in relatively abstract terms – a solution to a problem, or a solution to a business requirement. Hence, even the provisioning of an individual service may be seen as a solution to some problem in the right context.
However, taking that more conventional IT sense, a solution is usually seen as a packaging of application functionality, that provides support for a set of business requirements. Hence a solution can be understood as consisting of the following main elements,
  • One or more Application assemblies, each providing several functions that are required of the overall solution.
  • A form of user interface that provides a means for Human-Machine interaction between the user and the applications in a manner that supports a particular business workflow.
  • And a set of Services, where each provides one or more of the required functions.
Figure 1: Parallel Solution and Service Architecture Views
As illustrated in figure 1, delivery of the solution architecture often parallels that of the service architecture.
The process starts by modelling the Solution Specification Architecture. A key part of this is identifying which services are required in order to support the functions that the solution automates.
Hence the Solution Specification Architecture is partly expressed by a dependency model that shows the solution elements and their service dependencies.
Next, a Solution Implementation Architecture is produced showing the software elements that will be required to implement the solution specification. Now the relationship to the required services can be expressed more precisely using an Interaction or Sequence Diagram.
Finally, the Solution Deployment Architecture shows how the software elements are deployed to the network modelled by the Technical Architecture and realized in the operational environment.

Why separate the solution and service architectures in this way?  A solution can be considered to consist of both of these views.  That is, the delivery of a solution that addresses some business need requires both the delivery of the services and their assembly along with the human machine interaction aspects into the solution.

So won’t one architecture suffice?  It could do.  And for some small, truly stand-alone, self-contained solutions it may well be sufficient. But in many cases there are some good reasons why it is best practice to deal with them separately, even if their delivery of both is within the same solution project. For example
  • Enable agility. By decoupling the Services from the human machine Interaction each can evolve at a different rate
  • Encapsulate change. By hiding unnecessary detail of the complete Service Architecture and focusing only on the services directly used by the Solution, this helps to encapsulate change in the service architecture.
  • Support sharing. For most solutions it is desirable to leverage Services that are shared or common across the enterprise or line of business, and hence these services need to be independent of any one Solution. Moreover, it isn't uncommon for solution-specific services to evolve into shared services.

Solution and Service Architecture Iteration

As noted, the Solution Architecture is partly expressed in terms of the Services it uses. The apparent overlap between the Solution and Service Architecture shouldn’t be seen as a duplication of effort.
Rather it is just two alternative views of the same overall architecture, and common elements are only developed once.

Hence, as shown in figure 2 the Service Architecture is an input to the Solution Architecture activity.  At the same time, the Solution Architecture activity may identify the need for new Services, and these new requirements can be fed back into the Service Architecture activity.  It is then determined whether these new Services are specific to the Solution, or whether they should be delivered as Shared Services and made available to other Solutions. This should be a subject of policy.
As illustrated, both of these activities should be working off the same set of business models as input, but each put to appropriate use.

Figure 2: Solution and Service Architecture Iteration
During the Implementation and Provisioning stages, the Service Specification (or Service Implementation Architecture if completed) is now input to Solution Implementation activities. The use of operations required by the Solution can be modelled in Interaction Diagrams.  Again, this activity may identify new Service Operations and again these requirements can be fed back into the Service Provisioning activity.

The extent to which the Solution Architecture and Service Architecture are developed together as part of the same project will depend on various factors such as the need to deliver services that are used in multiple solutions.  At one extreme there may be an extensive Service Architecture that pre-exists the Solution Architecture, and a Solution is largely a new assembly of pre-existing Services.  At the other extreme, there may be a minimal existing Service Architecture and it needs to be developed in parallel with the Solution Architecture, with much of the Service identification being based on the Solution’s specific requirements.

Agile Solution Delivery

It is important to recognize that that the sequence these activities are performed in is not predicated on a waterfall approach.

Figure 3: Agile Solution Delivery
The whole service and solution architecture does not need to be fully detailed before any provisioning activities can commence.  Rather, we would expect each execution of an architecture sprint to provide just enough architecture to support a release of part of the solution.
Similarly, the specification, implementation, and assembly of services and solutions would also be performed though a series of development sprints.
Whilst the necessary business models required as input could be collected during a pre-sprint phase.

Everware-CBDI eLearning

The Solution Architecture module is available as part of our range of eLearning products, which can be purchased individually or as part of a subscription to our Knowledgebase which contains all our elearning materials and much more.

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

Latest Stories
Cloud promises the agility required by today’s digital businesses. As organizations adopt cloud based infrastructures and services, their IT resources become increasingly dynamic and hybrid in nature. Managing these require modern IT operations and tools. In his session at 20th Cloud Expo, Raj Sundaram, Senior Principal Product Manager at CA Technologies, will discuss how to modernize your IT operations in order to proactively manage your hybrid cloud and IT environments. He will be sharing bes...
After more than five years of DevOps, definitions are evolving, boundaries are expanding, ‘unicorns’ are no longer rare, enterprises are on board, and pundits are moving on. Can we now look at an evolution of DevOps? Should we? Is the foundation of DevOps ‘done’, or is there still too much left to do? What is mature, and what is still missing? What does the next 5 years of DevOps look like? In this Power Panel at DevOps Summit, moderated by DevOps Summit Conference Chair Andi Mann, panelists loo...
Cloud applications are seeing a deluge of requests to support the exploding advanced analytics market. “Open analytics” is the emerging strategy to deliver that data through an open data access layer, in the cloud, to be directly consumed by external analytics tools and popular programming languages. An increasing number of data engineers and data scientists use a variety of platforms and advanced analytics languages such as SAS, R, Python and Java, as well as frameworks such as Hadoop and Spark...
Automation is enabling enterprises to design, deploy, and manage more complex, hybrid cloud environments. Yet the people who manage these environments must be trained in and understanding these environments better than ever before. A new era of analytics and cognitive computing is adding intelligence, but also more complexity, to these cloud environments. How smart is your cloud? How smart should it be? In this power panel at 20th Cloud Expo, moderated by Conference Chair Roger Strukhoff, paneli...
"Loom is applying artificial intelligence and machine learning into the entire log analysis process, from start to finish and at the end you will get a human touch,” explained Sabo Taylor Diab, Vice President, Marketing at Loom Systems, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
The current age of digital transformation means that IT organizations must adapt their toolset to cover all digital experiences, beyond just the end users’. Today’s businesses can no longer focus solely on the digital interactions they manage with employees or customers; they must now contend with non-traditional factors. Whether it's the power of brand to make or break a company, the need to monitor across all locations 24/7, or the ability to proactively resolve issues, companies must adapt to...
A look across the tech landscape at the disruptive technologies that are increasing in prominence and speculate as to which will be most impactful for communications – namely, AI and Cloud Computing. In his session at 20th Cloud Expo, Curtis Peterson, VP of Operations at RingCentral, highlighted the current challenges of these transformative technologies and shared strategies for preparing your organization for these changes. This “view from the top” outlined the latest trends and developments i...
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend 21st Cloud Expo October 31 - November 2, 2017, at the Santa Clara Convention Center, CA, and June 12-14, 2018, at the Javits Center in New York City, NY, and learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
@DevOpsSummit at Cloud Expo taking place Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center, Santa Clara, CA, is co-located with the 21st International Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is ...
"We are a monitoring company. We work with Salesforce, BBC, and quite a few other big logos. We basically provide monitoring for them, structure for their cloud services and we fit into the DevOps world" explained David Gildeh, Co-founder and CEO of Outlyer, in this SYS-CON.tv interview at DevOps Summit at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
Join us at Cloud Expo June 6-8 to find out how to securely connect your cloud app to any cloud or on-premises data source – without complex firewall changes. More users are demanding access to on-premises data from their cloud applications. It’s no longer a “nice-to-have” but an important differentiator that drives competitive advantages. It’s the new “must have” in the hybrid era. Users want capabilities that give them a unified view of the data to get closer to customers and grow business. The...
For organizations that have amassed large sums of software complexity, taking a microservices approach is the first step toward DevOps and continuous improvement / development. Integrating system-level analysis with microservices makes it easier to change and add functionality to applications at any time without the increase of risk. Before you start big transformation projects or a cloud migration, make sure these changes won’t take down your entire organization.
Artificial intelligence, machine learning, neural networks. We’re in the midst of a wave of excitement around AI such as hasn’t been seen for a few decades. But those previous periods of inflated expectations led to troughs of disappointment. Will this time be different? Most likely. Applications of AI such as predictive analytics are already decreasing costs and improving reliability of industrial machinery. Furthermore, the funding and research going into AI now comes from a wide range of com...
"When we talk about cloud without compromise what we're talking about is that when people think about 'I need the flexibility of the cloud' - it's the ability to create applications and run them in a cloud environment that's far more flexible,” explained Matthew Finnie, CTO of Interoute, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
Internet of @ThingsExpo, taking place October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, is co-located with 21st Cloud Expo and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The Internet of Things (IoT) is the most profound change in personal and enterprise IT since the creation of the Worldwide Web more than 20 years ago. All major researchers estimate there will be tens of billions devic...