skip to main content
10.1145/3239372.3239379acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

Refactoring Architecture Models for Compliance with Custom Requirements

Authors Info & Claims
Published:14 October 2018Publication History

ABSTRACT

In the process of software-intensive systems engineering, architectures need to be designed that are compliant to the requirements. For this, architects need to examine those requirements with regard to their architectural impact. Accessing and interpreting the requirements is however not always possible, for instance if custom requirements are yet unknown at the time when the architecture is modeled. Ideally, architectural knowledge as derived from custom requirements could be imposed upon architecture models. This paper proposes a novel concept for automated refactoring of architecture models in order to meet such requirements by formalizing architectural knowledge using model verification and model transformations. Industrial application within a telecommunications service provider is demonstrated in the domain of cloud application orchestration: service providers are enabled to autonomously customize solutions predefined by vendors according to their own internal requirements.

References

  1. Davide Arcelli, Vittorio Cortellessa, and Catia Trubiani. 2012. Antipattern-based model refactoring for software performance improvement. In Proceedings of the 8th international ACM SIGSOFT conference on Quality of Software Architectures. ACM, 33--42. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Thorsten Arendt, Florian Mantz, Lars Schneider, and Gabriele Taentzer. 2009. Model refactoring in Eclipse by LTK, EWL, and EMF refactor: a case study. In Model-Driven Software Evolution, Workshop Models and Evolution.Google ScholarGoogle Scholar
  3. Alexander Bergmayr, Uwe Breitenbücher, Nicolas Ferry, Alessandro Rossini, Arnor Solberg, Manuel Wimmer, Gerti Kappel, and Frank Leymann. 2018. A Systematic Review of Cloud Modeling Languages. ACM Comput. Surv. 51, 1 (2018), 22:1--22:38. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Alexander Bergmayr, Javier Troya, Patrick Neubauer, Manuel Wimmer, and Gerti Kappel. 2014. UML-based Cloud Application Modeling with Libraries, Profiles, and Templates. In 2nd International Workshop on Model-Driven Engineering on and for the Cloud. 56--65. http://ceur-ws.org/Vol-1242/paper7.pdfGoogle ScholarGoogle Scholar
  5. Enrico Biermann, Karsten Ehrig, Christian Köhler, Günter Kuhns, Gabriele Taentzer, and Eduard Weiss. 2007. EMF model refactoring based on graph transformation concepts. Electronic Communications of the EASST 3 (2007).Google ScholarGoogle Scholar
  6. Tobias Binz, Uwe Breitenbücher, Oliver Kopp, and Frank Leymann. 2014. TOSCA: Portable Automated Deployment and Management of Cloud Applications. In Advanced Web Services, Athman Bouguettaya, Quan Z. Sheng, and Florian Daniel (Eds.). Springer, 527--549.Google ScholarGoogle Scholar
  7. Christoph Fehling, Frank Leymann, Ralph Retter, Walter Schupeck, and Peter Arbitter. 2014. Cloud Computing Patterns - Fundamentals to Design, Build, and Manage Cloud Applications. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Nicolas Ferry, Alessandro Rossini, Franck Chauvel, Brice Morin, and Arnor Solberg. 2013. Towards Model-Driven Provisioning, Deployment, Monitoring, and Adaptation of Multi-cloud Systems. In 2013 IEEE Sixth International Conference on Cloud Computing, Santa Clara, CA, USA, June 28 - July 3, 2013. IEEE Computer Society, 887--894. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Martin Fowler. 1999. Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston, MA, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Robert France, S Chosh, Eunjee Song, and Dae-Kyoo Kim. 2003. A metamodeling approach to pattern-based model refactoring. IEEE software 20, 5 (2003), 52--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Alejandra Garrido, Gustavo Rossi, and Damiano Distante. 2007. Model refactoring in web applications. In Web Site Evolution, 2007. WSE 2007. 9th IEEE International Workshop on. IEEE, 89--96. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Calin Glitia, Pierre Boulet, Eric Lenormand, and Michel Barreteau. 2011. Repetitive model refactoring strategy for the design space exploration of intensive signal processing applications. Journal of Systems Architecture 57, 9 (2011), 815--829. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Glauco Estacio Gonçalves, Patricia Takako Endo, Marcelo Anderson Santos, Djamel Sadok, Judith Kelner, Bob Melander, and Jan-Erik Mångs. 2011. CloudML: An Integrated Language for Resource, Service and Request Description for D-Clouds. In IEEE 3rd International Conference on Cloud Computing Technology and Science, CloudCom 2011, Athens, Greece, November 29 - December 1, 2011, Costas Lambrinoudakis, Panagiotis Rizomiliotis, and Tomasz Wiktor Wlodarczyk (Eds.). IEEE Computer Society, 399--406. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Michael Hilton, Arpit Christi, Danny Dig, Michał Moskal, Sebastian Burckhardt, and Nikolai Tillmann. 2014. Refactoring local to cloud data types for mobile apps. In Proceedings of the 1st International Conference on Mobile Software Engineering and Systems. ACM, 83--92. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Pooyan Jamshidi, Claus Pahl, Samuel Chinenyeze, and Xiaodong Liu. 2015. Cloud migration patterns: a multi-cloud service architecture perspective. In Service-Oriented Computing-ICSOC 2014 Workshops. Springer, 6--19.Google ScholarGoogle ScholarCross RefCross Ref
  16. Shekoufeh Kolahdouz-Rahimi, Kevin Lano, Suresh Pillay, Javier Troya, and Pieter Van Gorp. 2014. Evaluation of model transformation approaches for model refactoring. Science of Computer Programming 85 (2014), 5--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Dimitrios S. Kolovos, Richard F. Paige, and Fiona Polack. 2006. The Epsilon Object Language (EOL). In Model Driven Architecture - Foundations and Applications, Second European Conference, ECMDA-FA 2006, Bilbao, Spain, July 10-13, 2006, Proceedings (Lecture Notes in Computer Science), Arend Rensink and Jos Warmer (Eds.), Vol. 4066. Springer, 128--142. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Dimitrios S. Kolovos, Richard F. Paige, Fiona Polack, and Louis M. Rose. 2007. Update Transformations in the Small with the Epsilon Wizard Language. Journal of Object Technology 6, 9 (2007), 53--69.Google ScholarGoogle ScholarCross RefCross Ref
  19. Young-Woo Kwon and Eli Tilevich. 2014. Cloud refactoring: automated transitioning to cloud-based services. Automated Software Engineering 21, 3 (2014), 345--372. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Frank Leymann, Christoph Fehling, Ralph Mietzner, Alexander Nowak, and Schahram Dustdar. 2011. Moving Applications to the Cloud: an Approach Based on Application Model Enrichment. Int. J. Cooperative Inf. Syst. 20, 3 (2011), 307--356.Google ScholarGoogle ScholarCross RefCross Ref
  21. Tom Mens. 2006. On the use of graph transformations for model refactoring. In Generative and transformational techniques in software engineering. Springer, 219--257. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Tom Mens and Pieter Van Gorp. 2006. A Taxonomy of Model Transformation. Electr. Notes Theor. Comput. Sci. 152 (2006), 125--142. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Object Management Group, Inc. 2000. Unified Modeling Language (UML). http://omg.org/spec/UMLGoogle ScholarGoogle Scholar
  24. Organization for the Advancement of Structured Information Standards. 2016. TOSCA Simple Profile for Network Functions Visualization (NFV) Version 1.0. Committee Specification Draft. OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) TC. http://docs.oasis-open.org/tosca/tosca-nfv/v1.0/tosca-nfv-v1.0.pdfGoogle ScholarGoogle Scholar
  25. Organization for the Advancement of Structured Information Standards. 2017. TOSCA Simple Profile in YAML Version 1.1. Committee Specification Draft. OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA) TC. http://docs.oasis-open.org/tosca/TOSCA-Simple-Profile-YAML/v1.1/TOSCA-Simple-Profile-YAML-v1.1.pdfGoogle ScholarGoogle Scholar
  26. Gustavo Rossi, Matias Urbieta, Jeronimo Ginzburg, Damiano Distante, and Alejandra Garrido. 2008. Refactoring to rich internet applications. a model-driven approach. In Web Engineering, 2008. ICWE'08. Eighth International Conference on. IEEE, 1--12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Steve Strauch, Vasilios Andrikopoulos, Thomas Bachmann, and Frank Leymann. 2013. Migrating application data to the cloud using cloud data. In e 3rd International Conference on Cloud Computing and Service Science,(CLOSER). 36--46.Google ScholarGoogle Scholar
  28. Steve Strauch, Vasilios Andrikopoulos, Dimka Karastoyanova, Frank Leymann, Nikolay Nachev, and Albrecht Stäbler. 2014. Migrating enterprise applications to the cloud: methodology and evaluation. International Journal of Big Data Intelligence 5 1, 3 (2014), 127--140.Google ScholarGoogle Scholar
  29. The Eclipse Foundation. 2002. Eclipse Modeling Framework Project (EMF). http://eclipse.org/modeling/emfGoogle ScholarGoogle Scholar
  30. Dániel Varró. 2006. Model transformation by example. In International Conference on Model Driven Engineering Languages and Systems. Springer, 410--424. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Markus Völter, Daniel Ratiu, and Federico Tomassetti. 2013. Requirements as First-Class Citizens: Integrating Requirements closely with Implementation Artifacts. In Proceedings of the 6th International Workshop on Model Based Architecting and Construction of Embedded Systems.Google ScholarGoogle Scholar
  32. Johannes Wettinger, Uwe Breitenbücher, and Frank Leymann. 2014. Standards-Based DevOps Automation and Integration Using TOSCA. In 7th IEEE/ACM International Conference on Utility and Cloud Computing. IEEE, 59--68. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Uwe Zdun. 2010. A DSL toolkit for deferring architectural decisions in DSL-based software design. Information & Software Technology 52, 7 (2010), 733--748. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Jing Zhang, Yuehua Lin, and Jeff Gray. 2005. Generic and domain-specific model refactoring using a model transformation engine. In Model-driven Software Development. Springer, 199--217.Google ScholarGoogle Scholar
  35. Olaf Zimmermann. 2015. Architectural refactoring: A task-centric view on software evolution. IEEE Software 32, 2 (2015), 26--29.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Refactoring Architecture Models for Compliance with Custom Requirements

                    Recommendations

                    Comments

                    Login options

                    Check if you have access through your login credentials or your institution to get full access on this article.

                    Sign in
                    • Published in

                      cover image ACM Conferences
                      MODELS '18: Proceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems
                      October 2018
                      478 pages
                      ISBN:9781450349499
                      DOI:10.1145/3239372

                      Copyright © 2018 ACM

                      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                      Publisher

                      Association for Computing Machinery

                      New York, NY, United States

                      Publication History

                      • Published: 14 October 2018

                      Permissions

                      Request permissions about this article.

                      Request Permissions

                      Check for updates

                      Qualifiers

                      • research-article
                      • Research
                      • Refereed limited

                      Acceptance Rates

                      MODELS '18 Paper Acceptance Rate29of101submissions,29%Overall Acceptance Rate118of382submissions,31%

                    PDF Format

                    View or Download as a PDF file.

                    PDF

                    eReader

                    View online with eReader.

                    eReader