Service-orientation and contemporary SOA

Contemporary SOA is a complex and sophisticated architectural platform that offers significant potential to solve many historic and current IT problems. In part, it achieves this potential by leveraging existing paradigms and technologies that support its overall vision. However, the majority of what it has to offer only can be harnessed thorough analysis and targeted design.

Listed here (and shown in Figure 9.1) are three of the primary influences of contemporary SOA discussed so far in this book:

  • first-generation Web services concepts (explained in Chapter 5)
  • second-generation (WS-*) Web Services concepts (explained in Chapters 6 and 7)
  • principles of service-orientation (explained in Chapter 8)

Figure 9.1. External influences that form and support contemporary SOA.

There are, of course, many other influences. Fundamental XML concepts, for example, have driven and shaped SOA and Web services on a fundamental level. For now, though, let's focus on these three.

As previously stated, to fulfill the potential of this architecture, we need to understand the origins of its characteristics. This understanding equips us with a healthy knowledge of what intrinsically drives fundamental aspects of SOA. More importantly, though, it allows us to pinpoint exactly which parts of contemporary SOA must be manually bolted on to this architecture. This allows us to focus on analysis and design efforts that ensure that these parts of SOA are properly implemented and their benefits realized.

9.1.1. Mapping the origins and supporting sources of concrete SOA characteristics

In Chapter 3 we created a list of concrete characteristics commonly associated with contemporary SOA. These qualities represent the current state and expectations surrounding this architectural platform and are also a reflection of the technology being developed in its support.

We've reached a stage in this book where we've discussed each of the three contemporary SOA influences identified in the previous section as being either responsible for or that in some way relating to a number of these characteristics.

We want to ensure that we identify those characteristics not supported by these external influences so that we can discuss how they also can be realized. So let's take this opportunity to revisit our original list, with the intention of striking off the ones that already have been addressed.

Note

The WS-* specifications referenced in Table 9.1 are only those covered by this book. Additional specifications exist.

Table 9.1. A review of how contemporary SOA characteristics are influenced by Web services specifications and service-orientation principles.

Characteristic

Origin and/or Supporting Source

fundamentally autonomous

Autonomy is one of the core service-orientation principles that can be applied to numerous parts of SOA. Pursuing autonomy when building and assembling service logic supports other SOA characteristics.

based on open standards

This is a natural by-product of basing SOA on the Web services technology platform and its ever-growing collection of WS-* specifications. The majority of Web services specifications are open and vendor-neutral.

QoS capable

The quality of service improvements provided by contemporary SOA are, for the most part, realized via vendor implementations of individual WS-* extensions.

architecturally composable

While composability, on a service level, is one of our service-orientation principles, for an architecture to be considered composable requires that the technology from which the architecture is built support this notion. For the most part, the specifications that comprise the WS-* landscape fully enable architectural composability by allowing a given SOA to only implement extensions it actually requires.

vendor diversity

This is really more of a benefit of SOA than an actual characteristic. Regardless, it is primarily realized through the use of the open standards provided by the Web services platform.

intrinsic interoperability

The standardized communications framework provided by Web services establishes the potential to foster limitless interoperability between services. This is no big secret. To foster intrinsic interoperability among services, though, requires forethought and good design standards. Although supported by a number of WS-* specifications, this characteristic is not directly enabled by our identified influences.

discoverability

Service-level discoverability is one of our fundamental principles of service-orientation. Implementing discoverability on an SOA level typically requires the use of directory technologies, such as UDDI (one of the first-generation Web services specifications).

promotes federation

Federation is a state achieved by extending SOA into the realm of service-oriented integration. A number of key WS-* extensions provide feature-sets that support the attainment of federation. Most notable among these are the specifications that implement the concepts of orchestration and choreography.

inherent reusability

Reusability is one of the primary principles of service-orientation and one that can be applied across service-oriented solution environments. SOA promotes the creation of inherently reusable service logic within individual services and across service compositionsa benefit attainable through quality service design.

extensibility

Given that Web services are composable and based on open standards, extensibility is a natural benefit of this platform. Several WS-* extensions introduce architectural mechanisms that build extensibility into a solution. However, for the most part, this is a characteristic that must be intentionally designed into services individually and into SOA as a whole.

