Beruflich Dokumente
Kultur Dokumente
Luis Ignacio Lizcano Bueno guerra de metodologías, eran solo cuales habían sido reconocidas en
Universidad Francisco de Paula Santander
estudiados solo dentro de las uni- conjunto como las tres principales
llizcano@yahoo.com
versidades en principio como una metodologías de modelado de
nueva técnica de programación y objetos a nivel mundial. Por está
luego de la Ingeniería del software. A razón y otras razones como autores
RESUMEN partir de estas experiencias de metodologías se sintieron
comenzaron a aparecer nuevas motivados para crear un UML:
Un Lenguaje Unificado de Modelado generaciones formales de metodo-
(UML: Unified Modeling Language) logías, de entre las que se destacan Cuando comenzaron con la unifi-
es una herramienta que permite sólo unas pocas, vale la pena men- cación, establecieron tres metas
modelar software orienta- cionar la metodología de Booch para su trabajo:
do a objetos a través de un amplio [Booch 1994], la metodología OOSE
vocabulario gráfico enfocado a la (Object Oriented Software 1.Que se pudieran modelaran sis-
representación conceptual y física Engineering: Ingeniería del Software temas, desde la descripción con-
de los sistemas de software. Orientada a Objetos) de Jacobson ceptual hasta los elementos eje-
Actualmente es un estándar adop- [Jacobson 1992] y la m e t o d o l o g cutables, utilizando técnicas
tado por el grupo de desarrollo en o í a O M T ( O b j e c t Modeling orientadas a objetos.
b j e t o s ( O M G : O b j e c t Technique: Técnica de M o d e l a d 2.Cubrir las cuestiones relaciona-
Management Group). o d e O b j e t o s ) d e Rumbaugh das con el tamaño inherente a los
[Rumbaugh 1996]. Otras sistemas complejos y críticos.
En este trabajo se presenta una metodologías que merecen ser 3.Crear un lenguaje de
introducción a este lenguaje, se mencionadas son: Fusión, las modelado para que pueda ser
muestran los diferentes componen- ampliaciones a Shalaer-Merllor y de utilizado tanto por las personas
tes que lo forman y se explican Coad-Yourdon entre otras como por máquinas.
brevemente sus funciones.
Cada método es completo dentro del El esfuerzo de generar un UML
contexto, tienen sus puntos fuertes y comenzó en octubre de 1994,
1 INTRODUCCION sus debilidades. Por ejem- cuan-do Rumbaugh se unió a
plo la metodología de Booch es Booch en Rational. El objeto inicial
Los lenguajes de modelado orienta- particularmente expresiva durante del proyecto fue una unificación de
dos a objetos aparecieron en un las fases de diseño y construcción de los métodos de Booch y OMT. El
momento entre la mitad de los proyectos, la OOSE proporcio-na un borra-dor de la versión 0.8 (como
setenta y finales de los ochenta soporte excelente para los casos de fue llamada en ese entonces) se
cuando los metodologos, enfrenta- uso como forma de dirigir la toma de publi-có en octubre de 1995. En
dos a los nuevos lenguajes de requisitos, el análisis y el diseñó de esa época Jacobson se unió a
programación orientados a objetos y alto nivel, y la OMT-2 es importante Rational y el proyecto se amplió al
a sus aplicaciones, cada vez más para el análisis y para los sistema de incorpo-rar OOSE. Los esfuerzos
complejas, empezaron a experi- información con gran cantidad de se plasma-ron en los documentos
mentar con enfoques alternativos al datos. de la versión 0.9 en junio de 1996.
análisis y el diseño. El número de
métodos orientados a objetos se Una gran cantidad de críticas Durante 1996 se solicitó la opinión
incrementa de más de 10 a 50 comenzaron a formarse en la de la comunidad internacional
durante el período entre 1989 y primera mitad de los noventa, relacionada con la Ingeniería del
1994. Muchos usuarios de estos cuando Grady Booch (de Rational software. Durante este mismo tiem-
ambientes tenían el problema al Software Corporation), Ivan po se noto que muchas organiza-
intentar encontrar documentación de Jacobson (de Objectary) y James ciones de software veían en UML,
modelado que cubriera sus nece- Rumbaugh (de General Electric) como un punto estratégico a sus
sidades completamente, alimen- empezaron a adoptar ideas cada negocios. Se estableció un consor-
tando de esta manera la llamada uno de las otras metodologías, las cio de UML con varias organizacio-
Revista Respuestas 25
nes que querían dedicar recursos para trabajar hacia una definición consis- los para visualizar y controlar mejor
tente y completa de UML. el sistema a construir, muchas veces
descubriendo oportunidades para la
Las organizaciones que participaron en la versión 1.0 de UML fueron: Digital simplificación y la reutilización. Se
Equipment Corporation, Hewlett Packard, I-Logix, IntelliCorp, IBM, ICON construyen modelos para con-
Completing, MCI-Systemhome, Microsoft, Oracle, Rational, Texas trolar el riesgo.
Instruments y Unisys. Esta colaboración produjo un lenguaje de modelado
expresivo, bien definido, potente y aplicable a un amplio espectro de 2.1 PRINCIPIOS DE
dominios de problemas. UML 1.0 se ofreció para su estandarización a MODELADO
Object Manager Group (OMG) en enero de 1997 en respuesta a su solicitud
de propuesta para un lenguaje estándar de modelado. El uso del modelado tiene una his-
toria interesante en todas las disci-
El grupo inicial de colaboración se amplió para incluir prácticamente el plinas de Ingeniería. Esa experien-
resto de organizaciones que habían enviado algunas propuestas o ideas cia sugiere cuatro principios bási-
a la propuesta inicial al OMG. UML 1.1 fue adoptado por el OMG el 14 cos del modelado.
de noviembre de 1997. La RTF (Revision Task Force) publicó una
versión editorial, UML 1.2 en junio de 1998, versiones posteriores han Primero: La elección de los modelos a
aparecido según lo detalla el siguiente diagrama. crear tiene una profunda influen-
cia sobre cómo se acomete un pro-
El siguiente diagrama muestra la evolución en el tiempo de UML. blema y cómo se le da forma a una
solución.
08/01 UML 1.5
Segundo: Todo modelo es expresa-
05/01 UML 1.4
do a distintos niveles de precisión.
10/98 UML 1.3
06/98 UML 1.2
Tercero: Los mejores modelos
11/97 UML 1.1
01/97 UML 1.0 Remitido a OMG están ligados a la realidad.
06/96 UML 0.9
Cuarto: Un único modelo no es
10/95 UML 0.8
suficiente. Cualquier sistema no trivial
10/95 Unified Method UML Partner´s Expertise
es abordado mejor a través de
90-94 Booch 93 OMT-2 OOSE
modelos independientes entre sí.
Booch 91 OMT-1
80´s Object Oriented Techniques
3 MODELADO ORIENTADO
70´s Structured Analysis and Design
A OBJETOS
Figura 1. Evolución de la Ingeniería de software
Los Ingenieros Civiles construyen
muchos tipos de modelos. Lo más
frecuente es que utilicen modelos
2 MODELADO DE SISTEMAS
estructurales que les ayuden a
Una empresa de software con éxito es aquella que produce de manera consis- visualizar y especificarlas apartes de
los sistemas y la forma en que esas
tente software de calidad que satisface las necesidades de los usuarios. Una
estructuras se relacionan entre sí.
empresa que puede desarrollar ese software de forma probable y persistente
con un uso eficiente y efectivo de recursos, tiene un negocio sostenible.
Dependiendo de las cuestiones más
importantes del sistema o de la
El modelado es una parte central de todas las actividades que conducen a la
Ingeniería que les preocupan, los
producción de un buen software. Se construyen modelos para comunicar la
Ingenieros podrían construir mode-
estructura deseada y el comportamiento de un sistema. Se construyen mode-
Revista Respuestas 27
Los elementos estructurales son y pueden también migrar de 2. Asociación
las partes estáticas de un modelo un nodo a otros. 3. Generación
y representan objetos conceptua- 4. Realización
les o concretos del dominio, Existen otras variaciones de
existen siete distintos tipos de estos elementos, pero estos son Una dependencia es una relación
elementos estructurales. los más importantes. semántica entre dos clases en la cual
un cambio de un elemento
- Clase, descripción de un conjun- Los elementos de comportamien- (independiente) puede afectar la
to de objetos que comparten los to son las partes dinámicas de los semántica de otro (dependiente). Una
mismos atributos, operaciones, modelos UML. asociación es una relación estructural
relaciones y semántica. que describe un conjun-
- Interfaz, es una colección de ope- - Interacción, es un comporta- to de ligas, las cuales representan
raciones que especifican un servicio miento que comprende un con- conexiones a través de objetos. La
de una clase o compo- junto de mensajes intercambia- agregación es una clase especial de
nente. Describe el comporta- asociación que representa una
miento visible externamente de una bles entre un conjunto de obje-
tos, dentro de un contexto parti- relación de estructura entre un con-
clase.
- Colaboración, define una inte- cular para alcanzar un propósito junto y sus partes. La generalización
racción y es una sociedad de roles y específico. es una relación de especializa-
otros elementos que colaboran un - Máquina de estados, es un com- ción/generalización en la cual los
comportamiento cooperativo mayor objetos de un elemento especializa-
portamiento que específica las
que la suma de los comportamientos
secuencias de estados por los do (hijos) son consistentes con los
de sus elementos.
que pasa un objeto o una inte- objetos de un elemento generaliza-
- Caso de uso, es una descripción de
un conjunto de seriación de racción durante su vida en res- ble (el padre). De esta forma, los hijos
acciones que un sistema ejecuta y puesta a eventos, unto con sus comparten la estructura y com-
que produce un resultado reacciones a estos eventos. portamiento del padre. Una realiza-
observable de interés para un actor ción es una relación semántica entre
particular. Los elementos de agrupación clasificadores, en donde un
- Clase activa, es una clase cuyos clasificador especifica un contrato que
son las partes organizativas de
objetos tienen uno o más proce-
los modelos UML. otro clasificador garantiza llevar a
sos o hilos de ejecución y por lo
cabo. Se pueden encontrar
tanto pueden dar origen a activi-
dades de control. - Paquete, es el elemento de agru- realizaciones en dos partes: entre
- Componente es una parte física y pación principal. Es un mecanis- interfaces y las clases o componen-
reemplazable de un sistema que mo de propósito general para tes que las realizan, y entre casos de
forma un conjunto de inter- organizar elementos en grupos. uso y las colaboraciones que los
faces y proporciona la imple- realizan.
mentación de dicho conjunto. Los elementos de anotación son las
- Nodo, es un elemento físico que
partes explicativas de los mode-
existe en tiempo de ejecución y 4.1.3 Diagramas en UML
los UML. Son comentarios que se
representa un recurso computa-
pueden aplicar para describir, cla-
cional que por lo general dispone de
sificar y hacer observaciones sobre Un diagrama es la representación
algo de memoria y con fre-
cualquier elemento de un modelo. El gráfica de un conjunto de elemen-
cuencia capacidad de procesa-
principal elemento de anotación es la tos conectados entre sí. Estos
miento. Un conjunto de compo-
nota. diagramas son en forma de grafos
nentes puede residir en un nodo
conectados donde los vértices
4.1.2 Relaciones en UML representan elementos y los arcos
relaciones.
Hay cuatro tipos de relaciones
1. Dependencia Los diagramas sirven para visualizar
Revista Respuestas 29