Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of...
-
date post
18-Dec-2015 -
Category
Documents
-
view
215 -
download
0
Transcript of Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of...
Antony Tang1, Ann Nicholson2, Yan Jin1, Jun Han1
1Faculty of ICT, Swinburne University of Technology2School of Computer Science and Software Engineering,Monash University
Using Bayesian Belief Networks for Change Impact Analysis in Architecture Design
Faculty of ICT Page 2
Presentation Outline
Background and Objectives Architecture Design Rationale and Decisions Architecture Rationale and Elements Linkage (AREL) Applying Bayesian Belief Networks to AREL Predicting Change Impacts in Architecture Design Tool Support Conclusions and Future Work
Faculty of ICT Page 3
Background
There has been little emphasis on the decision making process on software architecture design.
Design Rationale (DR) as a result of a decision is often not captured
Even when DR is captured, it is often difficult to explain how decisions relate to and affect the architecture design
Change impact cannot be systematically reasoned or explained during the maintenance phase
It is difficult to quantify the impact of changes in requirement, design or decision
Faculty of ICT Page 4
What is Design Rationale
a reason or an intention for a particular set of thoughts or actions (Cambridge Dictionary)
reasons to express the purposes of the designed artefacts with their contextual constraints on realising the purposes (Moran and Carroll 1996)
recording the history of how a design comes about through recording logical reasoning to support future reference (Conklin and Burgess-Yakemovic 1996)
Faculty of ICT Page 5
Architecture Design Decisions
Early Decision Making Consider Multiple Factors including Functional
Requirements, Non-Functional Requirements and Environmental Factors
Consider Different Perspectives and Viewpoints Directly and Indirectly Influence the Design Structure of
the System Create / Modify Design Elements to Satisfy System
Goals / Sub-goals
Faculty of ICT Page 6
Problem Statements
How to capture design rationale and represent architecture design decisions in relation to design artefacts?
What is the change impact to the system when one or more requirements, designs or decisions are to change?
Faculty of ICT Page 7
Architecture Design Rationale and Design Elements (AREL)
Architecture Elements (AE) are requirements and design elements in an Architecture. They are grouped by Architecture Viewpoints (Business, Information, Computation and Engineering)
A Design Decision Point is supported by Architecture Rationale (AR) which comprises Qualitative Rationale, Quantitative Rationale and Alternative Architecture Rationale
Qualitative Rationale (QuR) contains constraints, assumptions, arguments, risks & non-risks, weakness and benefits
Quantitative Rationale (QaR) contains measurements of costs, benefits and risks relative to alternative designs
Alternative Design Rationale contains QuR and QaR for alternative designs
ARs are related to AEs through a causal relationship
Faculty of ICT Page 8
A Simple AREL Structure in UML Notation
<<AE>>
<<AR>>
<<AE>>
AE and AR Dependency
<<ARtrace>>
<<ARtrace>>
Design Rationale Encapsulation
<<AAR>>
QualitativeRationale
QuantitativeRationale
QualitativeRationale
QuantitativeRationale
AlternativeDesign &Use Cases
Faculty of ICT Page 9
An AREL Example
Input AEs into AR1
Decision supported by AR1
AE as Outcome of AR1
Input AEs into AR3
Decision supported by AR3
Outcome AE of AR3
Note: UML Drawings are created by Enterprise Architect
Faculty of ICT Page 10
Applying Bayesian Belief Networks to AREL
• Causal Relationship of a decision set AE-AR-AE
• AE states: Stable / Volatile (indicate the volatility of a requirement or a design object)
• AR states: Valid / Invalid (indicate the validity of a decision)
•Root node AE1 contains Prior Probabilities
•AR1 is conditionally dependent on AE1 (specified by conditional probabilities)
• AE2 is conditionally dependent on AR1 (specified by conditional probabilities)
Faculty of ICT Page 11
An Example Using Cheque Image Clearing
RequirementANSI Std X9.37,X9.46
RequirementsBundling/reconciling
Requirement25000 checks/min
RequirementNo loss/No duplicate
DecisionSingle-pass processing
DesignSingle-pass presentment design
R1.0 R2.0 R12.0 R11.0 P(AR1=V|R1.0,R2.0,R12.0,R11.0)
S S S S 1.0
S S S V 0.9
S S V S 0.9
S V S S 0.8
more ……
Faculty of ICT Page 12
An Example Using Cheque Image Clearing (cont’d)
Decision AR2Select multi-nodes overLarge single node
DesignDual-Node designDecision AR3
Use Fail-over mechanism
DesignDesign for Fail Over Recovery
DecisionSelect Checkpoint Recovery over Full File Recovery
DesignDesign for Checkpoint Recovery
Faculty of ICT Page 13
Predicting Change Impacts
Insert Evidence,Say single node
Decision based ondual-node no longer valid
Node Recovery has to change
Checkpoint decisionmay / may not be affected
Faculty of ICT Page 14
Diagnostic Reasoning
Insert Evidence,Say single pass design was to change
Faculty of ICT Page 15
Tool Support
UML Package (e.g. Enterprise Architect) to capture and represent AEs and ARs
Capture Quantitative and Qualitative Rationale Capture Requirements, Information, Design and Deployment Models Relate them using <<ARtrace>> association
BBN Package (e.g. Netica) to Quantify Causal Relationship Capture Prior probabilities for root nodes Capture Conditional Probability Tables for other nodes Compute Joint Probabilities
AREL Tools: Check Directed Cycle Extract UML Model into BBN Merge the model modifications in the two tool-sets
Faculty of ICT Page 16
AREL Tool Set – Extract UML Model into BBN
Faculty of ICT Page 17
AREL Tool Set – Merge UML and BBN Changes
Faculty of ICT Page 18
Conclusions & Future Work
AREL defines a causal relationship between architecture elements and decisions (supported by architecture rationale)
Apply BBN to AREL to quantify the strength of the causal relationships between architecture elements and decisions
This application enables Tracing of design rationale with requirements and design artefacts Estimate change impacts / diagnose design reasoning using BBN
Further Considerations Semi-objective probability estimations based on experience Costs-benefits of applying the method
Future Work Apply utility function to estimate expected cost of maintenance
Faculty of ICT Page 19
Related Work
Zhang & Jarzabek, “A Bayesian Network Approach to Rational Architectural Design”, International Journal of Software Engineering and Knowledge Engineering, Vol. 15, No. 4 (2005) 695-717
Possible designs
Design Outcomes
Faculty of ICT Page 20
Related Work (Cont’d)
Characteristics of Zhang and Jarzabek’s work Model different combinations of design choices Use BBN to calculate the quality of the configuration of the
architecture for selecting an architecture design
Differences to Our Work Decision making is an incremental process The design rationale behind a decision is based on many
considerations, encapsulated in a decision node The architecture design is modelled in a series of causes and
effects to represent what has been decided Use the BBN model for analysing change impact
Faculty of ICT Page 21
Thank you.