All,
I sent a quick note to Brad earlier in the week that I read his email and looked for the appropriate words in the (still very rough) RA draft to provide as an answer. I wasn't completely satisfied with what I found and posed the questions along with some suggested wording to the RA mailing list. We haven't settled on the final wording or on the final requirements overview list, but this should provide an answer and give a sense of where we are heading.
1 Introduction
Service Oriented Architecture is an architectural paradigm that has gained significant attention within the information technology (IT) and business communities. The OASIS Reference Model for SOA provides a common language for understanding the important features of SOA but does not address the issues involved in constructing, using, or owning a SOA-based system. This document focuses on these aspects of SOA.
1.1 What is a Reference Architecture
A reference architecture models the abstract architectural elements in the domain independent of the technologies, protocols, and products that are used to implement the domain. It differs from a Reference Model in that a Reference Model describes the important concepts and relationships in the domain focusing on what distinguishes the elements of the domain; a Reference Architecture elaborates further on the model to show a more complete picture that includes what is involved in realizing the modeled entities. While still remaining abstract, a reference architecture is more concrete than a Reference Model in that it identifies and provides a high level description of architectural components and artifacts.
1.x What is this Reference Architecture
The SOA Reference Model defines reference architecture as “an architectural design pattern that indicates how an abstract set of mechanisms and relationships realizes a predetermined set of requirements.” More precisely, a reference architecture can be described as an architectural pattern that provides a set of predefined subsystems, specifies their responsibilities, and includes rules and guidelines for organizing the relationships between them [ref TOGAF].
It is possible to define Reference Architectures at many levels of detail or abstraction, and for many different purposes. In fact, the reference architecture for one domain may represent a further specialization of another reference architecture, with additional requirements over those for which the more general reference architecture was defined.
While requirements for this reference architecture are discussed in Section 2, an overview of those requirements specifies a SOA for which:
- Resources are distributed across ownership boundaries, e.g. there is not a single entity that can exercise control over all identified SOA services;
- Resources have been developed for purposes other than inclusion in a particular implementation following this reference architecture, and the use of those resources in such an implementation must not negatively impact those initial purposes;
- Infrastructure must be in place to enable communications through the exchange of messages and with reliability appropriate for the users and purposes for which the SOA implementation is used;
- Security, governance, and management must be effective but consistent with multiple ownership boundaries;
- Appropriate mediation must be available to enable coordinated use of independently developed resources;
- [other overarching assumptions/requirements?]
Below, we talk about such an environment as a SOA ecosystem. Informally, our goal in this Reference Architecture is to show how Service Oriented Architecture fits into the life of users and stakeholders in a SOA ecosystem, how SOA-based systems may be realized effectively, and what is involved in owning such a SOA-based system. We believe that this approach will serve two purposes: ensuring that the true value of a SOA meeting the stated requirements can be realized using appropriate technology, and permitting the audience to focus on the important issues without becoming over-burdened with the details of a particular implementation technology.
1.2 Service Oriented Architecture – An Ecosystems perspective
Many systems cannot be understood by a simple decomposition into parts and subsystems. There are...
Ken