(UML) UML son las siglas de UnifedModelingLanguage o Lenguaje Unifcado de Modelado. Se trata de un estndar que se ha adoptado a nivel internacional por numerosos organismos y empresas para crear esquemas diagramas y documentaci!n relativa a los desarrollos de so"t#are $programas in"ormticos%. &l lenguaje UML tiene una notaci!n grfca muy e'presiva que permite representar en mayor o menor medida todas las "ases de un proyecto in"ormtico( desde el anlisis con los casos de uso el dise)o con los diagramas de clases o*jetos etc. hasta la implementaci!n y confguraci!n con los diagramas de despliegue. QU ES UML?: UML es ante todo un lenguaje. Un lenguaje proporciona un voca*ulario y unas reglas para permitir una comunicaci!n. &n este caso este lenguaje se centra en la representaci!n grfca de un sistema. &ste lenguaje nos indica c!mo crear y leer los modelos pero no dice c!mo crearlos. &sto +ltimo es el o*jetivo de las metodolog,as de desarrollo. Los o*jetivos de UML son muchos pero se pueden sinteti-ar sus "unciones( . /isuali-ar( UML permite e'presar de una "orma grfca un sistema de "orma que otro lo puede entender. . &specifcar( UML permite especifcar cules son las caracter,sticas de un sistema antes de su construcci!n. . 0onstruir( 1 partir de los modelos especifca2dos se pueden construir los sistemas dise)ados. . 3ocumentar( Los propios elementos grfcos sirven como documentaci!n del sistema des2arrollado que pueden servir para su "utura revisi!n.
1unque UML est pensado para modelar sistemas complejos con gran cantidad de so"t#are el lenguaje es los sufcientemente e'presivo como para modelar sistemas que no son in"ormticos como 4ujos de tra*ajo $workfow % en una empresa dise)o de la estructura de una organi-aci!n y por supuesto en el dise)o de hard#are. 5aren carhua- vicente 1 Un modelo UML esta compuesto por tres clases de *loques de construcci!n( . &lementos( Los elementos son a*stracciones de cosas reales o fcticias $o*jetos acciones etc.% . 6elaciones( relacionan los elementos entre s,. . 3iagramas( Son colecciones de elementos con sus relaciones. La estandari-aci!n de un lenguaje de modelado es invalua*le ya que es la parte principal del proceso de comunicaci!n que requieren todos los agentes involucrados en un proyecto in"ormtico. Si se quiere discutir un dise)o con alguien ms am*os de*en conocer el lenguaje de modelado y no as, el proceso que se sigui! para o*tenerlo. PARA QU SIRVE UML? UML es una herramienta propia de personas que tienen conocimientos relativamente avan-ados de programaci!n y es "recuentemente usada por analistas "uncionales $aquellos que defnen qu7 de*e hacer un programa sin entrar a escri*ir el c!digo% y analistas2programadores $aquellos que dado un pro*lema lo estudian y escri*en el c!digo in"ormtico para resolverlo en un lenguaje como 8ava 09 :ython o cualquier otro%. :or tanto si ests dando tus 5aren carhua- vicente 1 primeros pasos en programaci!n te recomendar,amos que te olvides de UML hasta que tengas unos conocimientos m,nimos como uso de condicionales *ucles y conocimiento de la programaci!n orientada a o*jetos. &sto es solo una recomendaci!n en realidad prcticamente cualquier persona puede usar UML incluso podr,a usarse para reali-ar esquemas o documentaci!n de procesos que no tengan que ver con la in"ormtica. QUIN USA UML? UML lo suelen usar las empresas o medianos o grandes equipos de desarrollo so"t#are con el o*jetivo de planifcar y documentar c!mo se construyen los programas in"ormticos complejos. Los usuarios individuales o peque)os equipos de desarrollo de ; ! < personas no suelen usar herramientas UML. UML es un t7rmino que se relaciona mucho con =ngenier,a del so"t#are. 1l igual que un proyecto de edifcio requiere la participaci!n de un arquitecto y unos plantos un proyecto so"t#are requiere la participaci!n de ingenieros in"ormticos y una planifcaci!n y documentaci!n. CULES SON LAS VERSIONES DE UML? Los antecedentes de UML se sit+an en la d7cada de los >? con distintos estndares para modelado de so"t#are no o*stante podemos ha*lar de dos grandes versiones( UML 1.@ $comprende UML 1.1 1.; 1.< 1.A 1.B%( desde fnales de los >? se empe-! a tra*ajar con el estndar UML. &n los a)os sucesivos "ueron apareciendo nuevas versiones que introduc,an mejoras o amplia*an a las anteriores. UML ;.@ $comprende UML ;.1 hasta UML ;.B ;.C etc.%( en torno a ;??B se di"undi! una nueva versi!n de UML a la que podemos denominar UML ;.@. 0omprenden varias revisiones. UML <.@( evoluci!n que se espera para UML ;.@. 5aren carhua- vicente 1 Day que tener en cuenta que UML es un conjunto muy amplio de normas. :rcticamente nadie las conoce todas. Seg+n la empresa o universidad instituci!n o centro de tra*ajo se usan determinados programas para crear diagramas y se conocen ciertas partes de UML pero no el conjunto de UML. QU VERSIN USAR? :ara generar diagramas UML se usan programas in"ormticos. Usa un programa actuali-ado pero no te preocupes en e'ceso por qu7 versi!n de UML usar lo importante es que en tu grupo de tra*ajo o personas a las que se les vaya a enviar documentaci!n so*re un proyecto so"t#are sepan interpretar lo que se les env,a. 1 nivel pro"esional no se le presta demasiada atenci!n a que se cumpla estrictamente con las normas de una determinada versi!n de UML sino a que los esquemas est7n *ien construidos y ra-onados. TIPOS DE DIAGRAMAS EN UML: Usando UML se pueden construir numerosos tipos de diagramas. /amos a citar algunos( Diaga!a" #$ %a"&" #$ '"&: representan a los actores y casos de uso $procesos principales% que intervienen en un desarrollo de so"t#are. Diaga!a" #$ %(a"$": para UML una clase es una entidad no una clase so"t#are. Un diagrama de clases UML puede ser un diagrama del dominio o representaci!n de conceptos que intervienen en un pro*lema o tam*i7n un diagrama de clases so"t#are. &l sentido de un diagrama UML se lo da la persona que lo construye. Diaga!a" #$ "$%'$)%ia: suelen usarse para representar o*jetos so"t#are y el intercam*io de mensajes entre ellos representando la aparici!n de nuevos o*jetos de i-quierda a derecha. 5aren carhua- vicente 1 Diaga!a" #$ %&(a*&a%i+): suelen usarse para representar o*jetos o clases y la "orma en que se transmiten mensajes y cola*oran entre ellos para cumplir un o*jetivo. Diaga!a" #$ $",a#&": suelen usarse para representar c!mo evoluciona un sistema $c!mo va cam*iando de estado% a medida que se producen determinados eventos. O,&" #iaga!a": diagramas de actividad diagramas de paquetes diagramas de arquitectura so"t#are etc. CR-TICAS A UML: UML reci*e numerosas cr,ticas por parte de los miem*ros de la comunidad de desarrolladores so"t#are entre ellas el ser demasiado e'tenso carecer de signifcados precisos para los elementos representados difcultad para representar algunos tipos de sistemas so"t#are o elementos etc. 1 pesar de ello y de no ser per"ecto es un estndar de amplio uso hoy d,a y una herramienta "undamental en desarrollos so"t#are de gran envergadura. 5aren carhua- vicente