service-oriented business modeling

This key characteristic is supported by orchestration, although not automatically. WS-* specifications, such as WS-BPEL, provide a dialect capable of expressing business process logic in an operational syntax resulting in a process definition. Only through deliberate design, though, can these types of process definitions actually be utilized to support service-oriented business modeling.

layers of abstraction

Service-orientation principles fully promote black box-type abstraction on a service interface level. However, to coordinate logic abstraction into layers, services must be designed and organized according to specific design standards.

enterprise-wide loose coupling

Loose coupling is one of the fundamental characteristics of Web services. Achieving a loosely coupled enterprise is a benefit expected from the coordinated proliferation of SOA and abstraction layers throughout an organization's business and application domains.

organizational agility

Though the use of Web services, service-orientation principles, and WS-* specifications support the concept of increasing an organization's agility, they do not directly enable it. This important characteristic requires dedicated analysis and design and relies on the realization of other SOA characteristics.

 

9.1.2. Unsupported SOA characteristics

Having removed the concrete SOA characteristics that receive support from our identified external influences, we are now left with the following six:

  • intrinsic interoperability
  • extensibility
  • enterprise-wide loose coupling
  • service-oriented business modeling
  • organizational agility
  • layers of abstraction

The first two are somewhat enabled by different WS-* extensions. However, realizing these characteristics within SOA is a direct result of standardized, quality service design. The design guidelines provided in Chapter 15 provide recommendations for fostering these qualities. As a result, we'll take interoperability and extensibility off our list for now.

This leaves us with four remaining characteristics of contemporary SOA that are not directly supported or provided by the external influences we identified. These characteristics have been numbered here only to allow for easier referencing in later sections.

  1. enterprise-wide loose coupling
  2. support for service-oriented business modeling
  3. organizational agility
  4. layers of abstraction

What is most interesting about our brief study is that these four characteristics actually provide some of the most crucial benefits of this architecture. The caveat, though, is that they require a conscious effort for us to realize. This translates into extra up-front work that simply comes with the territory of building contemporary SOA.

Incorporating these key qualities into SOA requires that some very fundamental decisions be made, long before the building process of individual services actually can commence. The remaining sections in this chapter explore how structuring SOA around the creation of specialized service layers directly determines the extent to which these characteristics can be manifested.

SUMMARY OF KEY POINTS

  • The primary external influences that shape and affect contemporary SOA are first- and second-generation Web services specifications and the principles of service-orientation.
  • Many of the characteristics that define contemporary SOA are, in fact, provided by these external influences.
  • Those characteristics not directly supplied by these influences must be realized through dedicated modeling and design effort.
  • These unique characteristics represent some of SOA's most important features and its broadest benefit potential.


Introduction

Case Studies

Part I: SOA and Web Services Fundamentals

Introducing SOA

The Evolution of SOA

Web Services and Primitive SOA

Part II: SOA and WS-* Extensions

Web Services and Contemporary SOA (Part I: Activity Management and Composition)

Web Services and Contemporary SOA (Part II: Advanced Messaging, Metadata, and Security)

Part III: SOA and Service-Orientation

Principles of Service-Orientation

Service Layers

Part IV: Building SOA (Planning and Analysis)

SOA Delivery Strategies

Service-Oriented Analysis (Part I: Introduction)

Service-Oriented Analysis (Part II: Service Modeling)

Part V: Building SOA (Technology and Design)

Service-Oriented Design (Part I: Introduction)

Service-Oriented Design (Part II: SOA Composition Guidelines)

Service-Oriented Design (Part III: Service Design)

Service-Oriented Design (Part IV: Business Process Design)

Fundamental WS-* Extensions

SOA Platforms

Appendix A. Case Studies: Conclusion



Service-Oriented Architecture. Concepts, Technology, and Design
Service-Oriented Architecture (SOA): Concepts, Technology, and Design
ISBN: 0131858580
EAN: 2147483647
Year: 2004
Pages: 150
Authors: Thomas Erl

Flylib.com © 2008-2020.
If you may any questions please contact us: flylib@qtcs.net