Calidad y Arquitectura de Software: Conceptos Clave y Aseguramiento
Clasificado en Informática
Escrito el en español con un tamaño de 3,36 KB
Calidad de Software
En un mundo cada vez más globalizado, donde cada día desaparecen las barreras comerciales y culturales, la calidad aparece como una necesidad, pues permite competir con mayores posibilidades de éxito. A pesar de que la programación de sistemas no había sido concebida desde la perspectiva de la calidad, la calidad en productos de software ha tenido un auge importante en la sociedad informatizada de hoy (Azuma, 1999).
La Calidad de Software, para Pressman (2002), es “la concordancia con los requisitos funcionales y de rendimiento establecidos, con los estándares de desarrollo explícitamente documentados y con las características implícitas que se espera de todo software desarrollado de forma profesional”. No obstante, la ISO/IEC (International Standard Organization u Organización Internacional de Estándares en español) define a la calidad de software como la totalidad de rasgos y atributos de un producto de software que le apoyan en su capacidad de satisfacer sus necesidades explícitas o implícitas (ISO/IEC 9126, 1998).
Lo más interesante en estas dos definiciones de la Calidad de Software es la necesidad de que un software de calidad debe satisfacer los requerimientos dados por el usuario. Ahora bien, la IEEE, citado por (Barbacci et al, 1995), afirma que la calidad de un software es el grado en el cual el software posee una combinación deseada de factores.
Pero sin un proceso sistemático que permita garantizar la calidad dentro de un proceso de desarrollo de software, no tendría ninguna importancia hablar de Calidad de Software; por eso es vital tratar el tema de Aseguramiento de la Calidad de Software, que es este proceso.
Aseguramiento de la Calidad de Software
Denominado en la mayoría de las empresas como QA (Quality Assurance), permite elaborar actividades sistemáticas que se necesitan para lograr la calidad en el producto, que en este caso es un software (Pressman, 2002). Obviamente, esta planificación debe hacerse antes del desarrollo del software.
Arquitectura de Software
Actualmente, en la literatura (Bass et al., 1998; Kazman et al., 2001; Hofmeister et al., 2000; Lane, 1990; Buschman et al., 1996; Booch et al., 1999; Abowd, 1995), es posible encontrar numerosas definiciones del término Arquitectura de Software, cada una con planteamientos diversos. Se hace evidente que su conceptualización sigue todavía en discusión, puesto que no es posible referirse a un diccionario en busca de un significado, y tampoco existe un estándar que pueda ser tomado como marco de referencia.
Sin embargo, al hacer un análisis detallado de cada uno de los conceptos disponibles, resulta interesante la existencia de ideas comunes entre los mismos, sin observarse planteamientos contradictorios, sino más bien complementarios. La intención primordial del análisis no es concluir ni proponer un concepto que englobe todas las ideas planteadas hasta el momento, sino establecer aquellos elementos que no deben perderse de vista al momento de introducirse en el contexto de las arquitecturas de software y, por ende, en un ambiente de evaluación de arquitectura de software.