UNIDAD 4 

4.1 QUE ES LA CALIDAD DEL SOFTWARE

 

‘’Es el grado con el que un sistema, componente o proceso cumple con los requerimientos especificados y las necesidades o expectativas del cliente o usuario.

La calidad del software es el conjunto de cualidades que lo caracterizan y que determinan su utilidad y existencia. La calidad es sinónimo de eficiencia, flexibilidad, corrección, confiabilidad, mantenibilidad, portabilidad, usabilidad, seguridad e integridad.

La calidad del software es medible y varía de un sistema a otro o de un programa a otro. Un software elaborado para el control de naves espaciales debe ser confiable al nivel de “cero fallas”; un software hecho para ejecutarse una sola vez no requiere el mismo nivel de calidad; mientras que un producto de software para ser explotado durante un largo período (10 años o más), necesita ser confiable, mantenible y flexible para disminuir los costos de mantenimiento y perfeccionamiento durante el tiempo de explotación.

 

La calidad del software puede medirse después de elaborado el producto. Pero esto puede resultar muy costoso si se detectan problemas deriva dos de imperfecciones en el diseño, por lo que es imprescindible tener en cuenta tanto la obtención de la calidad como su control durante todas las etapas del ciclo de vida del software. Concordancia con los requisitos 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 desarrollado profesionalmente.

El conjunto de características de una entidad que le confieren su aptitud para satisfacer las necesidades expresadas y las implícitas.’‘

 

 

 

 

4.2 Como obtener Calidad de Software metodos, metodologias, estandares

 

Los requisitos del software son la base de las medidas de calidad. La falta de concordancia con los requisitos es una falta de calidad.

Los estándares o metodologías definen un conjunto de criterios de desarrollo que guían la forma en que se aplica la ingeniería del software. Si no se sigue ninguna metodología siempre habrá falta de calidad.

Existen algunos requisitos implícitos o expectativas que a menudo no se mencionan, o se mencionan de forma incompleta (por ejemplo el deseo de un buen mantenimiento) que también pueden implicar una falta de calidad.

La política establecida debe estar sustentada sobre tres principios básicos: tecnológico, administrativo y ergonómico.

El principio tecnológico define las técnicas a utilizar en el proceso de desarrollo del software.

 

La obtención de un software con calidad implica la utilización de metodologías o procedimientos estándares para el análisis, diseño, programación y prueba del software que permitan uniformar la filosofía de trabajo, en aras de lograr una mayor confiabilidad, mantenibilidad y facilidad de prueba, a la vez que eleven la productividad, tanto para la labor de desarrollo como para el control de la calidad del software.

 

 

 

 

 

 

 

 

 

 

 

 

 

4.3 COMO CONTROLAR LA CALIDAD DEL SOFTWARE

Para controlar la calidad del software es necesario, ante todo, definir los parámetros, indicadores o criterios de medición, ya que, como bien plantea Tom De Marco, “usted no puede controlar lo que no se puede medir”. Las cualidades para medir la calidad del software son definidas por innumerables autores, los cuales las denominan y agrupan de formas diferentes. Por ejemplo, John Wiley define métricas de calidad y criterios, donde cada métrica se obtiene a partir de combinaciones de los diferentes criterios. La Metodología para la evaluación de la calidad de los medios de programas de la CIC, de Rusia, define indicadores de calidad estructurados en cuatro niveles jerárquicos: factor, criterio, métrica, elemento de evaluación, donde cada nivel inferior contiene los indicadores que conforman el nivel precedente. Otros autores identifican la calidad con el nivel de complejidad del software y definen dos categorías de métricas: de complejidad de programa o código, y de complejidad de sistema o estructura. Todos los autores coinciden en que el software posee determinados índices medibles que son las bases para la calidad, el control y el perfeccionamiento de la productividad. Una vez seleccionados los índices de calidad, se debe establecer el proceso de control, que requiere los siguientes pasos:

• Definir el software que va a ser controlado: clasificación por tipo, esfera de aplicación, complejidad, etc., de acuerdo con los estándares establecidos para el desarrollo del software.

• Seleccionar una medida que pueda ser aplicada al objeto de control. Para cada clase de software es necesario definir los indicadores y sus magnitudes.

• Crear o determinar los métodos de valoración de los indicadores: métodos manuales como cuestionarios o encuestas estándares para la medición de criterios periciales y herramientas automatizadas para medir los criterios de cálculo.

• Definir las regulaciones organizativas para realizar el control: quiénes participan en el control de la calidad, cuándo se realiza, qué documentos deben ser revisados y elaborados, etc.

A partir del análisis de todo lo anterior, nuestro Centro se encuentra enfrascado en un proyecto para el Aseguramiento de la Calidad del Software (ACS), válido para cualquier entidad que se dedique a la investigación, producción y comercialización del software, el cual incluye la elaboración de un Sistema de Indicadores de la Calidad del Software, la confección de una Metodología para el Aseguramiento de la Calidad del Software y el desarrollo de herramientas manuales y automatizadas de apoyo para la aplicación de las técnicas y procedimientos del ACS, de forma tal que se conforme un Sistema de Aseguramiento de la Calidad del Software

4.4 COSTO DE LA CALIDAD DEL SOFTWARE

Los costos de la calidad son aquellos en que incurre el proyecto para mejorar los entregables prometidos. Estos costos pueden ser de dos tipos: Costos de Prevención y Costos de Evaluación.

·         Costos de Prevención: están causados por las medidas tomadas en el proyecto para prevenir defectos o problemas en los entregables, para evitar la aparición de errores. En un proyecto de software esto sería por ejemplo implementar una metodología de desarrollo consistente. En una obra en construcción esto sería por ejemplo cumplir con los estándares de tendido de líneas eléctricas para prevenir problemas posteriores. 

·         Costos de Evaluación: están causados por las medidas tomadas para evaluar los entregables una vez producidos, y corregirlos si es necesario. En un proyecto de software esto sería por ejemplo dedicar recursos a las pruebas de integración del sistema una vez desarrollado. En una obra en construcción esto sería por ejemplo realizar inspecciones periódicas de la estructura.

Como ejemplo, existen varias actividades típicas en un proyecto relacionadas la Costo de la Calidad:

·         Capacitación (este es un Costo de Prevención): capacitación en la construcción o entrega del producto o servicio. Sirve para insertar el proceso de administración de calidad dentro del proceso de elaboración. Sirve para implementar la calidad en términos técnicos, específicos a los entregables.

·        
Mantenimiento (Costo de Prevención):
 definición de políticas de mantenimiento posteriores a la finalización del proyecto. Sirve para conservar el buen desempeño de los entregables una vez finalizado el proyecto.

·         Pruebas (Costo de Evaluación): especificación y ejecución de pruebas para verificar el cumplimiento de los requerimientos por parte de los entregables. Sirve para validar el funcionamiento normal de los entregables antes de que se usen en producción.

·         Auditorías (Costo de Evaluación): desarrollo de auditorías que inspeccionen el proceso de construcción de los entregables. Sirven para no cometer el mismo error dos veces.

 

 

 

 

 

 

 

 

4.5 NOMENCLATURA Y CERTIFICACION ISO9001 2000

 

La nomenclatura de la norma de calidad en caso especifico de la ISO 9000: 2000 es la siguiente:

1 Parte ISO

Esta sección de la nomenclatura indica la norma de la que se trata, en este caso es la norma ISO, la cual significa para la traducción en español como Organización Internacional de estándares, en esta sección se indica el tipo de norma, como ejemplo otra nomenclatura puede ser la QS la cual es la usada en las empresas de giro automotriz, etc.

2 Parte 9000

