Esta norma Internacional fue publicada en 1992, la
cual es usada para la evaluación de la calidad de software, llamado
“Information technology-Software product evaluation-Quality characteristics and
guidelines for their use”; o también conocido como ISO 9126 (o ISO/IEC 9126).
Este estándar describe 6 características generales: Funcionalidad,
Confiabilidad, Usabilidad, Eficiencia, Mantenibilidad, y Portabilidad.
La norma ISO/IEC 9126 permite especificar y evaluar la
calidad del software desde diferentes criterios asociados con adquisición,
requerimientos, desarrollo, uso, evaluación, soporte, mantenimiento,
aseguramiento de la calidad y auditoria de software. Los modelos de calidad
para el software se describen así:
Calidad interna y externa: Especifica 6 características para calidad interna y
externa, las cuales, están subdivididas. Estas divisiones se manifiestan
externamente cuando el software es usado como parte de un sistema Informático,
y son el resultado de atributos internos de software.
Calidad en uso: Calidad en uso es el efecto combinado para el usuario final de las 6
características de la calidad interna y externa del software. Especifica 4
características para la calidad en uso.
Al unir la calidad interna y externa con la calidad en
uso se define un modelo de evaluación más completo, se puede pensar que la
usabilidad del modelo de calidad externa e interna pueda ser igual al modelo de
calidad en uso, pero no, la usabilidad es la forma como los profesionales interpretan
o asimilan la funcionabilidad del software y la calidad en uso se puede asumir
como la forma que lo asimila o maneja el usuario final. Si se unen los dos
modelos, se puede definir que los seis indicadores del primer modelo tienen sus
atributos y el modelo de calidad en uso sus 4 indicadores pasarían hacer sus
atributos, mirándolo gráficamente quedaría así:
Norma de Evaluación ISO/IEC 9126
Se establecen categorías para las cualidades de la
calidad externa e interna y calidad en uso del software, teniendo en cuenta
estos 7 indicadores (funcionalidad, confiabilidad, utilidad, eficiencia,
capacidad de mantenimiento, portabilidad y calidad en uso), que se subdividen a
su vez en varios indicadores; estas se
pueden medir por métrica interna o externa.
Evaluación Interna, externa y Calidad de Uso ISO/IEC
9126
Las definiciones se dan para cada característica y
subcaracterística de calidad del software que influye en la calidad. Para cada
característica y subcaracterística, la capacidad del software es determinada
por un conjunto de atributos internos que pueden ser medidos. Las
características y subcaracterísticas se pueden medir externamente por la
capacidad del sistema que contiene el software.
FUNCIONALIDAD
Funcionalidad es la capacidad del software de cumplir
y proveer las funciones para satisfacer las necesidades explícitas e implícitas
cuando es utilizado en condiciones específicas. A continuación se muestra la
característica de Funcionalidad y las subcaracterísticas que cubre:
Característica de funcionalidad
La funcionalidad se divide en 5 criterios:
Adecuación: La
capacidad del software para proveer un adecuado conjunto de funciones que
cumplan las tareas y objetivos especificados por el usuario.
Exactitud: La
capacidad del software para hacer procesos y entregar los resultados
solicitados con precisión o de forma esperada.
Interoperabilidad: La capacidad del software de interactuar con uno o más sistemas
específicos.
Seguridad: La
capacidad del software para proteger la información y los datos de manera que
los usuarios o los sistemas no autorizados no puedan acceder a ellos para
realizar operaciones, y la capacidad de aceptar el acceso a los datos de los
usuarios o sistemas autorizados
Conformidad de la funcionalidad: La capacidad del software de cumplir los estándares
referentes a la funcionalidad.
CONFIABILIDAD
La confiabilidad es la capacidad del software para
asegurar un nivel de funcionamiento adecuado cuando es utilizando en
condiciones específicas. En este caso al confiabilidad se amplia sostener un
nivel especificado de funcionamiento y no una función requerida.
Característica de Confiabilidad
La confiabilidad se divide en 4 criterios:
Madurez: La
capacidad que tiene el software para evitar fallas cuando encuentra errores.
Ejemplo, la forma como el software advierte al usuario cuando realiza operaciones
en la unidad de diskett vacia, o cuando no encuentra espacio suficiente el
disco duro donde esta almacenando los datos.
Tolerancia a errores: La capacidad que tiene el software para mantener un
nivel de funcionamiento en caso de errores.
Recuperabilidad: La capacidad que tiene el software para restablecer su funcionamiento
adecuado y recuperar los datos afectados en el caso de una falla.
Conformidad de la fiabilidad: La capacidad del software de cumplir a los estándares
o normas relacionadas a la fiabilidad.
USABILIDAD
La usabilidad es la capacidad del software de ser
entendido, aprendido, y usado en forma fácil y atractiva. Algunos criterios de funcionalidad,
fiabilidad y eficiencia afectan la usabilidad, pero para los propósitos de la
ISO/IEC 9126 ellos no clasifican como usabilidad. La usabilidad está
determinada por los usuarios finales y los usuarios indirectos del software,
dirigidos a todos los ambientes, a la preparación del uso y el resultado
obtenido.
Característica de Usabilidad
La usabilidad se divide en 5 criterios:
Entendimiento: La
capacidad que tiene el software para permitir al usuario entender si es
adecuado, y de una manera fácil como ser utilizado para las tareas y las
condiciones particulares de la aplicación. En este criterio se debe tener en
cuenta la documentación y de las ayudas que el software entrega.
Aprendizaje: La
forma como el software permite al usuario aprender su uso. También es
importante considerar la documentación.
Operabilidad: La
manera como el software permite al usuario operarlo y controlarlo.
Atracción: La
presentación del software debe ser atractiva al usuario. Esto se refiere a las
cualidades del software para hacer más agradable al usuario, ejemplo, el diseño
gráfico.
Conformidad de uso: La capacidad del software de cumplir los estándares o normas
relacionadas a su usabilidad.
EFICIENCIA
La eficiencia del software es la forma del desempeño adecuado,
de acuerdo a al número recursos utilizados según las condiciones planteadas. Se
debe tener en cuenta otros aspectos como la configuración de hardware, el
sistema operativo, entre otros.
Característica de Eficiencia
La eficiencia se divide en 3 criterios:
Comportamiento de tiempos: Los tiempos adecuados de respuesta y procesamiento, el
rendimiento cuando realiza su función en condiciones específicas. Ejemplo,
ejecutar el procedimiento más complejo del software y esperar su tiempo de
respuesta, realizar la misma función pero con más cantidad de registros.
Utilización de recursos: La capacidad del software para utilizar cantidades y
tipos adecuados de recursos cuando este funciona bajo requerimientos o
condiciones establecidas. Ejemplo, los recursos humanos, el hardware,
dispositivos externos.
Conformidad de eficiencia: La capacidad que tiene el software para cumplir con
los estándares o convenciones relacionados a la eficiencia.
CAPACIDAD DE MANTENIMIENTO
La capacidad de mantenimiento es la cualidad que tiene
el software para ser modificado. Incluyendo correcciones o mejoras del
software, a cambios en el entorno, y especificaciones de requerimientos
funcionales.
Característica de Mantenimiento
El mantenimiento se divide en 5 criterios:
Capacidad de ser analizado: La forma como el software permite diagnósticos de
deficiencias o causas de fallas, o la identificación de partes modificadas.
Cambiabilidad: La
capacidad del software para que la implementación de una modificación se pueda
realizar, incluye también codificación, diseño y documentación de cambios.
Estabilidad: La
forma como el software evita efectos inesperados para modificaciones del mismo.
Facilidad de prueba: La forma como el software permite realizar pruebas a
las modificaciones sin poner el riesgo los datos.
Conformidad de facilidad de mantenimiento: La capacidad que tiene el software para cumplir con
los estándares de facilidad de mantenimiento.
Portabilidad
La capacidad que tiene el software para ser trasladado de un entorno
a otro.
Característica de portabilidad
La usabilidad se divide en 5 criterios:
Adaptabilidad: Es
como el software se adapta a diferentes entornos especificados (hardware o
sistemas operativos) sin que implique reacciones negativas ante el cambio.
Incluye la escalabilidad de capacidad interna (Ejemplo: Campos en pantalla,
tablas, volúmenes de transacciones, formatos de reporte, etc.).
Facilidad de instalación: La facilidad del software para ser instalado en un
entorno específico o por el usuario final.
Coexistencia: La
capacidad que tiene el software para coexistir con otro o varios software, la
forma de compartir recursos comunes con otro software o dispositivo.
Reemplazabilidad: La capacidad que tiene el software para ser remplazado por otro
software del mismo tipo, y para el mismo objetivo. Ejemplo, la remplazabilidad
de una nueva versión es importante para el usuario, la propiedad de poder
migrar los datos a otro software de diferente proveedor.
Conformidad de portabilidad: La capacidad que tiene el software para cumplir con
los estándares relacionados a la portabilidad.
CALIDAD EN USO
Calidad en uso es la calidad del software que el
usuario final refleja, la forma como el usuario final logra realizar los
procesos con satisfacción, eficiencia y exactitud. La calidad en uso debe
asegurar la prueba o revisión de todas las opciones que el usuario trabaja
diariamente y los procesos que realiza esporádicamente relacionados con el
mismo software.
Característica Calidad de uso
La calidad de uso se divide en 4 criterios:
Eficacia: La
capacidad del software para permitir a los usuarios finales realizar los
procesos con exactitud e integridad.
Productividad: La
forma como el software permite a los usuarios emplear cantidades apropiadas de
recursos, en relación a la eficacia lograda en un contexto específico de uso.
Para una empresa es muy importante que el software no afecte al productividad
del empleado
Seguridad: Se
refiere al que el Software no tenga niveles de riesgo para causar daño a las
personas, instituciones, software, propiedad intelectual o entorno. Los riesgos
son normalmente el resultado de deficiencias en la funcionalidad (Incluyendo
seguridad), fiabilidad, usabilidad o facilidad de mantenimiento.
Satisfacción: La
satisfacción es la respuesta del usuario a la interacción con el software, e
incluye las actitudes hacia el uso del mismo. A continuación se describe un
cuadro donde podemos resumir las características y cada uno de sus atributos,
este cuadro le ayudara a visualizar el proceso de evaluación.