Está en la página 1de 19

Modelos iniciales

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Medicin de calidad de software

Calidad en el Desarrollo de Software


Modelos de calidad de software

la calidad, al igual que la belleza, est en el ojo de quien lo mira sin embargo, desde el punto de vista de medicin, se debe tener una denicin precisa en trminos de atributos del software que sean de inters al usuario en general, stos son atributos externos sin embargo, muchas propuestas miden y analizan atributos internos porque los consideran predictores de aquellos externos los atributos internos tienen dos ventajas:
estn disponibles para medicin ms temprano son ms fciles de medir

Pablo R. Fillottrani
Depto. Ciencias e Ingeniera de la Computacin Universidad Nacional del Sur

Segundo Cuatrimestre 2007

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales de calidad


desde el principio de la ingeniera de software, se observ que la calidad est compuesta por una composicin de muchas caractersticas un modelo de calidad describe entonces estas caractersticas y sus relaciones muchos modelos hacen difusa la distincin entre atributos internos y externos, lo que diculta la comprensin del concepto de calidad los modelos que se presentarn a continuacin son los que han ganado mayor popularidad en la comunidad, pero no tienen sustento cientco extrayendo los factores comunes a todos ellos, es posible derivar modelos propios adaptados a usos especcos
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Modelo de McCall

el modelo de McCall fue el primero en ser presentado en 1977, y se origin motivado por US Air Force y DoD se focaliza en el producto nal, identicando atributos claves desde el punto de vista del usuario estos atributos se denominan factores de calidad y son normalmentes atributos externos pero tambin se incluyen algunos atributos posiblementes internos

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelo de McCall

Factores de calidad

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, reejando la creencia de McCall que el atributo interno tiene un efecto directo en el atributo externo correspondiente un nivel ms de descomposicin es necesario, mapeando cada criterio de calidad en un conjunto de mtricas de calidad que son atributos (tanto del producto como del proceso) de muy bajo nivel, medibles directamente

McCall propone tres perspectivas para agrupar los factores de calidad


revisin del producto habilidad para ser cambiado transicin del producto adaptabilidad al nuevo ambiente operacin del producto caractersticas de operacin

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Factores de calidad de revisin

Factores de calidad de transicin

la revisin del producto incluye los siguientes factores de calidad:


mantenibilidad esfuerzo requerido para localizar y corregir fallas exibilidad facilidad de realizar cambios testeabilidad facilidad para realizar el testing, para asegurarse que el producto no tiene errores y cumple con la especicacin

la transicin del producto incluye los siguientes factores de calidad:


portabilidad esfuerzo requerido para transferir entre distintos ambientes de operacin reusabilidad facilidad de reusar el software en diferentes contextos interoperabilidad esfuerzo requerido para acoplar el producto con otros sistemas

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Factores de calidad de operacin


la operacin del producto incluye los siguientes factores de calidad:
correctitud el grado en el que el producto cumple con su especicacin conabilidad la habilidad del producto de responder ante situaciones no esperadas eciencia el uso de los recursos tales como tiempo de ejecucin y memoria de ejecucin integridad proteccin del programa y sus datos de accesos no autorizados usabilidad facilidad de operacin del producto por parte de los usuarios

Criterios de calidad: factor mantenibilidad

segn McCall el factor mantenibilidad incluye los siguientes criterios:


consistencia simplicidad concisidad auto-descripcin modularidad

pero la mantenibilidad ha cambiado bastante desde 1977; encontrar y corregir errores es slo un aspecto ms

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor mantenibilidad

Criterios de calidad: factor mantenibilidad

Ghezzi la divide en tres categoras:


correctiva concerniente a remover pequeas fallas remanentes despus del testeo adaptativa concerniente al cambio del producto necesario por el cambio de sus requerimientos perfectiva busca solo mejorar los algoritmos usados para hacerlos ms ecientes

mantenibilidad est muy inuenciado por el uso de buenas prcticas a lo largo de todo el ciclo de desarrollo algunas de estas buenas prcticas son:
seguir una metodologa bien denida usar buenas tcnicas de diseo, tanto de procedimientos como de datos, para aumentar cohesin y reducir acoplamiento observar la documentacin interna usar buenas prcticas de programacin: nombres signicativos, cdigo legible, etc

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor exibilidad

