Software is an important constituent of any business. It contains all sensitive information related to the functioning and operation of business. Software affects the worldwide economic processes and services. Software assurance can be defined as the strategic and logical set of activities to ensure that software processes and products follow requirements, standards, and procedures and are free from vulnerabilities. Software developed must be robust and free from any vulnerabilities or attacks. Software vulnerabilities serve as the main point of entry for attackers who are trying to gain access to systems or data. These vulnerabilities are needed to be checked in order to ensure secure and threat free software.