Submit Search
Upload
Model-based Testing of a Software Bus - Applied on Core Flight Executive
•
Download as PPTX, PDF
•
1 like
•
1,095 views
Dharmalingam Ganesan
Follow
Experience of applying model-based testing on Core Flight Software's software bus.
Read less
Read more
Software
Report
Share
Report
Share
1 of 31
Download now
Recommended
Interface-Implementation Contract Checking
Interface-Implementation Contract Checking
Dharmalingam Ganesan
Assessing Model-Based Testing: An Empirical Study Conducted in Industry
Assessing Model-Based Testing: An Empirical Study Conducted in Industry
Dharmalingam Ganesan
Ivv workshop model-based-testing-of-nasa-systems
Ivv workshop model-based-testing-of-nasa-systems
Dharmalingam Ganesan
Automated Test Case Generation and Execution from Models
Automated Test Case Generation and Execution from Models
Dharmalingam Ganesan
Automated Testing of NASA Software
Automated Testing of NASA Software
Dharmalingam Ganesan
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Dharmalingam Ganesan
Secure application programming in the presence of side channel attacks
Secure application programming in the presence of side channel attacks
Dharmalingam Ganesan
Automated testing of NASA Software - part 2
Automated testing of NASA Software - part 2
Dharmalingam Ganesan
Recommended
Interface-Implementation Contract Checking
Interface-Implementation Contract Checking
Dharmalingam Ganesan
Assessing Model-Based Testing: An Empirical Study Conducted in Industry
Assessing Model-Based Testing: An Empirical Study Conducted in Industry
Dharmalingam Ganesan
Ivv workshop model-based-testing-of-nasa-systems
Ivv workshop model-based-testing-of-nasa-systems
Dharmalingam Ganesan
Automated Test Case Generation and Execution from Models
Automated Test Case Generation and Execution from Models
Dharmalingam Ganesan
Automated Testing of NASA Software
Automated Testing of NASA Software
Dharmalingam Ganesan
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Model-based Testing using Microsoft’s Spec Explorer Tool: A Case Study
Dharmalingam Ganesan
Secure application programming in the presence of side channel attacks
Secure application programming in the presence of side channel attacks
Dharmalingam Ganesan
Automated testing of NASA Software - part 2
Automated testing of NASA Software - part 2
Dharmalingam Ganesan
Reverse Engineering of Software Architecture
Reverse Engineering of Software Architecture
Dharmalingam Ganesan
Automatic Test Case Generation
Automatic Test Case Generation
Adnan Causevic
Rv11
Rv11
Wolfgang Grieskamp
Analysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product Line
Dharmalingam Ganesan
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Wolfgang Grieskamp
Automated Traceability for Software Engineering Tasks
Automated Traceability for Software Engineering Tasks
Dharmalingam Ganesan
Software testing tools (free and open source)
Software testing tools (free and open source)
Wael Mansour
Practical Software Testing Tools
Practical Software Testing Tools
Dr Ganesh Iyer
Hands-on Experience Model based testing with spec explorer
Hands-on Experience Model based testing with spec explorer
Rachid Kherrazi
Verification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICs
Dr. Shivananda Koteshwar
Types of test tools
Types of test tools
Vaibhav Dash
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
Amr E. Mohamed
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
Kim Herzig
system verilog
system verilog
Vinchipsytm Vlsitraining
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
sjust
Issre2014 test defectprediction
Issre2014 test defectprediction
Kim Herzig
Testing Tool Evaluation Criteria
Testing Tool Evaluation Criteria
basma_iti_1984
Formal Verification
Formal Verification
Ilia Levin
Parasoft fda software compliance part2
Parasoft fda software compliance part2
Engineering Software Lab
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled Datasets
Sung Kim
Linux binary analysis and exploitation
Linux binary analysis and exploitation
Dharmalingam Ganesan
Load-time Hacking using LD_PRELOAD
Load-time Hacking using LD_PRELOAD
Dharmalingam Ganesan
More Related Content
What's hot
Reverse Engineering of Software Architecture
Reverse Engineering of Software Architecture
Dharmalingam Ganesan
Automatic Test Case Generation
Automatic Test Case Generation
Adnan Causevic
Rv11
Rv11
Wolfgang Grieskamp
Analysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product Line
Dharmalingam Ganesan
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Wolfgang Grieskamp
Automated Traceability for Software Engineering Tasks
Automated Traceability for Software Engineering Tasks
Dharmalingam Ganesan
Software testing tools (free and open source)
Software testing tools (free and open source)
Wael Mansour
Practical Software Testing Tools
Practical Software Testing Tools
Dr Ganesh Iyer
Hands-on Experience Model based testing with spec explorer
Hands-on Experience Model based testing with spec explorer
Rachid Kherrazi
Verification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICs
Dr. Shivananda Koteshwar
Types of test tools
Types of test tools
Vaibhav Dash
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
Amr E. Mohamed
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
Kim Herzig
system verilog
system verilog
Vinchipsytm Vlsitraining
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
sjust
Issre2014 test defectprediction
Issre2014 test defectprediction
Kim Herzig
Testing Tool Evaluation Criteria
Testing Tool Evaluation Criteria
basma_iti_1984
Formal Verification
Formal Verification
Ilia Levin
Parasoft fda software compliance part2
Parasoft fda software compliance part2
Engineering Software Lab
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled Datasets
Sung Kim
What's hot
(20)
Reverse Engineering of Software Architecture
Reverse Engineering of Software Architecture
Automatic Test Case Generation
Automatic Test Case Generation
Rv11
Rv11
Analysis of Testability of a Flight Software Product Line
Analysis of Testability of a Flight Software Product Line
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Automated Traceability for Software Engineering Tasks
Automated Traceability for Software Engineering Tasks
Software testing tools (free and open source)
Software testing tools (free and open source)
Practical Software Testing Tools
Practical Software Testing Tools
Hands-on Experience Model based testing with spec explorer
Hands-on Experience Model based testing with spec explorer
Verification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICs
Types of test tools
Types of test tools
SE2018_Lec 20_ Test-Driven Development (TDD)
SE2018_Lec 20_ Test-Driven Development (TDD)
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
The Impact of Test Ownership and Team Structure on the Reliability and Effect...
system verilog
system verilog
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
It's Not a Bug, It's a Feature — How Misclassification Impacts Bug Prediction
Issre2014 test defectprediction
Issre2014 test defectprediction
Testing Tool Evaluation Criteria
Testing Tool Evaluation Criteria
Formal Verification
Formal Verification
Parasoft fda software compliance part2
Parasoft fda software compliance part2
Software Defect Prediction on Unlabeled Datasets
Software Defect Prediction on Unlabeled Datasets
Viewers also liked
Linux binary analysis and exploitation
Linux binary analysis and exploitation
Dharmalingam Ganesan
Load-time Hacking using LD_PRELOAD
Load-time Hacking using LD_PRELOAD
Dharmalingam Ganesan
Exploiting Cryptographic Misuse - An Example
Exploiting Cryptographic Misuse - An Example
Dharmalingam Ganesan
Verifying Architectural Design Rules of a Flight Software Product Line
Verifying Architectural Design Rules of a Flight Software Product Line
Dharmalingam Ganesan
Testing of C software components using Models
Testing of C software components using Models
Dharmalingam Ganesan
Threat Modeling: Applied on a Publish-Subscribe Architectural Style
Threat Modeling: Applied on a Publish-Subscribe Architectural Style
Dharmalingam Ganesan
Reverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device Software
Dharmalingam Ganesan
Explaining my Phd Thesis to layman
Explaining my Phd Thesis to layman
Dharmalingam Ganesan
Architecture Analysis of Systems based on Publish-Subscribe Systems
Architecture Analysis of Systems based on Publish-Subscribe Systems
Dharmalingam Ganesan
Self-Generating Test Artifacts for Selenium/WebDriver
Self-Generating Test Artifacts for Selenium/WebDriver
seleniumconf
Carbon Finance
Carbon Finance
Ajay Dhamija
How to Release Rock-solid RESTful APIs and Ice the Testing BackBlob
How to Release Rock-solid RESTful APIs and Ice the Testing BackBlob
Bob Binder
Ethical hacking & Information Security
Ethical hacking & Information Security
Ajay Dhamija
Viewers also liked
(13)
Linux binary analysis and exploitation
Linux binary analysis and exploitation
Load-time Hacking using LD_PRELOAD
Load-time Hacking using LD_PRELOAD
Exploiting Cryptographic Misuse - An Example
Exploiting Cryptographic Misuse - An Example
Verifying Architectural Design Rules of a Flight Software Product Line
Verifying Architectural Design Rules of a Flight Software Product Line
Testing of C software components using Models
Testing of C software components using Models
Threat Modeling: Applied on a Publish-Subscribe Architectural Style
Threat Modeling: Applied on a Publish-Subscribe Architectural Style
Reverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device Software
Explaining my Phd Thesis to layman
Explaining my Phd Thesis to layman
Architecture Analysis of Systems based on Publish-Subscribe Systems
Architecture Analysis of Systems based on Publish-Subscribe Systems
Self-Generating Test Artifacts for Selenium/WebDriver
Self-Generating Test Artifacts for Selenium/WebDriver
Carbon Finance
Carbon Finance
How to Release Rock-solid RESTful APIs and Ice the Testing BackBlob
How to Release Rock-solid RESTful APIs and Ice the Testing BackBlob
Ethical hacking & Information Security
Ethical hacking & Information Security
Similar to Model-based Testing of a Software Bus - Applied on Core Flight Executive
Requirements driven Model-based Testing
Requirements driven Model-based Testing
Dharmalingam Ganesan
PVS-Studio advertisement - static analysis of C/C++ code
PVS-Studio advertisement - static analysis of C/C++ code
Andrey Karpov
Qualidade de Software em zOS usando IBM Debug Tool e RDz
Qualidade de Software em zOS usando IBM Debug Tool e RDz
Paulo Batuta
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Mickael Istria
Neha Arora_Resume
Neha Arora_Resume
Neha Arora
Beekman5 std ppt_13
Beekman5 std ppt_13
Department of Education - Philippines
Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...
Jose Emilio Labra Gayo
Testing Presentation
Testing Presentation
sureshpkumar
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Erika Barron
Best Practices for Cross-Platform Native Applications
Best Practices for Cross-Platform Native Applications
Kevin Whinnery
ShwetaKBijay-resume
ShwetaKBijay-resume
Kumari Shweta Bijay
Cloud Reliability: Decreasing outage frequency using fault injection
Cloud Reliability: Decreasing outage frequency using fault injection
Jorge Cardoso
Handalian shelkey mobile-presentation_upa_2010
Handalian shelkey mobile-presentation_upa_2010
Lisa Renery Handalian
Writting Better Software
Writting Better Software
svilen.ivanov
Model level debugging and profiling, Code Generation Conference 2014
Model level debugging and profiling, Code Generation Conference 2014
Juha-Pekka Tolvanen
Track g semiconductor test program - testinsight
Track g semiconductor test program - testinsight
chiportal
Ovp Introduction Presentation (04 Feb 10)
Ovp Introduction Presentation (04 Feb 10)
simon56
Software development slides
Software development slides
iarthur
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
guest8861ff
50120140502017
50120140502017
IAEME Publication
Similar to Model-based Testing of a Software Bus - Applied on Core Flight Executive
(20)
Requirements driven Model-based Testing
Requirements driven Model-based Testing
PVS-Studio advertisement - static analysis of C/C++ code
PVS-Studio advertisement - static analysis of C/C++ code
Qualidade de Software em zOS usando IBM Debug Tool e RDz
Qualidade de Software em zOS usando IBM Debug Tool e RDz
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Neha Arora_Resume
Neha Arora_Resume
Beekman5 std ppt_13
Beekman5 std ppt_13
Software Architecture - Allocation taxonomies: building, deployment and distr...
Software Architecture - Allocation taxonomies: building, deployment and distr...
Testing Presentation
Testing Presentation
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Beyond Static Analysis: Integrating .NET Static Analysis with Unit Testing a...
Best Practices for Cross-Platform Native Applications
Best Practices for Cross-Platform Native Applications
ShwetaKBijay-resume
ShwetaKBijay-resume
Cloud Reliability: Decreasing outage frequency using fault injection
Cloud Reliability: Decreasing outage frequency using fault injection
Handalian shelkey mobile-presentation_upa_2010
Handalian shelkey mobile-presentation_upa_2010
Writting Better Software
Writting Better Software
Model level debugging and profiling, Code Generation Conference 2014
Model level debugging and profiling, Code Generation Conference 2014
Track g semiconductor test program - testinsight
Track g semiconductor test program - testinsight
Ovp Introduction Presentation (04 Feb 10)
Ovp Introduction Presentation (04 Feb 10)
Software development slides
Software development slides
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
50120140502017
50120140502017
More from Dharmalingam Ganesan
.NET Deserialization Attacks
.NET Deserialization Attacks
Dharmalingam Ganesan
Reverse Architecting using Relation Algebra.pdf
Reverse Architecting using Relation Algebra.pdf
Dharmalingam Ganesan
How to exploit rand()?
How to exploit rand()?
Dharmalingam Ganesan
Cyclic Attacks on the RSA Trapdoor Function
Cyclic Attacks on the RSA Trapdoor Function
Dharmalingam Ganesan
An Analysis of RSA Public Exponent e
An Analysis of RSA Public Exponent e
Dharmalingam Ganesan
An Analysis of Secure Remote Password (SRP)
An Analysis of Secure Remote Password (SRP)
Dharmalingam Ganesan
Thank-a-Gram
Thank-a-Gram
Dharmalingam Ganesan
Active Attacks on DH Key Exchange
Active Attacks on DH Key Exchange
Dharmalingam Ganesan
Can I write to a read only file ?
Can I write to a read only file ?
Dharmalingam Ganesan
How do computers exchange secrets using Math?
How do computers exchange secrets using Math?
Dharmalingam Ganesan
On the Secrecy of RSA Private Keys
On the Secrecy of RSA Private Keys
Dharmalingam Ganesan
Computing the Square Roots of Unity to break RSA using Quantum Algorithms
Computing the Square Roots of Unity to break RSA using Quantum Algorithms
Dharmalingam Ganesan
Analysis of Short RSA Secret Exponent d
Analysis of Short RSA Secret Exponent d
Dharmalingam Ganesan
Dependency Analysis of RSA Private Variables
Dependency Analysis of RSA Private Variables
Dharmalingam Ganesan
Analysis of Shared RSA Modulus
Analysis of Shared RSA Modulus
Dharmalingam Ganesan
RSA Game using an Oracle
RSA Game using an Oracle
Dharmalingam Ganesan
RSA Two Person Game
RSA Two Person Game
Dharmalingam Ganesan
RSA without Integrity Checks
RSA without Integrity Checks
Dharmalingam Ganesan
RSA without Padding
RSA without Padding
Dharmalingam Ganesan
Solutions to online rsa factoring challenges
Solutions to online rsa factoring challenges
Dharmalingam Ganesan
More from Dharmalingam Ganesan
(20)
.NET Deserialization Attacks
.NET Deserialization Attacks
Reverse Architecting using Relation Algebra.pdf
Reverse Architecting using Relation Algebra.pdf
How to exploit rand()?
How to exploit rand()?
Cyclic Attacks on the RSA Trapdoor Function
Cyclic Attacks on the RSA Trapdoor Function
An Analysis of RSA Public Exponent e
An Analysis of RSA Public Exponent e
An Analysis of Secure Remote Password (SRP)
An Analysis of Secure Remote Password (SRP)
Thank-a-Gram
Thank-a-Gram
Active Attacks on DH Key Exchange
Active Attacks on DH Key Exchange
Can I write to a read only file ?
Can I write to a read only file ?
How do computers exchange secrets using Math?
How do computers exchange secrets using Math?
On the Secrecy of RSA Private Keys
On the Secrecy of RSA Private Keys
Computing the Square Roots of Unity to break RSA using Quantum Algorithms
Computing the Square Roots of Unity to break RSA using Quantum Algorithms
Analysis of Short RSA Secret Exponent d
Analysis of Short RSA Secret Exponent d
Dependency Analysis of RSA Private Variables
Dependency Analysis of RSA Private Variables
Analysis of Shared RSA Modulus
Analysis of Shared RSA Modulus
RSA Game using an Oracle
RSA Game using an Oracle
RSA Two Person Game
RSA Two Person Game
RSA without Integrity Checks
RSA without Integrity Checks
RSA without Padding
RSA without Padding
Solutions to online rsa factoring challenges
Solutions to online rsa factoring challenges
Recently uploaded
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
OPEN KNOWLEDGE GmbH
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
soniya singh
DNT_Corporate presentation know about us
DNT_Corporate presentation know about us
Dynamic Netsoft
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
joe51371421
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
kaushalgiri8080
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
soniya singh
Asset Management Software - Infographic
Asset Management Software - Infographic
Hr365.us smith
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Delhi Whatsup 9873940964 Enjoy Unlimited Pleasure
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio, Inc.
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
aditisharan08
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
kotipi9215
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
shikhaohhpro
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
MyIntelliSource, Inc.
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
Mehedi Hasan Shohan
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
Wave PLM
EY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
Neo4j
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
BradBedford3
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
MyIntelliSource, Inc.
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Alberto González Trastoy
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
kalichargn70th171
Recently uploaded
(20)
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
DNT_Corporate presentation know about us
DNT_Corporate presentation know about us
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Naraina Delhi 💯Call Us 🔝8264348440🔝
Asset Management Software - Infographic
Asset Management Software - Infographic
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
EY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
Model-based Testing of a Software Bus - Applied on Core Flight Executive
1.
1© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Model-based Testing of a Software Bus applied on Core Flight Executive Dharmalingam Ganesan, Mikael Lindvall Dave McComas (NASA GSFC) Presented at Flight Software Workshop, Pasadena, CA, 2014
2.
2© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Traditional Test Automation Only test execution is automated E.g. Junit, CuTest, etc. Test cases are manually constructed Effort intensive Some issues with traditional testing: Insufficient coverage of off-nominal behaviors Tests are too-detailed with low-level details Not easy to test multi-tasking architecture More on this later.
3.
3© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Model-based Testing (MBT) The tester develops a model (a.k.a. testing models) instead of writing suite of test cases The model becomes the test oracle Test cases are auto-generated from the model based on requirements, API documentations Key benefits: Tester works at a high-level of abstraction Innumerable number of test cases derived from the model Triggers many, if not all, off-nominal behaviors Precise specification
4.
4© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering System under test (SUT) • The Core Flight Software System (CFS) • a mission-independent, platform-independent, Flight Software (FSW) environment integrating a reusable core flight executive (cFE) • The CFS is a product-line developed by the NASA Goddard Space Flight Center (GSFC) • CFS is implemented in C • cFE layer of the CFS is open source
5.
5© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering cFE/CFS Context Diagram Inter-task Message Router (SW Bus) Transponders Commands Real-time Telemetry (UDP) Comm Cards File downlink (CFDP) Summit Chip Mass Storage System CFDP File Transfer File Manager Local Storage Data Storage Event Services Executive Services Time Services 1553 Bus Support Software Bus Command Ingest Telemetry Output Table Services EDAC Memory Scrubber Self Test Memory Dwell Instrument Manager Checksum Memory Manager GN&C Applications (4) Mission Apps cFE core App CFS Applications Stored Commanding Software Scheduler Health & Safety Manager House- keeping Limit Checker
6.
6© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering MBT of Software Bus cFE has a software bus (SB) Apps communicate indirectly using the SB Publish-Subscribe architectural style SB has unit-tests (developed by NASA GSFC) Good coverage but not taking multi-tasking into consideration Goals: find defects related to multi-tasking (difficult!) Generate test cases for SB Generate the “bubbles” (the apps on previous slide) Demonstrate the applicability of MBT Developed an approach of testing SB Allows testing of multi-tasking architectures
7.
7© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Scope of the current model Modeled the following behaviors Create Pipes (to hold messages) Delete Pipes Subscribe to Messages Send Messages Receive Messages Multiple Apps (dynamically instantiated) Innumerable test cases (in C) auto-generated Model based on Microsoft’s Spec Explorer Tool Will get back to this
8.
8© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Challenges of testing a SB To test a SB we need apps that publish-subscribe Apps are runtime tasks that communicate using the SB Apps publish/subscribe to messages Each app cannot decide on its own the correctness Correctness depends on the global state of the system E.g: subscribe(msg), RecvMsg() may not work if no other task is publishing any message The order of execution of tasks also matters Need a test architecture!
9.
9© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Test Architecture – Key Ideas Parent/Child architecture for testing Each test case is a parent Each test case runs as an app At run-time, one or more child tasks are spanned by the parent Model controls the behavior of the parent All test assertions are decided by the parent All child tasks share the codebase How the parent and children communicate? Why not just use the software bus itself?
10.
10© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Test Architecture CFE Paren t Child 1 Child 2 Child n Command Pipe All child tasks share the codebase
11.
11© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Test Architecture – Key Ideas Each child task subscribes to all commands, such as Create Pipe, Delete Pipe, Subscribe, etc. Parent broadcast commands to all child tasks Communication uses CFE infrastructure Task id of the child is also part of the message struct Only the target child can perform a certain command Child tasks perform the command and send the return code back to the parent Child tasks send out a result msg Parent task subscribes to the result msg The parent verifies test assertion Asserts are generated from the model
12.
12© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Spec Explorer – Brief Background Tester develops a model (a.k.a. model program) Spec Explorer runs as a plug-in to MS Visual Studio Model programs are written in C# like syntax The model program is a simplified version of the SUT Spec Explorer generates state machines from models Also checks whether model satisfies invariants Helps in validating the model Test cases are automatically derived from state machines SUT’s behavior is automatically compared with model
13.
13© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Abstractions for the model program Model program is another implementation of the SUT But we do not want to create two implementations No one wants to maintain two implementations No one wants to develop a system two times How did we create a simplified version of the SUT? Key idea: Apply abstractions Model of GPM, which uses CFE
14.
14© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Sample abstractions for a model Model is agnostic to multi-tasking complexity of the SB Model has a very simple message structure Message is modeled as an int (not C structures) Message queues/pipes are also abstracted Finite depth Message queues are modeled as simple sequences instead of using shared memory No pointers, threads, semaphores at the model level Very simple data structure using very basic data types int, boolean, maps
15.
15© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Structure of the model program E.g.: Number of apps, pipes Represent the state of the bus Used for excluding the uninteresting states Which states are good for terminating tests Models the actual logic of the software bus Preconditions for enabling the rule methods to fire Generates values for rule method Utilties for rule methods and guards
16.
16© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering State Data
17.
17© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Fragments of the model program Rules are enabled only if Condition.IsTrue returns true
18.
18© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Fragments of the guards
19.
19© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Slicing the model for specific tests
20.
20© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Generated from the model program We generate the model! In “regular” MBT you have to manually create the model.
21.
21© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Generated test sequences - sample Each chain is a test case
22.
22© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering SUT Adapter Adapter wraps the SUT Converts data/commands from the model into SUT’s syntax Adapter simplifies modeling complexity Methods of the model should map to the adapter Our adapter is in C# We “print” test code from our adapter in C Converts C# tests into C tests Recall that CFE’s SB interface is in C
23.
23© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Our abstracted interface for Testing int32 InitApp_w(int32 appName); int32 CreatePipe_w(int32 appName, int32 pipeName, int32 pipeDepth); int32 DeletePipe_w(int32 appName, int32 pipeName); int32 Subscribe_w(int32 appName, int32 msgId, int32 pipeName); int32 UnSubscribe_w(int32 appName, int32 msgId, int32 pipeName); int32 RcvMsg_w(int32 appName, int32 pipeName, int32* actualMsgId); int32 SendMsg_w(int32 appName, int32 msgId);
24.
24© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Sample generated test case void Parent_TestAppMain( void ) { int32 status; uint32 RunStatus = CFE_ES_APP_RUN; Parent_TestAppInit(); status = InitApp_w(APP_0); assert(status == CFE_SUCCESS); status = CreatePipe_w(APP_0, PIPE_0, 1); assert(status == CFE_SUCCESS); status = Subscribe_w(APP_0, MSG_0, PIPE_0); assert(status == CFE_SUCCESS); status = Subscribe_w(APP_0, MSG_1, PIPE_0); assert(status == CFE_SUCCESS); status = UnSubscribe_w(APP_0, MSG_1, PIPE_0); assert(status == CFE_SUCCESS); CFE_ES_ExitApp(RunStatus); }
25.
25© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Advantages of using Model-Based Testing The model focuses on the domain (easier to understand) Instead of being source code oriented (harder to understand) We automatically generate an endless number of executable test cases (high coverage) Instead of manually writing individual test cases The information is in one place: in the model, easy to maintain Instead of being spread out (hard to maintain) The test cases can easily be run over and over again
26.
26© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Advantages of using Spec Explorer Generated tests are pretty readable This is due to the ability to slice models into smaller models Data parameters are well handled E.g., Model can be configured to test multiple apps Models are programs Ideal for programmers (who prefer coding) Models can be formally verified Invariants encoded in the model help to validate the model
27.
27© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Challenges with Spec Explorer Modeling errors can lead to infinite state machine Need to be careful even for small models (e.g., int parameters) Syntax for slicing the model is powerful but not that easy Easy to misuse some of (algebraic) operators for slicing Completeness of our slices Did we miss any combination of behaviors during slicing? Model debugging. For example: Why a new state was generated? Where/Why the invariants are violated?
28.
28© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Applicability to other flight software The same approach is applicable to other types of sw Requirements are that The software has an interface (e.g. API, GUI) Through which commands (stimuli) can be sent Through which results (responses) can be received Need (some) specification Optional: Sample test cases, API usage examples
29.
29© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Conclusion MBT works well for testing of multi-tasking architecture In this case of a software bus Parent/Child test architecture facilitates testing Individual tasks cannot decide correctness of their own Parent coordinates with children and asserts correctness Models and generated state machines: a good spec! Innumerable number of test cases from the model Test cases are agnostic to cFE syntax but still executable Need to be careful in managing the model’s complexity Abstraction is important Otherwise the model will be as complex as the system under
30.
30© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Acknowledgement Jan-Philip Quirmbach (Fraunhofer Intern) cFE is open source – not an issue for foreign interns Alan Cudmore (NASA GSFC) OSMA SARP: Martha Wetherholt (NASA HQ) Ken Rehm (NASA IV&V) Ricky A. Forquer (NASA IV&V) This work was partly funded by SARP
31.
31© 2014 Fraunhofer
USA, Inc. Center for Experimental Software Engineering Questions Dharma Ganesan (dganesan@fc-md.umd.edu)
Download now