Criterios de calidad: factor exibilidad

segn McCall el factor exibilidad incluye los siguientes criterios:


expandibilidad generalidad auto-descripcin modularidad

con el correr de los aos este criterio se ha fusionado con mantenibilidad de hecho, en la denicin original, dos de los criterios de exibilidad estaban compartidos con mantenibilidad

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor testeabilidad

Criterios de calidad: factor testeabilidad

ISO 9000-3 divide el testeo en cuatro etapas segn McCall el factor testeabilidad incluye los siguientes criterios:
simplicidad instrumentacin testeo de unidad se testea los componentes individuales, generalmente realizado por los programadores testeo de integracin se testean los mdulos compuestos por diversos componentes testeo de sistema se testea el sistema completo tal como lo usara un usuario normal, pero sin su presencia testeo de aceptacin el usuario ejecuta el sistema completo para asegurarse que cumpla con los requerimientos. Tambin llamado alpha testing

dado su ubicacin en tradicionales modelos de ciclo de vida de software, la facilidad de testing se dene claramente como un criterio de calidad

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor testeabilidad


el testeo interactua con otros criterios de calidad, por ejemplo correctitud y eciencia debe ser llevado a cabo siguiendo planes pre-denidos, con datos conocidos y cuyos resultados sean predeterminados la testeabilidad puede ser maximizada usando herramientas automticas, buenas estrategias de cohesin y de diseo, y buenas prcticas de programacin McCall deni originalmente mtricas para testeabilidad consistentes en una matriz de com plejidad que involucra nmero y tamao de mdulos, tamao de procedimientos, profundidad de anidamiento, nmero de errores por unidad de tiempo, etc.
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Criterios de calidad: factor portabilidad

segn McCall el factor testeabilidad incluye los siguientes criterios:


auto-descripcin modularidad independencia de la mquina independencia del sistema operativo

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor portabilidad

Criterios de calidad: factor reusabilidad

algunos autores (Sommerville) lo consideran parte de la reusabilidad se favorece mediante el seguimiento de estndares, tanto de procedimientos (X Windows) como de datos (XML) la existencia de compiladores cruzados favorece la portabilidad

segn McCall el factor reusabilidad incluye los siguientes criterios:


generalidad modularidad auto-descripcin independencia de la mquina independencia del sistema operativo

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor reusabilidad

Criterios de calidad: factor interoperabilidad

se puede favorecer la reusabilidad usando libreras de software, y tcnicas de programacin orientada a objetos hay que tener en cuenta que el desarrollo de cdigo reusable cuesta ms tiempo y dinero existe un factor econmico difcil de medir: el costo de cdigo reusable y la ganancia por reusar cdigo ya desarrollado

segn McCall el factor interoperabilidad incluye los siguientes criterios:


modularidad interoperabilidad en comunicacin interoperabilidad en datos

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor interoperabilidad

Criterios de calidad: factor correctitud

la interoperabilidad est relacionada con la reusabilidad en la actualidad su importancia ha crecido debido al creciente inters de conectarse con sistemas legacy se favorece mediante la adopcin de estndares

segn McCall el factor correctitud incluye los siguientes criterios:


trazabilidad completitud consistencia

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor correctitud

Criterios de calidad: factor conabilidad

correctitud es un factor muy difcil de identicar debido a la falta de terminologa estndar se lo pueden confundir con otros factores, tales como conabilidad e integridad para medirlo es necesario tener disponible una especicacin formal de los requerimientos, cosa muy rara salvo en proyecto de alto presupuesto y sistemas crticos las tcnicas para vericarlo pueden ser: inspecciones de cdigo, vericacin matemtica y analizadores estticos de programas

segn McCall el factor conabilidad incluye los siguientes criterios:


tolerancia a errores consistencia simplicidad exactitud

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor conabilidad

Criterios de calidad: factor eciencia

