Sei sulla pagina 1di 68

Tcnicas UML Doc.

1/3

Objetivos

Brindar los conceptos de UML, y poder realizar anlisis y diseo de sistemas de informacin. Entre los objetivos especficos se mencionan
!oder

diferenciar los diferentes dia"ramas y s#s propsitos. $ominar los conceptos de los $ia"ramas de %asos de Uso, $ia"ramas de %lases, $ia"ramas de &ec#encia, $ia"ramas de %olaboracin, $ia"ramas de Estado, $ia"ramas de 'ctividad, $ia"ramas de !a(#etes y $ia"ramas de $istrib#cin.

Conceptos Generales

UML es el Len"#aje Modelado Unificado. Este debe ser visto como #n len"#aje, ya (#e c#enta con re"las. En esta, se )ace #na introd#ccin a los conceptos necesarios para vis#alizar #n sistema de soft*are, #n procesos, #na notacin y #na )erramienta. 'dems de presentar la )istoria del UML. &e indicarn s#s beneficios e inconvenientes de la )erramienta en la aplicacin para el anlisis y diseo de sistemas. &e presentar la similit#d de al"#nos dia"ramas del UML, con dia"ramas de modelado estr#ct#rado. En esta se presentan conceptos a cada #no de los dia"ramas del UML, planteando ejemplos, para s# mejor comprensin. En la act#alidad e+iste #na variedad de soft*are con los (#e se p#ede desarrollar dia"ramas en UML, tales como ,isio, ,is#al Modeler, -ational -ose, &ELE%. Enterprise, ,is#al UML, /$!ro, 0racle, !o*ersoft entre otros. En #n principio el UML estaba destinado para ser #tilizado en len"#ajes no vis#ales, tales como 1ava, %22 y !rocesos Unificados, pero en s#s versiones ms recientes, esta incorporado otros como ,is#al %, ,is#al Basic, !o*erB#ilder y 0racle. .anto la edicin Enterprise como la edicin !rofessional de Microsoft3 ,isio3 4555 incl#yen sol#ciones para la #tilizacin de cdi"o de t6cnicas de in"eniera inversa en dia"ramas de estr#ct#ra esttica de UML. 'mbas sol#ciones admiten tres len"#ajes Microsoft3 ,is#al %223 7.5, Microsoft3 ,is#al Basic3 7.5 y Microsoft3 ,is#al 1223 7.5. La versin del estndar de UML empleada por la sol#cin de dia"ramas de ,isio es la 8.4. %#ando se desee or"anizar #n proceso de diseo con el fin de (#e tantos los analistas, clientes, desarrolladores y #s#arios clientes comprendan los procesos de anlisis, diseo del sistema, se deber contar con UML como sol#cin. !or tradicin, se afirmar (#e #n b#en diseo debe ser el res#ltado de #n c#idadoso anlisis de los re(#erimientos de los clientes.

Claves para el desarrollo


La clave para el desarrollo de los sistemas de informacin, es considerando los factores de #n s#ceso

Notacin %onocimiento estndar para identificar los diferentes elementos de #n dia"rama. Esta p#ede tener variantes 9smbolos: de #na )erramienta en otra, pero se mantienen el concepto y s# accin. !rocesos Es la identificacin de los procesos (#e se invol#cran en #n sistema, es decir conocer la problemtica del sistema. "erra#ientas El conocimiento de la )erramienta de desarrollo del anlisis y diseo.

