Evaluating software architectures for real time systems
Download
1 / 18

Evaluating Software Architectures for Real-Time Systems - PowerPoint PPT Presentation


  • 158 Views
  • Uploaded on

Evaluating Software Architectures for Real-Time Systems. R. Kazman, M. Klein, P. Clements Software Engineering Institute Carnegie Mellon University. Methodology for evaluating software architectures of real-time systems Uses the Architecture Tradeoff Analysis Method (ATAM).

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Evaluating Software Architectures for Real-Time Systems' - gaia


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Evaluating software architectures for real time systems

Evaluating Software Architectures for Real-Time Systems

R. Kazman, M. Klein, P. Clements

Software Engineering Institute

Carnegie Mellon University


Methodology for evaluating software architectures of real-time systemsUses the Architecture Tradeoff Analysis Method (ATAM)

  • Articulates Quality Goals

  • Identifies Sensitivity Points

  • Identifies Tradeoff Points


Scenarios are used to elicit quality goals
Scenarios are used to elicit quality goals real-time systems

  • Use Cases

  • Growth Scenarios

  • Exploratory Scenarios


Attribute Taxonomies are collections of knowledge from expert communities about quality attributes such as performance, reliability, security, or modifiability


Attribute information in the taxonomies is placed in one of three categories
Attribute information in the taxonomies is placed in one of three categories

  • External stimuli

  • Architectural parameters

  • Responses

Taxonomies help ensure attribute coverage and offer a rationale for asking elicitation questions


Example taxonomy
Example Taxonomy three categories


As a scenario is traced through the architecture, the elicitation questions uncover attribute specific informationScreening questions are also asked to guide or focus the elicitation


Outcome of elicitation is the identification of
Outcome of elicitation is the identification of elicitation questions uncover attribute specific information

  • Sensitivity points

  • Tradeoff points


Once these points have been identified attribute based architecture styles abas are applied
Once these points have been identified, Attribute-based architecture styles (ABAS) are applied

  • Routine and predictable design

  • Standard set of analysis questions

  • tight link between design and analysis


An abas has four parts
An ABAS has four parts architecture styles (ABAS) are applied

  • Problem description

  • Stimuli/Responses

  • Architectural Style

  • Analysis


Abas example

ABAS Example architecture styles (ABAS) are applied

Part 1: Problem Description

Consider a single processor on which multiple processes reside, each of which perform computations on their own input data stream. Each final output from the system must be produced within a specified time interval after the arrival of an input, after all computations have been performed. We refer to the input data as a message. The requirement then is to completely process each message with a specified bounded end-to-end latency.

Part 2: Stimulus/Response

Stimuli: two or more periodic or sporadic input streams

Response: end-to-end worst-case latency


Abas example1

ABAS Example architecture styles (ABAS) are applied

Part 3: Architectural Style

Part 4: Analysis

Latency for a process:


Qualitative analysis heurisitics are coarse grained analyses of the ABASQuestions capture the essence of problems discovered by more formal methods


Example qualitative analysis heuristics
Example qualitative analysis heuristics of the ABAS

  • If this architecture has real-time performance requirements and consists of multiple processes that share a resource then what process prioritization strategy is used including the priority used during the critical sections?

  • If this architecture includes layers/facades, are there any places where the layers/facades are circumvented?


Analysis

Analysis of the ABAS

ATAM is the application of a common engineering practice - the critical design review - to software systems


Analysis key points

Analysis - Key Points of the ABAS

Identifies critical system attributes that are most sensitive to design decisions

Uses experiential evidence to evaluate the system architecture with respect to the critical attributes


Analysis advantages

Analysis - Advantages of the ABAS

Is very easy and relatively inexpensive

Catches critical design flaws early


Analysis disadvantages

Analysis - Disadvantages of the ABAS

Is somewhat limited - only addresses architecture, does not address whether the system is functionally correct

Is very dependent on good architectural representation - suggests 4+1 views, would presumably work with UML


ad