combina la tolerancia tanto a errores de hardware como de software tcnica de programacin tales como tolerancia a las fallas, manejo de excepciones y programacin defensiva ayudan puede ser medido con medidas como
tiempo medio entre fallas tiempo medio antes de mantenimiento tiempo medio antes de recuperacin probabilidad de falla

segn McCall el factor eciencia incluye los siguientes criterios:


eciencia en tiempo eciencia en espacio

muchas tcnicas favorecen este factor: el lenguaje de programacin, el sistema operativo, optimizacin de algoritmos, normalizacin de datos

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor integridad

Criterios de calidad: factor usabilidad

segn McCall el factor integridad incluye los siguientes criterios:


control de acceso auditora de acceso

segn McCall el factor usabilidad incluye los siguientes criterios:


operabilidad entrenamiento comunicacin volumen de E/S tasa de E/S

involucra tanto evitar el acceso malintencionado, asi como los daos causados por errores involuntarios de usuarios autorizados

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Criterios de calidad: factor usabilidad

Mtricas de calidad

la usabilidad ha cambiado mucho desde la poca de McCall incluye aspectos tales como adaptabilidad, aprendizaje, adecuacin al contexto algunos autores consideran por ejemplo que facilidad de aprendizaje es un factor de calidad independiente se puede subdividir en
ergonoma general el equipo es adecuado para el uso previsto ergonoma de software estilos de dilogoes, metforas, diseo de pantallas, etc

la medicin de cualquiera de estos factores est denida en este modelo en base a 41 mtricas para cada criterio existe una lista de condiciones que se deben cumplir en distintas etapas: requerimientos (R), diseo (D), implementacin (I) se cuentan las condiciones que se satisfacen en cada una de las etapas, sobre el total posible eso da una medida del criterio, que se pondera en partes iguales para medir el factor con los otros criterios asociados al factor

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Mtricas de calidad: ejemplo

Mtricas de calidad: ejemplo


entonces se cuentan la cantidad de s en cada etapa, resultando en la mtrica de completitud:

para medir el criterio completitud del factor correctitud McCall sugiere las siguientes condiciones:
1 2 3 4

5 6 7 8

referencias no ambiguas [R,D,I] referencias a datos bien denidas, o externas [R,D,I] todas las funciones denidas son usadas [R,D,I] todas las condiciones y procesamientos estn denidos para cada punto de decisin [R,D,I] todos los parmetros formales y actuales coinciden [D,I] todos los reportes de problemas han sido resueltos [R,D,I] el diseo concuerda con los requerimientos [D] el cdigo concuerda con el diseo [I]

s en R 6

s en D 8

s en I 8

)/3

luego la correctitud se mide como la media entre las medidas de sus criterios

(completitud + trazabilidad + consistencia)


3

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelo de Boehm

Caractersticas de alto nivel

el segundo modelo de calidad ms conocido es el presentado por Barry Boehm en 1978 este modelo introduce caractersticas de alto nivel, caractersticas de nivel intermedio y caractersticas primitivas, cada una de las cuales contribuye al nivel general de calidad

las caractersticas de alto nivel representan requerimientos generales de uso pueden ser:
utilidad per-se cuan (usable, conable, eciente) es el producto en s mismo mantenibilidad cuan fcil es modicarlo, entenderlos y retestearlo utilidad general si puede seguir usndose si se cambia el ambiente

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Caractersticas de nivel intermedio

Caractersticas primitivas
el nivel ms bajo corresponde a caractersticas directamente asociadas a una o dos mtricas de calidad de portabilidad
independencia de dispositivos auto-contencin

las caractersticas de nivel intermedio representan los factores de calidad de Boehm:


portabilidad (utilidad general) conabilidad (utilidad per-se) eciencia (utilidad per-se) usabilidad (utilidad per-se) testeabilidad (mantenibilidad) facilidad de entendimiento (mantenibilidad) modicabilidad o exibilidad (mantenibilidad)

de conabilidad:
auto-contencin exactitud completitud consistencia robustez/integridad

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Caractersticas primitivas
de eciencia
accesibilidad eciencia de uso de dispositivos

Caractersticas primitivas

de entendibilidad
consistencia estructuracin concisidad legibilidad

