Software Features – Quality, Quantity and the Difference – Updated

Software quality is not necessarily measured by the sheer number of features.

The only relationship between the two is a few metrics that measure quality by the number of features or modules of code and the number of defects. In that regard, adding a few features that work (or classifying a few operations as features) improves the quality of the software because the number or percent of defects declines, assuming what you add works.

Increasing the number of features does not necessarily improve the quality of a product. For example, adding more compatible data formats only improves the quality of the software if many users couldn’t get clean data imports until these data formats were made compatible. After this point, building in file conversions is a convenience but not a necessity.

Computer aided design software must allow drafters to create 2D and 3D designs. They need to be able to create lines, shapes, surfaces and models. The ability to add surface effects, create animations and introduce lighting effects is additional features, but they do not improve the CAD software’s quality. The CAD software quality will be measured in the use of the software and details such as whether intersections are clean and without errors when 3D models are assembled together, whether parametric modeling properly sizes items and if data is never corrupted by imports, exports and multiple saves by a product development team.

What features improve software quality?

• Anything that makes the user’s life easier, from simplifying process steps to eliminating tedious data entry
• Faster performance that saves users or system administrator time
• Functionality that simplifies or automates data transfers and inputs, such as automating the imports of customer data into your MRP system or updating your accounting software with transactions downloaded from a bank website
• Functions that allow users to correct their mistakes without having to go back to a saved file and recreate the intervening steps; automatic backups and the “undo” button are good examples of this
• Time saving features based on most commonly performed tasks as long as the software’s defaults can be over-ridden; for example, flagging possible duplicate records makes record clean up simpler, but software that automatically combines likely duplicated records creates a mess when two people with the same name find their medical records mixed up in one file
• Mistake-proofing features that prevent mistakes that require time and effort to correct
• Built in help that avoids time and possibly the expense of contacting application support
• Features that ensure data accuracy and record completeness improve data quality and the software’s value to users

When developing the requirements or code for software or any other IT product, remember that quality refers to how well the product helps the user perform the IT product’s core function quickly, easily, cheaply and correctly. Everything else is simply a bonus, and it is irrelevant if the bells and whistles interfere with the product’s primary purpose.

Advertisements