SlideShare a Scribd company logo
Towards a
REST Cloud Computing Lexicon
Fabio Petrillo1,3, Philippe Merle2, Naouel Moha1, Yann-Gaël Guéhéneuc3
1 Université du Québec à Montréal, Montréal, Canada
2 Inria Lille - Nord Europe, Villeneuve d’Ascq, France
3 École Polytechnique de Montréal, Montréal, Canada
7th International Conference on Cloud Computing and Services Science (CLOSER 2017)
April 24-26, 2017 – Porto, Portugal
1
Context
2
• Cloud computing = most popular model to provide on-
demand computational resources and services
• REST APIs for offering such computational resources
Web Services
• Wide variety of Cloud APIs à heterogeneity à no interop.
• Cloud APIs are difficult to design and therefore to
understand and use
Problem
• Well-named REST APIs may
attract client developers
• Quality factors: understandability
and reusability 4
• Right choice of the lexicon of cloud computing APIs
• BUT best naming practices scattered in the litterature
• BUT no study on real-world cloud computing APIs
4
Solution
Outline
5
• Contributions
• Study design
• Results and analysis
• Conclusion and Future work
Outline
6
• Contributions
• Study design
• Results and analysis
• Conclusion and Future work
7
Contributions
Goal: Empirical study of the lexicon of Cloud REST APIs
C1. A tooled approach for extracting and analysing REST cloud
computing lexicons
C2. A dataset of services, resources, and terms used in three
studied REST APIs
C3. An analysis of the dataset
Outline
8
• Contributions
• Study design
• Results and analysis
• Conclusion and Future work
9
Study
Objects:
RQ1. Which lexicon is adopted by cloud computing providers?
RQ2. Are there common terms between providers’ lexicons?
RQ3. What is the global lexicon of all cloud providers?
Commercial Open source Standard
Conceptual Model for Cloud Computing REST APIs
- Google Cloud Platform, OpenStack, OCCI, …
10
- GCP products: compute, sql, ...
- OS API: orchestration-api, os-compute-2, …
- OCCI Extensions: Infrastructure, Platform, …
- /{project}/zones/{zone_id}/ instances/{instance_id} in GCP compute
- /{tenant_ id}/servers/{server_id} in os-compute-2
- /compute/{compute_id} in OCCI Infrastructure
- generic CRUD operations: DELETE, GET, POST, PUT, …
- resource-specific actions: start, stop, attach, …
Our Tooled Approach
11
Step 1 – Collecting
documentation
Step 2 – Parsing
documentation
Step 3 – Extracting
lexicon
Step 4 – Analysing
lexicon
Implementation
• Datasets encoded as CSV files to foster reusability
• Parsers, extractors and analyses implemented in Python
to foster readability, comprehension and auditability
• Freely available on https://github.com/Spirals-Team/CloudLexicon
12
Outline
13
• Contributions
• Study design
• Results and analysis
• Conclusion and Future work
14
Providers, Services and URIs
Cloud
Provider
# of
services
% of
services
# of
URIs
% of
URIs
Average
URIs/service
GCP 22 15,49% 505 38,94% 23
OpenStack 115 80,99% 588 45,34% 5
OCCI 5 3,52% 204 15,53% 41
Total 142 1.297 9
Finding 1 – Strong diversity between cloud providers
• GCP - medium services
• OpenStack - a lot of very small services
• OCCI - few large services
15
RQ1. Which lexicon is adopted by cloud providers?
Finding 2 – The lexicon contains a majority of nouns, which are
equally singular or plural, and are mainly in lower case, following
REST API best naming practices.
Cloud
Provider
Lexicon
Terms
GCP 185
OpenStack 137
OCCI 47
16
RQ2. Are there common terms between providers’ lexicons?
Finding 3 – The three cloud computing REST APIs do not share a
common lexicon and very few terms are common between two
APIs.
• No common term
in the three APIs!
• Only 17 terms (5%)
common to two APIs!
17
RQ3. What is the global lexicon of all cloud providers?
Finding 4 – There is no consensus currently on which terms to use
on cloud computing systems.
352
different
terms
Outline
18
• Contributions
• Study design
• Results and analysis
• Conclusion and Future work
19
Conclusion
• First study evaluating and comparing the lexicon of three
REST APIs
- Strong diversity between cloud providers
- Cloud REST APIs follow best naming practices
- No common term in the three APIs!
- Only 17 terms common to two API!
- No consensus on used terms!
• First measure of the lexical heterogeneity in cloud
computing
20
Future Work
• Extend this study to more cloud APIs
Amazon Web Services, Apache CloudStack, DMTF CIMI, OASIS TOSCA, etc.
• Study in deep the semantics of lexicons, e.g., synonyms
• Build an ontology of cloud computing APIs in order to
deal with semantic interoperability between clouds
.
Towards a
REST Cloud Computing Lexicon
Fabio Petrillo1,3, Philippe Merle2, Naouel Moha1, Yann-Gaël Guéhéneuc3
1 Université du Québec à Montréal, Montréal, Canada
2 Inria Lille - Nord Europe, Villeneuve d’Ascq, France
3 École Polytechnique de Montréal, Montréal, Canada
7th International Conference on Cloud Computing and Services Science (CLOSER 2017)
April 24-26, 2017 – Porto, Portugal
21
22
Excerpt of the Cloud Dataset
HTTP Methods
23
à Retrieve
à Update
à Delete
à Create

