Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Semana 8 PDF
Semana 8 PDF
SEMANA 8
Calidad enfocada en el
desarrollo de software
Todos los derechos de autor son de la exclusiva propiedad de IACC o de los otorgantes de sus licencias. No está
permitido copiar, reproducir, reeditar, descargar, publicar, emitir, difundir, poner a disposición del público ni 1
ESTE
utilizarDOCUMENTO
los contenidos paraCONTIENE LAdeSEMANA
fines comerciales 8
ninguna clase.
2
ESTE DOCUMENTO CONTIENE LA SEMANA 8
ÍNDICE
CALIDAD ENFOCADA EN EL DESARROLLO DE SOFTWARE................................................................... 5
OBJETIVOS ESPECÍFICOS ........................................................................................................................... 5
INTRODUCCIÓN ...................................................................................................................................... 5
1. NORMAS DE LA FAMILIA ISO 9000...................................................................................................... 6
1.1. OBJETIVOS ................................................................................................................................. 7
1.2. ALCANCE.................................................................................................................................... 8
1.3. IMPORTANCIA ............................................................................................................................ 8
2. NORMA ISO/IEC 25010..................................................................................................................... 9
2.1. MODELO Y CARACTERÍSTICAS DE CALIDAD DEL PRODUCTO DE SOFTWARE .......................................... 9
2.1.1. FUNCIONALIDAD....................................................................................................................... 10
2.1.2. EFICIENCIA................................................................................................................................ 10
2.1.3. COMPATIBILIDAD ...................................................................................................................... 11
2.1.4. USABILIDAD.............................................................................................................................. 11
2.1.5. FIABILIDAD ............................................................................................................................... 12
2.1.6. SEGURIDAD .............................................................................................................................. 13
2.1.7. MANTENIBILIDAD...................................................................................................................... 13
2.1.8. PORTABILIDAD.......................................................................................................................... 14
COMENTARIO FINAL .............................................................................................................................. 15
REFERENCIAS........................................................................................................................................ 16
3
ESTE DOCUMENTO CONTIENE LA SEMANA 8
ÍNDICE DE FIGURAS
Figura 1: Modelo de calidad del producto de software - ISO/IEC 25010............................................. 9
ÍNDICE DE TABLAS
Tabla 1: Familia de normativas ISO 9000 ............................................................................................ 7
4
ESTE DOCUMENTO CONTIENE LA SEMANA 8
CALIDAD ENFOCADA EN EL DESARROLLO DE SOFTWARE
OBJETIVOS ESPECÍFICOS
Comprender la estructura de las normas de la familia ISO 9000 y su importancia en la
calidad de desarrollo de software.
Conocer y aplicar el modelo de calidad del producto de software de la ISO 25010.
INTRODUCCIÓN
La Organización Internacional de Normalización - ISO (International Organization for
Standarization) es una organización internacional independiente, que consolida el conocimiento
experto de diversas temáticas con el propósito de establecer criterios comunes para el desarrollo
e investigación. Favorece así el desarrollo de soluciones globales, las cuales son aplicadas en
distintos sectores de la industria.
El desarrollo de estándares busca establecer que las cosas funcionen bien, incorporando calidad,
seguridad y eficiencia. Asimismo, las organizaciones pueden adherir a estos estándares bajo la
lógica de establecer mecanismos que guíen sus procesos para hacerlos más productivos y asegurar
los beneficios que otorgan los estándares.
En este contexto, existen normas de calidad que se aplican al desarrollo de productos de software,
como es el caso de las normas ISO 9000 e ISO 25000. El contenido que se presenta a continuación
describe estas normas en cuanto a su definición y uso.
5
ESTE DOCUMENTO CONTIENE LA SEMANA 8
1. NORMAS DE LA FAMILIA ISO 9000
La Organización Internacional de Normalización1 es una federación internacional de organizamos
que desarrollan el concepto de normalización o estandarización, en distintos ámbitos del
quehacer. De esta forma, se van creando definiciones por todos conocidas y se aplican bajo un
modelo que establece una serie de mecanismos validados y aceptados por quienes participan o
adhieren a la ISO.
Si lo pudiéramos definir con hechos concretos, el aporte en la aplicación de estas normas guía a las
organizaciones en documentar sus actividades, medir y afinar la ejecución de las actividades
involucradas en el proceso productivo, asegurar la calidad de cara al cliente final, mantener el
concepto de mejora continua, postular en forma progresiva a la eficiencia en la realización de las
actividades y apalancar la estrategia de la organización con el logro de objetivos.
Este conjunto de normas data de 1987. Posteriormente, a través de los años, la economía ha ido
abarcando nuevos productos y servicios, lo cual ha gatillado revisiones en el conjunto de normas,
con el objeto de adecuarse a las nuevas necesidades. Si por ejemplo a mediados de los ochenta la
incorporación de las soluciones de software emergía en muchos sectores de la economía,
actualmente es un escenario mucho más desarrollado y, por tanto, requiere que los modelos de
calidad incorporen este elemento en su familia de normativas.
1
http://www.iso.org/iso/home.html
6
ESTE DOCUMENTO CONTIENE LA SEMANA 8
Dentro de la familia de normas ISO 9000 se encuentran las siguientes (ISO, s. f.):
ISO 19011:2011 Directrices para la auditoría de sistemas de Define directrices básicas para
gestión de la calidad la realización de auditorías en
ISO 9011.
1.1. OBJETIVOS
La familia de normas ISO 9000 tiene como objetivos abarcar y satisfacer lo siguiente:
7
ESTE DOCUMENTO CONTIENE LA SEMANA 8
1.2. ALCANCE
El alcance de la familia de normas ISO 9000 es el siguiente:
1.3. IMPORTANCIA
¿Por qué la importancia de asimilar esta norma y aplicarla en las organizaciones? La
motivación de innovación en todo orden de actividad puede estar guida por varios factores.
Las empresas que prestan algún servicio o desarrollan un producto en un determinado
mercado deben competir con otras en función de brindar al cliente una mejor opción que su
competencia. Un elemento diferenciador es la certificación en la norma ISO 9000, porque al
hacerlo demuestran interés en brindar un producto o servicio de calidad.
8
ESTE DOCUMENTO CONTIENE LA SEMANA 8
h. Relaciones mutuamente beneficiosas con el proveedor: una organización y sus
proveedores son interdependientes, y una relación mutuamente beneficiosa aumenta
la capacidad de ambos para crear valor.
Estos ocho principios de gestión de la calidad constituyen la base de las normas de los
sistemas de gestión de la calidad de la familia de normas ISO 9000 (ISO, 2012-2015).
Fuente: http://iso25000.com/index.php/normas-iso-25000/iso-25010
9
ESTE DOCUMENTO CONTIENE LA SEMANA 8
2.1.1. FUNCIONALIDAD
Corresponde a la capacidad del producto de software de entregar una buena solución, en relación
a las especificaciones funcionales generadas a partir de los requerimientos del usuario.
a) Completitud funcional
b) Corrección funcional
Esta característica se refiere a que la solución de software ofrece resultados correctos y con el
margen de error definido por el usuario. Por ejemplo, si nos referimos a un sistema que procesa
cuentas por pagar, el porcentaje de error debiera ser igual a cero para que las cuentas sean
pagadas en forma íntegra, dentro de los plazos, o bien, con los ajustes o recargos que corresponda
de acuerdo a los intereses devengados.
c) Pertinencia funcional
Se establece que la solución funcional es coherente con las necesidades requeridas. Por ejemplo,
el procesamiento de datos requiere entradas conocidas y dentro de un rango correcto. Asimismo,
las salidas de estos procesos son coherentes y dentro de lo esperado.
2.1.2. EFICIENCIA
Se refiere al desempeño del producto de software, respecto a los recursos que utiliza bajo
condiciones definidas en las especificaciones funcionales y técnicas.
a) Comportamiento temporal
b) Utilización de recursos
Corresponde a la cantidad y tipos de recursos que utiliza la funcionalidad para operar bajo
condiciones establecidas. Por ejemplo, la cantidad de CPU utilizada en el procesamiento de una
orden de compra que se registra en el sistema. ¿Es lo mismo cuando corresponde a una
transacción de muchos productos?
10
ESTE DOCUMENTO CONTIENE LA SEMANA 8
c) Capacidad
Es el grado con que el producto de software cumple con los requerimientos funcionales y no
funcionales que debe cumplir de acuerdo a las definiciones que promovieron su desarrollo.
2.1.3. COMPATIBILIDAD
a) Coexistencia
b) Interoperabilidad
2.1.4. USABILIDAD
Es una característica esencial para toda solución de software donde exista la instancia de
interacción con un usuario. Lo que se busca es que la solución sea fácil de entender, enseñar y
usar para el usuario bajo las condiciones que se hayan establecido para su operación.
Bajo la mirada del usuario, es sencillo entender si le es útil para satisfacer sus necesidades
funcionales. Piense en una aplicación que le puedan ofrecer para administrar su negocio de venta
de repuestos para automóviles. Si al presentarle la solución identifica fácilmente todo lo que
necesita, el producto bajo esas condiciones cumple con esta característica.
b) Capacidad de aprendizaje
Es la propiedad que presenta un sistema de cara al usuario final, para que este pueda aprender a
utilizarlo.
11
ESTE DOCUMENTO CONTIENE LA SEMANA 8
c) Capacidad de ser usado
Es la propiedad que presenta un sistema de cara al usuario final, para que este pueda utilizarlo en
forma simple.
Son características de un sistema que ayudan al usuario a no cometer errores en el uso. Por
ejemplo, buenas validaciones, advertencias y obligatoriedad de cierta información al momento de
consultar, modificar o hacer registros. Asimismo, resguardo de acceso a las funcionalidades de
acuerdo a las definiciones de roles que se realicen.
Es lo que se denomina look and feel. Corresponde a un aspecto estético que ayuda al usuario a
acceder a las funcionalidades sin ambigüedades y en forma limpia. Es decir, para el usuario el
diseño gráfico de la solución hace fácil el uso de la funcionalidad.
f) Accesibilidad
Esta propiedad aporta alternativas de acceso para usuarios con capacidades diferentes. Permite
resaltar títulos, juegos de teclas asociados a la funcionalidad, tamaño de las letras y otras.
2.1.5. FIABILIDAD
a) Madurez
Corresponde a la certeza que entrega un sistema para operar de acuerdo a lo esperado bajo
condiciones conocidas.
b) Disponibilidad
Esta propiedad establece la capacidad del sistema para estar disponible en todo momento que se
requiera utilizarlo desde el inicio de su operación.
c) Tolerancia a fallas
Es la capacidad que tiene el sistema de software para responder en forma adecuada y correcta
ante la ocurrencia de fallos. Por ejemplo, levantar mensajería al usuario ante la caída de una
conexión al servidor de bases de datos.
12
ESTE DOCUMENTO CONTIENE LA SEMANA 8
d) Capacidad de recuperación
2.1.6. SEGURIDAD
Esta capacidad opera sobre la información que es administrada por el sistema de software.
Evitando que a través de accesos no autorizados se logre obtener información que es almacenada
por el sistema.
a) Confidencialidad
Establece que el acceso a la información está controlado y para realizarlo el usuario debe cumplir
requisitos de autorización (roles y privilegios en el sistema).
b) Integridad
c) No repudio
d) Responsabilidad
Corresponde a la capacidad que presenta el sistema para realizar trazas y seguimiento de las
acciones realizadas en una entidad determinada. Por ejemplo, un componente de software realiza
acciones en el sistema, y estas pueden ser seguidas dado que el sistema va dejando registro de
cada acción que realiza.
e) Autenticidad
2.1.7. MANTENIBILIDAD
Sin duda es una de las características más importantes en la calidad del software. Está asociada al
proceso de mantenimiento, donde usualmente se concentra la mayor cantidad de costos por
concepto de ciclo de vida del producto de software. Esta característica permite evaluar el esfuerzo
13
ESTE DOCUMENTO CONTIENE LA SEMANA 8
necesario para realizar modificaciones al producto de software, debido a la corrección de errores,
o bien por el incremento o mejoramiento de la funcionalidad.
a) Modularidad
Capacidad que posee un sistema, el cual establece una relación de bajo acoplamiento entre sus
componentes, los cuales al ser modificados no generan impactos sobre los demás. Este tipo de
soluciones se denominan autocontenidas, dado su diseño, el cual se relaciona a través de sus
funciones, entradas y salidas con los demás componentes del sistema.
b) Reusabilidad
c) Analizabilidad
Capacidad de un sistema de software de ser analizado en forma detallada para encontrar errores.
Asimismo, para realizar un análisis de impacto, el sistema ofrece las facilidades que permiten
establecer el alcance de lo que se requiere realizar y las consideraciones que se deben tener para
no afectar otros componentes del mismo sistema.
Es una propiedad de los sistemas de software, tal que al ser modificados no degradan su
funcionamiento o desempeño.
Es la capacidad que presentan los sistemas de software para ser probados en distintos escenarios,
utilizando técnicas de prueba conocidas y sin restricciones de ambiente o datos.
2.1.8. PORTABILIDAD
Es la capacidad que presenta un sistema de software para ser transferido a una nueva plataforma
de software, hardware u otro, en forma efectiva y sin ver alteradas sus características técnicas y
funcionales.
a) Adaptabilidad
Es la propiedad del sistema de software que le permite ser adaptado en otros ambientes donde
cambian las características técnicas, funcionales, o bien ambas, respecto al ambiente donde se
ejecutaba originalmente. Por ejemplo, ocurre que producto de mejoras o upgrades de sistemas
operativos es necesario migrar las aplicaciones a nuevos ambientes. Estos cambios de ambiente
no debieran tener impacto en el funcionamiento habitual o esperado del sistema. En el caso
contrario, se entenderá que el sistema no es adaptable a este tipo de cambios.
14
ESTE DOCUMENTO CONTIENE LA SEMANA 8
b) Capacidad para ser instalado
Esta propiedad es simple y se refiere a la capacidad del sistema de poder ser instalado, o bien
desinstalado en un ambiente determinado. En este caso, el proceso de instalación no debiera
tener variaciones complejas de un ambiente a otro.
COMENTARIO FINAL
Vistos los contenidos de esta semana, se puede señalar que un sistema de gestión de calidad en
una organización facilita el desarrollo del concepto de calidad y la administración que esta debe
tener durante el proceso de desarrollo de un producto de software. Algunas de las normas ISO,
como las indicadas en el material de esta semana, orientan a las organizaciones en el uso de
métodos y prácticas, como también en la identificación de las características de calidad propias del
producto.
Cada organización, al adoptar estos estándares, debe adecuar las definiciones de sus procesos
según defina la norma, especialmente cuando el objetivo es una certificación que le otorgará una
ventaja en el mercado. También, de acuerdo a las necesidades y propósito de su negocio, se
establece el alcance de la misma.
15
ESTE DOCUMENTO CONTIENE LA SEMANA 8
REFERENCIAS
International Organization for Standarization (ISO) (s. f.). Quality management. Recuperado de:
http://goo.gl/YeYJb.
Zahran, S. (1998). Software Process Improvement: Practical Guidelines for Business Success.
16
ESTE DOCUMENTO CONTIENE LA SEMANA 8
17
ESTE DOCUMENTO CONTIENE LA SEMANA 8