Skip to content

Methodology: Selecting the ADLs

The following sections describe the approach and methodology used to determine the ADLs worth evaluating.


1. General Information

The approach to select relevant modeling languages is described in detail below. A systematic literature search was conducted to determine relevant modeling languages and possible criteria for later evaluating the chosen languages. First, the systematic literature search focused on existing reviews on modeling languages in the context of services and the cloud. However, mainly older reviews were found and no recent ones (the last review dates from 2019). Consequently, the reviews mainly consider older modeling languages whose relevance is not necessarily longer given today. Therefore, a second systematic literature search was conducted to find recently proposed or relevant modeling languages in the context of the cloud or microservices.

After each literature search, the selected modeling languages are mentioned with their respective selection reason(s). Additionally, the general exclusion reasons are also listed.

The final result with a summarization of the selected modeling languages can be found in the Final ADL Selection Result section.

2. First Systematic Literature Search: Finding Reviews

The first literature search focused on finding existing reviews on modeling languages in the context of services and the cloud.

2.1 Finding ADL Reviews

A description of the stepwise performed systematic literature search can be found here:
Review Search

→ The Bibtex-file that includes the final selection of relevant literature: 🔍 7
     Final Review Selection

Overview First Literature Search

Short summary of the overall procedure for the first search

📆 Search date: 2022-01-24 until 2022-01-26

2.2 Selection of Suitable Architecture Description Languages

The information gained from the reviews is used to select appropriate ADLs for the evaluation.

❌ Exclusion Criteria:

  • Identified domain does not include cloud services

  • Language covers only business-related aspects and not technical ones

  • Focus lies mainly on the provider of a cloud environment instead of the user

  • Language for platform-specific models

  • Focus lies only on runtime aspects (→ Quality Model considers design time)

  • Language objective focuses solely on aspects regarding, for example, service level agreement, service discovery or selection

  • Focus lies on one specific type of cloud environment/ delivery model (e.g. PaaS)

  • The language's intended users do not include application developers but focus on application user perspective

  • Application components cannot be considered when interactions between a cloud service and the cloud application are modeled

✔ Selection Criteria:

  • Language is still relevant: publishing of new versions, further paper publications, tool support is being further developed

Result:

Modeling Language
Selection Reasons
TOSCA
  • Analyzed by all detailed reviews [Sun2012, Bergmayr2014, Bergmayr2018, Nawaz2019] as well as considered by the shorter/ more specific reviews [Quint2018, Bernal2019, Kritikos2019]
  • OASIS standard fors life-cycle management and cloud application representation
  • Last version was published in 20201 and is still the subject of many current papers
CAMEL
  • Considered by the shorter/more specific reviews [Quint2018, Kritikos2019]
  • Also mentioned by [Bergmayr2018], however not analyzed due to its ongoing development back then
  • Exploits model at design- as well as run-time
  • Provides Multi-Cloud potential
  • Last paper was published in 20192
  • Code still receives updates3
CloudML (with CloudMF)
  • Considered by the detailed reviews [Bergmayr2014, Bergmayr2018]
  • Last paper published in 20184
  • Also allows runtime considerations

Since the exclusion criteria apply to the other languages, a second systematic literature search was conducted to find further relevant modeling languages.

3. Second Systematic Literature Search: Finding Recent ADLs

The second systematic literature search was performed to find further recently proposed or relevant modeling languages in the context of the cloud or microservices.

3.1 Finding Recent ADLs

A description of the stepwise performed systematic literature search can be found here:
Recent ADLs Search

→ The Bibtex-file that includes the final selection of relevant literature: 🔍 21
     Final Recent ADL Selection

Overview Second Literature Search

Short summary of the overall procedure for the second search

📆 Search date: 2022-02-02

3.2 Selection of Suitable Architecture Description Languages

For the selection aspects like the language's relevant and main focus/scope were considered.

