antony tang 1, ann nicholson 2, yan jin 1, jun han 1 1 faculty of ict, swinburne university of...

21
Antony Tang 1 , Ann Nicholson 2 , Yan Jin 1 , Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering, Monash University Using Bayesian Belief Networks for Change Impact Analysis in Architecture Design

Post on 18-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 2: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 3: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 4: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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)

Page 5: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 6: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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?

Page 7: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 8: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 9: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 10: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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)

Page 11: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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 ……

Page 12: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 13: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 14: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

Faculty of ICT Page 14

Diagnostic Reasoning

Insert Evidence,Say single pass design was to change

Page 15: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 16: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

Faculty of ICT Page 16

AREL Tool Set – Extract UML Model into BBN

Page 17: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

Faculty of ICT Page 17

AREL Tool Set – Merge UML and BBN Changes

Page 18: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 19: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 20: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

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

Page 21: Antony Tang 1, Ann Nicholson 2, Yan Jin 1, Jun Han 1 1 Faculty of ICT, Swinburne University of Technology 2 School of Computer Science and Software Engineering,

Faculty of ICT Page 21

Thank you.