Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3239372.3239379acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

Refactoring Architecture Models for Compliance with Custom Requirements

Published: 14 October 2018 Publication 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.
[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.
[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.
[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.pdf
[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).
[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.
[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.
[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.
[9]
Martin Fowler. 1999. Refactoring: Improving the Design of Existing Code. Addison-Wesley, Boston, MA, USA.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[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.
[19]
Young-Woo Kwon and Eli Tilevich. 2014. Cloud refactoring: automated transitioning to cloud-based services. Automated Software Engineering 21, 3 (2014), 345--372.
[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.
[21]
Tom Mens. 2006. On the use of graph transformations for model refactoring. In Generative and transformational techniques in software engineering. Springer, 219--257.
[22]
Tom Mens and Pieter Van Gorp. 2006. A Taxonomy of Model Transformation. Electr. Notes Theor. Comput. Sci. 152 (2006), 125--142.
[23]
Object Management Group, Inc. 2000. Unified Modeling Language (UML). http://omg.org/spec/UML
[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.pdf
[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.pdf
[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.
[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.
[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.
[29]
The Eclipse Foundation. 2002. Eclipse Modeling Framework Project (EMF). http://eclipse.org/modeling/emf
[30]
Dániel Varró. 2006. Model transformation by example. In International Conference on Model Driven Engineering Languages and Systems. Springer, 410--424.
[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.
[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.
[33]
Uwe Zdun. 2010. A DSL toolkit for deferring architectural decisions in DSL-based software design. Information & Software Technology 52, 7 (2010), 733--748.
[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.
[35]
Olaf Zimmermann. 2015. Architectural refactoring: A task-centric view on software evolution. IEEE Software 32, 2 (2015), 26--29.

Cited By

View all
  • (2023)Software Evolutionary Architecture: Automated Planning for Functional ChangesScience of Computer Programming10.1016/j.scico.2023.102978(102978)Online publication date: Jun-2023
  • (2022)Architectural Refactoring for Functional Properties in Evolutionary Architecture2022 IEEE 19th International Conference on Software Architecture (ICSA)10.1109/ICSA53651.2022.00022(146-156)Online publication date: Mar-2022
  • (2021)Software Architectural MigrationACM Transactions on Software Engineering and Methodology10.1145/346101130:4(1-35)Online publication date: 23-Jul-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

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
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 October 2018

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

MODELS '18
Sponsor:

Acceptance Rates

MODELS '18 Paper Acceptance Rate 29 of 101 submissions, 29%;
Overall Acceptance Rate 144 of 506 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)4
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Software Evolutionary Architecture: Automated Planning for Functional ChangesScience of Computer Programming10.1016/j.scico.2023.102978(102978)Online publication date: Jun-2023
  • (2022)Architectural Refactoring for Functional Properties in Evolutionary Architecture2022 IEEE 19th International Conference on Software Architecture (ICSA)10.1109/ICSA53651.2022.00022(146-156)Online publication date: Mar-2022
  • (2021)Software Architectural MigrationACM Transactions on Software Engineering and Methodology10.1145/346101130:4(1-35)Online publication date: 23-Jul-2021
  • (2020)Formal Software Architectural Migration Towards Emerging Architectural StylesSoftware Architecture10.1007/978-3-030-58923-3_2(21-38)Online publication date: 8-Sep-2020

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media