Está en la página 1de 14

Representación de la arquitectura

de software usando UML

Sandra Victoria Hurtado Gil


Universidad Icesi-I2T
shurtado@icesi.edu.co

RESUMEN En este artículo se presenta una for-


En los últimos años se han llevado a ma de representación de la arquitec-
cabo una gran cantidad de investiga- tura de software basada en UML,
ciones en el área de arquitectura de aprovechando las ventajas de este
software, buscando principalmente lenguaje de modelamiento e incluyen-
una forma de representación de un do varias estructuras que facilitan la
sistema que supere la informalidad representación de amplia variedad de
de las líneas y cajas pero que a la vez sistemas.
sirva de medio de comunicación con
PALABRAS CLAVES
los diferentes interesados en el pro-
Arquitectura de software, estructuras
yecto, es decir, que no sea demasiado
arquitecturales, Lenguaje Unificado
complejo. El desarrollo de lenguajes
de Modelamiento (UML), Lenguajes
de descripción de Arquitecturas da a
de descripción de arquitectura.
los ingenieros de sistemas una nue-
va herramienta para la acertada re- Clasificación: B
presentación de la arquitectura de un
sistema; sin embargo, los lenguajes ABSTRACT
desarrollados actualmente por lo ge- A significant amount of research has
neral son muy complejos o solo se been conducted in the Software Ar-
adaptan a un tipo particular de sis- chitecture field in the last few years.
temas. The focus of many of these studies is

SISTEMAS
& TELEMÁTICA 63
to find a representation system able This article presents an UML-based
to go beyond the informality of the scheme for software architecture re-
traditional “box-and-line” diagram, presentations. This novel scheme be-
but keeping a low complexity level, nefits from all the advantages of
so it can be used as a communication UML, and includes several structu-
tool between all the software project res that enable the representation of
stakeholders. an ample variety of systems.
Computer systems engineers now
may use Architecture Description
Languages as a valuable tool for a KEYWORDS
more accurate representation of the Software architecture, architectural
system’s architecture. However, most structures, unified modeling langua-
of these languages are very complex ge (UML), architecture description
or purpose-specific. languages.

64 SISTEMAS
& TELEMÁTICA
INTRODUCCIÓN tura de software son los Lenguajes de
Uno de los desarrollos más importan- Definición de Arquitecturas o ADL
tes dentro de la construcción del soft- (Architecture Description Language).
ware ha sido el desarrollo de la ar- Sin embargo, los lenguajes desarro-
quitectura de software, que permite llados hasta el momento presentan
representar la estructura de un sis- diferentes problemas para su utiliza-
tema a un nivel mayor que el dado ción en una empresa, como:
por la programación o incluso el di-
– Requieren una extensa capacita-
seño [Boa95], [SG96].
ción.
Para representar adecuadamente la
– No son amigables para presentar
arquitectura de un sistema es nece-
la arquitectura a personas ajenas
sario contar con varios diagramas o
a la construcción del software.
vistas [BCK98]. Dada la cantidad de
características y de elementos que – No tienen herramientas ni meto-
tiene un sistema de software no es dologías de apoyo.
posible incluirlos todos en un solo – Algunos se encuentran especiali-
diagrama y que sirva, además, para zados solo en un tipo particular
todas las personas que participan en de sistemas.
el desarrollo. Cada una de estas vis-
tas es una estructura de la arquitec- – Sólo tienen en cuenta una sola
tura del sistema, que muestran una estructura del sistema.
parte del sistema como un conjunto Las desventajas que se presentan en
de componentes, conectores y restric- estos lenguajes pueden ser superadas
ciones sobre sus tipos y relaciones. si se utiliza un lenguaje de modela-
Además, cada estructura puede rela- miento que sea conocido en la indus-
cionarse con las demás para comple- tria y que además esté apoyado por
mentar la visión integral del sistema. herramientas y metodologías de de-
La arquitectura, conformada por di- sarrollo, este lenguaje de modela-
ferentes visiones del sistema, consti- miento es UML, que se está convir-
tuye un modelo de cómo está estruc- tiendo en una notación estándar de
turado dicho sistema, sirviendo de hecho en las empresas.
comunicación entre las personas in- UML permite que se represente de
volucradas en el desarrollo y ayudan- manera semi-formal la estructura
do a realizar diversos análisis que general del sistema, con la ventaja de
orienten el proceso de toma de deci- que este mismo lenguaje puede ser
siones.
usado en todas las etapas de desarro-
Para que la arquitectura se convier- llo del sistema y su representación
ta en una herramienta útil dentro del gráfica puede ser usada para comu-
desarrollo y mantenimiento de los nicarse con los usuarios.
sistemas de software es necesario que
En la siguiente sección se describe de
se cuente con una manera precisa de
manera general el lenguaje de mode-
representarla.
lamiento UML y los mecanismos que
Las herramientas que se han elabo- presenta para su extensión. La sec-
rado para representar una arquitec- ción tres presenta una propuesta

