6

Atributos de calidad de un producto de software

Si has llegado hasta aquí es porque de verdad quieres pulir tus conocimientos que te permitirán comprender mejor cómo diseñar un buen software. A continuación responderé ¿Qué es un atributo de calidad cuando hablamos de un producto de Software? y ¿Cuales son?.

  • ¿Qué es un atributo de calidad cuando hablamos de arquitectura de de un producto Software?
    Un atributo de calidad es una propiedad medible de un sistema, que indica qué tan bien el sistema satisface las necesidades de las partes interesadas.También se los conoce como:

  • Requerimientos no funcionales

  • Características de arquitectura

  • Propiedades de calidad

Listado de atributos de calidad con una breve explicación de cada uno de ellos validados por el modelo de calidad ISO25010:

Compatibilidad
Capacidad de dos o más sistemas o componentes para intercambiar información y/o llevar a cabo sus funciones requeridas cuando comparten el mismo entorno hardware o software. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Interoperabilidad: Facilidad de comunicación con componentes externos.
  • Coexistencia:Estar en un contexto con otros sistemas.

Usabilidad
Capacidad del producto software para ser entendido, aprendido, usado y resultar atractivo para el usuario, cuando se usa bajo determinadas condiciones. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Reconocimiento de idoneidad: Capacidad del producto que permite al usuario entender si el software es adecuado para sus necesidades.
  • Capacidad de aprendizaje: Capacidad del producto que permite al usuario aprender su aplicación.
  • Capacidad para ser usado: Capacidad del producto que permite al usuario operarlo y controlarlo con facilidad.
  • Protección contra errores de usuario: Capacidad del sistema para proteger a los usuarios de hacer errores y de darle FeedBack sobre los mismos.
  • Estética de la interfaz de usuario: Capacidad de la interfaz de usuario de agradar y satisfacer la interacción con el usuario.
  • Accesibilidad: Capacidad del producto que permite que sea utilizado por usuarios con determinadas características y discapacidades.

Fiabilidad / Confiabilidad
Capacidad de un sistema o componente para desempeñar las funciones especificadas, cuando se usa bajo unas condiciones y periodo de tiempo determinados. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Madurez: Capacidad del sistema para satisfacer las necesidades de fiabilidad en condiciones normales.
  • Disponibilidad: Capacidad del sistema o componente de estar operativo y accesible para su uso cuando se requiere.
  • Tolerancia a fallos: Capacidad del sistema o componente para operar según lo previsto en presencia de fallos hardware o software.
  • Capacidad de recuperación: Capacidad del producto software para recuperar los datos directamente afectados y reestablecer el estado deseado del sistema en caso de interrupción o fallo.

Adecuación Funcional
Representa la capacidad del producto software para proporcionar funciones que satisfacen las necesidades declaradas e implícitas, cuando el producto se usa en las condiciones especificadas. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Completitud funcional: Grado en el cual el conjunto de funcionalidades cubre todas las tareas y los objetivos del usuario especificados.
  • Corrección funcional: Capacidad del producto o sistema para proveer resultados correctos con el nivel de precisión requerido.
  • Pertinencia funcional: Capacidad del producto software para proporcionar un conjunto apropiado de funciones para tareas y objetivos de usuario especificados.

Eficiencia de desempeño
Esta característica representa el desempeño relativo a la cantidad de recursos utilizados bajo determinadas condiciones. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Comportamiento temporal: Los tiempos de respuesta y procesamiento y los ratios de throughput de un sistema cuando lleva a cabo sus funciones bajo condiciones determinadas en relación con un banco de pruebas (benchmark) establecido.
  • Utilización de recursos: Las cantidades y tipos de recursos utilizados cuando el software lleva a cabo su función bajo condiciones determinadas.
  • Capacidad: Grado en que los límites máximos de un parámetro de un producto o sistema software cumplen con los requisitos.

Seguridad
Capacidad de protección de la información y los datos de manera que personas o sistemas no autorizados no puedan leerlos o modificarlos. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Confidencialidad: Capacidad de protección contra el acceso de datos e información no autorizados, ya sea accidental o deliberadamente.
    -Integridad: Capacidad del sistema o componente para prevenir accesos o modificaciones no autorizados a datos o programas de ordenador.
    -No repudio: Capacidad de demostrar las acciones o eventos que han tenido lugar, de manera que dichas acciones o eventos no puedan ser repudiados posteriormente.
    -Responsabilidad: Capacidad de rastrear de forma inequívoca las acciones de una entidad.
    -Autenticidad: Capacidad de demostrar la identidad de un sujeto o un recurso.

Mantenibilidad
Esta característica representa la capacidad del producto software para ser modificado efectiva y eficientemente, debido a necesidades evolutivas, correctivas o perfectivas. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:
-Modularidad: Capacidad de un sistema o programa de ordenador (compuesto de componentes discretos) que permite que un cambio en un componente tenga un impacto mínimo en los demás.
-Reusabilidad: Capacidad de un activo que permite que sea utilizado en más de un sistema software o en la construcción de otros activos.
-Analizabilidad: Facilidad con la que se puede evaluar el impacto de un determinado cambio sobre el resto del software, diagnosticar las deficiencias o causas de fallos en el software, o identificar las partes a modificar.
-Capacidad para ser modificado: Capacidad del producto que permite que sea modificado de forma efectiva y eficiente sin introducir defectos o degradar el desempeño.
-Capacidad para ser probado: Facilidad con la que se pueden establecer criterios de prueba para un sistema o componente y con la que se pueden llevar a cabo las pruebas para determinar si se cumplen dichos criterios.


Portabilidad
Capacidad del producto o componente de ser transferido de forma efectiva y eficiente de un entorno hardware, software, operacional o de utilización a otro. Esta característica se subdivide a su vez en las siguientes subcaracterísticas:

  • Adaptabilidad: Capacidad del producto que le permite ser adaptado de forma efectiva y eficiente a diferentes entornos determinados de hardware, software, operacionales o de uso.
    -Capacidad para ser instalado: Facilidad con la que el producto se puede instalar y/o desinstalar de forma exitosa en un determinado entorno.
    -Capacidad para ser reemplazado: Capacidad del producto para ser utilizado en lugar de otro producto software determinado con el mismo propósito y en el mismo entorno.

Espero que este resumen les pueda servir, aquí traté de explicar que es un atributo de calidad de un producto de software y cuales son los que aplican en la norma ISO25010.


Referencias:

Escribe tu comentario
+ 2
Ordenar por:
0
6719Puntos

Muchas gracias y buen aporte, si alguien quiere profundizar este tema en formato video les dejo este link de youtube