Muutke küpsiste eelistusi

E-raamat: SOA with REST: Principles, Patterns & Constraints for Building Enterprise Solutions with REST

Teised raamatud teemal:
  • Formaat - PDF+DRM
  • Hind: 31,68 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
Teised raamatud teemal:

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

 This book illuminates the connection of the two domains--SOA and REST--in a manner that is concrete and practical, providing concise application to everyday architectural challenges. Fantastic!

--Ryan Frazier, Technology Strategist, Microsoft

 

...a tour de force that elegantly applies REST principles to the industry-standard SOA framework described in prior titles in this series.... This book is a must-read for anyone developing REST services.

--Dave Slotnick, Enterprise Architect, Rackspace Hosting

 

This book undoubtedly will help SOA to reap the benefits from the main value propositions of Web architecture.

--Dr. Erik Wilde, Architect, EMC Corporation

 

REST is so much more than just another type of interface implementation--SOA with REST shows how the ecosystem of service compositions changes as new opportunities arise for service composition architecture designs. A comprehensive guide and a must-read for any serious IT architect considering REST-style services for application architectures.

--Roger Stoffers, Solution Architect, Hewlett Packard

 

Service-orientation and REST both are architectural styles that are cornerstones of modern applications and cloud computing. Both aim to deliver scalable, interoperable solutions, but their different roots dont always make them a natural fit. SOA with REST explains how the two styles can work together in enterprise environments. It discusses a design process for a services portfolio that meets the goals of SOA and at the same time designs services that comply with the established REST constraints. It also shows pragmatic approaches to meet enterprise-grade requirements with the REST programming style but relaxes constraints where necessary.

--Christoph Schittko, Director of Cloud Strategy, Microsoft

 

An excellent repertoire of service-oriented patterns that will prove handy when solving problems in the real world. The REST perspectives and principles will provide complete coverage of modern-day Web 2.0 style approaches. Highly recommended.

--Sid Sanyal, IT Architect, Zurich Financial Services

 

An inspirational book that provides deep insight into the design and development of next-generation service-oriented systems based on the use of REST. This book clarifies the convergence of SOA and REST with no-nonsense content that addresses common questions and issues head-on. An essential instrument of modern service implementation and a powerful body of knowledge for software designers, architects, and consultants.

--Pethuru Raj, Ph.D., Enterprise Architecture (EA) Consultant, Wipro Consulting Services

 

REST and SOA are two of the most misunderstood terms in the software industry over the past decade. Yet the REST architectural style coupled with modern RESTful framework implementations provides a scalable and reliable approach to SOA. This book covers all you need to know about how to take the principles of REST and apply them in small and large SOA developments. If you are familiar with REST and thinking about SOA, then you need this book. If you have not considered REST in your SOA work, then this book is for you, too. Covering concepts of both REST and SOA, as well as design patterns and when to use them, the book is a wonderful companion and a good tool for architects and engineers.

--Dr. Mark Little, CTO JBoss, Red Hat

 

Unlike many other texts on the subject, SOA with REST is a well-rounded, easy-to-read narrative, including real-world case studies that appeal to both developers and analysts. This makes it an indispensable source for any SOA practitioner or any professional who is planning to initiate an SOA project.

--Theodore T. Morrison, Certified SOA Analyst, CSM, Geocent, LLC

 

SOA and REST are two very important architectural styles for distributed computing. SOA is successfully adopted by most enterprises, and the REST style is getting more attention from both researcher and industry users. The book SOA with REST introduces a new architectural style that is ingeniously combining both SOA and REST styles and clearly reveals how SOA and REST can work together to generate successful enterprise SOA strategies with REST, along with guidance for making architecture design decisions. This book is a bible of best practices for designing and implementing SOA architecture with REST. It is a must-have reference book for both IT practitioners and researchers.

--Longji Tang, FedEx IT Senior Technical Advisor, Ph.D. in CSSE

 

The Definitive Guide to Building Web-Centric SOA with REST

The World Wide Web is based on the most successful technology architecture in history.  It has changed how we view, access, and exchange information and, with the advent of REST, it has also provided us with compelling ways to build and improve automation solutions. REST provides a great deal of guidance to ensure that an architecture and its automation logic are technically sound, though it is still your responsibility to build services that actually add value to your business.

 

SOA with REST is the first comprehensive tutorial and reference for designing and building RESTful services as part of service-oriented solutions and in conjunction with service-oriented architecture (SOA). This book demonstrates that REST is not only a suitable medium for building truly service-oriented solutions, but also that the service-oriented architectural model is a necessary foundation for REST technology architectures to realize their full business potential.

 

