Upload
hafiz-hasanov
View
515
Download
3
Embed Size (px)
DESCRIPTION
Citation preview
Software Architecture EvaluationHafiz Hasanov
Horst Lichter, Software Construction, RWTH Aachen [email protected]
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!