LA ARQUITECTURA SOFTWARE. EL MODELO 4+1
Algunas
notas breves sobre la arquitectura software y su modelización en 4+1...
La arquitectura software trata el diseño e implementación de la
estructura de alto nivel del software. Es el resultado de ensamblar un cierto
número de elementos arquitectónicos para satisfacer la funcionalidad y
ejecución de los requisitos del sistema; así como los requisitos no
funcionales del mismo: fiabilidad, escalabilidad, portabilidad,
disponibilidad, etc. Perry y Wolf (1992) describen una arquitectura software
como:
Arquitectura Software = {Elementos, Formas,
Fundamento/Restricciones}
Es muy complejo capturar la arquitectura software en un sólo modelo (o
diagrama). Para manejar esta complejidad se representan diferentes aspectos
y características de la arquitectura en múltiples vistas. Una vista es “una
presentación de un modelo, la cual es una descripción completa de un sistema
desde una particular perspectiva” (Kruchten, 1995). El modelo más aceptado a
la hora de establecer las vistas necesarias para describir una arquitectura
software es el modelo 4+1 (Kruchten, 1995).
Este modelo define 4 vistas principlaes:
Vista Lógica (Logical View), modelo de objetos, clases, entidad
– relación, etc.
Y una vista más, la "+1", que se muestra y traza en cada una
de las anteriores y que está formada por las necesidades funcionales que
cubre el sistema, y que en ocasiones identificamos como vista de "casos
de uso". De donde deducimos que según este modelo, la arquitectura es en
realidad evolucionada desde escenarios
El modleo 4+1 aplica la ecuación de Perry y Wolf (1992) de forma
independiente para cada vista, por ejemplo, cada vista puede definir un
conjunto de elementos para su uso (componentes, contenedores y conectores).
Cada vista es descrita usando su particular y más adecuada notación
(por ejemplo, existen diagramas UML que se adapatan más a una vista que
otra). Para cada vista los arquitectos pueden escoger cierto esquilo
arquitectónico (patrón arquitectónico), permitiendo la coexistencia de
múltiples estilos en un sistema.
Y por último, también comentar que el modelo de vistas “4+1”
es “genérico”: otras notaciones y herramientas a parte de UML
pueden usarse, y cualquier método de diseño, especialmente para las
descomposiciones lógicas y de proceso.
Como sucede en otras muchas ocasiones, si bien el modelo no es
una metodología si que "sugiere" un método de trabajo. Parece
lógico que la vista de escenarios o casos de uso sea la de arranque, y que de
ahí se pase a la vista lógica. Desde la vista lógica afrontaremos la de
desarrollo y procesos, una vez que tenemos por ejemplo las clases definiremos
maneras de agruparlas y modos de ejecución. Para con todo concluir en la
vista física. Todo ello, obviamente, con sus correspondientes y típicas
iteraciones.
Se ha ido exponiendo a lo largo de la explicación de cada una de las
vistas su translación a un lenguaje de modelado concreto como UML. Hya que
tener en cuenta que UML nace casi a la vez que el modelo 4+1, por lo que en
un origen no existía una clara relación entre ambos, lo que amenudo produce
confusión al diseñador que en la actualidad quiere modelar una arquitectura
con ambas herramientas. A modo de resumen la translación se presenta en la
siguiente tabla:
D. Garlan
and M. Shaw, "An Introduction to Software Architecture," Advances
in Software Engineering and Knowledge Engineering, Vol. 1, World
Scientific Publishing Co., Singapore, 1993.
Perry D.
E., Wolf A. L., “Foundations for the Study of Software
Architecture,” ACM Software Engineering Notes, 17, 4, October 1992, 40-52.
K.P. Birman
and R. Van Renesse, Reliable Distributed Computing with
the Isis Toolkit, IEEE CS Press, Los
Alamitos, Calif. 1994.
©
Copyright Javier Garzás, all
rights reserved. All material on this site is copyrighted. For articles
attributed to named authors, they are the copyright of the corresponding
authors. Any unattributed articles are copyright Javier Garzás. Please link
freely to this site, but if you want to copy any of the materials you should
contact the authors first.
|
jueves, 6 de septiembre de 2012
1.1 Arquitectura de 4+1 vistas
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario