FACULTAD DE INFORMATICA
UNIVERSIDAD COMPLUTENSE DE MADRID
INGENIERIA INFORMATICA
AUDITORIA INFORMATICA
Auditoria Informatica - Tema AI08 Auditoria producto software
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 4MCMP - PLGR
1 CHAOS MANIFESTO 2013 - I
Análisis periódico sobre resultados de proyectos de
desarrollo software y TI desde 1985
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 6MCMP - PLGR
1 CHAOS MANIFESTO 2013 - III
% Factores que influyen en el éxito de proyectos TI
50%
S
M
A
L
L
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 7MCMP - PLGR
Calidad el producto VS calidad del proceso software
Calidad
Proceso
Calidad
Proyec-
to
Calidad
Produc
-to
Calidad
Software
C A L I D A D D E L E Q U I P O
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 8MCMP - PLGR
1 Evaluar la calidad el producto
¿Quién está interesado en evaluar al calidad?
Factorías y empresas desarrolladoras de software:
Confiar en la calidad de sus productos
Asegurar a sus clientes que sus productos son de
calidad
Organismos o empresas que adquieren productos
software
Organismo o empresas que externalizan total o
parcialmente su proceso de desarrollo software
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 9MCMP - PLGR
1 Evaluar la calidad el producto
¿Por qué están interesados en evaluar la calidad?
Diferencia con los competidores: reducción fallos
Acuerdos de nivel de servicio basados en
parámetros de calidad del productos
Detectar y corregir defectos antes de la entrega
Evaluar el rendimiento del producto software
Evaluar la seguridad de los productos software en las
dimensiones CID-AT
Compatibilidad del producto con el resto de sistemas
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 10MCMP - PLGR
1 Evaluar la calidad el producto
Beneficios factoría de desarrollo software
• Controlar la calidad
• Mejorar características
• Asegurar nivel de
calidad a los clientes
• Diferenciarse con la
competencia
• Posicionar el producto
en el mercado
• Aumentar ventas
Empresas
que
desarrollan
software
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 11MCMP - PLGR
1 Evaluar la calidad el producto
Beneficios para el cliente de software
• Conocer la calidad
• Comparar alternativas
• Acuerdos nivel servicio
• Independencia del
proveedor
• Minimizar fallos
• Reducir costes
Organiza-
ciones
que
adquieren
software
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 12MCMP - PLGR
1 Deuda técnica
Consecuencias y costes en que incurre una empresa
por desarrollar software con debilidades
Las debilidades en el corto plazo generan un pago de
intereses en el largo plazo
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 13MCMP - PLGR
1 Deuda técnica
Deuda no intencionada
Código de baja calidad por un programador junior
Adquisición de una empresa con deuda
Deuda intencionada
Asumir un equipo de baja calidad
Asumir un proceso en general de baja calidad
Subprocesos de desarrollo de baja calidad
Presión de fechas «Time to market»
Pruebas y testing pobres
INCOMPETENCIA PROFESIONAL
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 14MCMP - PLGR
1 Deuda técnica
Es algo que resta valor al producto software y que,
además, no se ve ….
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 16MCMP - PLGR
2 Familia 25000 - Antecedentes
ISO/IEC 9126 Modelo de calidad producto software
Características: funcionalidad, fiabilidad, usabilidad,
eficiencia, mantenibilidad, portabilidad
Métricas internas: no dependen de la ejecución del
software (medidas estáticas)
Métricas externas: aplicables al software en
ejecución
Métricas en uso: aplicables a la utilización del
software por parte de los usuarios
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 20MCMP - PLGR
2 Familia 25000 – Antecedentes - ISO/IEC 9126
ISO/IEC 9126-2/3 Calidad en el uso
Calidad en
uso
Efectividad
Productividad
Seguridad
Satisfacción
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 21MCMP - PLGR
2 Familia 25000 – Antecedentes - ISO/IEC 9126
14598 marco de trabajo para evaluar la calidad de los
productos de software
ISO/IEC
14598-1
Proceso
evaluación
14598-3
14598-4
14598-5
Apoyo a la
evaluación
14598-2
14598-6
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 22MCMP - PLGR
2 Familia 25000 – Antecedentes - ISO/IEC 14598
ISO/IEC 14598 marco de trabajo para evaluar la
calidad de los productos de software
Especifi-
cación
• Descripción
del producto
• Característi-
cas a evaluar
Diseño
• Métodos de
evaluación
• Actividades
Ejecución
• Plan
• Componentes
• Herramientas
Conclusión
• Revisión
• Cierre
• Informe
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 23MCMP - PLGR
2 Familia 25000 – Antecedentes - ISO/IEC 9126 y 14598
Relación ISO/IEC 9126 y ISO/IEC 14598
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 26MCMP - PLGR
3 25010 Calidad del producto software
La calidad del producto software se puede
interpretar como el grado en que dicho producto
satisface los requisitos de sus usuarios aportando
de esta manera un valor
Modelo de
calidad
Característica 1
………………… X
Característica N
Subcaracterística 1
……………………… A
Subcaracterística M………………… Y
Característica 8
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 29MCMP - PLGR
3 25010 Calidad del producto software - Mantenibilidad
7 Mantenibilidad: capacidad del producto software
para ser modificado efectiva y eficientemente, debido
a necesidades evolutivas, correctivas o perfectivas
7.1 Modularidad: Capacidad de un sistema o
programa de ordenador (compuesto de componentes
discretos) que permite que un cambio en un
componente tenga un impacto mínimo en los demás
7.2 Reusabilidad: Capacidad de un activo que
permite que sea utilizado en más de un sistema
software o en la construcción de otros activos.
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 30MCMP - PLGR
3 25010 Calidad del producto software - Mantenibilidad
7.4 Capacidad para ser analizado: Facilidad para
evaluar el impacto de un cambio sobre el resto del
software, diagnosticar las deficiencias o causas de
fallos en el software, o identificar las partes a modificar
7.5 Capacidad para ser modificado: Capacidad del
producto que permite que sea modificado de forma
efectiva y eficiente sin introducir defectos o degradar
el desempeño
7.6 Capacidad para ser probado: Facilidad con la
que se pueden establecer criterios de prueba para un
sistema o componente y con la que se pueden llevar a
cabo las pruebas para determinar si se cumplen
dichos criterios
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 31MCMP - PLGR
3 25010 Calidad del producto software - Compatibilidad
3 Compatibilidad: Capacidad de dos o más sistemas
o componentes para intercambiar información y/o
llevar a cabo sus funciones requeridas cuando
comparten el mismo entorno hardware o software
3.1Coexistencia: Capacidad del producto para
coexistir con otro software independiente, en un
entorno común, compartiendo recursos comunes sin
detrimento
3.2 Interoperabilidad: Capacidad de dos o más
sistemas o componentes para intercambiar
información y utilizar la información intercambiada
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 33MCMP - PLGR
4 25040 Evaluación del producto software
1
• Establecer los requisitos de la evaluación
2
• Especificar la evaluación
3
• Diseñar la evaluación
4
• Ejecutar la evaluación
5
• Concluir la evaluación
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 34MCMP - PLGR
4 25040 Evaluación del producto software
1 Establecer los requisitos de la evaluación
Rigor de la evaluación
Identificar las partes del producto que se
deben evaluar
Requisitos de calidad del producto
Propósito de la evaluación
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 35MCMP - PLGR
4 25040 Evaluación del producto software
2 Especificar la evaluación
Definir los criterios de decisión de la
evaluación
Definir los criterios de decisión para las
métricas
Seleccionar los módulos de evaluación
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 36MCMP - PLGR
4 25040 Evaluación del producto software
3 Diseñar la evaluación
Revisión y actualización dl Plan de Evaluación
Presupuesto, los métodos de evaluación y
estándares adaptados, las herramientas de
evaluación
Planificar las actividades de la evaluación
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 37MCMP - PLGR
4 25040 Evaluación del producto software
4 Ejecutar la evaluación
Aplicar los criterios de decisión de la
evaluación
Aplicar los criterios de decisión para las
métricas
Realizar las mediciones
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 38MCMP - PLGR
4 25040 Evaluación del producto software
5 Concluir la evaluación
Tratar los datos de la evaluación
Revisar la calidad de la evaluación y obtener
feedback
Crear el informe de evaluación
Revisar los resultados de la evaluación
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 39MCMP - PLGR
4 25040 Evaluación del producto software
7 Mantenibilidad
7.4 Capacidad para ser analizado
7.4.1 Densidad de complejidad ciclomática
Número de caminos independientes que tiene
el código fuente
Cuanto más compleja sea la lógica de un
código, más difícil será de entender, mantener
y probar
Esfuerzo necesario para poder probar todos
sus caminos
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 40MCMP - PLGR
4 25040 Evaluación del producto software
7.4.1 Densidad de complejidad ciclomática
v(G) = e – n + 2,
donde e representa
el número de aristas
y n el número nodos
v(G) = 8 -7 + 2 = 3,
siendo e = 8; n = 7
v(G) = número de
regiones cerradas
en el grafo + 1
v(G) = 2+ 1 =3
2 regiones cerradas
en el grafo
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 41MCMP - PLGR
4 25040 Evaluación del producto software
7.4.1 Densidad de complejidad ciclomática
Thomas McCabe (1975), establece en sus trabajos
los siguientes valores de referencia:
<= 10, métodos sencillos, sin mucho riesgo
>10 y <= 20, métodos medianamente complejos, con
riesgo moderado
> 20 y <= 50, métodos complejos, con alto riesgo
> 50, métodos inestables, de altísimo riesgo
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 42MCMP - PLGR
4 25040 Evaluación del producto software
7 Mantenibilidad
7.4 Capacidad para ser analizado
7.4.2 Densidad de código repetido
«Relación entre la cantidad de código
repetido de un producto y su tamaño (sin
contar comentarios)«
7.4.3 Densidad de comentarios
«relación entre la cantidad de comentarios de
un producto y su tamaño (obviamente,
incluyendo comentarios)»
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 44MCMP - PLGR
6 Usabilidad
25010 Calidad del producto software
Característica 3-Usabilidad
Capacidad del producto software para ser:
entendido,
aprendido,
usado y
resultar atractivo para el usuario,
cuando se usa bajo condiciones determinadas
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 45MCMP - PLGR
6 Usabilidad
25010 Calidad del producto software 3 Usabilidad
3.1 Capacidad para reconocer su adecuación:
Capacidad del producto que permite al usuario
entender si el software es adecuado para sus
necesidades Fácil de entender y conforme
3.2 Capacidad de aprendizaje técnico: Capacidad
del producto que permite al usuario aprender su
aplicación Fácil aprender
3.3 Capacidad para ser usado: Capacidad del
producto que permite al usuario operarlo y controlarlo
con facilidad Fácil de ser usado
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 46MCMP - PLGR
6 Usabilidad
25010 Calidad del producto software 3 Usabilidad
3.4 Protección contra errores de usuario:
Capacidad del sistema para proteger a los usuarios de
hacer errores
3.5 Estética de la interfaz de usuario: Capacidad de
la interfaz de usuario de agradar y satisfacer la
interacción con el usuario Atractivo
3.6 Accesibilidad técnica: Capacidad del producto
que permite que sea utilizado por usuarios con
determinadas discapacidades
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 47MCMP - PLGR
6 Usabilidad
25010 Calidad del producto software 3 Usabilidad
3.3 Capacidad para ser usado: Fácil de ser usado
3.3 Fácil de
ser usado
Compatibi-
lidad
Gestión de
los datos
Controlabi-
lidad
3.3 Fácil de
ser usado
Capacidad de
adaptación
Consistencia
Gestión de
errores
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 48MCMP - PLGR
6 Usabilidad
25010 Calidad del producto software 3 Usabilidad
3.3 Capacidad para ser usado: Fácil de ser usado
3.3.1 Compatibilidad con otros productos software
3.3.1 Compatibilidad
3.3.1.1
Navegadores
3.3.1.2
S.O.
3.3.1.3
Velocidad
conexión
3.3.1.4
Resolución
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 50MCMP - PLGR
6 Accesibilidad
www.rae.es
accesibilidad.
1. f. Cualidad de accesible.
accesible.
(Del lat. accesibĭlis).
1. adj. Que tiene acceso.
2. adj. De fácil acceso o trato.
3. adj. De fácil comprensión, inteligible.
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 51MCMP - PLGR
6 Accesibilidad
Ley 11/2007 LAECSP - Art. 4.c
Principio de accesibilidad a la información y a los
servicios por medios electrónicos en los términos
establecidos por la normativa vigente en esta materia,
a través de sistemas que permitan obtenerlos de
manera segura y comprensible, garantizando
especialmente la accesibilidad universal y el diseño
para todos de los soportes, canales y entornos con
objeto de que todas las personas puedan ejercer
sus derechos en igualdad de condiciones,
incorporando las características necesarias para
garantizar la accesibilidad de aquellos colectivos
que lo requieran Sede electrónica Mº Hacienda
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 52MCMP - PLGR
6 Accesibilidad
UNE 139803:2012 – AENOR
Requisitos de accesibilidad para contenidos Web
Esta norma establece las características que han de
cumplir la información y otros contenidos disponibles
mediante tecnologías web en Internet, intranets y
cualquier tipo de redes informáticas, para que puedan
ser utilizados por la mayor parte de las personas,
incluyendo personas con discapacidad y personas de
edad avanzada, bien de forma autónoma o mediante
los productos de apoyo pertinente
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 53MCMP - PLGR
6 Accesibilidad
UNE 139803:2012 – AENOR
Requisitos de accesibilidad para contenidos en la Web
De acorde con la guía de accesibilidad WCAG 2.0
Pautas de Accesibilidad para el Contenido Web
(WCAG: Web Content Accessibility Guidelines) se han
publicado por la WAI (Web Accessibility Initiative) del
W3C (World Wide Web Consortium)
La UNE 139803:2004 estaba de acorde con las
WCAG 1.0
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 55MCMP - PLGR
6 Accesibilidad - UNE 139803:2012
UNE 139803:2012 – AENOR - Principios
1Perceptible: el contenido ha de poder ser percibido
por todos los usuarios (de forma visual, sonora, táctil,
etc.)
2 Operable: el contenido ha de ser manejable usando
los dispositivos de entrada de los usuarios (ratón,
teclado, etc.)
3 Comprensible: los usuarios han de ser capaces de
entender el contenido, su organización y su manejo
4 Robusto: el contenido ha de estar correctamente
estructurado para garantizar un adecuado
funcionamiento con las aplicaciones de usuario
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 57MCMP - PLGR
6 Accesibilidad - UNE 139803:2012
UNE 139803:2012 – AENOR
1
Principio
Percepti-
ble
1.1
Alterna-
tivas
textuales
1.1.1
Conteni
do no
textual
Técnicas
suficiente
G94
H37
H45
H2
Técnicas
recomen-
dables
H46
H27
C18
SL19
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 58MCMP - PLGR
6 Accesibilidad - UNE 139803:2012
UNE 139803:2012 – AENOR
Requisitos de conformidad
Nivel de conformidad: para lograr conformidad con
un determinado nivel (A, AA o AAA), hay que
satisfacer todos los criterios de conformidad de ese
nivel y de los niveles de menor exigencia
Páginas completas: la conformidad se aplica sólo a
páginas completas, con todo su contenido
Declaración de conformidad www.ucm.es/aviso-legal
AI08 AUDITORÍA PRODUCTO SOFTWARE
AI08 59MCMP - PLGR
6 Accesibilidad - UNE 139803:2012
UNE 139803:2012 – AENOR
Test de accesibilidad – TAWDIS – www.ucm.es