SlideShare a Scribd company logo
Composing RESTful Services and
Collaborative Workflows
A Light Weight Approach
Author(s): Rosenberg, F (Rosenberg, Florian); Curbera, F (Curbera, Francisco);
Duftler, MJ (Duftler, Matthew J.); Khalaf, R (Khalaf, Rania)
Source: IEEE INTERNET COMPUTING Volume: 12 Issue: 5 Pages: 24-31
DOI: 10.1109/MIC.2008.98
Published: SEP-OCT 2008
Web of Science Categories: Computer Science, Software Engineering
Research Areas: Computer Science
Times Cited: 20 (from Web of Science)
Cited References: 7
Abstract
• The use of RESTful Web services (based on
HTTP) can integrate easily into applications
like mashups
• In order to compose RESTful services into
Web-scale workflows, using Bite as a light
composition language to accomplish the task
by describing both the control and data flow
Introduction
• Increasing adoption of SOA paradigm
• Limits of Web services model consists of two
contention points:
– The complexity
– Lack of alignment with the Web’s accepted
architectural principles
• The Representational State Transfer (REST)
model is introduced
Introduction
• In REST, the main architectural concept is the
information resource, and the principal
interaction mode lets clients retrieve
representations of those resources
• The article addresses the complementary
problem:
– How the service paradigm and SOA’s service
composition model can benefit mainstream Web
applications
Introduction
• Explore the potential benefits of process-
oriented composition for Web scenarios
• Focus on design principles and applications of
the process-oriented composition model of
Bite language, derived by aligning SOA process
composition principles with REST architectural
requirements
Bite Overview
• Allow web applications can seamlessly
combine:
– RESTful services
– Simple human interaction
– Collaboration services
– Back-end services
The Bite Approach
• Requirements and Design Goals:
– Atom life-cycle model
– Light weight process model
– Scripting approach
– Language extensibility
– Web and human integration
The Bite Approach
• Basic Model and Language:
– Comprise a flat graph containing actions and links
between them
– Use while activity to allow containing of other
activities
– Encodes graph execution logic in conditional
transition links between activities and supports
error handling via special error links to an error-
handling activity
The Bite Approach
• Basic Model and Language:
– Bite’s core activities consist of:
• Basic HTTP communication primitives
• Utility activities
• Control helpers
– A Bite flow both uses external services in its flow
logic and exposes itself as a service
– Each flow instance can define multiple receive
activities corresponding to multiple entry points.
The Bite Approach
• Flow Example
The Bite Approach
• Bite Extensibility
– Creating Bite extension activities and registering
them with Bite engine
– Creating an extension activity lets developers
implement the core extension logic with minimal
overhead for reading and evaluating the
extension’s syntax
The Bite Approach
• Executing Scripts
– Executing script code in the flow facilitates certain
tasks (for example, calculation or accessing some
back-end system)
The Bite Approach
• UI Integration and Rendering Capabilities
– Enables a user interface (UI) integration because
all entry points in a flow are accessible via URLs.
– Provides HTML rendering capabilities using
various template languages to render HTTP replies
or emails from a flow
Collaborative Flows in Bite

More Related Content

Similar to Composing RESTful Services and Collaborative Workflows

L11 Service Design and REST
L11 Service Design and RESTL11 Service Design and REST
L11 Service Design and REST
Ólafur Andri Ragnarsson
 
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptxKiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
SharanyaPathipati
 
PlanetData: Consuming Structured Data at Web Scale
PlanetData: Consuming Structured Data at Web ScalePlanetData: Consuming Structured Data at Web Scale
PlanetData: Consuming Structured Data at Web Scale
PlanetData Network of Excellence
 
RESTful API by abubakar
RESTful API by abubakarRESTful API by abubakar
RESTful API by abubakar
KenAndTea
 
sem_web_slides_k2013.ppt
sem_web_slides_k2013.pptsem_web_slides_k2013.ppt
sem_web_slides_k2013.ppt
RichaAngel2
 
Unit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdfUnit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdf
rameshwarchintamani
 
CS-802 Act-1.ppt
CS-802 Act-1.pptCS-802 Act-1.ppt
CS-802 Act-1.ppt
AnushkaChauhan68
 
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformationEvolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Slobodan Sipcic
 
Lynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - Overview
Lynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - OverviewLynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - Overview
Lynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - Overview
Lynx Project
 
SoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration TechnologySoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration Technology
Srinath Perera
 
Architecting for Scale
Architecting for ScaleArchitecting for Scale
Architecting for Scale
Pooyan Jamshidi
 
A Schema-Based Approach To Modeling And Querying WWW Data
A Schema-Based Approach To Modeling And Querying WWW DataA Schema-Based Approach To Modeling And Querying WWW Data
A Schema-Based Approach To Modeling And Querying WWW Data
Lisa Garcia
 
Secc tutorials development and deployment of rest web services in java_v2.0
Secc tutorials development and deployment of rest web services in java_v2.0Secc tutorials development and deployment of rest web services in java_v2.0
Secc tutorials development and deployment of rest web services in java_v2.0
Aravindharamanan S
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptx
MunmunSaha7
 
[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...
[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...
[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...
WSO2
 
Lotus Notes to SharePoint Migration
Lotus Notes to SharePoint MigrationLotus Notes to SharePoint Migration
Lotus Notes to SharePoint Migration
Officience
 
Lotus notes app migration process v1.2
Lotus notes app migration process   v1.2Lotus notes app migration process   v1.2
Lotus notes app migration process v1.2
Officience
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2
Ankit Gupta
 

Similar to Composing RESTful Services and Collaborative Workflows (20)

L11 Service Design and REST
L11 Service Design and RESTL11 Service Design and REST
L11 Service Design and REST
 
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptxKiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
Kiran Kumar Jonnada CLA 2 Presentation (Without Audio).pptx
 
PlanetData: Consuming Structured Data at Web Scale
PlanetData: Consuming Structured Data at Web ScalePlanetData: Consuming Structured Data at Web Scale
PlanetData: Consuming Structured Data at Web Scale
 
Planetdata simpda
Planetdata simpdaPlanetdata simpda
Planetdata simpda
 
Service as-a-software
Service as-a-softwareService as-a-software
Service as-a-software
 
RESTful API by abubakar
RESTful API by abubakarRESTful API by abubakar
RESTful API by abubakar
 
sem_web_slides_k2013.ppt
sem_web_slides_k2013.pptsem_web_slides_k2013.ppt
sem_web_slides_k2013.ppt
 
Unit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdfUnit-5_2 PPT on Distributed Web based System.pdf
Unit-5_2 PPT on Distributed Web based System.pdf
 
CS-802 Act-1.ppt
CS-802 Act-1.pptCS-802 Act-1.ppt
CS-802 Act-1.ppt
 
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformationEvolutionary evnt-driven-architecture-for-accelerated-digital-transformation
Evolutionary evnt-driven-architecture-for-accelerated-digital-transformation
 
Lynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - Overview
Lynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - OverviewLynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - Overview
Lynx Webinar #3: Lynx Services Platform (LySP) - Part 1 - Overview
 
SoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration TechnologySoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration Technology
 
Architecting for Scale
Architecting for ScaleArchitecting for Scale
Architecting for Scale
 
A Schema-Based Approach To Modeling And Querying WWW Data
A Schema-Based Approach To Modeling And Querying WWW DataA Schema-Based Approach To Modeling And Querying WWW Data
A Schema-Based Approach To Modeling And Querying WWW Data
 
Secc tutorials development and deployment of rest web services in java_v2.0
Secc tutorials development and deployment of rest web services in java_v2.0Secc tutorials development and deployment of rest web services in java_v2.0
Secc tutorials development and deployment of rest web services in java_v2.0
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptx
 
[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...
[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...
[WSO2 Integration Summit Nairobi 2019] Role of Integration in an API Driven W...
 
Lotus Notes to SharePoint Migration
Lotus Notes to SharePoint MigrationLotus Notes to SharePoint Migration
Lotus Notes to SharePoint Migration
 
Lotus notes app migration process v1.2
Lotus notes app migration process   v1.2Lotus notes app migration process   v1.2
Lotus notes app migration process v1.2
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2
 

More from Bernie Chiu

Briefing - Dynamic Workers for Scheduling
Briefing - Dynamic Workers for SchedulingBriefing - Dynamic Workers for Scheduling
Briefing - Dynamic Workers for SchedulingBernie Chiu
 
書報期末 - Building Saas Through Research
書報期末 - Building Saas Through Research書報期末 - Building Saas Through Research
書報期末 - Building Saas Through ResearchBernie Chiu
 
演算法期中段落報告
演算法期中段落報告演算法期中段落報告
演算法期中段落報告Bernie Chiu
 
演算法排序應用說明簡介(以壓縮為例)
演算法排序應用說明簡介(以壓縮為例)演算法排序應用說明簡介(以壓縮為例)
演算法排序應用說明簡介(以壓縮為例)Bernie Chiu
 
Embedded Web Services Report
Embedded Web Services ReportEmbedded Web Services Report
Embedded Web Services ReportBernie Chiu
 
演算法題目說明簡介
演算法題目說明簡介演算法題目說明簡介
演算法題目說明簡介Bernie Chiu
 
How I Use Derwent Innovations Index (DII)
How I Use Derwent Innovations Index (DII)How I Use Derwent Innovations Index (DII)
How I Use Derwent Innovations Index (DII)Bernie Chiu
 

More from Bernie Chiu (7)

Briefing - Dynamic Workers for Scheduling
Briefing - Dynamic Workers for SchedulingBriefing - Dynamic Workers for Scheduling
Briefing - Dynamic Workers for Scheduling
 
書報期末 - Building Saas Through Research
書報期末 - Building Saas Through Research書報期末 - Building Saas Through Research
書報期末 - Building Saas Through Research
 
演算法期中段落報告
演算法期中段落報告演算法期中段落報告
演算法期中段落報告
 
演算法排序應用說明簡介(以壓縮為例)
演算法排序應用說明簡介(以壓縮為例)演算法排序應用說明簡介(以壓縮為例)
演算法排序應用說明簡介(以壓縮為例)
 
Embedded Web Services Report
Embedded Web Services ReportEmbedded Web Services Report
Embedded Web Services Report
 
演算法題目說明簡介
演算法題目說明簡介演算法題目說明簡介
演算法題目說明簡介
 
How I Use Derwent Innovations Index (DII)
How I Use Derwent Innovations Index (DII)How I Use Derwent Innovations Index (DII)
How I Use Derwent Innovations Index (DII)
 

Recently uploaded

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 

Composing RESTful Services and Collaborative Workflows

  • 1. Composing RESTful Services and Collaborative Workflows A Light Weight Approach Author(s): Rosenberg, F (Rosenberg, Florian); Curbera, F (Curbera, Francisco); Duftler, MJ (Duftler, Matthew J.); Khalaf, R (Khalaf, Rania) Source: IEEE INTERNET COMPUTING Volume: 12 Issue: 5 Pages: 24-31 DOI: 10.1109/MIC.2008.98 Published: SEP-OCT 2008 Web of Science Categories: Computer Science, Software Engineering Research Areas: Computer Science Times Cited: 20 (from Web of Science) Cited References: 7
  • 2. Abstract • The use of RESTful Web services (based on HTTP) can integrate easily into applications like mashups • In order to compose RESTful services into Web-scale workflows, using Bite as a light composition language to accomplish the task by describing both the control and data flow
  • 3. Introduction • Increasing adoption of SOA paradigm • Limits of Web services model consists of two contention points: – The complexity – Lack of alignment with the Web’s accepted architectural principles • The Representational State Transfer (REST) model is introduced
  • 4. Introduction • In REST, the main architectural concept is the information resource, and the principal interaction mode lets clients retrieve representations of those resources • The article addresses the complementary problem: – How the service paradigm and SOA’s service composition model can benefit mainstream Web applications
  • 5. Introduction • Explore the potential benefits of process- oriented composition for Web scenarios • Focus on design principles and applications of the process-oriented composition model of Bite language, derived by aligning SOA process composition principles with REST architectural requirements
  • 6. Bite Overview • Allow web applications can seamlessly combine: – RESTful services – Simple human interaction – Collaboration services – Back-end services
  • 7. The Bite Approach • Requirements and Design Goals: – Atom life-cycle model – Light weight process model – Scripting approach – Language extensibility – Web and human integration
  • 8. The Bite Approach • Basic Model and Language: – Comprise a flat graph containing actions and links between them – Use while activity to allow containing of other activities – Encodes graph execution logic in conditional transition links between activities and supports error handling via special error links to an error- handling activity
  • 9. The Bite Approach • Basic Model and Language: – Bite’s core activities consist of: • Basic HTTP communication primitives • Utility activities • Control helpers – A Bite flow both uses external services in its flow logic and exposes itself as a service – Each flow instance can define multiple receive activities corresponding to multiple entry points.
  • 10. The Bite Approach • Flow Example
  • 11. The Bite Approach • Bite Extensibility – Creating Bite extension activities and registering them with Bite engine – Creating an extension activity lets developers implement the core extension logic with minimal overhead for reading and evaluating the extension’s syntax
  • 12. The Bite Approach • Executing Scripts – Executing script code in the flow facilitates certain tasks (for example, calculation or accessing some back-end system)
  • 13. The Bite Approach • UI Integration and Rendering Capabilities – Enables a user interface (UI) integration because all entry points in a flow are accessible via URLs. – Provides HTML rendering capabilities using various template languages to render HTTP replies or emails from a flow