Software quality begins with the quality of the requirements.
Every company desires to have 'quality software.' But the challenge is, many struggle to provide a definition or rationale. It is an age old adage that you can't nail software quality down to single definition. And perhaps we try too hard to come up with one-size fits all into a single sentence. In fact, there are quite a few perspectives upon quality software.
- Software quality begins with the quality of the requirements. It is impossible to deliver an acceptable application to a business without a clear understanding of what is to be delivered. This is a simple idea, but capturing requirements at the level necessary to get it right the first time is difficult and potentially expensive.
- Easy to Use: A better user interface can make the high quality software even more qualified, many times, lack of user adoption is one of the issues to fail new software apps. Design thinking is more critical than ever in today's customer, user-centric digital environment, as there are always alternatives and better solutions emerging from the market soon.
- Responsive - meets the needs of the business and doesn't waste time; something will change, and you want to cheaply and quickly confirm that the corresponding changes to the deployed software keep it working (something could be the requirements or any hardware or software component that is used by the software under consideration).
- Testability: if the requirements are not specified as [largely automated] tests, it's hard to know whether they've been met. Every $1 spent on requirements and specification and design testing is likely to result in $4 of cost avoidance later on. It's about moving the spending on testing to earlier in the life cycle where it costs less to fix problems, reduces the cost of development and results in increased quality. Regardless of what they deem as good quality, the challenge is in being able to measure that quality. Having the right process and tools to provide those key metrics is a fundamental requirement to then put in place actions to drive up quality
Therefore, software quality is defined by a number of factors – it is having that capability to capture real metrics that often drives quality improvement initiatives. To use an old adage there’s no silver bullet- and to effectively lead an organization into good (not always best) practice to focus on quality attributes takes work and a level of credibility within the organization
Read More about magic "I" in CIOs:
CIO as Chief Interpretation Officer
CIO as Chief Imagination Officer