Você está na página 1de 13

UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO

FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS CARRERA


DE INGENIERÍA EN COMPUTACIÓN E INFORMÁTICA

ADMINISTRACIÓN DE LA CALIDAD DEL


SOFTWARE

INTEGRANTES

ALVARADO TIMANÁ, LEO


SERREPE GUEVARA, JAVIER

DOCENTE

Ing. FUENTES ADRIANZÉN, DENNY


INDICE

INTRODUCCIÓN .................................................................................................................................. 3
OBJETIVOS........................................................................................................................................... 4
CALIDAD DEL SOFTWARE ................................................................................................................... 4
ASEGURAMIENTO DE LA CALIDAD ..................................................................................................... 4
PLANEACIÓN DE LA CALIDAD ............................................................................................................. 6
CONTROL DE CALIDAD ........................................................................................................................ 7
NORMAS DE CALIDAD ISO ................................................................................................................ 10
FACTORES DE CALIDAD SEGÚN MCCALL .......................................................................................... 11
CONCLUSIONES ................................................................................................................................. 12
BIBLIOGRAFIAS ................................................................................................................................. 13
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

INTRODUCCIÓN

Lograr un alto nivel de calidad de un producto o servicio es el objetivo de muchas


organizaciones. Ya no se acepta entregar productos de calidad pobre y luego
arreglar los problemas y deficiencias después de la entrega al cliente.

Al respecto el software tiene las mismas características que cualquier otro producto
manufacturado como los automóviles, los televisores o las computadoras. EL
enfoque de la ingeniería de software se dirige hacia un solo objetivo: producir
software de alta calidad; Sin embargo, la calidad del software es un concepto
complejo que no se puede definir de una forma simple.

En la administración de la calidad se abarca un amplio campo de tareas y métodos


que incluyen la comunicación, el análisis de requisitos, el modelado del diseño, la
construcción del software, la realización de pruebas de soporte.

3
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

ADMINISTRACIÓN DE LA CALIDAD DEL SOFTWARE

OBJETIVOS
 Incrementar la productividad y satisfacción al trabajo de los profesionales afines al campo
de la computación.
 Mejorar la calidad del producto del software.
 Asegurar un nivel de confianza que el software cumplirá con los requerimientos técnicos
funcionales
 Realizar una planeación eficaz de los sistemas.
 Validar y controlar formalmente la calidad del trabajo realizado.

CALIDAD DEL SOFTWARE


Son características propias del software, aquellas que tú quieres controlar y asegurar. El software
es un producto inmaterial que no se fabrica, tampoco se degrada físicamente, pero sí se desarrolla.
El software puede tener errores e incidencias, pero no son similares a las de cualquier equipo de
carácter físico.

En sí, la calidad del software se define como la totalidad de características de un producto, proceso
o servicio que cuenta con la habilidad de satisfacer necesidades explícitas o implícitas

La calidad del software se encuentra casi a la par de la calidad tradicional, ligeramente detrás,
debido a que la calidad tradicional tiene varias décadas de historia, mientras que la calidad de
software tiene entre 50 y 30 años de haber surgido. El software necesita ser actualizado.

ASEGURAMIENTO DE LA CALIDAD
Ante todo, se debe conocer:
 Aseguramiento de la calidad: "Conjunto de acciones planificadas y sistemáticas necesarias
para proporcionar la confianza adecuada de que un producto o servicio satisfará los
requerimientos dados sobre calidad".
 Aseguramiento de la calidad de software: Conjunto de actividades planificadas y
sistemáticas necesarias para aportar la confianza en que el producto (software) satisfará los
requisitos dados de calidad.

El aseguramiento de calidad del software se diseña para cada aplicación antes de comenzar a
desarrollarla. Hay quienes prefieren decir garantía de calidad en vez de aseguramiento.
La garantía, puede confundir con garantía de productos, mientras que el aseguramiento pretende
dar confianza en que el producto tiene calidad.
El aseguramiento de calidad del software está presente en:
 Métodos y herramientas de análisis, diseño, programación y prueba.
 Inspecciones técnicas formales en todos los pasos del proceso de desarrollo del software.
 Estrategias de prueba multiescalar.
 Control de la documentación del software y de los cambios realizados.

4
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software
 Procedimientos para ajustarse a los estándares (y dejar claro cuando se está fuera de ellos).
 Mecanismos de medida (métricas).
 Registro de auditorias y realización de informes.

Las actividades para el aseguramiento de calidad del software se detallan en:


 Métricas de software para el control del proyecto.
 Verificación y validación del software a lo largo del ciclo de vida (Incluye las pruebas y los
procesos de revisión e inspección).
 La gestión de la configuración del software.

Algunos métodos del aseguramiento:


 Revisiones técnicas y de gestión (su objetivo es la evaluación).
 Inspección (su objetivo es la verificación).
 Pruebas (su objetivo es la validación).
 Auditorias (su objetivo es la confirmación del cumplimiento).

Existen dos tipos de estándares que se establecen como parte del proceso de aseguramiento de la
calidad:

1. Estándares del producto: Éstos son estándares que aplican al producto de software a
desarrollar. Incluyen estándares de documentos, como la estructura del documento de
requerimientos a producir, estándares de documentación, como encabezados, estándar de
comentarios para una definición de clases de objetos, y estándares de codificación, que
definen cómo utilizar un lenguaje de programación.

2. Estándares del proceso: Éstos son estándares que definen los procesos a seguir durante el
desarrollo del software. Incluyen definiciones de los procesos de especificación, de diseño
y de validación y una descripción de los documentos a generar en el transcurso de estos
procesos.

Existen varias razones de por qué los estándares de software son importantes:

- Proveen un conjunto de las mejores prácticas o al menos de las más apropiadas. A menudo,
este conocimiento sólo se adquiere después de seguir un proceso de prueba y error. Tenerlo
constituido en un estándar evita la repetición de errores anteriores. Los estándares
capturan el conocimiento de valor para la organización.

- Proveen un marco de trabajo alrededor del cual se implementa el proceso de aseguramiento


de la calidad. Puesto que los estándares capturan las mejores prácticas, el control de la
calidad sencillamente asegura que los estándares se siguen adecuadamente.
- Ayudan a la continuidad cuando una persona lleva a cabo el trabajo otra lo Continúa. Los
estándares aseguran que todos los ingenieros dentro de una organización adopten las
mismas prácticas. En consecuencia, se reduce el esfuerzo de aprendizaje cuando se
comienza un nuevo trabajo.

5
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

PLANEACIÓN DE LA CALIDAD
El plan de calidad selecciona aquellos estándares organizacionales apropiados para un producto en
particular y un proceso de desarrollo. Si el proyecto utiliza nuevos métodos y herramientas, se
tienen que definir nuevos estándares. Humphrey (1989), en su libro clásico sobre administración del
software, sugiere una estructura para un plan de calidad. Esta estructura comprende:

1. Introducción del producto: Contiene la descripción del producto, el mercado al que se dirige
y las expectativas de calidad del producto.
2. Planes del producto: Contiene las fechas de terminación del producto y las
responsabilidades importantes junto con los planes para distribución y servicio.
3. Descripciones del proceso: Contiene los procesos de desarrollo y de servicio a utilizar para
el desarrollo y administración del producto.
4. Metas de calidad: Contiene las metas y planes de calidad para el producto, incluye una
identificación y justificación de los atributos de calidad importantes del producto.
5. Riesgos y administración de riesgos: Contiene los riesgos clave que podrían afectar la
calidad del producto y las acciones para abordar estos riesgos.

Existe un amplio rango de atributos de calidad potenciales del software a considerar durante el
proceso de planeación de la calidad. En general, no es posible optimizar todos estos atributos para
un sistema, por lo que una parte importante de la planeación de la calidad es seleccionar los
atributos de calidad importantes y planear cómo alcanzarlos. Entre ellos tenemos

Seguridad Complejidad Modularidad


Comprensión Fiabilidad Eficiencia
Portabilidad Adaptabilidad Robustez
Protección Reutilización
Usabilidad Flexibilidad

El plan de calidad define los atributos de calidad más importantes para el producto a desarrollar.
Puede ser que la eficiencia sea primordial por lo que será necesario sacrificar otros factores para
alcanzarla. Si esto se establece en el plan, los ingenieros que trabajan en el desarrollo deben
cooperar para lograrlo.

6
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

CONTROL DE CALIDAD
“Son las técnicas y actividades de carácter operativo, utilizadas para satisfacer los requisitos
relativos a la calidad, centradas en dos objetivos fundamentales:

 Mantener bajo control un proceso


 Eliminar las causas de los defectos en las diferentes fases del ciclo de vida” [ISO][AENOR]

En general son las actividades para evaluar la calidad de los productos desarrollados.

ACTIVIDADES DE CONTROL DE CALIDAD DEL SOFTWARE


