You are previewing Executing SOA: A Practical Guide for the Service-Oriented Architect.
O'Reilly logo
Executing SOA: A Practical Guide for the Service-Oriented Architect

Book Description

The Expert, Practical Guide to Succeeding with SOA in the Enterprise

In Executing SOA, four experienced SOA implementers share realistic, proven, “from-the-trenches” guidance for successfully delivering on even the largest and most complex SOA initiative.

This book follows up where the authors’ best-selling Service-Oriented Architecture Compass left off, showing how to overcome key obstacles to successful SOA implementation and identifying best practices for all facets of execution—technical, organizational, and human. Among the issues it addresses: introducing a services discipline that supports collaboration and information process sharing; integrating services with preexisting technology assets and strategies; choosing the right roles for new tools; shifting culture, governance, and architecture; and bringing greater agility to the entire organizational lifecycle, not just isolated projects.

Executing SOA is an indispensable resource for every enterprise architect, technical manager, and IT leader tasked with driving value from SOA in complex environments.

Coverage includes

·  Implementing SOA governance that reflects the organization’s strategic and business focus

·  Running SOA projects successfully: practical guidelines and proven methodologies around service modeling and design

·  Leveraging reusable assets: making the most of your SOA repository

·  Enabling the architect to choose the correct tools and products containing the features required to execute on the SOA method for service design and implementation

·  Defining information services to get the right information to the right people at the right time

·  Integrating SOA with Web 2.0 and other innovative products and solutions

·  Providing highly usable human interfaces in SOA environments

    

