Dealing with Non-Functional Requirements in Model-Driven Development: A Survey

David Ameller, Xavier Franch, Cristina Gómez, Silverio Martínez-Fernández, João Araujo, Stefan Biffl, Jordi Cabot, Vittorio Cortellessa, Daniel Méndez Fernández, Ana Moreira, Henry Muccini, Antonio Vallecillo, Manuel Wimmer, Vasco Amaral, Wolfgang Böhm, Hugo Brunelière, Loli Burgueño, Miguel Goulão, Sabine Teufl, Luca Beradinelli

Research output: Contribution to journalArticle

Abstract

Context: Managing Non-Functional Requirements (NFRs) in software projects is challenging, and projects that adopt Model-Driven Development (MDD) are no exception. Although several methods and techniques have been proposed to face this challenge, there is still little evidence on how NFRs are handled in MDD by practitioners. Knowing more about the state of the practice may help researchers to steer their research and practitioners to improve their daily work.
Objective: In this paper, we present our findings from an interview-based survey conducted with practitioners working in 18 different companies from 6 European countries. From a practitioner’s point of view, the paper shows what barriers and benefits the management of NFRs as part of the MDD process can bring to companies, how NFRs are supported by MDD approaches, and which strategies are followed when (some) types of NFRs are not supported by MDD approaches.
Results: Our study shows that practitioners perceive MDD adoption as a complex process with little to no tool support for NFRs, reporting productivity and maintainability as the types of NFRs expected to be supported when MDD is adopted. But in general, companies adapt MDD to deal with NFRs. When NFRs are not supported, the generated code is sometimes changed manually, thus compromising the maintainability of the software developed. However, the interviewed practitioners claim that the benefits of using MDD outweight the extra effort required by these manual adaptations.
Conclusion: Overall, the results indicate that it is important for practitioners to handle NFRs in MDD, but further research is necessary in order to lower the barrier for supporting a broad spectrum of NFRs with MDD. Still, much conceptual and tool implementation work seems to be necessary to lower the barrier of integrating the broad spectrum of NFRs in practice.
Original languageEnglish
Number of pages17
JournalIEEE Transactions on Software Engineering
Publication statusAccepted/In press - 24 Feb 2019

Fingerprint

Maintainability
Industry
Productivity

Cite this

