xlab-si / xopera-examples

Runnable TOSCA examples for xOpera orchestrator
https://xlab-si.github.io/xopera-docs/07-examples.html
Creative Commons Attribution 4.0 International
5 stars 1 forks source link

Modeling choices or defects? #44

Open philippemerle opened 2 years ago

philippemerle commented 2 years ago

I used our tosca toolbox to automatically generate visual diagrams in order to study modeling choices and identify modeling defects in TOSCA types and topologies of all xOpera examples.

Following is a UML2 component diagram representing the TOSCA topology of the cloud/aws/thumbnail-generator-with-vm example:

xopera-examples-cloud-aws-thumbnail-generator-with-vm-service-uml2-component-diagram2

Following is a proprietary diagram representing the same topology (only node templates are represented):

xopera-examples-cloud-aws-thumbnail-generator-with-vm-service

On both diagrams, we could observe that:

Are those modeling choices or modeling defects?

anzoman commented 2 years ago

@philippemerle we developed this example to showcase the xOpera deployment on AWS and it seems that we focused more on the Ansible playbook executors within TOSCA interface operations. So, we tried to create a valid TOSCA structure, but if you see that there are some possible improvements or fixes for those modeling defects, you can express them here (also feel free to correct them yourself).

philippemerle commented 2 years ago

I will propose you (asap) some improvements fixing those modeling defects. Moreover these improvements should be reuseable for all other cloud examples.

philippemerle commented 2 years ago

I see another different modeling defect in two other examples.

Following is a UML2 component diagram representing the tosca/policy-triggers/service.yaml topology:

xopera-examples-tosca-policy-triggers-service-uml2-component-diagram1

This diagram shows that the AutoScale policy targets the openstack_vm node template. But we also see that both ScaleDown and ScaleUp policies target no node template. This should be a modeling defect: ScaleDown and ScaleUp policies should target openstack_vm too.

Following is a UML2 component diagram representing the misc/scaling/service.yaml topology:

xopera-examples-misc-scaling-service-uml2-component-diagram1

Here we see that both ScaleDown and ScaleUp policies target no node template. They both should target some node templates.

anzoman commented 2 years ago

Aha, yes @philippemerle thanks for finding another modeling defect.

philippemerle commented 2 years ago

@anzoman could this issue reopened as most of modeling defects were not fixed?

anzoman commented 2 years ago

Sure, let's reopen this.