The authors provide thorough mapping of REST constraints and architectural goals with service-orientation principles and SOA characteristics. Using real-world examples, they show how to leverage RESTs simplicity, flexibility, and low overhead without compromising the power or manageability of service-oriented solutions and architectures.

 

This book will be valuable to IT architects, developers, and any practitioner seeking to use SOA and REST together.

 

Topic Areas





Distributed solution design with HTTP and REST REST-based service composition architectures REST service modeling and a service-oriented analysis process for REST service candidates Technical service contract notation for REST services based on a uniform contract Designing REST service contracts with service-orientation Understanding REST constraints in relation to service-orientation principles Using hypermedia and dynamic binding within SOA and service compositions Creating complex HTTP-based methods for enterprise solutions Advanced design techniques, including composition deepening, runtime logic deferral, and dynamic binding with common properties Cross-service transactions and event-driven messaging with REST Addressing enterprise solution concerns in relation to REST-based state management Applying SOA design patterns to REST-based solutions Distinguishing REST and SOA service concepts and terminology Designing REST architectures with SOA Versioning REST services and uniform contracts Fundamental REST, SOA, and service-orientation concepts and terminology REST constraints, REST architectural goals, and properties Seven new REST-inspired design patterns Defining common goals of REST and SOA

 

Arvustused

This book illuminates the connection of the two domains--SOA and REST--in a manner that is concrete and practical, providing concise application to everyday architectural challenges. Fantastic!

--Ryan Frazier, Technology Strategist, Microsoft

 

SOA can be done in many different ways, and REST has become the most visible newcomer in the space of potential implementation frameworks. This book illustrates what architects and developers need to know about RESTful SOA and most importantly drives home the main point that REST makes as a style for SOA: It is all about designing service ecosystems and providing clients an easy way to use resources in those ecosystems and even connect them across individual services. This book undoubtedly will help SOA to reap the benefits from the main value propositions of Web architecture: decentralization, loose coupling, connectedness, self-describing services, and service interfaces that are independent from service implementations.

--Dr. Erik Wilde, Architect, EMC Corporation

 

SOA with REST is a tour de force that elegantly applies REST principles to the industry-standard SOA framework described in prior titles in this series. The book provides useful guidance to practitioners while staying true in form and spirit to the REST constraints defined in Roy Fieldings thesis. The chapters on RESTful contract design in and of themselves justify the cost of purchase. This book is a must-read for anyone developing REST services.

--Dave Slotnick, Enterprise Architect, Rackspace Hosting

 

An excellent repertoire of service-oriented patterns that will prove handy when solving problems in the real world. The REST perspectives and principles will provide complete coverage of modern-day Web 2.0 style approaches. Highly recommended.

--Sid Sanyal, IT Architect, Zurich Financial Services

 

REST is so much more than just another type of interface implementation--SOA with REST shows how the ecosystem of service compositions changes as new opportunities arise for service composition architecture designs. A comprehensive guide and a must-read for any serious IT architect considering REST-style services for application architectures.

--Roger Stoffers, Solution Architect, Hewlett Packard

 

Service-orientation and REST both are architectural styles that are cornerstones of modern applications and cloud computing. Both aim to deliver scalable, interoperable solutions, but their different roots dont always make them a natural fit. SOA with REST explains how the two styles can work together in enterprise environments. It discusses a design process for a services portfolio that meets the goals of SOA and at the same time designs services that comply with the established REST constraints. It also shows pragmatic approaches to meet enterprise-grade requirements with the REST programming style but relaxes constraints where necessary.

--Christoph Schittko, Director of Cloud Strategy, Microsoft

 

An inspirational book that provides deep insight into the design and development of next-generation service-oriented systems based on the use of REST. This book clarifies the convergence of SOA and REST with no-nonsense content that addresses common questions and issues head-on. An essential instrument of modern service implementation and a powerful body of knowledge for software designers, architects, and consultants.

--Pethuru Raj, Ph.D., Enterprise Architecture (EA) Consultant, Wipro Consulting Services

 

The Service Technology Series from Thomas Erl continues its tradition of using simple examples to elucidate complicated concepts. With the latest in the series, SOA with REST, the authors have created a resource that discusses REST through the lenses of the common SOA pattern language. SOA with REST is a fantastic resource for the enterprise architect and developer alike!

--Kevin P. Davis, Ph.D., Software Architect

 

Unlike many other texts on the subject, SOA with REST is a well-rounded, easy-to-read narrative, including real-world case studies that appeal to both developers and analysts. This makes it an indispensable source for any SOA practitioner or any professional who is planning to initiate an SOA project.

--Theodore T. Morrison, Certified SOA Analyst, CSM, Geocent, LLC

 