de usabilidad
robustez/integridad accesibilidad comunicacin

de modicabilidad
estructuracin aumentabilidad

de testeabilidad
comunicacin auto descripcin estructuracin

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Comparacin de modelos McCall-Boehm

Comparacin de modelos McCall-Boehm

aunque parezcan similares, la diferencia est en que McCall focaliza en medidas precisas de alto nivel, mientras que Boehm presenta un rango ms amplio de caractersticas primarias la mantenibilidad est ms desarrollada en Boehm

Criterio correctitud integridad eciencia testeabilidad exibilidad portabilidad modicab. entendib.

McCall + + + + + +

Boehm + + + + + + +

Criterio conabilidad usabilidad mantenim. interoperab. reusabilidad claridad document. validez

McCall + + + + +

Boehm + + + + + + +

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Evaluacin de los modelos de McCall y Boehm

Modelos ad-hoc
para monitorear la calidad de software, se pueden tomar dos caminos:

estos modelos tienen sus lmites:


es difcil que las caractersticas y subcaractersticas sean siempre perfectamente independientes falta una asociacin explcita entre los modelos y el proceso de software, ie cmo realizar software de calidad las caractersticas son en general propiedades abstractas medible mediante mtricas. No siempre existe una relacin perfectamente lineal entre los valores de las mtricas y las caractersticas que deben estimar

adoptar un modelo jo se supone que todos los factores de calidad importantes son un subconjunto de los de un modelo publicado; se acepta el conjunto de criterios y mtricas asociados al modelo desarrollar un modelo propio de calidad se acepta que la calidad est compuesta por varios atributos, pero no se adopta lo impuesto por modelos existentes

en este ltimo caso, se debe consensuar el modelo con los clientes antes de empezar el proyecto se deciden cules atributos son importantes para el producto, y cules medidas especcas los componen

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos ad-hoc

Normas ISO para el software

Gilb y Kitchenham-Walker fueron los pioneros en la losofa de calidad evolutiva Gilb propone la identicacin de medidas objetivas de calidad, en complemento con su losofa de desarrollo evolutivo el producto es entregado incrementalmente al cliente, basado en la importancia de las diferentes funcionalidades la propuesta COQUAMO de Kitchenham y Walker extiende las ideas de Gilb con el soporte de herramientas automticas

la ISO ha emitido algunas normas que denen un modelo de calidad del software, en varios contextos de uso
ISO 9126-1 - dene 6 caractersticas de calidad principales, y 27 subcaractersticas. Incluye 3 reportes tcnicos (ISO/IEC 9126-2, 3 e 4) ISO/IEC 9241 - dene las caractersticas de un software usable ISO 12119 - dene las caractersticas de calidad para un software COTS (Commercial off the shelf) la ISO tambin ha publicado la norma 14598 que gua en el proceso de valoracin de la calidad del software segn los criterios de la 9126

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Introduccin al modelo ISO 9126


durante muchos aos se busc en la Ingeniera de Software un modelo nico para expresar calidad la ventaja era obvia: poder comparar productos entre s en 1992, una variante del modelo de McCall fue propuesta como estndar internacional para medicin de calidad de software ISO 9126 Software Product Evaluation: Quality Characteristics and Guidelines for their Use es el nombre formal la ltima revisin ha sido realizada en el 2004; est en proceso de una nueva revisin no se preveen certicados de calidad por esta norma

La calidad en el ciclo de vida del software


el foco en la calidad cambia durante el ciclo de vida:
al principio, durante la recopilacin de requerimientos y anlisis, la calidad es especicada por los requisitos del usuarios, sobre todo desde el punto de vista externo en la fase de diseo e implementacin, la calidad externa se traduce en un diso tcnico, confrontndose con el punto de vista de los desarrolladores sobre la calidad interna y complementandose con los requisitos implcitos que el software debe cumplir la calidad nal (la del uso) debe ser apropiada para los usuarios y el contexto de uso

no existe una calidad perfecta o absoluta. Existe solamente una calidad necesaria y suciente para un dado contexto
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Caractersticas de calidad internas y externas

Caractersticas de calidad y puntos de vista

