La arquitectura de software es de
especial importancia ya que la manera en que se estructura un sistema tiene un
impacto directo sobre la capacidad de este para satisfacer lo que se conoce
como los atributos de calidad del sistema. Ejemplos de atributos de calidad son
el desempeño, que tiene que ver con el tiempo de respuesta del sistema a las
peticiones que se le hacen, la usabilidad, que tiene que ver con qué tan
sencillo les resulta a los usuarios realizar operaciones con el sistema, o bien
la modificabilidad, que tiene que ver con qué tan simple resulta introducir
cambios en el sistema. Los atributos de calidad son parte de los requerimientos
(no funcionales) del sistema y son características que deben expresarse de
forma cuantitativa. No tiene sentido, por ejemplo, decir que el sistema debe
devolver una petición “de manera rápida”, o presentar una página “ligera”, ya
que no es posible evaluar objetivamente si el sistema cubre o no esos
requerimientos.
La manera en que se estructura un
sistema permitirá o impedirá que se satisfagan los atributos de calidad. Por
ejemplo, un sistema estructurado de tal manera que una petición deba transitar
por muchos componentes antes de que se devuelva una respuesta podría tener un
desempeño pobre. Por otro lado, un sistema estructurado de tal manera que los
componentes estén altamente acoplados entre ellos limitará severamente la
modificabilidad. Curiosamente, la estructuración tiene un impacto mucho menor
respecto a los requerimientos funcionales del sistema. Por ejemplo, un sistema
difícil de modificar puede satisfacer plenamente los requerimientos funcionales
que se le imponen.
Además de los atributos de calidad,
la arquitectura de software juega un papel fundamental para guiar el
desarrollo. Una de las múltiples estructuras que la componen se enfoca en
partir el sistema en componentes que serán desarrollados por individuos o
grupos de individuos. La identificación de esta estructura de asignación de
trabajo es esencial para apoyar las tareas de planeación del proyecto.
Finalmente, los diseños
arquitectónicos que se crean en una organización pueden ser reutilizados para
crear sistemas distintos. Esto permite reducir costos y aumentar la calidad,
sobre todo si dichos diseños han resultado previamente en sistemas exitosos.
Articulo tomado de: http://sg.com.mx/revista/27/arquitectura-software#.VeBpyvZ_Oko
Traigo este articulo a mi primera
entrada de la semana por que quiero resaltar el concepto de calidad a nivel de
diseños que debe existir en los proyectos de software. Actualmente en muchas
empresas no han captado la importancia que tiene la arquitectura de software en
las organizaciones, es claro que esta ya se debe tomar como un área más de las
empresas por que esta debe funcionar como receptora de los requerimientos críticos
a los cuales se les debe desarrollar modelos que cumplan con estándares de
calidad lo cual puede contribuir en desarrollo agiles y dinámicos. El papel de
la arquitectura toma más relevancia cuando se presentan problemas de huecos o gaps en cuando a
desarrollos complejos los cuales se convierten en talanqueras para las altas
gerencias.
No hay comentarios:
Publicar un comentario