Abstraction and context in requirements engineering: Toward a synthesis

Most requirements engineering (RE) research and practice embodies a philosophy that we will call abstractionism, which involves the building of simplified models of domains of discourse and proposed systems. Abstractionists make much use of formal models, such as goal dependency networks. An alternative design philosophy is contextualism, according to which the particularities of the context of use of a system must be understood in detail before the requirements can be derived. Contextualists use qualitative methods to uncover and help interpret these particularities. In this paper, we analyze what it would mean to combine the best features of abstractionism and contextualism, and we ground our discussion in an illustration of abstractionist and contextualist thinking about RE through goal refinement (GR). In the context of the domain of meeting scheduling, we contrast a wholly abstractionist approach to GR with one that incorporates data gathered using two ethnographic methods. In doing so, we consider each step of the abstractionist approach, illustrating where ethnographic data obtained in our work environment affects the model produced. As we proceed, we summarize the general lessons learned. We then discuss how other abstractionist and contextualist methods could be integrated.

[1]  Paul Luff,et al.  Work, interaction and technology: the naturalistic analysis of human conduct and requirements analysis , 1994 .

[2]  A. Kirlik Requirements for psychological models to support design: Towards ecological task analysis , 1991 .

[3]  Dan Shapiro,et al.  Steps toward a partnership: ethnography and system design , 1994 .

[4]  Tom Rodden,et al.  The role of ethnography in interactive systems design , 1995, INTR.

[5]  Peter P. Chen The entity-relationship model: toward a unified view of data , 1975, VLDB '75.

[6]  Lucy Suchman Plans and situated actions: the problem of human-machine communication , 1987 .

[7]  Douglas T. Ross,et al.  Structured Analysis (SA): A Language for Communicating Ideas , 1977, IEEE Transactions on Software Engineering.

[8]  J. Lofland,et al.  Analyzing Social Settings , 1971 .

[9]  Brad Hartfield,et al.  Computer systems and the design of organizational interaction , 1988, TOIS.

[10]  Colin Potts,et al.  Using schematic scenarios to understand user needs , 1995, Symposium on Designing Interactive Systems.

[11]  Cliff B. Jones,et al.  Systematic software development using VDM (2. ed.) , 1990, Prentice Hall International Series in Computer Science.

[12]  J. Flach The Ecology of Human-Machine Systems I: Introduction , 1990 .

[13]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[14]  Stewart Green,et al.  Goal-driven approaches to requirements engineering , 1993 .

[15]  Pelle Ehn,et al.  Work-oriented design of computer artifacts , 1989 .

[16]  J. Alexander,et al.  Images of Organization , 1988 .

[17]  J. Mylopoulos,et al.  Using goals, rules, and methods to support reasoning in business process reengineering , 1996, 1994 Proceedings of the Twenty-Seventh Hawaii International Conference on System Sciences.

[18]  L. Smircich,et al.  The Case for Qualitative Research , 1980 .

[19]  Philippe Massonet,et al.  Goal-directed elaboration of requirements for a meeting scheduler: problems and lessons learnt , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[20]  Stephen M. McMenamin,et al.  Essential systems analysis , 1984 .

[21]  J. Michael Spivey,et al.  Understanding Z : A specification language and its formal semantics , 1985, Cambridge tracts in theoretical computer science.

[22]  Mack W. Alford SREM at the Age of Eight; The Distributed Computing Design System , 1985, Computer.

[23]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[24]  Donald A. Norman,et al.  Turn Signals Are The Facial Expressions Of Automobiles , 1992 .

[25]  H. Bernard Research Methods in Anthropology: Qualitative and Quantitative Approaches , 1988 .

[26]  Ivar Jacobson,et al.  Object-oriented software engineering - a use case driven approach , 1993, TOOLS.

[27]  Richard Barker,et al.  CASE method - entity relationship modelling , 1990, Computer aided systems engineering.

[28]  Edward Yourdon,et al.  Object-oriented analysis , 2012 .

[29]  Jakob Nielsen,et al.  Usability engineering , 1997, The Computer Science and Engineering Handbook.

[30]  Peter Checkland,et al.  Soft Systems Methodology in Action , 1990 .

[31]  Richard Bentley,et al.  Integrating ethnography into the requirements engineering process , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[32]  K. Mani Chandy,et al.  Parallel program design - a foundation , 1988 .

[33]  Michael A. Jackson,et al.  Software requirements and specifications - a lexicon of practice, principles and prejudices , 1995 .

[34]  Cliff B. Jones,et al.  Systematic software development using VDM , 1986, Prentice Hall International Series in Computer Science.

[35]  Frank Stowell,et al.  Client-Led Design: A Systemic Approach to Information System Definition , 1995 .

[36]  Andrew P. Moore,et al.  The Specification and Verified Decomposition of System Requirements Using CSP , 1990, IEEE Trans. Software Eng..

[37]  K. J. Vicente,et al.  The Ecology of Human-Machine Systems II: Mediating 'Direct Perception' in Complex Work Domains , 1990 .

[38]  Anna De Fina,et al.  The ethnographic interview , 2019, The Routledge Handbook of Linguistic Ethnography.

[39]  Jonathan Grudin,et al.  Why Groupware Succeeds: Discretion or Mandate? , 1995, ECSCW.

[40]  Annie I. Antón,et al.  Goal Decomposition and Scenario Analysis in Business Process Reengineering , 1994, CAiSE.

[41]  Edward Yourdon,et al.  Object-oriented analysis (2nd ed.) , 1991 .

[42]  Robert J. Anderson,et al.  Representations and Requirements: The Value of Ethnography in System Design , 1994, Hum. Comput. Interact..

[43]  David W. Bustard,et al.  Enhancing soft systems analysis with formal modelling , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[44]  James J. Horning,et al.  The Larch Family of Specification Languages , 1985, IEEE Software.

[45]  David W. Bustard,et al.  Integrating soft systems and object-oriented analysis , 1996, Proceedings of the Second International Conference on Requirements Engineering.

[46]  W. Neuman,et al.  Social Research Methods: Qualitative and Quantitative Approaches , 2002 .

[47]  Tom DeMarco,et al.  Structured Analysis and System Specification , 1978 .

[48]  Kenneth S. Rubin Object behavior analysis , 1992, CACM.

[49]  Chris Dollin,et al.  Object-oriented development: the fusion method , 1994 .

[50]  Rob Kling,et al.  Social Analyses of Computing: Theoretical Perspectives in Recent Empirical Research , 1980, CSUR.

[51]  Annie I. Antón,et al.  Goal-based requirements analysis , 1996, Proceedings of the Second International Conference on Requirements Engineering.

[52]  E. Hutchins Cognition in the wild , 1995 .

[53]  Peter Checkland,et al.  Systems Thinking, Systems Practice , 1981 .

[54]  PottsColin,et al.  Abstraction and context in requirements engineering , 1997 .

[55]  C. Geertz Thick Description: Towards an Interpretive Theory of Culture , 1973 .