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

David Ameller, Xavier Franch, Cristina Gómez, Silverio Martinez-Fernández, Joao Araujo, Stefan Biffl, Jordi Cabot, Vittorio Cortellessa, Daniel Méndez, A. Moreira, Henry Muccini, Antonio Vallecillo, Manuel Wimmer, V. Amaral, Wolfgang Bühm, Hugo Bruneliere, Loli Burgueno, Miguel Goulao, Sabine Teufl, Luca Berardinelli

Research output: Contribution to journalArticlepeer-review

Abstract

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
Article number8665968
Pages (from-to)818-835
Number of pages18
JournalIEEE Transactions on Software Engineering
Volume47
Issue number4
DOIs
Publication statusPublished - Apr 2021

Fields of science

  • 202005 Computer architecture
  • 202017 Embedded systems
  • 102 Computer Sciences
  • 102002 Augmented reality
  • 102006 Computer supported cooperative work (CSCW)
  • 102015 Information systems
  • 102022 Software development
  • 502032 Quality management
  • 502050 Business informatics

JKU Focus areas

  • Digital Transformation

Cite this