Upload
milek
View
23
Download
1
Tags:
Embed Size (px)
DESCRIPTION
Supporting Scenario-Based Requirements Engineering IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 24, NO. 12, DECEMBER, 1998 A. G. Sutcliffe, N. A. M. Maiden, S. Minocha, and D. Manuel. Presented by Chin-Yi Tsai. Outline. Introduction Background Method and Tool Support for Scenario-Based RE - PowerPoint PPT Presentation
Citation preview
Supporting Scenario-Based Requirements Supporting Scenario-Based Requirements EngineeringEngineering
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 24, NO. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. 24, NO. 12, DECEMBER, 199812, DECEMBER, 1998
A. G. Sutcliffe, N. A. M. Maiden, S. Minocha, and D. ManuelA. G. Sutcliffe, N. A. M. Maiden, S. Minocha, and D. Manuel
Presented by Chin-Yi TsaiPresented by Chin-Yi Tsai
2
OutlineOutline
IntroductionIntroduction
BackgroundBackground
Method and Tool Support for Scenario-Based REMethod and Tool Support for Scenario-Based RE
ConclusionConclusion
3
IntroductionIntroduction
ScenarioScenario Improve requirement engineeringImprove requirement engineering communicationcommunication
Scenarios often describe information at the instance or Scenarios often describe information at the instance or example levelexample level
Scenarios are used to represent paths of possible behavior Scenarios are used to represent paths of possible behavior through a use casethrough a use case
ValidationValidationAnimation Animation SimulationSimulationInspectionInspectionTest caseTest case
Animation Animation SimulationSimulationInspectionInspectionTest caseTest case
4
Introduction (cont’d)Introduction (cont’d)
Describe a Describe a methodmethod and and tooltool support for scenario-based support for scenario-based Requirements engineering that integrates with use case Requirements engineering that integrates with use case approaches to object-oriented development.approaches to object-oriented development.
Use Case
5
BackgroundBackground
Few methods advise on how to use scenarios in the Few methods advise on how to use scenarios in the process of requirements analysis and validation.process of requirements analysis and validation.
Provide more detailed advice about how scenarios Provide more detailed advice about how scenarios can be used in can be used in requirements validationrequirements validation..
Traceability (requirement management)Traceability (requirement management) DoorsDoors Requisite ProRequisite Pro
Requirement reuseRequirement reuse patternpattern
Rational RoseRational Rose
6
Method and Tool Support for Scenario-Based REMethod and Tool Support for Scenario-Based REHow
Use Case Model
7
Elicit and document use caseElicit and document use case Use case are elicited directly from userUse case are elicited directly from user The use case model is validated for correctness with respect to its The use case model is validated for correctness with respect to its
syntax and semanticssyntax and semantics Analyze generic problem and requirementsAnalyze generic problem and requirements
A library of reusable, generic requirements attached to models of A library of reusable, generic requirements attached to models of application classes is providedapplication classes is provided
Generic requirements are proposed at two levelGeneric requirements are proposed at two level General routines for handling different event patternsGeneral routines for handling different event patterns Requirements associated with application classes held in the Requirements associated with application classes held in the
repositoryrepository Generate scenarioGenerate scenario
Generate scenarios by walking through each Generate scenarios by walking through each possible event possible event sequencesequence in the use case in the use case
Each pathway becomes a scenarioEach pathway becomes a scenario Validate system requirements using scenariosValidate system requirements using scenarios
Generation is followed by tool-assisted validation which detects Generation is followed by tool-assisted validation which detects event pattern in scenario and presents checklists of generic event pattern in scenario and presents checklists of generic requirements that are appropriate for particular normal and requirements that are appropriate for particular normal and abnormal event patternsabnormal event patterns
Interactive dialogueInteractive dialogue
8
Schema for Scenario-Based Requirements ModelingSchema for Scenario-Based Requirements Modeling
Metaschema for modeling use cases and scenario based knowledge
9
ActionAction CognitiveCognitive PhysicalPhysical System-drivenSystem-driven communicativecommunicative
Each action has one start event and one end eventEach action has one start event and one end event
Action are linked through eight types of action-link rulesAction are linked through eight types of action-link rules
Each action involves one or more agents.Each action involves one or more agents.
Agents have user-defined properties that describe their Agents have user-defined properties that describe their knowledge and competenciesknowledge and competencies
10
Action-agent links are specified by an involvement Action-agent links are specified by an involvement relation that can be subtyped as {performs, starts, relation that can be subtyped as {performs, starts, ends, controls, responsible}ends, controls, responsible}
agentagent actionaction
PerformsPerforms
StartsStarts
EndsEnds
ControlsControls
responsibleresponsible
11
Tool Main FunctionTool Main Function Incremental specification of use cases and high-level system Incremental specification of use cases and high-level system
requirementrequirement The domain/use case modeler The domain/use case modeler
Automatic generation of scenarios from a use caseAutomatic generation of scenarios from a use case Scenario generator Scenario generator
Manual description of use cases and scenario from historical data of Manual description of use cases and scenario from historical data of previous system useprevious system use use case/scenario authoring componentsuse case/scenario authoring components
Presentation of scenario, supporting user-led walk-through and Presentation of scenario, supporting user-led walk-through and validation of system requirementsvalidation of system requirements Scenario presenterScenario presenter
Semiautomatic validation of incomplete and incorrect system Semiautomatic validation of incomplete and incorrect system requirements using commonly occurring scenario event patternsrequirements using commonly occurring scenario event patterns Requirements validator Requirements validator
12
Tool SupportTool Support
13
Use Cases SpecificationUse Cases Specification
The user specifies a use case using CREWS-SAVRE’s The user specifies a use case using CREWS-SAVRE’s domain and use case modeler components.domain and use case modeler components.
Software engineer specifies all actions in the domain, Software engineer specifies all actions in the domain, defines defines agentsagents, and , and objectsobjects linked to these actions, linked to these actions, assigns types to each action, and specifies permissible assigns types to each action, and specifies permissible action sequenceaction sequence using action-link rules. using action-link rules.
A use case acts as a container of domain information A use case acts as a container of domain information relevant to the current scenario analysisrelevant to the current scenario analysis
Actions are defined by Actions are defined by ev(startA) < ev(endA) and ev(startB) < ev(endB)ev(startA) < ev(endA) and ev(startB) < ev(endB)
14
Action-link ruleAction-link rule Strict sequence (A then B)Strict sequence (A then B)
Part sequence (A meanwhile B)Part sequence (A meanwhile B)
Inclusion (A includes B)Inclusion (A includes B)
Concurrent (A and B)Concurrent (A and B)
Alternative (A or B)Alternative (A or B)
Parallel and equal (A parallel B)Parallel and equal (A parallel B)
Equal-start (A starts-with B)Equal-start (A starts-with B)
Equal-end (A ends-with B)Equal-end (A ends-with B)
15
Checking the Use Case SpecificationChecking the Use Case Specification
Validation rules check the integrity of the Validation rules check the integrity of the relationshipsrelationships <model component1, relationship-type, model component2><model component1, relationship-type, model component2>
Validation checks are carried out by clusters of Validation checks are carried out by clusters of rules, called rules, called validation-framesvalidation-frames which are composed which are composed of two parts.of two parts. Structural patternStructural pattern requirementrequirement
Frames are used for validating the consistency of Frames are used for validating the consistency of use case models against the use case models against the schemaschema
16
Using Application Classes to Identify Generic RequirementUsing Application Classes to Identify Generic Requirement
A library of application classes, termed A library of application classes, termed object object system models (OSMs)system models (OSMs) has been has been developeddeveloped and and validatedvalidated in our previous work on computational in our previous work on computational models of analogical structure matching.models of analogical structure matching. OSMs are organized in 11 families and describe a wide OSMs are organized in 11 families and describe a wide
variety of application classes.variety of application classes.
Each OSM is composed of a set of cooperating Each OSM is composed of a set of cooperating objectsobjects, , agentsagents and and actionsactions that achieve a goal, that achieve a goal, so they facilitate reuse at the system level rather so they facilitate reuse at the system level rather than as isolated generic classes.than as isolated generic classes.
17
Scenario GenerationScenario Generation
This stage generates one or more scenarios from a This stage generates one or more scenarios from a use case specificationuse case specification
The scenario generation algorithm reduces this The scenario generation algorithm reduces this space by first determining the space by first determining the legallegal sequencessequences of of actionaction
18
Scenario GenerationScenario Generation
19
Scenario ValidationScenario Validation User-led walkthroughUser-led walkthrough Semiautomatic validation of requirements through the application of Semiautomatic validation of requirements through the application of
pattern matching algorithms to each scenariopattern matching algorithms to each scenario
20
21
ConclusionConclusion
22
RRational ational UUnified nified PProcessrocess PhasesPhases
InceptionInception ElaborationElaboration ConstructionConstruction TransitionTransition
DisciplinesDisciplines Business ModelingBusiness Modeling RequirementsRequirements Analysis & DesignAnalysis & Design ImplementationImplementation TestTest DeploymentDeployment
Configuration & Change ManagementConfiguration & Change Management Project ManagementProject Management EnvironmentEnvironment
IterativeIncremental
IterativeIncremental