More Related Content

PPTX
6 Lowpan Rpl Tutorial Code
PPTX
GridIIT Open Science Grid
PPTX
Cloud Computing Research Projects
PDF
An Architecture for Implementing Private Local Automation Clouds Built by CPS
PDF
resume-2016spring
PPTX
IMS LODE and the ASPECT project
PDF
Netgoblin and Tapire objective overview
6 Lowpan Rpl Tutorial Code
GridIIT Open Science Grid
Cloud Computing Research Projects
An Architecture for Implementing Private Local Automation Clouds Built by CPS
resume-2016spring
IMS LODE and the ASPECT project
Netgoblin and Tapire objective overview

Similar to Closer17.ppt (20)

PDF
PDF
Icsoc16a.ppt
PDF
"gRPC vs REST: let the battle begin!" OSCON 2018 edition
PPTX
Cloud Interoperability
PDF
"gRPC vs REST: let the battle begin!" GeeCON Krakow 2018 edition
PDF
Why RESTful Design for the Cloud is Best
PDF
"gRPC vs REST: let the battle begin!" DevoxxUK 2018 edition
PDF
Open Cloud Computing Interface
PDF
Cloud APIs Overview Tucker
PPTX
ececloud Architecture for GWU's ECE 289 Class
PPTX
ececloud Architecture for GWU\'s ECE 289 Class
PDF
Specifying Semantic Interoperability between Heterogeneous Cloud Resources wi...
PDF
Open Cloud Computing Interface
PDF
Simple Workload and Application Portability (SWAP) for Cloud Computing
PPTX
Apache CloudStack from API to UI
PDF
Cloud Computing on ISO/IEC JTC 1
PDF
Configuration management state of the art
PDF
Testing libraries for fun & profit. Beware: Increased productivity ahead
PDF
gRPC vs REST: let the battle begin!
PPT
Cloud Connectivity Service
Icsoc16a.ppt
"gRPC vs REST: let the battle begin!" OSCON 2018 edition
Cloud Interoperability
"gRPC vs REST: let the battle begin!" GeeCON Krakow 2018 edition
Why RESTful Design for the Cloud is Best
"gRPC vs REST: let the battle begin!" DevoxxUK 2018 edition
Open Cloud Computing Interface
Cloud APIs Overview Tucker
ececloud Architecture for GWU's ECE 289 Class
ececloud Architecture for GWU\'s ECE 289 Class
Specifying Semantic Interoperability between Heterogeneous Cloud Resources wi...
Open Cloud Computing Interface
Simple Workload and Application Portability (SWAP) for Cloud Computing
Apache CloudStack from API to UI
Cloud Computing on ISO/IEC JTC 1
Configuration management state of the art
Testing libraries for fun & profit. Beware: Increased productivity ahead
gRPC vs REST: let the battle begin!
Cloud Connectivity Service
Ad

More from Yann-Gaël Guéhéneuc (20)

