Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El software, como producto elaborado que es, se construye de acuerdo con procesos
preestablecidos y controlados, en cuya producción se emplean “ingredientes humanos”,
tecnológicos, etc. Por ello, la producción de software de calidad debe seguir una receta
similar a la de cualquier otro producto: buenos ingredientes, construidos, ensamblados
y verificados en un proceso de calidad. Sólo esto garantiza la calidad del producto final.
La calidad es un término del que todos tenemos una noción clara, y sin embargo nos
resulta difícil definirla con palabras. La definición de Raymond Paul es una referencia
importante a la hora de estudiar este concepto desde la perspectiva de la ingeniería del
software: “La característica que distingue el grado de excelencia o superioridad de un
proceso, producto o servicio”.
Una forma sencilla de evaluar la calidad de un producto es identificar los atributos que
diferencian a un objeto de calidad de uno que no la tiene. Si el producto en cuestión
posee dichos atributos, entonces se considera que tiene calidad y en el caso contrario,
se considera que no la tiene. Así, cuando hablamos del software, la calidad se identifica
a menudo con la ausencia de fallos. Sin embargo, esta definición es bastante laxa,
puesto que hay fallos que estamos dispuestos a tolerar, por ejemplo, en un navegador
web, pero que consideraríamos inaceptables en un software que controle procesos
críticos tales como el sistema de control de una aeronave comercial.
La guía SWEBOK indica expresamente que los ingenieros del software deben conocer
el significado y características de la calidad, así como su valor en el desarrollo y
mantenimiento del software. En el desarrollo de un sistema de software, la calidad
aparece por primera vez en los requisitos, que es donde se establecen los parámetros
y criterios de calidad del software que se construirá. Las características de calidad que
se definen en estos momentos serán la referencia de ahí en adelante, por lo que todo
aquello que se establezca como requisito de calidad en este punto tendrá una enorme
influencia, tanto en la forma en que posteriormente se medirá la calidad, como en los
criterios utilizados para evaluar si los parámetros de calidad establecidos se cumplieron
o no al final del desarrollo. La figura siguiente muestra los diferentes aspectos de la
calidad desde el punto de vista de la ingeniería del software.
➢ Cultura de la calidad
En su libro “Creación de una cultura de la Ingeniería del Software”, Karl Wiegers hace
un detallado catálogo de aquellos elementos que contribuyen al éxito de un proyecto de
software poniendo énfasis especial en la mejora de la cultura de la calidad en una
organización. Esta cultura de la Ingeniería del Software se podría definir como un
compromiso de los ingenieros del software de una organización con las metas de calidad
de su organización y particularmente, con aquellas que tienen que ver con la obtención
de software de calidad. La asimilación de esta cultura de la calidad por parte de los
ingenieros del software se plasma en una serie de prácticas que en conjunto se
constituyen en lo que Wiegers (1996) denomina cultura de calidad de la organización.
Según este autor algunos de los más importantes principios para tener en cuenta son:
➢ Aseguramiento de la calidad
Los procesos de aseguramiento de la calidad garantizan que tantos los productos como
los procesos de producción del software cumplen con los requisitos de calidad
establecidos. La IEEE define como:
• Establecer procedimientos para todo aquello que afecte el desarrollo: qué medir,
como informar de los errores, qué metodología emplear, cómo documentar, qué
acciones correctivas tomar, etc.
• Establecer procedimientos de seguimiento y monitorización que garantizan que
todo lo anterior se cumple.
➢ Modelos de calidad
• CMM
• MOPROSOFT
• ISO 9000
• SPICE
• SIX SIGMA
Podemos definir dos tipos de estándares como parte del proceso de garantía de calidad:
Existe una relación muy cercana entre los estándares de producto y los estándares de
proceso. Los estándares de producto se aplican a las salidas del proceso software y en
muchos casos, los estándares de proceso incluyen actividades de proceso específicas
que garantizan que se sigan los estándares de producto.
3. Ayudan a la continuidad cuando una persona continúa el trabajo que llevaba a cabo
otra. Se reduce el esfuerzo de aprendizaje cuando se comienza un nuevo trabajo.
2. Revisar y modificar los estándares de forma regular con el fin de reflejar los cambios
en la tecnología.
3. Proveer herramientas de software para apoyar los estándares donde sea necesario.
• La línea base del Alcance, la cual incluye detalles del enunciado del alcance del
proyecto y de la estructura de desglose del trabajo que se utilizan para definir las
actividades, estimar la duración y gestionar el cronograma.
• La línea base de Tiempo, documenta las medidas aceptadas del desempeño
del cronograma, incluidas las fechas de inicio y finalización.
• La línea base de Costos, es la versión aprobada del presupuesto por fases del
proyecto, excluida cualquier reserva de gestión.
Para que un proyecto sea considerado de calidad debe cumplir con el alcance
(objetivos) acordado con los interesados, debe realice en el tiempo (plazos) planificado
y bajo el presupuesto (costos) aprobado.