A Precise Model for
Google Cloud Platform
Stéphanie Challita | Faiez Zalila | Christophe Gourdin | Philippe Merle
Inria Lille – Nord Europe & University of Lille
6th IEEE International Conference on Cloud Engineering (IC2E 2018)
17 – 20 April, 2018, Orlando, Florida, USA
Google Cloud Platform
Stéphanie Challita 217 – 20 April, 2018, Orlando, Florida, USA
Google Cloud Platform
Cloud
developer/designer
Cloud
provider
An agreement with the developer on exactly how the system will operate
conformsto
GCP
documentation
GCP documentation is written in natural language
 human errors and/or semantic confusions
Stéphanie Challita 317 – 20 April, 2018, Orlando, Florida, USA
Agenda
• Drawbacks & Motivations
• Contribution
• Perspectives
Stéphanie Challita 417 – 20 April, 2018, Orlando, Florida, USA
Drawbacks & Motivations
Stéphanie Challita 517 – 20 April, 2018, Orlando, Florida, USA
List of Drawbacks
Stéphanie Challita 6
• Informal Heterogeneous Documentation
• Imprecise Types
• Implicit Attribute Metadata
• Hidden Links
• Redundancy
• Lack of Visual Support
17 – 20 April, 2018, Orlando, Florida, USA
Informal Heterogeneous Documentation
Stéphanie Challita 7
Vs.
Available at
https://cloud.google.com/compute/docs/reference/latest/networks
Available at
https://cloud.google.com/dataproc/docs/reference/rest/v1/projects.regions.clusters
17 – 20 April, 2018, Orlando, Florida, USA
Imprecise Types
Stéphanie Challita 817 – 20 April, 2018, Orlando, Florida, USA
Lack of Visual Support
• Only descriptive information in GCP
documentation
– A huge time to be properly understood and analyzed
• Visual diagrams easily highlight in short but
catchy view the concepts of the API
– Help to avoid wastage of time
– Logical sequence and comparative analysis can be
undertaken
Stéphanie Challita 917 – 20 April, 2018, Orlando, Florida, USA
Contribution
Stéphanie Challita 1017 – 20 April, 2018, Orlando, Florida, USA
Global Vision
Stéphanie Challita 1117 – 20 April, 2018, Orlando, Florida, USA
• Precise model for GCP
• Work of reverse-engineering, HTML Model
• GCP model refinement
GCP Snapshot
Stéphanie Challita 12
A
Snapshot
GCP
HTML pages
GCP
documentation
• GCP engineers could
update/correct GCP
documentation
• Continuously following up with
GCP documentation is costly
• Snapshot of GCP API
17 – 20 April, 2018, Orlando, Florida, USA
GCP Crawler & GCP Model
Stéphanie Challita 13
GCP
Crawler GCP
Model
A B
Snapshot
GCP
HTML pages
GCP
documentation
C
• GCP Crawler to extract all GCP resources, their
attributes and actions
• GCP Model for a better description of the GCP
resources and for reasoning over them
No more Informal Heterogeneous Documentation
17 – 20 April, 2018, Orlando, Florida, USA
Model Transformations
Stéphanie Challita 14
GCP
Crawler
Implicit Attribute
Metadata Detection
Link Identification
Redundancy Removal
GCP
Model
A B
Snapshot
GCP
HTML pages
GCP
documentation
C
Model
Transformations
Type Refinement
Model Visualization
17 – 20 April, 2018, Orlando, Florida, USA
Type Refinement
• By adopting the data type system proposed by OCCIware
metamodel
– defining regular expressions,
– and using the EMF validator to check the type constraints that
are attached to the attributes
• If the type of an attribute in the documentation is string
and the description explains that this is an email address,
we apply the email validation constraint :
– STRINGTYPE + this regular expression:
^[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,6}$
• No more Imprecise Types
Stéphanie Challita 1517 – 20 April, 2018, Orlando, Florida, USA
Model Visualization
No more Lack of Visual Support
Stéphanie Challita 16
For an easier understanding
and analysis of the API,
because the insights become
obvious
17 – 20 April, 2018, Orlando, Florida, USA
Analysis
• “GCP documentation is
developed by two separate
clusters of development teams”
Stéphanie Challita 1717 – 20 April, 2018, Orlando, Florida, USA
Runtime
Config
Cloud User
Account
• “GCP documentation is
redundant and not
comprehensive”
&
GCP
Model
Perspectives
Stéphanie Challita 1817 – 20 April, 2018, Orlando, Florida, USA
In progress…
• Validation with Google
• GCP Studio, a dedicated model-driven
environment for GCP
• Generation of GCP artifacts such as JSON files
and CURL scripts
• Model-driven management of GCP systems
Stéphanie Challita 1917 – 20 April, 2018, Orlando, Florida, USA
stephanie.challita@inria.fr
www.occiware.org
https://github.com/occiware/GCP-Model
Thank you!
17 – 20 April, 2018, Orlando, Florida, USA