en ISO 9126 se reconocen seis factores de calidad que se pueden considerar tanto internos como externos
funcionalidad conabilidad eciencia usabilidad mantenibilidad portabilidad

funcion. conab. usabil. eciencia mantenib. portab.

Usuario alta media alta media baja media

Desarrollador baja media baja media alta alta

Administr. baja alta media alta media alta

Comisionista media media media media media media

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Caractersticas de calidad de uso

Subcaractersticas de calidad

en ISO 9126 se reconocen cuatro factores de calidad de uso:


ecacia productividad seguridad satisfaccin

se pretende que estas caractersticas sean comprensivas, es decir cualquier componente de la calidad de software se puede describir como combinacin de aspectos de estos factores a su vez estas caractersticas incluyen un conjunto de subcaractersticas que pueden ser renado mediante mltiples niveles ISO 9126 tambin dene un proceso para evaluar la calidad del software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Subcaractersticas de funcionalidad
funcionalidad conjunto de atributos que relacionan la existencia de un conjunto de funciones con sus propiedades especicadas. Las funciones satisfacen necesidades especicadas o implcitas
adecuacin atributos que determinan si el conjunto de funciones son apropiadas para las tareas especicadas exactitud atributos atributos que determinan que los efectos sean los correctos o los esperados seguridad atributos que miden la habilidad para prevenir accesos no autorizados, ya sea accidentales o deliberados, tanto a programas como a datos interoperabilidad atributos que miden la habilidad de interactuar con sistemas especicados cumplimiento atributos que hacen que el software adhiera a estndares relacionados con la aplicacin, y convenciones o regulaciones legales
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Subcaractersticas de conabilidad
conabilidad conjunto de atributos que se relacionan con la capacidad del software de mantener su nivel de performance bajo las condiciones establecidas por un perodo de tiempo
madurez atributos que se relacionan con la frecuencia de fallas por defectos en el software tolerancia a las fallas atributos que miden la habilidad de mantener el nivel especicado de performance en caso de fallas del software recuperacin atributos que miden la capacidad de reestablecer el nivel de performance y recuperar datos en caso de falla, y el tiempo y esfuerzo necesario para ello cumplimiento idem en funcionalidad

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Subcaractersticas de usabilidad
usabilidad conjunto de atributos que se relacionan con el esfuerzo necesario para usar, y en la evaluacin individual de tal uso, por parte de un conjunto especicado o implcito de usuarios
entendimiento atributos que miden el esfuerzo del usuario en reconocer el concepto lgico del software y su aplicabilidad aprendizaje atributos que miden el esfuerzo del usuario en aprender la aplicacin (control, operacin, entrada, salida) operabilidad atributos que miden el esfuerzo del usuario en operarar y controlar el sistema atractivo cumplimiento idem funcionalidad

Subcaractersticas de eciencia

eciencia conjunto de atributos que se relacionan con el nivel de performance del software y la cantidad de recursos usados, bajo las condiciones establecidas
en tiempo atributos que miden la respuesta y tiempos de procesamiento de las funciones en recursos atributos que miden la cantidad de recursos usados y la duracin de tal uso en la ejecucin de las funciones cumplimiento idem funcionalidad

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Subcaractersticas de mantenibilidad
mantenibilidad conjunto de atributos que se relacionan con el esfuerzo en realizar modicaciones
analizabilidad atributos que miden el esfuerzo necesario para el diagnstico de deciencias o causas de fallas, o para identicacin de las partes que deben ser modicadas facilidad para el cambio atributos que miden el esfuerzo necesario para realizar modicaciones, remocin de fallas o cambios en el contexto estabilidad atributos que se relacionan con el riesgo de efectos no esperados en las modicaciones testeabilidad atributos que miden el esfuerzo necesario para validar el software modcado cumplimiento idem funcionalidad

