Elsevier

Information Systems

Volume 36, Issue 7, November 2011, Pages 992-1008
Information Systems

The brave new world of design requirements

https://doi.org/10.1016/j.is.2011.04.003Get rights and content

Abstract

Despite its success over the last 30 years, the field of Requirements Engineering (RE) is still experiencing fundamental problems that indicate a need for a change of focus to better ground its research on issues underpinning current practices. We posit that these practices have changed significantly in recent years. To this end we explore changes in software system operational environments, targets, and the process of RE. Our explorations include a field study, as well as two workshops that brought together experts from academia and industry. We recognize that these changes influence the nature of central RE research questions. We identify four new principles that underlie contemporary requirements processes, namely: (1) intertwining of requirements with implementation and organizational contexts, (2) dynamic evolution of requirements, (3) emergence of architectures as a critical stabilizing force, and (4) need to recognize unprecedented levels of design complexity. We recommend a re-focus of RE research based on a review and analysis of these four principles, and identify several theoretical and practical implications that flow from this analysis.

Highlights

► Intertwining of requirements with implementation and organizational contexts. ► Dynamic evolution of requirements, ► Emergence of architectures as a critical stabilizing force. ► Need to recognize unprecedented levels of design complexity. We recommend a re-focus of RE research based on a review and analysis of these four principles, and identify several theoretical and practical implications that flow from this analysis.

Introduction

