Beruflich Dokumente
Kultur Dokumente
1.4 Importancia de la calidad. 1.5 La calidad y el mundo globalizado. 1.6 Calidad de vida. 1.7 Calidad total. 2 Aseguramiento de la calidad del software ( SQA ). 2.1 Relacin de la Ingeniera del software con SQA. 2.2 Definicin y propsito del SQA. 2.3 Problemas que resuelve la SQA. 2.4 Calidad del software en el ciclo de vida del mismo. 2.5 Roles y responsabilidades de los equipos de desarrollo. 2.6 Habilidades y capacidades del personal del SQA. 2.7 Actividades del SQA. 2.8 Mtodos y herramientas. 3 Estndares de calidad aplicados al software. 3.1 ISO 3.2 SPICE 3.3 CMM 3.3.1 Definicin del modelo. 3.3.2 Nivel inicial. 3.3.3 Nivel repetido.
3.3.4 Nivel definido. 3.3.5 Nivel administrado. 3.3.6 Nivel optimizado. 4 Calidad enfocada al desarrollo de software. 4.1 Qu es la calidad del software. 4.2 Cmo obtener calidad de software (mtodos, metodologas, estndares). 4.3 Cmo controlar la calidad del software. 4.4 Costo de la calidad del software. 4.5 Nomenclatura y certificacin ISO 9001:2000. 4.6 La norma ISO/IEC 9126. 4.7 Anlisis de factores que determinan la calidad del software. 4.8 Anlisis del proceso del ciclo de vida del software. 4.9 Funciones de evaluacin del software.
Concepto de la calidad No es absoluta Est sujeta a restricciones Trata de compromisos aceptables Es multidimensional Los criterios de calidad no son independientes
Flexibilidad. Puedo cambiarlo? Facilidad de prueba. Puedo probarlo? Adaptabilidad a nuevos entornos Portabilidad. Podr usarlo en otra mquina? Reusabilidad. Podr reutilizar alguna parte del software? Interoperabilidad. Podr hacerlo interactuar con otro sistema? Situacin actual La industria del software no ha acabado de salir de la fase artesanal Padecemos de prisa patolgica, que es consecuencia directa de: Desorganizacin Falta de planificacin Alta dependencia de los hroes Dedicamos nuestros esfuerzos de hoy a arreglar lo que se hizo mal ayer. El producto (software) es algo intangible y no limitado por las leyes fsicas. La disciplina, ingeniera del software, es relativamente reciente y muchos de sus conceptos importantes estn an inmaduros Carencia de un corpus de conocimiento aceptado mayoritariamente que sirva como fundamentos Escasa presin del mercado En una organizacin inmadura: Procesos software normalmente improvisados Si se han especificado, no se siguen rigurosamente Organizacin reactiva (resolver crisis inmediatas) Planes y presupuestos excedidos sistemticamente, al no estar basados en estimaciones realistas En una organizacin inmadura (cont.):
Si hay plazos rgidos, se sacrifican funcionalidad y calidad del producto para satisfacer el plan No existen bases objetivas para juzgar la calidad del producto Cuando los proyectos est fuera de plan, las revisiones o pruebas se recortan o eliminan El 90% de los proyectos no alcanzan los objetivos El 40% fracasan por completo El 29% no se entregan nunca Gastos de adaptacin tecnolgica al ao 2000
Entre la tcnica ms importante para tales fines tenemos el Despliegue de la Funcin de Calidad (QFD), el cual sirve para realizar todo este proceso de traduccin, ayudando a que la voz del cliente se despliegue a travs de toda la organizacin. (QFD traduce lo que el cliente quiere en lo que la organizacin produce) La funcin de despliegue de la calidad tiene como objetivo asegurar que se cumplan las expectativas del cliente desde el diseo del producto, durante su proceso de manufactura, y hasta que es utilizado por el consumidor.
Porque hay menos desperdicios, menor reproceso, menos errores, menos retrasos, se aprovecha mejor el tiempo de mquinas, slo se emplean los insumos necesarios. Por qu mejora la productividad? Porque las horas hombre y las horas mquina no se malgastan, se aprovechan mejor. Los recursos renovables no se deterioran. Por qu se conquista el mercado? Porque se planifica y se produce en relacin con las preferencias y requerimientos del cliente, y se mejora continuamente en ese sentido.
Por qu se permanece en el negocio? Porque el cliente satisfecho volver a comprar y recomendar hacer los mismo a otros clientes. Por qu se genera ms empleos? Porque el mercado ha sido conquistado y est en aumento. El operario est orgulloso de su trabajo y la empresa crece.
En este sentido se han realizado muchos trabajos que establecen propuestas para el establecimiento de los factores cualitativos que afectan la calidad del software. Entre los principales estn los factores de calidad de McCall y aquellos propuestos por Hewlett-Packard (FURPS: Funcionality, Usability, Reliability; Performance, Supportability) . Adems se han hecho varios intentos por estandarizar los mecanismos de evaluacin de calidad del software. Entre los principales estn: la familia de normas ISO 9000 (en especial la ISO 9001 y la ISO 90032), el modelo de niveles madurez CMM (Capability Maturity Model), el estndar para el aseguramiento de planes de calidad del IEEE 730:1984, el plan general de garanta de calidad del Consejo Superior de Informtica
"lo menos humanos posible" Por qu? "Est mal visto mostrar las emociones" "Aqu lo que importa es cunto dinero se le produce a la empresa al mes, no las personas" Pareciera que el concepto de "humanidad" y "productividad" estuvieran divorciados, por aquello de "Es de humanos cometer errores" El resultado es el mismo; dosis industriales de estrs y temor, desconfianza de unos hacia otros, y al final la calidad del trabajo es del 50% de su potencial, porque al fin y al cabo, para no cometer errores, cada quien hace solamente el mnimo para conservar su trabajo. Hasta ahora, con los cambios econmicos, polticos y sociales, el mundo empieza a tomar en cuenta que la calidad la hacen los seres humanos y no las mquinas. Se ha estado gestando una transicin de conciencia en lo anterior, debido al surgimiento de las nuevas teoras de calidad total.
En pases con una cultura avanzada como Japn son conscientes de la importancia de crear las condiciones para lograr aumentos de calidad, productividad y mejoras impresionantes en el ambiente laboral. Se dieron cuenta de que aunque implementaran procesos de cambio como el rediseo, calidad total, reingeniera, etc., no obtenan los resultados esperaban. Haba que "re humanizar" a las corporaciones. Atender y entenderse como personas; El resultado fue sorprendente. Lograron una mejora notable en el ambiente laboral, se propici un clima de mayor comunicacin y mejor interaccin... Empezaron a surgir equipos de trabajo unidos hacia las metas, pues al darle importancia a las personas, las diferencias y barreras interpersonales se desvanecen dando paso al compromiso de trabajo basado en la confianza mutua entre los empleados, as como en la confianza personal que cada uno experimenta como resultado del proceso vivencial intenso llevado a cabo. Mayor y mejor trabajo en equipo, resultando en un ambiente de trabajo ms positivo, clido y orientado a la cooperacin. Independencia, seguridad y autoconfianza de la gente para llevar a cabo sus responsabilidades y a concretar el desempeo de sus funciones.
Una implementacin ms rpida y efectiva de los cambios. Gente ms creativa y mayor contribucin de ideas, gente con sensibilidad personal para redescubrir todos sus potenciales internos.
UNIDAD 2 Aseguramiento de la calidad del software ( SQA ). 2.1 Relacin de la ingeniera del software con SQA
La mayor parte de nuevas empresas de software necesitan desarrollar sus productos y lanzarlos al Mercado rpidamente. Muchas de las veces, la presin de las metas lleva a muchos desarrolladores a tener dentro del cdigo o dentro de la funcionalidad de sus aplicaciones deficiencias tanto por errores funcionales, de especificaciones, de rendimiento, etc. y para cubrir estas deficiencias, tradicionalmente las empresas se han visto en la necesidad de contratar dentro de sus propias empresas equipos de personas para que detecten estos errores, los documenten y los enven a los desarrolladores para resolverlos. Esta formacin de equipos complementarios para pruebas, normalmente lleva a las empresas a adquirir equipamiento, y encontrar personal con las competencias necesarias para estas tareas. El Aseguramiento de la Calidad del Software es uno de los elementos de la ingeniera del software. Tiene como principal objetivo el dar confianza al usuario de un software que satisface los requisitos del cliente acordados con el Equipo de IOUP Desarrollo y que esta libre de defectos. El aseguramiento de la calidad del software es el conjunto de actividades planificadas y sistemticas necesarias para aportar la 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. Algunos prefieren decir garanta de calidad en vez de aseguramiento. o Garanta, puede confundir con garanta de productos. o 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) o Mecanismos de medida (mtricas) Registro de auditorias y realizacin de informes.
Actividades para el aseguramiento de calidad del software o Mtricas de software para el control del proyecto o Verificacin y validacin del software a lo largo del ciclo de vida Incluye las pruebas y los procesos de revisin e inspeccin. o La gestin de la configuracin del software. EN QUE CONSISTE: El desarrollo o mantenimiento de software, es un proceso que por su naturaleza abstracta y carente de visibilidad fsica, se puede volver complejo. El Aseguramiento de la Calidad del Software se realiza mediante diferentes actividades a lo largo del ciclo del desarrollo o mantenimiento. Se intercalan actividades y tareas especficas a lo largo del desarrollo o mantenimiento de una aplicacin, con la intencin de reducir errores. PROPOSITO: Este libro tiene por objetivo definir y organizar las responsabilidades al interior de la estructura organizacional de la gerencia SQA. Estas responsabilidades son necesarias para el correcto funcionamiento de la gerencia de manera de que los integrantes de la gerencia puedan ejecutar los procesos definidos en el documento de procesos de la gerencia SQA. Se debe tener en cuenta de que el objetivo final es producir los documentos SQAP/XX para lograr el asegurar la calidad del software, de acuerdo a la adherencia de los estndares de la fbrica. ALCANCE: Este documento pretende ser una gua para las relaciones jerrquicas que existen al interior de la gerencia SQA y no es modelo de proceso. Esta gua pretende que los integrantes de la gerencia conozcan el alcance de sus responsabilidades en los procesos de la gerencia.
En trminos generales podemos definir la calidad del software como un atributo de los sistemas de software que tienen concordancia con los requisitos definidos explcita e implcitamente. Entre los principales objetivos del SQA son la confiabilidad, el desempeo, la funcionalidad y el rehso. Y entre los principales elementos para la aplicacin de pruebas estn la experiencia, guas y estndares, mtricas, revisiones, pruebas y el rehso. Las actividades del aseguramiento de la calidad del software contemplan aquellas tareas del proceso de desarrollo de software que buscan asegurar el diseo, desarrollo y distribucin de una aplicacin exitosa u otra forma de tecnologa de software. Ocurre durante todo el proceso de desarrollo, y cada persona involucrada en este proceso tiene un impacto en la calidad de la aplicacin resultante, es importante concentrarse que el aseguramiento de la calidad no es una actividad separada que puede obtenerse fuera de la organizacin.
Asimismo, coordina el control y administracin de cambios, aunado a recopilar y analizar las mtricas del software. Uno de los elementos importantes del proceso de SQA son las revisiones tcnicas, las cuales se constituyen en reuniones conducidas por personal tcnico para personal tcnico, donde se analizan detalladamente los productos generados, los eventos que surgen en forma imprevista, etc. Para esta etapa el uso de mtricas es esencial. Una rama importante de esta disciplina es el SQA estadstico, donde los datos histricos permiten una mejora continua tanto del producto generado en el proyecto, como de proyectos posteriores. Es importante aseverar que la ingeniera de pruebas es otro factor fundamental para el SQA. Muchas de las actividades a realizar deben estar incorporadas al proceso de desarrollo utilizado por la organizacin; cabe recalcar que primeramente la organizacin deber tener definido su proceso o procesos de desarrollo de software. Aunado a ello, si existen herramientas automatizadas que dan soporte al SQA para probar aplicaciones y componentes de stas, registrando y ejecutando casos de prueba, as como generndolos en forma automtica se logra conseguir una productividad alta.
Es obligacin del gerente SQA tomar las decisiones previa discusin con el Subgerente y en acuerdo con ste. Gerente General Gerente SQA Subgerente SQA Ingeniero de Especialidad 1 Ingeniero de Especialidad En caso de haber discrepancias stas deben solucionarse en concordancia con los objetivos de la gerencia, cualquier decisin que el Gerente haga sin aprobacin del subgerente se considerar una falta de protocolo. En casos extremos, el gerente, previo aviso al subgerente, podr tomar decisiones solitariamente; en este caso la responsabilidad recaer en forma total sobre el gerente. Es por esta razn que tanto el gerente como el subgerente deben ser profesionales de alta calidad y con un gran conocimiento en el uso de estndares de fabricacin de software. El objetivo operacional de la gerencia es producir todas las versiones del documento SQAP/XX. Los procesos y actividades necesarias para la realizacin de estos documentos se encuentra detallada en el documento Proceso de la Gerencia SQA v 0.3. El responsable de que se apliquen los procedimientos descritos en el proceso para la Gerencia SQAP es el gerente SQA. Todo documento que salga de la Gerencia deber estar revisado y validado por el Gerente y Subgerente SQA. Para producir los documentos SQAP/XX, se necesitan distintos documentos de entrada segn la fase que se est implementando. Es responsabilidad del Gerente SQA, definir y planificar los plazos de entrega de los documentos con las otras gerencias de la fbrica. Para materializar estos intercambios de documentos, delegar estas funciones con el Subgerente de SQA, el cual ejecutar estas acciones, pudiendo delegarlas por proyectos o por especializaciones en los ingenieros de especialidad. En cuanto a los Ingenieros de Especialidad, stos tendrn que ejecutar en detalle las actividades definidas por el Gerente y Subgerente en los plazos a convenir. Todos los trabajos de los Ingenieros de Especialidad deben ser verificados por la Gerencia y Subgerencia. Es tambin responsabilidad de la Gerencia definir las actividades y plazos para que los Ingenieros de Especialidad ejecuten las actividades. Tambin es responsabilidad del Gerente y Subgerente apoyar el trabajo de los Ingenieros de Especialidad, Monitorearlo y evaluarlo de manera de que se cumplan las actividades de acuerdo a los procedimientos definidos en los estndares de la Gerencia.
Responsabilidad ante la gerencia general 2 Borradores de SQAP/XX. Delegar tareas y funciones adicionales a integrantes de la gerencia. Subgerencia SQA El subgerente de SQA realizar las actividades que se detallan a continuacin: Reemplazar al gerente cuando ste lo solicite, o bien cuando lo estime necesario en circunstancias de fuerza mayor. Apoyar a gerencia directamente, colaborando en las tareas asignadas al gerente. Ejecutar el intercambio de documentos con las otras gerencias de la fbrica. Apoyar, monitorear y evaluar el trabajo de los Ingenieros de Especialidad, velando por que se cumplan las actividades de acuerdo a los procedimientos definidos en los estndares de la Gerencia Caminatas y reuniones de miembros de la gerencia. Caminatas y reuniones con las dems gerencias. Responsabilidad de cumplimiento de plazos. Responsabilidad ante el gerente de SQA Colaborar en la confeccin de los documentos SQAP/XX. Delegar tareas y funciones adicionales a Ingenieros de Especialidad. Ingeniero especialidad SQA A.- Planificaciones Planificacin SQAP/UR Revisin del URD
Revisar consistencia y completitud de los requisitos del usuario. Enviar revisiones al usuario para chequear la correctitud de los requisitos. Registre Tiempos y Defectos en Formularios.
Quiz, lo mas evidente es la certificacin ISO-9000:2000 al sistema de gestin de la calidad del proceso de desarrollo y mantenimiento de software; sin embargo, el verdadero objetivo es desarrollar y mantener las aplicaciones, satisfaciendo los requisitos de los usuarios, superando sus expectativas y entregando las aplicaciones en fecha y libre de defectos.
Un sistema de calidad consta de varias partes o Documentacin Manual de calidad. Es el documento principal para establecer e implantar un sistema de calidad. Puede haber manuales a nivel de empresa., departamento, producto, especficos (compras, proyectos.) o Parte fsica: locales, herramientas, computadoras, etc. o Aspectos humanos: Formacin de personal. Creacin y coordinacin de equipos de trabajo. Normativas o ISO ISO 9000: Gestin y aseguramiento de calidad (conceptos y directrices generales) Recomendaciones externas para aseguramiento de la calidad (ISO 9001, ISO 9002, ISO 9003) Recomendaciones internas para aseguramiento de la calidad (ISO 9004) 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. Los pilares bsicos de la certificacin de calidad son tres: o U na metodologa adecuada. o Un medio de valoracin de la metodologa o La metodologa utilizada y el medio de valoracin de la metodologa deben estar reconocidos ampliamente por la industria.
Unidad 3 Estndares de calidad aplicados al software Introduccin. Como hemos visto a lo largo de esta materia la calidad hace referencia a un conjunto de caractersticas explicitas e implcitas que hace de un producto en este caso un software cumpla con esas propiedades para que satisfaga las necesidades que el cliente requiera, pero no solamente es el desarrollo del software sino todo el proceso de aseguramiento que se aplique con el fin de elaborarlo de la mejor calidad posible llevando esto al seguimiento y utilizacin de estndares ya establecidos para lograr ese objetivo que es muy difcil de lograr. Estndares de calidad aplicada al software Entremos en detalle hoy en da la calidad es importante para poder satisfacer a los clientes que pidan un sistema de calidad y cada vez hay mucho mayor competitividad en este mundo de la informtica lo cual hace que cada uno de los desarrolladores busque opciones del como poder desarrollar software de calidad y en ello se han creado desde hace mucho tiempo atrs los estndares que hoy en da rigen en torno a este mundo para el desarrollo correcto de aplicaciones de calidad cumpliendo con sus normas y parmetros en aras de conseguir la ansiada calidad, y en este trabajo hablaremos especficamente de 3 estndares aplicados al desarrollo de software y esos son: ISO SPICE CMM
3.1 ISO
La Organizacin Internacional para la Estandarizacin, mejor conocida como ISO, es la agencia especializada en estandarizacin, fue establecida oficialmente el 23 de febrero de 1947 con el objeto de promover la estandarizacin internacional, de tal manera que se facilitara el intercambio internacional de bienes y servicios casi como el desarrollo cientfico y tecnolgico. Actualmente abarca los estndares nacionales de 91 pases y en los Estados Unidos, la representacin se llama The American National Standards Institute (ANSI).ISO comprende alrededor de 180 Comits tcnicos. Cada uno es responsable de una o ms reas de especializacin, abarcan desde las abreviaturas de los sistemas de medicin hasta la especificacin de protocolos de transferencia, pasando por especificacin de tornillos, lentes, contenedores martimos, medios magnticos, hojas de papel, cables, elementos estructurales, pruebas de seguridad, simbologa, medio ambiente, etc., y por supuesto software. Que son la serie de estndares ISO?????Las series de ISO 9000 son un grupo de 5 individualidades, pero relacionadas entre s, siendo estndares internacionales de administracin de la calidad y aseguramiento de la misma. Algunos de los beneficios que se alcanzan al instrumentar estas series en la empresa, son: La
posibilidad de darle calidad al producto o servicio. Evitar costos de inspecciones finales, costos de garantas y procesos. Puede reducirse el nmero de auditoras de los clientes a los procesos de operacin. Mayor aceptacin por parte de los clientes y acogida en los mercados tanto nacionales como internacionales. Hablemos de nuestro estndar el ISO 9000-3En estos das & quot; alidad & quot; es la palabra que ocupa gran relevancia ya que los consumidores esperan productos de calidad para satisfacer sus necesidades, soluciones a sus problemas y obtener beneficios de la misma. Sin embargo como es de suponerse dentro de la industria del software, la & quot; calidad & quot; no ha sido el fuerte dentro de la rama. Las tres fallas predominantes que existen dentro de la industria del software son los altos costos en cuanto a depuracin de un sistema, tiempo perdido en la correccin del sistema y la falla de conocer todas las necesidades del usuario, trayendo como consecuencia la perdida de clientes ya que se dejan insatisfechos con los pobres resultados de la inversin hecha por el cliente. Hoy en da la industria del software est implementando modelos para mejorar sus operaciones y corregir sus fallas y la expectativa es colocar el desarrollo de software bajo un control estadstico para verificar cules son las actividades repetitivas que continuamente se tienen que programar, y que producen exactamente el mismo resultado. Uno de estos modelos base son las normas estndares de calidad ISO 9000 que en especial han creado un inters masivo para la industria de software a causa de su aceptacin a nivel internacional de muchas componas importantes. ISO 9000-3 Generalidades Ttulo: Normas de gestin de la calidad y garanta de la calidad. Parte 3: Orientaciones para la aplicacin de la Norma ISO 9001 al desarrollo, suministro y mantenimiento del software. Naturaleza: Internacional. mbito: Desarrollo de Sistemas de Informacin, Procesos del ciclo de vida, Calidad del software. Campo de aplicacin y alcance: Esta parte de la ISO 9000 contiene orientaciones que facilitan la aplicacin de la Norma ISO 9001 a las organizaciones dedicadas al desarrollo, suministro y mantenimiento del software. Se pretende con ella dar orientaciones en relacin con situaciones en las que un contrato entre dos partes exija la demostracin de la capacidad de determinado proveedor para desarrollar, suministrar y mantener productos de software. Estructura Sistema de la calidad. Responsabilidad de la gestin. Sistema de la calidad. Auditoras internas al sistema de la calidad. Acciones correctivas. Sistema de la calidad . General.
Anlisis del contrato Especificacin de los requisitos del comprador Planificacin del desarrollo Planificacin de la calidad Proyecto e implementacin Pruebas y validaciones Aceptacin Reproduccin, entrega e instalacin Mantenimiento Sistema de la calidad - actividades de apoyo (independientes de cualquier fase) Gestin de la configuracin Control de documentos Registros de la calidad Medicin Reglas, prcticas y convenciones Herramientas y tcnicas Aprovisionamento Productos de software incluidos
Secciones de la norma ISO 9000-3 Responsabilidades de la direccin Sistemas de calidad Revisin del contrato Control de documentos y datos Productos provistos por el comprador Identificacin y trazabilidad del producto Inspeccin y pruebas Equipos de Inspeccin, medicin y pruebas Estado de Inspeccin y pruebas Control de producto no conforme Acciones correctivas y preventivas Manejo, almacenaje, empaque, preservacin y embargue Control de registros de calidad Auditoras internas de calidad Capacitacin Tcnicas estadsticas
Niveles del Estndar CMM Nivel 1. Inicial. En este nivel, los procesos y mtodos de ingeniera no se encuentran definidos. Por esa razn, los proyectos son adelantados de manera incoherente, incontrolada y poco profesional. Nivel 2. Repetible. Se establecen algunos procesos y mtodos de ingeniera a nivel de proyectos, an incipientes.
Nivel 3. Definido. Los procesos, actividades y mtodos relacionados con la ingeniera y administracin de proyectos se encuentran documentados, estandarizados y construidos alrededor de un marco integrado para toda la compaa. Nivel 4. Administrado. La compaa opera bajo Control Estadstico de Procesos, tanto en procesos como en productos. Nivel 5. Optimizacin. En este nivel, las organizaciones se encuentran en un proceso de mejoramiento continuo. Todos los procesos y tcnicas modernas estn en pie, lo mismo que la administracin cuantitativa.
El principio administrativo contempla las funciones de planificacin y control del desarrollo del software, as como la organizacin del ambiente o centro de ingeniera de software. El principio ergonmico define la interfaz entre el usuario y el ambiente automatizado. La adopcin de una buena poltica contribuye en gran medida a lograr la calidad del software, pero no la asegura. Para el aseguramiento de la calidad es necesario su control o evaluacin. 4.3-
2- Capacidad de Soportar Cambios Facilidad de Mantenimiento: Es el esfuerzo requerido para localizar y arreglar un error en un programa. La pregunta asociada a este factor sera: Puedo corregirlo? Flexibilidad: Es el esfuerzo requerido para modificar un programa operativo. La pregunta asociada a este factor sera: Puedo cambiarlo? Facilidad de Prueba: Es el esfuerzo requerido para probar un programa de forma que se asegure que realiza su funcin requerida. La pregunta asociada a este factor sera: Puedo probarlo?
3- Adaptabilidad de nuevos entornos Portabilidad: Es el esfuerzo requerido para transferir el programa desde un hardware y/o un entorno de sistema de software a otro. Este factor tiene una pregunta asociada: Podr usarlo en otra mquina?
Reusabilidad: Es el grado en que un programa (o partes de este) se pueden rehusar en otras aplicaciones. Este factor tiene una pregunta asociada: Podr rehusar alguna parte del software? Facilidad de Interoperacin: Es el esfuerzo requerido para acoplar un sistema a otro. Este factor tiene una pregunta asociada: Podr hacerlo interactuar con otro sistema?
2- Mtricas de Calidad Es difcil desarrollar medidas directas de los anteriores factores de calidad. Por eso, se definen un conjunto de mtricas para cada uno de los factores de calidad. Generalmente estas mtricas definidas por MacCall solo pueden ser medidas en forma subjetiva. Las mtricas pueden estar listas de comprobaciones para obtener el grado de los atributos especficos del software. El esquema de graduacin propuesto por McCall va en una escala de 0 (bajo) a 10 (alto). En este esquema se usan las siguientes mtricas: Facilidad de Auditoria La facilidad con que se puede comprobar la conformidad con los estndares Exactitud
La precisin de los clculos y el control Normalizacin de las Comunicaciones El grado en que se usan el ancho de banda, los protocolos y las interfaces estndar Completitud
El uso de un diseo uniforme de tcnicas de documentacin a los largo del proyecto de desarrollo de software Estandarizacin en los datos
El uso de estructuras de datos de tipos estndar a lo largo de todo el programa Tolerancia de Errores El dao que se produce cuando el programa encuentra un error Eficiencia en la Ejecucin El rendimiento en tiempo de ejecucin de un programa Facilidad de expansin El grado en que se puede ampliar el diseo arquitectnico de datos o procedural Generalidad
La amplitud de aplicacin potencial de los componentes del programa Independencia del Hardware El grado en que el software es independiente del hardware en que opera Instrumentacin
El grado en que el programa muestra su propio funcionamiento e identifica errores que aparecen Modularidad
La independencia funcional de los componentes del programa Facilidad de Operacin La facilidad de operacin de un programa Seguridad
Esta etapa tiene como objetivo la consecucin de un primer documento en que queden reflejados los requerimientos y funcionalidades que ofrecer al usuario del sistema a desarrollar (qu, y no cmo, se va a desarrollar). Dado que normalmente se trata de necesidades del cliente para el que se crear la aplicacin, el documento resultante suele tener como origen una serie de entrevistas cliente-proveedor situadas en el contexto de una relacin comercial, siendo que debe ser comprendido por ambas partes (puede incluso tomarse como base para el propio acuerdo comercial). Especificaciones Ahora se trata de formalizar los requerimientos; el documento obtenido en la etapa anterior se tomar como punto de partida para esta fase. Su contenido es an insuficiente y lleno de imprecisiones que ser necesario completar y depurar. Por medio de esta etapa se obtendr un nuevo documento que definir con ms precisin el sistema requerido por el cliente (el empleo de los casos de uso, use cases, de Jacobson es una muy buena eleccin para llevar a cabo la especificacin del sistema). Del sistema a la primera; sern necesarias sucesivas versiones del documento en que irn quedando reflejada la evolucin de las necesidades del cliente (por una parte no siempre sabe en los primeros contactos todo lo que quiere realmente, y por otra parte pueden surgir cambios externos que supongan requerimientos nuevos o modificaciones de los ya contemplados). Anlisis Es necesario determinar que elementos intervienen en el sistema a desarrollar, as como su estructura, relaciones, evolucin en el tiempo, detalle de sus funcionalidades, que van a dar una descripcin clara de qu sistema vamos a construir, qu funcionalidades va a aportar y qu comportamiento va a tener. Para ello se enfocar el sistema desde tres puntos de vista relacionados pero diferentes: Funcional. Esttico. Dinmico.
Diseo Tras la etapa anterior ya se tiene claro que debe hacer el sistema, ahora tenemos que determinar como va a hacerlo (cmo debe ser construido el sistema?; aqu se definirn en detalle entidades y relaciones de las bases de datos, se pasar de
casos de uso esenciales a su definicin como casos expandidos reales, se seleccionar el lenguaje ms adecuado, el Sistema Gestor de Bases de Datos a utilizar en su caso, libreras, configuraciones hardware, redes, etc.). Implementacin Llegado este punto se empieza a codificar algoritmos y estructuras de datos, definidos en las etapas anteriores, en el correspondiente lenguaje de programacin y/o para un determinado sistema gestor de bases de datos. Pruebas El objetivo de estas pruebas es garantizar que el sistema ha sido desarrollado correctamente, sin errores de diseo y/o programacin. Es conveniente que sean planteadas al menos tanto a nivel de cada mdulo (aislado del resto), como de integracin del sistema (segn sea la naturaleza del proyecto en cuestin se podrn tener en cuenta pruebas adicionales, p.ej. de rendimiento). Validacin Esta etapa tiene como objetivo la verificacin de que el sistema desarrollado cumple con los requisitos expresados inicialmente por el cliente y que han dado lugar al presente proyecto (para esta fase tambin es interesante contar con los use cases, generados a travs de las correspondientes fases previas, que servirn de gua para la verificacin de que el sistema cumple con lo descrito por estos Mantenimiento y evolucin Finalmente la aplicacin resultante se encuentra ya en fase de produccin (en funcionamiento para el cliente, cumpliendo ya los objetivos para los que ha sido creada). A partir de este momento se entra en la etapa de mantenimiento, que supondr ya pequeas operaciones tanto de correccin como de mejora de la aplicacin (p.ej. mejora del rendimiento), as como otras de mayor importancia, fruto de la propia evolucin (p.ej. nuevas opciones para el usuario debidas a nuevas operaciones contempladas para el producto).
Bibliografa
http://translate.googleusercontent.com/translate_c?hl=es&sl=en&u=http://www.sqi. gu.ed
http://cronicasdel.wordpress.com/2011/06/04/unidad-4-calidad-enfocada-aldesarollo-del-software/
http://www.buenastareas.com/ensayos/Calidad-Del-Software/1209577.html#