Software Quality is the degree to which a system, component, or process meets specified requirements. Ability of a product, service, system, component, or process to meet customer or user needs, expectations, or requirements. (IEEE). Increasing the quality of the software typically means reducing the number of defects in the software. Defects can result from mistakes that occurred during the development process that introduced faults into the software work products. Defects can also be missing, ambiguous, or incorrect requirements that result in the development of software that does not match the needs of its stakeholders. How to build a quality software product? Please discuss the role of the following factors.