Professional Documents
Culture Documents
Early Identification of Unsatisfactory Software Architecture
Early Identification of Unsatisfactory Software Architecture
Early Identification of Unsatisfactory Software Architecture
By:
Mohammed Faisal
Lecturer-IT
Nizwa College of Technology
Philosophy of this research paper
Requirements
definition
System and
software design
Implementa tion
and unit testing
Integration and
system testing
Maintainability
Portability
Reusability Developer’s view
Testability
ATAM Steps
Evaluators and decision makers Present
ATAM
Business drivers
Architecture
Identify architectural approaches
Generate quality attribute utility tree
Analyze architectural approaches
• Outputs
- utility tree
- scenarios
- risks and “non-risks”
- sensitivity points and tradeoffs
Present the Architecture
Architect presents an overview of the architecture
including (for example):
-High availability
-Time to Market
-High Security
Identify Architectural Approaches
Select the most important quality goals to be the high-level nodes (typically
performance, modifiability, security, and availability)
COTS : Commercial Off-The-Shelf - describes software or hardware products that are ready-made and
available for sale to the general public.
Sensitivity & Tradeoffs
Stakeholders will join form this step.
Sensitivity:
A property of a component that is critical to success of system.
Tradeoff point:
A property that affects more than one attribute or sensitivity point.
Risk
The decision to keep backup is a risk if the performance cost
is excessive
Non Risk
The decision to keep backup is a non-risk if the performance
cost is not excessive
Brainstorm & Prioritize Scenarios
Utility tree.
Set of Scenarios.
Risks and “non-risks”
Sensitivity points and tradeoffs.
Conclusion
Risk and non-risk issues will be identified
Chance to resolve the risk and change the architectural plan in order
to achieve satisfactory performance.