SISTEMAS
& TELEMÁTICA 65
para representar las estructuras de Cada uno de estos elementos y rela-
arquitectura utilizando UML, y en la ciones tiene una representación grá-
sección cuatro se muestran trabajos fica y puede complementarse su in-
relacionados. Por último se plantea- formación utilizando lo que se conoce
rán las conclusiones de esta propues- como especificación. La especificación
ta de investigación y las posibilida- de un elemento o relación generalmen-
des de trabajos futuros a partir de te no es visible en la representación
ella. gráfica, o sólo lo es parcialmente, y
corresponde a los datos o propiedades
UML adicionales que completan o detallan
la semántica del elemento o relación,
Generalidades y por lo tanto del sistema en general.
UML es un lenguaje gráfico de mo-
delamiento que usa conceptos de Los elementos y relaciones se agru-
orientación por objetos. Este lengua- pan en diagramas que representan
je tiene una sintaxis y una semánti- diferentes aspectos del sistema. Los
ca bien definidas, sirviendo además diagramas de UML son:
para todas las etapas de desarrollo
[RMR98], [BRJ99]. – Diagrama de clases: Presenta las
clases, junto con sus atributos,
En UML se utilizan para el modela- operaciones, interfaces y relacio-
miento de un sistema diferentes ele- nes. También presenta el agrupa-
mentos y relaciones, que tienen una miento de clases en paquetes y las
semántica y sintaxis definidas. Estos relaciones entre ellos.
elementos se agrupan en diagramas
preestablecidos que corresponden a – Diagrama de objetos: Muestra ins-
diferentes proyecciones del sistema. tancias de clases (objetos) con va-
lores en sus atributos y relaciones.
Los elementos básicos de UML, aque-
llos que representan principalmente – Diagrama de casos de uso: Los
las partes estáticas del sistema, son: escenarios de uso del sistema, in-
cluyendo los roles de los usuarios.
– Clases
– Diagramas de interacción: Com-
– Casos de uso prende los diagramas de secuen-
– Componentes cia y de colaboración. Presenta ob-
jetos y relaciones entre ellos des-
– Nodos de el punto de vista dinámico.
– Paquetes – Diagrama de estado: Representa
Las relaciones que se utilizan para los posibles estados, eventos y
establecer conexiones entre los ele- transiciones entre las clases u
mentos son: objetos.
– Dependencia – Diagrama de componentes: Orga-
nización y dependencia entre com-
– Asociación
ponentes físicos.
– Generalización
– Diagrama físico (deployment): La
– Realización distribución y comunicación de los

