Calidad del Software: problemas, gestión y estándares de documentos

Documento de Htl Online Business School Escuela de Empresa Online sobre Calidad del Software. El Pdf explora la calidad del software, comparándola con la manufacturera y analizando problemas de especificación. Aborda requisitos, gestión y estándares de documentación en Informática para Universidad.

Ver más

11 páginas

Calidad del Software
La calidad del software es un concepto complejo que no es directamente
comparable con la calidad de la manufactura de productos. En la manufacturación,
la noción de calidad viene dada por la similitud entre el producto desarrollado y su
especificación. En un mundo ideal, esta definición debería aplicarse a todos los
productos, pero, para sistemas de software, existen estos problemas:
1. La especificación se orienta hacia las características del producto que el
consumidor quiere. Sin embargo, la organización desarrolladora también tiene
requerimientos (como los de mantenimiento) que no se incluyen en la
especificación.
2. No se sabe cómo especificar ciertas características de calidad (por
ejemplo, mantenimiento) de una forma no ambigua.
3. Es muy difícil redactar especificaciones concretas de software. Por lo
tanto, aunque un producto se ajuste a su especificación, los usuarios no lo
consideran un producto de alta calidad debido a que no responde a sus
expectativas.
Se deben reconocer estos problemas con la especificación del software y se
tienen que diseñar procedimientos de calidad que no se basen en una
especificación perfecta. En concreto, atributos del software como mantenibilidad,
seguridad o eficiencia no pueden ser especificados explícitamente. Sin embargo,
tienen un efecto importante en cómo es percibida la calidad del sistema.
Algunas personas piensan que la calidad puede lograrse definiendo estándares y
procedimientos organizacionales de calidad que comprueban si estos estándares
son seguidos por el equipo de desarrollo. Su argumento es que los estándares
deben encapsular las buenas prácticas, las cuales nos llevan inevitablemente a
productos de alta calidad. En la práctica, sin embargo, es más importante la
gestión de la calidad que los estándares y la burocracia asociada para asegurar el
seguimiento de estos estándares.
Los buenos gestores aspiran a desarrollar una «cultura de la calidad» donde todos
seamos responsables de que el desarrollo del producto sea llevado a cabo
obteniendo un alto nivel de calidad en éste. Mientras estándares y procedimientos
son las bases de la gestión de la calidad, los gestores de calidad experimentados
reconocen que hay aspectos intangibles en la calidad del software (elegancia,
legibilidad, etc.) que no puede ser incorporada en los estándares. Ellos ayudan a
la gente interesada en estos aspectos intangibles de calidad y fomentan
comportamientos profesionales en todos los miembros del equipo.
La gestión formal de la calidad es particularmente importante para equipos que
desarrollan sistemas grandes y complejos. La documentación de la calidad es un
registro de que es hecho por cada subgrupo en el proyecto.
Esto ayuda a la gente a ver qué tareas importantes no deben ser olvidadas o que
una parte del equipo no haga suposiciones incorrectas acerca de lo que otros
miembros han hecho. La documentación de calidad es también un medio de
comunicación sobre el ciclo de vida de un sistema. Ésta permite al grupo
responsabilizarse de la evolución del sistema para saber qué ha hecho el equipo
de desarrollo.
Para sistemas pequeños, la gestión de calidad es importante todavía, pero se
debe adoptar una aproximación más informal. No son tan necesarios los
documentos porque el grupo puede comunicarse informalmente. La clave de la
calidad en el desarrollo de sistemas pequeños es el establecimiento de cultura de
calidad y asegurarse de que todos los miembros del equipo hacen una
aproximación positiva a la calidad del software.

Visualiza gratis el PDF completo

Regístrate para acceder al documento completo y transformarlo con la IA.

Vista previa

Calidad del Software

La calidad del software es un concepto complejo que no es directamente comparable con la calidad de la manufactura de productos. En la manufacturación, la noción de calidad viene dada por la similitud entre el producto desarrollado y su especificación. En un mundo ideal, esta definición debería aplicarse a todos los productos, pero, para sistemas de software, existen estos problemas:

  1. La especificación se orienta hacia las características del producto que el consumidor quiere. Sin embargo, la organización desarrolladora también tiene requerimientos (como los de mantenimiento) que no se incluyen en la especificación.
  2. No se sabe cómo especificar ciertas características de calidad (por ejemplo, mantenimiento) de una forma no ambigua.
  3. Es muy difícil redactar especificaciones concretas de software. Por lo tanto, aunque un producto se ajuste a su especificación, los usuarios no lo consideran un producto de alta calidad debido a que no responde a sus expectativas.

