Providing Tooling Support for Modeling Cloud-Native Application Architectures
The Accompanying repository for the paper “An Evaluation of Modeling Options for Cloud-native Application Architectures to Enable Quality Investigations”.
This documentation is currently still under development.
All the following topics focus in some way on the cloud-native quality model as introduced in the paper “Towards a Quality Model for Cloud-native Applications” and the CNA Quality Model Repository.
1. Quality Model For Cloud-Native Applications: Product Factor to Entity Mapping
The concrete mapping of each product factor to the individual entities can be found here: Product Factor - Entity Mapping
2. ADL Search & Selection
The process for the systematic literature search that led to the selection of the architecture description languages that are being analyzed can be found here:
3. TOSCA
A detailed review of the five ADLs - TOSCA, CloudML, CAMEL, LEMMA and Context Mapper - led to the selection of TOSCA to model architectures for the quality model. However, an extension is required such that all proposed entities of the quality model can be represented. Therefore, besides providing the proposed extension, Richardson’s FTGO Application was modeled using the original as well as the extended TOSCA version to identify further requirements.
3.1 TOSCA: FTGO Modeling
The mapping of FTGO elements to the quality model entities, as well as the modeling itself, can be found here: TOSCA - FTGO Modeling
- mapping FTGO to quality model entities
- modeling with original version
- modeling with extended version
3.2 TOSCA: Extension Proposal
The detailed definition of the proposed extension for TOSCA can be found here: TOSCA Extension
4. Web-based Tooling Support
In order to provide web-based tooling support, a review of existing JS modeling libraries was conducted as well as a prototypical application was developed.
4.1 JS Modeling Library Search & Selection
A description of the Google and Github search leading to the selection of the Javascript libraries that are being analyzed can be found here: JS Modeling Library Selection Methodology
4.2 Web-Based Modeling Application
The code of the prototypical web-based modeling application using the open-source JointJS modeling library can be found here: JS Code. It also includes a description of how to run the prototype.
An example of what the prototype looks like: