Loading…
Multi-objective exploration of architectural designs by composition of model transformations
Designing software architectures and optimizing them based on extra-functional properties (EFPs) require to identify appropriate design decisions and to apply them on valid architectural elements. Software designers have to check whether the resulting architecture fulfills the requirements and how i...
Saved in:
Published in: | Software and systems modeling 2019-02, Vol.18 (1), p.107-127 |
---|---|
Main Authors: | , , , , |
Format: | Article |
Language: | English |
Subjects: | |
Citations: | Items that this one cites Items that cite this one |
Online Access: | Get full text |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
cited_by | cdi_FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3 |
---|---|
cites | cdi_FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3 |
container_end_page | 127 |
container_issue | 1 |
container_start_page | 107 |
container_title | Software and systems modeling |
container_volume | 18 |
creator | Rahmoun, Smail Mehiaoui-Hamitou, Asma Borde, Etienne Pautet, Laurent Soubiran, Elie |
description | Designing software architectures and optimizing them based on extra-functional properties (EFPs) require to identify appropriate design decisions and to apply them on valid architectural elements. Software designers have to check whether the resulting architecture fulfills the requirements and how it positively improves (possibly conflicting) EFPs. In practice, they apply well-known solutions such as design patterns manually. This is time-consuming, error-prone, and possibly sub-optimal. Well-established approaches automate the search of the design space for an optimal solution. They are based model-driven engineering techniques that formalized design decisions as model transformations and architectural elements as components. Using multi-objective optimizations techniques, they explore the design space by randomly selecting a set of components and applying to them variation operators that include a fixed set of predefined design decisions. In this work, we claim that the design space exploration requires to reason on both architectural components as well as model transformations. More specifically, we focus on possible instantiations of model transformations materialized as the application of model transformation alternatives on a set of architectural components. This approach was prototyped in RAMSES, a model transformation and code generation framework. Experimental results show the capability of our approach (i) to combine evolutionary algorithms and model transformation techniques to explore efficiently a set of architectural alternatives with conflicting EFPs, (ii) to instantiate, and select transformation instances that generate architectures satisfying stringent structural constraints, and (iii) to explore design spaces by chaining more than one transformation. In particular, we evaluated our approach on EFPs, architectures, and design alternatives inspired from the railway industry by chaining model transformations dedicated to implement safety design patterns and software components allocation on a multi-processor hardware platform. |
doi_str_mv | 10.1007/s10270-017-0580-2 |
format | article |
fullrecord | <record><control><sourceid>proquest_hal_p</sourceid><recordid>TN_cdi_hal_primary_oai_HAL_hal_02292455v1</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>2185171337</sourcerecordid><originalsourceid>FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3</originalsourceid><addsrcrecordid>eNp1kEFLwzAUx4MoOOY-gLeCJw_V99ImaY5jqBMmXvQmhLRNt4y2qUk39NvbWZ0nTy-8_P5_Hj9CLhFuEEDcBgQqIAYUMbAMYnpCJshRxpiI9PT45vyczEKwOUBKpUw5n5C3p13d29jlW1P0dm8i89HVzuveujZyVaR9sbH98Lfzuo5KE-y6DVH-GRWu6Vywv1zjSlNHvddtqJxvvvPhgpxVug5m9jOn5PX-7mWxjFfPD4-L-SouEgZ9nLISSwQOKaukzLjJdMFKypFlskpFkqMwWmRQgoSSyrREBlwbAKgyLXWeTMn12LvRteq8bbT_VE5btZyv1GEHlEqaMrbHgb0a2c67950Jvdq6nW-H8xTFjKHAJBEDhSNVeBeCN9WxFkEdnKvRuRqcq4NzRYcMHTNhYNu18X_N_4e-AFHgg8M</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2185171337</pqid></control><display><type>article</type><title>Multi-objective exploration of architectural designs by composition of model transformations</title><source>Springer Nature</source><creator>Rahmoun, Smail ; Mehiaoui-Hamitou, Asma ; Borde, Etienne ; Pautet, Laurent ; Soubiran, Elie</creator><creatorcontrib>Rahmoun, Smail ; Mehiaoui-Hamitou, Asma ; Borde, Etienne ; Pautet, Laurent ; Soubiran, Elie</creatorcontrib><description>Designing software architectures and optimizing them based on extra-functional properties (EFPs) require to identify appropriate design decisions and to apply them on valid architectural elements. Software designers have to check whether the resulting architecture fulfills the requirements and how it positively improves (possibly conflicting) EFPs. In practice, they apply well-known solutions such as design patterns manually. This is time-consuming, error-prone, and possibly sub-optimal. Well-established approaches automate the search of the design space for an optimal solution. They are based model-driven engineering techniques that formalized design decisions as model transformations and architectural elements as components. Using multi-objective optimizations techniques, they explore the design space by randomly selecting a set of components and applying to them variation operators that include a fixed set of predefined design decisions. In this work, we claim that the design space exploration requires to reason on both architectural components as well as model transformations. More specifically, we focus on possible instantiations of model transformations materialized as the application of model transformation alternatives on a set of architectural components. This approach was prototyped in RAMSES, a model transformation and code generation framework. Experimental results show the capability of our approach (i) to combine evolutionary algorithms and model transformation techniques to explore efficiently a set of architectural alternatives with conflicting EFPs, (ii) to instantiate, and select transformation instances that generate architectures satisfying stringent structural constraints, and (iii) to explore design spaces by chaining more than one transformation. In particular, we evaluated our approach on EFPs, architectures, and design alternatives inspired from the railway industry by chaining model transformations dedicated to implement safety design patterns and software components allocation on a multi-processor hardware platform.</description><identifier>ISSN: 1619-1366</identifier><identifier>EISSN: 1619-1374</identifier><identifier>DOI: 10.1007/s10270-017-0580-2</identifier><language>eng</language><publisher>Berlin/Heidelberg: Springer Berlin Heidelberg</publisher><subject>Architectural elements ; Chaining ; Compilers ; Computer Aided Engineering ; Computer Science ; Data Structures and Algorithms ; Decisions ; Design ; Design engineering ; Design optimization ; Embedded Systems ; Evolutionary algorithms ; Information Systems Applications (incl.Internet) ; Interpreters ; IT in Business ; Microprocessors ; Modeling and Simulation ; Multiple objective analysis ; Programming Languages ; Programming Techniques ; Software ; Software Engineering ; Software Engineering/Programming and Operating Systems ; Theme Section Paper ; Transformations</subject><ispartof>Software and systems modeling, 2019-02, Vol.18 (1), p.107-127</ispartof><rights>Springer-Verlag Berlin Heidelberg 2017</rights><rights>Software & Systems Modeling is a copyright of Springer, (2017). All Rights Reserved.</rights><rights>Distributed under a Creative Commons Attribution 4.0 International License</rights><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3</citedby><cites>FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3</cites><orcidid>0000-0003-0888-187X</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>230,314,776,780,881,27901,27902</link.rule.ids><backlink>$$Uhttps://telecom-paris.hal.science/hal-02292455$$DView record in HAL$$Hfree_for_read</backlink></links><search><creatorcontrib>Rahmoun, Smail</creatorcontrib><creatorcontrib>Mehiaoui-Hamitou, Asma</creatorcontrib><creatorcontrib>Borde, Etienne</creatorcontrib><creatorcontrib>Pautet, Laurent</creatorcontrib><creatorcontrib>Soubiran, Elie</creatorcontrib><title>Multi-objective exploration of architectural designs by composition of model transformations</title><title>Software and systems modeling</title><addtitle>Softw Syst Model</addtitle><description>Designing software architectures and optimizing them based on extra-functional properties (EFPs) require to identify appropriate design decisions and to apply them on valid architectural elements. Software designers have to check whether the resulting architecture fulfills the requirements and how it positively improves (possibly conflicting) EFPs. In practice, they apply well-known solutions such as design patterns manually. This is time-consuming, error-prone, and possibly sub-optimal. Well-established approaches automate the search of the design space for an optimal solution. They are based model-driven engineering techniques that formalized design decisions as model transformations and architectural elements as components. Using multi-objective optimizations techniques, they explore the design space by randomly selecting a set of components and applying to them variation operators that include a fixed set of predefined design decisions. In this work, we claim that the design space exploration requires to reason on both architectural components as well as model transformations. More specifically, we focus on possible instantiations of model transformations materialized as the application of model transformation alternatives on a set of architectural components. This approach was prototyped in RAMSES, a model transformation and code generation framework. Experimental results show the capability of our approach (i) to combine evolutionary algorithms and model transformation techniques to explore efficiently a set of architectural alternatives with conflicting EFPs, (ii) to instantiate, and select transformation instances that generate architectures satisfying stringent structural constraints, and (iii) to explore design spaces by chaining more than one transformation. In particular, we evaluated our approach on EFPs, architectures, and design alternatives inspired from the railway industry by chaining model transformations dedicated to implement safety design patterns and software components allocation on a multi-processor hardware platform.</description><subject>Architectural elements</subject><subject>Chaining</subject><subject>Compilers</subject><subject>Computer Aided Engineering</subject><subject>Computer Science</subject><subject>Data Structures and Algorithms</subject><subject>Decisions</subject><subject>Design</subject><subject>Design engineering</subject><subject>Design optimization</subject><subject>Embedded Systems</subject><subject>Evolutionary algorithms</subject><subject>Information Systems Applications (incl.Internet)</subject><subject>Interpreters</subject><subject>IT in Business</subject><subject>Microprocessors</subject><subject>Modeling and Simulation</subject><subject>Multiple objective analysis</subject><subject>Programming Languages</subject><subject>Programming Techniques</subject><subject>Software</subject><subject>Software Engineering</subject><subject>Software Engineering/Programming and Operating Systems</subject><subject>Theme Section Paper</subject><subject>Transformations</subject><issn>1619-1366</issn><issn>1619-1374</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2019</creationdate><recordtype>article</recordtype><recordid>eNp1kEFLwzAUx4MoOOY-gLeCJw_V99ImaY5jqBMmXvQmhLRNt4y2qUk39NvbWZ0nTy-8_P5_Hj9CLhFuEEDcBgQqIAYUMbAMYnpCJshRxpiI9PT45vyczEKwOUBKpUw5n5C3p13d29jlW1P0dm8i89HVzuveujZyVaR9sbH98Lfzuo5KE-y6DVH-GRWu6Vywv1zjSlNHvddtqJxvvvPhgpxVug5m9jOn5PX-7mWxjFfPD4-L-SouEgZ9nLISSwQOKaukzLjJdMFKypFlskpFkqMwWmRQgoSSyrREBlwbAKgyLXWeTMn12LvRteq8bbT_VE5btZyv1GEHlEqaMrbHgb0a2c67950Jvdq6nW-H8xTFjKHAJBEDhSNVeBeCN9WxFkEdnKvRuRqcq4NzRYcMHTNhYNu18X_N_4e-AFHgg8M</recordid><startdate>20190201</startdate><enddate>20190201</enddate><creator>Rahmoun, Smail</creator><creator>Mehiaoui-Hamitou, Asma</creator><creator>Borde, Etienne</creator><creator>Pautet, Laurent</creator><creator>Soubiran, Elie</creator><general>Springer Berlin Heidelberg</general><general>Springer Nature B.V</general><general>Springer Verlag</general><scope>AAYXX</scope><scope>CITATION</scope><scope>3V.</scope><scope>7SC</scope><scope>7XB</scope><scope>8AL</scope><scope>8AO</scope><scope>8FD</scope><scope>8FE</scope><scope>8FG</scope><scope>8FK</scope><scope>ABUWG</scope><scope>AFKRA</scope><scope>ARAPS</scope><scope>AZQEC</scope><scope>BENPR</scope><scope>BGLVJ</scope><scope>CCPQU</scope><scope>DWQXO</scope><scope>GNUQQ</scope><scope>HCIFZ</scope><scope>JQ2</scope><scope>K7-</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>M0N</scope><scope>P5Z</scope><scope>P62</scope><scope>PQEST</scope><scope>PQQKQ</scope><scope>PQUKI</scope><scope>PRINS</scope><scope>Q9U</scope><scope>1XC</scope><orcidid>https://orcid.org/0000-0003-0888-187X</orcidid></search><sort><creationdate>20190201</creationdate><title>Multi-objective exploration of architectural designs by composition of model transformations</title><author>Rahmoun, Smail ; Mehiaoui-Hamitou, Asma ; Borde, Etienne ; Pautet, Laurent ; Soubiran, Elie</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2019</creationdate><topic>Architectural elements</topic><topic>Chaining</topic><topic>Compilers</topic><topic>Computer Aided Engineering</topic><topic>Computer Science</topic><topic>Data Structures and Algorithms</topic><topic>Decisions</topic><topic>Design</topic><topic>Design engineering</topic><topic>Design optimization</topic><topic>Embedded Systems</topic><topic>Evolutionary algorithms</topic><topic>Information Systems Applications (incl.Internet)</topic><topic>Interpreters</topic><topic>IT in Business</topic><topic>Microprocessors</topic><topic>Modeling and Simulation</topic><topic>Multiple objective analysis</topic><topic>Programming Languages</topic><topic>Programming Techniques</topic><topic>Software</topic><topic>Software Engineering</topic><topic>Software Engineering/Programming and Operating Systems</topic><topic>Theme Section Paper</topic><topic>Transformations</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Rahmoun, Smail</creatorcontrib><creatorcontrib>Mehiaoui-Hamitou, Asma</creatorcontrib><creatorcontrib>Borde, Etienne</creatorcontrib><creatorcontrib>Pautet, Laurent</creatorcontrib><creatorcontrib>Soubiran, Elie</creatorcontrib><collection>CrossRef</collection><collection>ProQuest Central (Corporate)</collection><collection>Computer and Information Systems Abstracts</collection><collection>ProQuest Central (purchase pre-March 2016)</collection><collection>Computing Database (Alumni Edition)</collection><collection>ProQuest Pharma Collection</collection><collection>Technology Research Database</collection><collection>ProQuest SciTech Collection</collection><collection>ProQuest Technology Collection</collection><collection>ProQuest Central (Alumni) (purchase pre-March 2016)</collection><collection>ProQuest Central (Alumni)</collection><collection>ProQuest Central UK/Ireland</collection><collection>Advanced Technologies & Aerospace Collection</collection><collection>ProQuest Central Essentials</collection><collection>ProQuest Central</collection><collection>Technology Collection</collection><collection>ProQuest One Community College</collection><collection>ProQuest Central</collection><collection>ProQuest Central Student</collection><collection>SciTech Premium Collection</collection><collection>ProQuest Computer Science Collection</collection><collection>Computer Science Database</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><collection>Computing Database</collection><collection>ProQuest advanced technologies & aerospace journals</collection><collection>ProQuest Advanced Technologies & Aerospace Collection</collection><collection>ProQuest One Academic Eastern Edition (DO NOT USE)</collection><collection>ProQuest One Academic</collection><collection>ProQuest One Academic UKI Edition</collection><collection>ProQuest Central China</collection><collection>ProQuest Central Basic</collection><collection>Hyper Article en Ligne (HAL)</collection><jtitle>Software and systems modeling</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Rahmoun, Smail</au><au>Mehiaoui-Hamitou, Asma</au><au>Borde, Etienne</au><au>Pautet, Laurent</au><au>Soubiran, Elie</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Multi-objective exploration of architectural designs by composition of model transformations</atitle><jtitle>Software and systems modeling</jtitle><stitle>Softw Syst Model</stitle><date>2019-02-01</date><risdate>2019</risdate><volume>18</volume><issue>1</issue><spage>107</spage><epage>127</epage><pages>107-127</pages><issn>1619-1366</issn><eissn>1619-1374</eissn><abstract>Designing software architectures and optimizing them based on extra-functional properties (EFPs) require to identify appropriate design decisions and to apply them on valid architectural elements. Software designers have to check whether the resulting architecture fulfills the requirements and how it positively improves (possibly conflicting) EFPs. In practice, they apply well-known solutions such as design patterns manually. This is time-consuming, error-prone, and possibly sub-optimal. Well-established approaches automate the search of the design space for an optimal solution. They are based model-driven engineering techniques that formalized design decisions as model transformations and architectural elements as components. Using multi-objective optimizations techniques, they explore the design space by randomly selecting a set of components and applying to them variation operators that include a fixed set of predefined design decisions. In this work, we claim that the design space exploration requires to reason on both architectural components as well as model transformations. More specifically, we focus on possible instantiations of model transformations materialized as the application of model transformation alternatives on a set of architectural components. This approach was prototyped in RAMSES, a model transformation and code generation framework. Experimental results show the capability of our approach (i) to combine evolutionary algorithms and model transformation techniques to explore efficiently a set of architectural alternatives with conflicting EFPs, (ii) to instantiate, and select transformation instances that generate architectures satisfying stringent structural constraints, and (iii) to explore design spaces by chaining more than one transformation. In particular, we evaluated our approach on EFPs, architectures, and design alternatives inspired from the railway industry by chaining model transformations dedicated to implement safety design patterns and software components allocation on a multi-processor hardware platform.</abstract><cop>Berlin/Heidelberg</cop><pub>Springer Berlin Heidelberg</pub><doi>10.1007/s10270-017-0580-2</doi><tpages>21</tpages><orcidid>https://orcid.org/0000-0003-0888-187X</orcidid></addata></record> |
fulltext | fulltext |
identifier | ISSN: 1619-1366 |
ispartof | Software and systems modeling, 2019-02, Vol.18 (1), p.107-127 |
issn | 1619-1366 1619-1374 |
language | eng |
recordid | cdi_hal_primary_oai_HAL_hal_02292455v1 |
source | Springer Nature |
subjects | Architectural elements Chaining Compilers Computer Aided Engineering Computer Science Data Structures and Algorithms Decisions Design Design engineering Design optimization Embedded Systems Evolutionary algorithms Information Systems Applications (incl.Internet) Interpreters IT in Business Microprocessors Modeling and Simulation Multiple objective analysis Programming Languages Programming Techniques Software Software Engineering Software Engineering/Programming and Operating Systems Theme Section Paper Transformations |
title | Multi-objective exploration of architectural designs by composition of model transformations |
url | http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-02-01T01%3A48%3A32IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_hal_p&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Multi-objective%20exploration%20of%20architectural%20designs%20by%20composition%20of%20model%20transformations&rft.jtitle=Software%20and%20systems%20modeling&rft.au=Rahmoun,%20Smail&rft.date=2019-02-01&rft.volume=18&rft.issue=1&rft.spage=107&rft.epage=127&rft.pages=107-127&rft.issn=1619-1366&rft.eissn=1619-1374&rft_id=info:doi/10.1007/s10270-017-0580-2&rft_dat=%3Cproquest_hal_p%3E2185171337%3C/proquest_hal_p%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c350t-45d1d106045f9986e8ac5d261589f473b17ea780d090d294d1506ae000f8a9ab3%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_pqid=2185171337&rft_id=info:pmid/&rfr_iscdi=true |