Are most big companies using the SCRUM / Kanban methodology (or framework) to satisfy the AGILE/Waterfall/V-Model philosophy (SDLC) ? I'd like to move away from a rapid-prototype environment to something more formal in order to develop high quality/safe products containing embedded software.. for ANY industry.. Aerospace (like Lockhead's SEAL Level X, Boeing , DDPMAS, DAL A to E etc) , Medical or Nuclear industries.. even Automotive. I'd love to see a trivial project example that shows all the steps and outputs. For example, assuming I document the process on how the code is generated, what constitutes proof that it's safe? Static Analysis? Code Coverage - Statement (Level C), Decision (Level B), MCDC (Level A)? Who defines the unit tests? I imagine there are differences between the industries.. FAA : DO-178X , DO 331 , ARP4754A , ED-12C FDA : 13485 , ISO14971 , IEC 62304 , SaMD and DOE Nuclear : 414.1x, (Automotive : 26262) but what are the typical tools/software needed, and the typical document/artifacts in the various stages of the software life cycle? I saw a good video by CEMILAC Education Program "Airborne Software Development & Certification Process" and it's a bit overwhelming: Requirement Management - (IBM Ration) DOORS, JAMA, Xebrio, rmtoo florath , doorstop-dev / doorstop , reqview, STELL Static Structural Source Code Analysis - Parasoft, PolySpace, CodeSonar, horusec , SonarCloud, veracode PREFast, TBrun, LDRA, absint astree Dynamic Analysis / Modified Condition/Decision Coverage (MC/DC) - VectorCAST, RapiTest Traceability Tools: Reqtify , Polarion , McCabe Configuration Management / Storage and Version Control System - Git, SourceSafe, Mercurial, MS TFS, ClearCase QA / ALM- Helix ALM for Managing Artifacts, Establishing Traceability, Documenting / Enforcing Processes, etc (I)V&V / Unit Test Automation - VectorCAST, LDRA Testbed , Mathworks Simulink DO Qualification Kit Continuous Integration / CD - Continuous Delivery/Deployment - Jenkins, Bamboo, or GitLab CI/CD And what is the general attitude towards open source software (ex. FreeRTOS) and code-generation tools (ex. ST's Cube MX)? Also, how do CPLD and FPGAs fit in to the embedded software picture.. since not exactly software nor hardware, since they are programmable devices written in an programming language like VHDL , (system) verilog , Amaranth HDL ? How would DO-254 apply to HDLs?
Are most big companies using the SCRUM / Kanban methodology (or framework) to satisfy the AGILE/Waterfall/V-Model philosophy (SDLC) ?
I'd like to move away from a rapid-prototype environment to something more formal in order to develop high quality/safe products containing embedded software.. for ANY industry.. Aerospace (like Lockhead's SEAL Level X, Boeing , DDPMAS, DAL A to E etc) , Medical or Nuclear industries.. even Automotive. I'd love to see a trivial project example that shows all the steps and outputs.
For example, assuming I document the process on how the code is generated, what constitutes proof that it's safe?
Static Analysis?
Code Coverage - Statement (Level C), Decision (Level B), MCDC (Level A)?
Who defines the unit tests?
I imagine there are differences between the industries..
FAA : DO-178X , DO 331 , ARP4754A , ED-12C
FDA : 13485 , ISO14971 , IEC 62304 , SaMD and
DOE Nuclear : 414.1x,
(Automotive : 26262)
but what are the typical tools/software needed, and the typical document/artifacts in the various stages of the software life cycle?
I saw a good video by CEMILAC Education Program "Airborne Software Development & Certification Process" and it's a bit overwhelming:
Requirement Management - (IBM Ration) DOORS, JAMA, Xebrio, rmtoo florath , doorstop-dev / doorstop , reqview, STELL
Static Structural Source Code Analysis - Parasoft, PolySpace, CodeSonar, horusec , SonarCloud, veracode PREFast, TBrun, LDRA, absint astree
Dynamic Analysis / Modified Condition/Decision Coverage (MC/DC) - VectorCAST, RapiTest
Traceability Tools: Reqtify , Polarion , McCabe
Configuration Management / Storage and Version Control System - Git, SourceSafe, Mercurial, MS TFS, ClearCase
QA / ALM- Helix ALM for Managing Artifacts, Establishing Traceability, Documenting / Enforcing Processes, etc
(I)V&V / Unit Test Automation - VectorCAST, LDRA Testbed , Mathworks Simulink DO Qualification Kit
Continuous Integration / CD - Continuous Delivery/Deployment - Jenkins, Bamboo, or GitLab CI/CD
And what is the general attitude towards open source software (ex. FreeRTOS) and code-generation tools (ex. ST's Cube MX)?
Also, how do CPLD and FPGAs fit in to the embedded software picture.. since not exactly software nor hardware, since they are programmable devices written in an programming language like VHDL , (system) verilog , Amaranth HDL ? How would DO-254 apply to HDLs?