La   IEEE   define   a   la   confiabilidad   como   «la   habilidad   que tiene   un    sistema   o componente de realizar sus funciones requeridas bajo condiciones específicas en periodos de tiempo determinados».

La confiabilidad de software significa que un programa particular debe de seguir funcionando en la presencia de errores.

Los errores pueden ser relacionados al diseño, a la implementación, o a la programación.

  • Aunque casi todos los softwares tengan errores, la   mayoría   de los errores   nunca   serán revelados   debajo   de   circunstancias      Un atacante busca esta debilidad para atacar un sistema.
  • Las organizaciones   que   desarrollan   productos   basados   en   software requieren   de   prácticas   efectivas   que   permitan   mejorar   la   calidad del producto. La Ingeniería de la Confiabilidad de Software es una práctica cuantitativa que puede ser implementada en organizaciones de cualquier tamaño bajo distintos modelos de desarrollo.

Una falla es la manifestación percibida por el cliente de que algo no funciona correctamente e impacta su percepción de la calidad. Un defecto es el problema en el producto de software que genera una falla.

  • Se dice que un Software es confiable si realiza lo que el usuario desea, cuando así lo requiera
  • No es confiable si así no lo hiciera. A nuestros fines un Software no es confiable cuando falla.
  • Las fallas se deben a errores en el Software. Si corregimos estos errores sin introducir nuevos, mejoramos la Confiabilidad del Software

La confiabilidad es un aspecto en el cual se involucran diferentes dimensiones.

Los principales conceptos asociados a la confiabilidad del software son:

  • Fiabilidad.
  • Disponibilidad.
  • Mantenimiento.
  • Seguridad.
  • Protección.

Fiabilidad: En la ingeniería se usa generalmente para asegurar aquella condición de trabajo que permite al usuario realizar sus tareas para que el sistema no llegue a corromperse.

Disponibilidad: Se refiere a la condición de trabajo que un sistema debe de tener.

Seguridad:   Este   concepto   no   solo   describe   el   comportamiento   del   sistema, también nos define la habilidad que tiene este para poder resistir los ataques externos.

Mantenimiento:   Es   una   mediada   en   la   cual   el   sistema   está   apto   para reparaciones y modificaciones

Protección: Se refiere a la capacidad del sistema de permitir las fallas de manera inmediata, en caso de que el sistema llegara a fallar existirá alguna manera de proteger la información o las acciones que el sistema realice