66 SISTEMAS
& TELEMÁTICA
componentes en los dispositivos Por ejemplo, si se desea mostrar un
de hardware. nuevo elemento en el diagrama de
componentes que represente a un sis-
La gran ventaja de UML es el he-
tema externo (como una librería, un
cho de que poco a poco se ha venido
programa servidor, etc.) puede crear-
adoptando en diferentes medios em-
se un estereotipo basado en el ele-
presariales y académicos como el
mento componente. Este estereotipo
lenguaje “estándar” para el análi-
puede tener una representación grá-
sis y diseño de los sistemas de soft-
fica diferente a la de los componen-
ware. Gracias a la posibilidad de
tes para que sus elementos sean iden-
extender el UML y a la construcción
tificados más fácilmente en el diagra-
de herramientas y metodologías que
ma. Además pueden adicionarse al
apoyan este lenguaje se ha conver-
estereotipo otras propiedades que no
tido en el estándar de facto en la
tenga un componente, como el nom-
actualidad para el modelamiento de
bre del responsable de dicho sistema.
los sistemas.
En la Figura 1 se muestra un ejem-
Mecanismos de extensión plo de un diagrama de componentes
UML tiene principalmente tres me- que incluye un elemento con el nue-
canismos de extensión que permiten vo estereotipo externo. En el diagra-
construir nuevos elementos o modifi- ma aparecen dos componentes (A y
car la semántica de los ya existentes, B) y un sistema externo (Ext). En este
para hacer más precisa la represen- caso el estereotipo tiene una repre-
tación del sistema. Estos mecanismos sentación gráfica que lo diferencia de
son: los componentes, pero también pue-
de tener el mismo icono de los com-
1. Valores Adicionados (tagged
ponentes y llevar el nombre del este-
values): Mediante estos valores es
reotipo para diferenciarlo.
posible adicionarle nuevas propie-
dades o atributos a los elementos
del modelo de UML.
2. Restricciones (constraints): Las
restricciones permiten adicionar
nueva semántica o modificar la A B
existente.
3. Estereotipos: Los estereotipos
permiten crear nuevos elementos Ext
en el modelo basados en otros ya Ext
existentes. Cada nuevo estereoti-
po puede reunir propiedades (ta-
gged values) y restricciones par-
ticulares.
A través de estas extensiones es po- Figura 1. Diagrama de componen-
sible enriquecer el modelo de UML tes adicionando un ele-
para representar adecuadamente los mento con el estereotipo
diferentes aspectos del sistema. externo

SISTEMAS
& TELEMÁTICA 67
ESTRUCTURAS 2. Actores
DE ARQUITECTURA EN UML Un actor es una persona, sistema o
La primera fase del proyecto es la dispositivo que interactúa con el sis-
identificación de los componentes que tema, iniciando, recibiendo los resul-
participan en la descripción de la ar- tados o participando en alguna de las
quitectura de un sistema, y luego sus acciones de un caso de uso. Por lo ge-
relaciones en las diferentes estructu- neral representa un rol, por ejemplo:
ras. Para cada componente y conec- jefe de contabilidad, profesor, etc.
tor se determinan los elementos de
Representación:
UML que los representan, con su sin-
taxis y semántica. Algunos compo- Se usa el elemento Actor de UML.
nentes o estructuras no tendrán una
representación directa y en este caso
se utilizarán los mecanismos de ex-
tensión que provee UML, como este-
reotipos o restricciones.
Como parte integral de cada estruc- Nombre
tura se deben incluir restricciones
adicionales que determinan las rela- 3. Módulos
ciones y los tipos de componentes y Un módulo es una división conceptual
conectores que pueden aparecer en del sistema que puede ser visto como
dicha estructura. una agrupación de funciones que ten-
Por último en el proyecto se presen- gan alguna relación entre ellas y, por
tan las relaciones existentes entre las lo tanto, puede presentar un servicio
diferentes estructuras y la manera de completo al exterior una vez se ha
verificar dichas relaciones, lo que desarrollado.
ayudará a la persona que modela la Representación:
arquitectura del sistema a validar la Un modulo se representa con el ele-
consistencia de esta última. mento Paquete de UML.
COMPONENTES
1. Casos de uso (componentes Nom.
conceptuales)
Un caso de uso representa un reque-
rimiento funcional del sistema o un
4. Clases
proceso del negocio que se implemen-
Una clase es la representación abs-
ta en el sistema de software.
tracta de un conjunto de objetos o
Representación: artefactos que debe modelar el siste-
Se usa el mismo elemento Caso de ma. Cada clase incluye las caracte-
Uso de UML rísticas y el comportamiento de los
objetos que representa. Una clase
puede ser de tipo interfaz (interactúa
con el exterior), control (realiza ope-
raciones y controla otras clases) u
Nombre entidad (hace persistentes los datos).

