MODELLING AND ANALYZING BASED ON AADL OSATE VERSUS STOOD Farhana Rahman, Carleton University Yu Sun, University of Ottawa OUTLINE Introduction Scenario & Background Architecture Analysis & Design Language (AADL) STOOD & OSATE Experimental Design Evaluation Criteria & Method Test Cases Comparison, Analysis & Solution Conclusion INTRODUCTION XYZ SOFTWARE SYSTEM INC. o Established in 2010 o A mid-sized start-up company o Focus on the development of real-time embedded systems time consuming & costly Figure 1. XYZ Software System Inc. INTRODUCTION ARCHITECTURE ANALYSIS AND DESIGN LANGUAGE (AADL) AADL, as an international industry standard, it • supports multiple analyses from a single architectural model • enables modeling and analysis throughout the life cycle • provides analysis of runtime behavior such as availability, Figure 2. Architectural Model performance, and security. INTRODUCTION AADL REPRESENTATIONS Figure 4. AADL Representations [1] INTRODUCTION AADL COMPONENTS Figure 5. AADL Components [1] INTRODUCTION CANDIDATE TOOLS: OSATE & STOOD OSATE (Open-source AADL Tool Environment) [2] Developed by Software Engineering Institute, Carnegie Mellon University Eclipse based, full language, full AADL XMI support Integrated text and graphical editing with TOPCASED Figure 6. OSATE Plug-In Development for AADL Analysis plug-ins INTRODUCTION CANDIDATE TOOLS: OSATE & STOOD STOOD [3] Commercial modelling tool developed by Ellidiss Software AADL-related features Legacy Ada and C code import Industry standards compliance, including D0178B Full UNIX/Windows interoperability Provides state of the art real time software development offering UML 2.0 with full software modeling EXPERIMENTAL DESIGN EVALUATION CRITERIA Essential / Critical Criteria • Modelling • Models Verification and Basic Analysis Important Criteria • Easiness of Use • More Support on Model Analyzing • Technical Support Desired Criteria • Code and Documents Generation • Low Entry-cost EXPERIMENTAL DESIGN ESSENTIAL / CRITICAL CRITERIA Functional Features: Modelling Strong support for both the AADL standard textual and graphical notations Comply with the AADL syntax and semantics Model import/export Consistence between model and text Functional Features: Models Verification and Basic Analysis Ability of fault detecting at early deigned phase Model statistic checking along with application EXPERIMENTAL DESIGN IMPORTANT CRITERIA Easiness of Use Installation and system requirement Training Requirement Interface More Support on Model Analyzing Schedulability analysis Problem identification Technical Support Supporting documentation available, such as tutorials, examples, on-line help, etc. EXPERIMENTAL DESIGN DESIRED CRITERIA Code and Document Generation Essential code and document generated from the system model Low Entry-cost / Pricing Lowest cost as possible EXPERIMENTAL DESIGN METHODOLOGY: NIH SCORING SYSTEM [4] EXPERIMENTAL DESIGN METHODOLOGY: SCORING SYSTEM Category No. Criteria Priority (Pi) Score (Si) Essential / Critical 0 Modelling 1 1-9 1 Model Verification & Basic Analysis 1 1-9 2 Easiness of Use 2 1-9 3 More Support on Model Analyzing 2 1-9 4 Technical Support 2 1-9 5 Code & Document Generation 3 1-9 6 Low Entry-cost 3 1-9 Important Desired 𝑇𝑜𝑡𝑎𝑙 𝑚𝑎𝑟𝑘 = 6 𝑖=0 𝑃𝑖 ∗ 𝑆𝑖 EXPERIMENTAL DESIGN METHODOLOGY: TEST CASES Speed Control System A simplification of an aeronautical, automotive, or other vehicle speed control system. It includes a speed sensor that provides data to a controller. The controller outputs a command to a throttle actuator. sensor data command data Avionics System Models, SEI, Carnegie Mellon University [5] Comparison, Analysis & Solution COMPARISON: MODELLING (OSATE) menu textual design tool bar graphical design property settings object model Comparison, Analysis & Solution COMPARISON: MODELLING (OSATE) No specification alert Comparison, Analysis & Solution COMPARISON: MODELLING (STOOD) menu tool bar graphical design property settings textual design Comparison, Analysis & Solution COMPARISON: MODELLING (STOOD) save changes graphical design only available ports shown textual design Comparison, Analysis & Solution COMPARISON: MODELLING OSATE STOOD Graphical & Textual Support Comply with AADL Syntax & Semantics Model import/export Consistency between model and text Automatically realize the consistency between the textual and graphical design Cannot update the graphical design automatically after changing the text Mark 2 4 Comparison, Analysis & Solution COMPARISON: MODEL VERIFICATION & BASIC ANALYSIS (OSATE) Comparison, Analysis & Solution COMPARISON: MODEL VERIFICATION & BASIC ANALYSIS (OSATE) model statistics application statistics Comparison, Analysis & Solution COMPARISON: MODEL VERIFICATION & BASIC ANALYSIS (STOOD) different checking rules Comparison, Analysis & Solution COMPARISON: MODEL VERIFICATION & BASIC ANALYSIS (STOOD) Comparison, Analysis & Solution COMPARISON: MODEL VERIFICATION & BASIC ANALYSIS OSATE STOOD Fault Detection at Early Stage Model Statistic Checking Mark 2 5 Comparison, Analysis & Solution COMPARISON: EASINESS OF USE OSATE STOOD Installation Easy to install, but Java 5.0 or higher and Eclipse 3.3 or higher required; platform independent Both the installation file for Windows and Unix are offered with instructions, easy to install. Training With a few background of AADL language, one can build the illustrated model within 1 day and analysis the model within one week. With a few background of AADL, one can build the illustrated model within 2 days and analysis the model within 10 days. Interface Easier to switch between textual and graphical view. A lot buttons are offered on the tool bar, but some are not quite often-used. Simple interface, but it is not as easy as OSATE concerning finding certain functions or switching between the code and diagrams. Mark 3 5 Comparison, Analysis & Solution COMPARISON: MORE SUPPORT ON MODEL ANALYZING (OSATE) Comparison, Analysis & Solution COMPARISON: MORE SUPPORT ON MODEL ANALYZING (STOOD) Comparison, Analysis & Solution COMPARISON: MORE SUPPORT ON MODEL ANALYZING OSATE STOOD Schedulability Analysis Problem Identification Mark 2 5 Comparison, Analysis & Solution COMPARISON: TECHNICAL SUPPORT OSATE STOOD Manual User manual offered together with the eclipse platform User manuals available with the installation package Tutorial A complete tutorial for the previous release with example available Complete tutorial for STOOD 5.2, which works well for STOOD 5.3 Example Model Several examples available online; one detailed example with instructions offered by SEI course Examples available together with the installation package. Other Resource AADL community Technical support from Ellidiss Mark 3 1 Comparison, Analysis & Solution COMPARISON: DOCUMENT & CODE GENERATION OSATE STOOD Document Generation Document Generation not supported. Document auto generation supported with the formation of PDF, PS, Word, etc. Code Generation Code generation not supported with itself, but can be achieved using Ocarina plug-in for Eclipse. Can generate some basic C and Ada code, but the code is not completely functional and put into use without modification. Mark 7 3 Comparison, Analysis & Solution COMPARISON: LOW ENTRY-COST OSATE STOOD Price Open source, free! STOOD itself is a commercial tool. Free trial version can be downloaded, but it is limited to 10 hood without analysis support offered with AADL Inspector. Mark 1 6 Comparison, Analysis & Solution ANALYSIS & SOLUTION Category Essential / Critical Important Desired Mark No. Criteria Priority (Pi) OSATE STOOD 0 Modelling 1 2 4 1 Model Verification & Basic Analysis 1 2 5 2 Easiness of Use 2 3 5 3 More Support on Model Analyzing 2 2 5 4 Technical Support 2 3 1 5 Code & Document Generation 3 7 3 6 Low Entry-cost 3 1 6 44 58 Conclusion CONCLUSION 2 7 criteria Test Cases NIH Scoring & Analysis REFERENCES [1] P. H. Feiler, D. P. Gluch and J. J. Hudak, "The Architecture Analysis & Design Language (AADL): An Introduction“, Carnegie Mellon University, 2006. [2] Carnegie Mellon University, "AADL | Tool Integrators |Toolsets | OSATE“, Carnegie Mellon University, 2011. [Online]. Available: http://www.aadl.info/aadl/currentsite/tool/osate.html. [Accessed 2 2012]. [3] Ellidiss Software, "STOOD - Modeling Tools“, Ellidiss Software, 2012. [Online]. Available: http://www.ellidiss.com/stood.asp . [Accessed 2 2012]. [4] National Institute of Health, "Scoring System and Procedure“, Maryland, USA, 2008. [5] Software Engineering Institute, "SAE AADL Example Models “, Carnegie Mellon University, 2011. [Online]. Available: http://www.aadl.info/aadl/currentsite/examplemodel.html. [Accessed 2 2012]. THANK YOU!