Week 13 - Compare Software Architecture Evaluation Methods
Week 13 - Compare Software Architecture Evaluation Methods
CT059-3-2
• Questioning techniques
• Measuring techniques
• Hybrid techniques
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 2 Out of 21
Learning Outcomes
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 3 Out of 21
Key Terms you must be able to use
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 5 Out of 21
Evaluation Technique
• Measuring techniques
– Techniques
• Simulation
• Metrics
– Complexity – Coupling & cohesion metrics
» modifiabilty
» Module independencies & functionality
– Data flow metrics
» Size and frequency of data passed along the
communication channel
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 6 Out of 21
The ATAM, SAAM & ARID
Comparison
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 7 Out of 21
Questioning Techniques
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 8 Out of 21
Questionnaires
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 9 Out of 21
Checklists
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 10 Out of 21
Scenario-Based Methods
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 11 Out of 21
Survivable Network Analysis
Method
• Developed by SEI CERT Coordination
Centre
• To permit systematic assessment of the
survivability properties of the
– Existing system
– Proposed system
– Modification of existing system
• SNA has four steps
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 12 Out of 21
SNA Steps
• System definition
– Understanding objectives, requirements, structure
and properties of the system architecture and risk in
the operating environment
• Essential capability definition
– Services that maintain during attack
– Essential assets that should maintain during
the assets
– Mission objective
– Failure consequences
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 13 Out of 21
SNA Steps
• Compromisable capability definition
– Scenarios are selected based on the assessment of
environment risks and intruder capabilities
– Mapped on to the architecture as execution traces to identify
corresponding compromisable components
• Survivability Analysis
– Analyse in the context of
• Resistance
– Is the capability of a system to repel attacks
• Recognition
– Capability to detect attack
• Recovery
– Capability to maintain the essential services and assets during
attacks
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 14 Out of 21
Measuring Techniques
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 15 Out of 21
Metrics
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 18 Out of 21
Summary of Main Teaching Points
• Questioning techniques
• Measuring techniques
• Hybrid techniques
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 19 Out of 21
Question and Answer Session
Q&A
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 20 Out of 21
Next Session
CT059-3-2 Software Architecture And Testing Compare software architecture evaluation methods Slide 21 Out of 21