Para que un software tenga calidad debe de cumplir con los siguientes requisitos:
+Corrección (¿Hace lo que se le pide?)
• El grado en que una aplicación satisface susespecificaciones y consigue los objetivos encomendados por el usuario
+ Fiabilidad (¿Lo hace de forma fiable todo el tiempo?)
• El grado que se puede esperar de una aplicación lleve a cabo lasoperaciones
especificadas y con la precisión requerida.
+ Eficiencia (¿Qué recursos hardware y software necesito?)
• La cantidad de recursos hardware y software que necesita una aplicaciónpara realizar las operaciones con los tiempos de respuesta adecuados.
+ Integridad (¿Puedo controlar su uso?)
• El grado con que puede controlarse el acceso al software o a los datos apersonal no autorizado.
+Facilidad de uso (¿Es fácil y cómodo de manejar?)
• El esfuerzo requerido para aprender el manejo de una aplicación, trabajar con ella, introducir datos yconseguir resultados.
+Facilidad de mantenimiento (¿Puedo localizar los fallos?)
• El esfuerzo requerido para localizar y reparar errores.
+ Flexibilidad (¿Puedo añadir nuevasopciones?)
• El esfuerzo requerido para modificar una aplicación en funcionamiento
+ Facilidad de prueba (¿Puedo probar todas las opciones?)
• El esfuerzo requerido para probar una aplicaciónde forma que cumpla con lo especificado en los requisitos.
+Portabilidad (¿Podré usarlo en otra máquina?)
• El esfuerzo requerido para transferir la aplicación a otro hardware osistema operativo.
+ Reusabilidad (¿Podré utilizar alguna parte del software en otra aplicación?)
• Grado en que partes de una aplicación pueden utilizarse en otras aplicaciones+Interoperabilidad (¿Podrá comunicarse con otras aplicaciones o sistemas informáticos?)
• El esfuerzo necesario para comunicar la aplicación con otras aplicaciones o sistemas informáticos.