Let's revisit the two primary goals we established earlier and elaborate on each.
1.2.1. Understanding SOA, service-orientation, and Web services
This book is not solely focused on architecture. Service-oriented architecture is a core part of the service-oriented computing platform that brings with it new concepts, technologies, and challenges. This book explores key parts of this platform to provide well-rounded coverage of the multi-faceted world of building service-oriented automation solutions.
Specifically, the following aspects of the SOA platform are explained:
- Primitive and contemporary variations of SOA are described and defined, establishing a set of nearly 20 common characteristics that can be fulfilled by current Web services technologies and design techniques explained in the step-by-step "how to" processes.
- Fundamental Web services theory is covered, along with a study of how the emergence of XML and Web services, coupled with the dynamics between standards organizations and software vendors, have all influenced and contributed to the evolution of SOA.
- The principles of service-orientation are described in detail. Their influence on Web service design is explained, and they are further incorporated into the step-by-step design processes.
- Over 10 WS-* specifications are described in detail. Separate parts of this book are dedicated to explaining concepts in plain English and then covering the technical details with code samples.
- Advanced SOA concepts and design issues are discussed, including the creation of specialized service layers. These allow for the abstraction of business and technology domains within the enterprise and form the basis for business and application-centric service designs.
1.2.2. Learning how to build SOA with Web services
A large portion of this book is dedicated to providing step-by-step instructions on how to accomplish the following tasks:
- perform a service-oriented analysis
- model service candidates derived from existing business documentation
- design the composition of an SOA
- design application services for technology abstraction
- design business services for business logic abstraction
- design service-oriented business processes
- assess SOA support provided by J2EE and .NET platforms