68 SISTEMAS
& TELEMÁTICA
Representación: 7. Herramientas de software
Es el mismo elemento Clase de UML Sistemas o programas que contribu-
yen al adecuado funcionamiento del
Nom. sistema. Por ejemplo, el sistema ope-
rativo, un programa navegador de In-
ternet, la máquina virtual de java, etc.
Representación:
Se crea el estereotipo Herram, basa-
do en el elemento componente de
5. Unidades de Software UML.
Conjunto de funciones (en programas
o procedimientos) que realizan las <<herram>>
acciones del sistema y que se imple-
Nom.
mentan en archivos físicos. Las uni-
dades de software tienen asociado un
tipo (valor adicionado), que puede ser: 8. Procesador
filtro, procedimental, objetos, reposi- Este componente representa un com-
torio de datos activo u otro. putador (procesador y memoria) don-
Representación: de se localizan programas o datos y
donde, por lo general, se corren di-
Se usa el elemento Componente de chos programas. Este procesador pue-
UML. de tener roles como servidor, cliente,
terminal, etc. Además, puede estable-
cerse su ubicación física (ciudad o
Nom. área de la organización) para comple-
mentar la información de este com-
ponente.
6. Sistemas externos Representación:
Un sistema externo representa un Se usa el elemento Nodo de UML.
sistema de la organización que inte-
ractúa con el sistema que se está de-
sarrollando. Por ejemplo, el sistema
de contabilidad (si se está desarro- Nom.
llando el de recursos humanos).
Representación:
9. Dispositivo
Se creará un estereotipo para repre-
El dispositivo es un componente o ele-
sentar a este componente. El estereo-
mento de hardware que presenta una
tipo, llamado Externo, está basado en
interacción con el sistema. Por ejem-
el elemento componente de UML.
plo, un medidor de presión, un ter-
minal de computadores o un módem.
<<ext.>> Representación:
Nom. Se crea un estereotipo Dispos basado
en elemento nodo de UML.

SISTEMAS
& TELEMÁTICA 69
A. Componentes:
– Casos de uso
<<dispos>>
– Actores
Nom.
B. Conectores:
Generalización (herencia): Indica que
un componente hereda el comporta-
miento y atributos del otro.
Estructuras
Para el proyecto de investigación se
ha desarrollado la forma de represen-
tación de ocho estructuras. Para cada – Participación: Permite relacio-
una se identifican los componentes, nar a los actores con los casos
los conectores y las restricciones que de uso, indicando así que se pre-
deben cumplirse. A continuación, a senta algún tipo de interacción
manera de ejemplo, se presentan dos entre el actor y el sistema a tra-
estructuras, la estructura funcional vés del caso de uso.
y la estructura de llamados.
{tipo participación}
1. Estructura funcional
Esta estructura representa las fun- – Inclusión: Representa que las
ciones que ofrece el sistema a los acciones del caso de uso que re-
usuarios finales, a otros sistemas o cibe la relación se adicionan a
dispositivos, es decir, lo que represen- las acciones del caso de uso que
ta el sistema para los que interactúan la inicia.
con él. Puede verse esta estructura <<include>>
como la visión conceptual del siste-
ma, permitiendo determinar los as- – Inclusión condicionada: Se adi-
pectos del negocio que se desean im- cionan las acciones del caso de
plementar en el sistema. uso que recibe la relación, pero
Esta es una de las estructuras más sólo cuando se cumple una con-
importantes en un sistema, ya que dición dada.
ayuda a la captura de los requeri- <<condic>>
mientos y se convierte en un medio
{condición}
de comunicación útil con los usuarios,
permitiendo ver gráficamente las re-
laciones de los usuarios con el siste-
C. Restricciones:
ma y los procesos del negocio identi-
ficados por ellos mismos. – Entre dos casos de uso no puede
presentarse simultáneamente la
La estructura funcional corresponde
relación inclusión e inclusión
al diagrama de casos de uso de UML,
Condicionada, sólo una de ellas.
pero pueden adicionarse nuevos tipos
de conectores o restricciones, que – Entre dos actores sólo puede
muestren relaciones de alto nivel en- utilizarse el conector generali-
tre los casos de uso y/o actores. zación.

70 SISTEMAS
& TELEMÁTICA
– El conector de participación sólo – Si la generación del evento se rea-
puede relacionar un actor y un liza de manera condicional puede
caso de uso. incluirse la condición en la repre-
– Un componente (caso de uso o sentación gráfica
actor) no puede ser simultánea- {Cond1}
mente hijo y padre de otro com-
ponente usando el conector ge- <<evento>>
neralización Evento 1
– El conector generalización no
puede establecerse entre un – Uso: Este conector permite que
caso de uso y un actor se relacionen los componentes
con los conectores servicio y
2. Estructura de llamados
evento, que presentan los otros
En esta estructura se presentan los
componentes, indicando así la
servicios que ofrece y los eventos que
interacción o dependencia entre
genera cada unidad de software, se-
ellos. El tipo del conector indi-
ñalando además las relaciones de
ca la forma por la cual se reali-
dependencia que se presentan entre
za la interacción. Este tipo pue-
estas unidades por llamar un servi-
de ser pipe, llamado remoto, lla-
cio o escuchar un evento de otra uni-
mado directo, escucha trigger,
dad.
escucha evento u otro.
A. Componentes:
– Unidades de software
– Sistemas externos
C. Restricciones:
B. Conectores:
– Todo conector uso debe estar re-
– Servicio: Este conector represen- lacionado con uno y solo un co-
ta los servicios que ofrece una uni- nector servicio o evento.
dad de software o sistema exter-
no, y que pueden ser utilizados por – Todo sistema externo debe te-
otros componentes o por el usua- ner por lo menos un conector,
rio final mediante un llamado ex- ya sea servicio, evento o uso.
plícito. – Si un sistema externo tiene un
conector servicio o evento, éste
Nombre no puede encontrarse sin rela-
ción con un conector uso de otro
– Evento: Representa los eventos componente.
que dispara una unidad de soft-
– Los conectores servicio o even-
ware o sistema externo, y que
to pueden relacionarse con múl-
pueden ser escuchados por otros
tiples conectores uso.
componentes.
– Un conector uso, que se relacio-
ne con un conector servicio sólo
<<evento>> puede ser de tipo pipe, llamado
Nombre remoto, llamado directo u otro.

SISTEMAS
& TELEMÁTICA 71
– Un conector que se relaciona estructuras, lo que permite que las
con un conector evento sólo pue- diversas visiones que se tienen del
de ser de tipo escucha trigger, sistema se complementen adecuada-
escucha evento u otro. mente.
3. Otras estructuras
SISTEMA
Las otras estructuras identificadas
Formado por
para representar la arquitectura de
un sistema son:
Está identificada
– Estructura modular: Presenta Módulos
dentro de Clases

una división del sistema en mó-


dulos más pequeños o subsiste- Implement
a
mas. Participa en la
realización de
Compuesto
– Estructura de uso: Permite mos- por
trar las relaciones de dependen- Casos de
uso
cia que se presentan entre los Implementa

componentes del sistema.


Participa en la
– Estructura de clases: Esta estruc- realización de

tura es similar al diagrama de


clases presentado en UML, y re- Unidades
de Software
presenta el modelo lógico de los
datos necesarios en el sistema.
Ubicado en
Interactúa
– Estructura de flujo de datos: con
Modela el intercambio de datos
e información que relaciona los Ubicado en
diferentes componentes de soft- << >> Procesador

ware.
Sistemas Externos – Interactúa con
– Estructura de sincronización: Co- Herramientas de
Software
rresponde a las relaciones de sin-
cronización y de concurrencia que << >>

se dan entre los componentes, in-


dicando las restricciones que son Dispositivos
D spos t vos

necesarias para el correcto fun-


cionamiento del sistema.
Figura 2. Relaciones entre los com-
– Estructura física: Permite mo- ponentes de la arquitectu-
delar la distribución de los com- ra de software
ponentes del sistema en los di-
ferentes dispositivos físicos o de
hardware de que se dispone. En la Figura 2 se resumen las prin-
cipales relaciones entre los compo-
Relaciones entre estructuras nentes de la arquitectura del siste-
Una parte fundamental de la arqui- ma. Además de estas relaciones, las
tectura de software es la relación en- estructuras presentan restricciones
tre los diferentes componentes de las entre sí que permiten integrar toda