PDF
Rights, Copyrights, and Licences for Software Engineering Research v1.0
PDF
Evolution and Examples of Java Features, from Java 1.7 to Java 24
PDF
Projects Panama, Valhalla, and Babylon: Java is the New Python v0.9
PDF
Consequences and Principles of Software Quality v1.0
PDF
About Empirical Studies on Software Quality
PDF
A (Very) Brief History of Ethics for Software Engineering Research
PDF
Project Manifold (Forwarding and Delegation)
PDF
Reviewing Processes and Tools, Publishers, Open Access
PDF
Custom Annotations in Java with Project Lombok
PDF
Some Pitfalls with Python and Their Possible Solutions v1.0
PDF
Advice for writing a NSERC Discovery grant application v0.5
PDF
Ptidej Architecture, Design, and Implementation in Action v2.1
PDF
Evolution and Examples of Java Features, from Java 1.7 to Java 22
PDF
Consequences and Principles of Software Quality v0.3
PDF
Some Pitfalls with Python and Their Possible Solutions v0.9
PDF
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
PDF
An Explanation of the Halting Problem and Its Consequences
PDF
Are CPUs VMs Like Any Others? v1.0
PDF
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
PDF
Well-known Computer Scientists v1.0.2
Rights, Copyrights, and Licences for Software Engineering Research v1.0
Evolution and Examples of Java Features, from Java 1.7 to Java 24
Projects Panama, Valhalla, and Babylon: Java is the New Python v0.9
Consequences and Principles of Software Quality v1.0
About Empirical Studies on Software Quality
A (Very) Brief History of Ethics for Software Engineering Research
Project Manifold (Forwarding and Delegation)
Reviewing Processes and Tools, Publishers, Open Access
Custom Annotations in Java with Project Lombok
Some Pitfalls with Python and Their Possible Solutions v1.0
Advice for writing a NSERC Discovery grant application v0.5
Ptidej Architecture, Design, and Implementation in Action v2.1
Evolution and Examples of Java Features, from Java 1.7 to Java 22
Consequences and Principles of Software Quality v0.3
Some Pitfalls with Python and Their Possible Solutions v0.9
An Explanation of the Unicode, the Text Encoding Standard, Its Usages and Imp...
An Explanation of the Halting Problem and Its Consequences
Are CPUs VMs Like Any Others? v1.0
Informaticien(ne)s célèbres (v1.0.2, 19/02/20)
Well-known Computer Scientists v1.0.2
Ad

Recently uploaded (20)

PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
Digital Systems & Binary Numbers (comprehensive )
DOCX
Greta — No-Code AI for Building Full-Stack Web & Mobile Apps
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PDF
medical staffing services at VALiNTRY
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
Complete Guide to Website Development in Malaysia for SMEs
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
history of c programming in notes for students .pptx
PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
Salesforce Agentforce AI Implementation.pdf
PDF
Nekopoi APK 2025 free lastest update
PDF
AutoCAD Professional Crack 2025 With License Key
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Digital Systems & Binary Numbers (comprehensive )
Greta — No-Code AI for Building Full-Stack Web & Mobile Apps
Oracle Fusion HCM Cloud Demo for Beginners
Monitoring Stack: Grafana, Loki & Promtail
medical staffing services at VALiNTRY
Operating system designcfffgfgggggggvggggggggg
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Complete Guide to Website Development in Malaysia for SMEs
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
history of c programming in notes for students .pptx
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
Why Generative AI is the Future of Content, Code & Creativity?
CHAPTER 2 - PM Management and IT Context
Design an Analysis of Algorithms II-SECS-1021-03
Salesforce Agentforce AI Implementation.pdf
Nekopoi APK 2025 free lastest update
AutoCAD Professional Crack 2025 With License Key
Wondershare Filmora 15 Crack With Activation Key [2025
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...

Closer17.ppt

  • 1. Towards a REST Cloud Computing Lexicon Fabio Petrillo1,3, Philippe Merle2, Naouel Moha1, Yann-Gaël Guéhéneuc3 1 Université du Québec à Montréal, Montréal, Canada 2 Inria Lille - Nord Europe, Villeneuve d’Ascq, France 3 École Polytechnique de Montréal, Montréal, Canada 7th International Conference on Cloud Computing and Services Science (CLOSER 2017) April 24-26, 2017 – Porto, Portugal 1
  • 2. Context 2 • Cloud computing = most popular model to provide on- demand computational resources and services • REST APIs for offering such computational resources Web Services
  • 3. • Wide variety of Cloud APIs à heterogeneity à no interop. • Cloud APIs are difficult to design and therefore to understand and use Problem • Well-named REST APIs may attract client developers • Quality factors: understandability and reusability 4
  • 4. • Right choice of the lexicon of cloud computing APIs • BUT best naming practices scattered in the litterature • BUT no study on real-world cloud computing APIs 4 Solution
  • 5. Outline 5 • Contributions • Study design • Results and analysis • Conclusion and Future work
  • 6. Outline 6 • Contributions • Study design • Results and analysis • Conclusion and Future work
  • 7. 7 Contributions Goal: Empirical study of the lexicon of Cloud REST APIs C1. A tooled approach for extracting and analysing REST cloud computing lexicons C2. A dataset of services, resources, and terms used in three studied REST APIs C3. An analysis of the dataset
  • 8. Outline 8 • Contributions • Study design • Results and analysis • Conclusion and Future work
  • 9. 9 Study Objects: RQ1. Which lexicon is adopted by cloud computing providers? RQ2. Are there common terms between providers’ lexicons? RQ3. What is the global lexicon of all cloud providers? Commercial Open source Standard
  • 10. Conceptual Model for Cloud Computing REST APIs - Google Cloud Platform, OpenStack, OCCI, … 10 - GCP products: compute, sql, ... - OS API: orchestration-api, os-compute-2, … - OCCI Extensions: Infrastructure, Platform, … - /{project}/zones/{zone_id}/ instances/{instance_id} in GCP compute - /{tenant_ id}/servers/{server_id} in os-compute-2 - /compute/{compute_id} in OCCI Infrastructure - generic CRUD operations: DELETE, GET, POST, PUT, … - resource-specific actions: start, stop, attach, …
  • 11. Our Tooled Approach 11 Step 1 – Collecting documentation Step 2 – Parsing documentation Step 3 – Extracting lexicon Step 4 – Analysing lexicon
  • 12. Implementation • Datasets encoded as CSV files to foster reusability • Parsers, extractors and analyses implemented in Python to foster readability, comprehension and auditability • Freely available on https://github.com/Spirals-Team/CloudLexicon 12
  • 13. Outline 13 • Contributions • Study design • Results and analysis • Conclusion and Future work
  • 14. 14 Providers, Services and URIs Cloud Provider # of services % of services # of URIs % of URIs Average URIs/service GCP 22 15,49% 505 38,94% 23 OpenStack 115 80,99% 588 45,34% 5 OCCI 5 3,52% 204 15,53% 41 Total 142 1.297 9 Finding 1 – Strong diversity between cloud providers • GCP - medium services • OpenStack - a lot of very small services • OCCI - few large services
  • 15. 15 RQ1. Which lexicon is adopted by cloud providers? Finding 2 – The lexicon contains a majority of nouns, which are equally singular or plural, and are mainly in lower case, following REST API best naming practices. Cloud Provider Lexicon Terms GCP 185 OpenStack 137 OCCI 47
  • 16. 16 RQ2. Are there common terms between providers’ lexicons? Finding 3 – The three cloud computing REST APIs do not share a common lexicon and very few terms are common between two APIs. • No common term in the three APIs! • Only 17 terms (5%) common to two APIs!
  • 17. 17 RQ3. What is the global lexicon of all cloud providers? Finding 4 – There is no consensus currently on which terms to use on cloud computing systems. 352 different terms
  • 18. Outline 18 • Contributions • Study design • Results and analysis • Conclusion and Future work
  • 19. 19 Conclusion • First study evaluating and comparing the lexicon of three REST APIs - Strong diversity between cloud providers - Cloud REST APIs follow best naming practices - No common term in the three APIs! - Only 17 terms common to two API! - No consensus on used terms! • First measure of the lexical heterogeneity in cloud computing
  • 20. 20 Future Work • Extend this study to more cloud APIs Amazon Web Services, Apache CloudStack, DMTF CIMI, OASIS TOSCA, etc. • Study in deep the semantics of lexicons, e.g., synonyms • Build an ontology of cloud computing APIs in order to deal with semantic interoperability between clouds .
  • 21. Towards a REST Cloud Computing Lexicon Fabio Petrillo1,3, Philippe Merle2, Naouel Moha1, Yann-Gaël Guéhéneuc3 1 Université du Québec à Montréal, Montréal, Canada 2 Inria Lille - Nord Europe, Villeneuve d’Ascq, France 3 École Polytechnique de Montréal, Montréal, Canada 7th International Conference on Cloud Computing and Services Science (CLOSER 2017) April 24-26, 2017 – Porto, Portugal 21
  • 22. 22 Excerpt of the Cloud Dataset
  • 23. HTTP Methods 23 à Retrieve à Update à Delete à Create