Cargando ...

Basados en la norma ISO 25010. Atributos de calidad de un producto de software ¿Qué son? Basados en la norma ISO 25010. Atributos de calidad de un producto de software ¿Qué son?

Por Mauricio Costanzo 3 minutos de lectura

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 ¿Cuáles son? .

¿Qué es un atributo de calidad cuando hablamos de un producto Software?

Cuando se habla de la calidad del software profesional, se debe considerar que el software lo usan y cambian personas, además de sus desarrolladores. En consecuencia, la calidad no tiene que ver sólo con lo que hace el software. En cambio, debe incluir el comportamiento del software mientras se ejecuta, y la estructura y organización de los programas del sistema y la documentación asociada. Esto se refleja en los llamados atributos de calidad o atributos no funcionales del software. Ejemplos de dichos atributos son el tiempo de respuesta del software ante la duda de un usuario y la comprensibilidad del código del programa.

El conjunto específico de atributos que se espera de un sistema de software depende evidentemente de su aplicación. Así, un sistema bancario debe ser seguro, un juego interactivo debe tener capacidad de respuesta, un sistema de conmutación telefónica debe ser confiable, etcétera.

Resumiendo, 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 (me refiero a usuario y desarrolladores).

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

Basados en la norma ISO 25010

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.

Sobre el autor
Mauricio Costanzo es programador e impulsor de proyectos online. Inició su carrera como programador en el año 2014 y al día de hoy se dedica a desarrollar las ideas que empresas e instituciones desean convertir en realidad. También es fundador de Worldmaster (ecommerce de tecnología) y de EasySocio (Web/App para administrar gimnasios).
Artículos relacionados
Proceso de descubrir, analizar, documentar y verificar los servicios que debe brindar un
sistema y sus restricciones.

Especificación del software

Proceso de descubrir, analizar, documentar y verificar los servicios que debe brindar un sistema y sus restricciones.

Leer más

Existen cuatro grupos de actividades fundamentales que están presentes en todos los procesos de software (se trate de un simple programa o de un gran sistemas).

Actividades de la ingeniería de software

Existen cuatro grupos de actividades fundamentales que están presentes en todos los procesos de software (se trate de un simple programa o de un gran sistemas).

Leer más

Modelo de Desarrollo Incremental. Harlan Mills en el año 1980. Se basa en el
desarrollo a partir del incremento de la funcionalidades del programa, se puede considerar un precursor de las modernas metodologías iterativas.

Qué es el desarrollo incremental

Modelo de Desarrollo Incremental. Harlan Mills en el año 1980. Se basa en el desarrollo a partir del incremento de la funcionalidades del programa, se puede considerar un precursor de las modernas metodologías iterativas.

Leer más

Es un ejemplo de un proceso dirigido por un plan; en principio, se debe planear y programar todas las actividades del proceso, antes de comenzar a trabajar con ellas.

Modelo en cascada Waterfall ¿Qué es?

Es un ejemplo de un proceso dirigido por un plan; en principio, se debe planear y programar todas las actividades del proceso, antes de comenzar a trabajar con ellas.

Leer más

Un proceso de software es una serie de actividades relacionadas que conducen a la elaboración de un producto de software.

Qué es un proceso de software

Un proceso de software es una serie de actividades relacionadas que conducen a la elaboración de un producto de software.

Leer más

Definición y explicación del proceso de construcción de un sistema aplicando la Ingeniería de Software

Qué es la ingeniería de Software

Definición y explicación del proceso de construcción de un sistema aplicando la Ingeniería de Software

Leer más

¿Realmente sabes lo qué es el Software?

Qué es el software

¿Realmente sabes lo qué es el Software?

Leer más

Todos los derechos reservados {{empresa.name}} © 2020 |
Desarrollado por Mauricio Costanzo