Supporting Scenario-Based Requirements Engineering

Scenarios have been advocated as a means of improving requirements engineering yet few methods or tools exist to support scenario based RE. The paper reports a method and software assistant tool for scenario based RE that integrates with use case approaches to object oriented development. The method and operation of the tool are illustrated with a financial system case study. Scenarios are used to represent paths of possible behavior through a use case, and these are investigated to elaborate requirements. The method commences by acquisition and modeling of a use case. The use case is then compared with a library of abstract models that represent different application classes. Each model is associated with a set of generic requirements for its class, hence, by identifying the class(es) to which the use case belongs, generic requirements can be reused. Scenario paths are automatically generated from use cases, then exception types are applied to normal event sequences to suggest possible abnormal events resulting from human error. Generic requirements are also attached to exceptions to suggest possible ways of dealing with human error and other types of system failure. Scenarios are validated by rule based frames which detect problematic event patterns. The tool suggests appropriate generic requirements to deal with the problems encountered. The paper concludes with a review of related work and a discussion of the prospects for scenario based RE methods and tools.

[1]  Alistair Sutcliffe,et al.  A Taxonomy of Error Types for Failure Analysis and Risk Assessment , 1998, Int. J. Hum. Comput. Interact..

[2]  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).

[3]  Alistair Sutcliffe,et al.  Human-Computer Interface Design , 1988, Macmillan Computer Science Series.

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

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

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

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

[8]  Axel van Lamsweerde,et al.  Integrating obstacles in goal-driven requirements engineering , 1998, Proceedings of the 20th International Conference on Software Engineering.

[9]  Michael Jackson,et al.  Domain descriptions , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

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

[11]  Martin Fowler,et al.  Analysis patterns - reusable object models , 1996, Addison-Wesley series in object-oriented software engineering.

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

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

[14]  Stuart R. Faulk,et al.  Software Requirements: A Tutorial, , 1995 .

[15]  Shailey Minocha,et al.  Scenario-based Analysis of Non-Functional Requirements , 1998, REFSQ.

[16]  Morten Kyng,et al.  Creating contexts for design , 1995 .

[17]  Fairclough Mazza,et al.  Software Engineering Standards , 1995 .

[18]  Traci Royer Using scenario-based designs to review user interface changes and enhancements , 1995, Symposium on Designing Interactive Systems.

[19]  K. Eason,et al.  Representing socio-technical systems options in the development of new forms of work organization , 1996 .

[20]  Alistair G. Sutcliffe,et al.  Requirements rationales: integrating approaches to requirement analysis , 1995, Symposium on Designing Interactive Systems.

[21]  Jeffrey D. Smith,et al.  An evaluation of inquiry-based requirements analysis for an Internet service , 1995, Proceedings of 1995 IEEE International Symposium on Requirements Engineering (RE'95).

[22]  Alistair G. Sutcliffe,et al.  Domain analysis for software reuse , 2000, J. Syst. Softw..

[23]  Erik Hollnagel,et al.  Human Reliability Analysis: Context and Control , 1994 .

[24]  Christopher J. Hemingway,et al.  Human-Computer Interface Design (Second Edition) , 1999 .

[25]  A. Sutcliffe,et al.  A technique combination approach to requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

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

[27]  John Mylopoulos,et al.  Representing and Using Nonfunctional Requirements: A Process-Oriented Approach , 1992, IEEE Trans. Software Eng..

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

[29]  Robert W. Bailey,et al.  Human performance engineering: A guide for system designers , 1982 .

[30]  Victor R. Basili,et al.  A Methodology for Collecting Valid Software Engineering Data , 1984, IEEE Transactions on Software Engineering.

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

[32]  Jakob Nielsen,et al.  Book review: Designing the User Interface: Strategies for Effective Human-Computer Interaction by Ben Shneiderman (Addison-Wesley, 1987) , 1987, SGCH.

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

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

[35]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

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

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

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

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

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

[41]  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).

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

[43]  Barry W. Boehm,et al.  Identifying Quality-Requirement Conflicts , 1996, IEEE Softw..

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

[45]  MSc Mbcs CEng Michael Bronzite BSc System Development , 2000, Springer London.

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