Modelo de McCall La cali calida dad d de un sist sistem ema, a, apli aplica caci ción ón o prod produc ucto to es tan tan buena buena como como los los requisitos que describen el problema, el diseño que modela la solución, el código que conduce a un programa ejecutable y las pruebas que ejercitan el soft softwa ware re para para dete detect ctar ar erro errore res. s. Un buen buen Inge Ingeni nier ero o del del oft oftwa ware re util utili! i!a a mediciones que e"al#an la calidad del an$lisis y los modelos de diseño, el código fuente y los casos de prueba que se %an creado al aplicar la Ingenier&a de oftware. 'ara lograr estas e"aluaciones de la calidad en tiempo real, el Inge Ingeni nier ero o debe debe util utili! i!ar ar medi medida das s t(cn t(cnic icas as que que e"al e"al#a #an n la cali calida dad d con con objeti"idad, no con subjeti"idad. )ace *+ años se denieron factores de calidad como como los los prim primer eros os paso pasos s %aci %acia a el desa desarr rrol ollo lo de m(tr m(tric icas as de cali calida dad d del del software. -l modelo de McCall organi!a los factores en tres ejes o puntos de "ista desde los cuales el usuario puede contemplar la calidad de un producto /0 1peración del producto, *0 2e"isión del producto y 30 4ransición del producto 5igura */0. Cada punto de "ista se descompone en una serie de factores que determinan la calidad de cada una de ellos. Cada factor determinante de la calidad, se descompone, a su "e!, en una serie de criterios o propiedades que determinan su cali calida dad. d. Los Los crit criter erio ios s pued pueden en ser ser e"al e"alua uado dos s medi median ante te un conj conjunt unto o de m(tric m(tricas. as. 'ara cada cada criter criterio io deben deben jarse jarse unos unos "alor "alores es m$6imo m$6imo y m&nimo m&nimo aceptables para cada criterio.
Figura 21: Factores de Calidad del Modelo McCall
-l modelo de McCall se basa en // factores de calidad, que se organi!an de la siguiente forma teniendo en cuenta la "isión del usu ario mencionada anteriormente 4abla /708
Tabla del usuario respecto de los Factores de Calidad del Modelo de McCall
16: Visión
9e acuerdo a la "isón del usuario y sus factores de calidad asociados "isión de la dirección0, se puede determinar la "isión del desarrollador para factor de calidad establecido 5igura **0.
5igura **8 :isiones de los 5actores de Calidad seg#n el Modelo de McCall
Características Operativas Corrección - -s el grado en que un programa satisface sus especicaciones y consigue los objeti"os pedidos por el cliente *;. La pregunta asociada es8 <)ace lo que quiero= Confabilidad - -s el grado en que se puede esperar que un programa lle"e a cabo sus funciones esperadas con la precisión requerida*+. La pregunta asociada es8
Integridad – Consiste en la capacidad de un sistema para resistir ataques contra su seguridad. La pregunta asociada es8 <-s seguro= Facilidad de Uso – -s un intento de cuanticar >lo amigable que puede ser con el usuario?. La pregunta asociada es8 <-s f$cil de usar= Capacidad de oportar Cambios 5acilidad de Mantenimiento @ -s el esfuer!o requerido para locali!ar y arreglar un error en un programa. La pregunta asociada es8 <'uedo corregirlo=
Flexibilidad - -s el esfuer!o requerido para modicar un programa que ya est$ en funcionamiento. La pregunta asociada es8 <'uedo cambiarlo= Facilidad de Prueba - -s el esfuer!o requerido para probar un programa de forma que se asegure que reali!a su función requerida. La pregunta asociada es8 <'uedo probarlo= Adaptabilidad de nuevos entornos Portabilidad - -s el esfuer!o requerido para transferir el programa desde un %ardware yAo un entorno de sistema de software a otro. La pregunta asociada es8 <'odr( usarlo en otra m$quina= eusabilidad - -s el grado en que un programa o partes de este0 se puede reusar en otras aplicaciones, en relación al empaquetamiento y alcance de las funciones que reali!a el programa. La pregunta asociada es8 <'odr( reusar alguna parte del software= Interoperabilidad - -s el esfuer!o requerido para acoplar un sistema con otro. La pregunta asociada es8 <'odr( %acerlo interactuar con otro sistema= -n el esquema de puntuación se usan las siguientes m(tricas de calidad del software8
Facilidad de Auditoria - -s la facilidad con que se puede comprobar la conformidad con los est$ndares. Exactitud - Consiste en la precisión de los c$lculos y el control. Estandari!ación de Co"unicaciones - -s el grado de empleo de est$ndares de interfaces, protocolos y anc%os de banda. Co"pletitud - -s el grado con que se %a logrado la implementación total de una función. Concisión - Consiste en lo compacto que es el programa en t(rminos de l&neas de código. Consistencia - -s el uso de un diseño uniforme y de t(cnicas de documentación a lo largo del proyecto de desarrollo de software. Estandari!ación en los datos - Consiste en el uso de estructuras de datos y de tipo est$ndar a lo largo de todo el programa.
#olerancia de Errores - -s el daño que se produce cuando el programa encuentra un error. Efciencia en la E$ecución - -s el rendimiento en tiempo de ejecución de un programa. Capacidad de expansión - -s el grado en que se puede ampliar el diseño arquitectónico de datos o procedural. %eneralidad - Consiste en la amplitud de aplicación potencial de los componentes del programa. Independencia del &ard'are - -s el grado en que el software es independiente del %ardware en que opera. Instru"entación - -s el grado en que el programa muestra su propio funcionamiento e identica errores que aparecen. (odularidad - Consiste en la independencia funcional de los componentes del programa. 5acilidad de 1peración @ -s la facilidad de operación de un programa. eguridad @ Consiste en la disponibilidad de mecanismos que controlen o protejan los programas o datos.
Auto-)ocu"entación - -s el grado en que el código fuente proporciona documentación signicati"a. *i"plicidad - -s el grado de facilidad con que se puede entender un programa. Independencia del siste"a de so+t'are - -s el grado de independencia del programa respecto a las caracter&sticas del lenguaje de programación no est$ndar, caracter&sticas del sistema operati"o y otras restricciones del entorno. #ra!abilidad - Consiste en la capacidad de seguir una representación del diseño o componente real del programa %asta los requisitos. For"ación - -s el grado en que ayuda el software a manejar el sistema a los nue"os usuarios. La relación entre los factores de calidad del software y las m(tricas se muestra en la siguiente tabla 4abla /B0. 9eber&a decirse que el peso que se asigna a cada m(trica depende de los productos y negocios locales.
2D5IC1 M-42ICD CDLI9D9 9- 154ED2-
4abla /B8 2elación entre 5actores de Calidad y M(tricas de Calidad del oftware seg#n McCall Dl comien!o del proyecto %abr$ que especicar los requisitos de calidad del software, para lo cual se seleccionar$n los aspectos in%erentes a la calidad deseada del producto, teniendo en cuenta lo siguiente8 •
•
Las caracter&sticas particulares del propio producto que se est$ diseñando8 por ejemplo, su ciclo de "ida, es decir, si se espera que sea largo implicar$ un mayor (nfasis en la facilidad de mantenimiento y la Fe6ibilidad, o bien si el sistema en desarrollo est$ destinado a un entorno donde el %ardware e"oluciona r$pidamente implicar$ como requisito su portabilidad La relación calidad@precio, que puede e"aluarse a tra"(s del coste de cada factor de calidad frente al benecio que proporciona. La siguiente tabla muestra la relación calidad@precio para cada factor considerado 4abla /G08
5actor de Calidad
Henecio A coste
Corrección
alto
5iabilidad
alto
-ciencia Integridad 5acilidad de uso
bajo bajo medio
5acilidad de mantenimiento
alto
5acilidad de prueba
alto
5le6ibilidad
medio
'ortabilidad
medio
2eusabilidad
medio
Interoperabilidad
bajo
4abla /G8 Henecio A coste de los 5actores de Calidad •
•
La determinación de las etapas del ciclo de "ida, ya que es necesario e"aluar cada factor de calidad para conocer en cuales se dejan sentir m$s los efectos de una calidad pobre con respecto a cada uno de los factores. Las propias interrelaciones entre los factores debido a que algunos factores pueden entrar en conFicto entre s&8 por ejemplo, la eciencia
plantea conFictos pr$cticamente con todos los dem$s factores de calidad. 4ambi(n %abr$ que establecer "alores deseables para los criterios, para lo cual se emplear$n datos %istóricos, el promedio en la industria, y con ellos se concretar$n los "alores nales y otros intermedios o predicti"os en cada per&odo de medición durante el desarrollo, as& como unos "alores m&nimos aceptables. La e6plicación para cualquier selección o decisión deber$ ser adecuadamente documentada. -n la fase de desarrollo ser$ necesario implementar las m(tricas elegidas, anali!ar sus resultados y tomar medidas correcti"as cuando los "alores obtenidos est(n por debajo de los m&nimos aceptables. Una "e! nali!ado el proyecto ser$ necesario contrastar las medidas predicti"as utili!adas y comprobar si, en efecto, se pueden tomar como indicadores de los "alores nales.
McCall. 5ue el primer modelo en ser presentado en /BB, y se originó moti"ado por UD Dir 5orce y 9o9*/. McCall est$ organi!ado sobre tres tipos de caracter&sticas de calidad8 • • •
5actores especicar0 Criterios construir0J M(tricas controlar0
-ste modelo organi!a // factores en tres ejes o puntos de "ista desde los cuales el usuario puede contemplar la calidad de un producto**. Cada factor tiene asociado sus respecti"os criterios. :er tabla B. 4abla B. 9escripción de los ejes de McCall