Table of Contents

  1. Copyright
    1. Dedication
  2. IBM Press: The developerWorks® Series
  3. Foreword
  4. Acknowledgments
  5. About the Authors
  6. 1. Introducing SOA
    1. 1.1. SOA in Retrospect
    2. 1.2. New Items to Consider
    3. 1.3. What Makes This Book Different?
    4. 1.4. Who Is This Book For?
    5. 1.5. What Is Covered in This Book?
    6. 1.6. Links to developerWorks Articles
    7. 1.7. References
    8. Endnotes
  7. 2. Unveiling the Benefits
    1. 2.1. Why the Business Should Care About SOA
      1. 2.1.1. Industry Trends Drive the Need for a Business-Oriented Approach
      2. 2.1.2. Accessible Business Services
      3. 2.1.3. Easily Accessible and Correct Data
      4. 2.1.4. The Skills Needed in the Rapidly Changing Workforce
    2. 2.2. Architecture
    3. 2.3. Focus on Business Architecture
    4. 2.4. Business Process
    5. 2.5. Business Components
    6. 2.6. Lifting the Veil
    7. 2.7. Link to developerWorks Article
    8. 2.8. References
    9. Endnotes
  8. 3. SOA Governance
    1. 3.1. Governance of the SOA Strategy
      1. 3.1.1. IT Governance Considerations
      2. 3.1.2. Business and IT Alignment
      3. 3.1.3. Business Agility
      4. 3.1.4. Technical Agility
      5. 3.1.5. Information Agility
      6. 3.1.6. Portfolio Management
    2. 3.2. Organizing for SOA
      1. 3.2.1. Organization
      2. 3.2.2. Roles and Responsibilities
    3. 3.3. SOA Governance Considerations
      1. 3.3.1. SOA Governance Paradigm
      2. 3.3.2. SOA Governance Checklist
        1. 3.3.2.1. Services Development Life Cycle (SvDLC)
        2. 3.3.2.2. Service Life Cycle
        3. 3.3.2.3. Business Agility
        4. 3.3.2.4. Technical Agility
        5. 3.3.2.5. Information Agility
        6. 3.3.2.6. Portfolio Management
        7. 3.3.2.7. Sourcing
        8. 3.3.2.8. Business Value
        9. 3.3.2.9. Regulatory Compliance
        10. 3.3.2.10. Security
        11. 3.3.2.11. Service Ownership
        12. 3.3.2.12. Service Funding
        13. 3.3.2.13. Communications
        14. 3.3.2.14. Education and Mentoring
      3. 3.3.3. Operations and Monitoring
      4. 3.3.4. SOA Transition Plan
    4. 3.4. Conclusion
    5. 3.5. Links to developerWorks Articles
    6. 3.6. References
    7. Endnotes
  9. 4. A Methodology for Service Modeling and Design
    1. 4.1. An SOA Reference Architecture
    2. 4.2. Service Oriented Modeling and Architecture
      1. 4.2.1. Validation of Inputs
      2. 4.2.2. Identification
        1. 4.2.1.1. Domain Decomposition
        2. 4.2.1.2. Existing Asset Analysis
        3. 4.2.1.3. Goal Service Modeling
      3. 4.2.3. Specification
        1. 4.2.3.1. Service Specification
        2. 4.2.3.2. Subsystem Analysis
        3. 4.2.3.3. Component Specification
        4. 4.2.3.4. Realization for Services
        5. 4.2.3.5. Component Allocation to Layers
        6. 4.2.3.6. Component Allocation to Layers—Technical Feasibility Analysis
        7. 4.2.3.7. Realization Decisions
      4. 4.2.4. Using SOMA
    3. 4.3. Conclusion
    4. 4.4. Links to developerWorks Articles
    5. 4.5. References
  10. 5. Leveraging Reusable Assets
    1. 5.1. What Is an Asset?
    2. 5.2. Service Reuse
    3. 5.3. What Makes an SOA Service Reusable?
    4. 5.4. Reusable Patterns
      1. 5.4.1. Industry Models
      2. 5.4.2. MDA
      3. 5.4.3. Getting Assistance with Reusable Patterns
    5. 5.5. Making Legacy Reusable: Harvesting Reusable Components from a Legacy Monolithic Application
      1. 5.5.1. User Interface
      2. 5.5.2. Service Interfaces
      3. 5.5.3. Workflow
      4. 5.5.4. Business Rules
      5. 5.5.5. Service Functions
      6. 5.5.6. Information Service
    6. 5.6. Conclusion
    7. 5.7. Links to developerWorks Articles
    8. 5.8. References
  11. 6. Realization of Services
    1. 6.1. Realizing the SOA Lifecycle
    2. 6.2. Premodeling Activities in an SOA
      1. 6.2.1. Tools for Premodeling Activities
        1. 6.2.1.1. IBM Rational Method Composer
        2. 6.2.1.2. IBM Rational RequisitePro
      2. 6.2.2. The Execution
    3. 6.3. Modeling Services in an SOA
      1. 6.3.1. Tools for Modeling
        1. 6.3.1.1. IBM WebSphere Business Modeler
        2. 6.3.1.2. IBM Rational Software Architect
        3. 6.3.1.3. IBM WebSphere Studio Asset Analyzer
      2. 6.3.2. The Execution
        1. 6.3.2.1. Service Identification
        2. 6.3.2.2. Identify Services from Domain and Process Models
      3. 6.3.3. Tools for Domain Decomposition
      4. 6.3.4. Identify Services from Business Goals
      5. 6.3.5. Identify Services from Existing Assets
        1. 6.3.5.1. Service Specification
        2. 6.3.5.2. Deriving Atomic Services from the Information Model
        3. 6.3.5.3. Specifying Service Messages
        4. 6.3.5.4. Defining Service Collaborations
    4. 6.4. Assembling Services in an SOA
      1. 6.4.1. Tools for Assembly
        1. 6.4.1.1. IBM Rational Application Developer
        2. 6.4.1.2. IBM WebSphere Integration Developer
        3. 6.4.1.3. The Execution
    5. 6.5. Deploying Services in an SOA
      1. 6.5.1. Products for Deployment
        1. 6.5.1.1. IBM WebSphere Process Server
        2. 6.5.1.2. IBM WebSphere Registry and Repository
      2. 6.5.2. The Execution
    6. 6.6. Managing Services in an SOA
      1. 6.6.1. Products for Service Management
        1. 6.6.1.1. IBM WebSphere Business Monitor
        2. 6.6.1.2. ITCAM for SOA
        3. 6.6.1.3. ITCAM for WebSphere, J2EE, and Web Resources
        4. 6.6.1.4. ITCAM for Response Time Tracking
        5. 6.6.1.5. IBM Tivoli OMEGAMON XE for Messaging
      2. 6.6.2. The Execution
    7. 6.7. The SOA Programming Model
      1. 6.7.1. Service Component Architecture
      2. 6.7.2. Service Data Objects
        1. 6.7.2.1. The SDO Architecture
    8. 6.8. Architecture and Design Considerations
      1. 6.8.1. SOA Patterns
        1. 6.8.1.1. Remote Service Strategy Pattern
        2. 6.8.1.2. Service Adapter Pattern
        3. 6.8.1.3. Virtual Service Provider Pattern
        4. 6.8.1.4. Enterprise Service Bus Pattern
      2. 6.8.2. SOA Antipatterns
    9. 6.9. Conclusion
    10. 6.10. Links to developerWorks Articles
    11. 6.11. References
  12. 7. Information Services
    1. 7.1. Data or Information Services
    2. 7.2. Data, SOA, and Loose Coupling
    3. 7.3. From Data Sources to Consumers
    4. 7.4. Qualities of Data
    5. 7.5. Data Processes
    6. 7.6. Data Service Provider Logic Patterns
      1. 7.6.1. Data Federation
      2. 7.6.2. Data Consolidation
      3. 7.6.3. Data Cleansing
      4. 7.6.4. Master Data Management
    7. 7.7. Composite Service Logic
    8. 7.8. Semantic Interoperability
      1. 7.8.1. Common Semantics and Tools
      2. 7.8.2. Common Infrastructure
    9. 7.9. Conclusion
    10. 7.10. Links to developerWorks Articles
    11. 7.11. References
  13. 8. Collaboration Under SOA: The Human Aspects
    1. 8.1. What Does SOA Mean to People?
      1. 8.1.1. The Service-Oriented-People in the Enterprise
      2. 8.1.2. Research on the Impact of SOA in the Enterprise
      3. 8.1.3. The Role of a Service-Oriented Architect
    2. 8.2. Web 2.0 and SOA
      1. 8.2.1. Definition of Web 2.0
      2. 8.2.2. Some Observations of Web 2.0 in Use
      3. 8.2.3. User Contribution
      4. 8.2.4. Services for Mashups
      5. 8.2.5. User Contribution and User Ratings
      6. 8.2.6. Summary of Observations
      7. 8.2.7. Technical Terms of Importance
        1. 8.2.7.1. What Is Ajax?
        2. 8.2.7.2. What Is REST?
        3. 8.2.7.3. What Is RSS?
      8. 8.2.8. Everybody Knows Everything
      9. 8.2.9. New Models
      10. 8.2.10. Web 2.0 and the Service-Oriented Enterprise
    3. 8.3. Building the SOA Collaboration Environment
      1. 8.3.1. The Situational Application Ecosystem
      2. 8.3.2. User Conditions in the Situational Application Ecosystem
      3. 8.3.3. Infrastructure Conditions for the Application Ecosystem
    4. 8.4. Benefits from SOA to Enterprise Operations
      1. 8.4.1. Social Networking Effects for the Web 2.0 Enterprise
      2. 8.4.2. Business Opportunities from Web 2.0 in a Service-Oriented Enterprise
      3. 8.4.3. Challenges of the Mergence of SOA and Web 2.0 in the Enterprise
    5. 8.5. Conclusion
    6. 8.6. Links to developerWorks Articles
    7. 8.7. References
    8. Endnotes
  14. 9. The Future of SOA
    1. 9.1. Composite Business Services and Composite Applications
    2. 9.2. Standardization of Industry Models and Industry-Wide SOA Enablement
    3. 9.3. Packaged Applications Mutating to Point Solutions
    4. 9.4. Hybrid Architectural Approach of SOA and EDA
    5. 9.5. SOA Methodology Evolution
    6. 9.6. Business Processes and SOA Not Without People
    7. 9.7. SOA Metrics
    8. 9.8. Ubiquitous SOA in the Enterprise
    9. 9.9. Global Use of SOA
    10. 9.10. SOA Opens the Amateur Software Services Market
    11. 9.11. Conclusion
    12. 9.12. Links to developerWorks Articles
    13. 9.13. References
    14. Endnotes