El objetivo de las actividades de Control de Calidad es comprobar si un producto posee o no posee
una determinada característica de calidad en el grado requerido. Cuando un producto no posee una
determinada característica de calidad se dice que tiene un DEFECTO. Por lo tanto, se puede decir
también que el objetivo del Control de Calidad es identificar defectos en el producto y corregirlos.

Se pueden clasificar las actividades de control de calidad en dos categorías:

 Controles estáticos.
o Controles estáticos manuales.
 Controles estáticos manuales Informales.
 Controles estáticos manuales disciplinados.
o Controles estáticos Automáticos.
 Controles dinámicos.
o Métodos de caja negra.
o Métodos de caja blanca.
 Métricas de cobertura.
 Métricas de complejidad.

CONTROLES ESTÁTICOS:
Controles Estáticos Manuales.
 Controles Estáticos Manuales Informales

Estas actividades las realizan los propios autores de los objetos a comprobar, o personas de
su misma categoría y ocupación.

- Comprobación de escritorio (desk checking): Consiste en examinar a mano e


individualmente el objeto que se acaba de desarrollar. Es el método más tradicional
para analizar un programa. Se debe aplicar a los requisitos, especificaciones de
diseño y código según se van desarrollando. Debe ser cuidadoso y concienzudo para
que sea efectivo. Es más efectivo si se hace intercambiando el objeto a examinar
con otro compañero.
- Revisión por pares o iguales (peer review): Consiste en la revisión del código de un
programador por otros programadores (sus pares). Se puede poner en práctica
creando un panel que se encarga de revisar periódicamente muestras de código.

7
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

 Controles estáticos manuales disciplinados

Las revisiones y auditorías son la evolución natural de la Comprobación de Escritorio, pero


a diferencia de aquélla pasan a ser técnicas de grupo. Su misión principal es conseguir que
la responsabilidad del control de calidad no recaiga sólo sobre el propio desarrollador.

Auditorías:

Consiste en realizar una investigación para determinar:

- El grado de cumplimiento y la adecuación de los procedimientos, instrucciones,


especificaciones, códigos, estándares u otros requisitos de tipo contractual
establecidos y aplicables.
- La efectividad y adecuación de la implementación realizada.

Revisiones:

Se puede definir una revisión como una reunión formal en la que se presenta el estado
actual de los resultados de un proyecto a un usuario, cliente u otro tipo de persona
interesada, y se realiza un análisis estructurado de los mismos. Uno de los objetivos
fundamentales de las revisiones técnicas es ofrecer a los gestores información fiable acerca
de los aspectos técnicos del proceso de desarrollo de software, de la misma forma que les
llega información fiable acerca de los costes y la programación del trabajo, para que con
esta información puedan tomar decisiones adecuadas para dirigir con éxito el proyecto.

Controles Estáticos Automáticos


Dentro de esta categoría tenemos el análisis estático automático y la verificación formal de
programas.

 Análisis Estático Automático

El código lo realizan los compiladores, que pueden detectar desde expresiones


sintácticamente incorrectas hasta incompatibilidades de tipo y otros errores de tipo
semántico.

Otras técnicas de análisis estático automático de programas son:

- El análisis de flujo se basa en una representación gráfica. Se usan grafos en los que
los nodos representan sentencias o segmentos de programa y los arcos posibles
transiciones de control desde un segmento a otro. Estos grafos se pueden utilizar
para identificar caminos, para analizar el comportamiento del programa, para situar
puntos de ruptura y para otras técnicas de análisis estático.
- La ejecución simbólica consiste en la ejecución simbólica de ciertos caminos dentro
del programa, durante la cual se verifican ciertas expresiones simbólicas con
respecto a ciertas condiciones y afirmaciones preestablecidas. Dichas expresiones
simbólicas están compuestas por nombres de variables, en lugar de valores

8
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software
concretos para dichas variables. Todas las manipulaciones sobre dichas variables
durante la ejecución, y todas las condiciones, se manejan de forma simbólica. Todos
los puntos de decisión quedan indeterminados puesto que no se conocen los
valores de las variables.

 La Verificación Formal

Consiste en demostrar matemáticamente la corrección de un programa con respecto a sus


especificaciones. Para ello, se considera el programa como un objeto formal, es decir, como
una cadena de un lenguaje formal, con una sintaxis y una semántica formal. Es también
necesario que la especificación se haya escrito en algún lenguaje formal. Por eso no siempre
es posible realizar este tipo de verificación. Por lo general, esta técnica sólo se utiliza para
sistemas críticos, debido al coste que conlleva.