The genesis of Requirements Engineering (RE) research around the mid-1970s was motivated by practitioners, who noticed the urgent need for disciplined RE in software projects that had grown large and unmanageable [1], [2]. Much of RE research since then has focused on artifacts that maintain the intellectual discipline by helping capture, share, represent, analyze, negotiate, and prioritize requirements as a basis for design decisions and interventions. This is evidenced by the volume and impact of a plethora of requirements-related papers published in top software engineering conferences and journals (for a survey see [3]. Due to its practical origins, it is not surprising that some of the findings of this research, such as the use of business and system modeling (e.g., entity-relationship and UML diagrams, use cases [4], [5], risk-driven methodologies [6], structured requirements documents, and requirements tracing [7], [8], have found their way into design practice [9].

Yet, the environment in which RE is practiced now has changed dramatically from the landscape of 35 years ago. Partly, this is due to advances in hardware and telecommunications that has radically lowered computing cost and extended functionality. This has made software ubiquitous in all walks-of-life. For example, for a large part of the population, smart phones and netbooks rather than workstations and PCs are becoming the computing device of choice; RFID tags and other sensors bring real-world measurements into the administrative world of Enterprise Resource Planning (ERP); and highly reduced communication cost moves high-performance computing and data services into “the cloud”. Partly, this is due to changes in task and organizational environments where software is either produced or deployed. Therefore, the field's focus and scope has shifted from engineering of individual systems and components towards the generation, adaptation and maintenance of software-intensive ecosystems consisting of software, hardware, human and organizational agents, business processes and more. For example, large infrastructure players such as IBM, SAP, Oracle, Microsoft, or Google are jockeying to dominate with their platforms by offering software development services that permit order-of-magnitude productivity increases at the expense of vendor lock-in. This happens, in part competing with, and, in part cooperating with the Open Source movement. Within user organizations, the rapid globalization and re-organization of industries widens the boundaries of organizational information systems to inter-organizational systems where connectivity and semantic standardization become highly important. In contrast, many software products in the Web 2.0 sphere are in a perpetual state of running beta versions [10], as time-to-market is more important than product quality. For all parties concerned, security has become a true concern for all ecologies.

Accordingly, a term design requirements rather than software requirements as an inclusive term better characterizes all requirements issues within these ecosystems that need to be addressed at the crossroads of business development, software engineering, and industrial design. This shift has created a strong need to re-think the fundamentals of RE research and to re-align them with the new RE practices. In this quest, both academia and industry need to seek to understand more deeply issues that underlie current RE and address associated challenges. We posit that answers to this challenge cannot come just from doing more of the same—i.e., traditional RE research focusing primarily on notations, tools, and methods. The RE field needs to carefully evaluate some of its sacred assumptions and as a result its research scope may have to become more interdisciplinary. This essay aims to identify some of these challenges based on a review of current state of the art and a detailed field and content analysis of extensive expert discussions and feedback on current RE practices. As a result we put forward four key principles that characterize future requirements engineering efforts and discuss their differences to current practices. We also outline main elements of a research agenda that is needed to address future RE challenges

The remainder of the paper is organized as follows. We first offer a short synopsis of the history and state-of-the-art of RE research. Section 3 clarifies the data collection and analysis and the nature of data that shaped discussions around new requirements challenges as reported here. In Section 4, we discuss the changing nature of requirements condensed into nine issues as derived from empirical analysis. Section 5 forms the apex of our argument and proposes four new principles that underlie contemporary and future requirements processes. We conclude with a comparison with current RE practices (Section 6), and discuss implications of our deliberations for research and practice (Section 7).

Section snippets

Requirements research—a brief overview1

Over three decades ago researchers and practitioners alike recognized the critical role of the requirements contributing to the eventual success (or not) of software development [1], [2]. Requirements challenges were seen as inherent and risky elements for any successful system design effort, because of the complexity of the design task, the limits to human information processing, and the intricate interaction between designers and intended users [12]. In addition, the RE activity was found to

Methodology

RE practices and principles were investigated through a field study[4], as well as in two workshops bringing together experts from industry and academia [9], [55]. We used a rigorous empirically grounded research methodology that involved intense data collection in the field followed by a solicitation and integration of expert opinions through workshops and focus groups. We first conducted an extensive field study across a range of industrial and systems design settings to understand the

The changing nature of requirements

The “requirements mess” has remained a pernicious challenge and motivation over the last 30 years for RE scholars. In addition, it does not show any signs of disappearing [59]. RE researchers have been persistent to note that the leading sources of project difficulty – lack of user input, incomplete requirements, and changing specifications – are directly related to flaws in design requirements [37], [60], [61], [62], [63]. Yet, as observed in the field study [9] most large projects follow many

Four requirements principles

As mentioned in Section 2 past RE research has been informed by several principles that served well addressing the classic requirements problems. These included: (1) separation of concerns (notably, the ‘what' from the ‘why' and the ‘how'), (2) information hiding, and (3) the principle of abstraction (see e.g., [1], [2]). These principles reduced design complexity given the requirements and goals by localizing design decisions. They helped reduce the mutual interference of decisions and

Comparisons with conventional RE practices

Conventional RE principles have been codified within established organizational and business models that underlie requirements practice. Table 3 shows one such model—CMMI requirements practices. ISO 9000 and IEEE Standard 830 contain similar, document-focused recommendations. Others have expanded these standards with guidelines for using specific requirements techniques (e.g., [18]. Such practices form the basis for assessing an organization's requirements maturity [85]. Generally speaking,

Implications for research and practice

Over its 30-year history, the idea of design requirements has changed from single, static and fixed-point statements of desirable system properties into dynamic and evolving rationales that mediate dynamic change between the business environments and the design and implementation worlds. As Fred Brooks noted in Dagstuhl workshop: “Design is not about solving fixed problems; it is constant framing of solution spaces”. This evolution has now probably reached a new tipping point characterized by

Acknowledgments

We thank Barbara Pernici and three anonymous reviewers for constructive criticisms which lead to significant improvement in the papers argument and organization. We thank Sean Hansen, Nicholas Berente, Dominik Schmitz, and Anna Glukhova for helping to organize the workshops, and the workshop participants for inspiring discussions and Sol Greenspan for constructive comments on earlier drafts of the manuscript. This research was in part funded by National Science Foundation's “Science of Design”

References (90)

  • G. Wright et al.

    Eliciting and modelling expert knowledge* 1

    Decision Support Systems

    (1987)
  • D. Harel

    Statecharts: a visual formalism for complex systems

    Science of Computer Programming

    (1987)
  • S. Easterbrook

    Handling conflict between domain descriptions with computer-supported negotiation* 1,* 2

    Knowledge Acquisition

    (1991)
  • P. Frederick et al.

    The Mythical Man-Month

    (1995)
  • D.T. Ross et al.

    Structured analysis for requirements definition

    Transactions on Software Engineering

    (January 1977)
  • B.H.C. Cheng et al.

    Current and future research directions in requirements engineering

  • S. Hansen et al.

    Requirements in the 21st century: current practice and emerging trends

  • I. Jacobsen et al.

    Object-oriented software engineering—a use case-driven approach

  • B.W. Boehm

    A spiral model of software development and enhancement

    Computer

    (May 1988)
  • O.C.Z. Gotel et al.

    An analysis of the requirements traceability problem, in: Proceedings of the First International Conference on Requirements Engineering

    (1994)
  • B. Ramesh et al.

    Toward reference models for requirements traceability

    IEEE Transactions on Software Engineering

    (2001)
  • K. Lyytinen et al.

    Design Requirements Engineering: A Ten-Year Perspective, Design Requirements Workshop, Cleveland, OH, USA, June 3–6, 2007, Revised and Invited Papers

    (2009)
  • T. O'Reilly

    What is web 2.0

    Design patterns and business models for the next generation of software

    (2005)
  • S. Hansen et al.

    Principles of Requirements Processes at the Dawn of 21st Century

    Ingénierie des Systèmes d'Information

    (2008)
  • L. Scharer

    Pinpointing requirements

    Datamation

    (1981)
  • M. Bergman et al.

    Large-scale requirements analysis revisited: The need for understanding the political ecology of requirements engineering

    Requirements Engineering

    (2002)
  • A. Davis

    Software Requirements: Objects, Functions, and States

    (1993)
  • E. Hull et al.

    Requirements Engineering

    (2005)
  • M.J. Jackson

    Software requirements and Specifications: A Lexicon of Practice, Principles, and Prejudices

    (1995)
  • P. Loucopoulos et al.

    System Requirements Engineering

    (1995)
  • I. Sommerville et al.

    Requirements Engineering: A Good Practice Guide

    (1997)
  • K. Wiegers

    Read my lips: No new models!

    Software, IEEE

    (2002)
  • R. Wieringa

    Requirements Engineering: Frameworks for Understanding

    (1996)
  • D. Windle et al.

    Software Requirements Using the Unified Process: A Practical Approach

    (2003)
  • I. Vessey et al.

    Requirements specification: learning object, process, and data methodologies

    Communications of the ACM

    (1994)
  • R.H. Thayer et al.

    Software Requirements Engineering

    (1997)
  • C. Ghezzi et al.

    Fundamentals of Software Engineering

    (2002)
  • B. Boehm

    Verifying and validating software requirements and design specifications

    IEEE Software

    (1984)
  • J. Goguen, C. Linde, Techniques for requirements elicitation, in: Proceedings of the IEEE International Symposium on...
  • G. Kotonya et al.

    Requirements Engineering: Processes and Techniques

    (1998)
  • J. Siddiqi

    Challenging Universal Truths of Requirements Engineering

    IEEE Software

    (1994)
  • D. Zowghi et al.

    Requirements elicitation: a survey of techniques, approaches, and tools

    Engineering and Managing Software Requirements

    (2005)
  • R. Agarwal et al.

    Knowledge acquisition using structured interviewing: an empirical investigation

    Journal of Management Information Systems

    (1990)
  • T. Byrd et al.

    A synthesis of research on requirements analysis and knowledge acquisition techniques

    MIS Quarterly

    (1992)
  • H. Beyer et al.

    Apprenticing with the customer

    Communications of the ACM

    (1995)
  • S. Viller et al.

    Social analysis in the requirements engineering process: from ethnography to method

    IEEE

    (2002)
  • M. Alavi

    An assessment of the prototyping approach to information systems development

    Communications of the ACM

    (1984)
  • P. Beynon-Davies et al.

    Information systems prototyping in practice

    Journal of Information Technology

    (1999)
  • A. van Lamsweerde, Requirements Engineering in the year 00: a research perspective, in: Proceedings of the 22nd...
  • A. Borgida et al.

    Knowledge representation as the basis for requirements specifications

    Computer

    (1985)
  • P. Hsia et al.

    Status report: requirements engineering

    IEEE Software

    (1993)
  • H.B. Reubenstein et al.

    The Requirements Apprentice: Automated Assistance for Requirements Acquisition

    IEEE Transactions on Software Engineering

    (1991)
  • V. Gervasi et al.

    Lightweight validation of natural language requirements: a case study

    IEEE

    (2002)
  • L. Goldin et al.

    AbstFinder, a prototype natural language text abstraction finder for use in requirements elicitation

    Automated Software Engineering

    (1997)
  • K. Ryan, The role of natural language in requirements engineering, in: Proceedings of the IEEE International Symposium...
  • Cited by (117)

    • Requirements Engineering for Cyber Physical Production Systems: The e-CORE approach and its application

      2022, Information Systems
      Citation Excerpt :

      We have presented the conceptual foundations as well as the process phases of e-CORE and have demonstrated the applicability of the approach on a specific industrial size application driven by the demand for dealing with both internal and external production disrupting factors. Through our capability-driven approach it is possible to capture the intertwined relationship among design requirements and environment, as well as the interplay of requirements and design artefacts [48]. The e-CORE approach has proved in practice to yield conceptual models that are (a) of value to end users, (b) consistent across all representations, (c) conducive to various analyses, (d) reflective of systemic impact of changes and (e) of value to developers of CPPS solutions.

    • Α capability-oriented modelling and simulation approach for autonomous vehicle management

      2019, Simulation Modelling Practice and Theory
      Citation Excerpt :

      Traditionally, RE has focused on software systems development, which represents relatively homogenous, stable and predictable cyber space [28]. The emergence of new complex, emergent systems, such as smart energy systems, intelligent transportation, smart cities, etc, has brought new challenges to the RE discipline [23,33,34]. Such socio-cyber-physical systems [2] are complex, heterogeneous systems of systems, consisting of digital structures (e.g., software, data) that interact with physical (e.g., sensors, devices) and social elements (e.g., persons, organisations) facilitating human endeavours.

    • Ship design optimization considering probabilistic compliance of decarbonization regulations

      2023, Advances in the Analysis and Design of Marine Structures - Proceedings of the 9th International Conference on Marine Structures, MARSTRUCT 2023
    View all citing articles on Scopus

    This is an extended and improved version of the paper: Lyytinen, K., Jarke, M., Loucopoulos, P., Mylopoulos, J., Robinson, W., “The Brave New World of Design Requirements: Four Key Principles”, 22nd International Conference on Advanced Information Systems Engineering (CAiSE'10), Hammamet Tunisia, June 2010. Authors are listed alphabetically to reflect equal contribution.

    View full text