MODELOS DE CALIDAD

1. MODELO MCCALL

Este modelo fue hecho por Jim McCall, desarrollado inicialmente para la Fuerza Aérea de los EE. UU en 1977 que tenía la misión de proporcionar las normas y orientación de técnicas para la adquisición del software, es uno de los más renombrados actualmente. Este modelo busca reducir la brecha entre usuarios y desarrolladores enfocándose en un número de factores de calidad que reflejen las prioridades de ambos. El modelo establece una jerarquía de Perspectivas (3), Factores (11), Criterios de Calidad (23) y Métricas (41).

Para utilizar este modelo hay que seguir las siguientes pautas:

1. Se aceptan los factores, criterios y métricas que propone los modelos.

2. Se aceptan las relaciones entre factores y criterios, y entre criterios y métricas.

3. Se selecciona un subconjunto de factores de calidad sobre los que aplica los requisitos de calidad establecidos para el proyecto.

PERSPECTIVAS PARA DEFINIR E IDENTIFICAR LA CALIDAD DE UN PRODUCTO SOFTWARE:

I. Revisión Del Producto: habilidad para ser cambiado.

II. Transición Del Producto: adaptabilidad al nuevo ambiente.

III. Operación Del Producto: características de operación.

FACTORES DE CALIDAD

I. FACTORES DE REVISIÓN

La revisión del producto incluye los siguientes factores de calidad:

a) Mantenibilidad: esfuerzo requerido para localizar y corregir fallas.

b) Flexibilidad: facilidad de realizar cambios.

c) Testeabilidad: facilidad para realizar el testing, para asegurarse que el producto no tiene errores y cumple con la especificación.

II. FACTORES DE TRANSICIÓN.

La transición del producto incluye los siguientes factores de calidad:

a) Portabilidad: esfuerzo requerido para transferir entre distintos ambientes de operación.

b) Reusabilidad: facilidad de reusar el software en diferentes contextos.

c) Interoperabilidad: esfuerzo requerido para acoplar el producto con otros sistemas.

III. FACTORES DE OPERACIÓN.

La operación del producto incluye los siguientes factores de calidad:

a) Correctitud: grado en el que el producto cumple con su especificación.

b) Confiabilidad: la habilidad del producto de responder ante situaciones no esperadas.

c) Eficiencia: el uso de los recursos tales como tiempo de ejecución y memoria de ejecución.

d) Integridad: protección del programa y sus datos de accesos no autorizados.

e) Usabilidad: facilidad de operación del producto por parte de los usuarios. 



Capacidades y Factores del Producto según McCall





Fuente: Adaptado de McCall & Cavano (1978). Imágenes tomadas por el grupo de trabajo N° 5 de: https://aulavirtual-eew.cvudes.edu.co/publico/lems/L.000.007.EATE/Documentos/cap2/Capitulo_Completo.pdf. Pag 18,19 y 20 de 40


CRITERIOS DE CALIDAD PROPUESTOS POR MACCALL

Las métricas propuestas por McCall para indicar el grado en que un sistema posee una determinada característica que impacte la calidad se presentan en la siguiente Tabla:

Métrica

Significado

Auto documentación

Grado en que el código fuente brinda información  de documentación importante.

Capacidad de expansión

Grado permitido de ampliación del diseño de la arquitectura de datos o procedural.

Compleción de las funciones

Grado en que se pudieron implementar las funciones requeridas.

Complejidad

Complejidad del sistema

Concisión

Densidad del programa en relación a las líneas de código.

Consistencia

Diseño uniforme del programa empleando técnicas de documentación.

Eficiencia de ejecución

Rendimiento en tiempo de ejecución.

Estandarización de comunicaciones

Grado de uso de estándares y protocolos.

Estandarización de datos y estructuras

Manejo de tipos de datos y estructuras uniformes a lo largo del programa

Exactitud de cálculo y de control

Precisión obtenida en los cálculos.

Facilidad de auditoría

Facilidad de comprobación

Independencia del hardware

Grado de desacople del software en relación al hardware donde opera.

Independencia del software

Grado de independencia del software en relación al sistema operativo, y otras limitaciones del entorno.

Instrumentación

Grado de auto-vigilancia en el funcionamiento e identificaciones de errores.

Modularidad

Independencia funcional de los componentes.

Operatividad

Facilidad de operación

Seguridad

Disponibilidad de elementos de protección del programa y la información.

Simplicidad

Grado de la dificultad para entender el software.

Tolerancia a errores

Grado de afectación causado por un error.

Trazabilidad

Capacidad de seguimiento y asociación de los requisitos con los elementos de diseño.

Cuadro hecho por el grupo 5 con información tomada de: https://aulavirtual-eew.cvudes.edu.co/publico/lems/L.000.007.EATE/Documentos/cap2/Capitulo_Completo.pdf. Pag 22, 23, 24 y 25 de 40.


IMPORTANCIA DEL MODELO MCCALL

El modelo de McCall sobresale por su estricto seguimiento de calidad, puesto que actualmente es indispensable contar con rigurosas medidas de control debido a las exigencias del mundo globalizado. No tener un control previo de la calidad puede traer consecuencias negativas dentro de cualquier proceso. Es así que las organizaciones de cualquier tipo exigen altos estándares de calidad en su proceso y  sobre todo garantía. Los actuales software deben cumplir con todas los requerimientos necesarios para cumplir a cabalidad con lo que promueven.


MODELOS DE CALIDAD BOEHM.

Este modelo de calidad fue propuesto por  Barry  Boehm  en  el  año  de  1978  y  es  similar  al  modelo  de  McCall  definiendo la calidad en términos de atributos cualitativos y  métricas para realizar las medidas (factores de calidad, criterios de calidad y métrica de calidad). Dentro de los factores que se describen en el modelo se toman muchos de los que  propone  McCall.  La  estructura  jerárquica del modelo plantea 3 niveles para las características: de alto nivel, de nivel intermedio y nivel primitivo.

El objetivo de este modelo es que a través de la calidad del software, el software realice lo que desee el usuario, por lo tanto, define la calidad de software en términos de características cualitativas y se evalúa   a través de un conjunto de indicadores o   métricas.  (Scalone, 2006) “Las métricas directas e indirectas son usadas para determinar el nivel de acuerdo en un criterio en particular que afecta a los principales factores de calidad,” en consecuencia, utiliza recursos informáticos de manera eficiente, sea fácil de utilizar y de aprender.

     CARACTERÍSTICAS DE ALTO NIVEL

Utilidad, cuan (usable, confiable, eficiente) es el producto en sí mismo.
Mantenimiento, cuan fácil es modificarlo, entenderlo y retestearlo.
Utilidad general, si puede seguir usándose si se cambia el ambiente.

CARACTERÍSTICAS DE NIVEL INTERMEDIO

Portabilidad (Utilidad general).
Fiabilidad (Utilidad per-se).
Eficiencia (Utilidad per-se).
Usabilidad (Utilidad per-se).
Capacidad de prueba (Mantenibilidad).
Flexibilidad (Mantenibilidad).

CARACTERÍSTICAS PRIMITIVAS

Este es el nivel más bajo y corresponde a características directamente asociadas  a una o dos métricas de calidad:

Portabilidad

Independencia  de dispositivos.
Auto-contención de confiabilidad.
Auto-contención.
Exactitud
Completitud
Consistencia
Robustez/Integridad

Eficiencia

Accesibilidad
Eficiencia de uso de dispositivos

Usabilidad

Robustez/Integridad
Accesibilidad
Comunicación

Testeabilidad

Comunicación
 Auto descripción
Estructuración

Entendibilidad

Consistencia
Estructuración
Concisidad
Legibilidad

Modificabilidad