The book is a must-read for any IT architect or software engineer who wants to gain a deep understanding of the principles, patterns, and implementation concepts that pertain to building REST-based applications for service-oriented architectures. It goes well beyond fundamental topics to explore the relationship between REST and various specific SOA principles and patterns.

--Sanjay Singh, Certified SOA Architect, Development Manager, NorthgateArinso

 

An authoritative, well-written reference for enterprise architects, analysts, developers, and others. This book shows not only the elegance, simplicity, and versatility of REST, it also gives us a clear understanding of how REST synergizes with SOA and service-orientation, how REST can impact SOA design goals, how we can design and develop REST services, and how we can address the unique challenges of integrating RESTfulness into service-orientation. This book is required reading for anyone who desires technical mastery of building service-oriented architectures with REST.

--Philip Wik, MSS Technology

 

This is a comprehensive and fundamental book to understand how to employ REST in service-oriented architectures. The many examples provided and the patterns described will be an invaluable help to any practitioner interested in service orientation.

--Gustavo Alonso, Department of Computer Science, ETH Zurich

 

SOA and REST are two very important architectural styles for distributed computing. SOA is successfully adopted by most enterprises, and the REST style is getting more attention from both researcher and industry users. The book SOA with REST introduces a new architectural style that is ingeniously combining both SOA and REST styles and clearly reveals how SOA and REST can work together to generate successful enterprise SOA strategies with REST, along with guidance for making architecture design decisions. This book is a bible of best practices for designing and implementing SOA architecture with REST. It is a must-have reference book for both IT practitioners and researchers.

--Longji Tang, FedEx IT Senior Technical Advisor, Ph.D. in CSSE

 

REST and SOA are two of the most misunderstood terms in the software industry over the past decade. Yet the REST architectural style coupled with modern RESTful framework implementations provides a scalable and reliable approach to SOA. This book covers all you need to know about how to take the principles of REST and apply them in small and large SOA developments. If you are familiar with REST and thinking about SOA, then you need this book. If you have not considered REST in your SOA work, then this book is for you, too. Covering concepts of both REST and SOA, as well as design patterns and when to use them, the book is a wonderful companion and a good tool for architects and engineers.

--Dr. Mark Little, CTO JBoss, Red Hat

 

This book is an excellent introduction into how SOA methodology can be used with services implementing a RESTful architectural style. Thomas Erl and his co-authors help SOA architects to better understand the implications of utilizing and the requirements for integrating REST into the service-oriented architecting process.

--Gerald Beuchelt, MITRE

