02 December 2006

Overview sobre Modelos/Estándares de Calidad del Software

El software juega un papel muy importante para el desarrollo de las organizaciones. Día tras día son liberados para su uso distintos tipos de programas para diferentes clases de clientes, los hay para cada necesidad de tal manera que resulta difícil imaginar alguna situación en la que el software no estuviera presente, dado que es uno de los componentes básicos de la tecnología que se involucra en las empresas, no sólo como soporte a los procesos de negocio, productivos y administrativos, sino como parte integral de las estrategias corporativas para la generación de ventajas competitivas. Esto significa que resulta fundamental evaluar la Calidad del Software.

La Calidad del Software (CS) es “la concordancia de los requerimientos funcionales y de rendimiento explícitamente establecidos, con los estándares de desarrollo documentados y con las características implícitas que se esperan de todo software desarrollado profesionalmente”. Es el conjunto de cualidades que lo caracterizan y que determinan su utilidad y existencia, las cuales plantean un adecuado balanceo de eficiencia, confiabilidad, facilidad de mantenimiento, portabilidad, facilidad de uso, seguridad e integridad.

Para el logro de esta Calidad será necesario efectuar una Gestión de la Calidad del Software, la cual consiste en un conjunto de actividades que permiten dirigir y controlar la organización en lo relativo a la Calidad del Software. La Gestión de la Calidad se puede entender como el conjunto de actividades y medios necesarios para definir e implantar un sistema de la calidad, por una parte, y responsabilizarse de su control, aseguramiento y mejora continua, por otra. En este sentido, la Gestión de la Calidad en cualquier organización se centra en los siguientes niveles de trabajo: (1) nivel de organización, (2) nivel de proyecto y (3) nivel de producto de software.

Para lograr una mejor Gestión de la CS se utilizan Modelos y Estándares de Calidad del Software, los cuales consisten en reunir todas las actividades y funciones de forma tal que ninguna de ellas esté subordinada a las otras y que cada una se planee, controle y ejecute de un modo formal y sistemático.

Los Modelos de Calidad son aquellos documentos que integran la mayor parte de las mejores prácticas, proponen temas de administración en los que cada organización debe hacer énfasis, integran diferentes prácticas dirigidas a los procesos clave y permiten medir los avances en calidad. Los Estándares de Calidad son aquellos que permiten definir un conjunto de criterios de desarrollo que guían la forma en que se aplica la Ingeniería del Software. Los estándares suministran los medios para que todos los procesos se realicen de la misma forma y son una guía para lograr la productividad y la calidad.

Los Modelos y/o Estándares permiten que las Empresas de Software realicen sus tareas y funciones teniendo en cuenta la Calidad. Cualquier organización que se dedica a la investigación, producción y comercialización de software debe considerar la calidad, hoy con más razón, donde existe un mercado en el cual el cliente es cada vez más exigente, no sólo en lo que se refiere al precio, sino sobre todo, en cuanto a los servicios y a la confiabilidad que brindan los productos de software. La calidad desempeña un rol determinante para la competitividad de la empresa. Cuando una empresa está funcionando y decide implantar un Modelo / Estándar de CS, es señal que la empresa tiene el propósito de permanecer y crecer en el mercado, ser competitiva, proteger los intereses de los accionistas, cuidar la fuente de trabajo y mejorar la calidad de vida de su personal.

Implantar Modelos o Estándares de Calidad tiene como objetivo principal que las empresas desarrollen sistemáticamente, productos, bienes y servicios de mejor calidad y cumplan con las necesidades y deseos de los clientes. Para esto, se requiere de un Modelo / Estándar que permita: (1) unir la misión de la empresa y el esfuerzo de cada área en una sinergia de resultados hacia la competitividad y la calidad de clase mundial; y (2) tener procesos y procedimientos ágiles; y comprensibles para todos los involucrados, pasando por las etapas de desarrollo, prueba, producción y satisfacción del cliente.

La Ingeniería del Software abarca un amplio espectro de temas, entre los cuales se encuentra Modelos y Estándares de CS, los cuales permiten que las empresas puedan implementar la calidad a nivel Proceso y a nivel Producto. Cada Modelo o Estándar tiene una aplicación concreta, la cual contribuye a lograr mejor los objetivos. Teniendo en cuenta los objetivos de la empresa, se puede pensar en poder aplicar y/o integrar modelos o estándares, como ser casos de implantación de CMMi e ISO 9001:2000 al mismo tiempo.

La Calidad a nivel Proceso puede ser evaluada de manera genérica o específica, según el modelo o estándar seleccionado. Todo Modelo o Estándar a nivel Proceso tiene un ámbito de aplicación específico y tiene como finalidad el mejoramiento continuo, luego de realizada la implantación del mismo. Entre los Modelos y/o Estándares de CS a nivel Proceso se pueden mencionar: (1) ISO 9001:2000, (2) CMMi, (3) TickIT, (4) ISO 90003:2004, (5) ISO 20000, (6) Bootstrap y otros.

La Calidad a nivel Producto plantea distintos Modelos y Estándares que poseen un conjunto de características, las cuales tienen asociadas subcaracterísticas y métricas. Todo equipo de desarrollo deberá evaluar la CS durante las diferentes etapas de desarrollo del software y ambientes de trabajo respectivos (Desarrollo, Prueba y Producción). Esto evita futuros problemas y una posible disminución en los tiempos y costos. Entre los Modelos y/o Estándares de CS a nivel Producto se pueden mencionar: (1) Modelo de Boehm, (2) Modelo de Gilb, (3) Modelo de Dromey, (4) ISO 9126-1, (5) Modelo de McCall, (6) WebQEM, (7) ISO 25000, (8) Portal Quality Model (PQM) y otros. Los Modelos y Estándares a nivel Producto surgen o se actualizan de acuerdo a la evolución tecnológica ocurrida.

Desde hace bastante tiempo, la calidad es un factor determinante en el desarrollo de toda empresa que tenga como objetivo ser reconocida en el mercado. La Calidad del Software plantea la existencia de una concordancia entre los requerimientos planteados respecto de los obtenidos. Toda empresa que tenga como finalidad alcanzar la calidad deberá implantar un Modelo o Estándar genérico o específico, seleccionado adecuadamente, que se ajuste a los objetivos de la empresa. Esto traerá como consecuencia, un cambio en la manera de pensar y de hacer las cosas en la firma, es decir la denominada Filosofía de la CS.

Las propuestas de acción para el fortalecimiento de la industria del software han permitido que las empresas productoras de software identifiquen, como tarea imprescindible para tener éxito, alcanzar los niveles de competitividad de las organizaciones extranjeras con el fin de lograr una certificación. Esta búsqueda de reconocimiento internacional de calidad, que se ha iniciado en algunas empresas del sector, permitirá enfrentar los mercados con mayores posibilidades de éxito y abrirá las puertas para que otras empresas se animen a estos procesos y se desate en el medio un alto interés y compromiso hacia la incorporación de dichos Modelos y Estándares de CS.

De esta forma, se puede decir que la empresa podrá lograr un reconocimiento respecto de la misión para la cual fue creada y estar acorde al actual mercado empresarial.