Anda di halaman 1dari 6

UNIDAD II CALIDAD DE SOFTWARE ENFOCADA A LOS SISTEMAS DE INFORMACIN 1. CONCEPTOS BASICOS DE CALIDAD DE SOFTWARE 1.1.

CALIDAD DE SOFTWARE Es el desarrollo de software basado en estndares con la funcionalidad y rendimiento total que satisfacen los requerimientos del cliente. Procesos de desarrollo, artefactos, gestin de proyectos, anlisis y diseo, especificacin de requerimientos y arquitectura, son solo algunos de los componentes que se aglomeran para conformar la ingeniera de software (IS) como disciplina para la creacin y mantenimiento de software. Dentro de sta, existe un subconjunto de teoras, herramientas y mtodos orientados a la calidad del software para que este sea mantenible, confiable y aceptable. 1.2. FACTORES QUE DETERMINAN LA CALIDAD DE SOFTWARE Los Factores que determinan que un producto de software sea calidad son los siguientes: 1. 2. 3. 4. Mantenible: el software debe ser diseado de tal manera, que permita ajustarlo a los cambios en los requerimientos del cliente. Esta caracterstica es crucial, debido al inevitable cambio del contexto en el que se desempea un software. Confiable: incluye varias caractersticas adems de la confiabilidad, como la seguridad, control de fallos, PROCESAMIENTO etc. Eficiente: tiene que ver con el uso eficiente de los recursos que necesita un sistema para su perfecto funcionamiento, automatizacin de tareas y administracin del equipo. Amigable: el software debiera ser utilizado sin un gran esfuerzo por los usuarios para los que fue diseado, documentado, etc.

1.3. CONTROL DE LA CALIDAD Conjunto de actividades para evaluar la calidad de los productos desarrollados. Implica vigilar el proceso de desarrollo de software para asegurar que se siguen los procedimientos y los estndares de garanta de calidad, en el proceso de control de calidad se comprueba que las entregas cumplan con los estndares definidos. Consiste en revisar que al final el producto cumpla los requerimientos del cliente. El control de calidad del software abarca todo el proceso de desarrollo de software, supervisar, mejorar el proceso y asegurar, que se sigan los procedimientos adecuados, para alcanzar el nivel de calidad deseado. 2. CARACTERISTICAS DEL SOFTWARE 2.1 Caractersticas esenciales del Software La calidad de un programa se puede medir en base a tres aspectos principales, que tambin son denominados caractersticas esenciales del software.

1. 2. 3.

Operatividad. Se debe valorar si el software hace lo que se espera de l (correccin) y si, para ello, se utilizan, ptimamente, los recursos de la computadora (eficiencia), tales como: la memoria, el tiempo de CPU, etc. Tambin se debe evaluar si la aplicacin ofrece una interfaz adecuada al usuario (facilidad de uso) y si es seguro con respecto a los datos (integridad). Capacidad para sufrir cambios. En este sentido, es importante estimar en qu medida el programa es susceptible de ser corregido (facilidad de mantenimiento) o cambiado (flexibilidad). Tambin hay que ver si resulta fcil hacer pruebas de su funcionamiento (facilidad de prueba). Adaptabilidad a entornos distintos. Hay que preguntarse hasta qu punto se podra volver a usar parte de dicho software en otro proyecto (reusabilidad). Asimismo, se debe valorar si el software puede interactuar con otros sistemas informticos (facilidad de interoperacin) y si se puede usar en otra mquina que utilice un procesador distinto (portabilidad), aunque sea realizando pequeos cambios en el software

Para considerar un software como un producto de alta calidad se deben establecer: Normas mnimas a cumplir. Procedimientos en el desarrollo y en el control en cada fase del ciclo de vida del producto. Estructura organizacional del proyecto. Tareas y responsabilidades especificas del llevar a cabo las pruebas. Documentacin a preparar para revisar la constancia del producto. Tcnicas para llevar acabo auditoria y pruebas requeridas. Estndares, normas y especificaciones a usuario. Criterios de aceptacin del producto.

