SOA with REST : Principles, Patterns and Constraints for Building Enterprise Solutions with REST
SOA with REST : Principles, Patterns and Constraints for Building Enterprise Solutions with REST
Click to enlarge
Author(s): Balasubramanian, Raj
Carlyle, Benjamin
Erl, Thomas
Pautasso, Cesare
ISBN No.: 9780134767444
Pages: 624
Year: 201705
Format: Trade Paper
Price: $ 71.15
Status: Out Of Print

Foreword by Stefan Tilkov xxix Acknowledgments xxxiii Chapter 1: Introduction 1 1.1 About this Book 2 Who this Book is For 2 What this Book Does Not Cover 3 1.2 Recommended Reading 3 1.3 How this Book is Organized 4 1.4 Conventions 8 Use of the Color Red 8 Design Constraints, Principles, and Patterns: Page References and Capitalization 8 Design Goals: Capitalization 9 Symbol Legend 9 1.5 Additional Information 10 Updates, Errata, and Resources (www.servicetechbooks.com) 10 Master Glossary (www.


soaglossary.com) 10 Service-Orientation (www.serviceorientation.com) 10 What Is REST? (www.whatisrest.com) 10 Referenced Specifications (www.servicetechspecs.com) 10 The Service Technology Magazine (www.


servicetechmag.com) 10 SOASchool.com SOA Certified Professional (SOACP) 11 CloudSchool.com Cloud Certified (CCP) Professional 11 Notification Service 11 Chapter 2: Case Study Background 13 2.1 How Case Studies Are Used 14 2.2 Case Study Background #1: Midwest University Association (MUA) 14 History 14 IT Environment 14 Business Goals and Obstacles 16 1. Build Reusable Business Services 18 2. Consolidate Systems and Information 18 3.


Improve Channel Experience 18 4. Build Services Infrastructure 18 2.3 Case Study Background #2: KioskEtc Co. 18 History 19 IT Environment 19 Business Goals and Obstacles 19 Part I: Fundamentals Chapter 3: Introduction to Services 23 3.1 Service Terminology 24 Service 24 Service Contract 24 Service Capability 26 Service Consumer 26 Service Agent 27 Service Composition 27 3.2 Service Terminology Context 29 Services and REST 29 Services and SOA 29 REST Services and SOA 29 Chapter 4: SOA Terminology and Concepts 31 4.1 Basic Terminology and Concepts 32 Service-Oriented Computing 33 Service-Orientation 34 Service-Oriented Architecture (SOA) 37 SOA Manifesto 38 Services 39 Cloud Computing 40 IT Resources 41 Service Models 41 Agnostic Logic and Non-Agnostic Logic 42 Service Inventory 42 Service Portfolio 43 Service Candidate 44 Service Contract 44 Service-Related Granularity 45 Service Profiles 46 SOA Design Patterns 46 4.2 Further Reading 49 4.


3 Case Study Example 50 Chapter 5: REST Constraints and Goals 51 5.1 REST Constraints 52 Client-Server 53 Stateless 54 Cache 55 Interface/Uniform Contract 55 Layered System 56 Code-On-Demand 57 5.2 Goals of the REST Architectural Style 58 Performance 58 Scalability 59 Simplicity 60 Modifiability 61 Visibility 61 Portability 62 Reliability 62 Case Study Example 63 Part II: RESTful Service-Orientation Chapter 6: Service Contracts with REST 67 6.1 Uniform Contract Elements 68 Resource Identifier Syntax (and Resources) 69 URIs (and URLs and URNs) 69 Resource Identifiers and REST Services 71 Methods 71 Media Types 73 6.2 REST Service Capabilities and REST Service Contracts 75 6.3 REST Service Contracts vs. Non-REST Service Contracts 77 Non-REST Service with Custom Service Contract 77 REST Service with Uniform Contract 79 HTTP Messaging vs. SOAP Messaging 81 REST Service Contracts with WSDL? 82 6.


4 The Role of Hypermedia 83 URI Templates and Resource Queries 86 6.5 REST Service Contracts and Late Binding 87 Case Study Example 90 Chapter 7: Service-Orientation with REST 93 7.1 "SOA vs. REST" or "SOA + REST"? 95 7.2 Design Goals 97 Increased Intrinsic Interoperability 97 Increased Federation 98 Increased Vendor Diversity Options 99 Increased Business and Technology Alignment 100 Increased ROI 100 Increased Organizational Agility 102 Reduced IT Burden 102 Common Goals 103 7.3 Design Principles and Constraints 104 Standardized Service Contract 104 Service Loose Coupling 105 Service Abstraction 107 Service Reusability 109 Service Autonomy 110 Service Statelessness 111 Service Discoverability 113 Service Composability 114 Common Conflicts 114 Stateful Interactions 115 Service-Specific Contract Details 115 Case Study Example 116 Part III: Service-Oriented Analysis and Design with REST Chapter 8: Mainstream SOA Methodology and REST 127 8.1 Service Inventory Analysis 131 8.2 Service-Oriented Analysis (Service Modeling) 133 8.