A Precise Model for Google Cloud Platform (IC2E'2018)

  • 1.
    A Precise Modelfor Google Cloud Platform Stéphanie Challita | Faiez Zalila | Christophe Gourdin | Philippe Merle Inria Lille – Nord Europe & University of Lille 6th IEEE International Conference on Cloud Engineering (IC2E 2018) 17 – 20 April, 2018, Orlando, Florida, USA
  • 2.
    Google Cloud Platform StéphanieChallita 217 – 20 April, 2018, Orlando, Florida, USA
  • 3.
    Google Cloud Platform Cloud developer/designer Cloud provider Anagreement with the developer on exactly how the system will operate conformsto GCP documentation GCP documentation is written in natural language  human errors and/or semantic confusions Stéphanie Challita 317 – 20 April, 2018, Orlando, Florida, USA
  • 4.
    Agenda • Drawbacks &Motivations • Contribution • Perspectives Stéphanie Challita 417 – 20 April, 2018, Orlando, Florida, USA
  • 5.
    Drawbacks & Motivations StéphanieChallita 517 – 20 April, 2018, Orlando, Florida, USA
  • 6.
    List of Drawbacks StéphanieChallita 6 • Informal Heterogeneous Documentation • Imprecise Types • Implicit Attribute Metadata • Hidden Links • Redundancy • Lack of Visual Support 17 – 20 April, 2018, Orlando, Florida, USA
  • 7.
    Informal Heterogeneous Documentation StéphanieChallita 7 Vs. Available at https://cloud.google.com/compute/docs/reference/latest/networks Available at https://cloud.google.com/dataproc/docs/reference/rest/v1/projects.regions.clusters 17 – 20 April, 2018, Orlando, Florida, USA
  • 8.
    Imprecise Types Stéphanie Challita817 – 20 April, 2018, Orlando, Florida, USA
  • 9.
    Lack of VisualSupport • Only descriptive information in GCP documentation – A huge time to be properly understood and analyzed • Visual diagrams easily highlight in short but catchy view the concepts of the API – Help to avoid wastage of time – Logical sequence and comparative analysis can be undertaken Stéphanie Challita 917 – 20 April, 2018, Orlando, Florida, USA
  • 10.
    Contribution Stéphanie Challita 1017– 20 April, 2018, Orlando, Florida, USA
  • 11.
    Global Vision Stéphanie Challita1117 – 20 April, 2018, Orlando, Florida, USA • Precise model for GCP • Work of reverse-engineering, HTML Model • GCP model refinement
  • 12.
    GCP Snapshot Stéphanie Challita12 A Snapshot GCP HTML pages GCP documentation • GCP engineers could update/correct GCP documentation • Continuously following up with GCP documentation is costly • Snapshot of GCP API 17 – 20 April, 2018, Orlando, Florida, USA
  • 13.
    GCP Crawler &GCP Model Stéphanie Challita 13 GCP Crawler GCP Model A B Snapshot GCP HTML pages GCP documentation C • GCP Crawler to extract all GCP resources, their attributes and actions • GCP Model for a better description of the GCP resources and for reasoning over them No more Informal Heterogeneous Documentation 17 – 20 April, 2018, Orlando, Florida, USA
  • 14.
    Model Transformations Stéphanie Challita14 GCP Crawler Implicit Attribute Metadata Detection Link Identification Redundancy Removal GCP Model A B Snapshot GCP HTML pages GCP documentation C Model Transformations Type Refinement Model Visualization 17 – 20 April, 2018, Orlando, Florida, USA
  • 15.
    Type Refinement • Byadopting the data type system proposed by OCCIware metamodel – defining regular expressions, – and using the EMF validator to check the type constraints that are attached to the attributes • If the type of an attribute in the documentation is string and the description explains that this is an email address, we apply the email validation constraint : – STRINGTYPE + this regular expression: ^[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,6}$ • No more Imprecise Types Stéphanie Challita 1517 – 20 April, 2018, Orlando, Florida, USA
  • 16.
    Model Visualization No moreLack of Visual Support Stéphanie Challita 16 For an easier understanding and analysis of the API, because the insights become obvious 17 – 20 April, 2018, Orlando, Florida, USA
  • 17.
    Analysis • “GCP documentationis developed by two separate clusters of development teams” Stéphanie Challita 1717 – 20 April, 2018, Orlando, Florida, USA Runtime Config Cloud User Account • “GCP documentation is redundant and not comprehensive” & GCP Model
  • 18.
    Perspectives Stéphanie Challita 1817– 20 April, 2018, Orlando, Florida, USA
  • 19.
    In progress… • Validationwith Google • GCP Studio, a dedicated model-driven environment for GCP • Generation of GCP artifacts such as JSON files and CURL scripts • Model-driven management of GCP systems Stéphanie Challita 1917 – 20 April, 2018, Orlando, Florida, USA
  • 20.