Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Extensible Tool-chain for Evaluation of Architectural Models

Similar presentations


Presentation on theme: "The Extensible Tool-chain for Evaluation of Architectural Models"— Presentation transcript:

1 The Extensible Tool-chain for Evaluation of Architectural Models
11/13/2018 The Extensible Tool-chain for Evaluation of Architectural Models George Edwards Center for Systems and Software Engineering University of Southern California

2 Project Overview Motivation Approach Provide an extensible
11/13/2018 Project Overview Motivation Provide an extensible infrastructure to aid software architects Provide design rationale Weigh architectural trade-offs Understand compositions of off-the-shelf components Approach Extensible modeling languages based on architectural constructs Model interpreter framework Implements a semantic mapping between architectural models and simulation models Enables rapid implementation of customized dynamic analyses at the architectural level November 13, 2018

3 Background Architecture Description Languages (ADLs)
11/13/2018 Background Architecture Description Languages (ADLs) Capture the crucial design decisions that determine the ultimate capabilities, properties, and quality of a software system Can be leveraged throughout the software development process Model-Driven Engineering (MDE) Combines domain-specific modeling languages (DSMLs) with model analyzers, transformers, and generators Metamodels define DSMLs, including the elements, relationships, views, and constraints Domain-specific models are created according to the rules of the DSML Model interpreters analyze and transform domain-specific models November 13, 2018

4 Approach (1/2) ADLs as Domain-Specific Modeling Languages
11/13/2018 Approach (1/2) ADLs as Domain-Specific Modeling Languages Codify ADLs as metamodels Metamodel composition enables the combination of constructs from multiple ADLs within a single model Metamodel enhancement allows the definition of new, customized ADL constructs Reuse of existing ADLs maximizes the potential for reuse of the tool infrastructure. Incremental language extensions enable a specific architectural analysis technique. November 13, 2018

5 Approach (2/2) Architectural Analysis Techniques as Model Interpreters
11/13/2018 Approach (2/2) Architectural Analysis Techniques as Model Interpreters Utilize a model interpreter framework for rapid implementation of domain-specific analysis techniques Transforms architectural models into executable simulations Provides empty “hook” methods that are implemented by the architect to perform analysis calculations and record measurements Simulations provide a scenario-driven dynamic analysis Results depend heavily on the environmental context (e.g., the load put on the system) and may contain elements of randomness and unpredictability (e.g., the timing of client requests) The set of scenarios to be simulated should include high-risk situations and boundary conditions Allows the architect to rapidly investigate the consequences of fundamental design decisions in terms of their impact on non-functional properties November 13, 2018

6 The XTEAM Tool-chain Composes existing ADLs
11/13/2018 The XTEAM Tool-chain Composes existing ADLs xADL Core (structures and types) and Finite State Processes (behavior) Implements a model interpreter framework Uses xADL Core and FSP language elements Captures domain-specific ADL extensions End-to-end latency (includes task and process execution times) Energy consumption (includes computational and communication energy costs) Reliability (includes failure probabilities and recovery times) Memory usage (includes memory usage of processes) Implements simulation generators Operate on the information captured in ADL extensions to perform scenario-driven analysis November 13, 2018

7 Discrete Event Simulation
11/13/2018 Discrete Event Simulation Latency Provides, for each required interface, the response time for each invocation Reliability Provides the time and type of failures and the recovery time Power Consumption Provides the energy consumption of each host (i.e., remaining battery power) over time Memory Usage Provides the amount of memory being used on each host over time as the system executes November 13, 2018

8 Ongoing and Future Work
11/13/2018 Ongoing and Future Work Evaluate XTEAM using a real-world security application that operates in an embedded, wireless environment Integrate XTEAM with other complementary architecture-based development tools DeSi and Prism-MW Determine the class of analysis techniques that can be implemented with our model interpreter framework Evaluate the feasibility of supporting other classes of analysis techniques (e.g., static analyses) via additional interpreter frameworks Further define ways in which our approach can be integrated with widely-used architectural development processes Architecture Trade-off Analysis Method (ATAM) November 13, 2018


Download ppt "The Extensible Tool-chain for Evaluation of Architectural Models"

Similar presentations


Ads by Google