personal

encargado

de

Para controlar la Calidad del Software es necesario, definir los parmetros, indicadores o criterios de medicin. El software posee determinados ndices medibles que son las bases para la calidad, el control y el perfeccionamiento de la productividad. 2.2 Proceso de control de software Una vez seleccionados los ndices de calidad, se debe establecer el proceso de control para lo que es necesario definir los siguientes pasos: 1. Definir el software que va a ser controlado: clasificacin por tipo, esfera de aplicacin, complejidad, etc., de acuerdo con los estndares establecidos para el desarrollo del software. 2. Seleccionar una medida que pueda ser aplicada al objeto de control. Para cada clase de software es necesario definir los indicadores y sus magnitudes. 3. Crear o determinar los mtodos de valoracin de los indicadores: mtodos manuales como cuestionarios o encuestas estndares para la medicin de criterios periciales y herramientas automatizadas para medir los criterios de clculo. 4. Definir las regulaciones organizativas para realizar el control: quines participan en el control de la calidad, cundo se realiza, qu documentos deben ser revisados y elaborados, etc. 2.3 Aseguramiento de calidad del software (Software Quality Assurance) El aseguramiento de calidad del software es el conjunto de actividades planificadas y sistemticas necesarias para aportarla confianza en que el producto (software) satisfar los requisitos dados de calidad. El aseguramiento de calidad del software se disea para cada aplicacin antes de comenzar a desarrollarla y no despus.

Elabor: Lic. Elena Tzetzngary Aguirre Meja | Unidad 2

Algunos autores prefieren decir garanta de calidad en vez de aseguramiento. Garanta se entiende: CON calidad, pero el Aseguramiento pretende dar confianza en que el producto tiene calidad. El aseguramiento de calidad del software est presente en: Mtodos y herramientas de anlisis, diseo, programacin y prueba Inspecciones tcnicas formales en todos los pasos del proceso de desarrollo del software Estrategias de prueba multiescala Control de la documentacin del software y de los cambios realizados Procedimientos para ajustarse a los estndares (y dejar claro cuando se est fuera de ellos) Mecanismos de medida (mtricas) Registro de auditoras y realizacin de informes Actividades para el aseguramiento de calidad del software Mtricas de software para el control del proyecto Verificacin y validacin del software a lo largo del ciclo de vida Incluye las pruebas y los procesos de revisin e inspeccin La gestin de la configuracin del software 2.4 Gestin de la calidad del software (Software Quality Management) Gestin de la calidad (ISO 9000). Conjunto de actividades de la funcin general de la direccin, que determina la calidad, los objetivos y las responsabilidades, y se implanta por medios tales como la planificacin de la calidad, el control de la calidad, el aseguramiento (garanta) de la calidad y la mejora de la calidad, en el marco del sistema de calidad. 3. CONTROL DE LA CALIDAD DEL SOFTWARE (Software Quality Control) 3.1 Control de Calidad de software Son las tcnicas y actividades de carcter operativo, utilizadas para satisfacer los requisitos relativos a la calidad, centradas en dos objetivos fundamentales: mantener bajo control un proceso y eliminar las causas de los defectos en las diferentes fases del ciclo de vida. En general son las actividades para evaluar la calidad de los productos desarrollados. 3.2 Sistema de calidad Estructura organizativa, procedimientos, procesos y recursos necesarios para implantar la gestin de calidad. El sistema de calidad se debe adecuar a los objetivos de calidad de la empresa. La direccin de la empresa es la responsable de fijar la poltica de calidad y las decisiones relativas a iniciar, desarrollar, implantar y actualizar el sistema de calidad. 3.2.1. Caractersticas de un sistema de calidad. 3.3. Certificacin de la calidad (Quality certification) Un sistema de certificacin de calidad permite una valoracin independiente que debe demostrar que la organizacin es capaz de desarrollar productos y servicios de calidad. 3.3.1. Estndares bsicos para la certificacin de la calidad Los pilares bsicos de la certificacin de calidad son tres : A) Una metodologa adecuada B) Un medio de valoracin de la metodologa C) La metodologa utilizada y el medio de valoracin de la metodologa deben estar reconocidos ampliamente por la industria. 4. FACTORES QUE DETERMINAN LA CALIDAD DEL SOFTWARE Se clasifican en tres grupos: 1) Operaciones del producto: caractersticas operativas, Correccin (Hace lo que se le pide?) El grado en que una aplicacin satisface sus especificaciones y consigue los objetivos encomendados por el cliente. Fiabilidad (Lo hace de forma fiable todo el tiempo?) El grado que se puede esperar de una aplicacin lleve a cabo las operaciones especificadas y con la precisin requerida. Eficiencia (Qu recursos hardware y software necesito?) La cantidad de recursos hardware y software que necesita una aplicacin para realizar las operaciones con los tiempos de respuesta adecuados. Integridad (Puedo controlar su uso?) El grado con que puede controlarse el acceso al software o a los datos a personal no Autorizado. Facilidad de uso (Es fcil y cmodo de manejar?) El esfuerzo requerido para aprender el manejo de una aplicacin, trabajar con ella, introducir datos y conseguir resultados. 2) Revisin del producto: capacidad para soportar cambios Facilidad de mantenimiento (Puedo localizar los fallos?) El esfuerzo requerido para localizar y reparar errores. Flexibilidad (Puedo aadir nuevas opciones?) El esfuerzo requerido para modificar una aplicacin en funcionamiento. Facilidad de prueba (Puedo probar todas las opciones?) El esfuerzo requerido para probar una aplicacin de forma que cumpla con lo especificado en los requisitos. Transicin del producto: adaptabilidad a nuevos entornos Portabilidad (Podr usarlo en otra mquina?) El esfuerzo requerido para transferir la aplicacin a otro hardware o sistema operative.

