The system must adhere to following software quality factors:
* Functionality: ability to perform all required functions
* Reliability: ability to perform with correct, consistent results
* Maintainability: the ability to be easily corrected
* Availability: the ability to be accessed and operated when needed
* Portability: ability to be easily modified for a new environment
* Reusability: the ability to be used in multiple applications
* Testability: the ability to be easily and thoroughly tested
* Usability: the ability to be easily learned and used