Estructuración
Aumentabilidad


Este modelo propone una jerarquía de niveles, en forma de un árbol con tres ramas principales, que permiten que el software sea de utilidad: Portabilidad, Facilidad de Uso y Facilidad de Mantenimiento. Se estructura en tres niveles: Aplicaciones primarias, Construcciones Intermedias (factores) y Construcciones Primitivas, y finalmente las Métricas que determinan los valores para los criterios (construcciones primitivas).

VENTAJAS DEL MODELO

1 Presenta un rango alto de características primitivas.

2 Une los mejores elementos de otros modelos.

3 Integra el desarrollo del software con el mantenimiento.

4 Es el segundo modelo de calidad más conocido.

DESVENTAJAS DEL MODELO

1. Genera mucho tiempo el análisis.

2. Es un modelo costoso.

3. Funciona mejor en grandes proyectos.

4. Se trabaja siguiendo un protocolo y debe ser seguido estrictamente para un buen funcionamiento.


FINALIDAD DEL MODELO

El modelo de Boehm tiene como finalidad que a través de la calidad del software, el Software: Realice lo que desea el usuario, utilice recursos informáticos de manera correcta y eficiente, sea fácil de utilizar y aprender; y sea bien diseñado, codificado, probado y mantenido. La importancia de la calidad en un producto es ganancia  por competitividad en el mercado y posicionamiento de la marca.

BARRY BOEHM


Barry W. Boehm es un ingeniero informático estadounidense y también es profesor emérito de esta materia en el departamento de ciencias tecnológicas en la Universidad del Sur de California. Es conocido por sus múltiples aportes a este campo y por haber creado dicho modelo. En el siguiente enlace podras conocer más acerca de Barry Boehm: http://csse.usc.edu/new/barry-w-boehm.

MODELO FURPS

Modelo  de  calidad  propuesto  por  Robert  Grady    y  Hewlett  Packard  Co  (HP)  en  1987.    Esta    propuesta  contempla,      por   un   lado   5   características de las cuales se deriva su  nombre  (Funcionalidad,  Facilidad  de  Uso,  Confiabilidad,  Performance  y  Facilidad  de  Soporte),  y  por  otro,  que  los  requisitos  se  clasifiquen  en   dos   categorías:      requisitos   funcionales  (F),  que  son  los  que  especifican funciones que el sistema debe  ser  capaz  de  realizar  sin  tener  en  cuenta  las  restricciones  físicas;  y   requerimientos   no   funcionales   (URPS),  que  puntualizan  atributos  del sistema o del medio ambiente del sistema.

Este modelo desarrolla  un conjunto de factores de calidad de software, bajo el acrónimo de FURPS: funcionalidad (Functionality), usabilidad (Usability), confiabilidad (Reliability), desempeño (Performance) y capacidad de soporte (Supportability). 

Imagen tomada por el grupo de trabajo N° 5 de: https://aulavirtual-eew.cvudes.edu.co/publico/lems/L.000.007.EATE/Documentos/cap2/Capitulo_Completo.pdf. Pág. 37 de 40.

Este modelo incluye los factores de calidad y los atributos, restricciones de diseño y requerimientos de implementación, físicos y de interfaz. Una limitación de este modelo de calidad es que no tiene en cuenta la portabilidad de los productos software que se estén considerando, factor digno de consideración en función de las exigencias actuales que recaen sobre el proceso de desarrollo del software.



Imagen editada por el grupo de trabajo N° 5

Este también es un modelo de calidad fijo y para realizar la evaluación de la calidad de un producto, primero se asignan prioridades y después se definen los atributos de calidad que pueden ser medidos.

El software no es perfecto ni tampoco se puede medir por su naturaleza, pero su calidad depende de la persona que lo trabaje y lo califique o de su correcto funcionamiento, por ello en la calidad del software se requiere mucho esfuerzo para poder garantizar su certificación.


Comentarios