Architecture tradeoff analysis method: Difference between revisions

Content deleted Content added
No edit summary
mNo edit summary
 
(3 intermediate revisions by 3 users not shown)
Line 1:
{{Short description|Risk-mitigation process in software engineering}}
In [[software engineering]], '''architectureArchitecture tradeoffTradeoff analysisAnalysis methodMethod''' ('''ATAM''') is a risk-mitigation process used early in the [[software development life cycle]].
 
ATAM was developed by the [[Software Engineering Institute]] at the [[Carnegie Mellon University]]. Its purpose is to help choose a suitable [[Software architecture|architecture]] for a software system by discovering [[trade-off]]s and sensitivity points.
 
ATAM is most beneficial when done early in the software development life-cycle, when the cost of changing architectures is minimal.
 
== ATAM benefits ==
The following are some of the benefits of the ATAM process:<ref>{{cite web|url=https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=513908|title=Architecture Tradeoff Analysis Method|accessdate=2018-04-20|publisher=Carnegie Mellon Software Engineering Institute}}</ref>
* identified risks early in the life cycle.
* increased communication among stakeholders.
* clarified quality attribute requirements.
* improved architecture documentation.
* documented basis for architectural decisions.
 
== ATAM process ==
The ATAM process consists of gathering stakeholders together to analyze business drivers (system functionality, goals, constraints, desired [[Non-functional requirement|non-functional properties]]) and from these drivers extract quality attributes that are used to create scenarios. These scenarios are then used in conjunction with architectural approaches and architectural decisions to create an analysis of trade-offs, sensitivity points, and risks (or non-risks). This analysis can be converted to risk themes and their impacts whereupon the process can be repeated. With every analysis cycle, the analysis process proceeds from the more general to the more specific, examining the questions that have been discovered in the previous cycle, until such time as the architecture has been fine-tuned and the risk themes have been addressed.
 
== Steps of the ATAM process ==
Line 28 ⟶ 29:
#Present results – provide all documentation to the stakeholders.
 
These steps are separated ininto two phases: Phase 1 consists of steps 1-6 and after this phase, the state and context of the project, the driving architectural requirements and the state of the architectural documentation are known. Phase 2 consists of steps 7-9 and finishes the evaluation.<ref>{{cite web|url=https://resources.sei.cmu.edu/asset_files/TechnicalReport/2000_005_001_13706.pdf|title=ATAM: Method for Architecture Evaluation|accessdate=2018-04-20|page=39f|author1=Rick Kazman |author2=Mark Klein |author3=Paul Clements |publisher=Carnegie Mellon Software Engineering Institute}}</ref>
 
== See also ==