Ameller, D., Franch, X., Gómez, C., Martínez-Fernández, S., Araujo, J., Biffl, S., ... Beradinelli, L. (Accepted/In press). Dealing with Non-Functional Requirements in Model-Driven Development: A Survey. IEEE Transactions on Software Engineering.
Ameller, David ; Franch, Xavier ; Gómez, Cristina ; Martínez-Fernández, Silverio ; Araujo, João ; Biffl, Stefan ; Cabot, Jordi ; Cortellessa, Vittorio ; Fernández, Daniel Méndez ; Moreira, Ana ; Muccini, Henry ; Vallecillo, Antonio ; Wimmer, Manuel ; Amaral, Vasco ; Böhm, Wolfgang ; Brunelière, Hugo ; Burgueño, Loli ; Goulão, Miguel ; Teufl, Sabine ; Beradinelli, Luca. / Dealing with Non-Functional Requirements in Model-Driven Development: A Survey. In: IEEE Transactions on Software Engineering. 2019.
@article{310be46b29a24c3a981b3f68c98544d4,
title = "Dealing with Non-Functional Requirements in Model-Driven Development: A Survey",
abstract = "Context: Managing Non-Functional Requirements (NFRs) in software projects is challenging, and projects that adopt Model-Driven Development (MDD) are no exception. Although several methods and techniques have been proposed to face this challenge, there is still little evidence on how NFRs are handled in MDD by practitioners. Knowing more about the state of the practice may help researchers to steer their research and practitioners to improve their daily work. Objective: In this paper, we present our findings from an interview-based survey conducted with practitioners working in 18 different companies from 6 European countries. From a practitioner’s point of view, the paper shows what barriers and benefits the management of NFRs as part of the MDD process can bring to companies, how NFRs are supported by MDD approaches, and which strategies are followed when (some) types of NFRs are not supported by MDD approaches. Results: Our study shows that practitioners perceive MDD adoption as a complex process with little to no tool support for NFRs, reporting productivity and maintainability as the types of NFRs expected to be supported when MDD is adopted. But in general, companies adapt MDD to deal with NFRs. When NFRs are not supported, the generated code is sometimes changed manually, thus compromising the maintainability of the software developed. However, the interviewed practitioners claim that the benefits of using MDD outweight the extra effort required by these manual adaptations. Conclusion: Overall, the results indicate that it is important for practitioners to handle NFRs in MDD, but further research is necessary in order to lower the barrier for supporting a broad spectrum of NFRs with MDD. Still, much conceptual and tool implementation work seems to be necessary to lower the barrier of integrating the broad spectrum of NFRs in practice.",
author = "David Ameller and Xavier Franch and Cristina G{\'o}mez and Silverio Mart{\'i}nez-Fern{\'a}ndez and Jo{\~a}o Araujo and Stefan Biffl and Jordi Cabot and Vittorio Cortellessa and Fern{\'a}ndez, {Daniel M{\'e}ndez} and Ana Moreira and Henry Muccini and Antonio Vallecillo and Manuel Wimmer and Vasco Amaral and Wolfgang B{\"o}hm and Hugo Bruneli{\`e}re and Loli Burgue{\~n}o and Miguel Goul{\~a}o and Sabine Teufl and Luca Beradinelli",
year = "2019",
month = "2",
day = "24",
language = "English",
journal = "IEEE Transactions on Software Engineering",
issn = "0098-5589",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

Ameller, D, Franch, X, Gómez, C, Martínez-Fernández, S, Araujo, J, Biffl, S, Cabot, J, Cortellessa, V, Fernández, DM, Moreira, A, Muccini, H, Vallecillo, A, Wimmer, M, Amaral, V, Böhm, W, Brunelière, H, Burgueño, L, Goulão, M, Teufl, S & Beradinelli, L 2019, 'Dealing with Non-Functional Requirements in Model-Driven Development: A Survey' IEEE Transactions on Software Engineering.

Dealing with Non-Functional Requirements in Model-Driven Development: A Survey. / Ameller, David; Franch, Xavier; Gómez, Cristina; Martínez-Fernández, Silverio; Araujo, João; Biffl, Stefan; Cabot, Jordi; Cortellessa, Vittorio; Fernández, Daniel Méndez; Moreira, Ana; Muccini, Henry; Vallecillo, Antonio; Wimmer, Manuel; Amaral, Vasco; Böhm, Wolfgang; Brunelière, Hugo; Burgueño, Loli; Goulão, Miguel; Teufl, Sabine; Beradinelli, Luca.

In: IEEE Transactions on Software Engineering, 24.02.2019.

Research output: Contribution to journalArticle

TY - JOUR

T1 - Dealing with Non-Functional Requirements in Model-Driven Development: A Survey

AU - Ameller, David

AU - Franch, Xavier

AU - Gómez, Cristina

AU - Martínez-Fernández, Silverio

AU - Araujo, João

AU - Biffl, Stefan

AU - Cabot, Jordi

AU - Cortellessa, Vittorio

AU - Fernández, Daniel Méndez

AU - Moreira, Ana

AU - Muccini, Henry

AU - Vallecillo, Antonio

AU - Wimmer, Manuel

AU - Amaral, Vasco

AU - Böhm, Wolfgang

AU - Brunelière, Hugo

AU - Burgueño, Loli

AU - Goulão, Miguel

AU - Teufl, Sabine

AU - Beradinelli, Luca

PY - 2019/2/24

Y1 - 2019/2/24

N2 - Context: Managing Non-Functional Requirements (NFRs) in software projects is challenging, and projects that adopt Model-Driven Development (MDD) are no exception. Although several methods and techniques have been proposed to face this challenge, there is still little evidence on how NFRs are handled in MDD by practitioners. Knowing more about the state of the practice may help researchers to steer their research and practitioners to improve their daily work. Objective: In this paper, we present our findings from an interview-based survey conducted with practitioners working in 18 different companies from 6 European countries. From a practitioner’s point of view, the paper shows what barriers and benefits the management of NFRs as part of the MDD process can bring to companies, how NFRs are supported by MDD approaches, and which strategies are followed when (some) types of NFRs are not supported by MDD approaches. Results: Our study shows that practitioners perceive MDD adoption as a complex process with little to no tool support for NFRs, reporting productivity and maintainability as the types of NFRs expected to be supported when MDD is adopted. But in general, companies adapt MDD to deal with NFRs. When NFRs are not supported, the generated code is sometimes changed manually, thus compromising the maintainability of the software developed. However, the interviewed practitioners claim that the benefits of using MDD outweight the extra effort required by these manual adaptations. Conclusion: Overall, the results indicate that it is important for practitioners to handle NFRs in MDD, but further research is necessary in order to lower the barrier for supporting a broad spectrum of NFRs with MDD. Still, much conceptual and tool implementation work seems to be necessary to lower the barrier of integrating the broad spectrum of NFRs in practice.

AB - Context: Managing Non-Functional Requirements (NFRs) in software projects is challenging, and projects that adopt Model-Driven Development (MDD) are no exception. Although several methods and techniques have been proposed to face this challenge, there is still little evidence on how NFRs are handled in MDD by practitioners. Knowing more about the state of the practice may help researchers to steer their research and practitioners to improve their daily work. Objective: In this paper, we present our findings from an interview-based survey conducted with practitioners working in 18 different companies from 6 European countries. From a practitioner’s point of view, the paper shows what barriers and benefits the management of NFRs as part of the MDD process can bring to companies, how NFRs are supported by MDD approaches, and which strategies are followed when (some) types of NFRs are not supported by MDD approaches. Results: Our study shows that practitioners perceive MDD adoption as a complex process with little to no tool support for NFRs, reporting productivity and maintainability as the types of NFRs expected to be supported when MDD is adopted. But in general, companies adapt MDD to deal with NFRs. When NFRs are not supported, the generated code is sometimes changed manually, thus compromising the maintainability of the software developed. However, the interviewed practitioners claim that the benefits of using MDD outweight the extra effort required by these manual adaptations. Conclusion: Overall, the results indicate that it is important for practitioners to handle NFRs in MDD, but further research is necessary in order to lower the barrier for supporting a broad spectrum of NFRs with MDD. Still, much conceptual and tool implementation work seems to be necessary to lower the barrier of integrating the broad spectrum of NFRs in practice.

M3 - Article

JO - IEEE Transactions on Software Engineering

JF - IEEE Transactions on Software Engineering

SN - 0098-5589

ER -

Ameller D, Franch X, Gómez C, Martínez-Fernández S, Araujo J, Biffl S et al. Dealing with Non-Functional Requirements in Model-Driven Development: A Survey. IEEE Transactions on Software Engineering. 2019 Feb 24.