Вы находитесь на странице: 1из 7

Calidad de

software

Métodos
Formales

1
Calidad de software
“Usted no puede controlar lo que no puede medir” (De Marco, 1982, “Controlling
Software Projects: Management, Measurement, and Estimation” - Prentice
Hall/Yourdon Press).

La calidad es ambas cosas: controlar y medir si la vemos como actividad. A


su vez, la calidad es también la aptitud de un producto para satisfacer las
necesidades de quien lo requirió. ¿Cómo se conjugan estos dos puntos de
vista? ¿Cómo los aplicamos al software y al proceso de desarrollo?

¿Qué entendemos por calidad?


Entendamos primero el concepto de calidad. Hay muchos puntos de vista
Calidad: grado en que según el pensador (por ejemplo, Juran o Deming), pero los resumamos
un producto o servicio diciendo que la calidad es el grado en que un producto o servicio cumple
cumple con las con las expectativas del cliente. Las expectativas del cliente son lo que él
expectativas del espera del producto, y el grado en que ese producto satisface esa
cliente.
expectativa es el punto importante. Grado nos da a entender la existencia
de una escala de medición y, por lo tanto, de un patrón estándar con el
cual comparar (ver Figura 1). Ese patrón estándar es el requisito del cliente,
su expectativa, pero puede ser un patrón autoimpuesto. En este sentido, la
escala de medición puede ir desde algo tan simple como un “lo cumple, no
lo cumple” hasta una compleja evaluación de muchos puntos con distintos
pesos cada uno.

Volvamos al concepto de calidad, donde mencionamos que cumple con las


expectativas del cliente. Aquí debemos realizar una aclaración: más que el
cumplimiento, es la percepción del cumplimiento que posee el cliente. Hay
distintos clientes, y cada uno contará con distintas expectativas y
percepciones acerca de un mismo producto.

Volvamos nuevamente al concepto de calidad. La percepción del


cumplimiento que posee el cliente respecto del producto o servicio nos da
una idea más: el cliente controla o juzga la calidad… cuando el producto
está listo. Y esto no debe ser así, la calidad no debe esperar a que se
termine el producto, sino acompañarlo en su ciclo de vida.

Control de la calidad y aseguramiento de la calidad

2
No son conceptos intercambiables. El control de la calidad está formado
por las actividades llevadas a cabo con el propósito de controlar la calidad
de los productos o servicios mediante la búsqueda de problemas y
defectos. El control de la calidad (QC o quality control) tiene tareas como la
inspección y la prueba con el fin de dar el OK. ¿Y si estas tareas no dan OK y
nuestro producto o servicio no está conforme o presenta no
conformidades? Se lo corrige o se lo descarta, preferentemente antes de
que llegue al cliente.

Figura 1: Calidad implica medir

Fuente: Recuperado de https://goo.gl/akhmS7

Por otro lado, el aseguramiento de la calidad (QA o quality assurance) es


un concepto más amplio. Su objetivo no es inspeccionar o probar en busca
de defectos, sino prevenir que ocurran (los defectos o no conformidades).
QC es parte de QA, es una de sus actividades, pero solo una; el
entrenamiento, la auditoría y el control documental son actividades que
forman el QA. QA debe asegurar que hay procesos y que esos procesos
aseguran que los productos y servicios se realicen con calidad.

Gestión de la calidad (QM o quality management)

Es un concepto aún más amplio que los anteriores, que los abarca y
asciende en la jerarquía de la organización. Requiere una mirada sobre la

3
calidad entendida como un sistema más de la empresa, con una política
que lo guíe y donde los directivos se involucren y dispongan de los recursos
necesarios.

Volvamos en el tiempo

Phil Crosby, a fines de los años 70, desarrolló un concepto que suponía que
la calidad se basaba en el cumplimiento de una especificación y que existía
cierta tolerancia en el cumplimiento de dicha especificación. Este es un
concepto propio de la industria de la manufactura, donde el producto
podía especificarse en todas sus dimensiones y donde existen métodos
para comprobar su adecuación a las especificaciones. (Crosby, 1987).

Ahora, ¿cómo llevamos estos conceptos a la realidad del software? ¿Es