Subcaractersticas de portabilidad
portabilidad conjunto de atributos que se relacionan con la habilidad del software para ser transferido de un ambiente a otro
adaptabilidad atributos que miden la oportunidad de adaptacin a diferentes ambientes sin aplicar otras acciones que no sean las provistas para el propsito del software instalabilidad atributos que miden el esfuerzo necesario para instalar el software en el ambiente especicado conformidad atributos que miden si el software se adhiere a estndares o convenciones relacionados con portabilidad reemplazo atributos que se relacionan con la oportunidad y esfuerzo de usar el software en lugar de otro software en su ambiente

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Caractersticas de calidad de uso

Mtricas de calidad en ISO 9126


ISO 9126 provee 3 conjuntos de mtricas, para medir respectivamente las caractersticas externas (en ISO 9126-2), las internas (en ISO 9126-3), y las de uso (en ISO 9126-4)

ecacia capacidad de ayudar al usuario a realizar sus objetivos con exactitud y completitud, en un dado contexto productividad capacidad de ayudar al usuario en emplear una apropiada cantidad de recursos en obtener sus resultados satisfaccin capacidad de satisfacer un usuario en un dado contexto de uso seguridad capacidad de lograr aceptables niveles de riesgo para las personas, el ambiente de trabajo, y la actividad, en un dado contexto de uso

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Mtricas de calidad en ISO 9126

Mtricas de calidad en ISO 9126


ejemplo de una mtrica de funcionalidad

todas las mtricas estn caracterizadas por los siguientes elementos:


nombre de la mtrica objetivo de su uso mtodo con el cual se usa frmula y elementos de clculo interpretacin de la mtrica escala tipo de mtrica fuente de los datos de entrada beneciarios de la mtrica

Frmula y elementos de clculo

X = 1(A/B ) A = no. funcionalidad faltante desc. en eval. B = no. funcionalidad descripta en los requisitos medir la completitud de la funcionalidad ofrecida uso de un test de tipo caja negra 0 X 1 el mejor valor es 1 absoluta A = nmero B = nmero X = nmero especicacin de requerimientos reporte de evaluacin
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Objetivo de uso Mtodo de medida Interpretacin Escala Tipo de medida

Fuentes

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Objetivos del uso de mtricas para medir caractersticas externas

Objetivos del uso de mtricas para medir caractersticas internas


representar la calidad de un producto de software, en los estados de evolucin intermedios y nales no ejecutables, respecto a las caractersticas y subcaractersticas del modelo 9126 predecir el nivel de calidad externo del producto prevenir problemas en el uso del producto, descubriendo anticipadamente potenciales defectos las mtricas internas son en general combinacin de mtricas elementales aplicadas a cdigo fuente, diagramas UML o DFD, grcos, etc (medidas mediante anlisis esttico o con inspeccin de cdigo)
Pablo R. Fillottrani Calidad en el Desarrollo de Software

representar la calidad de un producto de software respecto a las caractersticas y subcaratersticas del modelo 9126, durante el testeo validar el cumpliemto del software respecto a los requisitos de calidad externa predecir el nivel de calidad de uso del producto describir el grado de respuesta del producto respecto a los requisito explcitos e implcitos de su uso

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Objetivos del uso de mtricas para medir caractersticas de uso

Uso integrado de las mtricas

existen diversas relaciones e interdependencias entre las tres clases de mtricas vericar la capacidad de un producto de satisfacer las exigencias de los usuarios en un dado escenario de uso, en relacin con los objetivos previstos estas mtricas son en general combinacin de mtricas elementales aplicadas a la interaccin entre usuario y sistema (medidas mediate eld tests, inspecciones, walkthrough, etc) muchas de las caractersticas del modelo 9126 pueden ser medidas contemporneamente por mtricas internas y externas por ejemplo, la conabilidad puede ser medida externamente relevando el nmero de errores durante la ejecucin del producto en un perodo de tiempo, e internamente inspeccionando el cdigo fuente para vericar el nivel de tolerancia a los errores

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Uso integrado de las mtricas

Proceso de evaluacin de la calidad

un problema detectado en el uso del producto (ejemplo la imposibilidad de un usuario de completar correctamente una operacin) puede ser referido tanto como una caracterstica de calidad externa (conabilidad o usabilidad) como una interna (error en la estructura de decisin de un cdigo) la calidad debe entonces ser medida como una combinacin de las mtricas de los tres aspectos, de modo de cubrir los distinto puntos de vista

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Uso de las mtricas en el ciclo de vida


