using the user requirements notation
DESCRIPTION
ITU-T Workshop on the "Use of Description Techniques". Using the User Requirements Notation. Daniel Amyot Q.18/17 Rapporteur SITE, University of Ottawa, Canada [email protected]. About this presentation. What is the User Requirements Notation (URN)? What can we model with URN? - PowerPoint PPT PresentationTRANSCRIPT
SCHOOL OF INFORMATION TECHNOLOGY AND ENGINEERING
UNIVERSITY OF OTTAWA, CANADA
Daniel AmyotQ.18/17 Rapporteur
SITE, University of Ottawa, Canada
Using theUser Requirements Notation
ITU-T Workshop on the "Use of Description Techniques"
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 2
About this presentation
What is the User Requirements Notation (URN)?
What can we model with URN? What answers can these models
provide? What are the typical/potential usages?
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 3
URN – Main objectives
Focus on early stages of development with goals and scenarios
From user requirements to system functional and non-functional requirements
No messages, components, or component states required
Reusability– of argumentations (goal patterns and analysis)– of scenarios (patterns and architectural alternatives)
Early performance analysis Traceability and transformations to other languages
– Particularly MSC, SDL, TTCN, and UML
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 4
Current Proposal for URN
Draft documents for Z.150, Z.151, Z.152 Combined use of two complementary
notations:– Goal-oriented Requirement Language (GRL) for
NFRs (http://www.cs.toronto.edu/km/GRL/)– Use Case Maps (UCM) for Functional
Requirements (http://www.UseCaseMaps.org/) Create ITU-T standard by end of 2003 http://www.UseCaseMaps.org/urn/
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 5
?
?MSC, UML Use
Case Diagram & Activity Diagram
Informal Requirements,
Textual Use Cases
URN — Missing Piece ofthe Modelling Puzzle?
UCMs link to operationalizations
(tasks) in GRL models
Structural Diagrams
SDL, eODL, or UML class, object,
component, & deployment
diagrams
Testing and Performance Languages
TTCN, LQN, ...
Behavioral DiagramsMSC/SDL, or UML
sequence, collabor., & statechart diagrams
UCMs represent visually use cases in terms of causal
responsibilities
UCMs provide a framework for
making high level and detailed
design decisions
UCMs visually associate
behavior and structure at the
system level
URN-FR / UCMsSuperimpose visually system level behavior onto structures of abstract components. Can
replace UML use case & deployment diagams.
URN-NFR/GRLGoals, non-functional requirements, alterna-
tives, rationales
DataASN.1 whereappropriate
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 6
GRL in a Nutshell
Goal-oriented Requirement Language– graphical notation– connects requirements of requirements to
business objectives– allows reasoning about (non-functional)
requirements GRL models the “why” aspect
– objectives, alternatives, as well as decision rationale
– no operational details Supports goal analysis and evaluations
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 7
Basic GRL Notation
Means-End
PasswordCardkey Biometrics
Correlation(side-effect)
Cost ofTerminal
Belief
Argumentation
Biometrics is noregular off-the-shelf
technology
Goal
Decomposition(AND)
IdentificationAuthentication
Task
Make..Access
Authorization Encryption
?Break Hurt Some- Unknown
Make Help Some+ Equal
Contribution
Security ofHost
Security ofTerminal
Softgoal SystemSecurity
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 8
Evaluations with GRL
..
PasswordCardkey Biometrics
Identification
Cost ofTerminal
Biometrics is noregular off-the-shelf
technology
AccessAuthorization Encryption
Authentication
Satisficed
Weakly Satisficed
Undecided
Weakly Denied
Denied
Security ofHost
Security ofTerminal
SystemSecurity
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 9
UCMs in a Nutshell
Use Case Maps– graphical scenario notation – causal relationships between responsibilities– scenario elements may (optionally) be allocated to
components UCMs model the “what” aspects
– functional requirements as scenarios– integration and reusability of scenarios– guidance for architecture and detailed behaviour
Performance analysis, conflict detection
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 10
Component
StartPoint
End Point
Responsibility
Stub
AND-Fork
Pool
a) Root UCM
Slot
b) Biometrics Plug-In c) PassWord Plug-in
Timer
OR-Fork
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 11
GRL - UCM Relationship Goal-based approach
– Focuses on answering “why” questions Scenario-based approach
– Focuses on answering “what” questions Goals are operationalized into tasks and
tasks are elaborated in (mapped to) UCM scenarios– Focuses on answering “how” questions
GRL goals can guide the selection of a particular architecture for the UCM scenarios
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 12
Typical Usage of URN Modelling and documentation
– User and system requirements, rationales Analysis of business goals
– Evaluations of alternative requirements or solutions– Discovery of tradeoffs that can optimize the
stakeholders’ degree of satisfaction for conflicting goals Architecture analysis
– Based on NFRs and design constraints– Performance analysis
Generation of individual scenarios– Training, documentation– Detection of conflicts– Transformation to MSC and test cases
Reverse-engineering
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 13
Experiences with GRL Used on industrial projects
– New family of Web-based telephone sets– Documentation of discussions involving multiple
stakeholders– Visualization and analysis of conflicting goals– Evaluation of architectural solutions, and rationales for the
retained solution– Proved to be very helpful for keeping discussions on track
and for avoiding repeating the same discussions over and over again.
– Accelerated the reaching of an agreement and – Improved (short-term and long-term) understanding.
Used in academic projects– Security applications– Web-based systems (in combination with UCMs)– Architectural/performance tradeoffs at a qualitative level
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 14
Performance Engineering with UCMs
Response TimeRequirement• From T1 to T2• Name• Response time• Percentage
Security E_Accountant
ReadyContinueCheckBio
TaxPayer
Access
T1
Timestamp
T2
Device Characteristics• Processors, disks, DSP, external services…• Speed factors
Rejected
ArrivalCharacteristics• Exponential, or• Deterministic, or• Uniform, or• Erlang, or• OtherPopulation size
Responsibilities•Data access modes•Device demand parameters
•Mean CPU load (time)•Mean operations on other devices
OR Forks• Relative weights (probability)
Components• Allocated responsibilities• Processor assignment
Automated translation to Layered Queuing Networks (LQNs), for analytical evaluations and simulations.
Being applied to industrial case studies.
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 15
UCM Scenario Definitions and Path Traversal (Highlight)
Extraction of individual scenarios
Conditions attached to selection points
Initialization of Boolean variables, and selection of start points
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 16
Tool Support: UCMNav 2.1
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 17
From UCM Requirements to More Detailed Design Models Requires:
– Path Data Model (global Booleans variables)
– Scenario Definitions– Path Traversal Mechanism– Mapping Rules (MSC, UML,
TTCN, LQN, LOTOS...)
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 18
MSC
call origination
locreq [TERMLIST]
routreq [TLDN]
call setup
LRT
RRTRRT
TLDNAT
HLR VLRSCP MS
LOCREQ [DGTSDIAL, TRANSCAP]
MSC
SERVREQ [SRVID, DGTSDIAL]
SVRT servreq [ACTCODE, ALRTCODE]
ROUTREQ [MIN, ALRTCODE]
ROUTREQ [MIN, ALRTCODE]
call setup [ALRTCODE]
routreq [TLDN]
Originating System Serving System
g
h
i
j
a
b
c
d
e
f
k
ICS invocation with Normal Termination and Distinctive Alerting
Experiences with TIA’s Wireless Intelligent Network
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 19
IncomingCall(IC)
CallSetup(CS)
CallBlocked(CB)
Screening (S)
NormalAlerting (NA)
PlayBlockAnnounce (PBA)
Simplified UCM for Incoming Call Screening
WIN Phase 1 covers three major services:• Calling Name Presentation (CNAP)• Incoming Call Screening (ICS)• Voice Controlled Services (VCS)
The following ICS Use Case Map is for illustration purpose.
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 20
FE1
FE5
FE6
FE1
FE2
FE3
FE4
FE1
FE2
(a) First Structure (b) Second Structure (c) Different Mapping of UCM
FE3
FE4
CS
S
IC
CB PBANA
CS
IC
CB PBANA
S
IC
S
CB PBA
CS NA
Incoming Call Screening Scenario on Functional Entities
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 21
NE1
FE1
NE3
FE3
NE2
FE2
NE4
FE4
NE1
FE1
NE3
FE3
NE2
FE2
FE4
NE1
FE1
NE3
FE2
(a) First Structure (b) Second Structure (c) Different Mapping of FEs
NE2
FE3
FE4
Binding Functional Entities to Network Entities
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 22
NE1
FE1
NE3
FE2
NE2
FE3
FE4
CS
S
IC
(a) UCM to FEs to NEs
CB PBANA
NE1 NE2 NE3
IC
CS
m2m1
NE1 NE2 NE3
CB
IC
m2m1
m4
(b) A MSC for <IC,S,NA,CS> (c) A MSC for <IC,S,PBA,CB>
m3
m5
S
NA
S
PBA
Refinement with MSC
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 23
CallBlocked
Announcement
Routing
IncomingCall
CallSetup
VoiceMail
CallForwarded
Req
Chk
Loc
Blk PBA
NADA
NbVM
SF
CF
HLRLRFH
MSC MACF
CCF
SRFIP
SCPSDF
SCF
SRF
SSF
SCF
LegendBlk : Blocking
Chk : Check
CF : CheckFunction
DA : DistinctiveAlerting
NA : NormalAlerting
Nb : Number
PBA : PlayBlockAnnounce
Req : Request
SF : ScreeningFunction
VM : VoiceMail
Loc : Location
Plug-in UCM for ICS+
+
+
+
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 24
Coming soon…
URN-oriented Reverse-Engineering– UCMs for reverse-engineering already popular. – Can cope with very complex systems
UCM to UML scenarios UCM to TTCN test cases URN and Requirements Management UCM and Requirements-based Design (synthesis)
– Already a tool-support mapping to LOTOS
Socket
Logic
SendMsg
MsgSentToTool
ProcessMsg MsgToTool
GetRequest
SendMsg
LogicLayerLogicLayerLogicLayer
SocketLayerSocketLayerSocketLayer
BufferLayerBufferLayerBufferLayer
FILE ScenarioMessage48
6
1
18
34
9
32
1
8
32
MsgSentToTool
ProcessMsg MsgToTool
GetRequest
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 25
Conclusions URN
– Allows engineers to specify or discover requirements for a proposed system or an evolving system, and review such requirements for correctness and completeness.
– Is usable in industry and in standardization bodies– Combines goals and scenarios– Helps bridging the gap between informal and formal concepts, and
between requirements models and design models– Big benefits for little modelling investment, even when used
informally GRL
– For incomplete, tentative, (non-functional) requirements– Capture goals, objectives, alternatives and rationales
UCM– For operational and functional requirements– Enables analysis and transformations– Architectural alternatives and dynamic systems
URN, ITU-T Workshop on the "Use of Description Techniques", November 23, 2002 26
7th Feature Interaction WorkshopOttawa, June 9-11, 2003
http://www.site.uottawa.ca/fiw03/
Submission deadline: December 9