Skip to main content

Managing the Variability of Component Implementations and Their Deployment Configurations Across Heterogeneous Deployment Technologies

  • Conference paper
  • First Online:
Cooperative Information Systems (CoopIS 2023)

Abstract

Application systems often need to be deployed in different variants if requirements that influence their implementation, hosting, and configuration differ between customers. Therefore, deployment technologies, such as Ansible or Terraform, support a certain degree of variability modeling. Besides, modern application systems typically consist of various software components deployed using multiple deployment technologies that only support their proprietary, non-interoperable variability modeling concepts. The Variable Deployment Metamodel (VDMM) manages the deployment variability across heterogeneous deployment technologies based on a single variable deployment model. However, VDMM currently only supports modeling conditional components and their relations which is sometimes too coarse-grained since it requires modeling entire components, including their implementation and deployment configuration for each different component variant. Therefore, we extend VDMM by a more fine-grained approach for managing the variability of component implementations and their deployment configurations, e.g., if a cheap version of a SaaS deployment provides only a community edition of the software and not the enterprise edition, which has additional analytical reporting functionalities built-in. We show that our extended VDMM can be used to realize variable deployments across different individual deployment technologies using a case study and our prototype OpenTOSCA Vintner.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Ansible: Conditionals, https://bit.ly/46KELJe.

  2. 2.

    Terraform: The count Meta-Argument, https://bit.ly/44yNBaW.

  3. 3.

    EDMM does not differentiate between artifacts for implementing components and artifacts for implementing management operations. This differentiation does not raise any conflicts since VDMM deployment artifacts are of type EDMM artifact.

  4. 4.

    https://github.com/OpenTOSCA/opentosca-vintner.

  5. 5.

    https://vintner.opentosca.org.

  6. 6.

    http://minisat.se.

  7. 7.

    https://github.com/meteor/logic-solver.

  8. 8.

    https://github.com/onecommons/unfurl.

  9. 9.

    https://github.com/xlab-si/xopera-opera.