3)

Elabor: Lic. Elena Tzetzngary Aguirre Meja | Unidad 2

Reusabilidad (Podr utilizar alguna parte del software en otra aplicacin?) Grado en que partes de una aplicacin pueden utilizarse en otras aplicaciones. Interoperabilidad (Podr comunicarse con otras aplicaciones o sistemas informticos? El esfuerzo necesario para comunicar la aplicacin con otras aplicaciones o sistemas Informticos.

4.1 Mtricas de la calidad del sofware Es difcil, y en algn caso imposible, desarrollar medidas directas de los factores de calidad del software. Cada factor de calidad Fc, se puede obtener como combinacin de una o varias mtricas: Fc= c1 * m1 + c2 * m2 + + cn * mn Donde: Ci = factor de ponderacin de la mtrica i, que depender de cada aplicacin especfica. mi = mtrica i Habitualmente se puntan de 0 a 10 en las mtricas y en los factores de calidad. Mtricas para determinar los factores de calidad: Facilidad de auditoria Exactitud Normalizacin de las comunicaciones Completitud Concisin Consistencia Estandarizacin de los datos Tolerancia de errores Eficiencia de la ejecucin Facilidad de expansin Generalidad 5. Fundamentos de pruebas de Software (MTRICAS DE SOFTWARE)

Independencia del hardware Instrumentacin Modularidad Facilidad de operacin Seguridad Auto Documentacin Simplicidad Independencia del sistema software Facilidad de traza Formacin

Cuando se planifica un proyecto se tiene que obtener estimaciones del costo y esfuerzo humano requerido por medio de las mediciones de software que se utilizan para recolectar los datos cualitativos acerca del software y sus procesos para aumentar su calidad. De las Mtricas En la mayora de los desafos tcnicos, las mtricas nos ayudan a entender tanto el proceso tcnico que se utiliza para desarrollar un producto, como el propio producto. El proceso para intentar mejorarlo, el producto se mide para intentar aumentar su calidad . El principio, podra parecer que la necesidad de la medicin e s algo evidente. Despus de todo es lo que nos permite cuantificar y por consiguiente gestionar de forma ms efectiva. Pero la realidad puede ser muy deferente. Frecuentemente la medicin con lleva una gran controversia y discusin. 1. Cules son las mtricas apropiadas para el proceso y para el producto? 2. Cmo se deben utilizar los datos que se recopilan? 3. Es bueno usar medidas para comparar gente, procesos o productos? Estas preguntas y otras tantas docenas de ellas siempre surgen cuando se intenta medir algo que no se ha medido en el pasado. La medicin es muy comn en el mundo de la ingeniera. Medimos potencia de consumo, pesos, dimensiones fsicas, temperaturas, voltajes, seales de ruidos por mencionar algunos aspectos. Desgraciadamente la medicin se aleja de lo comn en el mundo de la ingeniera del software. Encontramos dificultades en ponernos de acuerdo sobre que medir y como va evaluar las medidas. Hay varias razones para medir un producto. 1. Para indicar la calidad del producto. 2. Para evaluar la productividad de la gente que desarrolla el producto. 3. Par evaluar los beneficios en trminos de productividad y de calidad, derivados del uso de nuevos mtodos y herramientas de la ingeniera de software. 4. Para establecer una lnea de base para la estimacin 5. Para ayudar a justificar el uso de nuevas herramientas o de formacin adicional. Las mediciones del mundo fsico pueden englobarse en dos categoras: medidas directas y medidas indirectas. Medidas Directas. En el proceso de ingeniera se encuentran el costo, y el esfuerzo aplicado, las lneas de cdigo producidas, velocidad de ejecucin, el tamao de memoria y los defectos observados en un determinado periodo de tiempo. Medidas Indirectas. Se encuentra la funcionalidad, calidad, complejidad, eficiencia, fiabilidad, facilidad de mantenimiento, etc.

MTRICAS PARA EL MODELO DE ANLISIS Son las que estn relacionadas con el desarrollo del software como funcionalidad, complejidad, eficiencia.

Elabor: Lic. Elena Tzetzngary Aguirre Meja | Unidad 2

CALIDAD EN EL DESARROLLO DE SOFTWARE

MTRICAS TCNICAS: Se centran en las caractersticas de software pro ejemplo: la complejidad lgica, el grado de modularidad. Mide la estructura del sistema, el cmo est hecho. MTRICAS DE CALIDAD: proporcionan una indicacin de cmo se ajusta el software a los requisitos implcitos y explcitos del cliente. Es decir cmo voy a medir para que mi sistema se adapte a los requisitos que me pide el cliente. MTRICAS DE PRODUCTIVIDAD. Se centran en el rendimiento del proceso de la ingeniera del software. Es decir que tan productivo va a ser el software que voy a disear. MTRICAS ORIENTADAS A LA PERSONA. Proporcionan medidas e informacin sobre la forma que la gente desarrolla el software de computadoras y sobre todo el punto de vista humano de la efectividad de las herramientas y mtodos. Son las medidas que voy a hacer de mi personal que va har el sistema. MTRICAS ORIENTADAS AL TAMAO. Es para saber en qu tiempo voy a terminar el software y cuantas personas voy a necesitar. Son medidas directas al software y el proceso por el cual se desarrolla, si una organizacin de software mantiene registros sencillos, se puede crear una tabla de datos orientados al tamao como se muestra en la siguiente figura: La tabla lista cada proyecto del desarrollo del software de los ltimos aos correspondientes, datos orientados al tamao de c/u. Refirindonos a la entrada de la tabla del proyecto 999-01 se desarrollaron 12.1 KLDC (miles de lneas de cdigo) con un esfuerzo de 24 personas mes y un costo de 168 mil dlares. Debe tenerse en cuenta que el esfuerzo y el costo registrados en la tabla incluyen todas las actividades de la ingeniera de software como son anlisis, diseo, codificacin y prueba. Otra informacin del proyecto 222-01 indica que se desarrollaron 365 pginas mientras que se encontraron 29 errores tras entregrselo al cliente, dentro del primer ao de utilizacin tambin sabemos que trabajaron 3 personas en el desarrollo del proyecto. En los rendimientos del sistema y los rudimentarios datos contenidos en la tabla se puede desarrollar, para cada proyecto un conjunto de mtricas sencillas de productividad y calidad orientadas al tamao. Se obtienen las siguientes formulas: Productividad = KLDC/persona-mes Calidad = errores/KLDC Documentacin = pgs. Doc. / KLDC Costo = $/KLDC persona-mes es el esfuerzo MTRICAS ORIENTADAS A LA FUNCIN. Son medidas indirectas del software y del proceso por el cual se desarrolla. En lugar de calcularlas las LDC, las mtricas orientadas a la funcin se centran en la funcionalidad o utilidad del programa. Las mtricas orientadas a la funcin fueron el principio propuestas por Albercht quien sugiri un acercamiento a la medida de la productividad denominado mtodo del punto de funcin. Los puntos de funcin que obtienen utilizando una funcin emprica basando en medidas cuantitativas del dominio de informacin del software y valoraciones subjetivos de la complejidad del software. Los puntos de funcin se calculan rellenando la tabla como se muestra en la siguiente figura: Calculo de mtricas de punto de funcin. Se determinan 5 caractersticas del mbito de la informacin y los clculos aparecen en la posicin apropiada de la tabla. Los valores del mbito de informacin estn definidos de la siguiente manera. 1. Nmeros de entrada de usuario: se cuenta cada entrada del usuario que proporcione al software diferentes datos orientados a la aplicacin. Las entradas deben ser distinguidas de las peticiones que se contabilizan por separado. 2. Numero de salida del usuario: se encuentra cada salida que proporciona al usuario informacin orientada a la aplicacin. En este contexto las salidas se refieren a informes, pantalla, mensajes de error. Los elementos de datos individuales dentro de un informe se encuentran por separado. 3. Nmeros de peticiones al usuario: una peticin est definida como una entrada interactiva que resulta de la generacin de algn tipo de respuesta en forma de salida interactiva. Se cuenta cada peticin por separado. Numero de archivos: se cuenta cada archivo maestro lgico, o sea una agrupacin lgica de datos que puede ser una parte en una gran base de datos o un archivo independiente. Numero de interfaces externas: se cuentan todas las interfaces legibles por la maquina por ejemplo: archivos de datos, en cinta o discos que son utilizados para transmitir informacin a otro sistema.

4. 5.

Unidad II

Lic. Elena Tzetzngary Aguirre Meja | Unidad 2

CALIDAD EN EL DESARROLLO DE SOFTWARE


Cuando han sido recogidos los datos anteriores se asocian el valor de complejidad a cada cuenta. Las organizaciones que utilizan mtodos de puntos de funcin desarrollan criterios para determinar si una entrada es denominada simple, media o compleja. No obstante la determinacin de la complejidad es algo subjetivo. Para calcular los puntos de funcin se utiliza la siguiente relacin. PF = CUENTA_TOTAL * [0.65 + 0.01 * SUM (fi)] Donde CUENTA_TOTAL es la suma de todas las entradas de PF obtenidas de la tabla anterior. Fi donde i puede ser de uno hasta 14 los valores de ajuste de complejidad basados en las respuestas a las cuestiones sealadas de la siguiente tabla. Evaluar cada factor en escala 0 a 5. Los valores constantes de la ecuacin anterior y los factores de peso aplicados en las encuestas de los mbitos de informacin han sido determinados empricamente. Una vez calculado los puntos de funcin se usan de forma analgica a las LDC como medida de la productividad, calidad y otros productos del software. Productividad = PF / persona-mes Calidad = Errores / PF Costo = Dlares / PF Documentacin = Pgs. Doc. / PF La medida de puntos de funcin se diseo originalmente para ser utilizadas en aplicacin de sistemas de informacin de gestin. Sin embargo, algunas aplicaciones se les denominan puntos de caractersticas. La medida del punto de caracterstica da cabida a aplicaciones cuya complejidad algortmica es alta. Las aplicaciones de software de tiempo real de control de procesos y de sistemas que encontrados tienden a tener una complejidad algortmica alta y por tanto fcilmente tratables por puntos de caractersticas. Para calcular los puntos de caractersticas, nuevamente se cuentan y ponderan los valores del mbito de informacin, como se describi anteriormente. Adems, las mtricas de punto de caracterstica tienen en cuenta otra caracterstica del software, los algoritmos. Un algoritmo se define como un problema de complejidad computacional limitada que se incluye dentro de un determinado programa de computadora. La inversin de una matriz, la decodificacin de una cadena de bits o el manejo de una interrupcin son todo ellos ejemplos de algoritmos. Para calcular los puntos de caracterstica, se utiliza la siguiente tabla. Puntos de caracterstica Se usa nico valor de peso para cada uno de los parmetros de medida y se calcula el valor del punto caracterstica global mediante la ecuacin. PF = CUENTA_TOTAL * [0.65 + 0.01 * SUM (fi)] Debe tenerse en cuenta que los puntos de caracterstica y los puntos de funcin representan lo mismo. "funcionalidad o utilidad" en forma de software.

Unidad II

Lic. Elena Tzetzngary Aguirre Meja | Unidad 2

CALIDAD EN EL DESARROLLO DE SOFTWARE


Mtricas orientadas al tamao

Actividades Obligatorias Calcular: a) Productividad = KLDC/esfuerzo Hospital = farmacia = b) Calidad = Errores/KLDC Hospital = Farmacia = Mtricas orientadas a la funcin * Se tiene un sistema el cual cuenta con 3 entradas de catalogo productos, proveedores y clientes. Una pantalla de la elaboracin de facturas, 4 tipos de reportes proporcionados tanto en pantalla como en papel. Estas representaciones son: factura, lista de inventario, estado de cuenta de los clientes y estado de cuenta con los proveedores. Adems la entrada de factura tiene alrededor de 30 peticiones, el sistema genera alrededor de 30 archivos adems de estar conectado a un lector ptico y una impresora. Calcula los puntos de funcin. Parmetro de medida Cuenta Factor de peso medio CALCULAR: . Fi = PF = Productividad = Calidad = Costo = Documentacin = c) Costo = $/KLDC Hospital = Farmacia = d) Documentacin = Pgs. doc. /KLDC Hospital= Farmacia=

