A software producer, or developer, creates or develops a set of programs to meet the specifications of a user, if there is a contract, or of a specific problem if it is general software.The discussion touches on stan- dards, reliability, security, safety, quality of software, quality of service of software products, causes of software failures, developer and buyer protection, and techniques for improving software quality.The buyer may be an individual or a company.