Una de estas facetas (#e no este presente en la aplicacin del UML, )ara fallar #n dia"rama.

$ases
Notacin

Herramientas

Procesos

"istoria de UML

El UML es #na creacin de los seores /rady Booc), 1ames -#mba#") e ;var 1acobson. Estos tres personajes son llamados <Los tres ami"os=, estos trabajaban en distintas empresas d#rante la d6cada de los oc)enta y principios de los noventa, en s#s inicios, cada #no de ellos creo s# propia metodolo"a para el anlisis y diseo orientado a objetos. &#s metodolo"as predominaron sobre las de s#s competidores. ' mediados de los noventa, iniciaron a intercambiar ideas entre s y decidieron prod#cir #n prod#cto com>n #nificando la notacin. En 8??@ -#mba#") in"res a -ational -ose &oft*are %orporation, donde ya trabajaba Booc). L#e"o 1acobson in"res a -ational #n ao desp#6s. En ese momento se inici el proyecto de desarrollar #n <M6todo Unificado=, con la participacin de /rady Booc) y 1im -#mba#"), el res#ltado f#e presentado en el ao de 8??A. Una vez #nido al d>o, ;var 1acobson, estos se conformaron en socios de la compaa -ational -ose. Berramienta %'&E -ational -ose. Los anteproyectos del UML empezaron a circ#lar en la ind#stria del soft*are y las reacciones res#ltantes trajeron consi"o considerables modificaciones. %onforme diversos corporativos vieron (#e el UML era >til a s#s propsitos, se conform #n consorcio del UML. Entre los miembros se enc#entran $E%, Be*lettC!aDard, ;ntellicorp, Microsoft, 0racle, .e+as ;nstr#ment y -ational. En 8??E el consorcio prod#jo la versin 8.5 del UML y lo p#so a consideracin del 0M/ 9 /r#po de 'dministracin de 0bjetos: como resp#esta a s# prop#esta para #n len"#aje de modelos estndar. 'ct#almente la especificacin oficial del 0M/ es la 8.A liberada a principios del 455F. La especificacin 4.5 se enc#entra bajo desarrollo.

!articipantes en UML %er 1.&


0ational #o%t&are !i ital ./uipment +e&lett)(ackard I)lo ix (!a*id +arel) I'M ICON Computin Intellicorp and James Martin & Co. MCI systemhouse

Microso%t O,-ectTime Oracle Corp. (latinium Technolo y #terlin #o%t&are Taskon Texas Instrument

(1rady 'ooch2 Jim 0um,au h e I*ar Jaco,son)

(!esmond !"#ou$a)

(James Odell)

Unisys

El consorcio a#ment y "ener la versin 8.8, misma (#e se p#so n#evamente a consideracin del 0M/. El "r#po adopt esta versin a finales de 8??E. El 0M/ se encar" de la conservacin del UML y prod#jo otras dos revisiones en 8??G. El UML )a lle"ado a ser el estndar de facto en la ind#stria del soft*are, y s# evol#cin contin>a. En la si"#iente fi"#ra se p#ede observar las diferentes versiones del UML entre los aos 8??A al 4558.

'vol(cin de UML
2001 ? 2000 1999 1998 Nov 97
UML aprobado por el OMG

UML 2.0 UML 1.4 UML 1.3


Revisiones menores

UML 1.2

'n)o*(es orientados a objetos


-#mba#") Booc) 0dell Meyer
!reC and !ostCconditions

1acobson

&)laerCMellor
0bject lif e cy cles

UML
Barel
&tate c)art %)arts

/amma et. al.


Irame*orDs, patterns, notes

Embly
&in"leton classes

HirfsCBrocD I#sion
-esponsabilities

0peration description, messa"e n#mberin"descriptions,

+nconvenientes en UML

$efinicin del proceso de desarrollo #sando UML. UML no es #na metodolo"a. Ialta inte"racin con respecto a otras t6cnicas tales como patrones de diseo, interfaces de #s#ario, doc#mentacin, otros. Ejemplos aislados. Monopolio en conceptos, t6cnicas y m6todos en torno a UML.

!erspectivas de UML

UML ser el len"#aje de modelado orientado a objetos estndar predominante los pr+imos aos. -azones

!articin de metodol"icos infl#yentes. !articipacin de importantes empresas. 'ceptacin de 0M/ como notacin estndar. Berramientas (#e proveen la notacin UML. Edicin de libros. %on"resos, c#rsos, otros.

Evidencias

Desarrollo iterativo e incre#ental

En #n ciclo de vida iterativo e incremental, el desarrollo de #n proceso es #na serie de iteraciones (#e se env#elven dentro de #n sistema. %ada iteracin consiste de #no o m#c)os de los componentes de los procesos si"#ientes %apt#ra de -e(#erimientos, 'nlisis, $iseo, ;mplementacin y !r#eba.

Desarrollo iterativo e incre#ental


+nicio

,ies-o

De )inicin ite racin

'val(acin de iteracin

+teracin N

,evis in

'li# inacin ,ie s-o

,e visin e sti# acin ,ie s-o

'str(ct(ra de pro.ecto
Actividades
+nception ,e*(isitos Una iteracin en la )ase de elaboracin 0n1lisis 'laboration

Fases
Constr(ction Transition

Dise/o

+#ple#entacin

!r(ebas
! re li# ina r. +te ra tion 2s3 ite r. 41 ite r. 45 ite r. 4n ite r. 4n61 ite r. 4 n65 ite r. 4# ite r. 4 # 61

Di)erentes dia-ra#as UML


Diagramas de
Clases

Diagramas de Diagramas de
(ec$e!cia Casos de Uso

Diagramas de
%b&e#os

Diagramas de
Colaboraci !

Diagramas de Modelo
Com "o!e!#es

Diagramas de
's#ados

Diagramas de
Dis#rib$ci !

Diagramas de
)c#ividad

Clasi)icacin de dia-ra#as UML


Dia-ra#a de Casos de Uso 7 Dia-ra#a de Clase 2incl(.endo Dia-ra#a de Objetos3 7 Dia-ra#as de Co#porta#iento
$ia"rama de Estado $ia"rama de 'ctividad

Dia-ra#a de +nteraccin
$ia"rama de &ec#encia J $ia"rama de %olaboracin

Dia-ra#as de +#ple#entacin
$ia"rama de %omponentes $ia"rama de $esplie"#e 9$istrib#cin:

0plicacin de dia-ra#as UML


Dia-ra#a de Casos de Uso modela la f#ncionalidad del sistema a"r#pndola en descripciones de acciones ejec#tadas por #n sistema para obtener #n res#ltado. Dia-ra#a de Clases m#estra las clases 9descripciones de objetos (#e comparten caractersticas com#nes: (#e componen el sistema y cmo se relacionan entre s. Dia-ra#a de Objetos m#estra #na serie de objetos 9instancias de las clases: y s#s relaciones. Dia-ra#a de 8ec(encia enfatiza la interaccin entre los objetos y los mensajes (#e intercambian entre s j#nto con el orden temporal de los mismos. Dia-ra#a de Colaboracin i"#almente, m#estra la interaccin entre los objetos resaltando la or"anizacin estr#ct#ral de los objetos en l#"ar del orden de los mensajes intercambiados. Dia-ra#a de 'stados modela el comportamiento de ac#erdo con eventos. Dia-ra#a de 0ctividades simplifica el $ia"rama de Estados modelando el comportamiento mediante fl#jos de actividades. Dia-ra#a de Co#ponentes m#estra la or"anizacin y las dependencias entre #n conj#nto de componentes. Dia-ra#a de Desplie-(e o de Distrib(cin m#estra los dispositivos (#e se enc#entran en #n sistema y s# distrib#cin en el mismo