Esta sección indica el tipo de norma de la que se esta hablando en este caso la 9000 es el vocabulario , términos y definiciones solamente, la 9001 son los requisitos, mucha gente por no conocer esta diferencia ,hace referencia a que “esta certificada por ISO 9000″ esto es un error la certificación se realiza mediante el cumplimiento de requisitos, entonces la ISO 9000 es un apoyo de todo el vocabulario que se incluye en la ISO 9001

3 Parte 2000

Esta sección es para indicar desde cuando es vigente la norma , en este caso la ultima vigencia de la ISO 9001 es desde el año 2000

El interés de este capitulo es exclusivo para que todos sepamos cual es la diferencia entre las nomenclaturas y su correcta definición y término

 

 

 

 

 

 

 

 

4.6 LA NORMA ISO IEC 9126

 

ISO /ICE 9126

“La usabilidad se refiere a la capacidad de un software de ser comprendido, aprendido, usado y ser atractivo para el usuario, en condiciones específicas de uso”

Esta definición hace énfasis en los atributos internos y externos del producto, los cuales contribuyen a su usabilidad, funcionalidad y eficiencia. La usabilidad depende no sólo del producto sino también del usuario. Por ello un producto no es en ningún caso intrínsecamente usable, sólo tendrá la capacidad de ser usado en un contexto particular y por usuarios particulares. La usabilidad no puede ser valorada estudiando un producto de manera aislada (Bevan, 1994).

ISO/IEC 9241∞:

“Usabilidad es la efectividad, eficiencia y satisfacción con la que un producto permite alcanzar objetivos specíficos a usuarios específicos en un contexto de uso específico”

Es una definición centrada en el concepto de calidad en el uso, es decir, se refiere a cómo el usuario realiza tareas específicas en escenarios específicos con efectividad.

Medida de las subcaracterísticas Capacidad de Análisis y Capacidad de Cambio mediante la norma ISO/IEC 9126

1. INTRODUCCIÓN

La norma ISO/IEC 9126 está enfocada a la calidad de Producto y consta de las siguientes partes:

Parte 1: Modelo de Calidad

Parte 2: Métricas externas

Parte 3: Métricas internas

Parte 4: Calidad en el uso de métricas

 

 

4.7 ANALISIS FACTORES DETERMINAN CALIDAD SOFTWARE

 

Factores que determinan la calidad del software

Se pueden clasificar en dos grandes grupos (Pressman):

ü  Factores que pueden ser medidos directamente

ü  Factores que solo pueden ser medidos indirectamente

Se centran en tres aspectos importantes de un producto software (McCall):

ü  Características operativas

ü  Capacidad de soportar los cambios

ü  Adaptabilidad a nuevos entornos

ü  Características operativas

ü  Corrección. ¿Hace lo que quiero?

ü  Fiabilidad. ¿Lo hace de forma fiable todo el tiempo?

ü  Eficiencia. ¿Se ejecutará en mi hardware lo mejor que pueda?

ü  Seguridad (Integridad). ¿Es seguro?

ü  Facilidad de uso. ¿Está diseñado para ser usado?

ü  Capacidad de soportar los cambios

ü  Facilidad de mantenimiento. ¿Puedo corregirlo?

ü  Flexibilidad. ¿Puedo cambiarlo?

ü  Facilidad de prueba. ¿Puedo probarlo?

ü  Adaptabilidad a nuevos entornos.

4.8 ANALISIS PROCESO CICLO VIDA SOFTWARE

 

Cuando se construye un producto o se presta un servicio se siguen una serie de pasos para lograr cumplir las tareas necesarias en un cierto orden. Un proceso es una serie de pasos que involucran actividades, restricciones y recursos que producen una salida determinada (producto o servicio) utilizando para ello un conjunto de herramientas y técnicas.

 

• establecen las principales actividades del proceso.

• utilizan recursos (horas hombre, equipos, dinero, …).

• están sujetos a restricciones (calendario, presupuesto, …).

• genera productos intermedios y finales.