Referencias Bibliogrficas S. Kan. Metrics and Models in software Quality Engineering . Addison-Wesley (1995). G. Oskarsson. An ISO 9000 approach to building Quality Software. Prentice-Hall (1996) M. Piattini, J. Calvo. Anlisis y diseo detallado de aplicaciones informticas de gestin. RA-MA (1996). R. S. Pressman. Ingeniera del software. Un enfoque prctico.3 Edicin. McGrawHill (1993) R. S. Pressman. Ingeniera del software. Un enfoque prctico . 4 Edicin. McGrawHill (1998) J. Sanders, E. Curran. Software Quality. Addison-Wesley (1994) M. O. Tingey. Comparing ISO 9000, Malcom Baldrige and the SEI CMM for software. Prentice-Hall (1997). P. Jackson, D. Ashton. Implemente calidad de clase mundial. ISO 9000-BS5750. Limusa (1996). Norma ISO 9000-1 UNE (31 pginas) Norma ISO 9001 UNE (21 pginas) Norma ISO 9000-3 (5 + 15 pginas) Norma ISO 9004-1 UNE (41 pginas) Norma ISO 8402 UNE (30 pginas) NOVATICA.Nmero 137, Enero-Febrero 1999. Monogrfico. Calidad del Software / Software de calidad.

Unidad II

Lic. Elena Tzetzngary Aguirre Meja | Unidad 2

Anda mungkin juga menyukai