SlideShare una empresa de Scribd logo
1 de 19
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                1




                 5-Minute Introduction to REST
                                           (Learning REST by Example)

                                                     Roger L. Costello
                                                     Timothy D. Kehoe
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                2




                                                  What is REST?
             • REST is a design pattern.
             • It is a certain approach to creating Web
               Services.
             • To understand the REST design pattern,
               let's look at an example (learn by example).
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                3

                                  Example:
                         Airline Reservation Service
             • Suppose that an airline wants to create a
               telephone reservation system for customers
               to call in and make flight reservations.
             • The airline wants to ensure that its premier
               members get immediate service, its frequent
               flyer members get expedited service and all
               others get regular service.
             • There are two main approaches to
               implementing the reservation service...
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                               4


                     Approach 1
         "Press 1 for Premier, Press 2 for…"
             The airline provides a single telephone number.
             Upon entry into the system a customer encounters an
             automated message, "Press 1 if you are a premier member,
             press 2 if you are a frequent flyer, press 3 for all others."
                                                                                                           Premier
                                                                                                          Customer
                                                                                                        Representative
      Premier Members
                                                                                                             F.F.
                                                                                            Answering
                                                                     Airline Reservations                 Customer
                                                                                             Machine    Representative
Frequent Flyer Members

                                                                                                           Regular
                                                                                                          Customer
                                                                                                        Representative
    Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                                       5



                                                           Approach 2
         Telephone Numbers are Cheap! Use Them!
             The airline provides several telephone numbers - one number
             for premier members, a different number for frequent flyers,
             and still another for regular customers.
                                                                                                         Premier
                                                                                 1-800-Premier          Customer
                                                                                                      Representative
              Premier Members

                                                                                                         F.F.
                                                                                 1-800-Frequent       Customer
                                                                                                    Representative
        Frequent Flyer Members
                                                                                                       Regular
                                                                                1-800-Reservation     Customer
                                                                                                    Representative
             Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                6




                                                            Discussion
             • In Approach 1 the answering machine
               introduces an extra delay, which is particularly
               annoying to premier members. (Doesn't
               everyone hate those answering systems)
             • With Approach 2 there is no intermediate step.
               Premier members get instant pickup from a
               customer service representative. Others may
               have to wait for an operator.
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                7




                Web-Based Reservation Service
             • Suppose now the airline (kings-air.com) wants to
               provide a Web reservation service for customers
               to make flight reservations through the Web.
             • Just as with the telephone service, the airline
               wants to ensure that its premier members get
               immediate service, its frequent flyer members get
               expedited service, all others get regular service.
             • There are two main approaches to implementing
               the Web reservation service. The approaches are
               analogous to the telephone service...
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                               8


                                             Approach 1
                                          One-Stop Shopping
             The airline provides a single URL. The Web service is
             responsible for examining incoming client requests to
             determine their priority and process them accordingly.

                          client
                                                                                                           Premier
             Premier Members                                                                              Customer

                                                                                   Web        Determine     F.F.
                         client                                                 Reservation    Priority   Customer
        Frequent Flyer Members                                                    Service
                                                                                                           Regular
                                                                                                          Customer

                         client
            Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                9




                           Approach 1 Disadvantages
             • There is currently no industry accepted practice (rules) for
               expressing priorities, so rules would need to be made. The
               clients must learn the rule, and the Web service application
               must be written to understand the rule.
             • This approach is based upon the incorrect assumption that
               a URL is "expensive" and that their use must be rationed.
             • The Web service is a central point of failure. It is a
               bottleneck. Load balancing is a challenge.
             • It violates Tim Berners-Lee Web Design, Axiom 0 (see
               next slide).
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                            10



                                    Web Design, Axiom 0
                                   (Tim Berners-Lee, director of W3C)

             • Axiom 0: all resources on the Web must be
               uniquely identified with a URI.
                                                       URL1                     resource1



                                                       URL2                     resource2



                                                       URL3                     resource3
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.


                            Approach 2:
                                                                                                        11




                     URLs are Cheap! Use Them!
             The airline provides several URLs - one URL for premier
             members, a different URL for frequent flyers, and still
             another for regular customers.
                                                                                           Premier
                                           http://www.kings-air/reservations/premier       Member
                        client                                                            Reservation
              Premier Members                                                               Service


                                                                                           Frequent
                                       http://www.kings-air/reservations/frequent-flyer      Flyer
                 client                                                                   Reservation
        Frequent Flyer Members                                                              Service


                                                                                           Regular
                                           http://www.kings-air/reservations/regular       Member
                        client                                                            Reservation
                                                                                            Service
            Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                12




                                 Approach 2 Advantages
             • The different URLs are discoverable by search engines and
               UDDI registries.
             • It's easy to understand what each service does simply by
               examining the URL, i.e., it exploits the Principle of Least
               Surprise.
             • There is no need to introduce rules. Priorities are elevated
               to the level of a URL. "What you see is what you get."
             • It's easy to implement high priority - simply assign a fast
               machine at the premier member URL.
             • There is no bottleneck. There is no central point of failure.
             • Consistent with Axiom 0.
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                13




                                                                     Recap
             • We have looked at a reservation service.
             • We have seen a telephone-based version
               and a Web-based version of the reservation
               service.
             • With each version we have seen two main
               approaches to implementing the service.
             • Which approach is the REST design pattern
               and which isn't? See the following slides.
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                               14


                                        This Ain't the
                                      REST Design Pattern
                                                                                                           Premier
                                                                                                          Customer
                                                                                                        Representative
      Premier Members
                                                                                                             F.F.
                                                                                            Answering
                                                                      Airline Reservation                 Customer
                                                                                             Machine    Representative