❌ Exclusion Criteria:

  • Too restricted on specific aspects

  • Another approach is based on it

  • Based on another language which is already being evaluated

✔ Selection Criteria:

  • Language is still relevant: publishing of new versions, further paper publications, tool support is being further developed

  • Enough explanatory and descriptive papers or documentation for modeling language available

  • Ideally, supportive tools provided

Result:

Modeling Language
Selection Reasons
LEMMA
Context Mapper
  • Relevance is given: last papers have just recently been published, last version was recently published and its Github page receives still updates
  • uses Domain-driven Design (DDD) perspective
  • detailed but compact and up-to-date online documentation

4. Final ADL Selection Result

The following table summarizes the final selection of modeling languages to be evaluated in the further course of the master thesis. Additionally, a non-exhaustive list of the primary reference(s) for the individual modeling language is provided.

Modeling Language
Main Reference
TOSCA OASIS TOSCA

Binz, T., Breitenbücher, U., Kopp, O., & Leymann, F. (2014). TOSCA: Portable Automated Deployment and Management of Cloud Applications. In Advanced Web Services (pp. 527-549). Springer. https://doi.org/10.1007/978-1-4614-7535-4_22
CAMEL Achilleos, A. P., Kritikos, K., Rossini, A., Kapitsaki, G. M., Domaschka, J., Orzechowski, M., ... & Papadopoulos, G. A. (2019). The Cloud Application Modelling and Execution Language. Journal of Cloud Computing, 8(1), (pp. 1-25). https://doi.org/10.1186/s13677-019-0138-7
CloudML (with CloudMF) Ferry, N., Rossini, A., Chauvel, F., Morin, B., & Solberg, A. (2013, June). Towards Model-Driven Provisioning, Deployment, Monitoring, and Adaptation of Multi-Cloud Systems. In 2013 IEEE Sixth International Conference on cloud computing (pp. 887-894). IEEE. https://doi.org/10.1109/CLOUD.2013.133

Ferry, N., Song, H., Rossini, A., Chauvel, F., & Solberg, A. (2014, December). CloudMF: Applying MDE to Tame the Complexity of Managing Multi-Cloud Applications. In 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing (pp. 269-277). IEEE. https://doi.org/10.1109/UCC.2014.36

Ferry, N., Chauvel, F., Song, H., Rossini, A., Lushpenko, M., & Solberg, A. (2018, May). CloudMF: Model-Driven Management of Multi-Cloud Applications. In ACM Transactions on Internet Technology (TOIT), 18(2), (pp. 1-24). https://doi.org/10.1145/3125621
LEMMA LEMMA official Github page5

Rademacher, F., Sorgalla, J., Wizenty, P., Sachweh, S., & Zündorf, A. (2020). Graphical and Textual Model-Driven Microservice Development. In Microservices (pp. 147-179). Springer, Cham. https://doi.org/10.1007/978-3-030-31646-4_7

Rademacher, F., Sachweh, S., & Zündorf, A. (2020, August). Deriving Microservice Code from Underspecified Domain Models using DevOps-Enabled Modeling Languages and Model Transformations. In 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 229-236). IEEE. https://doi.org/10.1109/SEAA51224.2020.00047

Rademacher, F., Sorgalla, J., Wizenty, P., & Trebbau, S. (2021). Towards Holistic Modeling of Microservice Architectures Using LEMMA. In Companion Proceedings of the 15th European Conference on Software Architecture 2021. CEUR-WS. http://ceur-ws.org/Vol-2978/mde4sa-paper2.pdf5

more literature by the authors can be found in their Github's Science section
Context Mapper Official Context Mapper Website5

Kapferer, S., & Zimmermann, O. (2020). Domain-Specific Language and Tools for Strategic Domain-Driven Design, Context Mapping and Bounded Context Modeling. In Proceedings of the 8th International Conference on Model-Driven Engineering and Software Development (MODELSWARD) (pp. 299-306). SCITEPRESS. https://doi.org/10.5220/0008910502990306

