Saftware Architecture evaluation

Post on 05-Dec-2014

514 views 3 download

description

 

Transcript of Saftware Architecture evaluation

Software Architecture EvaluationHafiz Hasanov

Horst Lichter, Software Construction, RWTH Aachen Universityhorst.lichter@swc.rwth-aachen.de

Introduction

Benefits vs. Costs

Challenges

Quality of SA

Classification

Some methods introduced

1

Software Architecture(SA) evaluation is a means to achieve SA quality.

Verify quality attributes Identify risks Choose between alternative SA-s Product line potential

2

SA evaluation

3

Benefits Helps to detect poor design decisions early Positively affects the communication between stakeholders Filters out some possible defects and/or unclear specifications from SA

documentation

Costs Additional effort and recourses Expert evaluation team members

Benefits vs Costs

4

Stakeholders‘ involvement

Challenges

Expert team members

5

Quality of SA

The quality of a SA is measured by its relevance to project non-functional requirements.

6

Performance Usability Reliability Security Modifiability Sustainability Adaptability

Example quality attributes

7

Early evaluation methods Scenario-based Mathematical model-based Simulation-based Experience-based

Late evaluation methods Metrics-based Tool-based

Early vs. Late

8

Questioning(Qualitative) Scenarios Questionnaires Checklists

Measuring(Quantitative) Metrics Prototypes, simulations, experiments

Questioning vs. Measuring

9

Aims to verify the SA against architectural approaches like design principles and architectural styles.

Early evaluation

Scenario-based method

Questioning method

SAAMSoftware Architecture Analysis Method

Investigation &Analysis

1. Present the ATAM

2. Present business drivers.

Present architecture.

Identify architectural approaches.

Generate quality attribute utility tree

Analyze architectural approaches

Brainstorm & prioritize

Analyze architectural approaches

Present results

10

Reveals the sensitivity points, trade-off points and potential risks.

Early evaluation

Scenario-based

Questioning technique

ATAMArchitecture Trade-off Analysis Method

Presentation

Testing

Results

SBAR aims to iteratively reengineer the SA which best suits the quality requirements.

Early evaluation

Questioning or

Measuring technique.

11

SBARScenario Based Architecture Reengineering

SBAR aims to iteratively reengineer the SA which best suits the quality requirements.

Early evaluation

Questioning or

Measuring technique. Scenario-based Mathematical model-based Simulation-based Experience-based

12

SBARScenario Based Architecture Reengineering

SBAR aims to iteratively reengineer the SA which best suits the quality requirements.

Early evaluation

Questioning or

Measuring technique.

13

SBARScenario Based Architecture Reengineering

Impose architectural style Impose architectural pattern Apply design pattern Convert non-functional

requirements to functionality Distribute requirements

14

Aims at assessing the modifiability of an SA. ALMA needs to be complemented with other methods for complete evaluation of the SA.

Early evaluation.

Scenario-based method.

Questioning technique might also include measuring activities.

ALMAArchitecture-Level Modifiability Analysis

• Maintenance cost prediction

• Risk assessment• Alternative SA-s

Goal setting

• Modifiability related view

SA respresentation

• Dependent on goal of evaluation

Change scenarios elicitation

• Direct components• Nature of effects• Ripple effects

Change scenarios evaluation

• Analysis• Visualization

Interpreting results

Set of quality attributes are

chosen

Guidelines and respective metrics

Planned SA Actual SA

Deviations

Recommendations to recover

15

Late evaluation method, which aims to prevent the SA from deviation during implementation.

Late evaluation.

Measuring technique.

Tvedt et al’s method

16

Questions?

Thank you!