Software quality reflects how well a software conforms to given requirements (functional and non-functional), how much it shows characteristics like reliability, efficiency, security, maintainability.
- Stackoverflow.com Wiki
There’s a lot of bad software out there. Unreliable, insecure, unsafe and unusable. It’s become so bad that some people are demanding regulation of software development and licensing software developers as “software engineers” so that they can be held to professional standards, and potentially sued for negligence or malpractice.
Disappointment occurs when expectations don’t match reality. And our expectations for software quality are profoundly unrealistic. Thus, lots of people are continuously disappointed — even enraged — by software bugs. They shouldn’t be.
Developers have to have a say in deadlines or you will never be able to build high quality software. This is step 1. This is the whole foundation that quality software is built on top of. You must tackle this first.