The three dimensions of requirements engineering: a framework and its applications

Abstract There is an increasing number of contributions on how to solve the various problems within requirements engineering (RE). The purpose of this paper is to identify the main goals to be reached during the RE process in order to develop a framework for RE. This framework consists of three dimensions: • • the specification dimension • • the representation dimension • • the agreement dimension. We show how this framework can be used to classify and clarify current RE research as well as RE support offered by methods and tools. In addition, the framework can be applied to the analysis of existing RE practise and the establishment of suitable process guidance. Last but not least, the framework offers a first step towards a common understanding of RE.

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

[2]  John R. Cameron,et al.  An overview of JSD , 1986, IEEE Transactions on Software Engineering.

[3]  Neil A. M. Maiden,et al.  Use of Domain Knowledge for Requirements Validation , 1993, Information System Development Process.

[4]  B. Ramesh,et al.  Issues in the development of a requirements traceability model , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[5]  David R. Harris,et al.  KBRA: A new paradigm for requirements engineering , 1988, IEEE Expert.

[6]  Dov M. Gabbay,et al.  Inconsistency Handling in Multperspective Specifications , 1994, IEEE Trans. Software Eng..

[7]  Alan M. Davis,et al.  A comparison of techniques for the specification of external system behavior , 1988, CACM.

[8]  Paul J. Feltovich,et al.  Categorization and Representation of Physics Problems by Experts and Novices , 1981, Cogn. Sci..

[9]  Stephen Fickas,et al.  Critiquing software specifications , 1988, IEEE Software.

[10]  Martin S. Feather,et al.  Utilizing Scenarios in the Software Development Process , 1993, Information System Development Process.

[11]  Pamela Zave,et al.  An Insider's Evaluation of PAISLey , 1991, IEEE Trans. Software Eng..

[12]  Piero Torrigiani,et al.  ASPIS: a knowledge-based CASE environment , 1988, IEEE Software.

[13]  Matthias Jarke,et al.  Vision Driven System Engineering , 1993, Information System Development Process.

[14]  B. Adelson,et al.  The Role of Domain Expenence in Software Design , 1985, IEEE Transactions on Software Engineering.

[15]  Geoffrey Bock,et al.  Groupware - software for computer-supported cooperative work , 1992 .

[16]  Gerhard Fischer,et al.  Recording requirements assumptions and rationale , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[17]  Joseph A. Goguen,et al.  Techniques for requirements elicitation , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

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

[19]  Robert Balzer,et al.  Tolerating Inconsistency , 1991, [1989] Proceedings of the 5th International Software Process Workshop.

[20]  Edward Yourdon,et al.  Modern structured analysis , 1989 .

[21]  Michael V. Mannino,et al.  Inferring Database Requirements from Examples in Forms , 1988, ER.

[22]  David R. Barstow Domain-Specific Automatic Programming , 1985, IEEE Transactions on Software Engineering.

[23]  Victor Weinberg,et al.  Structured Analysis , 1978 .

[24]  Neil A. M. Maiden,et al.  Analogy as a paradigm for specification reuse , 1991, Softw. Eng. J..

[25]  Bill Curtis,et al.  A field study of the software design process for large systems , 1988, CACM.

[26]  Clarence A. Ellis,et al.  Groupware: some issues and experiences , 1991, CACM.

[27]  Colette Rolland,et al.  A Natural Language Approach for Requirements Engineering , 1992, CAiSE.

[28]  Marilyn W. Bush,et al.  Improving software quality: the use of formal inspections at the Jet Propulsion Laboratory , 1990, [1990] Proceedings. 12th International Conference on Software Engineering.

[29]  Anthony Hall,et al.  Seven myths of formal methods , 1990, IEEE Software.

[30]  T. Biggerstaff,et al.  Reusability Framework, Assessment, and Directions , 1987, IEEE Software.

[31]  W. Lewis Johnson Deriving specification from requirements , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[32]  Neil A. M. Maiden,et al.  Software Reusability: Delivering productivity gains or short cuts , 1990, INTERACT.

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

[34]  Neil A. M. Maiden,et al.  Requirements engineering by example: an empirical study , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[35]  Matthias Jarke,et al.  A decision based configuration process environment , 1991, Softw. Eng. J..

[36]  Eugene Miya,et al.  On "Software engineering" , 1985, SOEN.

[37]  Colette Rolland,et al.  Using Artificial Inteligence Techniques to Formalize the Information System Design Process , 1990, DEXA.

[38]  Colin Potts,et al.  Recording the reasons for design decisions , 1988, Proceedings. [1989] 11th International Conference on Software Engineering.

[39]  Pierangela Samarati,et al.  F-ORM METHOD: a F-ORM Methodology for Reusing Specifications , 1991 .

[40]  Martin Doerr,et al.  Repositories for Software Reuse: The Software Information Base , 1993, Information System Development Process.

[41]  Martin S. Feather,et al.  Representation and Presentation of Requirements Knowledge , 1992, IEEE Trans. Software Eng..

[42]  Colette Rolland,et al.  Reusable Process Chunks , 1993, DEXA.

[43]  Hector J. Levesque,et al.  An overview of Knowledge Representation , 1983, On Conceptual Modelling.

[44]  D. Gabbay,et al.  Inconsistency Handling in Multiperspective Specifications , 1994 .

[45]  Hector J. Levesque,et al.  An overview of Knowledge Representation , 1983, On Conceptual Modelling.

[46]  Klaus Pohl,et al.  The Three Dimensions of Requirements Engineering , 1993, CAiSE.

[47]  Linda A. Macaulay Requirements capture as a cooperative activity , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[48]  Richard H. Thayer,et al.  Standards, Guidelines, and Examples on System and Software Requirements Engineering , 1994 .

