Beruflich Dokumente
Kultur Dokumente
Introduction to
Use Case Maps
Table of Contents
Requirements & Software Engineering Issues
Introduction to Use Case Maps
UCM Usage
– Requirements Capture
– Architectural Evaluation
– Transformations to Designs and Tests
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 3
Requirements Engineering
Issues
Early focus on low-level abstractions
Requirements and high-level decisions buried
in the details
Evolution of functionalities difficult to handle
(feature interactions, V&V, adaptability to
legacy architectures...)
Delay introduction of new services
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 4
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 5
Table of Contents
Requirements & Software Engineering Issues
Introduction to Use Case Maps
UCM Usage
– Requirements Capture
– Architectural Evaluation
– Validation and Feature Interaction Detection
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 6
secure take
ready commute
home elevator
to in
leave X X X cubicle
home
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 8
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 9
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 10
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 11
stay
home
Dynamic Stub Static Stub
(selection policy)
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 12
transport
drive car
X
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 13
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 14
UCM Notation -
Dynamic Structures
Generic UCM Example
slot A Slot
create create (component)
start
+
+
pool A move out
slot B
+
move into move into
copy Pool
- (component)
destroy pool B
-
end
destroy
Dynamic Responsibilities and Dynamic Components
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 15
Table of Contents
Requirements & Software Engineering Issues
Introduction to Use Case Maps
UCM Usage
– Requirements Capture
– Architectural Evaluation
– Validation and Feature Interaction Detection
– Transformations to Designs and Tests
Standardization
Research Issues
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 16
in [requested]
add to list
elevator motor
no requests stop
door
[more requests] open
[else] door remove
at requested closing-delay from list
floor
The elevator control system case study is adapted from Arrival Sensor
Hassan Gomaa's Designing Concurrent, Distributed,
And Real-Time Applications with UML (p459-462),
copyright Hassan Gomaa 2001, published by Addison approaching
Wesley. Used with permission. floor
Select Destination
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 17
Table of Contents
Requirements & Software Engineering Issues
Introduction to Use Case Maps
UCM Usage
– Requirements Capture
– Architectural Evaluation
– Validation and Feature Interaction Detection
– Transformations to Designs and Tests
Standardization
Research Issues
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 18
User Scheduler
down [requested] Arrival Sensor
up [not requested]
moving approaching
select floor
at floor elevator
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 19
User
Status&Plan
down
up Scheduler [not requested] [requested]
select
elevator Arrival Sensor
at floor Elev. Control
already approaching
on list moving floor
below Elev. Mgr
above [on list]
decide on Elevator
in direction
elevator [else] door
close
Status&Plan
stationary-
add to memory
list
at requested
floor door motor
closing- up
delay motor
remove down
from list
Service Personnel
switch on motor
stop
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 20
Table of Contents
Requirements & Software Engineering Issues
Introduction to Use Case Maps
UCM Usage
– Requirements Capture
– Architectural Evaluation
– Validation and Feature Interaction Detection
– Transformations to Designs and Tests
Standardization
Research Issues
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 21
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 22
Feature Interaction
Conflict between candidate plug-ins for the same
stub (preconditions of plug-ins are the same)
– Call waiting (CW) vs. automatic re-call (ARC)
ORIG TERM
in out
CW ARC
busy out busy out
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 24
Feature Interaction
Unexpected behavior among different selected plug-
ins for different stubs (postconditions of plug-ins are
not the same)
– Originating call screening (OCS) denies call whereas call
forward (CF) redirects call to screened number
ORIG TERM
in out
OCS CF
in deny in redirect
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps
Page 25
© 2001 Bridging the Gap Between Requirements and Design with Use Case Maps