un comisionista puede valorar la conveniencia de elegir un determinado producto usando mtricas para la conabilidad un desarrollador deber disponer de mtricas de funcionalidad para vericar la correcta implementacin de productos semielaborados en el mantenimiento se podr evaluar el esfuerzo y el riesgo de modicar un programa usando mtrica de mantenibilidad se deberan considerar mtricas de portabilidad antes de decidir la migracin de un producto a otros ambientes los usuarios debern poder medir la usabilidad y la ecacio del producto que se les entrega
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Futuro de la norma ISO 9126


la norma ISO 9126 est en proceso de revisin el modelo de calidad del software conuir en el sistema de normas ISO 25000 en la norma ISO 25010, sin modicaciones las mtricas sern denidas por normas en las secciones 2502X, compuestas de ms documentos que soportaran la medicin del software segn distintos puntos de vista (calidad interna, calidad externa, calidad de uso) in corso di revisione el modelo proveer
un modelo de referencia para relevamiento de mtricas denicin matemtica de varias mtricas, primitivas de medicin y mtricas derivadas una gua prctica para el proceso de revisin
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

ISO 9126 vs. otras normas ISO


ISO ha emitido una batera de normas bajo el nombre ISO 9000 referidas a la gestin de calidad en todo tipo de organizacin permite controlar los procesos haciendales dirigindolos a la satisfaccin del cliente las ISO 9000 actualmente (desde el ao 2000 en adelante) se dividen en
ISO 9000 que describe la terminologa y los principios esenciales del sistema de gestin de calidad y su organizacin ISO 9001 para la denicin de los requisitos de calidad ISO 9004 que es una gua para el mejoramiento de la prestacin en una organizacin

ISO 9126 vs. otras normas ISO

la nica certicacin posible es por adherir a la norma ISO 9001; las otras son guas tentativas para favorecer la correcta aplicacin e interpretacin del sistema de calidad
Pablo R. Fillottrani Calidad en el Desarrollo de Software Pablo R. Fillottrani Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

ISO 9126 vs. otras normas ISO


las normas ISO 9000 son universales, y su aplicacin prescinde de las dimensiones o del sector de la empresa denen principios genricos que la empresa debe seguir pero no el modo en la cual debe producir. Por lo tanto no slo son aplicables a los productos sino la organizacin productora la ISO 9001 garantiza el control del proceso productivo y su ecacia, pero no su eciencia actualmente las ISO 9000 son usadas en la industria como modelo de referencia para la calicacin y seleccin de proveedores y clientes

ISO9126 vs. otras normas ISO


ISO 9001 propone un manejo de la calidad orientado al proceso es decir, disear, documentar, implementar, soportar, monitorear, controlar y mejorar las siguientes actividades:
proceso de administracin de calidad proceso de administracin de recursos proceso de investigacin sobre regulaciones proceso de investigacin de mercado proceso de diseo de productos proceso de compras proceso de produccin proceso de provisin de servicios proceso de proteccin del producto proceso de evaluacin de las necesidades del cliente
Pablo R. Fillottrani Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

Modelos iniciales

Modelo de McCall Modelo de Boehm Modelos ad-hoc Modelo ISO 9126 Mtricas de calidad Otros modelos de calidad

ISO9126 vs. otras normas ISO

Otros modelos de calidad

es decir, disear, documentar, implementar, soportar, monitorear, controlar y mejorar las siguientes actividades (cont.):
proceso de comunicaciones con el cliente proceso de comunicaciones interno proceso de control de documentacin proceso de registro de actividades proceso de planicacin proceso de entrenamiento proceso de auditora interna proceso de monitoreo y medicin proceso de mejora contnua

FURPS (Robert Grady, 1992, extendido por Rational Software en FURPS+) incluye funcionalidad, usabilidad, conanza, performance, soportabilidad Dromey (Robert Dromey, 1996) describe la idea de relacionar atributos del producto con atributos de calidad para su evaluacin

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

Pablo R. Fillottrani

Calidad en el Desarrollo de Software

También podría gustarte