72 SISTEMAS
& TELEMÁTICA
la visión del sistema. Ejemplos de sólo se presenten mensajes de error
estas restricciones son: cuando se encuentren inconsisten-
cias.
– Todo caso de uso debe ser im-
plementado en un módulo, es Por último es importante resaltar que
decir, no pueden encontrarse algunas relaciones entre las estruc-
casos de uso que no se relacio- turas pueden servir de base para la
nen con algún módulo. elaboración de otras estructuras o
diagramas que no corresponden a la
– Toda clase debe participar en la
arquitectura del sistema, por lo que
realización de por lo menos un
no se detallan en este proyecto, pero
caso de uso.
son importantes para su desarrollo.
– Toda relación establecida entre Por ejemplo, puede elaborarse un
una unidad de software y un diagrama de interacción entre las
caso de uso debe corresponder unidades de software para mostrar en
a una relación que exista entre detalle cómo implementan las accio-
un caso de uso y una clase y nes de un caso de uso, pero esto ha-
entre ésta y una unidad de soft- ría parte del diseño detallado del sis-
ware. tema.
– Si una clase se identifica con un
módulo debe participar en la TRABAJOS RELACIONADOS
realización de por lo menos un A medida que el concepto de arqui-
caso de uso que implemente el tectura de software evolucionaba, di-
módulo. ferentes grupos empezaron a desarro-
llar lenguajes de descripción de ar-
– ... quitecturas u otras formas para re-
presentar la arquitectura de un sis-
Esta relación entre las diferentes
tema. De estos desarrollos pueden
componentes de las estructuras no
resaltarse algunos aspectos impor-
sólo permite que se tenga una visión
tantes y su relación con el presente
integral del sistema sino que se pue-
trabajo.
dan realizar comprobaciones relacio-
nadas con la completitud del sistema. Algunos trabajos presentan grafos o
Por ejemplo, cuando se modelan las gramáticas de grafos para represen-
unidades de software cada una debe tar una arquitectura [Met96]. Este
relacionarse con una o más clases, y tipo de representación se asemeja
si hay alguna unidad de software que mucho al tradicional esquema de ca-
no se relaciona con ninguna clase jas y flechas con el cual se modela la
puede significar que ha sido omitido “arquitectura” del sistema, con la
algún objeto o artefacto en el modelo ventaja de que le adiciona mayor for-
lógico de datos. malismo. Sin embargo, esta represen-
tación no incluye la semántica de los
Las verificaciones pueden realizarse
diferentes componentes ni la relación
de forma manual por las personas que
entre las diversas estructuras.
elaboran las diferentes estructuras de
la arquitectura del sistema, pero tam- La mayoría de las investigaciones se
bién pueden ser asistidas por herra- han orientado al desarrollo de lengua-
mientas automáticas, de manera que jes de definición de arquitecturas, en-

