Software QA is the process of analyzing and checking specific attributes or properties of a software product. Typically a QA team identifies issues that software developers work to fix and correct. Software QA processes are defined and described by standards such as DO-178B, IEC 61508, and ISO 26262.
Software QA engineers check the software for a variety of potential defects and errors using processes such as validating that the software performs as specified and operates in a robust manner. In critical embedded software applications, the software must perform in a robust manner and be free of run-time errors. If Software QA is not performed, run-time errors could manifest in production and cause undesirable behavior. Software QA processes use tools such as static code analysis to identify where the software might fail and to ultimately prove the software is robust.
You can use the Polyspace static code analysis tool to automate and streamline the QA process. It can detect and prove the absence of run-time errors in your source code. A QA organization or group can use Polyspace reports to identify which parts of the code are proven to be reliable and which aspects are at risk to fail.