Regular Extrapolation of Behavioural Models Regular Extrapolation of Behavioural Models
Treating Systems Lacking SpecificationTreating Systems Lacking Specification
Bernhard SteffenAndreas HagererHardi HungarOliver NieseTiziana Margaria
Bernhard Steffen Turku 19.-30.8.2002
Moderated, Regular ExtrapolationModerated, Regular Extrapolation
Extrapolation
Hypothesis Building beyond known facts
Regular
Extrapolation-Universe: Extended Finite Automata
Moderated
The Extrapolation Process requires targeted
interaction
Bernhard Steffen Turku 19.-30.8.2002
PlanPlan
1st Lesson: Systems Lacking Specification
2nd Lesson: Controlling the State Space
3rd Lesson: Integrating Expert Knowledge
4th Lesson: Validation and Diagnosis
5th Lesson: Perspectives
Bernhard Steffen Turku 19.-30.8.2002
PlanPlan
1st Lesson: Systems Lacking Specification
Application Scenario: CTI Systems
Computer/Telephony Integrated Systems
Model Construction by Extrapolation
2nd Lesson: Controlling the State Space
3rd Lesson: Integrating Expert Knowledge
4th Lesson: Validation and Diagnosis
5th Lesson: Perspectives
Bernhard Steffen Turku 19.-30.8.2002
Computer/Telephony Integrated SystemsComputer/Telephony Integrated Systems
ISDNNetwork
Switch
Model-Generator
Applikations-PCs
Applikation-Server
LAN
Bernhard Steffen Turku 19.-30.8.2002
In more Detail In more Detail
LAN
Model Generator
Call Center Clients
Call Center Server
CSTA II/III
TAPI
TAPI
Rational RobotRational Robot
Intranet/Internet
Hipermon
HUSIM
CorNet
ISDNNetwork
Bernhard Steffen Turku 19.-30.8.2002
Models in our ScenarioModels in our Scenario
AbstractAbstract representation of the protocol-level behaviour.
Abstraction typically concerns – concrete names of entities:
replace ”102”, ”500” by A1 , A2– details like time stamps etc.
{ invokeID = 58391,
operation-value = 21 (cSTAEventReport),
{eventSpecificInfo. ... .hookswitch
{deviceId.dialingNumber = “500”
hookswitchOnHook= TRUE,
...
timestamp = “20001010095551”
} }}}
{obsEvent
deviceId = A1
switchOnHook,
...
}}
Bernhard Steffen Turku 19.-30.8.2002
Sketch of the Model Structure Sketch of the Model Structure
Models comprise state changes as well as UPN-UPN- and
CSTA-ObservationsCSTA-Observations.
Sys_Info
Sys_Info
obs_CSTA
obs_CSTAupnOffHook
obs_CSTA
obs_CSTA
{
{deviceId = A1 hookswitchOnHook,
...
}}
device A1 display(line 1, ...) LEDs: (1,on) (2,off) ......
Bernhard Steffen Turku 19.-30.8.2002
A First Practical ModelA First Practical Model
Bernhard Steffen Turku 19.-30.8.2002
Conceptual Model Structure:Conceptual Model Structure: MIOLKTSMIOLKTS
Modal: for loose specification
Input: must always be enabled
Output: is system-controlled
Labelled: complex annotations
Kripke: state-oriented
Transition Systems: action-oriented
Bernhard Steffen Turku 19.-30.8.2002
Iterative Model ConstructionIterative Model Construction
Collection
Refinement
Validation
Abstraction
Folding
Bernhard Steffen Turku 19.-30.8.2002
Model before FoldingModel before Folding
Bernhard Steffen Turku 19.-30.8.2002
AbstractionAbstraction
Abstraction of Instances:
From concrete objects to roles
Hiding:
Suppression of unimportant details
Partial Order Reduction:
Flexibilization of action sequencing
Bernhard Steffen Turku 19.-30.8.2002
Partial Order ReductionPartial Order Reduction
Independent actions commute:
– Model Completion
– Size Reduction
offHook_A
onHook_A
offHook_B
onHook_B
offHook_A
offHook_B
onHook_A
onHook_B
offHook_B
offHook_A
onHook_A
onHook_B
Bernhard Steffen Turku 19.-30.8.2002
FoldingFolding
State-oriented:
based on similarity of state descriptions
Path-oriented:
based on similar behavioural options
Model Collapse:
based on similar behavioural properties
Bernhard Steffen Turku 19.-30.8.2002
State-Based Folding State-Based Folding
=
Bernhard Steffen Turku 19.-30.8.2002
RefinementRefinement
Property-Oriented Expansion:
separates states
Synthesis-based Model Expansion:
enriches the behavioural potential
Regression-Expansion:
lifts the level of detail
Bernhard Steffen Turku 19.-30.8.2002
Property-Oriented ExpansionProperty-Oriented Expansion
Example: Feature Group Call
AB AB
BB
AB
B+C, B-C
C: Call AC: --
AB
B
B-C
C: --
AB
B
AB
C: Call A
B+C
AB
Bernhard Steffen Turku 19.-30.8.2002
Reference Model
device A1 display(line 1, ...) LEDs: ... (8,off) ...
...
Regression ExpansionRegression Expansion
Effect: More detailed test evaluation
Test Graph
check-Display
passed failed
Effect
056784 >an h?
Bernhard Steffen Turku 19.-30.8.2002
Error DiagnosisError Diagnosis
Scenario: Regression Test
• Model refines the test
• improved error diagnosis
??Test Run
upnDigitobsEvent1 obsEvent2
checkDisplay
Modelpath
queuedEvent
upnDigit checkDisplayobsEvent obsEvent
Bernhard Steffen Turku 19.-30.8.2002
ValidationValidation
Branch Completion:
Comparison of the branch potential
Cycle Identification:
Refinement of the folding approach
Model Checking:
Validation of (temporal) constraints
Bernhard Steffen Turku 19.-30.8.2002
Goal-Oriented TestingGoal-Oriented Testing
Model ValidationValidation and CompletionCompletion with automatic consistency checks
??Cycle ValidationCycle Validation
??Branch CompletionBranch Completion
Bernhard Steffen Turku 19.-30.8.2002
Usage of extrapolated ModelsUsage of extrapolated Models
Test Generation
Investigation of Coverage
Test Evaluation
Monitoring
Simulation and Validation
Change ManagementChange Management
Bernhard Steffen Turku 19.-30.8.2002
Typical MethodsTypical Methods
Program and Data Flow Analysis
Abstract Interpretation
Model Checking
Model Synthesis
Machine Learning
Bernhard Steffen Turku 19.-30.8.2002
ConclusionsConclusions
`Classical´ validation and analysis methods become
available for Legacy-Systems.
Precision or Completeness is unnecessary for practical
usage.
Model Construction automatically extends Expert
Knowledge.
Also here: The `Waterfall´ becomes an iterative
process.
Bernhard Steffen Turku 19.-30.8.2002
PlanPlan
1st Lesson: Systems Lacking Specification
2nd Lesson: Controlling the State Space
The State Explosion Problem
Abstraction and Projection
Concise Representations
3rd Lesson: Integrating Expert Knowledge
4th Lesson: Validation and Diagnosis
5th Lesson: Perspectives