CONTROLES DINÁMICOS
Se llaman controles dinámicos a aquellos que requieren la ejecución del objeto que se está
probando o de un modelo del mismo.

Método de Caja Negra


El objeto que se desea probar se ve como una caja negra. Esto quiere decir que la elección de los
casos de prueba no se va a basar en el conocimiento que se tenga acerca de la estructura del objeto,
sino en el conocimiento acerca de la funcionalidad deseada (descripción funcional). A la prueba de
caja negra también se le llama prueba funcional o prueba orientada al diseño.

Los métodos de selección del conjunto de casos de prueba más usuales son:

 Método de clases de equivalencia: Consiste en dividir las posibles entradas al sistema en


clases de equivalencia, de tal forma que todos los miembros de una misma clase de
equivalencia prueben las mismas propiedades en el sistema, por lo que sólo va a ser
necesario seleccionar un elemento de cada clase de equivalencia.
 Análisis de valores frontera o valores límite: Consiste en seleccionar como casos de prueba
aquellos valores de entrada que caen en la frontera de las clases de equivalencia (justo a un
lado, justo al otro y justo en la frontera).
 Grafos causa/efecto y tablas de decisión: Consiste en crear un grafo causa/efecto a partir
de las especificaciones, y seleccionar suficientes casos de prueba como para asegurar la
cobertura del grafo. Se llama causas a las características de los datos de entrada y efectos a
las clases de salidas que puede proporcionar el programa. A partir del grafo causa/efecto se
construye una tabla de decisión que refleje las dependencias entre causas y efectos. Lo que
se hace entonces es reducir la tabla de decisión y seleccionar sólo un caso de prueba para
todas las causas que producen el mismo efecto, o para cada columna de la tabla de decisión.
 Adivinación de errores: Consiste en tratar de imaginar cuáles son los errores que se pueden
haber cometido con mayor probabilidad, y generar casos de prueba para comprobar dichos
errores.

9
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

Métodos de Caja Blanca o Caja Transparente


El objeto que se desea probar se ve como una caja blanca. Esto quiere decir que la elección de los
casos de prueba se va a basar en el conocimiento que se tenga acerca de la estructura del objeto
(diseño detallado, diagramas de flujo de dato y de control, código fuente). A la prueba de caja blanca
también se le llama prueba estructural.

 Los métodos basados en métricas de cobertura

Todo programa se puede representar mediante un grafo de flujo de control, donde cada
nodo es una sentencia o una secuencia de sentencias. Los arcos dirigidos en el grafo
representan el flujo de control. Para cada conjunto de datos de entrada el programa se
ejecutará a través de un camino concreto dentro de este grafo. Cuando el programa incluye
estructuras iterativas, el número de posibles caminos en el grafo puede ser infinito.

 Los métodos basados en métricas de complejidad

Las más utilizadas en la generación de casos de prueba son las de MacCabe:

- Complejidad ciclomática (arcos - nodos + 2 * número de componentes conexos).


- Complejidad esencial (complejidad ciclomática - número de subgrafos propios de
entrada y salida única).
- Complejidad real (número de caminos ejecutados)

NORMAS DE CALIDAD ISO


¿Qué son las normas ISO?
Una norma ISO es un documento de aplicación voluntaria por parte de una empresa que contiene
especificaciones técnicas basadas en los resultados de la experiencia y el desarrollo tecnológico.
Estas normas garantizan que se cumplen unos niveles de calidad y seguridad que se ajustan con los
requisitos de los clientes, y que permiten a cualquier empresa posicionarse mejor en el mercado,
constituyendo a su vez una importante fuente de información para los profesionales de cualquier
actividad económica.

Casi todos los sellos que certifican a una empresa por ISO van seguidos de un número. Las siglas ISO
corresponden a International Organization of Standardization (Organización Internacional de
Normalización), y el número indica el tipo de producto o servicio cuya calidad certifica. En ocasiones
las siglas ISO van precedidas de las letras UNE EN, lo que significa Una Norma Española.

10
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software
¿Para qué sirve una norma ISO?

Todas las normas ISO sirven para mejorar los resultados de una empresa, posicionarse mejor en el
mercado, dar un mejor servicio a los clientes, diferenciarse de la competencia y demostrar
innovación y liderazgo. Acreditar que se cumplen ciertos sistemas de gestión, calidad o seguridad es
una opción voluntaria de cada empresa. Esta certificación es internacional, ya que va más allá de
cualquier ley nacional y el organismo encargado de redactar las normas lo hace a nivel mundial, a
pesar de que se compone de organizaciones nacionales.