3 Service-Oriented Design (Service Contract) 135 8.4 Service Logic Design 137 8.5 Service Discovery 137 8.6 Service Versioning and Retirement 138 Chapter 9: Analysis and Service Modeling with REST 139 9.1 Uniform Contract Modeling and REST Service Inventory Modeling 141 REST Constraints and Uniform Contract Modeling 144 REST Service Centralization and Normalization 146 9.2 REST Service Modeling 147 REST Service Capability Granularity 148 Resources vs. Entities 149 REST Service Modeling Process 150 Case Study Example 152 Step 1: Decompose Business Process (into Granular Actions) 152 Case Study Example 152 Step 2: Filter Out Unsuitable Actions 154 Case Study Example 154 Step 3: Identify Agnostic Service Candidates 155 Case Study Example 157 Event Service Candidate (Entity) 157 Award Service Candidate (Entity) 158 Student Service Candidate (Entity) 158 Notification Service Candidate (Utility) 159 Document Service Candidate (Utility) 159 Step 4: Identify Process-Specific Logic 160 Case Study Example 160 Confer Student Award Service Candidate (Task) 161 Step 5: Identify Resources 161 Case Study Example 162 Step 6: Associate Service Capabilities with Resources and Methods 163 Case Study Example 164 Confer Student Award Service Candidate (Task) 164 Event Service Candidate (Entity) 164 Award Service Candidate (Entity) 165 Student Service Candidate (Entity) 165 Notification Service Candidate (Utility) 166 Document Service Candidate (Utility) 166 Step 7: Apply Service-Orientation 167 Case Study Example 167 Step 8: Identify Candidate Service Compositions 167 Case Study Example 168 Step 9: Analyze Processing Requirements 169 Step 10: Define Utility Service Candidates 170 Step 11: Associate Utility-Centric Service Capabilities with Resources and Methods 171 Step 12: Apply Service-Orientation 171 Step 13: Revise Candidate Service Compositions 171 Step 14: Revise Resource Definitions 171 Step 15: Revise Capability Candidate Grouping 172 Additional Considerations 172 Chapter 10: Service-Oriented Design with REST 173 10.1 Uniform Contract Design Considerations 175 Designing and Standardizing Methods 175 Designing and Standardizing HTTP Headers 177 Designing and Standardizing HTTP Response Codes 179 Customizing Response Codes 184 Designing Media Types 186 Designing Schemas for Media Types 188 Service-Specific XML Schemas 189 10.


2 REST Service Contract Design 191 Designing Services Based on Service Models 191 Task Services 191 Entity Services 192 Utility Services 193 Designing and Standardizing Resource Identifiers 194 Service Names in Resource Identifiers 195 Other URI Components 196 Resource Identifier Overlap 197 Resource Identifier Design Guidelines 199 Designing with and Standardizing REST Constraints 201 Stateless 201 Cache 202 Uniform Contract 203 Layered System 204 Case Study Example 205 Confer Student Award Service Contract (Task) 205 Event Service Contract (Entity) 207 Award Service Contract (Entity) 207 Student Transcript Service Contract (Entity) 208 Notification and Document Service Contracts (Utility) 209 10.3 Complex Method Design 211 Stateless Complex Methods 214 Fetch Method 214 Store Method 215 Delta Method 217 Async Method 219 Stateful Complex Methods 221 Trans Method 221 PubSub Method 222 Case Study Example 224 OptLock Complex Method 224 PesLock Complex Method 226 Part IV: Service Composition with REST Chapter 11: Fundamental Service Composition with REST 231 11.1 Service Composition Terminology 233 Compositions and Composition Instances 233 Composition Members and Controllers 234 Service Compositions Are Actually Service Capability Compositions 235 Designated Controllers 236 Collective Composability 236 Service Activities 238 Composition Initiators 239 Point-to-Point Data Exchanges and Compositions 240 11.2 Service Composition Design Influences 241 Service-Orientation Principles and Composition Design 241 Standardized Service Contract and the Uniform Contract 242 Service Loose Coupling and the Uniform Contract 243 Service Abstraction and Composition Information Hiding 244 Service Reusability for Repeatable Composition 245 Service Autonomy and Composition Autonomy Loss 245 Service Statelessness and Stateless 246 Service Composability and Service-Orientation 246 REST Constra.


To be able to view the table of contents for this publication then please subscribe by clicking the button below...
To be able to view the full description for this publication then please subscribe by clicking the button below...