Why We Model: Using MBD Effectively in Critical Domains
|
|
|
- Marion Fowler
- 9 years ago
- Views:
Transcription
1 Why We Model: Using MBD Effectively in Critical Domains Mike Whalen Program Director, UMSEC University of Minnesota 5/19/2013 Why We Model - Mike Whalen 1
2 Acknowledgements Rockwell Collins (Darren Cofer, Andrew Gacek, Steven Miller, Lucas Wagner) UPenn: (Insup Lee, Oleg Sokolsky) UMN (Mats P. E. Heimdahl) NASA Langley (Ricky Butler) Lockheed Martin (Walter Storm, Greg Tallant, Peter Stanfill) Note: all incorrect or controversial opinions are mine only J 5/19/2013 Why We Model - Mike Whalen 2
3 Outline of Presentation Introduction Why use Model-Based Development? Requirements Design Implementation: Code Generation Verification and Validation Pitfalls 5/19/2013 Why We Model - Mike Whalen 3
4 How we Develop Software Concept Formation Requirements Specification Design System Test Test System Integration Test Integration Implementation Unit Test Object Code Analysis 4
5 What is Model-Based Development? Properties Visualization Analysis Testing Prototyping Code/test generation Code Specification Model Test oracle Why We Model - Mike Whalen 5
6 Model-Based Development Tools Esterel Studio and SCADE Studio from EsterelTechnologies Rhapsody from I-Logix Simulink and Stateflow from Mathworks Inc. Rose Real-Time from Rational I will focus on Statecharts and Dataflow notations. 5/19/2013 Why We Model - Mike Whalen 6
7 How we Will Develop Software (in theory) Concept Formation Requirements PropertiesAnalysis Specification/Model System System Test Specification Test Integration Integration Test Implementation 5/19/2013 Why We Model - Mike Whalen 7
8 Model-Based Development Examples Company Product Tools Specified & Autocoded Benefits Claimed Airbus A340 SCADE With Code Generator Eurocopter GE & Lockheed Martin Schneider Electric US Spaceware PSA CSEE Transport Honeywell Commercial Aviation Systems EC-155/135 Autopilot FADEDC Engine Controls Nuclear Power Plant Safety Control SCADE With Code Generator 70% Fly-by-wire Controls 70% Automatic Flight Controls 50% Display Computer 40% Warning & Maint Computer 20X Reduction in Errors Reduced Time to Market 90 % of Autopilot 50% Reduction in Cycle Time ADI Beacon Not Stated Reduction in Errors 50% Reduction in Cycle Time Decreased Cost SCADE With Code Generator 200,000 SLOC Auto Generated from 1,200 Design Views 8X Reduction in Errors while Complexity Increased 4x DCX Rocket MATRIXx Not Stated 50-75% Reduction in Cost Reduced Schedule & Risk Electrical SCADE 50% SLOC Auto Generated 60% Reduction in Cycle Time Management With Code 5X Reduction in Errors System Generator Subway Signaling System Primus Epic Flight Control System SCADE With Code Generator MATLAB Simulink 80,000 C SLOC Auto Generated Improved Productivity from 20 to 300 SLOC/day 60% Automatic Flight Controls 5X Increase in Productivity No Coding Errors Received FAA Certification Slide courtesy of Steve Miller in Proving the Shalls 2006 Rockwell Collins, Inc. All rights reserved. 8
9 Does Model-Based Development Scale? Airbus A380 Length 239 ft 6 in Wingspan 261 ft 10 in Maximum Takeoff Weight 1,235,000 lbs Passengers Up to 840 Range 9,383 miles Systems Developed Using MBD Flight Control Auto Pilot Fight Warning Cockpit Display Fuel Management Landing Gear Braking Steering Anti-Icing Electrical Load Management Slide courtesy of Steve Miller in Proving the Shalls 2006 Rockwell Collins, Inc. All rights reserved. 9
10 But it is not all roses Many MBD projects fail to meet their original goals of cost, productivity These tend not to get as much publicity! Clear eyed understanding of why you model and what you expect is necessary 5/19/2013 Why We Model - Mike Whalen 10
11 A Personal Anecdote Part of two large projects using Model-Based Development Same company, similar quality developers One great success Significant cost reductions Improvement in quality Excellent customer satisfaction One great failure Large cost overruns Models considered less useful than code Group abandoned MBD 5/19/2013 Why We Model - Mike Whalen 11
12 Outline of Presentation Introduction Why use Model-Based Development? Requirements Design Implementation: Code Generation Verification and Validation Pitfalls 5/19/2013 Why We Model - Mike Whalen 12
13 What are your models for? Possible to use MBD for many different purposes: Requirements Design Simulation Visualization Testing Test Generation Test Oracle Formal Verification Code Generation Complete implementation Code skeleton Prototyping Communication with Customer You must understand, up front, what you expect to do with models in order to successfully adopt MBD. Major opportunity for improvement in V&V 5/19/2013 Why We Model - Mike Whalen 13
14 MBD Models as Requirements Are MBD models requirements? Notations in this talk are executable; good at describing how system works 5/19/2013 Why We Model - Mike Whalen 14
15 Lots of design detail Difficult to see full system behavior. Straightforward to generate code 5/19/2013 Why We Model - Mike Whalen 15
16 Outline of Presentation Introduction Why use Model-Based Development? Requirements Design Implementation: Code Generation Verification and Validation Pitfalls 5/19/2013 Why We Model - Mike Whalen 16
17 The Most Important Issue for Successful Adoption of MBD Do the Domain-Specific Notations provide a natural representation for your problem? Block diagrams are very natural for control problems Statecharts are very natural for description of system modes & mode transitions Both block diagrams and statecharts are very unnatural for representing complex data structures Neither notation naturally supports iteration or recursion It can be faked, but not well 5/19/2013 Why We Model - Mike Whalen 17
18 Just No Stateflow model of Tetris game (included in the Stateflow Demo models from the Mathworks!). Diagram is essentially a control-flow graph of a program that implements tetris. *Much* harder to read and modify than an equivalent program. Model The Mathworks, /19/2013 Why We Model - Mike Whalen 18
19 Tools Matter Often notations are much more cumbersome to use than text No diff / merge capabilities Adding information requires many clicks Expressible!= Easy Anecdote: Simulink vs. SCADE at Rockwell Collins in 2006 SCADE had formal pedigree, strong analysis But tools kept crashing on our Windows boxes Simulink had better tools and better salespeople 5/19/2013 Why We Model - Mike Whalen 19
20 Outline of Presentation Introduction Why use Model-Based Development? Requirements Design Implementation: Code Generation Verification and Validation Pitfalls 5/19/2013 Why We Model - Mike Whalen 20
21 Analysis Pyramid Theorem Proving Model Checking Temporal Properties Of Finite systems. Perfect Verification Exhaustive Testing (Infinite Effort) MCDC Testing Data Flow Analysis Pessimistic Inaccuracy Simplistic Program Analysis Precise Analysis of Simple Syntactic Properties Simplified Properties Typical Testing Optimistic Inaccuracy Pyramid 5/19/2013 Adopted from Why Dr. We Michal Model Young - Mike Whalen 21
22 What We Need Theorem Proving Model Checking Temporal Properties Of Finite Systems Perfect Verification Exhaustive Testing (Infinite Effort) MCDC Testing Access to Many Tools and Techniques Data Flow Analysis Pessimistic Inaccuracy Simplistic Program Analysis Precise Analysis of Simple Syntactic Properties Simplified Properties Typical Testing Optimistic Inaccuracy 5/19/2013 Why We Model - Mike Whalen 22
23 MBD Is a V&V-Enabling Technology Strong simulation and analysis capabilities built into most tools Demo: Stateflow Elevator (Help: Stateflow/Demos/Large-Scale Modeling/Modeling an Elevator System) Even stronger simulation capabilities in external tools Demo: Reactis step simulation with Microwave Allows straightforward Build a little, test a little philosophy Consistent with incremental development philosophy 5/19/2013 Why We Model - Mike Whalen 23
24 Model-Driven Test Generation (v1) Source Code while(a<0) { a=a-1; b=b*a; } printf( %d, b); Compiler Object Code MBD Model Test Case Generator Generated Tests? Possible to generate test suites that satisfy very rigorous structural coverage metrics Coverage Metric Model results must match source code for tests to pass 5/19/2013 Why We Model - Mike Whalen 24
25 Model-Driven Test Generation (v2) MBD Model Object Code Code Generator + Compiler Model should match source code exactly Test Case Generator Generated Tests? Coverage Metric 5/19/2013 Why We Model - Mike Whalen 25
26 Model-Driven Test Generation (v2) MBD Model Object Code Code Generator + Compiler Model should match source code exactly Test Case Generator Generated Tests Oracle Coverage Metric Where does Oracle come from? What is a good oracle? 5/19/2013 Why We Model - Mike Whalen 26
27 Use Requirements as Oracle Slide courtesy of Steve Miller in Proving the Shalls 2006 Rockwell Collins, Inc. All rights reserved. 5/19/2013 Why We Model - Mike Whalen 27
28 Static Analysis and Model Checking MBD Model Analysis Tool Property True Oracle Property False: Test Case 5/19/2013 Why We Model - Mike Whalen 28
29 FCS 5000 Flight Control Mode Logic Mode Controller A Modeled in Simulink Translated to NuSMV 6.8 x Reachable States Mode Controller B Example Requirement Mode A1 => Mode B1 Counterexample Found in Less than Two Minutes Found 27 Errors Slide Rockwell Collins, /19/2013 Why We Model - Mike Whalen 29
30 ADGS 2100 Adaptive Display and Guidance System Modeled in Simulink Translated to NuSMV 4,295 Subsystems 16,117 Simulink Blocks Over Reachable States Example Requirement: Drive the Maximum Number of Display Units Given the Available Graphics Processors Counterexample Found in 5 Seconds Checked 573 Properties - Found and Corrected 98 Errors in Early Design Models Slide Rockwell Collins, /19/2013 Why We Model - Mike Whalen 30
31 CerTA FCS Phase I Sponsored by AFRL 1 sync<> sync 2 [trigger] [A] [DSTi] Extract Bits [03] double [MS] Wright Patterson VA Directorate Compare FM & Testing Testing team & FM team Lockheed Martin UAV input_a 3 input_b 4 input_c 5 status_a 6 status_b 7 status_c 8 dst_index DOC Text [B] [C] [status_a] [status_b] [status_c] [DSTi] DST Data Store Read [trigger] [A] [B] [C] tri p_level trip_level trip_level1 persist_lim persist_lim persistence limit [MS] Index Vector input_a input_b input_c trip_level persist_lim MS triplex_input_monitor Extract Bits [status_a] [status_b] [status_c] [prev_sel] [A] f ailreport failreport [B] [C] pc 2 persistence_cnt<pc> persistence_cnt [trigger] tc 3 totalizer_cnt<tc> [A] totalizer_cnt [B] [C] [DSTi] mon_f ailure_report status_a status_b status_c failure_report prev_sel input_a input_b input_c Failure_Isolation pc trigger input_a input_sel 4 input_b input_sel input_c DST_index triplex_input_selector 1 failure_report [prev_sel] [DSTi] failure_report dst_index Failure_Processing Adaptive Flight Control System Redundancy Management Logic Modeled in Simulink Translated to NuSMV model checker Phase I Results Testing Effort (% total) 60% Errors Found Model-Checking 12 40% 0 Slide Rockwell Collins, /19/2013 Why We Model - Mike Whalen 31
32 MBD Formal Analysis Efforts 5/19/2013 Why We Model - Mike Whalen 32
33 Outline of Presentation Introduction Why use Model-Based Development? Requirements Design Implementation: Code Generation Verification and Validation Pitfalls 5/19/2013 Why We Model - Mike Whalen 33
34 Problem 1: Using Models Where They Don t Fit If MBD notation doesn t provide a better representation of your problem than code, you re wasting your time. 5/19/2013 Why We Model - Mike Whalen 34
35 MBD notations can be awful programming languages Model The Mathworks, /19/2013 Why We Model - Mike Whalen 35
36 Remedies Perform honest assessment of where MBD notations can be used They do not do everything Recursive data structures are especially difficult to model. Use models where they are a good representation. Create a partitioning strategy between models and code for applications that contain both complex mode logic and complex data. 5/19/2013 Why We Model - Mike Whalen 36
37 Problem 2 Believing Testing Can be Eliminated Testing will always be a crucial (and costly) component 5/19/2013 Why We Model - Mike Whalen 37
38 Testing Does not go Away Concept Formation Requirements Properties Specification/Model System Extensive Testing Integration (MC/DC) Implementation 5/19/2013 Why We Model - Mike Whalen 38
39 It Simply Moves Concept Formation Requirements Properties Specification/Model System Extensive Testing Integration (MC/DC) Implementation 5/19/2013 Why We Model - Mike Whalen 39
40 Do it the Right Way Concept Formation Requirements Specification/Model Properties Analysis System System Test Specification Test Integration Integration Test Implementation Unit Test 5/19/2013 Why We Model - Mike Whalen 40
41 Problem 3 Believing the Model is Everything The model is never enough 5/19/2013 Why We Model - Mike Whalen 41
42 Modeling Frenzy Concept Formation Modeling is so much fun Requirements Specification/Model Properties Test System How do we know the model is right? Integration Implementation 5/19/2013 Why We Model - Mike Whalen 42
43 Remedies Recognize the Role of Software Requirements The model is not everything Development Methods for Model-Based Development Badly Needed Model-Based Software Development Process Develop Tools and Techniques for Model, Properties, and Requirements Management Develop Inspection Checklists and Style Guidelines for Models 5/19/2013 Why We Model - Mike Whalen 43
44 Problem 4 Trusting Verification To really mess things up, you need formal verification 5/19/2013 Why We Model - Mike Whalen 44
45 Property or Model: Who is Right? The Mode Annunciations shall be turned on when the Flight Director is turned on AG(Onside_FD_On -> Mode_Annunciations_On) If this side is active, the Mode Annunciations shall be turned on when the Flight Director is turned on AG( (Is_This_Side_Active & Onside_FD_On) -> Mode_Annunciations_On) If this side is active and the Mode Annunciations are off, the Mode Annunciations shall be turned on when the Flight Director is turned on AG(! Mode_Annunciations_On -> AX ((Is_This_Side_Active & Onside_FD_On) -> Mode_Annunciations_On))) 5/19/2013 Why We Model - Mike Whalen 45
46 Remedies Develop techniques to determine adequacy of model and property set How do we know they are any good Techniques for management of invariants How do we validate the assumptions we make Methodology and guidance badly needed Tools with training wheels Verification for Dummies All we need is one high-profile verified system to fail spectacularly to set us back a decade or more 5/19/2013 Why We Model - Mike Whalen 46
47 Conclusions MBD can significantly improve developer productivity, cost, schedule, and quality or it can make your life miserable The important thing is to know why you re doing it! Know the limitations of what can be modeled using the DSNs Know which capabilities you hope to use Design and quality of models depends on this V & V receives the largest benefit of the MBD approach Mature tools for test-case generation Starting to see model checking built into commercial tools: SCADE Verifier, Simulink Design Verifier There are many other things to discuss! Versioning, diff, semantics, tool costs, training, structuring, vendor lock in 5/19/2013 Why We Model - Mike Whalen 47
48 Questions? 5/19/2013 Why We Model - Mike Whalen 48
49 References M. Whalen, D. Greve, L. Wagner, S. Miller, Model Checking Information Flow. In Design and Verification of Microprocessor Systems for High-Assurance Applications. D. Hardin, Ed. Springer, M. Whalen, P. Godefroid, L. Mariani, A. Polini, N. Tillman, and W. Visser. FITE: Future Integrated Testing Environment. Workshop on the Future of Software Engineering Research 2010 (FoSER), Santa Fe, New Mexico, November 7-8, S. Miller, M. Whalen, and D. Cofer. Software Model Checking Takes Off. Communications of the ACM, Volume 53, No 2, February D. Hardin, T. D. Hiratzka, D. R. Johnson, L. Wagner, and M. Whalen. Development of Security Software: A High- Assurance Methodology. Proceedings of the 11 th International Conference of Formal Engineering Methods (ICFEM 2009), Rio de Janeiro, Brazil, December, M. Whalen, D. Cofer, S. Miller, B. Krogh, and W. Storm. Integration of Formal Analysis into a Model-Based Software Development Process. 12 th International Workshop on Industrial Critical Systems (FMICS 2007), Berlin, Germany, July, S. Miller, A. Tribble, M. Whalen, and M.P.E. Heimdahl. Proving the Shalls: Early Validation of Requirements through Formal Methods, Journal of Software Tools for Technology Transfer. Volume 8 Issue 4, August M.P.E. Heimdahl, Y. Choi, and M. Whalen. Deviation Analysis: A New Use for Model Checking, Automated Software Engineering, Volume 12, Number 3, July, M. Whalen, B. Fischer, and J. Schumann. Certifying Synthesized Code. Proceedings of Formal Methods Europe 2002, Copenhagen, Denmark, July 2002 M. Whalen, B. Fischer, and J. Schumann. AutoBayes/CC Combining Program Synthesis with Automatic Code Certification. Proceedings of Conference on Automated Deduction 18, Copenhagen, Denmark, July /19/2013 Why We Model - Mike Whalen 49
50 Research directions: Medical Cyber-Physical Systems Improving patient treatment by coordinated systems of medical devices Medical device interoperability High-confidence development Model-driven design V&V, regulatory approval Coordination framework for medical devices Build high-confidence middleware Rely on formal methods and static analysis Design a language for executable clinical scenarios Specify information flows Identify timing constraints Ensure non-interference Smart alarms and decision support Physiological closed-loop control Supported by NSF CNS Participants University of Pennsylvania U. Penn Hospital System University of Minnesota CIMIT/MGH Model driven development and assurance cases High-assurance development: Modeling, code synthesis Model-level verification, code-level validation Assurance case construction reflects development process structure Applied to pacemaker, PCA pump Smart alarm systems Reduction of irrelevant alarms for CABG patients Based on aggregation of multiple vital signs and fuzzy logic On-going research: Prediction of vasospasm in neuro-icu patients 5/19/2013 Why We Model - Mike Whalen Networked Blood Glucose Control System Safety-critical, closed-loop MCPS Research issues: Identifying new risks and hazards Mitigation strategies Validation Control design Pursue model-driven approach 50
Integration of Formal Analysis into a Model-Based Software Development Process
Integration of Formal Analysis into a Model-Based Software Development Process Michael Whalen 1, Darren Cofer 1, Steven Miller 1, Bruce H. Krogh 2, Walter Storm 3 1 Rockwell Collins Inc., Advanced Technology
Software Verification/Validation Methods and Tools... or Practical Formal Methods
Software Verification/Validation Methods and Tools... or Practical Formal Methods John Rushby Computer Science Laboratory SRI International Menlo Park, CA John Rushby, SR I Practical Formal Methods: 1
Best Practices for Verification, Validation, and Test in Model- Based Design
2008-01-1469 Best Practices for Verification, Validation, and in Model- Based Design Copyright 2008 The MathWorks, Inc. Brett Murphy, Amory Wakefield, and Jon Friedman The MathWorks, Inc. ABSTRACT Model-Based
Development of AUTOSAR Software Components within Model-Based Design
2008-01-0383 Development of AUTOSAR Software Components within Model-Based Design Copyright 2008 The MathWorks, Inc. Guido Sandmann Automotive Marketing Manager, EMEA The MathWorks Richard Thompson Senior
Michael W. Whalen [email protected] http://www.cs.umn.edu/~whalen
Michael W. Whalen [email protected] http://www.cs.umn.edu/~whalen Work Address: 200 Union St. 4-192 Minneapolis, MN 55455 (651) 422-8834 Home Address: 4709 Virginia Lane Edina, Minnesota 55424 (952)
Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder
Towards a Framework for Generating Tests to Satisfy Complex Code Coverage in Java Pathfinder Matt Department of Computer Science and Engineering University of Minnesota [email protected] Abstract We present
Towards a Logical Foundation for Assurance Arguments for Plug & Play Systems
Towards a Logical Foundation for Assurance Arguments for Plug & Play Systems Lu Feng, Andrew King, Insup Lee, Oleg Sokolsky PRECISE Center School of Engineering and Applied Science University of Pennsylvania
Certification of a Scade 6 compiler
Certification of a Scade 6 compiler F-X Fornari Esterel Technologies 1 Introduction Topic : What does mean developping a certified software? In particular, using embedded sofware development rules! What
Model Based Software Development for DDG 1000 Advanced Gun System
BAE Systems Land & Armaments Model Based Software Development for DDG 1000 Advanced Gun System Dirk Jungquist BAE Systems Land & Armaments 2012 Distribution Statement A: Approved for public release; distribution
Automating Code Reviews with Simulink Code Inspector
Automating Code Reviews with Simulink Code Inspector Mirko Conrad, Matt Englehart, Tom Erkkinen, Xiaocang Lin, Appa Rao Nirakh, Bill Potter, Jaya Shankar, Pete Szpak, Jun Yan, Jay Clark The MathWorks,
www.dspace.com Model-Based Development of Safety-Critical Software: Safe and Effi cient
www.dspace.com Model-Based Development of Safety-Critical Software: Safe and Effi cient Translation of Sicherheitskritische Software entwickeln Published at: MEDengineering, 06/2012 Software for safety-critical
F-22 Raptor. Agenda. 1. Motivation
Model-Based Software Development and Automated Code Generation for Safety-Critical Systems F-22 Raptor for the Seminar Advanced Topics in Software Engineering for Safety-Critical Systems Cause: Bug in
Model Checking: An Introduction
Announcements Model Checking: An Introduction Meeting 2 Office hours M 1:30pm-2:30pm W 5:30pm-6:30pm (after class) and by appointment ECOT 621 Moodle problems? Fundamentals of Programming Languages CSCI
Software Development Principles Applied to Graphical Model Development
Software Development Principles Applied to Graphical Model Development Paul A. Barnard * The MathWorks, Natick, MA 01760, USA The four fundamental principles of good software design communicate clearly,
Introducing Formal Methods. Software Engineering and Formal Methods
Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended
Model-Driven Software Development for Robotics: an overview
Model-Driven Software Development for Robotics: an overview IEEE-ICRA2011 Workshop on Software Development and Integration in Robotics Jan F. Broenink, Maarten M. Bezemer Control Engineering, University
Agile Model-Based Systems Engineering (ambse)
Agile Model-Based Systems Engineering (ambse) Bruce Powel Douglass, Ph.D. Chief Evangelist, Global Technology Ambassador IBM Rational [email protected] Twitter: @BruceDouglass Yahoo: tech.groups.yahoo.com/group/rt-uml/
Making model-based development a reality: The development of NEC Electronics' automotive system development environment in conjunction with MATLAB
The V850 Integrated Development Environment in Conjunction with MAT...iles and More / Web Magazine -Innovation Channel- / NEC Electronics Volume 53 (Feb 22, 2006) The V850 Integrated Development Environment
Technical Data Sheet SCADE Suite R16. Software Prototyping and Design. Technical Data Sheet SCADE Suite R16 1
SCADE Suite R6 SCADE Suite is a product line of the ANSYS Embedded software family of products and solutions that empowers users with a Model-Based Development Environment for critical embedded software.
Critical Systems and Software Solutions
www.thalesgroup.com Thales Canada, Avionics Critical Systems and Software Solutions Thales Canada, Avionics Delivers Customer Satisfaction Fully integrated, solutions-oriented engineering Team at Your
Introduction to Static Analysis for Assurance
Introduction to Static Analysis for Assurance John Rushby Computer Science Laboratory SRI International Menlo Park CA USA John Rushby Static Analysis for Assurance: 1 Overview What is static analysis?
Converting Models from Floating Point to Fixed Point for Production Code Generation
MATLAB Digest Converting Models from Floating Point to Fixed Point for Production Code Generation By Bill Chou and Tom Erkkinen An essential step in embedded software development, floating- to fixed-point
SCADE Suite in Space Applications
SCADE Suite in Space Applications at EADS David Lesens 09/10/2008 Overview Introduction Historical use of SCADE at EADS Astrium ST Why using SCADE? The Automatic Transfer Vehicle (ATV) M51 and Vega R&T
SCADE System 17.0. Technical Data Sheet. System Requirements Analysis. Technical Data Sheet SCADE System 17.0 1
SCADE System 17.0 SCADE System is the product line of the ANSYS Embedded software family of products and solutions that empowers users with a systems design environment for use on systems with high dependability
Criteria for Software Tools Evaluation in the Development of Safety-Critical Real-Time Systems 1
Criteria for Software s Evaluation in the Development of Safety-Critical Real-Time Systems 1 Andrew J. Kornecki Embry-Riddle Aeronautical University Daytona Beach, FL 32114-3900, USA Janusz Zalewski Florida
Integrated Model-based Software Development and Testing with CSD and MTest
Integrated Model-based Software Development and Testing with CSD and Andreas Rau / Mirko Conrad / Helmut Keller / Ines Fey / Christian Dziobek DaimlerChrysler AG, Germany fa-stz-andreas.rau Mirko.Conrad
Assuring the Safety, Security, and Reliability of Medical-Device Cyber- Physical Systems (MDCPS)
Assuring the Safety, Security, and Reliability of Medical-Device Cyber- Physical Systems (MDCPS) Insup Lee PRECISE Center Department of Computer and Information Science University of Pennsylvania November
Ingo Stürmer, Dietrich Travkin. Automated Transformation of MATLAB Simulink and Stateflow Models
Ingo Stürmer, Dietrich Travkin Automated Transformation of MATLAB Simulink and Stateflow Models Ingo Stürmer Model Engineering Solutions Dietrich Travkin University of Paderborn Object-oriented Modeling
ADI Simulation Systems Help Speed Aircraft Development from Preliminary Design through Certification
ADI Simulation Systems Help Speed Aircraft Development from Preliminary Design through Certification Rapid advancements in avionics systems require moving from concept to certification as quickly and efficiently
Model-based Quality Assurance of Automotive Software
Model-based Quality Assurance of Automotive Software Jan Jürjens 1, Daniel Reiss 2, David Trachtenherz 3 1 Open University (GB) and Microsoft Research (Cambridge) 2 Elektrobit (Germany) 3 TU Munich (Germany)
Software Engineering for LabVIEW Applications. Elijah Kerry LabVIEW Product Manager
Software Engineering for LabVIEW Applications Elijah Kerry LabVIEW Product Manager 1 Ensuring Software Quality and Reliability Goals 1. Deliver a working product 2. Prove it works right 3. Mitigate risk
Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist.
Die wichtigsten Use Cases für MISRA, HIS, SQO, IEC, ISO und Co. - Warum Polyspace DIE Embedded Code-Verifikationslösung ist. Christian Guß Application Engineer The MathWorks GmbH 2015 The MathWorks, Inc.
Development Process Automation Experiences in Japan
Development Process Automation Experiences in Japan Dr. Olaf Kath ikv ++ technologies ag Germany ikv++ technologies ag 2007 who we are core business optimization and automation of our customer s system
Requirements Engineering Management Findings Report
DOT/FAA/AR-08/34 Air Traffic Organization NextGen & Operations Planning Office of Research and Technology Development Washington, DC 20591 Requirements Engineering Management Findings Report May 2009 Final
The Software Development Process
Systeme hoher Qualität und Sicherheit Universität Bremen WS 2015/2016 Lecture 03 (26.10.2015) The Software Development Process Christoph Lüth Jan Peleska Dieter Hutter Your Daily Menu Models of software
Specification and Analysis of Contracts Lecture 1 Introduction
Specification and Analysis of Contracts Lecture 1 Introduction Gerardo Schneider [email protected] http://folk.uio.no/gerardo/ Department of Informatics, University of Oslo SEFM School, Oct. 27 - Nov.
CMSC 435: Software Engineering Course overview. Topics covered today
CMSC 435: Software Engineering Course overview CMSC 435-1 Topics covered today Course requirements FAQs about software engineering Professional and ethical responsibility CMSC 435-2 Course Objectives To
On the Modeling and Verification of Security-Aware and Process-Aware Information Systems
On the Modeling and Verification of Security-Aware and Process-Aware Information Systems 29 August 2011 What are workflows to us? Plans or schedules that map users or resources to tasks Such mappings may
Quality Assurance of Models for Autocoding
Quality Assurance of Models for Autocoding Ann Cass, Pierre Castori S YNS PACE AG Hardstrasse 11 CH - 4052 Basel [email protected], [email protected] Abstract: Automatic Code Generation is an emerging technology
A Methodology for Safety Critical Software Systems Planning
A Methodology for Safety Critical Software Systems Planning EHAB SHAFEI 1, IBRAHIM F. MOAWAD 2, HANY SALLAM 1, ZAKI TAHA 3, MOSTAFA AREF 3 1 Operation Safety and Human Factors Department, 2 Information
Lecture 9 Modeling, Simulation, and Systems Engineering
Lecture 9 Modeling, Simulation, and Systems Engineering Development steps Model-based control engineering Modeling and simulation Systems platform: hardware, systems software. Control Engineering 9-1 Control
Applying 4+1 View Architecture with UML 2. White Paper
Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was
The Course. http://www.cse.unsw.edu.au/~cs3153/
The Course http://www.cse.unsw.edu.au/~cs3153/ Lecturers Dr Peter Höfner NICTA L5 building Prof Rob van Glabbeek NICTA L5 building Dr Ralf Huuck NICTA ATP building 2 Plan/Schedule (1) Where and When Tuesday,
Human-Automation Interaction Design and Evaluation Tools. Michael Feary, PhD
Human-Automation Interaction Design and Evaluation Tools Michael Feary, PhD Outline Human Automation interaction Research Challenges Research Approach Understanding Work domain analysis Visualization Prediction
INF5140: Specification and Verification of Parallel Systems
Motivation INF5140: Specification and Verification of Parallel Systems Lecture 1 Introduction: Formal Methods Gerardo Schneider Department of Informatics University of Oslo INF5140, Spring 2009 Outline
Integrating Legacy Code / Models with Model Based Development Using Rhapsody
Integrating Legacy Code / Models with Model Based Development Using Rhapsody M.W.Richardson 28/11/06 1 Telelogic AB Model Driven Development Very few Green Field projects are started, nearly always there
Software testing. Objectives
Software testing cmsc435-1 Objectives To discuss the distinctions between validation testing and defect testing To describe the principles of system and component testing To describe strategies for generating
How To Test Automatically
Automated Model-Based Testing of Embedded Real-Time Systems Jan Peleska [email protected] University of Bremen Bieleschweig Workshop 7 2006-05-05 Outline Technologie-Zentrum Informatik Objectives Basic concepts
Model Based System Engineering (MBSE) For Accelerating Software Development Cycle
Model Based System Engineering (MBSE) For Accelerating Software Development Cycle Manish Patil Sujith Annamaneni September 2015 1 Contents 1. Abstract... 3 2. MBSE Overview... 4 3. MBSE Development Cycle...
Integrating MATLAB into your C/C++ Product Development Workflow Andy Thé Product Marketing Image Processing Applications
Integrating MATLAB into your C/C++ Product Development Workflow Andy Thé Product Marketing Image Processing Applications 2015 The MathWorks, Inc. 1 Typical Development Workflow Translating MATLAB to C/C++
Why Adopt Model-Based Design for Embedded Control Software Development?
Why Adopt Model-Based Design for Embedded Control Software Development? As requirements for increased product performance are driving up design complexity, embedded software is increasingly becoming the
How To Set Up A Wide Area Surveillance System
Introduction The purpose of this white paper is to examine the benefits and limitations of shore based marine radar for waterside security applications. This technology has been deployed for over 60 years
AN EVALUATION OF MODEL-BASED SOFTWARE SYNTHESIS FROM SIMULINK MODELS FOR EMBEDDED VIDEO APPLICATIONS
International Journal of Software Engineering and Knowledge Engineering World Scientific Publishing Company AN EVALUATION OF MODEL-BASED SOFTWARE SYNTHESIS FROM SIMULINK MODELS FOR EMBEDDED VIDEO APPLICATIONS
Trends in Embedded Software Development in Europe. Dr. Dirk Muthig [email protected]
Trends in Embedded Software Development in Europe Dr. Dirk Muthig [email protected] Problems A software project exceeds the budget by 90% and the project time by 120% in average Project Management
Industrial case study: Zero defect secure software for the National Security Agency
p Industrial case study: Zero defect secure software for the National Security Agency Martin Croxford CEng MBCS Praxis High Integrity Systems Bath, UK Copyright Praxis High Integrity Systems Limited 2006
Development of Tool Extensions with MOFLON
Development of Tool Extensions with MOFLON Ingo Weisemöller, Felix Klar, and Andy Schürr Fachgebiet Echtzeitsysteme Technische Universität Darmstadt D-64283 Darmstadt, Germany {weisemoeller klar schuerr}@es.tu-darmstadt.de
Aircraft & Defense Vehicle Simulation Lab
Understanding Advanced System Integration Labs: -Centric System Integration This paper examines how successful aerospace and defense organizations are changing their processes to apply simulationbased
AJITHA RAJAN. School of Informatics Phone: (+ 44)(1316505118)
AJITHA RAJAN School of Informatics Phone: (+ 44)(1316505118) University of Edinburgh Email: [email protected] 10 Crichton Street Edinburgh EH8 9AB, United Kingdom EDUCATION Ph.D. in Computer Science,
Integrating MBD and CBD Workflows for Automotive Control Software
Integrating MBD and CBD Workflows for Automotive Control Software V. B. Singh, Ajinkya Bhave, Dhvinay P V, Dilli Atturu Siemens Industry Software (India) Private Limited., SKCL Central Square - 1, Guindy
EECS 294-98: Formal Methods for Engineering Education. Sanjit A. Seshia EECS, UC Berkeley
EECS 294-98: Formal Methods for Engineering Education Sanjit A. Seshia EECS, UC Berkeley Engineering Education (recent past) On-campus experience Instructor lectures / discusses in class Students listen
Real Time Developer Studio. Emmanuel Gaudin [email protected]
Real Time Developer Studio Emmanuel Gaudin [email protected] PragmaDev French SME, Beneficiary since 2006. Dedicated to the development of a modelling tool for the development of Event driven
Lecture 3 - Model-based Control Engineering
Lecture 3 - Model-based Control Engineering Control application and a platform Systems platform: hardware, systems software. Development steps Model-based design Control solution deployment and support
A Static Analyzer for Large Safety-Critical Software. Considered Programs and Semantics. Automatic Program Verification by Abstract Interpretation
PLDI 03 A Static Analyzer for Large Safety-Critical Software B. Blanchet, P. Cousot, R. Cousot, J. Feret L. Mauborgne, A. Miné, D. Monniaux,. Rival CNRS École normale supérieure École polytechnique Paris
JOINT STRIKE FIGHTER PHM VISION
Joint Strike Fighter,JSF, and the JSF Logo are Trademarks of the United States Government JOINT STRIKE FIGHTER PHM VISION Joint Strike Fighter Program Office. VISION BE THE MODEL ACQUISITION PROGRAM FOR
InvGen: An Efficient Invariant Generator
InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic
Software Verification for Space Applications Part 2. Autonomous Systems. G. Brat USRA/RIACS
Software Verification for Space Applications Part 2. Autonomous Systems G. Brat USRA/RIACS Main Objectives Implement a sustained and affordable human and robotic program to explore the solar system and
The Model Checker SPIN
The Model Checker SPIN Author: Gerard J. Holzmann Presented By: Maulik Patel Outline Introduction Structure Foundation Algorithms Memory management Example/Demo SPIN-Introduction Introduction SPIN (Simple(
A Comprehensive Safety Engineering Approach for Software Intensive Systems based on STPA
www.uni-stuttgart.de A Comprehensive Safety Engineering Approach for Software Intensive Systems based on STPA STPA-based Approach STPA Safety Analysis Asim Abdulkhaleq, Ph.D Candidate Institute of Software
The Role of Automation Systems in Management of Change
The Role of Automation Systems in Management of Change Similar to changing lanes in an automobile in a winter storm, with change enters risk. Everyone has most likely experienced that feeling of changing
Formal Specification and Verification of Avionics Software
Formal Specification and Verification of Avionics Software June 7th, 2006 Outline 1 Introduction Software in the avionics domain Certification requirements Object-oriented technologies 2 Specification
Best practices for developing DO-178 compliant software using Model-Based Design
Best practices for developing DO-178 compliant software using Model-Based Design Raymond G. Estrada, Jr. 1 The MathWorks, Torrance, CA Eric Dillaber. 2 The MathWorks, Natick, MA Gen Sasaki 3 The MathWorks,
Software Development with Real- Time Workshop Embedded Coder Nigel Holliday Thales Missile Electronics. Missile Electronics
Software Development with Real- Time Workshop Embedded Coder Nigel Holliday Thales 2 Contents Who are we, where are we, what do we do Why do we want to use Model-Based Design Our Approach to Model-Based
DIPLODOCUS: An Environment for. the Hardware/Software Partitioning of. Institut Mines-Telecom. Complex Embedded Systems
DIPLODOCUS: An Environment for Institut Mines-Telecom the Hardware/Software Partitioning of Complex Embedded Systems Ludovic Apvrille, [email protected] ETR 2013, Toulouse, France Goals
Using Model and Code Reviews in Model-based Development of ECU Software Mirko Conrad, Heiko Dörr, Ines Fey, Ingo Stürmer
Using Model and Code Reviews in Model-based Development of ECU Software DaimlerChrysler AG, Research E/E and Information Technology {Mirko.Conrad Heiko.Doerr Ines.Fey First.I.Stuermer}@DaimlerChrysler.com
Software Verification: Infinite-State Model Checking and Static Program
Software Verification: Infinite-State Model Checking and Static Program Analysis Dagstuhl Seminar 06081 February 19 24, 2006 Parosh Abdulla 1, Ahmed Bouajjani 2, and Markus Müller-Olm 3 1 Uppsala Universitet,
TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.
CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express
IBM Rational Rhapsody
IBM Rational Rhapsody IBM Rational Rhapsody Reference Workflow Guide Version 1.9 License Agreement No part of this publication may be reproduced, transmitted, stored in a retrieval system, nor translated
The V-model. Validation and Verification. Inspections [24.3] Testing overview [8, 15.2] - system testing. How much V&V is enough?
Validation and Verification Inspections [24.3] Testing overview [8, 15.2] - system testing Requirements Design The V-model V & V Plans Implementation Unit tests System tests Integration tests Operation,
UML-based Test Generation and Execution
UML-based Test Generation and Execution Jean Hartmann, Marlon Vieira, Herb Foster, Axel Ruder Siemens Corporate Research, Inc. 755 College Road East Princeton NJ 08540, USA [email protected] ABSTRACT
Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville
Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when
Model-Based Quality Assurance of The SMB2 Protocol Documentation
Model-Based Quality Assurance of The SMB2 Protocol Documentation Wolfgang Grieskamp Architect, Protocol Engineering Team, Microsoft Corporation Microsoft Part of the company s interoperability initiative
SCADE SUITE SOFTWARE VERIFICATION PLAN FOR DO-178B LEVEL A & B
SCADE SUITE SOFTWARE VERIFICATION PLAN FOR DO-78B LEVEL A & B TABLE OF CONTENTS. INTRODUCTION..... PURPOSE..... RELATED DOCUMENTS..... GLOSSARY... 9.. CONVENTIONS..... RELATION WITH OTHER PLANS....6. MODIFICATION
Testing of safety-critical software some principles
1(60) Testing of safety-critical software some principles Emerging Trends in Software Testing: autumn 2012 Matti Vuori, Tampere University of Technology 27.11.2012 Contents 1/4 Topics of this lecture 6
Safety Verification of the Small Aircraft Transportation System Concept of Operations
Safety Verification of the Small Aircraft Transportation System Concept of Operations Victor Carreño 1 NASA Langley Research Center, Hampton, Virginia, 23681 César Muñoz 2 National Institute of Aerospace,
CASSANDRA: Version: 1.1.0 / 1. November 2001
CASSANDRA: An Automated Software Engineering Coach Markus Schacher KnowGravity Inc. Badenerstrasse 808 8048 Zürich Switzerland Phone: ++41-(0)1/434'20'00 Fax: ++41-(0)1/434'20'09 Email: [email protected]
Static Program Transformations for Efficient Software Model Checking
Static Program Transformations for Efficient Software Model Checking Shobha Vasudevan Jacob Abraham The University of Texas at Austin Dependable Systems Large and complex systems Software faults are major
Software Engineering for Software-Intensive Systems: III The Development Life Cycle
Software Engineering for Software-Intensive Systems: III The Development Life Cycle Assistant Professor Dr. Room E 3.165 Tel. 60-3321 Email: [email protected] Outline I Introduction II Foundations III The Development
