Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Saltillo
Ingeniera Mecnica-Mecatrnica
7to Semestre: Redes Industriales
Calidad de Software
Aplicaciones
La calidad del software es medible y vara de un sistema a otro o de un programa
a otro. Un software elaborado para el control de naves espaciales debe ser confiable
al nivel de "cero fallas"; un software hecho para ejecutarse una sola vez no requiere
el mismo nivel de calidad; mientras que un producto de software para ser explotado
durante un largo perodo (10 aos o ms), necesita ser confiable, mantenible y
flexible para disminuir los costos de mantenimiento y perfeccionamiento durante el
tiempo de explotacin.
La calidad de software se aplica para cualquier programa conocido. Siempre y
cuando cumpla sus funciones y con lo descrito en el prrafo anterior, un software
puede ser considerado con calidad.
Existen unos tests de mejora de calidad que, como su nombre lo dice, son pruebas
que se realizan despus de haber terminado el desarrollo del software y antes de
ser lanzado al mercado
Tests unitarios
Esta es una tarea normalmente en exclusiva de los desarrolladores. Pero sin ella
los bugs se propagan como una plaga.
Los tests unitarios son la primera barrera de control contra posibles bugs. Son la
base del test driven development, si se quisiera seguir ese proceso. Agilizan el
trabajo al poder cambiar partes del cdigo y comprobar los fallos rpidamente. Son
ejemplos para los nuevos desarrolladores que se aadan al proyecto.
Tests de integracin
Los tests de integracin son los que verdaderamente comprueban que el sistema
est funcionando. Unen partes del sistema y comprueban que encajan sin
problemas. Son la base del behaviour driven development, junto con los tests
funcionales. Los tests unitarios no tienen en cuenta elementos tan importantes como
los accesos a base de datos o peticiones de red. No son suficiente para comprobar
que el comportamiento es correcto.
Tests funcionales
Es un paso ms all de los tests de integracin y tratan de probar el sistema como
lo hara un usuario. Aqu entra especialmente la automatizacin de interfaces
grficas. Son las pruebas funcionales que ms mantenimiento necesitan y las ms
lentas.
Caractersticas
Funcionabilidad: que el usuario pueda utilizar el software.
Eficiente: hace bien lo que debe hacer; lo hace a tiempo y no derrocha recursos.