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

Activity: Talk or presentationContributed talkscience-to-science

Description

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.
Period09 Jul 2020
Event titleThe 42nd International Conference on Software Engineering June 24, 2020 – July 16, 2020.
Event typeConference
LocationAustriaShow on map

Fields of science

  • 202017 Embedded systems
  • 102006 Computer supported cooperative work (CSCW)
  • 201132 Computational engineering
  • 502032 Quality management
  • 503015 Subject didactics of technical sciences
  • 502050 Business informatics
  • 207409 Navigation systems
  • 102020 Medical informatics
  • 102022 Software development
  • 102002 Augmented reality
  • 201305 Traffic engineering
  • 102034 Cyber-physical systems
  • 102015 Information systems
  • 102040 Quantum computing 
  • 509026 Digitalisation research
  • 211928 Systems engineering
  • 102027 Web engineering
  • 102016 IT security

JKU Focus areas

  • Digital Transformation