Dia-ra#as de Clases

Una clase es #na cate"ora o "r#po de cosas (#e tiene atrib#tos 9propiedades: y acciones similares 9f#nciones:. !ara representar a #na clase, es por medio de #n rectn"#lo, este divido de la si"#iente manera En la parte s#perior es para identificar el nombre de la clase. El rea del centro es para definir los atrib#tos o propiedades de la clase. El rea inferior es para definir las acciones (#e tendr la clase.

'je#plo Dia-ra#a de Clases


' rtic #los ;nventario
c o d i " o 'rtic # lo % ) a r98 5 : no m b re 'rtic # lo % ) a r98 5 5: p re c i o ;n i c ia l 'rtic # lo $ o # b le fe c ) a % o m p ra 'rtic # l o $ a te p re s e n ta c io n 'rtic # lo % ) a r9A 5 : d e p re c i a c i o n 'rti c # l o 9: a s i " n a c i o n ' rti c # l o 9:

Kombre de la %lase

'trib#tos

'cciones

Los diferentes accesos 9visibilidad: a los atrib#tos son 263!(blic 2de)a(lt3 Los miembros de la clase tienen acceso a todos los clientes. 243!rotected Los miembros de la clase tienen acceso >nicamente a las s#bclases, ami"os y la misma clase. 293!rivate Los miembros de la clase tienen acceso a la misma clase y ami"os. ;mplemented La clase es accesible >nicamente accesible por el pa(#ete (#e contiene la clase. Los smbolos mostrados a contin#acin son los #tilizados por UML -ational -ose

Dia-ra#a de Objetos

