| |
| |
Forewords | |
| |
| |
| |
Preface | |
| |
| |
Acknowledgments | |
| |
| |
About the Authors | |
| |
| |
developerWorks and SOA | |
| |
| |
| |
Introducing SOA | |
| |
| |
| |
SOA to the Rescue | |
| |
| |
| |
Exploring SOA | |
| |
| |
| |
The Term "SOA" | |
| |
| |
| |
Dimensions of SOA | |
| |
| |
| |
A Preview of the Service-Oriented Architecture Compass | |
| |
| |
| |
Summary | |
| |
| |
| |
References | |
| |
| |
| |
Explaining the Business Value of SOA | |
| |
| |
| |
The Forces of Change | |
| |
| |
| |
Enterprise Reconstruction | |
| |
| |
| |
Industry Deconstruction | |
| |
| |
| |
The Impact of the Enterprise Reconstruction and Industry Deconstruction Trends | |
| |
| |
| |
The Trend Toward Business Components and Services | |
| |
| |
| |
Common Questions About SOA | |
| |
| |
| |
What Is SOA? | |
| |
| |
| |
Why Do Companies Need SOA? | |
| |
| |
| |
What Benefits Will Businesses Receive if They Implement SOA? | |
| |
| |
| |
What Opportunities Will Companies Miss if They Don't Implement SOA? | |
| |
| |
| |
What Is Different with SOA Compared to Previous Approaches? | |
| |
| |
| |
Rethinking Components for Business and Applications | |
| |
| |
| |
When Not to Implement an SOA | |
| |
| |
| |
SOA Value Roadmap | |
| |
| |
| |
Explaining SOA to Business People | |
| |
| |
| |
A Checklist for Business Change Agility | |
| |
| |
| |
The Nine Business Rules of Thumb for SOAs | |
| |
| |
| |
Summary | |
| |
| |
| |
References | |
| |
| |
| |
Architecture Elements | |
| |
| |
| |
Refining SOA Characteristics | |
| |
| |
| |
Platform | |
| |
| |
| |
Location | |
| |
| |
| |
Protocols | |
| |
| |
| |
Programming Language | |
| |
| |
| |
Invocation Patterns | |
| |
| |
| |
Security | |
| |
| |
| |
Service Versioning | |
| |
| |
| |
Service Model | |
| |
| |
| |
Information Model | |
| |
| |
| |
Data Format | |
| |
| |
| |
Applying the SOA Characteristics | |
| |
| |
| |
Infrastructure Services | |
| |
| |
| |
Resource Virtualization Services | |
| |
| |
| |
Service-Level Automation and Orchestration | |
| |
| |
| |
Utility Business Services | |
| |
| |
| |
The Enterprise Service Bus (ESB) | |
| |
| |
| |
Transport | |
| |
| |
| |
Quality-of-Service-Based Routing | |
| |
| |
| |
Mediation | |
| |
| |
| |
Web Services Gateway | |
| |
| |
| |
SOA Enterprise Software Models | |
| |
| |
| |
Industry Models | |
| |
| |
| |
Platform-Independent Realization | |
| |
| |
| |
Platform-Specific Realization | |
| |
| |
| |
J2EE Realization | |
| |
| |
| |
Services Integration on the WebSphere Application Server | |
| |
| |
| |
The Information Management Domain | |
| |
| |
| |
The IBM On Demand Operating Environment | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developWorks | |
| |
| |
| |
References | |
| |
| |
| |
SOA Project Planning Aspects | |
| |
| |
| |
Organizing Your SOA Project Office | |
| |
| |
| |
SOA Adoption Roadmap | |
| |
| |
| |
The Need for SOA Governance | |
| |
| |
| |
SOA Governance Motivation and Objectives | |
| |
| |
| |
An SOA Governance Model | |
| |
| |
| |
Strategic Direction and SOA Governance Principles | |
| |
| |
| |
Empowerment and Funding | |
| |
| |
| |
Managing the Risk of an SOA Roadmap | |
| |
| |
| |
SOA Governance Processes | |
| |
| |
| |
Launching the Governance Model | |
| |
| |
| |
Hints and Tips for Success | |
| |
| |
| |
SOA Technical Governance | |
| |
| |
| |
Reducing Impact by Modularization | |
| |
| |
| |
Achieving Middleware Independence with Explicit Process State | |
| |
| |
| |
Business Exceptions Monitoring and Handling | |
| |
| |
| |
SOA Project Roles | |
| |
| |
| |
The Function of Roles | |
| |
| |
| |
Roles and Skills | |
| |
| |
| |
Project Phases | |
| |
| |
| |
Examining and Adapting Roles | |
| |
| |
| |
A Look at Existing Roles | |
| |
| |
| |
A Look at New Roles | |
| |
| |
| |
Integrating Existing and New Roles | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
| |
References | |
| |
| |
| |
Aspects of Analysis and Design | |
| |
| |
| |
Service-Oriented Analysis and Design | |
| |
| |
| |
On Modeling | |
| |
| |
| |
Layers of Abstraction | |
| |
| |
| |
Reuse | |
| |
| |
| |
Service Encapsulation | |
| |
| |
| |
Loose-Coupling | |
| |
| |
| |
Strong Cohesion | |
| |
| |
| |
Service Granularity | |
| |
| |
| |
Well-Designed Services | |
| |
| |
| |
Service-Oriented Analysis and Design-Activities | |
| |
| |
| |
Identifying Services | |
| |
| |
| |
Categorization of Services | |
| |
| |
| |
Specification of Services | |
| |
| |
| |
Realization of Services | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
| |
References | |
| |
| |
| |
Enterprise Solution Assets | |
| |
| |
| |
Architect's Perspective | |
| |
| |
| |
Selecting the Architectural Methodology | |
| |
| |
| |
Formalizing Architectural Decisions | |
| |
| |
| |
Identifying Architectural Best Practices | |
| |
| |
| |
Performing the Product and Package Mappings | |
| |
| |
| |
Enterprise Solution Assets Explained | |
| |
| |
| |
A Catalog of Enterprise Solution Assets | |
| |
| |
| |
How Does an ESA Solve Enterprise Problems? | |
| |
| |
| |
Selecting an Enterprise Solution Asset | |
| |
| |
| |
Using an Enterprise Solution Asset | |
| |
| |
| |
Multitiered Disconnected Operation | |
| |
| |
| |
Problem Synopsis | |
| |
| |
| |
Context | |
| |
| |
| |
Forces | |
| |
| |
| |
Solution | |
| |
| |
| |
Consequences | |
| |
| |
| |
Request Response Template | |
| |
| |
| |
Problem Synopsis | |
| |
| |
| |
Context | |
| |
| |
| |
Forces | |
| |
| |
| |
Solution | |
| |
| |
| |
Consequences | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
| |
References | |
| |
| |
| |
Determining Non-Functional Requirements | |
| |
| |
| |
Business Constraints | |
| |
| |
| |
Operating Ranges | |
| |
| |
| |
Legal Constraints | |
| |
| |
| |
Industry Business Standards | |
| |
| |
| |
Technology Constraints | |
| |
| |
| |
Operating Environment Constraints | |
| |
| |
| |
Technical Model Constraints | |
| |
| |
| |
Access Constraints | |
| |
| |
| |
Expertise Constraints | |
| |
| |
| |
Runtime Qualities | |
| |
| |
| |
Performance NFRs | |
| |
| |
| |
Scalability NFRs | |
| |
| |
| |
Transactional Integrity NFRs | |
| |
| |
| |
Security NFRs | |
| |
| |
| |
Nonruntime Qualities | |
| |
| |
| |
Manageability NFRs | |
| |
| |
| |
Version Management NFRs | |
| |
| |
| |
Disaster-Recovery NFRs | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
| |
References | |
| |
| |
| |
Securing the SOA Environment | |
| |
| |
| |
Architectural Considerations for an SOA Security Model | |
| |
| |
| |
Concepts and Elements of Security | |
| |
| |
| |
Integrity | |
| |
| |
| |
Confidentiality | |
| |
| |
| |
Identity and Authentication | |
| |
| |
| |
Message Authentication | |
| |
| |
| |
Session Management | |
| |
| |
| |
Authorization | |
| |
| |
| |
Privacy | |
| |
| |
| |
Non-Repudiation | |
| |
| |
| |
Cryptography | |
| |
| |
| |
Trust | |
| |
| |
| |
Federation | |
| |
| |
| |
Implementation Requirements for SOA Security | |
| |
| |
| |
Managing Security Policies | |
| |
| |
| |
Defining Transport Security Policies | |
| |
| |
| |
Defining Message Layer Security Policies | |
| |
| |
| |
Defining Data Protection Policies | |
| |
| |
| |
Defining Security Token Policies | |
| |
| |
| |
Defining Cryptographic Key Policies | |
| |
| |
| |
Coordinating Policies Between Business Partners | |
| |
| |
| |
Standards and Mechanisms for SOA Security | |
| |
| |
| |
The Basic Security Standard: WS-Security | |
| |
| |
| |
Trust Domains: WS-Trust | |
| |
| |
| |
Federated Security: WS-Federation | |
| |
| |
| |
Session Management: WS-SecureConversation | |
| |
| |
| |
Authorization and Policies: WS-Policy | |
| |
| |
| |
Implementing Security in SOA Systems | |
| |
| |
| |
Implementing Basic Security Services | |
| |
| |
| |
Implementing Point-of-Contact Services | |
| |
| |
| |
Implementing Message Layer Security Services | |
| |
| |
| |
Implementing Trust Services | |
| |
| |
| |
Implementing a Federation | |
| |
| |
| |
Non-Functional Requirements Related to Security | |
| |
| |
| |
The Performance Impact of Security | |
| |
| |
| |
Managing Security | |
| |
| |
| |
Technology and Product Mappings | |
| |
| |
| |
Transport Layer Point of Contact | |
| |
| |
| |
Web Services Layer Point of Contact | |
| |
| |
| |
Trust Services | |
| |
| |
| |
Federation Services | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
| |
References | |
| |
| |
| |
Managing the SOA Environment | |
| |
| |
| |
Distributed Service Management and Monitoring Concepts | |
| |
| |
| |
Event-Driven Management | |
| |
| |
| |
Levels of SOA-Driven Management | |
| |
| |
| |
Key Services Management Concepts | |
| |
| |
| |
Managing the Enterprise Service Bus | |
| |
| |
| |
Evolving Standards | |
| |
| |
| |
Operational Management Challenges | |
| |
| |
| |
Challenges with Respect to Management Perspectives | |
| |
| |
| |
Phases of Deployment | |
| |
| |
| |
Service-Level Agreement Considerations | |
| |
| |
| |
SOA Management Products | |
| |
| |
| |
Business Performance and Business Service Management | |
| |
| |
| |
IT Application and Resource Management | |
| |
| |
| |
Other Areas of Management | |
| |
| |
| |
External Product Relationships | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
| |
References | |
| |
| |
| |
Case Studies in SOA Deployment | |
| |
| |
| |
Case Study: SOA in the Insurance Industry | |
| |
| |
| |
IT and Business Challenges | |
| |
| |
| |
Solution Implementation | |
| |
| |
| |
Impact of the Project | |
| |
| |
| |
Lessons Learned | |
| |
| |
| |
Case Study: SOA in Government Services | |
| |
| |
| |
IT and Business Challenges | |
| |
| |
| |
Technical Implementation | |
| |
| |
| |
Impact of the Project | |
| |
| |
| |
Lessons Learned | |
| |
| |
| |
Summary | |
| |
| |
| |
Navigating Forward | |
| |
| |
| |
What We Learned | |
| |
| |
| |
Guiding Principles | |
| |
| |
| |
Future Directions | |
| |
| |
| |
Technology Standards | |
| |
| |
| |
Web Services Monitoring and Visualization | |
| |
| |
| |
Semantic Web Services | |
| |
| |
| |
Open Development Platforms | |
| |
| |
| |
Services Assets | |
| |
| |
| |
SOA Programming Models | |
| |
| |
| |
Virtual Services Platform | |
| |
| |
| |
Event-Driven Architectures | |
| |
| |
| |
Model-Driven Architectures | |
| |
| |
| |
Utility Services | |
| |
| |
| |
Industry Adoption | |
| |
| |
| |
Summary | |
| |
| |
| |
Links to developerWorks | |
| |
| |
Glossary | |
| |
| |
Index | |