SISTEMAS
& TELEMÁTICA 73
tre los cuales se encuentran Unicon, do en un lenguaje de modelamiento
Rapide, C2, Sadl, Wrigh, y otros muy conocido.
[Ves93]. Estos lenguajes presentan
Esta propuesta también presenta la
ventajas para representar sistemas
ventaja de incluir diferentes estruc-
específicos o para realizar diferentes
turas de la arquitectura que se rela-
tipos de análisis. Su desventaja es que
cionan entre sí, permitiendo que to-
por lo general sólo incluyen una es-
das las personas interesadas en el
tructura y su representación textual
sistema tengan varias visiones del
es muy compleja, lo que hace difícil su
utilización en las organizaciones. mismo y puedan analizar los compo-
nentes y sus relaciones en cada una
Por último la utilización de UML para de ellas.
representar arquitecturas de soft-
ware, presentada en [Kru95] y Para apoyar esta forma de represen-
[JBR99], no adiciona realmente un tación pueden desarrollarse herra-
nuevo nivel de abstracción, pues se mientas que automaticen en parte el
basa en agrupar los elementos más proceso de elaboración, verificación y
importantes de los diferentes diagra- análisis de la arquitectura. Por ejem-
mas de UML. plo, pueden verificarse las restriccio-
nes generales establecidas para cada
CONCLUSIONES Y TRABAJOS estructura o para las relaciones en-
FUTUROS tre las estructuras.
Para poder aprovechar los beneficios
que presenta la arquitectura de soft- Para involucrar los estilos de soft-
ware es importante que se involucre ware en la representación pueden ela-
como una nueva disciplina dentro del borarse restricciones para los compo-
desarrollo de un sistema en las orga- nentes, conectores y estructuras para
nizaciones. Este objetivo se logra no que representen a un estilo de arqui-
sólo con el aprendizaje de los nuevos tectura en particular. También es
conceptos, sino también con el cono- posible realizar análisis posteriores
cimiento y utilización de herramien- a la arquitectura del sistema, para
tas que apoyen el desarrollo de la ar- determinar si pertenece a algún esti-
quitectura del sistema. lo de software.
La propuesta que se ha presentado Otro trabajo que se puede desarrollar
de representar la arquitectura de un a partir de la forma de representa-
sistema utilizando el lenguaje de ción mostrada en esta propuesta es
modelamiento UML apoya la difusión la construcción de metodologías (o
de los conceptos de la arquitectura de modificación de existentes) que inclu-
software, ya que facilita su apropia- yan la arquitectura del sistema en el
ción en las empresas por estar basa- proceso de desarrollo.

74 SISTEMAS
& TELEMÁTICA
REFERENCIAS ture Description Languages with a
Standard Design Method. 20th In-
[BRJ99] Grady Booch, James Rumbaugh ternational Conference on Software
e Ivar Jacobson. The Unified Mode- Engineering, 1998.
ling Language User Guide. Rational [SDK95] Mary Shaw, Robert DeLine,
Software Corporation. Addison-Wes- Daniel V. Klein, Theodore L. Ross,
ley, 1999. David M. Young y Gregory Zelesnik.
[BCK98] Len Bass, Paul Clements y Rick Abstractions for Software Architec-
Kazman. Software Architecture in ture and Tools to Support Them.
Practice. Sei Series In Software Ar- IEEE Transactions on Software En-
chitectures. Addison Websley, 1998. gineering, Vol. 21. No. 4, Abril 1995.
[Boa95] Maarten Boasson. The Artistry [SG96] Mary Shaw y David Garlan. Soft-
of Software Architecture. IEEE Soft- ware Architecture Perspectives on an
ware, Vol. 12, No. 6, November 1995 Emerging Discipline. Prentice Hall,
(pp. 13-16). 1996.

[GP95] David Garlan, Dewayne E. Perry. [Ves93] S. Vestal. Acursory Overview and
Introduction to the Special Issue on Comparison of Four Architecture
Software Architecture. IEEE Tran- Description Languages. Tecnical
sactions on Software Engineering, Report, Honeywell Tecnology Cen-
Vol. 21, No. 4, Abril 1995 (pp. 269- ter, Febrero 1993.
274).
[JBR99] Ivar Jacobson, Grady Booch y
James Rumbaugh. The Unified Soft-
ware Development Process. Rational
Software Corporation. Addison-Wes- CURRILUM
ley, 1999.
[Kru95] Philippe Kruchten. The “4+1” Sandra Victoria Hurtado Gil. Ingenie-
View Model of Software Architectu- ra de Sistemas de la Universidad
re. IEEE Software, Vol. 12, No. 6, Icesi. Realizó la maestría de inge-
November 1995 (pp. 42-50). niería de Sistemas y computación
en la Universidad de los Andes,
[Met96] Daniel Le Métayer. Software Ar-
con concentración en construcción
quitecture Styles as Graph Gram-
mars. Irisa/Inria. 1996. de software. Trabajó en el grupo
de desarrollo de Sistemas de la
[RMR98] Jason E. Robbins, Nenad Med- Universidad Icesi y actualmente
vidovic, David F. Redmiles y David es jefe del Departamento de Siste-
S. Rosenblum. Integrating Architec- mas en esta misma institución.

SISTEMAS
& TELEMÁTICA 75
76 SISTEMAS
& TELEMÁTICA

También podría gustarte