• puede constituirse como una cadena de subprocesos, cada uno con su propio modelo. • cada actividad tiene criterios de entradas y salidas; puede saberse cuando comienza y cuando termina una actividad.

• las actividades se organizan en secuencia; resulta claro el orden relativo de una actividad respecto a las demás.

• tiene un conjunto de principios orientadores que describen las metas de cada actividad.

• las restricciones pueden aplicarse a una actividad, recurso o producto.

Un proceso es más que un procedimiento. Un procedimiento es una manera estructurada de combinar herramientas y técnicas para generar un producto. Un proceso es un conjunto de procedimientos organizados de tal modo que los productos construidos satisfagan un conjunto de metas o estándares.

 

 

 

 

 

 

 

 

4.9 FUNCIONES EVALUACION DEL SOFTWARE

 

Función de Evaluación

Las primeras propuestas de función de evaluación estaban orientadas a tener una evaluación estática de la posición basada fundamentalmente en el concepto de material. Rápidamente se captó que esta evaluación no era suficiente, considerando que en el ajedrez existen factores estructurales los cuales afectarán a largo plazo el curso de la partida, por lo cual es muy probable que el programa no encuentre las consecuencias de esta situación en su búsqueda en profundidad. Estos aspectos, denominados “Posicionales” debieron incluirse en la función de evaluación.

Los primeros programas incluyeron algunos parámetros posicionales básicos, los cuales tenían un peso importante en la evaluación de la posición pero no igualable al peso que poseía el factor de material. El problema entonces de dar un adecuado “peso” a cada parámetro de la función de evaluación, y en qué momento de la partida darlo a uno u otro parámetro constituía un problema denominado carencia de “conocimiento ajedrecístico” cuya solución estaba en captar las impresiones de los jugadores humanos “expertos” y asimilarlas en el programa.

La inclusión de un mayor “conocimiento ajedrecístico” en los programas fue logrado mediante el trabajo conjunto entre programadores y maestros de ajedrez. Desafortunadamente, costó bastante el poder combinar de manera eficiente una idea de función de evaluación lo más completa posible con la mayor cantidad de parámetros de medición, pero a la vez muy rápida en su capacidad de cálculo.

Nuevamente acá los avances en hardware permitieron crear funciones de evaluación más poderosas y cuya utilización no significaba un alto costo de CPU. El problema entonces se redujo a cómo dar pesos adecuados a cada parámetro de la función con tal de que la combinación de éstos entregue una evaluación al menos similar a la que concluiría un maestro de ajedrez.

A este respecto resulta destacable el trabajo realizado por Hsu,Campbell y Anantharaman [31], quienes testearon su programa Deep Blue? con cerca de 900 posiciones particulares de partidas de Grandes Maestros. Durante el análisis por parte de la máquina de estas posiciones, los programadores iban ajustando manualmente los pesos de cada parámetro de la función de evaluación con tal de que el programa encontrara el movimiento seleccionado. Este ajuste de “pesos” resultó ser un notorio avance en la performance de la función de evaluación del programa. Respecto de esto una cita de Anantharaman en el ICCA Journal describiendo esta metodología :

“La función de evaluación del software de Deep Thought es ajustada contra una base de datos de partidas de maestros de ajedrez. La diferencia de evaluación entre el movimiento elegido por el programa y el maestro es minimizada. La performance del programa de ajedrez con la función de evaluación ajustada fue medida en forma experimental. El programa jugó varios matchs de 500 partidas con diferentes ajustes contra un programa fijo. Los resultados mostraron que un 98% de la performance de la función de evaluación puede ser mejorada en aproximadamente una semana ajustándola a partir de la información de partidas de la base de datos”.

 

IsoTec
¡¡ Interaccion Social !!!
¡¡¡ Osos Tec !!
 
Hoy habia 8 visitantes¡Aqui en esta página!
Este sitio web fue creado de forma gratuita con PaginaWebGratis.es. ¿Quieres también tu sitio web propio?
Registrarse gratis