martes, 5 de marzo de 2013

Calidad del Proceso de Desarrollo de Software

Se puede ver como una colección estructurada de prácticas que describen las características de un proceso efectivo.

Se usa para:
  • Definir las prioridades y objetivos de mejora.
  • Guía para la mejora.
  • Definir un lenguaje común.
Áreas del proceso relacionadas con la gestión de la calidad:
  1. Aseguramiento de la calidad en el proceso y en el producto.
  2. Verificación del proceso.
  3. Validación del proceso.
"El proceso de Software define como se organiza, gestiona, mide, soporta y mejora el desarrollo, independientemente de las técnicas y métodos usados.
(Derniame et al, 1999)"

Antecedentes:

Tanto en el desarrollo de varios proyectos en diferentes dominios de aplicación como en la práctica, se ha comprobado el gran impacto que el proceso de desarrollo de software tiene en el éxito de un proyecto. Pero, sobre todo, en la satisfacción del cliente que utiliza dicho producto.

Así, la certificación de sistemas de calidad se ha convertido en un requisito fundamental  para poder competir con amplias posibilidades de éxito. En términos prácticos, es el requisito de entrada al mercado mundial.

El mejoramiento de procesos  de software usa metodologías prácticas basadas en la experiencia colectiva de la industria de software internacional, tales como CMM, SPICE e ISO9001:2000.

Sin embargo, la aplicación de estos métodos formales, siguiéndolos al pie de la letra, no garantiza el objetivo de mejorar la calidad percibida por el usuario, incluso podría obstaculizarla. De aquí la importancia de evaluar, adaptar, implantar o mejorar los procesos que eleven y garanticen las posibilidades de éxito de un grupo de desarrollo específico, dentro de un entrono particular.

Los tres grandes componentes del desarrollo de productos de software son:

Capital Humano: Incorpora el conocimiento y la experiencia que crea y sostiene la evolución  del producto. Sin el personal competente y experimentado, es imposible crear productos que satisfagan las necesidades de los clientes.

Tecnología: Proporciona la posesión de las tecnologías que sustentan el producto y las herramientas utilizadas en su desarrollo.

Proceso: Es el saber como utilizar el conocimiento del capital humano y la tecnología en forma eficiente para lograr productos de alta calidad que satisfagan las necesidades de los clientes. Ello se engloba en costos y plazos aceptables.

Al considerar que los dos primeros componentes son, cada vez más caros, el proceso de desarrollo de software se hace más critico. Ello se debe a que representa una fuerte inversión en recursos y tiempo. Se ha observado que la construcción del proceso implica una larga incubación, estrechamente ligada a la cultura de la organización, y un enorme esfuerzo de pruebas y errores.

Un proceso inadecuado tiene asociadas graves consecuencias y acarrea costos elevados, esto puede significar la diferencia entre el éxito y el fracaso. De igual forma, es importante destacar que el mejoramiento del proceso de software se basa en el principio de mejoramiento continuo, por que las mejoras de propuestas deben ser graduales y aplicadas, primordialmente, en las áreas de mayor impacto. 

No hay comentarios:

Publicar un comentario