Foreword xxix
Stefan Tilkov
Acknowledgments xxxiii
Chapter 1 Introduction
1(12)
1.1 About this Book
2(1)
Who this Book is For
2(1)
What this Book Does Not Cover
3(1)
1.2 Recommended Reading
3(1)
1.3 How this Book is Organized
4(4)
Part I Fundamentals
4(1)
Chapter 3 Introduction to Services
4(1)
Chapter 4 SOA Terminology and Concepts
5(1)
Chapter 5 REST Constraints and Goals
5(1)
Part II RESTful Service-Orientation
5(1)
Chapter 6 Service Contracts with REST
5(1)
Chapter 7 Service-Orientation with REST
5(1)
Part III Service-Oriented Analysis and Design with REST
5(1)
Chapter 8 Mainstream SOA Methodology and REST
5(1)
Chapter 9 Analysis and Service Modeling with REST
5(1)
Chapter 10 Service-Oriented Design with REST
6(1)
Part IV Service Composition with REST
6(1)
Chapter 11 Fundamental Service Composition with REST
6(1)
Chapter 12 Advanced Service Composition with REST
6(1)
Chapter 13 Service Composition with REST Case Study
6(1)
Part V Supplemental
6(1)
Chapter 14 Design Patterns for SOA with REST
6(1)
Chapter 15 Service Versioning with REST
6(1)
Chapter 16 Uniform Contract Profiles
7(1)
Part VI Appendices
7(1)
Appendix A Case Study Conclusion
7(1)
Appendix B Industry Standards Supporting the Web
7(1)
Appendix C REST Constraints Reference
7(1)
Appendix D Service-Orientation Principles Reference
7(1)
Appendix E SOA Design Patterns Reference
7(1)
Appendix F State Concepts and Types
7(1)
Appendix G The Annotated SOA Manifesto
7(1)
Appendix H Additional Resources
8(1)
1.4 Conventions
8(2)
Use of the Color Red
8(1)
Design Constraints, Principles, and Patterns: Page References and Capitalization
8(1)
Design Goals: Capitalization
9(1)
Symbol Legend
9(1)
1.5 Additional Information
10(3)
Updates, Errata, and Resources (www.servicetechbooks.com)
10(1)
Master Glossary (www.soaglossary.com)
10(1)
Service-Orientation (www.serviceorientation.com)
10(1)
What Is REST? (www.whatisrest.com)
10(1)
Referenced Specifications (www.servicetechspecs.com)
10(1)
The Service Technology Magazine (www.servicetechmag.com)
10(1)
SOASchool.com® SOA Certified Professional (SOACP)
11(1)
CloudSchool.com™ Cloud Certified (CCP) Professional
11(1)
Notification Service
11(2)
Chapter 2 Case Study Background
13(10)
2.1 How Case Studies Are Used
14(1)
2.2 Case Study Background #1: Midwest University Association (MUA)
14(4)
History
14(1)
IT Environment
14(2)
Business Goals and Obstacles
16(2)
1 Build Reusable Business Services
18(1)
2 Consolidate Systems and Information
18(1)
3 Improve Channel Experience
18(1)
4 Build Services Infrastructure
18(1)
2.3 Case Study Background #2: KioskEtc Co.
18(5)
History
19(1)
IT Environment
19(1)
Business Goals and Obstacles
19(4)
PART I FUNDAMENTALS
Chapter 3 Introduction to Services
23(8)
3.1 Service Terminology
24(5)
Service
24(1)
Service Contract
24(2)
Service Capability
26(1)
Service Consumer
26(1)
Service Agent
27(1)
Service Composition
27(2)
3.2 Service Terminology Context
29(2)
Services and REST
29(1)
Services and SOA
29(1)
REST Services and SOA
29(2)
Chapter 4 SOA Terminology and Concepts
31(20)
4.1 Basic Terminology and Concepts
32(17)
Service-Oriented Computing
33(1)
Service-Orientation
34(3)
Service-Oriented Architecture (SOA)
37(1)
SOA Manifesto
38(1)
Services
39(1)
Cloud Computing
40(1)
IT Resources
41(1)
Service Models
41(1)
Agnostic Logic and Non-Agnostic Logic
42(1)
Service Inventory
42(1)
Service Portfolio
43(1)
Service Candidate
44(1)
Service Contract
44(1)
Service-Related Granularity
45(1)
Service Profiles
46(1)
SOA Design Patterns
46(3)
4.2 Further Reading
49(1)
4.3 Case Study Example
50(1)
Chapter 5 REST Constraints and Goals
51(16)
5.1 REST Constraints
52(6)
Client-Server
53(1)
Stateless
54(1)
Cache
55(1)
Interface/Uniform Contract
55(1)
Layered System
56(1)
Code-On-Demand
57(1)
5.2 Goals of the REST Architectural Style
58(9)
Performance
58(1)
Scalability
59(1)
Simplicity
60(1)
Modifiability
61(1)
Visibility
61(1)
Portability
62(1)
Reliability
62(1)
Case Study Example
63(4)
PART II RESTFUL SERVICE-ORIENTATION
Chapter 6 Service Contracts with REST
67(26)
6.1 Uniform Contract Elements
68(7)
Resource Identifier Syntax (and Resources)
69(1)
URIs (and URLs and URNs)
69(2)
Resource Identifiers and REST Services
71(1)
Methods
71(2)
Media Types
73(2)
6.2 REST Service Capabilities and REST Service Contracts
75(2)
6.3 REST Service Contracts vs. Non-REST Service Contracts
77(6)
Non-REST Service with Custom Service Contract
77(2)
REST Service with Uniform Contract
79(2)
HTTP Messaging vs. SOAP Messaging
81(1)
REST Service Contracts with WSDL?
82(1)
6.4 The Role of Hypermedia
83(4)
URI Templates and Resource Queries
86(1)
6.5 REST Service Contracts and Late Binding
87(6)
Case Study Example
90(3)
Chapter 7 Service-Orientation with REST
93(34)
7.1 "SOA vs. REST" or "SOA + REST"?
95(2)
7.2 Design Goals
97(7)
Increased Intrinsic Interoperability
97(1)
Increased Federation
98(1)
Increased Vendor Diversity Options
99(1)
Increased Business and Technology Alignment
100(1)
Increased ROI
100(2)
Increased Organizational Agility
102(1)
Reduced IT Burden
102(1)
Common Goals
103(1)
7.3 Design Principles and Constraints
104(23)
Standardized Service Contract
104(1)
Service Loose Coupling
105(2)
Service Abstraction
107(2)
Service Reusability
109(1)
Service Autonomy
110(1)
Service Statelessness
111(2)
Service Discoverability
113(1)
Service Composability
114(1)
Common Conflicts
114(1)
Stateful Interactions
115(1)
Service-Specific Contract Details
115(1)
Case Study Example
116(11)
PART III SERVICE-ORIENTED ANALYSIS AND DESIGN WITH REST
Chapter 8 Mainstream SOA Methodology and REST
127(12)
8.1 Service Inventory Analysis
131(2)
8.2 Service-Oriented Analysis (Service Modeling)
133(2)
8.3 Service-Oriented Design (Service Contract)
135(2)
8.4 Service Logic Design
137(1)
8.5 Service Discovery
137(1)
8.6 Service Versioning and Retirement
138(1)
Chapter 9 Analysis and Service Modeling with REST
139(34)
9.1 Uniform Contract Modeling and REST Service Inventory Modeling
141(6)
REST Constraints and Uniform Contract Modeling
144(2)
REST Service Centralization and Normalization
146(1)
9.2 REST Service Modeling
147(26)
REST Service Capability Granularity
148(1)
Resources vs. Entities
149(1)
REST Service Modeling Process
150(2)
Case Study Example
152(1)
Step 1 Decompose Business Process (into Granular Actions)
152(1)
Case Study Example
152(2)
Step 2 Filter Out Unsuitable Actions
154(1)
Case Study Example
154(1)
Step 3 Identify Agnostic Service Candidates
155(2)
Case Study Example
157(1)
Event Service Candidate (Entity)
157(1)
Award Service Candidate (Entity)
158(1)
Student Service Candidate (Entity)
158(1)
Notification Service Candidate (Utility)
159(1)
Document Service Candidate (Utility)
159(1)
Step 4 Identify Process-Specific Logic
160(1)
Case Study Example
160(1)
Confer Student Award Service Candidate (Task)
161(1)
Step 5 Identify Resources
161(1)
Case Study Example
162(1)
Step 6 Associate Service Capabilities with Resources and Methods
163(1)
Case Study Example
164(1)
Confer Student Award Service Candidate (Task)
164(1)
Event Service Candidate (Entity)
164(1)
Award Service Candidate (Entity)
165(1)
Student Service Candidate (Entity)
165(1)
Notification Service Candidate (Utility)
166(1)
Document Service Candidate (Utility)
166(1)
Step 7 Apply Service-Orientation
167(1)
Case Study Example
167(1)
Step 8 Identify Candidate Service Compositions
167(1)
Case Study Example
168(1)
Step 9 Analyze Processing Requirements
169(1)
Step 10 Define Utility Service Candidates
170(1)
Step 11 Associate Utility-Centric Service Capabilities with Resources and Methods
171(1)
Step 12 Apply Service-Orientation
171(1)
Step 13 Revise Candidate Service Compositions
171(1)
Step 14 Revise Resource Definitions
171(1)
Step 15 Revise Capability Candidate Grouping
172(1)
Additional Considerations
172(1)
Chapter 10 Service-Oriented Design with REST
173(58)
10.1 Uniform Contract Design Considerations
175(16)
Designing and Standardizing Methods
175(2)
Designing and Standardizing HTTP Headers
177(2)
Designing and Standardizing HTTP Response Codes
179(5)
Customizing Response Codes
184(2)
Designing Media Types
186(2)
Designing Schemas for Media Types
188(1)
Service-Specific XML Schemas
189(2)
10.2 REST Service Contract Design
191(20)
Designing Services Based on Service Models
191(1)
Task Services
191(1)
Entity Services
192(1)
Utility Services
193(1)
Designing and Standardizing Resource Identifiers
194(1)
Service Names in Resource Identifiers
195(1)
Other URI Components
196(1)
Resource Identifier Overlap
197(2)
Resource Identifier Design Guidelines
199(2)
Designing with and Standardizing REST Constraints
201(1)
Stateless
201(1)
Cache
202(1)
Uniform Contract
203(1)
Layered System
204(1)
Case Study Example
205(1)
Confer Student Award Service Contract (Task)
205(2)
Event Service Contract (Entity)
207(1)
Award Service Contract (Entity)
207(1)
Student Transcript Service Contract (Entity)
208(1)
Notification and Document Service Contracts (Utility)
209(2)
10.3 Complex Method Design
211(20)
Stateless Complex Methods
214(1)
Fetch Method
214(1)
Store Method
215(2)
Delta Method
217(2)
Async Method
219(2)
Stateful Complex Methods
221(1)
Trans Method
221(1)
PubSub Method
222(2)
Case Study Example
224(1)
OptLock Complex Method
224(2)
PesLock Complex Method
226(5)
PART IV SERVICE COMPOSITION WITH REST
Chapter 11 Fundamental Service Composition with REST
231(30)
11.1 Service Composition Terminology
233(8)
Compositions and Composition Instances
233(1)
Composition Members and Controllers
234(1)
Service Compositions Are Actually Service Capability Compositions
235(1)
Designated Controllers
236(1)
Collective Composability
236(2)
Service Activities
238(1)
Composition Initiators
239(1)
Point-to-Point Data Exchanges and Compositions
240(1)
11.2 Service Composition Design Influences
241(8)
Service-Orientation Principles and Composition Design
241(1)
Standardized Service Contract and the Uniform Contract
242(1)
Service Loose Coupling and the Uniform Contract
243(1)
Service Abstraction and Composition Information Hiding
244(1)
Service Reusability for Repeatable Composition
245(1)
Service Autonomy and Composition Autonomy Loss
245(1)
Service Statelessness and Stateless
246(1)
Service Composability and Service-Orientation
246(1)
REST Constraints and Composition Design
247(1)
Stateless and Stateful Compositions
247(1)
Cache and Layered System
248(1)
Code-on-Demand and Composition Logic Deferral
248(1)
Uniform Contract and Composition Coupling
248(1)
11.3 Composition Hierarchies and Layers
249(4)
Task Services Composing Entity Services
250(1)
Entity Services Composing Entity Services
251(2)
11.4 REST Service Composition Design Considerations
253(5)
Synchronous and Asynchronous Service Compositions
253(1)
Idempotent Service Activities
254(1)
Lingering Composition State
255(1)
Binding Between Composition Participants
255(3)
11.5 A Step-by-Step Service Activity
258(3)
1 Request to Purchase a Ticket
258(1)
2 Verify the Requested Flight Details
258(1)
3 Confirm a Seat on the Flight
259(1)
4 Generate an Invoice
259(1)
5 Create the Ticket
260(1)
Summary
260(1)
Chapter 12 Advanced Service Composition with REST
261(44)
12.1 Service Compositions and Stateless
263(3)
Composition Design with Service Statelessness
264(1)
Composition Design with Stateless
265(1)
12.2 Cross-Service Transactions with REST
266(16)
REST-Friendly Atomic Service Transactions
267(1)
Phase 1 Initialize
267(1)
Phase 2 Reserve
268(1)
Phase 3A Confirm
269(1)
Phase 3B Cancel
269(1)
Phase 3C Timeout
270(1)
Compliance with Stateless
271(1)
Additional Considerations
272(1)
REST-Friendly Compensating Service Transactions
272(1)
Phase 1 Begin
273(1)
Phase 2 Do
273(1)
Phase 3A Complete
274(1)
Phase 3B Undo
274(1)
Phase 3C Timeout
275(1)
Compliance with Stateless
276(1)
Additional Considerations
276(1)
Non-REST-Friendly Atomic Service Transactions
276(1)
Phase 1 Initialize
277(1)
Phase 2 Do
277(1)
Phase 3 Prepare
278(1)
Phase 4A Commit
279(1)
Phase 4B Rollback
279(1)
Phase 4C Timeout
280(1)
Compliance with Stateless
280(1)
Additional Considerations
281(1)
12.3 Event-Driven Interactions with REST
282(6)
Event-Driven Messaging
282(1)
Compliance with Stateless
283(2)
Message Polling
285(2)
Compliance with Stateless
287(1)
12.4 Service Composition with Dynamic Binding and Logic Deferral
288(11)
Denormalized Capabilities Across Normalized Services
289(3)
Composition Deepening
292(2)
Dynamically Binding with Common Properties
294(3)
Runtime Logic Deferral
297(2)
12.5 Service Composition Across Service Inventories
299(6)
Inventory Endpoint with REST
299(3)
Dynamic Binding Between Service Inventories with Baseline Standardization
302(3)
Chapter 13 Service Composition with REST Case Study
305(22)
13.1 Revisiting the Confer Student Award Process
306(4)
13.2 Application Submission and Task Service Invocation
310(2)
13.3 Confer Student Award Service Composition Instance (Pre-Review Service Activity View)
312(5)
Step 1 Composition Initiator to Confer Student Award Task Service (A)
312(1)
Step 2 Confer Student Award Task Service to Event Entity Service (B)
312(1)
Step 3 Event Entity Service to Confer Student Award Task Service (B)
313(1)
Step 4 Confer Student Award Task Service to Award Entity Service (E)
314(1)
Step 5 Award Entity Service to Confer Student Award Task Service (E)
314(1)
Step 6 Confer Student Award Task Service to Award Entity Service (E)
314(1)
Step 7 Award Entity Service to Confer Student Award Task Service (E)
315(1)
Step 8 Confer Student Award Task Service to Student Entity Service (F)
315(1)
Step 9 Student Entity Service to Confer Student Award Task Service (F)
315(1)
Step 10 Confer Student Award Task Service to Student Transcript Entity Service (F)
316(1)
Step 11 Student Transcript Entity Service to Confer Student Award Task Service (F)
316(1)
Step 12 Confer Student Award Task Service to Composition Initiator
316(1)
13.4 Review of Pending Applications and Task Service Invocation
317(10)
Confer Student Award Service Composition Instance (Post-Review Service Activity View)
318(2)
Step 1 Composition Initiator to Confer Student Award Task Service (L)
320(1)
Step 2 Confer Student Award Task Service to Notification Utility Service (N)
320(1)
Step 3 Notification Utility Service to Student Entity Service (N)
320(1)
Step 4 Student Entity Service to Notification Utility Service (N)
320(1)
Step 5 Notification Utility Service to Confer Student Award Task Service (N)
321(1)
Intermediate Step: Confer Student Award Task Service to Transaction Coordinator (P, Q)
321(1)
Intermediate Step: Transaction Coordinator to Confer Student Award Task Service (P, Q)
321(1)
Step 6 Confer Student Award Task Service to Conferral Entity Service (P)
322(1)
Intermediate Step: Conferral Entity Service to Transaction Coordinator (P)
322(1)
Intermediate Step: Transaction Coordinator to Conferral Entity Service
322(1)
Step 7 Conferral Entity Service to Confer Student Award Task Service (Q)
322(1)
Step 8 Confer Student Award Task Service to Student Manuscript Entity Service (Q)
323(1)
Intermediate Step: Student Transcript Entity Service to Transaction Controller (Q)
323(1)
Intermediate Step: Transaction Controller to Student Transcript Entity Service (Q)
323(1)
Step 9 Student Transcript Entity Service to Confer Student Award Task Service (Q)
324(1)
Intermediate Step: Confer Student Award Task Service to Transaction Coordinator (P, Q)
324(1)
Intermediate Step: Transaction Coordinator to Confer Student Award Task Service (P, Q)
324(1)
Step 10 Confer Student Award Task Service to Composition Initiator
324(3)
PART V SUPPLEMENTAL
Chapter 14 Design Patterns for SOA with REST
327(16)
14.1 REST-Inspired SOA Design Patterns
329(11)
Content Negotiation
331(1)
Related Patterns
332(1)
Related Service-Oriented Computing Goals
332(1)
Endpoint Redirection
332(1)
Related Patterns
333(1)
Related Service-Oriented Computing Goals
333(1)
Entity Linking
333(2)
Related Patterns
335(1)
Related Service-Oriented Computing Goals
335(1)
Idempotent Capability
335(1)
Related Patterns
335(1)
Related Service-Oriented Computing Goals
335(1)
Lightweight Endpoint
336(1)
Related Patterns
337(1)
Related Service-Oriented Computing Goals
337(1)
Reusable Contract
338(1)
Related Patterns
338(1)
Related Service-Oriented Computing Goals
339(1)
Uniform Contract
339(1)
14.2 Other Relevant SOA Design Patterns
340(3)
Contract Centralization
340(1)
Contract Denormalization
340(1)
Domain Inventory
340(1)
Schema Centralization
341(1)
State Messaging
341(1)
Validation Abstraction
342(1)
Chapter 15 Service Versioning with REST
343(18)
15.1 Versioning Basics
346(9)
REST Service Contract Compatibility
346(2)
Compatible and Incompatible Changes
348(1)
Uniform Contract Method Compatibility
349(1)
Uniform Contract Media Type Compatibility
350(4)
Media Types and Forwards-compatibility
354(1)
15.2 Version Identifiers
355(6)
Using Version Identifiers
356(2)
Version Identifiers and the Uniform Contract
358(3)
Chapter 16 Uniform Contract Profiles
361(22)
16.1 Uniform Contract Profile Template
362(5)
Uniform-Level Structure
363(1)
Method Profile Structure
364(1)
Media Type Profile Structure
365(2)
16.2 REST Service Profile Considerations
367(2)
16.3 Case Study Example
369(14)
Uniform-Level Structure: MUAUC
370(1)
Method Profile Structure: Fetch
371(2)
Response Code Handling for GET Methods in Fetch Method
373(1)
Method Profile Structure: Store
374(2)
Response Code Handling for PUT and DELETE Methods in Store Method
376(1)
Method Profile Structure: GET
377(1)
Method Profile Structure: PUT
378(1)
Media Type Profile Structure: Invoice (application/vnd.edu.mua.invoice+xml)
379(4)
PART VI APPENDICES
Appendix A Case Study Conclusion
383(4)
Appendix B Industry Standards Supporting the Web
387(4)
The Internet Engineering Taskforce (IETF)
388(1)
The World Wide Web Consortium
389(1)
Other Web Standards
390(1)
Appendix C REST Constraints Reference
391(18)
Appendix D Service-Orientation Principles Reference
409(16)
Appendix E SOA Design Patterns Reference
425(96)
Appendix F State Concepts and Types
521(12)
State Management Explained
522(1)
State Management in Abstract
522(1)
Origins of State Management
523(4)
Deferral vs. Delegation
527(1)
Types of State
527(1)
Active and Passive
527(1)
Stateless and Stateful
528(1)
Session and Context Data
528(2)
Measuring Service Statelessness
530(3)
Appendix G The Annotated SOA Manifesto
533(14)
Appendix H Additional Resources
547(6)
www.whatisrest.com
548(1)
Bibliography and References
548(3)
Resources
551(1)
www.servicetechbooks.com
551(1)
www.soaschool.com, www.cloudschool.com
551(1)
www.servicetechmag.com
552(1)
www.soaglossary.com
552(1)
www.servicetechspecs.com
552(1)
www.soapatterns.org, www.cloudpatterns.org
552(1)
www.serviceorientation.com, www.soaprinciples.com, www.whatissoa.com
552(1)
www.servicetechsymposium.com
552(1)
About the Authors
553(2)
Thomas Erl
553(1)
Benjamin Carlyle
553(1)
Cesare Pautasso
554(1)
Raj Balasubramanian
554(1)
About the Pattern Co-Contributors
555(2)
David Booth, Ph.D.
555(1)
Herbjorn Wilhelmsen
555(2)
About the Foreword Contributor
557(2)
Stefan Tilkov
557(2)
Index 559
Thomas Erl is a best-selling IT author and the worlds top-selling SOA author. His books encompass topics ranging from cloud computing, semantic Web technology, and SOA. He is the series editor of the Prentice Hall Service Technology Series from Thomas Erl, as well as the editor of the Service Technology Magazine. With more than 160,000 copies in print world-wide, his published books have become international bestsellers and have been formally endorsed by senior members of major IT organizations, such as IBM, Microsoft, Oracle, Intel, Accenture, IEEE, MITRE, SAP, CISCO, and HP. As the founder of Arcitura Education Inc., Thomas has overseen the development of curricula for the internationally recognized SOASchool.com SOA Certified Professional (SOACP) and CloudSchool.com Cloud Certified Professional (CCP) accreditation programs, which have established a series of formal, vendor-neutral industry certifications. Thomas has toured over 20 countries as a speaker and instructor for public and private events and regularly participates in SOA, Cloud + Service Technology Symposium, and Gartner conferences. More than 100 articles and interviews by Thomas have been published in numerous publications, including The Wall Street Journal and CIO Magazine.

 