ISO10005 Planes de calidad

ISO10006 La calidad de administración de proyectos

ISO10007 Administración de la configuración


ISO19011 Directrices para la auditoria de los sistemas de gestión de calidad y/o ambiental

ISO10012 Requisitos para equipos de medición (Aseguramiento metrológico)

ISO10013 Elaboración de manuales de calidad

ISO10014 Efectos económicos de la administración total de la calidad

ISO10015 Gestión de la calidad. Directrices para la formación

ISO 9000:2005 “Sistema de gestión de la calidad. Principios y vocabulario”

ISO 9001:2008 “Sistema de gestión de calidad. Requisitos”

ISO 9004:2009 “Enfoque de gestión de calidad”

FACTORES DE CALIDAD SEGÚN MCCALL


Este modelo es considerado por primera vez en 1977 por McCall. Destinado a ser utilizado durante
el proceso de desarrollo de sistema, demostró muy temprano como puente entre los usuarios y los
desarrolladores, concilia los puntos de la vista de los usuarios con la prioridad de los desarrolladores.

Con una perspectiva de visión basada en los criterios de la evaluación de la calidad.

Los factores desarrollados según el modelo McCall, se centra en tres aspectos importantes de unos
productos de software:

 Sus características operativas.


 Su capacidad para soportar los cambios.
 Su adaptabilidad a nuevos entornos

Lista de factores y características:

 Corrección: Mide el grado en que un programa satisface sus especificaciones y consigue los
objetivos del usuario.
 Fiabilidad: Mide el grado en que se puede esperar que un programa lleve a cabo sus
funciones esperada con la precisión requerida.

11
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software
 Eficiencia: Mide la cantidad de recursos de computadora y de código requerido por un
programa para que lleve a cabo las funciones especificadas.
 Integridad: Es el grado en que puede controlarse el acceso al software o a los datos por
personal no autorizado.
 Facilidad de Uso: Es el esfuerzo requerido para aprender un programa e interpretar la
información de entrada y de salida.
 Facilidad de Mantenimiento: Es el esfuerzo requerido para localizar y arreglar programas.
 Facilidad de Prueba: Es el esfuerzo requerido para probar un programa.
 Flexibilidad: Es el esfuerzo requerido para modificar un sistema operativo.
 Portabilidad: Es el esfuerzo requerido para transferir un software de un hardware o un
entorno de sistemas a otro.
 Reusabilidad: Es el grado en que un programa (o partes de un programa) se puede reutilizar
en otro.

CONCLUSIONES
 El éxito en la producción de software se obtiene logrando hacerlo con calidad y
demostrando el grado de ésta, calificando como buena. Esto sólo es posible con la
implantación de un Sistema para el Aseguramiento de la Calidad del Software directamente
relacionado con la política establecida para su elaboración y que esté en correspondencia
con la definición internacional ISO de calidad, ampliamente aceptada, y por los estándares
del grupo ISO 9000.

 La Calidad Software es uno de los pilares de la Ingeniería del Software. Aplicar técnicas de
gestión de calidad a los proyectos software ayuda para que estos se finalicen con éxito en
los plazos y con los requisitos solicitados por el cliente, siendo imprescindible en la mayoría
de los proyectos.

 La medida de los atributos del software puede usarse para predecir o medir indirectamente
la calidad del software.

 Si se desea un software de alta calidad, hay que asegurarse de que cada una de sus partes
tenga alta calidad.

12
INGENIERIA DEL SOFTWARE
Administración de la Calidad del Software

BIBLIOGRAFIAS

 https://es.wikipedia.org/wiki/Calidad_de_software#Medición_del_software

 https://www.monografias.com/trabajos59/calidad-software/calidad-software2.shtml

 https://www.ecured.cu/Sistema_de_control_de_calidad_de_software#Objetivo_de_la_Cal
idad_en_los_Sistemas

 https://slideplayer.es/slide/119311/

 http://www.pcworldenespanol.com/2016/03/30/introduccion-al-aseguramiento-la-
calidad-del-software/

 https://www.formazion.com/noticias_formacion/cuales-son-las-normas-iso-mas-
importantes-org-5273.html

 https://prezi.com/elzdftsu6w4k/normas-iso-relacionadas-con-la-calidad/

 https://es.slideshare.net/clauddiaa/factores-de-calidad-segn-mc-call

 http://www.mailxmail.com/curso-sistema-gestion-calidad-iso-9001/que-es-sistema-
gestion-calidad

13

Você também pode gostar