Se deben reconocer estos problemas con la especificación del software y se tienen que diseñar procedimientos de calidad que no se basen en una especificación perfecta. En concreto, atributos del software como mantenibilidad, seguridad o eficiencia no pueden ser especificados explícitamente. Sin embargo, tienen un efecto importante en cómo es percibida la calidad del sistema.

Algunas personas piensan que la calidad puede lograrse definiendo estándares y procedimientos organizacionales de calidad que comprueban si estos estándares son seguidos por el equipo de desarrollo. Su argumento es que los estándares deben encapsular las buenas prácticas, las cuales nos llevan inevitablemente a productos de alta calidad. En la práctica, sin embargo, es más importante lagestión de la calidad que los estándares y la burocracia asociada para asegurar el seguimiento de estos estándares.

Los buenos gestores aspiran a desarrollar una «cultura de la calidad» donde todos seamos responsables de que el desarrollo del producto sea llevado a cabo obteniendo un alto nivel de calidad en éste. Mientras estándares y procedimientos son las bases de la gestión de la calidad, los gestores de calidad experimentados reconocen que hay aspectos intangibles en la calidad del software (elegancia, legibilidad, etc.) que no puede ser incorporada en los estándares. Ellos ayudan a la gente interesada en estos aspectos intangibles de calidad y fomentan comportamientos profesionales en todos los miembros del equipo.

La gestión formal de la calidad es particularmente importante para equipos que desarrollan sistemas grandes y complejos. La documentación de la calidad es un registro de que es hecho por cada subgrupo en el proyecto.

Esto ayuda a la gente a ver qué tareas importantes no deben ser olvidadas o que una parte del equipo no haga suposiciones incorrectas acerca de lo que otros miembros han hecho. La documentación de calidad es también un medio de comunicación sobre el ciclo de vida de un sistema. Esta permite al grupo responsabilizarse de la evolución del sistema para saber qué ha hecho el equipo de desarrollo.

Para sistemas pequeños, la gestión de calidad es importante todavía, pero se debe adoptar una aproximación más informal. No son tan necesarios los documentos porque el grupo puede comunicarse informalmente. La clave de la calidad en el desarrollo de sistemas pequeños es el establecimiento de cultura de calidad y asegurarse de que todos los miembros del equipo hacen una aproximación positiva a la calidad del software.La gestión de calidad del software se estructura en tres actividades principales:

  1. Garantía de la calidad. El establecimiento de un marco de trabajo de procedimientos y estándares organizacionales que conduce a software de alta calidad.
  2. Planificación de la calidad. La selección de procedimientos y estándares adecuados a partir de este marco de trabajo y la adaptación de éstos para un proyecto software específico.
  3. Control de la calidad. La definición y fomento de los procesos que garanticen que los procedimientos y estándares para la calidad del proyecto son seguidos por el equipo de desarrollo de software.

Gestión de Proyectos con Marco de Calidad

La gestión de la calidad provee una comprobación independiente de los procesos de desarrollo software. Los procesos de gestión de la calidad comprueban las entregas del proyecto para asegurarse que concuerdan con los estándares y metas organizacionales. El equipo de garantía de calidad debe ser independiente del equipo de desarrollo para que puedan tener una visión objetiva del software. Ellos transmitirán los problemas y las dificultades al gestor principal de la organización.

Proceso de desarrollo de software D1 D2 D3 D4 D5 Proceso de administración de la calidad Estándares y procedimientos Plan de calidad Informes de revisión de la calidad

Gestión de Calidad y Desarrollo de Software

Un equipo independiente de calidad garantiza que los objetivos organizacionales y la calidad no sean comprometidos por consideraciones de presupuesto o agenda. Una suposición subyacente de la gestión de calidad es que la calidad del proceso de desarrollo afecta directamente a la calidad de los productos derivados.

La siguiente figura muestra una aproximación basada en proceso para conseguir la calidad del producto.

Definir proceso Desarrollar producto Valorar la calidad del producto No Sí Mejorar proceso Calidad OK Estandarizar proceso

Calidad Basada en Procesos

Hay un vínculo claro entre la calidad del proceso y del producto en producción debido a que el proceso es relativamente fácil de estandarizar y monitorizar. El software no se manufactura, sino que se diseña. El desarrollo de software es un proceso más creativo que mecánico. La calidad del producto, también se ve afectada por factores externos, como la novedad de una aplicación o la presión comercial para sacar un producto rápidamente.

En el desarrollo software, por lo tanto, la relación entre la calidad del proceso y la calidad del producto es muy compleja. Es difícil de medir los atributos de la calidad del software, en consecuencia, es difícil explicar cómo influyen las características del proceso en estos atributos. Además debido al papel del diseño y la creatividad en el proceso software, no podremos predecir la influencia de los cambios en el proceso en la calidad del producto.La calidad del proceso tiene una influencia significativa en la calidad del software. La gestión y mejora de la calidad del proceso debe minimizar los defectos en el software entregado.

La gestión de la calidad del proceso implica:

  1. Definir estándares de proceso.
  2. Supervisar el proceso de desarrollo para asegurar que se sigan los estándares.
  3. Hacer informes del proceso para el gestor del proyecto y para el comprador del software.

Estándares y Métricas de Calidad en Ingeniería de Software

Un problema de la garantía de la calidad basada en el proceso es que el equipo de garantía de la calidad (QA) insista en unos estándares de proceso independientemente del tipo de software a desarrollar. El gestor principal debe intervenir para asegurar que el proceso de calidad ayude al desarrollo del producto en lugar de impedirlo.

Podemos definir dos tipos de estándares como parte del proceso de garantía de calidad:

  1. Estándares de producto. Se aplican sobre el producto software que se comienza a desarrollar. Incluyen estándares de documentación, como cabecera de comentarios estándar para definición de clases, y estándares de codificación.
  2. Estándares de proceso. Definen los procesos que deben seguirse durante el desarrollo del software. Pueden incluir definiciones de procesos de especificación, diseño y validación, así como una descripción de los documentos que deben escribirse en el curso de estos procesos.

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.

Los estándares de software son importantes por varias razones:

  1. Están basadas en el conocimiento de la mejor o más apropiada práctica de la empresa, evita la repetición de errores anteriores.
  2. Proveen un marco de trabajo alrededor del cual se implementa el proceso de garantía de la calidad. El control de la calidad sencillamente asegura que los estándares se siguen adecuadamente.
  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.

Utilizando estándares como punto de partida, el equipo de garantía de la calidad debe crear un «manual» de estándares. Éste define los estándares que son apropiados para la organización.

Algunas veces, los ingenieros de software consideran a los estándares como burocráticos e irrelevantes para las actividades técnicas de desarrollo de software. Para evitar estos problemas, los gestores de la calidad que fijan los estándares necesitan estar informados y tomar en consideración los siguientes pasos:

  1. Involucrar a los ingenieros de software en el desarrollo de los estándares del proyecto.
  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.

El gestor del proyecto y el gestor de calidad pueden evitarse los problemas de estándares inapropiados si planean cuidadosamente la calidad. Deben decidir cuáles son los estándares del manual que utilizarán sin cambio alguno, cuáles se modificarán y cuáles se dejarán de lado.

ISO 9000 y la Gestión de la Calidad

Un conjunto de estándares internacionales que se puede utilizar en el desarrollo de un sistema de gestión de calidad en todas las industrias es ISO 9000. Los estándares ISO 9000 pueden aplicarse a un amplio abanico de organizaciones desde las de manufactura hasta las de servicios. ISO 9001 es el más general de estos estándares y se aplica en organizaciones interesadas en el proceso de calidad de diseño, desarrollo y mantenimiento de productos. ISO 9001 no es un estándar específico para desarrollo de software, pero define principios generales que pueden aplicarse al software. Aquí podemos observar las relaciones entre ISO 9000, el manual de calidad y los planes de calidad de proyectos particulares.

Modelos de calidad ISO 9000 instanciado como documentos Manual de calidad de la organización Proceso de la calidad de la organización se utiliza para desarrollar instanciado como Plan de calidad del proyecto 1 Plan de calidad del proyecto 2 Plan de calidad del proyecto 3 Administración de la calidad de proyecto Apoya

¿Non has encontrado lo que buscabas?

Explora otros temas en la Algor library o crea directamente tus materiales con la IA.