[49]  R. Guindon,et al.  Control of cognitive processes during software design: what tools are needed? , 1988, CHI '88.

[50]  Julio Cesar Sampaio do Prado Leite,et al.  Viewpoint analysis: a case study , 1989, IWSSD '89.

[51]  Raymond McCall,et al.  JANUS: integrating hypertext with a knowledge-based design environment , 1989, Hypertext.

[52]  Matthias Jarke,et al.  Telos: representing knowledge about information systems , 1990, TOIS.

[53]  Barry W. Boehm,et al.  Verifying and Validating Software Requirements and Design Specifications , 1989, IEEE Software.

[54]  John Mylopoulos,et al.  Knowledge Representation as the Basis for Requirements Specifications , 1985, Computer.

[55]  Jeannette M. Wing A specifier's introduction to formal methods , 1990, Computer.

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

[57]  Charles Richter,et al.  A review of the state of the practice in requirements modeling , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[58]  Pericles Loucopoulos,et al.  Knowledge-based approach to requirements engineering using method and domain knowledge , 1988, Knowl. Based Syst..

[59]  Walt Scacchi,et al.  Managing Software Engineering Projects: A Social Analysis , 1984, IEEE Transactions on Software Engineering.

[60]  Mehdi T. Harandi,et al.  Knowledge-based software design using design schemas , 1987, ICSE '87.

[61]  Jie Lu,et al.  Declarative approach to information systems requirements , 1988 .

[62]  Robert Balzer,et al.  Informality in Program Specifications , 1899, IEEE Transactions on Software Engineering.

[63]  J. Michael Spivey,et al.  An introduction to Z and formal specifications , 1989, Softw. Eng. J..

[64]  Richard C. Waters,et al.  The Requirements Apprentice: Automated Assistance for Requirements Acquisition , 1991, IEEE Trans. Software Eng..

[65]  Matthias Jarke,et al.  Dependency Directed Reasoning and Learning in Systems Maintenance Support , 1987, IEEE Trans. Software Eng..

[66]  James Bigelow,et al.  Hypertext and CASE , 1988, IEEE Software.

[67]  Martin S. Feather,et al.  Building an evolution transformation library , 1990, [1990] Proceedings. 12th International Conference on Software Engineering.

[68]  W. Edwards Deming,et al.  Out of the Crisis , 1982 .

[69]  Kuldeep Kumar,et al.  Informal and Formal Requirements Specification Languages: Bridging the Gap , 1991, IEEE Trans. Software Eng..

[70]  Terry Winograd,et al.  Understanding computers and cognition - a new foundation for design , 1987 .

[71]  Janis A. Bubenko,et al.  Theories underlying requirements engineering: an overview of NATURE at Genesis , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[72]  Janis A. Bubenko,et al.  Requirements Engineering: An Integrated View of Representation, Process, and Domain , 1993, ESEC.

[73]  Walt Scacchi,et al.  A hypertext system to manage software life cycle documents , 1988 .

[74]  Neil A. M. Maiden,et al.  Analogical specification reuse during requirements analysis , 1992 .

[75]  Bashar Nuseibeh,et al.  Viewpoints: A Framework for Integrating Multiple Perspectives in System Development , 1992, Int. J. Softw. Eng. Knowl. Eng..

[76]  Edward Yourdon,et al.  Structured walkthroughs , 1978 .

[77]  Kanth Miriyala,et al.  Automatic Derivation of Formal Software Specifications From Informal Descriptions , 1991, IEEE Trans. Software Eng..

[78]  Julio Cesar Sampaio do Prado Leite,et al.  Requirements Validation Through Viewpoint Resolution , 1991, IEEE Trans. Software Eng..

[79]  D. Gentner Structure‐Mapping: A Theoretical Framework for Analogy* , 1983 .

[80]  Dines Bjørner,et al.  VDM - A Formal Method at Work: Proceedings of the VDM-Europe Symposium (VDM '87), Brussels, Belgium, 23-26 March 1987 , 1987 .

[81]  Matthias Jarke,et al.  Establishing Visions in Context: Towards a Model of Requirements Processes , 1994, EMISA Forum.

[82]  Paul Johannesson,et al.  A method for transforming relational schemas into conceptual schemas , 1989, Proceedings of 1994 IEEE 10th International Conference on Data Engineering.

[83]  Bill Curtis,et al.  Process modeling , 1992, CACM.

[84]  Colin Potts A generic model for representing design methods , 1989, ICSE '89.

[85]  David E. Monarchi,et al.  A research typology for object-oriented analysis and design , 1992, CACM.

[86]  Mack W. Alford,et al.  Software Requirements Engineering Methodology (SREM) at the age of two , 1978, COMPSAC.

[87]  Matthias Jarke,et al.  A software process data model for knowledge engineering in information systems , 1990, Inf. Syst..

[88]  Olly Gotel,et al.  An analysis of the requirements traceability problem , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[89]  Sol Jaffe Greenspan,et al.  Requirements modeling: a knowledge representation approach to software requirements definition , 1984 .

[90]  ChenPeter Pin-Shan The entity-relationship modeltoward a unified view of data , 1976 .

[91]  Bertrand Meyer,et al.  On Formalism in Specifications , 1985, IEEE Software.

[92]  Wolfgang Polak,et al.  Iteration in the software process , 1986, ISPW.

[93]  Manfred A. Jeusfeld,et al.  Anderungskontrolle in deduktiven Objektbanken , 1992 .

[94]  Walt Scacchi,et al.  On designing intelligent hypertext systems for information management in software engineering , 1987, Hypertext.

[95]  Michael L. Begeman,et al.  gIBIS: a hypertext tool for exploratory policy discussion , 1988, CSCW '88.