Calidad Total en Informática
|
Calidad Total en Informática. La Calidad Total en Informática, es resultado del movimiento global dentro del proceso de mejoramiento continuo de los estándares de producción en todos los sectores industriales, en particular, cuando éste se concentra en la producción de sistemas de información y software especializado.
Sumario
Definición
La calidad total es un concepto, una filosofía, una estrategia, un modelo de hacer negocios y está localizado hacia el cliente. La calidad total no solo se refiere al producto o servicio en sí, sino que es la mejoría permanente del aspecto organizacional, gerencial; tomando una empresa como una máquina gigantesca, donde cada trabajador, desde el gerente, hasta el funcionario del más bajo nivel jerárquico está comprometido con los objetivos empresariales. Para que la calidad total se logre a plenitud, es necesario que se rescaten los valores morales básicos de la sociedad y es aquí, donde el empresario juega un papel fundamental, empezando por la educación previa de sus trabajadores para conseguir una población laboral más predispuesta, con mejor capacidad de asimilar los problemas de calidad, con mejor criterio para sugerir cambios en provecho de la calidad, con mejor capacidad de análisis y observación del proceso de manufactura en caso de productos y poder enmendar errores.
Ventajas
El uso de la calidad total conlleva ventajas, pudiendo citar como ejemplos las siguientes:
- Potencialmente alcanzable si hay decisión del más alto nivel.
- Mejora la relación del recurso humano con la dirección.
- Reduce los costos aumentando la productividad.
La calidad total es un sistema de gestión de calidad que abarca a todas las actividades y a todas las realizaciones de la empresa, poniendo especial énfasis en el cliente interno y en la mejora continua. Actualmente con el avance gigantesco de la industria del software se ha producido una prolongada «crisis del software», donde los productos se entregan con demoras, los desarrollos exceden lo inicialmente presupuestado y no cumplen con los requerimientos originales. Esta problemática se extiende tanto a la enorme dificultad de proporcionar mantenimiento, como al cumplimiento de criterios de calidad, por ello a medida esto progresa la calidad total se vuelve mas que un sello de eficiencia y eficacia una necesidad.
Control de la calidad en el desarrollo de software
El Control de la Calidad se posesiona como una estrategia para asegurar el mejoramiento continuo de la calidad. Es un programa para asegurar la continua satisfacción de los clientes externos e internos mediante el desarrollo permanente de la calidad del producto y sus servicios. Es un concepto que involucra la orientación de la organización a la calidad manifestada en sus productos, servicios, desarrollo de su personal y contribución al bienestar general. El mejoramiento continuo es una herramienta que en la actualidad es fundamental para todas las empresas porque les permite renovar los procesos administrativos que realizan, lo cual hace que las empresas estén en constante actualización; además, permite que las organizaciones sean más eficientes y competitivas, fortalezas que le ayudarán a permanecer en el mercado. Para lograr una calidad de software, se debe lograr una concordancia con los requerimientos funcionales y de rendimiento explícitamente establecidos, con los estándares de desarrollo explícitamente documentados y con las características implícitas que se espera de todo software se define como:
- Los requerimientos del software son los fundamentos desde los que se mide la calidad.
- La falta de concordancia con los requerimientos es una falta de calidad.
- Los estándares especificados definen un conjunto de criterios de desarrollo que guía la forma en se aplica la ingeniería del software; si no se siguen ciertos criterios, casi siempre se dará una falta de calidad.
- Existe un conjunto de requerimientos implícitos (el deseo de buen mantenimiento). Si el software se ajusta a sus requerimientos pero falla en alcanzar los requerimientos implícitos del software queda en entre dicho.
La calidad del software es una compleja mezcla de ciertos factores que varían para las diferentes aplicaciones y los clientes que las solicitan. La garantía de calidad es una actividad esencial en cualquier empresa que produce productos que van a ser usados por otros. Antes del siglo veinte, la garantía de calidad era responsabilidad única de la persona que construía el producto. La primera función de control y de garantía de calidad formal fue introducida por los Laboratorios Bell en 1916 y se extendió rápidamente por todo el mundo de las manufacturas. Hoy en día, cada compañía tiene un mecanismo que asegura la calidad de sus productos, de hecho, durante la pasada década se han usado ampliamente como tácticas de mercado la declaración explícita de mensajes que ponían de manifiesto la calidad ofrecida por las compañías.
Garantía de la calidad en el desarrollo de software
La SQA (Garantía del Software) forma parte de una función más amplia de garantía de calidad y engloba actividades que desbordan muchas disciplinas técnicas. El alcance de la responsabilidad de la garantía de calidad implica en el desarrollo de software a muchos constituyentes de una organización –Ingenieros de software, gestores del proyecto, clientes, comerciales y las personas que trabajan dentro del grupo de SQA. La garantía de calidad del software es la guía de preceptos de gestión y de las disciplinas de diseño de la garantía de calidad para el espacio tecnológico y la aplicación de la ingeniería de software. La capacidad de garantizar la calidad es la medida de la madurez de la disciplina de ingeniería. Al finalizar de seguir esa guía antes mencionada, lo que se obtiene es la madurez de la ingeniería de software.
- Los factores que afectan la calidad del software se clasifica en dos grupos:
- Factores que pueden ser medidos directamente (como errores, unidad de tiempo, etc).
- Factores que solo pueden ser medidos indirectamente (como la facilidad de uso de mantenimiento, etc.).
Los factores de calidad del software se centran en tres aspectos importantes de un producto de software: sus características operativas, su capacidad de soportar los cambios y su adaptabilidad a nuevos entornos; y estos factores son los siguientes:
- Corrección. El grado en que un programa satisface sus especificaciones y consigue los objetivos de la misión encomendada por el cliente.
- Fiabilidad. El grado en que se puede esperar que un programa lleve a cabo sus funciones esperadas con la precisión requerida. Esta puede ser medida o estimada por datos históricos o estadísticos.
- Eficiencia. La cantidad de recursos de computadora y de código requeridos por un programa para llevar a cabo sus funciones.
- Integridad. El grado en que puede controlarse el acceso al software o a los datos, por personal no autorizado.
- Facilidad de uso. El esfuerzo requerido para aprender un programa, trabajar con él, preparar su entrada e interpretar su salida.
- Facilidad de Mantenimiento. El esfuerzo requerido para localizar y arreglar un error de un programa.
- Flexibilidad. El esfuerzo requerido para modificar un programa operativo.
- Facilidad de prueba. El esfuerzo requerido para probar un programa de manera que se asegure que realiza su función requerida.
- Portabilidad. El esfuerzo requerido para transferir el programa desde un hardware y/o un entorno de sistemas de software a otro.
- Reusabilidad. El grado en que un programa (o partes de un programa) se puede reutilizar en otras aplicaciones. Esto va relacionado con el empaquetamiento y el alcance de las funciones que realiza el programa.
- Facilidad de interoperación. El esfuerzo requerido para acoplar un sistema a otro.
Es difícil desarrollar medidas directas de los anteriores factores de calidad. Por lo cual, se define un conjunto de métricas usadas para desarrollar expresiones para cada uno de los factores de acuerdo a un factor de calidad del software, coeficientes de regresión y métricas que afectan el factor de calidad. Los factores de calidad descritos anteriormente pueden representar una "lista de comprobación" que se han sugerido para la calidad del software. Hewlett-Packard ha desarrollado un conjunto de factores de calidad del software, sus siglas son FURPS – por funcionalidad, facilidad de uso, fiabilidad, rendimiento y capacidad de soporte. Se definen los principales atributos para cada uno de los cinco factores principales:
- La Funcionalidad se obtiene mediante la evaluación del conjunto de características y de posibilidades del programa.
- La Facilidad de uso se calcula considerando los factores humanos, consistencia y la documentación.
- La Fiabilidad se calcula midiendo la frecuencia de fallos y su importancia.
- El Rendimiento se mide mediante la evaluación de la velocidad del proceso, el tiempo de respuesta, etc.
- La Capacidad de Soporte combina la posibilidad de ampliar el programa, la adaptabilidad y la utilidad.
La garantía de calidad del software comprende una variedad de tareas, asociadas con las siguientes actividades principales:
- Aplicación de métodos técnicos
- Realización de revisiones técnicas formales
- Prueba del software
- Ajuste a los estándares
- Control de cambios
- Mediciones
- Registro y realización de informes.
La garantía de calidad del software comienza con un conjunto de herramientas y métodos técnicos que ayudan al analista a conseguir una especificación de alta calidad y un diseño de alta calidad. Las Revisiones Técnicas Formales son unas de las actividades más importantes y permiten garantizar la calidad. Esta es una especie de reunión del personal técnico con el único propósito de descubrir problemas de calidad. La prueba del software usa una serie de métodos de diseño de casos de prueba que ayudan a asegurar una efectiva detección de errores. Muchos grupos de desarrollo de software usan la prueba del software como una "red de seguridad" para la garantía de calidad. El grado de aplicación de procedimientos y estándares, se debe establecer esta actividad para garantizar que se sigan estos. Una de las principales amenazas para la calidad del software viene de los cambios. Cada cambio realizado sobre el software en potencia puede introducir errores o crear efectos laterales que propaguen errores. El proceso de control de cambios contribuye directamente con la calidad del software, al formalizar las peticiones de cambio, evaluar la naturaleza de cambio y controlar la naturaleza de cambio. Un objetivo importante de la garantía de calidad del software es seguir la pista a la calidad del software y evaluar el impacto de los cambios de metodología y de procedimiento que intentan mejorar la calidad del software. Para conseguir esto, se deben recolectar métricas del software. Así el registro de información y la generación de informes para la garantía de calidad del software (SQA), dan procedimientos para la recolección y divulgación de información de SQA.
Revisión técnica formal
La actividad central que permite garantizar la calidad es la Revisión técnica formal, que es una reunión específica de revisión que se ha mostrado efectiva en el descubrimiento de defectos. Los objetivos de la reunión técnica formal son:
- Descubrir errores en la función, la lógica o la implementación de cualquier software.
- Verificar que el software bajo revisión alcance sus requisitos.
- Garantizar que el software ha sido representado con ciertos estándares predefinidos.
- Conseguir un software desarrollado de forma uniforme.
- Hacer que los proyectos sean más manejables.
Se deben establecer directrices para conducir las revisiones técnicas formales, distribuyéndolas entre los revisores, para ser consensuadas y seguidas. A continuación se muestra un conjunto de directrices para las revisiones técnicas formales:
- Revisar el producto, no al productor.
- Fijar una agenda y mantenerla.
- Limitar el debate y las impugnaciones.
- Enunciar áreas de problemas, pero no intentar resolver cualquier problema que se ponga de manifiesto (la resolución de problemas debe ser pospuesta para después de la reunión de revisión).
- Limitar el número de participantes e insistir en la preparación anticipada.
- Desarrollar una lista de comprobaciones para cada producto que haya de ser revisado.
- Disponer recursos y una agenda para las reuniones técnicas formales.
- Llevar a cabo un buen entrenamiento de todos los revisores (todos los participantes en la reunión deben recibir algún entrenamiento formal).
Véase también
Fuentes
- Normas de la calidad. Consultado el 12 de mayo de 2011. Disponible en: "www.gestiopolis.com"
- Calidad. Consultado el 12 de mayo de 2011. Disponible en: "dmi.uib.es"
- Pressman, Roger S., Ingeniería de Software. Un enfoque Práctico, Parte I, Editorial Feliz Varela 2005, 5ta Edición, La Habana, Cuba, pp. 131-148.
- Entrevista con la Ing. en Ciencias Infórmaticas Yohanlena Hartman Díaz.