References

  1. Bergmayr, A., et al.: A systematic review of cloud modeling languages. ACM Comput. Surv. (CSUR) 51(1), 1–38 (2018)

    Article  Google Scholar 

  2. Bogo, M., Soldani, J., Neri, D., Brogi, A.: Component-aware orchestration of cloud-based enterprise applications, from TOSCA to Docker and Kubernetes. Softw. Pract. Experience 50(9), 1793–1821 (2020)

    Article  Google Scholar 

  3. Brabra, H., Mtibaa, A., Gaaloul, W., Benatallah, B., Gargouri, F.: Model-driven orchestration for cloud resources. In: 2019 IEEE 12th International Conference on Cloud Computing (CLOUD), pp. 422–429 (2019)

    Google Scholar 

  4. Chiari, M., et al.: DOML: a new modelling approach to infrastructure-as-code. In: Indulska, M., Reinhartz-Berger, I., Cetina, C., Pastor, O. (eds.) CAiSE 2023. LNCS, vol. 13901, pp. 297–313. Springer, Cham (2023). https://doi.org/10.1007/978-3-031-34560-9_18 ISBN 978-3-031-34560-9

    Chapter  Google Scholar 

  5. Clauß, M., Jena, I.: Modeling variability with UML. In: GCSE 2001 Young Researchers Workshop, Citeseer (2001)

    Google Scholar 

  6. Czarnecki, K., Antkiewicz, M.: Mapping features to models: a template approach based on superimposed variants. In: Glück, R., Lowry, M. (eds.) GPCE 2005. LNCS, vol. 3676, pp. 422–437. Springer, Heidelberg (2005). https://doi.org/10.1007/11561347_28 ISBN 978-3-540-31977-1

    Chapter  Google Scholar 

  7. Di Cosmo, R., Eiche, A., Mauro, J., Zacchiroli, S., Zavattaro, G., Zwolakowski, J.: Automatic deployment of services in the cloud with Aeolus blender. In: Barros, A., Grigori, D., Narendra, N.C., Dam, H.K. (eds.) ICSOC 2015. LNCS, vol. 9435, pp. 397–411. Springer, Heidelberg (2015). https://doi.org/10.1007/978-3-662-48616-0_28 ISBN 978-3-662-48616-0

    Chapter  Google Scholar 

  8. Dobrica, L., Niemelä, E.: Modeling variability in the software product line architecture of distributed services. In: Proceedings of the 2007 International Conference on Software Engineering Research & Practice, SERP 2007, Las Vegas Nevada, USA, 25–28 June 2007, vol. I, pp. 269–275. CSREA Press (2007)

    Google Scholar 

  9. Dobrica, L., Niemelä, E.: A UML-based variability specification for product line architecture views. In: Proceedings of the Third International Conference on Software and Data Technologies - Volume 3: ICSOFT, pp. 234–239. INSTICC (2008). ISBN 978-989-8111-52-4, ISSN 2184-2833

    Google Scholar 

  10. Düllmann, T.F., van Hoorn, A.: Model-driven generation of microservice architectures for benchmarking performance and resilience engineering approaches. In: Proceedings of the 8th ACM/SPEC on International Conference on Performance Engineering Companion, ICPE 2017, Companion, pp. 171–172. Association for Computing Machinery, New York (2017). ISBN 9781450348997

    Google Scholar 

  11. Glaser, F.: Domain model optimized deployment and execution of cloud applications with TOSCA. In: Grabowski, J., Herbold, S. (eds.) SAM 2016. LNCS, vol. 9959, pp. 68–83. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-46613-2_5 ISBN 978-3-319-46613-2

    Chapter  Google Scholar 

  12. Guillén, J., Miranda, J., Murillo, J.M., Canal, C.: A service-oriented framework for developing cross cloud migratable software. J. Syst. Softw. 86(9), 2294–2308 (2013). ISSN 0164-1212

    Google Scholar 

  13. Harzenetter, L., Breitenbücher, U., Falkenthal, M., Guth, J., Krieger, C., Leymann, F.: Pattern-based deployment models and their automatic execution. In: Proceedings of the 11th IEEE/ACM International Conference on Utility and Cloud Computing (UCC 2018), pp. 41–52. IEEE Computer Society (2018)

    Google Scholar 

  14. Harzenetter, L., Breitenbücher, U., Falkenthal, M., Guth, J., Leymann, F.: Pattern-based deployment models revisited: automated pattern-driven deployment configuration. In: Proceedings of the Twelfth International Conference on Pervasive Patterns and Applications (PATTERNS 2020), pp. 40–49. Xpert Publishing Services (2020). ISBN 978-1-61208-783-2

    Google Scholar 

  15. Hirmer, P., Breitenbücher, U., Binz, T., Leymann, F.: Automatic topology completion of TOSCA-based cloud applications. In: Proceedings des CloudCycle14 Workshops auf der 44. Jahrestagung der Gesellschaft für Informatik e.V. (GI). LNI, vol. 232, pp. 247–258. Gesellschaft für Informatik e.V. (GI), Bonn (2014)

    Google Scholar 

  16. Hochgeschwender, N., Gherardi, L., Shakhirmardanov, A., Kraetzschmar, G.K., Brugali, D., Bruyninckx, H.: A model-based approach to software deployment in robotics. In: 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 3907–3914 (2013)

    Google Scholar 

  17. Jamshidi, P., Pahl, C.: Orthogonal variability modeling to support multi-cloud application configuration. In: Ortiz, G., Tran, C. (eds.) ESOCC 2014. CCIS, vol. 508, pp. 249–261. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-14886-1_23

    Chapter  Google Scholar 

  18. Jansen, S., Brinkkemper, S.: Modelling deployment using feature descriptions and state models for component-based software product families. In: Dearle, A., Eisenbach, S. (eds.) CD 2005. LNCS, vol. 3798, pp. 119–133. Springer, Heidelberg (2005). https://doi.org/10.1007/11590712_10 ISBN 978-3-540-32281-8

    Chapter  Google Scholar 

  19. Junior, E.A.O., de Souza Gimenes, I.M., Maldonado, J.C.: Systematic management of variability in UML-based software product lines. J. Univers. Comput. Sci. 16(17), 2374–2393 (2010)

    Google Scholar 

  20. Kumara, I.P., Ariz, M., Baruwal Chhetri, M., Mohammadi, M., Heuvel, W.J.V.D., Tamburri, D.A.A.: FOCloud: feature model guided performance prediction and explanation for deployment configurable cloud applications. IEEE Trans. Serv. Comput. 16, 302–314 (2022)

    Google Scholar 

  21. Le Nhan, T., Sunyé, G., Jézéquel, J.-M.: A model-driven approach for virtual machine image provisioning in cloud computing. In: De Paoli, F., Pimentel, E., Zavattaro, G. (eds.) ESOCC 2012. LNCS, vol. 7592, pp. 107–121. Springer, Heidelberg (2012). https://doi.org/10.1007/978-3-642-33427-6_8 ISBN 978-3-642-33427-6

    Chapter  Google Scholar 

  22. Lee, K.C.A., Segarra, M.T., Guelec, S.: A deployment-oriented development process based on context variability modeling. In: 2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 454–459 (2014)

    Google Scholar 

  23. Mietzner, R.: A method and implementation to define and provision variable composite applications, and its usage in cloud computing. Ph.D. thesis, Universität Stuttgart, Fakultät Informatik, Elektrotechnik und Informationstechnik (2010)

    Google Scholar 

  24. Mietzner, R., Leymann, F.: A self-service portal for service-based applications. In: Proceedings of IEEE International Conference on Service-Oriented Computing and Applications (SOCA 2010). IEEE (2010)

    Google Scholar 

  25. OASIS: TOSCA Simple Profile in YAML Version 1.3. Organization for the Advancement of Structured Information Standards (OASIS) (2020)

    Google Scholar 

  26. Pohl, K., Böckle, G., van der Linden, F.: Software Product Line Engineering. Springer, Heidelberg (2005)

    Book  MATH  Google Scholar 

  27. Pohl, K., Metzger, A.: Software product lines. In: Gruhn, V., Striemer, R. (eds.) The Essence of Software Engineering, pp. 185–201. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-73897-0_11 ISBN 978-3-319-73897-0

    Chapter  Google Scholar 

  28. Quinton, C., Romero, D., Duchien, L.: Automated selection and configuration of cloud environments using software product lines principles. In: 2014 IEEE 7th International Conference on Cloud Computing, pp. 144–151 (2014)

    Google Scholar 

  29. Razavian, M., Khosravi, R.: Modeling variability in the component and connector view of architecture using UML. In: 2008 IEEE/ACS International Conference on Computer Systems and Applications, pp. 801–809 (2008). ISSN 2161-5330

    Google Scholar 

  30. Sandobalin, J., Insfran, E., Abrahao, S.: An infrastructure modelling tool for cloud provisioning. In: 2017 IEEE International Conference on Services Computing (SCC), pp. 354–361 (2017)

    Google Scholar 

  31. Soldani, J., Breitenbücher, U., Brogi, A., Frioli, L., Leymann, F., Wurster, M.: Tailoring technology-agnostic deployment models to production-ready deployment technologies. In: Ferguson, D., Helfert, M., Pahl, C. (eds.) CLOSER 2021. CCIS, pp. 1–24. Springer, Cham (2022). https://doi.org/10.1007/978-3-031-21637-4_1 ISBN 978-3-031-21637-4

    Chapter  Google Scholar 

  32. Sousa, G., Rudametkin, W., Duchien, L.: Automated setup of multi-cloud environments for microservices applications. In: 2016 IEEE 9th International Conference on Cloud Computing (CLOUD), pp. 327–334 (2016)

    Google Scholar 

  33. Stötzner, M., Becker, S., Breitenbücher, U., Kálmán, K., Leymann, F.: Modeling different deployment variants of a composite application in a single declarative deployment model. Algorithms 15(10), 382 (2022)

    Article  Google Scholar 

  34. Sun, C., Rossing, R., Sinnema, M., Bulanov, P., Aiello, M.: Modeling and managing the variability of web service-based systems. J. Syst. Softw. 83(3), 502–516 (2010). ISSN 0164-1212

    Article  Google Scholar 

  35. Tahri, A., Duchien, L., Pulou, J.: Using feature models for distributed deployment in extended smart home architecture. In: Weyns, D., Mirandola, R., Crnkovic, I. (eds.) ECSA 2015. LNCS, vol. 9278, pp. 285–293. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23727-5_24 ISBN 978-3-319-23727-5

    Chapter  Google Scholar 

  36. Wurster, M., et al.: Automating the deployment of distributed applications by combining multiple deployment technologies. In: Proceedings of the 11th International Conference on Cloud Computing and Services Science (CLOSER 2021), pp. 178–189. SciTePress (2021)

    Google Scholar 

  37. Wurster, M., et al.: The Essential Deployment Metamodel: a systematic review of deployment automation technologies. SICS Softw.-Intensive Cyber-Phys. Syst. 35, 63–75 (2019)

    Google Scholar 

  38. Wurster, M., Breitenbücher, U., Harzenetter, L., Leymann, F., Soldani, J., Yussupov, V.: TOSCA Light: bridging the gap between the TOSCA specification and production-ready deployment technologies. In: Proceedings of the 10th International Conference on Cloud Computing and Services Science (CLOSER 2020), pp. 216–226. SciTePress (2020)

    Google Scholar 

  39. Ziadi, T., Hélouët, L., Jézéquel, J.-M.: Towards a UML profile for software product lines. In: van der Linden, F.J. (ed.) PFE 2003. LNCS, vol. 3014, pp. 129–139. Springer, Heidelberg (2004). https://doi.org/10.1007/978-3-540-24667-1_10 ISBN 978-3-540-24667-1

    Chapter  Google Scholar 

Download references

Acknowledgements

This publication was partially funded by the German Federal Ministry for Economic Affairs and Climate Action (BMWK) as part of the Software-Defined Car (SofDCar) project (19S21002).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Miles Stötzner .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Stötzner, M., Breitenbücher, U., Pesl, R.D., Becker, S. (2024). Managing the Variability of Component Implementations and Their Deployment Configurations Across Heterogeneous Deployment Technologies. In: Sellami, M., Vidal, ME., van Dongen, B., Gaaloul, W., Panetto, H. (eds) Cooperative Information Systems. CoopIS 2023. Lecture Notes in Computer Science, vol 14353. Springer, Cham. https://doi.org/10.1007/978-3-031-46846-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-031-46846-9_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-031-46845-2

  • Online ISBN: 978-3-031-46846-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics