Scenario-Based Requirements Engineering
Scenario-Based Requirements Engineering
net/publication/4035245
CITATIONS READS
250 18,149
1 author:
Alistair G. Sutcliffe
The University of Manchester
365 PUBLICATIONS 11,376 CITATIONS
SEE PROFILE
All content following this page was uploaded by Alistair G. Sutcliffe on 21 May 2014.
Alistair Sutcliffe
Centre for HCI Design, Department of Computation
University of Manchester Institute of Science & Technology (UMIST)
PO Box 88, Manchester, M60 1QD, UK
[email protected]
Actor represent
5. Methods for scenario-based requirements
engineering
One productive juxtaposition of scenarios and models Figure 3. Schema of scenario-related knowledge
is to use scenarios as test data to validate design models. after Potts [27].
This approach, proposed in the Inquiry Cycle [8] and its
scuccessor ScenIC, uses scenarios as specific contexts to Goals are classified into achieving, maintainting or
test the utility and acceptability of system output. By avoiding states, while obstacles prevent goals from being
questioning the relevance of system output for a set of achieved, or inhibits successful completion of tasks. The
stakeholders and their tasks described in a scenario, the method proceeds in a cycle of expressing scenarios in a
analyst can discover obstacles to achieving system semi-structured format, criticising and inspecting
requirements. Input obstacles can be derived from scenarios in walkthroughs which leads to refining
scenarios to test validation routines and other functional requirements and specifications and the next cycle.
requirements. Obstacle analysis has since been refined Guidelines are given for formatting scenario narratives
into a formal process for discovering the achievability of and identifying goals, actions and obstacles. Scenario
system goals with respect to a set of environmental states, episodes are assessed with challenges to see if goals can
taken from scenarios [28]. Scenarios, therefore, can fulfil be achieved by the system tasks, whether the actors can
useful roles either as test data, as a stimulant to reasoning carry out the tasks, whether obstacles prevent the actors
in validating system requirements, or by providing data carrying out the tasks, etc. In this manner dependencies
for formal model checking. between goals, tasks, actors and resources can be checked
to make sure the system meets its requirements.
Dependency analysis and means-ends analysis, in which x Initial requirements capture and domain
tasks and the capabilities of actors are examined to ensure familiarisation. This is conducted by
goals can be achieved, are also present in RE methods conventional interviewing and fact-finding
such as i* [17], and this illustrates the convergence of techniques to gain sufficient information to
scenario- and model-based analysis in requirements develop a first concept demonstrator. In practice
engineering. Two paragraphs hardly do justice to ScenIC; this takes 1-2 client visits.
however, my purpose was to draw attention to the x Storyboarding and design visioning. This phase
importance of obstacle analysis, and urge the reader to creates early visions of the required system that
consult more detail in Potts [27]. are explained to users in storyboard
In SCRAM (Scenario-based Requirements Analysis walkthroughs to get feedback on feasibility.
Method), scenarios are used with early prototypes to elicit x Requirements exploration. This uses concept
requirements in reaction to a preliminary design. The demonstrators and early prototypes to present more
approach is based on the hypothesis that technique detailed designs to users in scenario-driven, semi-
integration provides the best avenue for improving RE interactive demonstrations so the design can be
and that active engagement of users in trying out designs critiqued and requirements validated.
is the best way to get effective feedback for requirements x Prototyping and requirements validation. This phase
validation. Another motivation is to use scenarios as a develops more fully functional prototypes and
means of situating discussion about the design, so that continues refining requirements until a prototype is
new requirements can be elicited by reasoning about agreed to be acceptable by all the users.
problems posed by scenarios describing a context of use. The method provides process guidance for conducting
This approach essentially merges the elicitation and walkthroughs and organising the requirements analysis
validation role of scenarios by providing the context for process, with guidelines for interviewing and managing
the user to assess a design which itself is presenting a requirements conversations. Initial requirements capture
scenario of use. The method steps of SCRAM are gathers facts about the domain and captures users’ high-
illustrated in figure 4. level goals for the new system. Scenarios are elicited as
examples of everyday use of the current system, with
stories of problems encountered and how they are dealt
Managers, project with. Gathering a sufficient set of scenarios is a vexed
users initiation Scenarios
user tasks question. There are several problems that might be
Initial
requirements encountered:
capture x Users tend to miss out steps in scenarios that
high level
vision/requirements Storyboarding Mockups, they assume are known to the analyst: the
and design storyboards implicit or tacit knowledge problem.
visioning
Concept x Each person may give an individual view of
demonstrator
requirements & problems encountered. It can be difficult to distil
Initial design
Requirements
exploration and Users
a set of common problems from users with
validation diverse views.
x Acquiring a sufficient set of scenarios to cover
Scenarios requirements & not only normal use but also situations when
design rationale interactive design Prototyping and things go wrong can take considerable effort.
requirements validated
validation requirements
The volume of scenarios can become daunting,
& refined design and this presents a problem of finding a valid
Final
sub-set.
Test tasks development x People tend to either forget abnormal examples
scenarios
or to exaggerate problems. Problems
encountered most frequently and recently will be
Figure 4. Process road map of the SCRAM recalled first, but individuals will remember
method. different episodes. Unravelling these potential
biases can be difficult, e.g. a personality clash
SCRAM does not explicitly cover modelling and may make a particular problem vivid for one
specification, as this is assumed to progress in parallel, individual whereas for everyone else, the
following the software engineering method of the problem was minor.
designer’s choice (e.g. UML and Unified Process [18]). The best way to proceed is to gather scenarios of
The method consists of four phases: normal system use; look for commonalties between
different individual versions and create a common
“normal use case”. Note that where individual variations
occur, these can be useful hooks for questions later on Figure 5. Storyboard sketches for a ship
about different individual strategies for using the system. emergency management system.
Once the normal use case is in place, gather a set of
exceptions (c.f. alternative paths in use cases). The Storyboards are created by developing a preliminary
number of alternatives necessary depends on system design from a sub-set of the usage scenarios gathered in
complexity and safety criticality. This phase also captures phase 1. Storyboards are sketches or mock up screens that
users’ high-level goals. show key steps in user system interaction. Figure 5
Scenarios complement goal modelling because, while illustrates a storyboard sequence derived from the
goals focus on abstractions that describe users’ intentions, scenario script. The analyst walks through the storyboard
scenarios make abstract intentions clearer by giving explaining what happens at each stage in terms of system
examples of how a new system might work to fulfil users’ functionality, and asks for the users’ opinions. The
goals. Policies and high-level aims are decomposed into limitation of storyboards is their poor interactivity. Users
lower-level goals, and scenarios of business strategy, can be asked to simulate the actions they would carry out,
competitors’ actions and system operation can help this but mimicking the system response is more difficult. One
process. To give an example, in safety critical systems the of the merits of storyboards and scenarios is that they help
top level policy might be “to expedite the safe navigation involve users in design. When users voice concerns about
of the ship within the constraints of operational a design, users’ reactions and suggestions for
efficiency”. The weakness of goal modelling is recording improvements are recorded. Storyboards and paper
vague intentions without real thought about their practical prototyping allow for quick iterations of a design, but they
implications. Scenarios can help by making the abstract can mask the system functionality. Better feedback will
concrete. As visions of the future system’s usage, be obtained by demonstrating an interactive prototype in
scenarios cannot be created until analysis has decomposed the next phase of requirements exploration.
the system to a level where some detail of sub-goals is Prior to the session the concept demonstrator is
apparent. An example might be “the system diagnoses the developed and tested. A concept demonstrator is an early
potential fire hazards with different types of cargo and prototype with limited functionality and interactivity (see
recommends safety measures to take if the cargo is likely figure 6), so it can only be run as a “script”. Scripts
to be explosive or emit noxious chemicals. The illustrate a scenario of typical user actions with effects
information is passed to the fire fighting crew who can mimicked by the designer. Concept demonstrators differ
take appropriate action.” This scenario suggests further from prototypes in that only minimal functionality is
questions (and hence discovers further goals) about implemented and the user cannot easily interact with the
assumptions concerning the system’s knowledge of the demonstrator. A contextual scenario is developed based
cargo – which may not be accurate –and whether the crew on the preliminary domain analysis. This is a short
know what the appropriate action is (prompting a possible narrative (half to one page) describing a situation taken
training requirement). Scenarios therefore have their role from the users’ work context, e.g. “a typical day in the life
to play in complementing goal models that record a of ...” running through key tasks. It should also contain
hierarchy of user intentions and their relationships. sufficient background material to “situate” the action, that
1.
is to give the users enough information to interpret the
script. An example for a ship emergency management
+ system follows.
2. Display of hazardous cargo
3.
Evacuation instructions
Activate automatic systems
? ?
v
v
crew
team status status
engines ready CO2
forward standby evacn x
aft muster x
4. Advice on fire fighting
cargo
Crew muster instructions
and report status
?v strategy
CO2 x
hose
isolate
[34] A.G. Sutcliffe and M. Ryan, “Experience with [41] A.G. Sutcliffe, “Evolutionary Requirements
SCRAM: A SCenario Requirements Analysis Method,” Analysis,” IEEE Joint International Conference on
IEEE International Symposium on Requirements Requirements Engineering, 2003,Los Alamitos CA: IEEE
Engineering: RE '98, 1998, 164-171, Los Alamitos, CA: Computer Society Press.
IEEE Computer Society Press.
[42] A.G. Sutcliffe, J.E. Shin and A. Gregoriades, “Tool
[35] J. Robertson and S. Robertson, Mastering the Support for Scenario-Based Functional Allocation,” 21st
Requirements Process, Harlow: Addison Wesley, 1999. European Conference on Human Decision Making and
Control, 2002,.
[36] J. Leite, G.D.S. Hadad, J. HoracioDoorn and G.N.
Kaplan, “A Scenario Construction Process,” [43] X.T. Bui, G. Kersten and P.C. Ma, “Supporting
Requirements Engineering, vol. 5, 38-61, 2000. Negotiation with Scenario Management,” 29th Hawaii
International Conference on System Sciences, 1996, 209-
[37] N.A.M. Maiden, S. Minocha, K. Manning and M. 219, Honolulu: University of Hawaii.
Ryan, “CREWS-SAVRE: Systematic Scenario
Generation and Use,” IEEE International Symposium on
Requirements Engineering: RE '98, 1998, 148-155, Los
Alamitos CA: IEEE Computer Society Press.