Benjamin Carlyle is a founding developer of the Invensys Rail SystematICS services framework, and has worked for many years as a software developer, software architect, and systems engineer on railway projects worldwide. He has focused on integrating REST and services technologies since around 2004. His work is referenced in several books on Restful Web services and on microformats, he has presented at the International SOA Symposium, and has served on the technical committee for international workshops on RESTful Design. He is credited with helping inspire the RESTlet framework for Java, and coined the term REST Triangle to describe the structure of a REST uniform contract. He has a deep understanding of both the theory and practice of REST and related styles as well as broader software and systems architecture topics.

 

Cesare Pautasso is an assistant professor at the Faculty of Informatics at the University of Lugano, Switzerland. Previously he was a researcher at the IBM Zurich Research Lab and a senior researcher at ETH Zurich, where he also completed his graduate studies with a Ph.D. in 2004. His teaching, research, and consulting activities both in academia and in industry cover advanced topics related to Software Architecture, Service Oriented Computing, and emerging RESTful Web services technologies. His research group focuses on building experimental systems to explore the intersection between the REST architectural style and model-driven software composition techniques, business process management, and liquid, self-organizing service-oriented architectures. He is an active member of IEEE and ACM, where he has participated in more than 100 international conference/workshop program committees. He has started the series of International Workshops on RESTful Design (WS-REST) at the WWW conference and was the general chair of the 9th IEEE European Conference on Web Services (ECOWS 2011). He regularly referees for Swiss, EU, and international funding agencies.

 

Raj Balasubramanian is a senior technologist from the Business Process Optimization (BPO) team within IBM Software Group focused on delivering SOA/BPM/Cloud solution across industries. Depending on the needs of the customer he has played the role of an enterprise architect, system architect, or solution architect to deliver on the engagement at hand. Prior to the focus on BPO, he was a lead portal architect delivering portal solutions to medium and large enterprise as part of the Lotus brand. He has published numerous articles on IBM DeveloperWorks and speaks at industry conferences on a variety of topics. His interests are in distributed systems, applying Web constructs to solution design, and using formal models and analytics to reason about large systems. Raj is also pursuing a Ph.D. in ECE at University of Texas at Austin where he is applying machine learning and data mining techniques to networked data from social Web to human travel. His official profile is on http://raj.balasubramanians.com, which links to his various personas.