El Modelo de McCall dentro de la gestión de calidad
darkdoomEnsayo14 de Septiembre de 2017
2.214 Palabras (9 Páginas)720 Visitas
El Modelo de McCall dentro de la gestión de calidad
del software
Sebastián Botero Romero
Facultad de Ingeniería, Departamento de Ingeniería de Sistemas
Universidad INCCA de Colombia
Jsbr79@gmail.com
Resumen – La creciente presencia e importancia de
las TICS en si no todos, por lo menos la mayoría de
ambientes de la modernidad, trae consigo la
incontestable necesidad del continuo desarrollo y
mejoramiento de programas informáticos que
otorguen las prestaciones necesarias; estas
herramientas deben tener una funcionalidad
completa que además genere una rigurosidad en el
control de calidad de los procesos donde se
implemente y para ello es necesaria su propia e
inherente calidad, en este ensayo recogeremos los
principales conceptos de uno de los modelos más
usados dentro de la Ingeniería para el desarrollo del
software de calidad, el cual es conocido como modelo
de McCall.
Palabras Claves: calidad, ingeniería de software,
modelo de McCall, software, estándar, desarrollo.
Abstract - The growing presence and importance of
ICTs, at least most modern environments, brings
undeniable need for continued development and
improvement of software that give the performance
required, these tools should have complete
functionality also generate a rigorous quality control
process which is implemented and this requires its
own quality, in this paper we collect the main
concepts of one of the models used in engineering for
the development of quality software, the which is
known as McCall model.
Palabras Claves: quality, software engineering,
McCall model, software, standard, development
1. INTRODUCCION
La historia del hombre está marcada por su
constante afán en la consecución de procesos que
mejoren su calidad de vida, este interés se ha visto
representado siempre, ya sea desde la creación de un
proceso eficiente para conseguir fuego o sea para
controlar un artilugio enviado a otro planeta como
hemos visto en las últimas semanas con el asombroso
envío del Curiosity por parte de la NASA al planeta
Marte, todo proceso es susceptible de ser implementado
a través de un software, ya sea para su mismo sistema de
producción o también para generar modelos virtuales
que puedan ser representados en la realidad, después de
calcular informáticamente todas sus posibles variables,
efectivamente, hasta la sencilla creación del fuego
podría ser formulada a través de un sistema de software
que calcule la humedad del ambiente, la velocidad del
viento, la fuerza requerida y el tiempo estipulado para
que una vara genere determinada temperatura en fricción
con otra y así generar el ansiado fuego. Ahora bien, este
software requiere de un modelo apropiado de calidad,
para que su formulación sea casi idéntica a la realidad y
en este caso el modelo de McCall, de este modelo que
explicaremos a continuación se define la norma
ISO/IEC9126 que es el estándar internacional de
desarrollo de software, aunque de forma paulatina está
siendo reemplazado por el proyecto SQuaRE, ISO
25000:2005, que sin embargo recoge los mismos
conceptos. (1)
2. CARACTERISTICAS DEL
MODELO DE MCCALL
El modelo de McCall se caracteriza por ser uno
de los más difundidos en el mundo del desarrollo del
software, además ha servido de base para otros modelos
(La norma ISO9126, el modelo de Boehm y el Software
Quality Management –SQM- de Murine).
Por norma general, los modelos de calidad
tienden a definir a esta misma en una categorización
jerárquica, tanto así que la calidad es consecuencia de
una serie de evaluación de un conjunto de indicadores o
métricas en diferentes etapas:
En el nivel superior de esta categorización
encontramos los atributos de calidad externos, que
corresponde a a los factores de calidad que son definidos
a partir de la visión y conceptualización del usuario final
del software.
En el nivel medio de la jerarquía descrita,
encontramos los atributos de calidad internos, donde
cada uno de estos factores se puede descomponer en un
conjunto de criterios de calidad, que contienen los
atributos que contribuyen a obtener un software de la
calidad, a este nivel ya no denota la visión del usuario
final sino una visión meramente técnica. Finalmente y
en el último nivel, cada uno de los criterios de calidad
tiene definida una serie de métricas de ciertas
características estándares del producto que indican que
dicho producto posee un determinado nivel de calidad,
como se ilustra en Fig. 1.
Teniendo en cuenta esto, un modelo de calidad
sirve altamente para relacionar entre si todos los
aspectos que definen, planifican y miden el nivel de
calidad de un producto (software).
El modelo de McCall fue el primero en ser
presentado en 1977, y fue desarrollado originalmente
para la Fuerza Aérea de Estados Unidos, este Modelo se
focaliza en el producto final, identificando atributos
claves desde el punto de vista del usuario; estos atributos
se denominan factores de calidad y son normalmente
atributos externos, pero también se incluyen algunos
atributos posiblemente internos; los factores de calidad
son demasiados abstractos para ser medidos
directamente, por lo que por cada uno de ellos se
introduce atributos de bajo nivel denominados criterios
de calidad; algunos criterios de calidad son atributos
internos, reflejando la creencia de McCall que el atributo
interno tiene un efecto directo en el atributo externo
correspondiente; un nivel más de descomposición es
necesario, mapeando cada criterio de calidad en un
conjunto de métricas de calidad que son atributos (tanto
del producto como del proceso) de muy bajo nivel,
medibles directamente.
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 3
Perspectivas, 11 Factores, 23 Criterios de Calidad y 41
Métricas. (2)
El modelo establece tres perspectivas para
definir e identificar la calidad de un producto software:
1. Operaciones del producto
Factores
Corrección (cumplimiento con la
especificación)
Confiabilidad
Eficiencia (De ejecución y de
almacenamiento)
Integridad (protección contra accesos no
autorizados)
Usabilidad
2. Revisión del producto
Factores
Mantenibilidad
Flexibilidad
Verificabilidad (testability)
3. Transición del producto
Factores
Portabilidad
Reusabilidad (en otro contexto)
Interoperabilidad
Fig. 1 jerarquía del Modelo de Calidad McCall
Métricas del producto
Criterios de calidad del producto
Factores de calidad
Calidad del software
3. FACTORES DE MCCALL
Los factores de McCall se definen como sigue:
Corrección: Hasta qué punto un programa
cumple sus especificaciones y satisface los
objetivos del usuario. Por ejemplo, si un
programa debe ser capaz de sumar dos números
y en lugar de sumar los multiplica, es un
programa incorrecto. Es quizás el factor más
importante, aunque puede no servir de nada sin
los demás factores.
Fiabilidad: Hasta qué punto se puede confiar en
el funcionamiento sin errores del programa. Por
ejemplo, si el programa anterior suma dos
números, pero en un 25% de los casos el
resultado que da no es correcto, es poco fiable.
Eficiencia: Cantidad de código y de recursos
informáticos (CPU, memoria) que precisa un
programa para desempeñar su función. Un
programa que suma dos números y necesita 2
MB de memoria para funcionar, o que tarda 2
horas en dar una respuesta, es poco eficiente.
Integridad: Hasta qué punto se controlan los
accesos ilegales a programas o datos. Un
programa que permite el acceso de personas no
autorizadas a ciertos datos es poco íntegro.
Facilidad de uso: El coste y esfuerzo de
aprender a manejar un producto, preparar la
entrada de datos e interpretar la salida del
mismo.
Facilidad de mantenimiento: El coste de
localizar y corregir defectos en un programa que
aparecen durante su funcionamiento.
Facilidad de prueba: El coste de probar un
programa para comprobar que satisface sus
requisitos. Por ejemplo, si un programa requiere
desarrollar una simulación completa de un
sistema para poder probar que funciona bien, es
un programa difícil de probar.
Flexibilidad: El coste de modificación del
producto cuando cambian sus especificaciones.
...