Los objetos son instancias de las clases 9entidad (#e tiene valores especficos de los atrib#tos y acciones:. El nombre de la instancia especfica se enc#entra a la iz(#ierda de los dos p#ntos 9 :, y el nombre de la clase a la derec)a.

'je#plo Dia-ra#a de Objetos


0bjeto 8 Mensaje ' 0bjeto 4

Mensaje % 0bjeto F

Mensaje E 0bjeto @

Mensaje $

Dia-ra#a de Casos de Uso

Un caso de Uso es #na descripcin de las acciones de #n sistema desde el p#nto de vista del #s#ario. !ara los desarrolladores del sistema, 6sta es #na )erramienta valiosa, ya (#e es #na t6cnica de aciertos y errores para obtener los re(#erimientos del sistema desde el p#nto de vista del #s#ario. .ambi6n se dice %asos de Uso es #na t6cnica para capt#rar informacin de cmo #n sistema o ne"ocio trabaja act#almente, o de cmo se desea (#e trabaje. Ko pertenece estrictamente al enfo(#e orientado a objeto, es #na t6cnica para capt#ra de re(#isitos.

8:#bolos en Casos de Uso


' c to r

%aso de Us o

!ersonas; departa#entos; e#presa; servidores.


, erific ar & it#ac in , endedor

0cciones de (n siste#a

%li ente E s tablec er %r6dito & #per vi s or

! rep arar %atlo "o

& ec retaria

.ipos de , enta

Doc(#entacin Casos de Uso


TUTULO %0L+D0C+ON D'L U8U0,+O
$escripcin del caso de #so. $escripcin 'ctores !reCcondiciones Los actores invol#crados en el caso de #so &e define las condiciones previas (#e deben e+istir para (#e el caso de #so se ejec#te con 6+ito.

&ec#encia de actividades

&e describe con n#merales o tem cada accin a ejec#tar, contenida en el caso de #so. Esto )asta a"otar todas las actividades.

!ostCcondiciones E+cepciones !endientes

&e describen todas las condiciones (#e (#edaran desp#6s de ejec#tar el caso de #so. !ara (#e e+cepciones el caso de #so no tenia aplicacin. !#ntos pendientes desp#6s de ejec#tar el caso de #so

Dia-ra#as de 'stado

Los $ia"ramas de Estados representan a#tmatas de estados finitos, desde el p#nto de vista de los estados y las transiciones, &on >tiles slo para los objetos con #n comportamiento si"nificativo, El resto de objetos se p#ede considerar (#e tienen #n >nico estado, %ada objeto est en #n estado en cierto instante, El estado est caracterizado parcialmente por los valores de los atrib#tos del objeto, El estado en el (#e se enc#entra #n objeto determina s# comportamiento, %ada objeto si"#e el comportamiento descrito en el $ia"rama de Estados asociado a s# clase, Los $ia"ramas de Estados y escenarios son complementarios, Los $ia"ramas de Estados son a#tmatas jerr(#icos (#e permiten e+presar conc#rrencia, sincronizacin y jerar(#as de objetos, Los $ia"ramas de Estados son "rafos diri"idos, Los $ia"ramas de Estados de UML son deterministas, Los estados inicial y final estn diferenciados del resto, La transicin entre estados es instantnea y se debe a la oc#rrencia de #n evento.

'je#plo dia-ra#a de estado


;nic ializ ac in

'd ic io n a r e s t# d ia n te 'd ic io n ar Es t# d ia n te

' bierto

%errar

%anc elar % anc elar

%anc elado

Dia-ra#a de 8ec(encia

Los $ia"ramas de &ec#encia son ms adec#ados para observar la perspectiva cronol"ica de las interacciones, M#estra la sec#encia de mensajes entre objetos d#rante #n escenario concreto, %ada objeto viene dado por #na barra vertical, El tiempo transc#rre de arriba abajo, %#ando e+iste demora entre el envo y la atencin se p#ede indicar, #sando #na lnea oblic#a.

'je#plo dia-ra#a de sec(encia


' B %
L# ien ll am a Lnea telefnic a Llamad o des c #el"a

m8
tono

m4
mar c ar

mF
indic ac in de llam ada tim bre

m@
des c #el"a

mA
di"aM

Dia-ra#a de 0ctividad

Este tipo de dia"rama oc#rre dentro de los casos de #so o dentro del comportamiento de #n objetoN y estos se dan en lo "eneral en las sec#encias. Este es #na variante de los dia"ramas de estado, or"anizado respecto a las acciones y principalmente destinado a representar el comportamiento interno de #n m6todo 9la realizacin de #na operacin:, de #n caso de #so o de #n proceso de ne"ocio 9*orDflo*:. %#ando #na actividad termina, se desencadena el paso a la si"#iente actividad. Las actividades no poseen transiciones internas ni transiciones desencadenadas por eventos. Este dia"rama esta relacionado con los fl#jo "ramas #tilizados para la concept#alizacin de en#nciados.

'je#plos dia-ra#as actividad


C lie n te % e nd e d or C a j e ro

& #m ar )as ta 85 n O 8 s O 5

&olicita #n artt#lo E+trae artc#lo de mostrador

s O s 2 n

0bserva artc#lo -ecibe artc#lo y elabora fact#ra 'naliza art c #lo


9 n Q O 85 : 9 n P 85 :

n O n 2 8

-ecibe artc#lo y fact #ra

Entre"a efectivo y recibe artc#lo

-ecibe pa"o

Dia-ra#a de Colaboracin

Los dia"ramas de colaboracin son >tiles en la fase e+ploratoria para identificar objetosN as, la distrib#cin de los objetos en el dia"rama permite observar adec#adamente la interaccin de #n objeto con respecto de los demsN adems la estr#ct#ra esttica viene dada por los enlacesN la dinmica por el envo de mensajes por los enlaces. &e p#ede decir (#e #n mensaje desencadena #na accin en el objeto destinatario.

'je#plo dia-ra#a colaboracin

B 8 ! as o

B
8 M e n s a je

4 !aso

'

'
F ! as o %

Dia-ra#a de Co#ponentes

Un componente de soft*are es #na parte fsica de #n sistema, y se enc#entra en los comp#tadoras, no en la mente del analista. Un componente p#ede lle"ar )acer #na tabla de #na base de datos, #n ejec#table, biblioteca de vnc#los dinmicos, te+tos y cosas. %on este tipo de dia"rama, los clientes p#eden vis#alizar la estr#ct#ra de #n sistema ya finalizado. Un aspecto m#y importante de considerar en los dia"ramas de componentes, es (#e estos tienen #n potencial para s# re#tilizacin. Los dia"ramas de componentes contienen componentes, interfaces y relaciones.

'je#plo dia-ra#a co#ponentes

Librera

% o m p # ta d o ra

' pl ic ac in

Dia-ra#a de Distrib(cin

Los $ia"ramas de $istrib#cin m#estran la disposicin fsica de los distintos nodos (#e componen #n sistema y el reparto de los componentes sobre dic)os nodos. Estos m#estran la ar(#itect#ra fsica de #n sistema. Estos p#eden e(#ipos de comp#tadora, dispositivos, se p#eden #tilizar para indicar cone+iones, as como para representar el soft*are dentro de #na comp#tadora.

'je#plo dia-ra#a distrib(cin


! %8 & ervidor de aplic ac iones

#tp

#tp

B#b

#tp ! %4 #tp #tp ! %@

! %F
- & C4 F 4

;m pres or

!a*(etes

Los pa(#etes son #tilizados para a"r#par # or"anizar elementos de dia"ramas 9clases, casos de #so, componentes: en #n "r#po determinado.
Kom bre ! a ( # e te

,elaciones
.odos los sistemas son elaborados por m#c)as clases y objetos. El comportamiento es arc)ivado a trav6s de la colaboracin de los objetos en el sistema. !ara entender el concepto de relaciones, se p#ede plantear el ejemplo si"#iente Un f#t#ro viajero desea realizar #na reservacin de #n viaje en #na lnea a6rea, para esto se enva #n mensaje de reservacin de vuelo. Esto es a men#do referido como #n objeto enviando #n mensaje a otro objeto. Entonces las relaciones proveen #na forma de interact#ar entre objetos. !ara esto e+isten tipos de relaciones (#e se dan d#rante el anlisis, estas son

'sociaciones, '"re"aciones, y $ependencias.

,elaciones de asociacin

Una asociacin es #n cone+in bidireccional semntica entre clases. Eso no es #n fl#jo de datos como se define en #n anlisis y diseo de datos estr#ct#rado. El fl#jo de datos p#ede ser en c#al(#ier direccin a trav6s de la asociacin. Kormalmente c#ando las clases se conectan entre s de forma concept#al, a esto se le denomina asociacin. Una asociacin entre clases si"nifica (#e all e+iste #na cone+in entre objetos dentro de las clases asociadas. La relacin de asociaciones es mostrada como #na lnea conectando las clases asociadas.

'je#plos asociaciones

Entre las re"las, e+iste #na en la (#e apr#eba la asociacin de m#c)as clases con #na clase en partic#lar.

0sociacin de Clases

Una relacin p#ede tener #na estr#ct#ra y #n comportamiento. Esto es verdadero c#ando la informacin es distrib#ida con #n vnc#lo entre dos objetos y no con #n objeto a la vez. Una asociacin al i"#al (#e #na clase, p#ede contener atrib#tos y operaciones, c#ando se da esta sit#acin, en este caso se esta tratando con #na asociacin de clases. El #so de asociaciones de clases es para modelar las propiedades de la asociacin. Las propiedades son almacenadas en #na clase y conectadas a la relacin de asociacin. !ara la creacin de #na asociacin de clases, se debe crear primero las asociaciones9lnea contin#as:, l#e"o la asociacin de clases9lnea discontin#a:, l#e"o esta >ltima se conecta a la asociacin. &e p#ede concl#ir (#e #na asociacin de clases es #na clase conectada a #na asociacin por #n lazo.

'je#plo 0sociacin de Clases

E m pleado

L a b o ra e n

$epartam ento

/erente/ eneral

N e g o cia d o c o n

%ontrato

,estricciones en las relaciones

En ocasiones, #na asociacin entre dos clases debe se"#ir cierta re"la. Esta se indica al establecer #na restriccin j#nto a la lnea de asociacin. !or ejemplo #n cajero atiende a #n cliente, pero cada cliente es atendido en el orden en (#e se enc#entre en la formacin. !#ede capt#rarse este modelo colocando la palabra ordenado entre llaves, para indicar la restriccin, j#nto a la clase cliente.

% a je ro

R0 rd e n a d o S A ti e nd e

% li e n te

,elacin de 0-re-aciones

Una relacin de '"re"acin 9'c#m#lacin: es #na forma especializada de #na asociacin en (#e #n todo esta relacionado a partes. Las a"re"acin es conocida como <parte-de= o relacin de contencin. Las a"re"aciones p#eden representarse como #na jerar(#a dentro de la clase completa. La notacin de UML para #na relacin de a"re"acin es como #na asociacin con #n diamante mas cercano a la clase del todo )asta la si"#iente clase

%#rso

%#rsos0fertados

'je#plo de a-re-aciones

Un ejemplo tpico para poder interpretar este tipo de relacin es la composicin de #n %!U, como el mostrado en la si"#iente fi"#ra, el (#e p#ede contener %$C-0M, Memoria -'M, Unidad de 'lmacenamiento y .arjetas.
%p#

%dr

M em oria-am

Unidades ' lm ac enam iento

.arjetas

Co#posiciones en las relaciones

!or valor 2b. val(e3 ;mplica e+cl#sividad en la pertenencia por contener clases, para esto el rombo es relleno.

, entana 8

J M arc o

!or re)erencia 2b. re)erence3 Ko es por mandato e+cl#sivo en s#s propiedades, este debe ser presentado por #n rombo vaco o abierto.

%p#

%dr

M em oria-am

Unidades ' lm ac enam iento

.arjetas

,ol de no#bres

El final de #na asociacin donde es conectado a #na clase es llamado #n rol de asociacin. El nombre de #n rol es #n s#stantivo (#e denota el propsito o capacidad en donde #na clase es asociada con otra. El nombre del rol p#ede ser colocado en #na asociacin cerca de la clase. Un nombre de rol p#ede ser colocado en #no o ambos finales de #na lnea de asociacin. Ko es necesario tener los nombres del rol y de la asociacin.
;n venta rio

2 ' l m a c e n a p r o d # c to s

B ode"as

No#bres de relaciones
Una asociacin p#ede ser nombrada. Us#almente los nombres son #n verbo activo o #na frase verbal (#e com#ni(#e o de #n si"nificado de la relacin. La frase verbal tpicamente implica #na lect#ra en #na direccin de iz(#ierda a derec)a y de arriba )acia abajo. Las palabras p#eden ser cambiadas para leer la asociacin en otra direccin, por ejemplo

!rofesor ensea en #n %#rso CCC P Un c#rso es enseado por #n !rofesor. Es importante notar (#e el nombre de la asociacin es opcional. Los nombres son adicionados si ello es re(#erido para clarificar el modelo. La relacin de a"re"acin tpicamente no es nombrada, ya (#e estas #san palabras como <tiene= o <contiene=.

+ndicadores de #(ltiplicidad

' trav6s de la m#ltiplicidad se especifica #na clase, se definen el n>mero de objetos (#e participan en #na relacin. La m#ltiplicidad define el n>mero de objetos (#e son conectados de #no a otro. &e p#ede indicar dos m#ltiplicidades para cada asociacin o a"re"acin, #no en cada fin de la lnea. 'l"#nos indicadores de m#ltiplicidad ms com#nes se presentan a contin#acin

8 5..J 8..J 5..8 A..G @..E,?

E+actamente #no. %ero o mas. Uno o mas. %ero o #no. -an"o especificado 9A, 7, E o G:. %ombinaciones 9@, A, 7, E o ?:.

'je#plo de #(ltiplicidad

La m#ltiplicidad mnima PO 8 establece #na restriccin de e+istencia. &e p#ede ver #n ejemplo de la m#ltiplicidad entre clases, a trav6s de asociacin.
;nventario

J
2 'lm a c e n a p r o d # c to s

8 ..A B ode"a s

,elaciones re)le<ivas

En ciertas ocasiones #na clase es #na asociacin consi"o misma. Esto se da c#ando #na clase tiene objetos (#e p#eden j#"ar diversos papelesN tanto para las asociaciones como las a"re"aciones. %omo se p#ede observar la clase Empleado dentro de #n Banco %omercial, p#ede ser empleado relacionado con #na #nidad or"anizativa y a la vez ser #n cliente con #na c#enta bancaria del mismo Banco %omercial
U n id a d 0 r" a n iza tiva

8 . .8 5 la b o ra

8 ..J 2 % l ie n te

Em pleado 5..J

5..J

,elaciones cali)icativas

La finalidad de este tipo de relacin es la eliminacin de relaciones de m#c)os y convertirlo a #no. %#ando #n objeto de #na clase tiene (#e seleccionar #n objeto partic#lar de otro tipo para c#mplir con #n papel en la asociacin, la primera clase deber atenerse a #n atrib#to en partic#lar para localizar al objeto adec#ado. Kormalmente, dic)o atrib#to es #n identificador (#e p#ede ser #n n>mero de identidad, esto es colocar #na llave para realizar #na b>s(#eda rpida.

' "ente, iajes

K#m ero %onfirm ac in

l o ca l iz a

-es ervac iones J

"erencias; Generali=acin . ,eali=acin

En esta seccin, se pretende introd#cir n#evos conceptos de relacin entre objetos de los dia"ramas de modelo en UML. Estos son

Berencias y /eneralizacin, $ependencia -ealizacin

"erencia . Generali=acin

Las )erencias definen #na relacin entre clases donde, #na clase comparte la estr#ct#ra yTo comportamiento de #na o m#c)as clases. Una jerar(#a de abstraccin es creada en donde #na s#bclase )ereda desde #na o m#c)as s#perclases. La )erencia es como llamar #n es-a o tipo-herencia o es un tipo de. ' contin#acin se detalla al"#nas consideraciones para la aplicacin de )erencias Una s#bclase )ereda todos los atrib#tos, operaciones y relaciones las (#e son definidas en #n nivel s#perior en la jerar(#a en la c#al estos son aplicables en todas las clases de nivel inferior en #na jerar(#a de )erencias. Una s#bclase p#ede incrementarse con atrib#tos adicionales y operaciones (#e aplican >nicamente al nivel de la jerar(#a. Una s#bclase p#ede proveerse en s# implementacin de #na operacin. Esto es llamado polimorfismo. Entonces se dice (#e #na relacin de )erencias no es #na relacin entre diferentes objetos, la relacin n#nca es nombrada, el nombre del rol no son #tilizados y la m#ltiplicidad no es aplicable. El n>mero de clases permitidas en #n jerar(#a de )erencias no tiene lmite. &in embar"o la e+periencia en la prctica se p#ede manejar entre tres y cinco capas. Las )erencias son la clave de la re#tilizacin. Una clase p#ede ser creada para #na aplicacin, l#e"o #na s#bclase p#ede ser creada para adicionar mas informacin necesaria para diferentes aplicaciones.

'je#plo de Generali=acin

En orientacin a objetos se refiere a esto como )erencia, en cambio en UML se le denomina "eneralizacin. $ic)o de otro modo lo descrito anteriormente, #na clase sec#ndaria o s#bclase p#ede )eredar los atrib#tos y operaciones de otra clase principal o s#perclase. La clase principal 9madre: es ms "en6rica (#e la sec#ndaria 9)ija:. La creacin de #na )erencia entre clases, se #tiliza el smbolo de lnea contin#a y en el e+tremo #n trin"#lo vaco, este debe ap#ntar a la clase s#perior 9madre: y decir <es #n tipo de=
& e"#rid ad/e neral

& e"#ridadKivel8

& e"#ridadKivel4

& e"#ridadKi vel F

& e " # r id a d K i ve l 4 8

& e " # r i d a d K ive l4 4

Dependencias

Una dependencia es #na relacin semntica entre dos cosas9objeto, clase # otro: en las c#ales #n cambio en #na cosa9cosa independiente o madre: p#ede afectar la semntica de la otra cosa 9cosa dependiente o )ija:, "rficamente, #na dependencia es #na lnea discontin#a (#e ap#nta )acia la clase de la (#e depende.
H indo*
o p e n 9: c l o s e 9: m o ve 9: d is p la y9: ) a n d le E ve n t9:

E vent

.ambi6n se p#ede decir (#e e+iste #na dependencia, c#ando #na clase #tiliza a otra. El #so mas com>n de las dependencias, es mostrar (#e la firma de la operacin de #na clase #tiliza a otra clase.

,elacin entre pa*(etes

Las relaciones de pa(#etes son tambi6n adicionados a los modelos. El tipo de relacin es #na relacin de dependencia, el (#e m#estra como #na p#nta de la flec)a ap#nta al pa(#ete. &i #n pa(#ete ' es dependiente de pa(#ete B, esto implica (#e #na o m#c)as clases en el pa(#ete ' inician la com#nicacin con #n o mas clases p>blicas en el pa(#ete B. !ara #na mejor comprensin de las relaciones, p#ede citarse las clases %liente y !roveedores, entre estos e+iste #na dependencia, es por esta razn (#e el smbolo a #tilizar para relacionar los pa(#etes son las dependencias9lnea discontin#a con #na flec)a en el e+tremo:.

! a (# e t e '

! a ( # e te B

,eali=aciones

Una relacin se cristaliza entre clases e interfaces y entre componentes e interfaces mostrando, (#e las clases c#mplan las operaciones ofertadas por la interface. Una relacin de realizacin se representa por medio de #na lnea discontin#a con #n trin"#lo vaco en #n e+tremo ap#ntando )acia la interface. !or lo "eneral la realizacin, se define entre clases como ori"en y destino las interfaces.
%las e
Q Q ;n te rfa c e P P

Las interfaz son #n conj#nto de operaciones (#e especifica cierto aspecto de la f#ncionalidad de #na clase, y es #n conj#nto de operaciones (#e #na clase presenta a otras. Las interfaces p#eden ser representadas por #n crc#lo pe(#eo (#e se conecta mediante #na lnea a la clase.
%las e
;n te rfa c e

%isibilidad

Este concepto est m#y relacionado con las interfaces y la realizacin. Este se aplica a los atrib#tos # operaciones y se especifica si estos podrn ser #tilizados por otros clasificadores. En UML, en #n modo "eneral se p#eden especificar #no de los tres niveles de visibilidad

!(blic %#al(#ier clasificador e+terno podr #sar las caractersticasN se representa anteponiendo el smbolo 2. !rotected %#al(#ier descendiente del clasificador p#ede #sar las caractersticasN se antepone el smbolo U. !rivate Unicamente el clasificador mismo p#ede #sar s#s caractersticasN se antepone el smbolo C.
.oo lbar
Toolbar Uc#rrent&elecction s)ort Utool%o#nt int 2picD;tem9: int 2add.ool9: lon" 2remove.ool9: int 2"et.ool9: float Uc)ecD0rp)ans9: Ccompact9:
c # rre n t& e le c ti o n . o o l to o l % o # n t ;n te " e r p ic D ;te m 9: a d d . o o l9: re m o ve . o o l9: " e t. o o l9: " e t. o o l9: c ) e c D 0 rp ) a n s 9: c o m p a c t9:

Notas

Una nota (#e se pone como comentario, no posee al"#na semntica, lo (#e si"nifica (#e el contenido no altera el si"nificado de #n modelo al c#al esta ad)erido. Esto es por(#e las notas son #tilizadas para especificar cosas parecidas a los re(#erimientos planteados por los clientes, observaciones, reseas, y e+plicaciones en adicin a p#esto en las restricciones. Una nota p#ede contener #na combinacin de te+to o "rficas. &i la implementacin lo permite, se p#ede poner #n U-L e+istente dentro de la nota, o )asta incl#so vinc#lar a o incr#starlo con otros doc#mentos. El amarre se establece con #na lnea interr#mpida.

E s tr uctu r a d e # n a ve nt an a

H indo*s
o p e n 9: c lo s e 9: m ove 9: d i s p la y9: ) a n d le E v e n t9:

Event

%onsoleH indo*

$ia lo"Bo+

%ontrols

Cl a se s su je ta s a " e n e ra l i za ci o n e s

'stereotipos

Los estereotipos permiten tomar elementos propios del UML y convertirlos en otros. Los estereotipos deben basarse en ciertos tipos o clases e+istentes en el metamodelo. 'l"#nos estereotipos estn predefinidos en el UML, otros definidos por el #s#ario. Los estereotipos son #no de los mecanismos de e+tensin del UML. El len"#aje UML brinda varios elementos de #tilidad, pero no es #n conj#nto detallado de ellos. Los diseadores en al">n momento re(#erirn de elementos )ec)os a la medida. .ambi6n los estereotipos proveen capacidad de e+tender el modelado bsico de los elementos, para crear n#evos elementos. El nombre de #n estereotipo se enmarca entre par6ntesis an"#lares 9QQ estereotipos PP: y es colocado a lo lar"o de #na lnea de relacin o dentro de los atrib#tos # operaciones.
Q Q ;nterfac eP P ;nform ac in%#entas

Estereotipo/Palabra clave actor

Emplear al smbolo class

Significado .speci%ica un con-unto coherente de roles de usuarios aplica,les a los casos de uso cuando interact4an. .speci%ica /ue un contenido p4,lico de un pa/uete es accesi,le por un pa/uete %uente. .speci%ica /ue la operaci3n %uente in*oca la operaci3n o,-eto. .speci%ica /ue un o,-eto es creado por el e*ento o por el mensa-e.

access

dependency

call

dependency

create

e*ent messa e

,estricciones

Es #na condicin # obli"acin semntica. 'l"#nas restricciones estn predefinidas en el UML, otras p#eden ser definidas por el #s#ario. Las restricciones son #no de los tres mecanismos de e+tensin del UML.9valor rot#lado y estereotipo:. !ara clarificar #n modelo considerando condiciones en atrib#tos # operaciones, se p#ede a"re"ar las restricciones o re"las delimitadas por llaves.
< < e x c e p c io n 0 v e r f lo *

E vento%ola add9: CCCCCCCCCCCCC RordenadoS rem ove9: fl#s )9:

Dia-ra#as UML 2estr(ct(rado3


Captura de Requisitos Anlisis y Diseo Implementacin
Diagramas de stados Diagramas de Secuencia

Diagramas de Distribucin

Diagramas de
Casos de Uso

Diagramas De Clases

Diagramas de
Colaboracin

Diagramas de
Componentes

Diagramas de !ctividad

Diagramas de !ctividad

Dia-ra#as UML 2OO3


0n1lis is Dise /o +# ple# e ntacin D$Ds 'n)o*(e 's tr(ct. 'str(crt(radop's tr (ct(rado

D's

Entornos de !ro"ramacin ,is#al

'9, M odelo ,e lacional

Dia-ra# as de Casos de Uso Dia-ra# as de 0ctividad Dia-ra# as de 8e c(e ncia Dia-ra# as de Colaboracin >os*(e jos de +nte r)ace s

M odelo ,e lacional

??

Bases de $atos 90bjetoC: -elacionales

'n)o*(e OO

Dia-ra# a de Clas es Dia-ra# a de 'stados Dia-ra# as de 0ctividad

+n)or#acin
!ara el planteamiento del problema es necesario recopilar informacin de las si"#ientes @ cate"oras

De ne-ocio El tipo de informacin (#e se re(#iere a(# es toda la relacionada a como el ne"ocio f#nciona, incl#yendo informacin acerca de los objetivos, prod#ctos, servicios y definicin de los procesos crticos del ne"ocio. De aplicacin Esta informacin comprende la forma en como f#nciona el ne"ocio a trav6s de toda la or"anizacin, identificando a los tipos de #s#arios, as como las diferentes actividades (#e se realizan para llevar a cabo los procesos del ne"ocio. '(# se identifican todas las tareas man#ales y a#tomticas, adems de las diferentes )erramientas 9pro"ramas, #tileras, etc.: (#e se #san para determina accin. De operacin .oda la informacin referente a los datos (#e necesita la or"anizacin para realizar s#s procesos de ne"ocio, incl#yendo modelo de datos, polticas para el manejo de datos, identificacin de los patrones de cons#mo de informacin. Es importante identificar (#ien ori"ina la informacin, (#ien es el propietario y (#ien la cons#me, adems de la relacin (#e esta tiene con los procesos clave de la or"anizacin. De tecnolo-:a '(# se definen todos los servicios t6cnicos necesarios para soportar la actividad del ne"ocio, desde topolo"as de red, ambientes de desarrollo, interfaces de pro"ramacin, se"#ridad, servicios de redes, servicios de base de datos, )ard*are, sistemas operativos, etc.

Concl(siones

Los est#diantes de El &alvador deben iniciar el #so de esta )erramienta para el anlisis y diseo de sistemas. Estos dia"ramas deben ser #tilizados para la doc#mentacin t6cnica. Ko todos los dia"ramas deben ser #tilizados en todo proyecto.

>iblio-ra):a
T@e Uni)ied Modelin- Lan-(a-e User G(ide Editorial 'ddison C Hesley Booc), 1acobson and -#mba#") %is(al Modelin- Ait@ ,ational ,ose and UML Editorial 'ddison C Hesley .erry L#atrani Object 9 Oriented 8o)tBare 'n-ineerinEditorial 'ddison C Hesley ;var 1acobson +n-enier:a del 8o)tBare. Un 'n)o*(e !r1ctico @ta Edicin. Editorial Mc /ra* Bill -o"er &. !ressman 'l !roceso Uni)icado de Desarrollo de 8o)tBare Editorial 'ddison C Hesley Booc), 1acobson, -#mba#") 'l len-(aje (ni)icado de #odelado, 'ddisonCHesley, 8???. Booc) /. etal. UML -eso#rce %enter. -ational ;nc. )ttp TT***.rational.comT#ml

0bject Mana"ement /ro#p 9***.om".or" '"ile Modelin" 9***.a"ilemodelin".com:

Otros como revistas, internet, para el caso www.rational.com/uml

8itios
$ree UML Modelin- ToolModel, %ode, $eploy, -ose V WM;, -o#ndtrip En"ine V %-% %ards V More ***.vis#alCparadi"m.com Get a )ree UML tool!oseidon for UML is a professional tool *it) a free %omm#nity Edition ***."entle*are.com UML Cava tool ,is#ally $esi"n 'pplication Models V /enerate 1ava %ode *T UModel 455A ***.'ltova.comTUModel Ma-icDraB UML Ma"ic$ra* UML by Ko Ma"ic, ;nc B#y and $o*nload Ma"ic$ra* no*X ***.componentso#rce.com +nversiones en Divisas%ompra y ,enta ;nfo. 4@)s. &im#lador de inversin ***.acCmarDets.com

Potrebbero piacerti anche