posible especificar un software en todas sus dimensiones? (antes de
comenzar a producirlo, como con las piezas de manufactura).

Software e ingeniería de software

¿Qué entendemos por software? Es el código, los programas para ser


ejecutados por una computadora y los datos que gestiona.

Figura 2: Software

Fuente: [Imagen sin título sobre software]. (s. f.). Recuperado de https://goo.gl/AomLCp

4
¿Qué es la ingeniería de software?
Veamos algunas definiciones:

“Ingeniería del Software es el estudio de los principios y metodologías para


desarrollo y mantenimiento de sistemas de software” (Zelkovits, 1978,
https://goo.gl/VNTJ8k ).

“Ingeniería del Software es la aplicación práctica del conocimiento


científico en el diseño y construcción de programas de ordenador y la
documentación necesaria requerida para desarrollarlos, operarlos
(funcionar) y mantenerlos” (Bohem, 1976, https://goo.gl/ZyRoCv).

“La aplicación de un enfoque sistemático, disciplinado y cuantificable al


desarrollo, operación (funcionamiento) y mantenimiento del software; es
decir, la aplicación de Ingeniería al software” (IEEE,
1993https://goo.gl/ZyRoCv).

Extraigamos lo común: la ingeniería de software es un conjunto de


métodos y herramientas que se utilizan para el desarrollo, operación y
mantenimiento de software de manera sistemática y cuantificable.
¿Cuantificable? Sí, entonces, si es cuantificables es medible, y si se lo puede
medir se lo puede comparar con un estándar; por lo tanto, es posible
determinar su calidad.

Software de calidad

El software en sí mismo es su proceso de desarrollo. Todo el servicio en


torno a este genera expectativas en el cliente, quien luego evaluará su
calidad cuando lo tenga en sus manos. Como ingenieros de software,
debemos adelantarnos, comprender las expectativas del cliente, sus
requerimientos y medir su cumplimiento en nuestro producto. Si nuestro
producto cumple con estos requisitos, entonces nos acercamos a un
software de calidad. Si solo nos acercamos, aún falta algo más: la calidad
de software.

Calidad de software

La calidad de software es el conjunto de las prácticas, herramientas,


normas y estándares que se utilizan para lograr un software de calidad. La
calidad es, a su vez, el conjunto de características del mismo software
sobre las cuales vamos a trabajar para lograr la satisfacción del cliente.

5
Estas características son medibles. Medir implica que luego, a esa
medición, la comparemos con una especificación para conocer qué tan
cerca o lejos nos hallamos de ella. Hallarnos cerca o lejos implica que existe
una brecha que salvar, y esto implica que debemos actuar, que debemos
realizar una acción para acercarnos a ese objetivo, para cerrar esa brecha.
Por otra parte, no necesariamente debemos ser reactivos: calidad implica
también planear, pensar antes de actuar, y luego actuar, medir lo actuado
y entonces mejorar lo actuado.

Sugerimos que, habiendo llegado a este punto, leas el capítulo web del
libro del ingeniero de software Ian Sommerville, dedicado a la ingeniería de
software, principalmente, pero también a la gestión de la calidad.

6
Bibliografía de referencias
Sommerville, I. (2011). Software engineering history. En Autor, Ingeniería
de Software (p. 5). México: Pearson Educación. Recuperado de
http://www.SoftwareEngineering-9.com

Sommerville, I. (2011). Gestión de la Calidad. En Autor, Ingeniería de


Software (pp. 651-680). México: Pearson Educación. Recuperado de
http://www.SoftwareEngineering-9.com

Sánchez Segura, M. S. y Alonso D. (2010). Introducción a la Ingeniería de


Software (p. 4-5). Recuperado de: http://ocw.uc3m.es/ingenieria-
informatica/principios-de-ingenieria-informatica/introduccion-a-la-
ingenieria-del-software

[Imagen sin título sobre Calidad implica medir]. (s. f.). Recuperado de
https://unsplash.com/photos/fw7lR3ibfpU

[Imagen sin título sobre Software]. (s. f.). Recuperado de


https://unsplash.com/photos/Lg8xTZjs6Lg

Вам также может понравиться