Está en la página 1de 20

ArquitecturadeSo.

ware
PerlesUML

FernandoBarrazaA. fernando.barraza@gmail.com

Mo7vacin
UMLesunlenguajedemodeladodepropsitogeneral:
Puedeserusadoentodoslosdominiosdeaplicaciones;comopor ejemplosalud,nanzas,telecomunicaciones,aeronu7ca,etc. Puedeserimplementadoenplataformasdiversaseindependientes comoCORBA,J2EE,.NET,etc.

Haysituacionesenquesenecesitanmecanismosms apropiadosparadominiosespeccos:
Cuandolasintaxisosemn7capropiadeUMLnopuedeexpresar conceptosespeccosdesistemaspar7culares Cuandosequiererestringiropar7cularizaralgunoselementosdeUML porquesonmuchosomuygenerales.

Aproximacionesparadenirlenguajesdemodeladode dominioespecco
1. Denirunnuevolenguajecomoalterna7vaaUML
UsarlosmismosmecanismosquedenenaUMLysumetamodelo. La sintaxis y semn7ca de los elementos del nuevo modelo son denidos para cumplir con los requerimientos especcos del dominio. Especializaralgunoselementosdellenguajebaseimponiendonuevas restricciones respecto al metamodelo (no respecto a la semn7ca propiadeUMLdenidaenlasclases,asociaciones,atributos,etc. Azcar sintc7co puede ser adicionado e un perl en trminos de iconosysmbolosparalosnuevoselementosdenidos.

2. Par7cularizarUML

Workowdemodelado

1. Denirnuevoslenguajesde modelado
Apropiado cuando la semn7ca de algunas de las construcciones del lenguaje no corresponden a la semn7cadeloselementosUMLcorrespondientes. Se puede u7lizar MOF (Meta Object Facility) para denirelnuevoslenguaje. MOF es un lenguaje especcamente diseado para denirlenguajesdemodeladobasadosenobjetos. UMLestdenidousandoMOF. U7lizado por lenguajes como CWM (Common WarehouseMetamodel).

EjemplodeMOF

1. Par7cularizarUML
UML provee un conjunto de mecanismos de extensin (stereotypes, tagged values, constraints) Permitenespecializarloselementosloqueda origen a extensiones para aplicaciones de dominioespecco. Las extensiones se agrupan entonces en PerlesUML.

VentajasyDesventajas
UsandoMOF
Esunasolucinms ajustadaaldominio requerido,pero. Nosepuedenu7lizar HerramientasUML generalesporqueseha alteradolasemn7cade UML

CreandoPerlesUML
Esunasolucinque puedequedarsecorta antedominiosmuy especcos,pero Enlamayoradelos casos,losbeneciosde losperlessobrepasan suslimitaciones.

PerlesUML
Unperlesunacoleccindeestereo7pos, denicionesdee7quetasyrestriccionesque trabajanjuntosparadenirunanueva semn7cadelmodelo. Ejemplos:
Datamodelingprole Businessmodelingprole EJBprole

Comoseestructuraunperl
UnperlUMLesunpaquetequecon7eneelementosdel modeloquehansidoespecializadosparaundominio especcousandomecanismosdeextensincomo estereo7pos,valorese7quetadosyrestricciones Unestereo7poproveeunaformaparadenirsubclases virtualesdemataclasesUML,conunasemn7caagregada Lase7quetasespecicannuevasclasesdepropiedadescomo partedeunadenicindelestereo7po Unarestriccinesunalimitantesemn7carepresentada comounaexpresindetextousualmenteescritaenOCL. Losestereo7pospuedenderivarsedeotrosestereo7pos.

Guadepasosparaconstruirun perlUML(12) 1. Denirelconjuntodeelementosque comprendernelsistemaylasrelaciones entreellos. 2. Incluirunestereo7poporcadaelemento relevantequequiereserincluidoenelperl dentrodelPaquete.Losnombresdel estereo7podebenhacercorrespondencia conlosnombresdeloselementos.

Guadepasosparaconstruirun perlUML(35)
3. Revisequesoloestrepresentandocon estereo7posloselementosdeUMLqueest extendiendo;comoporejemploclases, asociaciones,atributos,operaciones,transiciones, paquetes,etc. 4. Denircomovalorese7quetadoslosatributosque aparecenenelmodeloUML.Sedebenincluirlos 7posyvaloresinicialescorrespondientes. 5. Denirlasrestriccionestomandoencuentalas mul7plicidaddelasasociacionesylasreglasde negociodeldominioespecco.

Ejemplo: PerldepresentacindeunaGUI Elpropsitodelperlesdescribirelmodelo depresentacindeunaaplicacin, especcamenteeldiseodeunainterfaz grcadeusuario(GUI) LaGUIconsistedeformasydos7pode controles:Cajasdeedicin(editboxes)y botones(buions)

Estructuradelperl
Elestereo7poFormrepresentalaformaqueaparece enlaGUI. Lase7quetasdebaserepresentanelancho(width)y elalto(height)delaformas. Esteestereo7po7eneunae7quetaderivada (ndisplayedforms)querepresentaelnmerode formasquepuedenseraccedidasydesplegadaspor laforma.

Estructuradelperl(2)
Elestereo7poControlrepresentaelcontrolque apareceenlaforma.Esteestereo7poesabstracto,y esusadosoloparadenirdose7quetascomunes: coordinatexycoordinateylascualesrepresentanlas coordenadasx,ydelcontroldentrodelaforma Larelacinbinariadecontenidoentreformasy controlesestespecicadapormediodeuna asociacinconunestereo7poContains.

Estructuradelperl(3)
Unanicainstanciadeunaclaseconelestereo7poEditBox representauncontroldecajadeedicindeunaforma, mientrasunaclaseconelestereo7poBuAonrepresentaun controldebotn. El7podee7quetaindicasielbotnesunbotndeaceptar (accept),cerrar(close)ocancelar(cancel). Larelacinentredosformasdondeunadeellasesorigen (source)despliegalaotrades7no(desBnaBon)est especicadapormediodeunaasociacinconelestereo7po Displays. Elsen7dodelaasociacinpermitedis7nguirentreformas fuenteydes7no.

Elperlpuedecontenerrestricciones
Laalturayelanchodelaformadebeserposi7vo Nopuedeexis7runciclodeasociacionesconelestereo7po deDisplay Lascoordenadasx,ydeloscontrolesnopuedenestarpor fueradelrangodelasformasydebenserposi7vas. Lasasociacionesconelestereo7poContainsdebentenerdos parBcipantes,laformayelcontrol. Nopuedehaberdosasociacionesentrelasmismaformay control.

Ejemplodeusodelperldepresentacin

Unaaplicacinqueborraclientesdesdeuna informacinbase. Consistededosformas:


SelectCustomer,selecccionaelclienteaser borrado DeleteCustomer,borraelclienteseleccionado

Enambasformaselusuariopuedeaceptaro cancelarlasaccionesarealizar.

ModelodelPerl

Modelodelaaplicacinqueusaelperlde presentacin

También podría gustarte