Frequent Flyer Members

                                                                                                           Regular
                                                                                                          Customer
                                                                                                        Representative
    Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                                    15


                                         This is the
                                      REST Design Pattern
                                                                                                      Premier
                                                                                1-800-Premier        Customer
                                                                                                   Representative
             Premier Members

                                                                                                      F.F.
                                                                                1-800-Frequent     Customer
                                                                                                 Representative
        Frequent Flyer Members
                                                                                                    Regular
                                                                          1-800-Reservation        Customer
                                                                                                 Representative
            Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                                16


                                         This ain't the
                                      REST Design Pattern
                        client
                                                                                                           Premier
            Premier Members                                                                               Customer

                                                                                Reservation   Determine     F.F.
                        client                                                     Web         Priority   Customer
      Frequent Flyer Members                                                      Service
                                                                                                           Regular
                                                                                                          Customer

                        client
          Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.


                                          This is the
                                                                                                                       17




                                      REST Design Pattern
                                                                                                          Premier
                                                         http://www.kings-air/reservations/premier        Member
                                       client                                                            Reservation
                             Premier Members                                                               Service


                                                                                                          Frequent
                                                      http://www.kings-air/reservations/frequent-flyer      Flyer
                                client                                                                   Reservation
                       Frequent Flyer Members                                                              Service


                                                                                                          Regular
                                                          http://www.kings-air/reservations/regular       Member
                                      client                                                             Reservation
                                                                                                           Service
                           Regular Members
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                18


              Two Fundamental Aspects of the
                  REST Design Pattern
             • Resources
                   Every distinguishable entity is a resource. A
                   resource may be a Web site, an HTML page, an
                   XML document, a Web service, a physical device,
                   etc.
             • URLs Identify Resources
                   Every resource is uniquely identified by a URL.
                   This is Tim Berners-Lee Web Design, Axiom 0.
Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved.
                                                                                                19


               The Three Fundamental Aspects
                 of the REST Design Pattern

                                                                 Resources



                                       URLs                                     Simple Operations

              In this tutorial we discussed how Resources and URLs are
              fundamental to REST. In a follow up tutorial we will discuss
              how Simple Operations are also fundamental to REST.

Más contenido relacionado

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 

Destacado

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Destacado (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

5 minute-intro-to-rest

  • 1. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 1 5-Minute Introduction to REST (Learning REST by Example) Roger L. Costello Timothy D. Kehoe
  • 2. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 2 What is REST? • REST is a design pattern. • It is a certain approach to creating Web Services. • To understand the REST design pattern, let's look at an example (learn by example).
  • 3. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 3 Example: Airline Reservation Service • Suppose that an airline wants to create a telephone reservation system for customers to call in and make flight reservations. • The airline wants to ensure that its premier members get immediate service, its frequent flyer members get expedited service and all others get regular service. • There are two main approaches to implementing the reservation service...
  • 4. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 4 Approach 1 "Press 1 for Premier, Press 2 for…" The airline provides a single telephone number. Upon entry into the system a customer encounters an automated message, "Press 1 if you are a premier member, press 2 if you are a frequent flyer, press 3 for all others." Premier Customer Representative Premier Members F.F. Answering Airline Reservations Customer Machine Representative Frequent Flyer Members Regular Customer Representative Regular Members
  • 5. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 5 Approach 2 Telephone Numbers are Cheap! Use Them! The airline provides several telephone numbers - one number for premier members, a different number for frequent flyers, and still another for regular customers. Premier 1-800-Premier Customer Representative Premier Members F.F. 1-800-Frequent Customer Representative Frequent Flyer Members Regular 1-800-Reservation Customer Representative Regular Members
  • 6. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 6 Discussion • In Approach 1 the answering machine introduces an extra delay, which is particularly annoying to premier members. (Doesn't everyone hate those answering systems) • With Approach 2 there is no intermediate step. Premier members get instant pickup from a customer service representative. Others may have to wait for an operator.
  • 7. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 7 Web-Based Reservation Service • Suppose now the airline (kings-air.com) wants to provide a Web reservation service for customers to make flight reservations through the Web. • Just as with the telephone service, the airline wants to ensure that its premier members get immediate service, its frequent flyer members get expedited service, all others get regular service. • There are two main approaches to implementing the Web reservation service. The approaches are analogous to the telephone service...
  • 8. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 8 Approach 1 One-Stop Shopping The airline provides a single URL. The Web service is responsible for examining incoming client requests to determine their priority and process them accordingly. client Premier Premier Members Customer Web Determine F.F. client Reservation Priority Customer Frequent Flyer Members Service Regular Customer client Regular Members
  • 9. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 9 Approach 1 Disadvantages • There is currently no industry accepted practice (rules) for expressing priorities, so rules would need to be made. The clients must learn the rule, and the Web service application must be written to understand the rule. • This approach is based upon the incorrect assumption that a URL is "expensive" and that their use must be rationed. • The Web service is a central point of failure. It is a bottleneck. Load balancing is a challenge. • It violates Tim Berners-Lee Web Design, Axiom 0 (see next slide).
  • 10. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 10 Web Design, Axiom 0 (Tim Berners-Lee, director of W3C) • Axiom 0: all resources on the Web must be uniquely identified with a URI. URL1 resource1 URL2 resource2 URL3 resource3
  • 11. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. Approach 2: 11 URLs are Cheap! Use Them! The airline provides several URLs - one URL for premier members, a different URL for frequent flyers, and still another for regular customers. Premier http://www.kings-air/reservations/premier Member client Reservation Premier Members Service Frequent http://www.kings-air/reservations/frequent-flyer Flyer client Reservation Frequent Flyer Members Service Regular http://www.kings-air/reservations/regular Member client Reservation Service Regular Members
  • 12. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 12 Approach 2 Advantages • The different URLs are discoverable by search engines and UDDI registries. • It's easy to understand what each service does simply by examining the URL, i.e., it exploits the Principle of Least Surprise. • There is no need to introduce rules. Priorities are elevated to the level of a URL. "What you see is what you get." • It's easy to implement high priority - simply assign a fast machine at the premier member URL. • There is no bottleneck. There is no central point of failure. • Consistent with Axiom 0.
  • 13. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 13 Recap • We have looked at a reservation service. • We have seen a telephone-based version and a Web-based version of the reservation service. • With each version we have seen two main approaches to implementing the service. • Which approach is the REST design pattern and which isn't? See the following slides.
  • 14. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 14 This Ain't the REST Design Pattern Premier Customer Representative Premier Members F.F. Answering Airline Reservation Customer Machine Representative Frequent Flyer Members Regular Customer Representative Regular Members
  • 15. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 15 This is the REST Design Pattern Premier 1-800-Premier Customer Representative Premier Members F.F. 1-800-Frequent Customer Representative Frequent Flyer Members Regular 1-800-Reservation Customer Representative Regular Members
  • 16. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 16 This ain't the REST Design Pattern client Premier Premier Members Customer Reservation Determine F.F. client Web Priority Customer Frequent Flyer Members Service Regular Customer client Regular Members
  • 17. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. This is the 17 REST Design Pattern Premier http://www.kings-air/reservations/premier Member client Reservation Premier Members Service Frequent http://www.kings-air/reservations/frequent-flyer Flyer client Reservation Frequent Flyer Members Service Regular http://www.kings-air/reservations/regular Member client Reservation Service Regular Members
  • 18. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 18 Two Fundamental Aspects of the REST Design Pattern • Resources Every distinguishable entity is a resource. A resource may be a Web site, an HTML page, an XML document, a Web service, a physical device, etc. • URLs Identify Resources Every resource is uniquely identified by a URL. This is Tim Berners-Lee Web Design, Axiom 0.
  • 19. Copyright © [2005]. Roger L. Costello, Timothy D. Kehoe. All Rights Reserved. 19 The Three Fundamental Aspects of the REST Design Pattern Resources URLs Simple Operations In this tutorial we discussed how Resources and URLs are fundamental to REST. In a follow up tutorial we will discuss how Simple Operations are also fundamental to REST.