Available:*
Library | Item Barcode | Call Number | Material Type | Item Category 1 | Status |
---|---|---|---|---|---|
Searching... | 30000010124939 | QA76.76.D47 S47 2006 | Open Access Book | Book | Searching... |
Searching... | 30000010134688 | QA76.76.D47 S47 2006 | Open Access Book | Book | Searching... |
On Order
Summary
Summary
The well-written, practical guide to SOA - a perfect blend of principles AND how to transition an IT infrastructure toward the SOA model. Powerhouse author team - IBM's brightest Goes far beyond any other book today - covering the realms of policy-based management, enterprise application integration, multi-protocol support, and technical implementation of business processes and workflow. Excellent end-to-end deployment guide -- thorough, detailed, with examples to guide reader through difficult concepts. Service-Oriented Architecture Compass provides a foundation for enterprise architects on the principles of service-oriented architecture and offers guidance on how to begin transitioning an IT infrastructure toward the SOA model. The book positions SOA as not only a technical implementation but also as an approach to converting an organization's existing IT offerings and applications into an infrastructure that is more tightly integrated with business processes and operations. the book focuses on how to create the rationale necessary for moving toward a service-oriented model and how to plan, design, and implement that model to increase business value. CD-ROM will contain examples and re-usable code from the book.
Author Notes
Norbert Bieberstein is a solution architect for the IBM Enterprise Integration team and is responsible for the team''s worldwide communication. In his dual role, he gained first-hand experiences from customer projects in various industries striving to migrate to SOA-based On Demand solutions. He currently is completing his MBA at Henley Management College in the United Kingdom. In his communication role, he is delivering insight and best practices to IBM and customers in various forms. Norbert co-authored the IBM Redbooks Introduction to Grid Computing with Globus (SG24-6895-01) and Enabling Applications for Grid Computing with Globus (SG24-6936-00) , wrote the textbook CASE-Tools (ISBN: 3446175261), and published several magazine articles on various IT topics. Norbert also worked as a technology manager in the IBM software partner organization, where he led the IBM OMG delegation during UML definition. He also acted as a software engineering (CASE) consultant to the IBM software development labs. Norbert has more than 25 years of experience in information technology and computer sciences. Before joining IBM in 1989, he was an application developer for a regional CIM provider and worked as scientific programmer at Aachen University of Technology (RWTH), where he received his masters in mathematics and geography. He also holds teacher''s degrees for higher education in Germany. He lives with his family near Düsseldorf, Germany.
Sanjay Bose is the Design Center leader for the IBM Enterprise Integration team. He has more than 12 years of IT industry experience, primarily focused on creating product architecture and design, articulating technical strategy, and designing enterprise application systems using distributed technologies. He currently leads the design center to identify IBM software portfolio requirements and to develop solution components and assets by engaging enterprise clients and IBM software product development laboratories. His areas of expertise include service-oriented architecture, enterprise service bus, Web services, J2EE, and e-business technologies. Sanjay also worked in product development on the WebSphere Application Server and the WebSphere Portal Server. He has published several technical papers and also has contributed to industry specifications and standards. Sanjay received his bachelor''s degree in computer science and engineering from the Indian Institute of Technology (IIT) in Mumbai, India and has completed MBA coursework at the Tepper School of Business, Carnegie Mellon University. He lives and works in Pittsburgh, Pennsylvania.
Marc Fiammante is an IBM Distinguished Engineer, elected to the IBM Academy of Technology in 2003, with wide experience in large project architecture and software development on multiple environments. He is the chief architect of the European, Middle East, Africa, and Asia-Pacific Enterprise Integration Solutions team. Marc has 21 years of experience in IT. He has filed several software domain patents and has published several articles related to e-business technologies. He leads architecture teams in major industry projects. He has architectural and technical expertise with service-oriented architecture, Web services, enterprise application integration, and e-business and object-oriented technologies, including a number of software middleware systems, programming languages, and standards. Marc is a graduate engineer of the Ecole Centrale de Paris.
Keith Jones, PhD , is currently a leading IT architect at IBM Enterprise Integration Solutions, where he focuses on the definition and implementation of service-oriented architectures with leading-edge customers. He has 30 years of experience in the IT industry as a systems engineer, software developer, strategist, systems architect, and author of many middleware publications. Keith''s professional interests center on building transactional, message-oriented, and service-oriented middleware infrastructures in support of business processes in a wide range of customer environments. Most recently, these have included infrastructures at major financial services, retail services, automotive manufacturing, online media, and auction enterprises. Keith has a PhD in chemistry and lives with his family in Boulder, Colorado.
Rawn Shah is the Community Editor (and, formerly, the SOA and Web services Zone Editor) for IBM developerWorks. Rawn has 12 years of experience in the IT industry, serving in various roles including positions as a network administrator, an application developer, a vice president of a regional Internet service provider, a columnist, an author, and an editor. He has written more than 280 articles for dozens of technology magazines, including CNN.com, NetworkWorld, JavaWorld, NC World, Windows TechEdge, and LinuxWorld, and he was directly involved in the release of the industry-leading publications JavaWorld and LinuxWorld in the mid-1990s. His interests lie in finding new ways for facilitating the communication and collaboration of technical ideas and processes between distributed audiences and transferring this knowledge in meaningful ways to nontechnical audiences such as business teams. He and his family currently reside in Tucson, Arizona.
© Copyright Pearson Education. All rights reserved.
Table of Contents
Forewords | p. xxi |
Preface | p. xxv |
Acknowledgments | p. xxvii |
About the Authors | p. xxix |
developerWorks and SOA | p. xxxi |
Chapter 1 Introducing SOA | p. 1 |
1.1 SOA to the Rescue | p. 3 |
1.2 Exploring SOA | p. 4 |
1.2.1 The Term "SOA" | p. 4 |
1.2.2 Dimensions of SOA | p. 5 |
1.3 A Preview of the Service-Oriented Architecture Compass | p. 7 |
1.4 Summary | p. 9 |
1.5 References | p. 9 |
Chapter 2 Explaining the Business Value of SOA | p. 11 |
2.1 The Forces of Change | p. 12 |
2.1.1 Enterprise Reconstruction | p. 13 |
2.1.2 Industry Deconstruction | p. 14 |
2.1.3 The Impact of the Enterprise Reconstruction and Industry Deconstruction Trends | p. 15 |
2.1.4 The Trend Toward Business Components and Services | p. 16 |
2.2 Common Questions About SOA | p. 16 |
2.2.1 What Is SOA? | p. 16 |
2.2.2 Why Do Companies Need SOA? | p. 17 |
2.2.3 What Benefits Will Businesses Receive if They Implement SOA? | p. 17 |
2.2.4 What Opportunities Will Companies Miss if They Don't Implement SOA? | p. 18 |
2.2.5 What Is Different with SOA Compared to Previous Approaches? | p. 18 |
2.2.6 Rethinking Components for Business and Applications | p. 19 |
2.2.7 When Not to Implement an SOA | p. 20 |
2.3 SOA Value Roadmap | p. 21 |
2.3.1 Explaining SOA to Business People | p. 21 |
2.3.2 A Checklist for Business Change Agility | p. 22 |
2.4 The Nine Business Rules of Thumb for SOAs | p. 31 |
2.5 Summary | p. 32 |
2.6 References | p. 32 |
Chapter 3 Architecture Elements | p. 35 |
3.1 Refining SOA Characteristics | p. 37 |
3.1.1 Platform | p. 37 |
3.1.2 Location | p. 38 |
3.1.3 Protocols | p. 38 |
3.1.4 Programming Language | p. 39 |
3.1.5 Invocation Patterns | p. 39 |
3.1.6 Security | p. 39 |
3.1.7 Service Versioning | p. 39 |
3.1.8 Service Model | p. 40 |
3.1.9 Information Model | p. 41 |
3.1.10 Data Format | p. 41 |
3.1.11 Applying the SOA Characteristics | p. 41 |
3.2 Infrastructure Services | p. 41 |
3.2.1 Resource Virtualization Services | p. 42 |
3.2.2 Service-Level Automation and Orchestration | p. 42 |
3.2.3 Utility Business Services | p. 43 |
3.3 The Enterprise Service Bus (ESB) | p. 43 |
3.3.1 Transport | p. 45 |
3.3.2 Quality-of-Service-Based Routing | p. 45 |
3.3.3 Mediation | p. 46 |
3.3.4 Web Services Gateway | p. 47 |
3.4 SOA Enterprise Software Models | p. 47 |
3.4.1 Industry Models | p. 47 |
3.4.2 Platform-Independent Realization | p. 48 |
3.4.3 Platform-Specific Realization | p. 49 |
3.4.4 J2EE Realization | p. 50 |
3.4.5 Services Integration on the WebSphere Application Server | p. 50 |
3.4.6 The Information Management Domain | p. 53 |
3.5 The IBM On Demand Operating Environment | p. 57 |
3.6 Summary | p. 60 |
3.7 Links to developWorks | p. 61 |
3.8 References | p. 61 |
Chapter 4 SOA Project Planning Aspects | p. 63 |
4.1 Organizing Your SOA Project Office | p. 63 |
4.2 SOA Adoption Roadmap | p. 65 |
4.3 The Need for SOA Governance | p. 68 |
4.3.1 SOA Governance Motivation and Objectives | p. 68 |
4.3.2 An SOA Governance Model | p. 69 |
4.3.3 Strategic Direction and SOA Governance Principles | p. 69 |
4.3.4 Empowerment and Funding | p. 70 |
4.3.5 Managing the Risk of an SOA Roadmap | p. 70 |
4.3.6 SOA Governance Processes | p. 72 |
4.3.7 Launching the Governance Model | p. 73 |
4.3.8 Hints and Tips for Success | p. 74 |
4.4 SOA Technical Governance | p. 75 |
4.4.1 Reducing Impact by Modularization | p. 75 |
4.4.2 Achieving Middleware Independence with Explicit Process State | p. 75 |
4.4.3 Business Exceptions Monitoring and Handling | p. 75 |
4.5 SOA Project Roles | p. 76 |
4.5.1 The Function of Roles | p. 76 |
4.5.2 Roles and Skills | p. 77 |
4.5.3 Project Phases | p. 77 |
4.5.4 Examining and Adapting Roles | p. 77 |
4.5.5 A Look at Existing Roles | p. 78 |
4.5.6 A Look at New Roles | p. 79 |
4.5.7 Integrating Existing and New Roles | p. 81 |
4.6 Summary | p. 82 |
4.7 Links to developerWorks | p. 84 |
4.8 References | p. 84 |
Chapter 5 Aspects of Analysis and Design | p. 85 |
5.1 Service-Oriented Analysis and Design | p. 85 |
5.1.1 On Modeling | p. 86 |
5.1.2 Layers of Abstraction | p. 86 |
5.1.3 Reuse | p. 89 |
5.1.4 Service Encapsulation | p. 90 |
5.1.5 Loose-Coupling | p. 91 |
5.1.6 Strong Cohesion | p. 92 |
5.1.7 Service Granularity | p. 94 |
5.1.8 Well-Designed Services | p. 94 |
5.2 Service-Oriented Analysis and Design-Activities | p. 95 |
5.2.1 Identifying Services | p. 95 |
5.2.2 Categorization of Services | p. 97 |
5.2.3 Specification of Services | p. 97 |
5.2.4 Realization of Services | p. 98 |
5.3 Summary | p. 99 |
5.4 Links to developerWorks | p. 99 |
5.5 References | p. 100 |
Chapter 6 Enterprise Solution Assets | p. 103 |
6.1 Architect's Perspective | p. 104 |
6.1.1 Selecting the Architectural Methodology | p. 104 |
6.1.2 Formalizing Architectural Decisions | p. 104 |
6.1.3 Identifying Architectural Best Practices | p. 105 |
6.1.4 Performing the Product and Package Mappings | p. 105 |
6.2 Enterprise Solution Assets Explained | p. 106 |
6.3 A Catalog of Enterprise Solution Assets | p. 106 |
6.4 How Does an ESA Solve Enterprise Problems? | p. 107 |
6.5 Selecting an Enterprise Solution Asset | p. 108 |
6.6 Using an Enterprise Solution Asset | p. 108 |
6.7 Multitiered Disconnected Operation | p. 108 |
6.7.1 Problem Synopsis | p. 108 |
6.7.2 Context | p. 109 |
6.7.3 Forces | p. 110 |
6.7.4 Solution | p. 110 |
6.7.5 Consequences | p. 114 |
6.8 Request Response Template | p. 115 |
6.8.1 Problem Synopsis | p. 115 |
6.8.2 Context | p. 116 |
6.8.3 Forces | p. 116 |
6.8.4 Solution | p. 117 |
6.8.5 Consequences | p. 119 |
6.9 Summary | p. 120 |
6.10 Links to developerWorks | p. 120 |
6.11 References | p. 120 |
Chapter 7 Determining Non-Functional Requirements | p. 123 |
7.1 Business Constraints | p. 123 |
7.1.1 Operating Ranges | p. 124 |
7.1.2 Legal Constraints | p. 124 |
7.1.3 Industry Business Standards | p. 124 |
7.2 Technology Constraints | p. 124 |
7.2.1 Operating Environment Constraints | p. 126 |
7.2.2 Technical Model Constraints | p. 127 |
7.2.3 Access Constraints | p. 127 |
7.2.4 Expertise Constraints | p. 127 |
7.3 Runtime Qualities | p. 127 |
7.3.1 Performance NFRs | p. 127 |
7.3.2 Scalability NFRs | p. 130 |
7.3.3 Transactional Integrity NFRs | p. 130 |
7.3.4 Security NFRs | p. 131 |
7.4 Nonruntime Qualities | p. 131 |
7.4.1 Manageability NFRs | p. 131 |
7.4.2 Version Management NFRs | p. 132 |
7.4.3 Disaster-Recovery NFRs | p. 132 |
7.5 Summary | p. 133 |
7.6 Links to developerWorks | p. 133 |
7.7 References | p. 133 |
Chapter 8 Securing the SOA Environment | p. 135 |
8.1 Architectural Considerations for an SOA Security Model | p. 135 |
8.2 Concepts and Elements of Security | p. 137 |
8.2.1 Integrity | p. 137 |
8.2.2 Confidentiality | p. 137 |
8.2.3 Identity and Authentication | p. 138 |
8.2.4 Message Authentication | p. 138 |
8.2.5 Session Management | p. 139 |
8.2.6 Authorization | p. 139 |
8.2.7 Privacy | p. 141 |
8.2.8 Non-Repudiation | p. 141 |
8.2.9 Cryptography | p. 142 |
8.2.10 Trust | p. 143 |
8.2.11 Federation | p. 144 |
8.3 Implementation Requirements for SOA Security | p. 144 |
8.3.1 Managing Security Policies | p. 144 |
8.3.2 Defining Transport Security Policies | p. 144 |
8.3.3 Defining Message Layer Security Policies | p. 145 |
8.3.4 Defining Data Protection Policies | p. 146 |
8.3.5 Defining Security Token Policies | p. 146 |
8.3.6 Defining Cryptographic Key Policies | p. 147 |
8.3.7 Coordinating Policies Between Business Partners | p. 147 |
8.4 Standards and Mechanisms for SOA Security | p. 147 |
8.4.1 The Basic Security Standard: WS-Security | p. 148 |
8.4.2 Trust Domains: WS-Trust | p. 150 |
8.4.3 Federated Security: WS-Federation | p. 150 |
8.4.4 Session Management: WS-SecureConversation | p. 151 |
8.4.5 Authorization and Policies: WS-Policy | p. 152 |
8.5 Implementing Security in SOA Systems | p. 153 |
8.5.1 Implementing Basic Security Services | p. 153 |
8.5.2 Implementing Point-of-Contact Services | p. 154 |
8.5.3 Implementing Message Layer Security Services | p. 155 |
8.5.4 Implementing Trust Services | p. 155 |
8.5.5 Implementing a Federation | p. 155 |
8.6 Non-Functional Requirements Related to Security | p. 156 |
8.6.1 The Performance Impact of Security | p. 156 |
8.6.2 Managing Security | p. 157 |
8.7 Technology and Product Mappings | p. 158 |
8.7.1 Transport Layer Point of Contact | p. 158 |
8.7.2 Web Services Layer Point of Contact | p. 158 |
8.7.3 Trust Services | p. 159 |
8.7.4 Federation Services | p. 159 |
8.8 Summary | p. 159 |
8.9 Links to developerWorks | p. 160 |
8.10 References | p. 160 |
Chapter 9 Managing the SOA Environment | p. 163 |
9.1 Distributed Service Management and Monitoring Concepts | p. 163 |
9.1.1 Event-Driven Management | p. 164 |
9.1.2 Levels of SOA-Driven Management | p. 164 |
9.2 Key Services Management Concepts | p. 167 |
9.2.1 Managing the Enterprise Service Bus | p. 168 |
9.2.2 Evolving Standards | p. 169 |
9.3 Operational Management Challenges | p. 169 |
9.3.1 Challenges with Respect to Management Perspectives | p. 170 |
9.3.2 Phases of Deployment | p. 171 |
9.4 Service-Level Agreement Considerations | p. 172 |
9.5 SOA Management Products | p. 173 |
9.5.1 Business Performance and Business Service Management | p. 173 |
9.5.2 IT Application and Resource Management | p. 174 |
9.5.3 Other Areas of Management | p. 176 |
9.5.4 External Product Relationships | p. 178 |
9.6 Summary | p. 178 |
9.7 Links to developerWorks | p. 178 |
9.8 References | p. 179 |
Chapter 10 Case Studies in SOA Deployment | p. 181 |
10.1 Case Study: SOA in the Insurance Industry | p. 181 |
10.1.1 IT and Business Challenges | p. 182 |
10.1.2 Solution Implementation | p. 182 |
10.1.3 Impact of the Project | p. 186 |
10.1.4 Lessons Learned | p. 188 |
10.2 Case Study: SOA in Government Services | p. 189 |
10.2.1 IT and Business Challenges | p. 189 |
10.2.2 Technical Implementation | p. 190 |
10.2.3 Impact of the Project | p. 190 |
10.2.4 Lessons Learned | p. 192 |
10.3 Summary | p. 193 |
Chapter 11 Navigating Forward | p. 195 |
11.1 What We Learned | p. 195 |
11.2 Guiding Principles | p. 197 |
11.3 Future Directions | p. 198 |
11.3.1 Technology Standards | p. 199 |
11.3.2 Web Services Monitoring and Visualization | p. 199 |
11.3.3 Semantic Web Services | p. 199 |
11.3.4 Open Development Platforms | p. 199 |
11.3.5 Services Assets | p. 200 |
11.3.6 SOA Programming Models | p. 200 |
11.3.7 Virtual Services Platform | p. 200 |
11.3.8 Event-Driven Architectures | p. 200 |
11.3.9 Model-Driven Architectures | p. 201 |
11.3.10 Utility Services | p. 201 |
11.3.11 Industry Adoption | p. 201 |
11.4 Summary | p. 201 |
11.5 Links to developerWorks | p. 202 |
Glossary | p. 203 |
Index | p. 221 |