Abstract
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.
Similar content being viewed by others
References
Achour, C.B. and Rolland, C. 1997. Introducing genericity and modularity of textual scenario interpretation in the context of requirements engineering. CREWS Technical Report, Centre de Recherche en Informatique, Universite de Paris 1, Paris, France.
Allen, J.F. 1985. Maintaining knowledge about Temporal Intervals. Communications of the ACM 26(11), pp. 832-843.
Archer, M.M. and Heitmeyer, C.L. 1997. Verifying hybrid systems modeled as timed automata: A case study. Proc. of HART' 97, Grenoble, France.
Blyth, A. 1996. Responsibility modelling and its application to the specification of domain knowledge. In D. Benyon, and F. van Assche (Eds.), Domain Knowledge for Interactive Systems Design, A. Sutcliffe, Chapman & Hall, pp. 48-60.
Carroll, J.M. 1995. The scenario perspective on systems development. In J.M. Carroll (Ed.), Scenario-Based Design: Envisioning Work and Technology in System Development.
Coad, P., North, D., and Mayfield, M. 1995. Object Models: Strategies, Patterns and Applications. Prentice-Hall: Englewood Cliffs.
Coad, P. and Yourdon, E. 1991. Object-Oriented Analysis. Yourdon Press.
Constantopoulos, P., Jarke, M., Mylopoulos, J., and Vassiliou, Y. 1991. Software information base: A server for reuse, Technical Report, FORTH Research Institute, Univ of Heraklion, Crete.
Dik, S.C. 1989. The theory of functional grammar, Part I: The structure of the clause, Functional Grammar Series, vol. 9, Foris Publications.
Dowell, J. and Finkelstein, A.C.W. 1996. A comedy of errors: The London ambulence case study. Proc. 8th Int. Workshop on Software Specification and Design, IEEE Computer Society Press, pp. 2-4.
Dubois, P., Dubois, E., and Zeippen, J. 1997. On the use of a formal representation. Proc. of the 3rd Int. Symposium on Requirements Engineering, IEEE Computer Society Press, pp. 128-137.
Feblowitz, M., Greenspan, S., Reubenstein, H., and Walford, R. 1996. ACME/PRIME: Requirements acquisition for process-driven systems. Proc. 8th Int. Workshop on Software Specification and Design, IEEE Computer Society Press, pp. 36-45.
Fickas, S. and Nagarajan, P. 1988. Critiquing software specifications. IEEE Software, pp. 37-47.
Fischer, G. and Nakakoji, K. 1991. Making design objects relevant to the task at hand. Proc. of AAAI'91, AAAI Press/MIT Press, pp. 67-73.
Gick, M.L. and Holyoak, K.J. 1983. Schema induction and analogical transfer. Cognitive Psychology, 15:1-38.
Graham, I. 1996. Task scripts, use cases and scenarios in object-oriented analysis. Object-Oriented Systems, 3:123-142.
Heymans, P. and Dubois, E. 1997. Some thoughts about the animation of formal specifications written in the ALBERT II language, CREWS Technical Report, Computer Science Department, University of Namur, Belgium.
Hollnagel, E. and Kirwan, B. 1996. Practical insights from studies of operator diagnosis. Proc. 8th European Conf. on Cognitive Ergononics, EACE, pp. 133-137.
Jackson, M. 1995. Software requirements and specifications. ACM Press/Addison-Wesley.
Jacobson, I., Christerson, M., Jonsson, P., and Overgaard, G. 1992. Object-Oriented Software Engineering: A Use-Case Driven Approach, Addison-Wesley.
Jarke, M., Bubenko, Y., Rolland, C., Sutcliffe, A.G., and Vassiliou, Y. 1993. Theories underlying requirements engineering: An overview of NATURE at genesis. Proc. 1st IEEE Symposium on Requirements Engineering, IEEE Computer Society Press, pp. 19-31.
Johnson, W.L., Feather, M.S., and Harris, D.R. 1992. Representation and presentation of requirements knowledge, IEEE Transactions on Software Engineering, 18(10):853-869.
Leveson, N. 1995. Safeware: System Safety and Computers, Addison-Wesley.
Maiden, N.A.M., Minocha, S., Ryan, M., Hutchings, K., and Manning, K. 1997. A cooperative scenario-based approach to acquisition and validation of system requirements: How exceptions can help. Proc. Workshop on Errors in Systems Development, University of Glasgow, Scotland.
Maiden, N.A.M., Minocha, S., Manning, K., and Ryan, M. 1998. CREWS-SAVRE: Scenarios for acquiring and validating requirements. Proc. 3rd Int. Conf. on Requirements Engineering (ICRE98), IEEE Computer Society Press, pp. 148-155.
Maiden, N.A.M., Mistry, P., and Sutcliffe, A.G. 1995. How people categorise requirements for reuse: A natural approach. Proc. 2nd IEEE Symposium on Requirements Engineering, IEEE Computer Society, pp. 148-155.
Maiden, N.A.M. and Sutcliffe, A.G. 1996a. Analogical retrieval in reuse-oriented requirements engineering. Software Engineering Journal, 11(5):281-292.
Maiden, N.A.M. and Sutcliffe, A.G. 1996b. Computational mechanisms for parallel problem decomposition during requirements engineering. Proc. 8th Int. Workshop on Software Specification and Design, IEEE Computer Society Press, pp. 159-163.
Maiden, N.A.M. and Sutcliffe, A.G. 1994. Requirements critiquing using domain abstractions. Proc. IEEE Conf. on Requirements Engineering, IEEE Computer Society Press, pp. 184-193.
Maiden, N.A.M. and Sutcliffe, A.G. 1993. Requirements engineering by example: An empirical study. Proc. IEEE Symposium on Requirements Engineering, IEEE Computer Society Press, pp. 104-112.
Maiden, N.A.M. and Sutcliffe, A.G. 1992. Exploiting reusable specifications through analogy. Communications of the ACM, 34(5):55-64.
Mylopopoulos, J., Borgida, A., Jarke, M., and Koubarakis, M. 1990. Telos: Representing knowledge about information systems. ACM Transactions on Office Information Systems. 8(4):325.
Nielsen, J. 1993. Usability Engineering, Academic Press.
Norman, D.A. 1988. The Psychology of Everyday Things. Basic Books Inc.
Pohl, K. 1996. PRO-ART: Enabling requirements pre-traceability. Proc. 2nd Int. Conf. on Requirements Engineering, IEEE Computer Society Press.
Pohl, K. and Haumer, P. 1997. Modeling contextual information about scenarios. Third Int. Workshop on Requirements Engineering: Foundation for Software Quality (REFSQ'97).
Potts, C. 1995. Using schematic scenarios to understand user needs. Proc. DIS95: Designing Interactive Systems, Ann Arbor, pp. 247-256.
Potts, C. 1993. Software engineering research revisited. IEEE Software, pp. 19-28.
Potts, C., Takahashi, K., and Anton, A.I. 1994. Inquiry-based requirements analysis. IEEE Software, 11(2):21-32.
Prieto-Diaz, R. 1990. Domain analysis: An introduction. ACM SIGSOFT Software Engineering Notes, 15(2): 47-54.
Rasmussen, J., Pejtersen, A.M., and Goodstein, L.P. 1994. Cognitive Systems Engineering. John Wiley & Sons.
Reason, J.T. 1990. Human Error. Cambridge University Press.
Regnell, B., Kimbler, K., and Wesslen, A. 1995. Improving the use case driven approach to requirements engineering. Proc. 2nd IEEE Symposium on Requirements Engineering, IEEE Computer Society, pp. 40–47.
Reubenstein, H.B. and Waters, R.C. 1991. The requirements apprentice: Automated assistance for requirements acquisition. IEEE Transactions on Software Engineering, 17(3):226-240.
Riesbeck, C.K. and Schank, R.C. 1989. Inside Case-based Reasoning. Hillsdale NJ: Lawrence Erlbaum Associates.
Rosch, E. 1983. Prototype classification and logical classification: The two systems. In K. Scholnick (Ed.), New Trends in Conceptual Representation: Challenges to Piaget's Theory, Hillsdale NJ: Lawrence Erlbaum Associates.
Schank, R.C. 1982. Dynamic Memory: A Theory of Reminding and Learning in Computers and People. Cambridge University Press.
Shneiderman, B. 1992. Designing the User Interface: Strategies for Effective Human-Computer Interaction. Addison-Wesley.
Sommerville, I., Rodden, T., Sawyer, P., Bentley, R., and Twidale, M. 1993. Integrating ethnography into the requirements engineering process. Proc. 1st IEEE Symposium on Requirements Engineering, IEEE Computer Society Press, pp. 165-173.
Sutcliffe, A.G. and Maiden, N.A.M. 1998. The domain theory for requirements engineering. IEEE Transactions on Software Engineering, 24(3):174-196.
Sutcliffe, A.G. and Maiden, N.A.M. 1993. Bridging the requirements gap: Policies, goals and domains. Proc. 7th Int. Workshop on System Specification and Design, IEEE Computer Society Press, pp. 52-55.
Weidenhaupt, K., Pohl, K., Jarke, M., Haumer, P., Maiden, N.A.M. et al. 1998. Scenario usage in systems development: A report on current practice. IEEE Software, 15(2):34-45.
Wexelblat, A. 1987. Report on scenario technology. MCC Technical Report STP-139-87, MCC, Austin Texas.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Maiden, N. CREWS-SAVRE: Scenarios for Acquiring and Validating Requirements. Automated Software Engineering 5, 419–446 (1998). https://doi.org/10.1023/A:1008605412971
Issue Date:
DOI: https://doi.org/10.1023/A:1008605412971