GUIDE TO SOFTWARE ARCHITECTURE TOOLS

3y ago
47 Views
2 Downloads
314.76 KB
5 Pages
Last View : 15d ago
Last Download : 3m ago
Upload by : Joao Adcock
Transcription

GUIDE TO SOFTWARE ARCHITECTURE TOOLSTools and Methods for Analyzing the ArchitectureSystem AnalysisDuring its research projects, the Software Engineering Institute has developed several tools for systemdesign, analysis, and validation. Among them several tools were designed for analyzing performancecriteria, such as latency or bus load. Other analyses are specific to the avionics domain, such as theARINC653 validation framework that aims at validating system properties related to avionics system(space isolation across partitions, validation of system configuration, analysis of partition communication policy, etc.).Safety AnalysisRecent focus of the SEI work has been on tools for analyzing system safety in support of industrypractice standards (such as SAE ARP4761). Support includes Functional Hazard Assessment (FHA),Failure Mode and Effect Analysis (FMEA), Fault Tree Analysis (FTA), stochastic Dependency Diagram(DD) or Reliability Block Diagram (RBD), and Markov Chain analysis. Automation of these currentlylargely manual practices allow for repeated analysis and trade studies of design alternatives.Open Source AADL Tool Environment (OSATE)The Open Source AADL Tool Environment is an Eclipse-based modeling framework for using AADL.It brings AADL support within the Eclipse environment so that architecture practitioners can write theirmodels using the AADL textual syntax. Users can also visualize their model using the graphical notation. OSATE currently supports the latest revision of the language and integrates several validation andanalysis plug-ins. The Software Engineering Institute has developed several of them for analyzing system security, performance, or safety. These plug-ins are available under the Eclipse Public License(EPL); their source code is available in the Github repository.In addition, OSATE supports the Error-Model Annex of AADLv2 for specifying architecture faults anderrors. Engineers can specify error occurrence and propagation in their architecture using the textualnotation of the language. OSATE includes several functions for processing this additional informationand generating validation materials required by validation standards, such as: Functional Hazard Assessment: description of faults that occurs in each system function Fault-Tree Analysis: hierarchical dependencies between faults occurrence within the architecture.OSATE currently supports the generation of FTA that targets commercial and open-source tools. Markov Chain Model: analysis of fault-occurrence according to system specification. OSATEactually supports the PRISM tool for Markov-Chain analysis.SOFTWARE ENGINEERING INSTITUTE CARNEGIE MELLON UNIVERSITY[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution.REV-03.18.2016.0

OSATE Release ProcessOSATE is distributed in two releases: the stable and testing releases. A stable release is published every3 months. The testing release is updated in a daily build and contains experimental features.AADL/OSATE CommunityOSATE is an open-source project; its code is released under the Eclipse Public License (EPL). TheAADL community has built a number of tools on top of OSATE.Much of the work has been published and can be found at https://wiki.sei.cmu.edu/aadl/index.php/AADL Related Publications.AADL ExamplesWe have made available a set of example AADL models on our public Github area. This repositoryhosts models grouped into separate AADL projects that can be imported within your OSATE workspaceto try, test, and experiment with OSATE. Also, this is a good approach to have some AADL examplesand learn how to use modeling patterns.Tools and Methods for Establishing RequirementsDo you want to Then look at Identify important quality attributes and clarify system requirements before there is a software architecture to evaluate?Quality Attribute WorkshopBring together system of systems (SoS) stakeholders to augment existing mission threads with quality attribute considerations that will shape the SoS architecture and identify SoS architectural challenges?Mission Thread WorkshopSOFTWARE ENGINEERING INSTITUTE CARNEGIE MELLON UNIVERSITY[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution.2

Tools and Methods for Evaluating the ArchitectureDo you want to Then look at Evaluate and improve software architectures relativeto quality attribute goals?Architecture Improvement WorkshopApply the leading method for evaluating a softwarearchitecture?Architecture Tradeoff Analysis MethodUse mission threads to evaluate system and softwarearchitectures?System Architecture Tradeoff AnalysisMethodProvide an initial identification of SoS architecturalrisks and quality attribute inconsistencies across theconstituent systems?System of Systems (SoS) ArchitectureEvaluationFind out if a software architecture for a system is suitable without having to build it first?Active Reviews for Intermediate DesignHow do you know if a software architecture is deficient or at risk relative to its target system qualities?The answer is to conduct an evaluation of it. A formal software architecture evaluation should be astandard part of the architecture-based software development life cycle. Architecture evaluation is acost-effective way of mitigating the substantial risks associated with this highly important artifact.The achievement of a software system's quality attributes depends much more on the software architecture than on code-related issues such as language choice, fine-grained design, algorithms, data structures, testing, and so forth. Most complex software systems are required to be modifiable and have goodperformance. They may also need to be secure, interoperable, portable, and reliable. But for any particular system, what precisely do these quality attributes—modifiability, security, performance, reliability—mean? Can a system be analyzed to determine these desired qualities? How soon can such an analysis occur? What happens when these quality attributes are in conflict with each other? How can thetradeoffs be examined, analyzed, and captured?The tools and methods in the table above can be used alone or in combination to obtain early and continuous benefits to any software development project.SOFTWARE ENGINEERING INSTITUTE CARNEGIE MELLON UNIVERSITY[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution.3

Tools and Methods for Defining the ArchitectureDo you want to Then look at Design the software architecture of a software-reliantsystem?Attribute-Driven Design MethodEvaluate and improve software architectures relative toquality attribute goals?Architecture Improvement WorkshopContact UsSoftware Engineering Institute4500 Fifth Avenue, Pittsburgh, PA 15213-2612Phone: 412/268.5800 888.201.4479Web:www.sei.cmu.edu www.cert.orgEmail: info@sei.cmu.eduCopyright 2017 Carnegie Mellon University. All Rights Reserved.This material is based upon work funded and supported by the Department of Defense under Contract No.FA8702-15-D-0002 with Carnegie Mellon University for the operation of the Software Engineering Institute, a federally funded research and development center.The view, opinions, and/or findings contained in this material are those of the author(s) and should not beconstrued as an official Government position, policy, or decision, unless designated by other documentation.NO WARRANTY. THIS CARNEGIE MELLON UNIVERSITY AND SOFTWARE ENGINEERINGINSTITUTE MATERIAL IS FURNISHED ON AN "AS-IS" BASIS. CARNEGIE MELLONUNIVERSITY MAKES NO WARRANTIES OF ANY KIND, EITHER EXPRESSED OR IMPLIED, ASTO ANY MATTER INCLUDING, BUT NOT LIMITED TO, WARRANTY OF FITNESS FORPURPOSE OR MERCHANTABILITY, EXCLUSIVITY, OR RESULTS OBTAINED FROM USE OFTHE MATERIAL. CARNEGIE MELLON UNIVERSITY DOES NOT MAKE ANY WARRANTY OFANY KIND WITH RESPECT TO FREEDOM FROM PATENT, TRADEMARK, OR COPYRIGHTINFRINGEMENT.[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution. Please see Copyright notice for non-US Government use and distribution.Internal use:* Permission to reproduce this material and to prepare derivative works from this material forinternal use is granted, provided the copyright and “No Warranty” statements are included with all reproductions and derivative works.SOFTWARE ENGINEERING INSTITUTE CARNEGIE MELLON UNIVERSITY[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution.4

External use:* This material may be reproduced in its entirety, without modification, and freely distributedin written or electronic form without requesting formal permission. Permission is required for any other external and/or commercial use. Requests for permission should be directed to the Software Engineering Institute at permission@sei.cmu.edu.* These restrictions do not apply to U.S. government entities.DM17-0272SOFTWARE ENGINEERING INSTITUTE CARNEGIE MELLON UNIVERSITY[DISTRIBUTION STATEMENT A] This material has been approved for public release and unlimited distribution.5

How do you know if a software architecture is deficient or at risk relative to its target system qualities? The answer is to conduct an evaluation of it. A formal software architecture evaluation should be a standard part of the architecture-based software development life cycle. Architecture evaluation is a

Related Documents:

Basic Concepts Software Architecture Lecture 3 2 Software Architecture Foundations, Theory, and Practice What is Software Architecture? Definition: A software system’s architecture is the set of principal design decisions about the system Software architecture is the blu

Pro Tools 9.0 provides a single, unified installer for Pro Tools and Pro Tools HD. Pro Tools 9.0 is supported on the following types of systems: Pro Tools HD These systems include Pro Tools HD software with Pro Tools HD or Pro Tools HD Native hard-ware. Pro Tools These systems include Pro Tools software with 003 or Digi 002 family audio .

architecture so that it is easy to out line the software architecture efficiently [4]. The architecture of software is designed to validate and verify, which requirements can be implemented and which cannot. Architecture of a software system generally restrict the developer within the scope, more the software is closest to the architecture more .

What is Computer Architecture? “Computer Architecture is the science and art of selecting and interconnecting hardware components to create computers that meet functional, performance and cost goals.” - WWW Computer Architecture Page An analogy to architecture of File Size: 1MBPage Count: 12Explore further(PDF) Lecture Notes on Computer Architecturewww.researchgate.netComputer Architecture - an overview ScienceDirect Topicswww.sciencedirect.comWhat is Computer Architecture? - Definition from Techopediawww.techopedia.com1. An Introduction to Computer Architecture - Designing .www.oreilly.comWhat is Computer Architecture? - University of Washingtoncourses.cs.washington.eduRecommended to you b

work/products (Beading, Candles, Carving, Food Products, Soap, Weaving, etc.) ⃝I understand that if my work contains Indigenous visual representation that it is a reflection of the Indigenous culture of my native region. ⃝To the best of my knowledge, my work/products fall within Craft Council standards and expectations with respect to

In Architecture Methodology, we discuss our choice for an architecture methodol-ogy, the Domain Specific Software Architecture (DSSA), and the DSSA approach to developing a system architecture. The next section, ASAC EA Domain Model (Architecture), includes the devel-opment process and the ASAC EA system architecture description. This section

1.3 Software architecture and Middleware Middleware is Middleware is software glue Middleware is computersoftware that connects software componentsor applications. It is usedmost oftento support complex,distributed applications. Middleware is any software that allows other software tointeract In short, in the "Component-and-connector" view of a software architecture,

ASTM C167 Standard test methods for thickness and density of blanket or batt thermal insulations ASTM C518 Standard test method for steady-state thermal transmission properties by means of the heat flow meter apparatus . TL-205 HOME INNOVATION RESEARCH LABS Page 6 of 6. ASTM C653 Standard guide for determination of the thermal resistance of low-density blanket-type mineral fiber insulation .