Kapferer, S., & Zimmermann, O. (2020, September). Domain-Driven Service Design. In Symposium and Summer School on Service-Oriented Computing (pp. 189-208). Springer, Cham. https://doi.org/10.1007/978-3-030-64846-6_11

References

[Giallorenzo2021] S. Giallorenzo, F. Montesi, M. Peressotti, F. Rademacher and S. Sachweh, "Jolie and LEMMA: Model-Driven Engineering and Programming Languages Meet on Microservices," in Coordination Models and Languages. COORDINATION 2021. Lecture Notes in Computer Science, vol 12717. Springer, 2021, pp. 44–51. [Online]. Available: https://doi.org/10.1007/978-3-030-78142-2_17

[Rademacher2019a] F. Rademacher, S. Sachweh and A. Zündorf, "Aspect-Oriented Modeling of Technology Heterogeneity in Microservice Architecture," 2019 IEEE International Conference on Software Architecture (ICSA), 2019, pp. 21-30, [Online]. Available: https://doi.org/10.1109/ICSA.2019.00011

[Rademacher2020] F Rademacher, J Sorgalla, P Wizenty and S Trebbau, "Deriving Microservice Code from Underspecified Domain Models Using DevOps-Enabled Modeling Languages and Model Transformations," 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 2021, [Online]. Available: https://doi.org/10.1109/SEAA51224.2020.00047

[Rademacher2021] D. Cruz, T. Wieland, and A. Ziegler, "Towards Holistic Modeling of Microservice Architectures Using LEMMA," Companion Proceedings of the 15th European Conference on Software Architecture 2021. CEUR-WS, 2021. [Online]. Available: http://ceur-ws.org/Vol-2978/mde4sa-paper2.pdf

[Sorgalla2020] J. Sorgalla, F. Rademacher, S. Sachweh, and A. Zündorf, "Modeling Microservice Architecture: A Comparative Experiment towards the Effectiveness of Two Approaches," Proceedings of the 35th Annual ACM Symposium on Applied Computing. Association for Computing Machinery, New York, NY, USA, pp. 1506–1509. https://doi.org/10.1145/3341105.3374065

[Sorgalla2020a] J. Sorgalla, F. Rademacher, S. Sachweh and A. Zündorf, "Model-Driven Development of Microservice Architecture: An Experiment on the Quality in Use of a UML-and a DSL-based Approach," 2020. [Online]. Available: https://doi.org/10.17170/kobra-202010302034

[Trebbau2021] S. Trebbau, P. Wizenty, and S. Sachweh, "Towards Integrating Blockchains with Microservice Architecture Using Model-Driven Engineering," in Agile Processes in Software Engineering and Extreme Programming – Workshops. XP 2021. Lecture Notes in Business Information Processing, vol 426. Springer, 2021. [Online]. Available: https://doi.org/10.1007/978-3-030-88583-0_16



  1. https://www.oasis-open.org/news/announcements/tosca-simple-profile-in-yaml-v1-3-oasis-standard-published/, last accessed: 2022-02-02 

  2. Achilleos, A.P., Kritikos, K., Rossini, A. et al. The cloud application modelling and execution language. J Cloud Comp 8, 20 (2019). https://doi.org/10.1186/s13677-019-0138-7 

  3. https://bitbucket.7bulls.eu/projects/MEL/repos/camel/commits?until=refs%2Fheads%2Fcamel-3.0.2-alpha&merges=include, Commit ID: 33edfe5f56f, last accessed: 2022-02-02 

  4. Ferry, N., Chauvel, F., Song, H., Rossini, A., Lushpenko, M., & Solberg, A. (2018, May). CloudMF: Model-Driven Management of Multi-Cloud Applications. In ACM Transactions on Internet Technology (TOIT), 18(2), (pp. 1-24). https://doi.org/10.1145/3125621 

  5. last accessed: 2022-02-04 


Last update: 2022-08-31
Back to top