CREWS-SAVRE: Scenarios for Acquiring and Validating Requirements

This paper reports research into semi-automatic generation of scenarios for validating software-intensive system requirements. The research was undertaken as part of the ESPRIT IV 21903 ‘CREWS’ long-term research project. The paper presents the underlying theoretical models of domain knowledge, computational mechanisms and user-driven dialogues needed for scenario generation. It describes how CREWS draws on theoretical results from the ESPRIT III 6353 ‘NATURE’ basic research action, that is object system models which are abstractions of the fundamental features of different categories of problem domain. CREWS uses these models to generate normal course scenarios, then draws on theoretical and empirical research from cognitive science, human-computer interaction, collaborative systems and software engineering to generate alternative courses for these scenarios. The paper describes a computational mechanism for deriving use cases from object system models, simple rules to link actions in a use case, taxonomies of classes of exceptions which give rise to alternative courses in scenarios, and a computational mechanism for generation of multiple scenarios from a use case specification.

[1]  Alistair Cockburn,et al.  Structuring Use Cases with Goals , 2000 .

[2]  Kenji Takahashi,et al.  Inquiry-based requirements analysis , 1994, IEEE Software.

[3]  Matthias Jarke,et al.  Scenario usage in system development: a report on current practice , 1998, Proceedings of IEEE International Symposium on Requirements Engineering: RE '98.

[4]  Jens Rasmussen,et al.  Cognitive Systems Engineering , 2022 .

[5]  Shailey Minocha,et al.  CREWS-SAVRE: systematic scenario generation and use , 1998, Proceedings of IEEE International Symposium on Requirements Engineering: RE '98.

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

[7]  Neil Maiden,et al.  How people categorise requirements for reuse: a natural approach , 1995 .

[8]  Nancy G. Leveson,et al.  Safeware: System Safety and Computers , 1995 .

[9]  Mark Feblowitz,et al.  ACME/PRIME: requirements acquisition for process-driven systems , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[10]  Björn Regnell,et al.  Improving the use case driven approach to requirements engineering , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[11]  Rubén Prieto-Díaz,et al.  Domain analysis: an introduction , 1990, SOEN.

[12]  Neil A. M. Maiden,et al.  How people categorise requirements for reuse: a natural approach , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[13]  Ian M. Graham,et al.  Task scripts, use cases and scenarios in object oriented analysis , 1996, Object Oriented Syst..

[14]  D. Norman The psychology of everyday things , 1990 .

[15]  Jakob Nielsen,et al.  Chapter 6 – Usability Testing , 1993 .

[16]  I. A N G R A H A M Task scripts , use cases and scenarios in object oriented analysis , 2022 .

[17]  Neil A. M. Maiden,et al.  Requirements critiquing using domain abstractions , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[18]  Andrew Blyth,et al.  Responsibility Modelling and its Application to the Specification of Domain Knowledge , 1996 .

[19]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture: A System of Patterns: John Wiley & Sons , 1987 .

[20]  S. C. Dik,et al.  The Theory of Functional Grammar. Part I: The Structure of the Clause (second, revised edition, edited by K. Hengeveld) , 1997 .

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

[22]  C SchankRoger,et al.  Dynamic Memory: A Theory of Reminding and Learning in Computers and People , 1983 .

[23]  Roger C. Schank,et al.  Dynamic memory - a theory of reminding and learning in computers and people , 1983 .

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

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

[26]  Colin Potts,et al.  Software-engineering research revisited , 1993, IEEE Software.

[27]  Kees Hengeveld,et al.  The Structure of the Clause , 1997 .

[28]  Shailey Minocha,et al.  A co-operative scenario based approach to acquisition and validation of system requirements: How exceptions can help! , 1999, Interact. Comput..

[29]  M. Halliday New trends in conceptual representation: Challenges to Piaget's theory , 1985 .

[30]  Myla Archer,et al.  Verifying Hybrid Systems Modeled as Timed Automata: A Case Study , 1997, HART.

[31]  Simon C. Dik,et al.  The theory of functional grammar , 1989 .

[32]  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.

[33]  John M. Carroll,et al.  Scenario-based design: envisioning work and technology in system development: john wiley & sons , 1995 .

[34]  Gill Smith,et al.  Object-oriented analysis , 1988, WADAS '88.

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

[36]  N. A. M. Maiden,et al.  A computational mechanism for parallel problem decomposition during requirements engineering , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[37]  J. Shaoul Human Error , 1973, Nature.

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

[39]  Stewart A. Higgins,et al.  Scenarios-an industrial case study and hypermedia enhancements , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

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

[41]  Gerhard Fischer,et al.  Making Design Objects Relevant to the Task at Hand , 1991, AAAI.

[42]  Mark Mayfield,et al.  Object Models: Strategies, Patterns, and Applications , 1995 .

[43]  Ben Shneiderman,et al.  Designing the user interface (2nd ed.): strategies for effective human-computer interaction , 1992 .

[44]  K. Holyoak,et al.  Schema induction and analogical transfer , 1983, Cognitive Psychology.

[45]  Klaus Pohl,et al.  PRO-ART: enabling requirements pre-traceability , 1996, Proceedings of the Second International Conference on Requirements Engineering.

[46]  Neil A. M. Maiden,et al.  The Domain Theory for Requirements Engineering , 1998, IEEE Trans. Software Eng..

[47]  Matthias Jarke,et al.  Scenarios in System Development: Current Practice , 1998, IEEE Softw..

[48]  Matthias Jarke,et al.  The software information base: A server for reuse , 2005, The VLDB Journal.

[49]  Klaus Pohl,et al.  CREWS Report Series 97 – 05 Modelling Contextual Information about Scenarios , 1997 .

[50]  Christopher K. Riesbeck,et al.  Inside Case-Based Reasoning , 1989 .

[51]  Camille Ben Achour,et al.  Linguistic Instruments for the Integration of Scenarios in Requirement Engineering , 1997 .

[52]  Colette Rolland,et al.  Introducing Genericity and Modularity of Textual Scenario Interpretation in the Context of Requirements Engineering , 1999 .

[53]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

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

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

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

[57]  B. Schneiderman,et al.  Designing the User Interface. Strategies for Effective Human-Computer Interaction , 1992 .

[58]  Neil A. M. Maiden,et al.  Analogical retrieval in reuse-oriented requirements engineering , 1996, Softw. Eng. J..

[59]  A. Finkelstein,et al.  A comedy of errors: the London Ambulance Service case study , 1996, Proceedings of the 8th International Workshop on Software Specification and Design.

[60]  Neil A. M. Maiden,et al.  Exploiting reusable specifications through analogy , 1992, CACM.

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

[62]  Ben C. Moszkowski,et al.  Executing temporal logic programs , 1986, Seminar on Concurrency.

[63]  Neil A. M. Maiden,et al.  Bridging the requirements gap: policies, goals and domains , 1993, Proceedings of 1993 IEEE 7th International Workshop on Software Specification and Design.

[64]  Ben Shneiderman,et al.  Designing the User Interface: Strategies for Effective Human-Computer Interaction , 1998 .