Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Bases de Datos
Bases de Datos
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Introduccin
UML (Unified Modeling Language) Es un lenguaje usado para especificar, visualizar y documentar los diferentes aspectos relativos a un sistema de software bajo desarrollo, as como para modelado de negocios y almacenamiento de datos. UML es una notacin, no un mtodo, destinado a los sistemas de modelado que utilizan conceptos orientados a objetos. Los principales factores que motivaron la creacin de uml fueron: La necesidad de modelar sistemas. Las tendencias en la industria de software. Unificar los distintos lenguajes y mtodos existentes. Innovar los modelos para adaptarse a la arquitectura distribuida.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Definiciones
Uml prescribe un conjunto de notaciones y diagramas estndar para modelar sistemas orientados a objeto y describe la semntica esencial de lo que estos diagramas y smbolos significan. Uml supone una abstraccin de un sistema para llegar a construirlo en trminos concretos. El modelo se construye a partir de una especificacin, omitiendo detalles no esenciales para la comprensin del original facilitando dicha comprensin.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Resea Histrica
El desarrollo de UML comenz en 1194 cuando un par de programadores (Grade Booch y James Rumbaugh) de rational software corporation comenzaron a trabajar en la unificacin de los lenguajes de modelado Booch y OMT. En 1995 terminaron su trabajo de unificacin obteniendo el borrado de la versin 0.8 de lo que entonces llamaron unified method y hacia finales de ese ao se unieron con el creador de la metodologa OOSE para obtener las versiones 0.9 y 0.91 En 1196 el OMG public una peticin con propsito de un metamodelo orientado a objetos de semntica y notacin estndares. En 1197 la versin 1.0 de UML fue propuesta como respuesta a dicha peticin y durante el transcurso de ese ao, los promotores de las otras propuestas (Microsoft, hp, oracle, unisys, ibm, ptech, icon computing) se unieron a la rational software corporation para dar como resultado UML 1.1 el cual fue aprobado por el OMG. Para el 99 se hablaba de la versin 1.2 y para el 2002 de UML 1.4 y 2.0, la cual es la ultima versin aprobada.
UML
Resea Histrica
Evolucin de UML
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Caractersticas
Es una especificacin basada en Booch, Rumbaugh y CoadYourdon. Divide cada proyecto en un numero de diagramas que representan las distintas vistas del proyecto y juntos representan la arquitectura del mismo. Permite describir un sistema en diferentes niveles de abstraccin, simplificando la complejidad sin perder informacin, para que los usuarios y desarrolladores comprendan las caractersticas de la aplicacin. Se quiere convertir en un lenguaje estndar con el que sea posible modelar todos los componentes del desarrollo de una aplicacin, sin embargo no pretende definir un modelo de desarrollo sino nicamente un lenguaje de modelado.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Caractersticas
Uml ofrece nueve diagramas para modelar sistemas: Diagramas de Casos de Uso para modelar los procesos business Diagramas de Secuencia para modelar el paso de mensajes entre objetos Diagramas de Colaboracin para modelar interacciones entre objetos Diagramas de Estado para modelar el comportamiento de los casos de uso, objetos y operaciones.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Caractersticas
Diagramas de Actividad para modelar el comportamiento de los casos de uso, objetos u operaciones. Diagramas de Clases para modelar la estructura esttica de las clases en el sistema. Diagramas de Objetos para modelar la estructura esttica de los objetos en el sistema. Diagramas de Componentes para modelar componentes. Diagramas de Implementacin para modelar la distribucin del sistema
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Objetivos
Los protagonistas propusieron lo siguiente como objetivos de un mtodo que reuniera los mejores aspectos de sus predecesores: El mtodo deba ser capaz de modelar no solo los sistemas de software sino otro tipo de sistemas reales de una empresa, siempre utilizando los conceptos de la Orientacin a Objetos. Crear un lenguaje para modelado utilizable a la vez por maquinas y personas. Establecer un acoplamiento explicito de los conceptos y los artefactos ejecutables. Manejar los problemas tpicos de los sistemas complejos de misin critica. Lo que se intenta lograr con esto es que los lenguajes que se aplican siguiendo los mtodos mas utilizados sigan evolucionando en conjunto y no por separado. Y adems unificar las perspectivas entre diferentes tipos de sistemas.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Aunque las bases de datos orientadas a objetos se estn volviendo ms populares, la base de datos relacional es el mtodo predominante para almacenar datos.Los diagramas de Clases de uml se pueden usar para modelar la base de datos relacional en la que un sistema este basado, sin embargo los diagramas tradicionales de modelado capturan mas informacin sobre la base de datos relacional y son mas adecuados para modelarla. La capa de datos del diagrama de clase se puede usar para implementar directamente las clases persistentes, sus atributos, y sus relaciones en una base de datos orientada a objetos, pero en el modelado relacional, UML se queda corto. El diagrama de clases se puede usar para modelar algunos aspectos del diseo de bases de datos relacionales, pero no cubre toda la semntica involucrada en el modelado de las mismas, mayoritariamente la nocin de atributos clave que relacionan las tablas unas con otras.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Como extensin de uml, el diagrama de clases puede ser referenciado en un diagrama de relacin de entidad (ER diagram) el cual relaciona entidades que pueden ser modeladas basadas en atributos clave. Las clases y atributos hacen referencia directamente a las entidades lgicas y sus atributos. Las relaciones de herencia son referenciadas directamente a super-sub relaciones entre entidades en un diagrama ER. Al implementar el diseo relacional, es una estrategia encaminada a referenciar el diagrama ER lgico con un diagrama fsico que represente el objetivo el RDBMS. El diagrama fsico puede ser denormalizado para lograr un diseo de base de datos que tiene tiempos eficientes de acceso a los datos.
UML
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Ya en el Diagrama de Relacin de Entidad, el modelador puede empezar el proceso de determinar cmo el modelo relacional encaja; y qu atributos son claves primarias, claves secundarias, y claves externas basadas en relaciones con otras entidades. Implementar el diseo relacional, es una estrategia encaminada a referenciar el diagrama ER lgico con un diagrama fsico que represente el objetivo el RDBMS. El diagrama fsico puede ser denormalizado para lograr un diseo de base de datos que tiene tiempos eficientes de acceso a los datos.
UML
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Introduccin El diagrama de clases sirve para visualizar las relaciones entre las clases que involucran el sistema, las cuales pueden ser asociativas, de herencia, de uso y de contenido. Se utiliza cuando anlisis de dominio. necesitamos realizar un
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Elementos:
CLASE: es la unidad bsica que encapsula toda la informacin de un objeto (un objeto es una instancia de una clase. A travs de ella podemos modelar el entorno en estudio (una casa, un auto, una cuenta corriente, etc) En UML, una clase es representada por un rectngulo que posee tres divisiones:
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
En donde: Superior: Contiene el nombre de la Clase Intermedio: Contiene los atributos (o variables de instancia) que caracterizan a la Clase (pueden ser private, protected o public). Inferior: Contiene los mtodos u operaciones, los cuales son la forma como interacta el objeto con su entorno (dependiendo de la visibilidad: private, protected o public).
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Atributos: representa alguna propiedad de la clase que se encuentra en todos los objetos de la clase. Los atributos pueden representarse mostrando su nombre y su tipo e incluso su valor por defecto. Los atributos definen la estructura de una clase y de sus correspondientes objetos. El atributo define el valor de un dato para todos los objetos pertenecientes a una clase. Ejemplo: nombre, edad, peso son atributos de la clase persona Se debe definir un valor para cada atributo de una clase. Los valores pueden ser iguales o distintos en diferentes objetos. Dentro de una clase los nombres de los atributos deben ser nicos. stos tambin son denominados atributos bsicos.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
ATRIBUTOS: Los atributos o caractersticas de una Clase pueden ser de tres tipos: Public (+, ): Indica que el atributo ser visible tanto dentro como fuera de la clase, es decir, es accesible desde todos lados. Private (-, ): Indica que el atributo slo ser accesible desde dentro de la clase (slo sus mtodos lo pueden acceder). Protected (#, ): Indica que el atributo no ser accesible desde fuera de la clase, pero si podr ser accesado por mtodos de la clase adems de las subclases que se deriven (ver herencia).
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
ATRIBUTOS DERIVADOS: los atributos bsicos son atributos independientes dentro del objeto. En contraste los atributos derivados son atributos que dependen de otros atributos, los cuales pueden ser bsicos o derivados. La notacin es una diagonal como prefijo del atributo
Nombre de la clase / Atributo
Ejemplo: El rea de un Rectngulo se puede calcular conociendo su Ancho y Largo, por lo cual no se define como una atributo bsico de la caja, sino como un atributo derivado:
rectngulo Ancho Largo / Area
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Nombre de la clase
Ejemplo: Un Rectngulo puede restringir que su Ancho y Largo sean siempre iguales, lo que es equivalente a un Cuadrado. As mismo, el Area del Rectngulo est definida como el Ancho por el Largo. Las dos restricciones se muestran a continuacin:
rectngulo Ancho Largo / Area { Ancho = Largo} { Area =Ancho x Largo}
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia MTODOS:
Diagrama de clases
Un mtodo u operacin es la implementacin de un servicio de la clase, que muestra un comportamiento comn a todos los objetos. En resumen es una funcin que le indica a las instancias de la clase que hagan algo. las operaciones son funciones o transformaciones que se aplican a todos los objetos de una clase en particular. La operacin puede ser una accin ejecutada por el objeto o sobre el. Las operaciones deben ser nicas dentro de una misma clase, aunque no necesariamente para diferentes clases. No se debe utilizar el mismo nombre para operaciones que tengan un significado totalmente diferente
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Los mtodos u operaciones de una clase son la forma en como sta interacta con su entorno, stos pueden tener las caractersticas: public (+, ): Indica que el mtodo ser visible tanto dentro como fuera de la clase, es decir, es accsesible desde todos lados. private (-, ): Indica que el mtodo slo ser accesible desde dentro de la clase (slo otros mtodos de la clase lo pueden accesar). protected (#, ): Indica que el mtodo no ser accesible desde fuera de la clase, pero si podr ser accesado por mtodos de la clase adems de mtodos de las subclases que se deriven.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
RELACIONES ENTRE CLASES: Existen tres relaciones diferentes entre clases, Dependencias, Generalizacin y Asociacin. En las relaciones se habla de una clase destino y de una clase origen. CARDINALIDAD DE UNA RELACIN: indica el grado y nivel de dependencia, es decir especifica cuantas instancias de una clase se pueden relacionar a una sola instancia de otra clase 1) uno uno
Pas Tiene un Presidente
usuarios
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
3) Muchos muchos (* *)
To sobrino
*
4) Opcional (01)
mujer 1 Posee
vehculo 01
carro
ruedas
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
HERENCIA (especializacin/generalizacin) 1. La herencia es una abstraccin importante para compartir similitudes entre clases, donde todos los atributos y operaciones comunes a varias clases se pueden compartir por medio de la superclase, una clase mas general. 2. Las clases con atributos y operaciones comunes se pueden organizar de forma jerrquica, mediante la herencia. Como modelo conceptual da buena estructura a las clases, como modelo de implementacin es un buen vehculo para no replicar informacin innecesariamente. Generalizacin define una relacin entre una clase ms generalizada, y una o ms versiones refinadas de ellas. 3. La Herencia es til para el modelo conceptual al igual que para la implementacin.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
3. La superclase generaliza a sus subclases, y las subclases especializan a la superclase. El proceso de especializacin es el inverso de generalizacin. Una instancia de una subclase, o sea un objeto, es tambin una instancia de su superclase. 4. La herencia indica que una subclase hereda los mtodos y atributos especificados por una Sper Clase, por ende la sub clase adems de poseer sus propios mtodos y atributos, poseer las caractersticas y atributos visibles de la super clase 5. Cada clase tiene sus propios atributos los cuales se van especializando a medida que las clases son cada vez mas especializadas.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Diagrama de clases describiendo lo diferentes tipos de vehculo, con sus respectivas subclases.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
ASOCIACIN La relacin entre clases conocida como Asociacin, permite asociar objetos que colaboran entre si. Una asociacin describe la relacin entre clases de objetos y describe posibles ligas, donde una liga es una instancia de una asociacin, al igual que un objeto es una instancia de una clase
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
Grado de la asociacin: pueden ser binarias o ternarias. Se determina por el nmero de clases conectadas por la misma asociacin
Estudia Estudiante profesor
universidad
Puede existir una relacin ternaria entre Estudiante, Profesor, y Universidad donde "un estudiante estudia con un profesor en una universidad".
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Importancia
Diagrama de clases
Asociaciones reflexivas: Las asociaciones pueden ser reflexivas, relacionando distintos objetos de una misma clase. Ejemplo: Juan Prez es pariente-de Laura Prez, donde ambos son objetos de tipo Persona, como se muestra en la Figura
es pariente- de Juan Prez: persona Laura Prez:: persona
Ejemplo: La asociacin reflexiva pariente-de para la clase Persona se muestra en la siguiente figura
persona
Es pariente-de
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Importancia
Diagrama de clases
Atributos de liga (o asociacin) Al igual que un atributo de clase es propiedad de la clase, un atributo de asociacin (o atributo de liga) es propiedad de una asociacin. La notacin es similar a la usada para los atributos de clases, excepto que se aade a la asociacin, y no se incorpora un nombre de clase, como se muestra en la siguiente ejemplo:
trabaja para Persona Compaa
salario puesto
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Importancia
Diagrama de clases
EMSAMBLADOS: son formas especiales de asociacin entre un todo y sus partes, en donde el emsamblado est compuesto por sus componentes - Agregacin: (el objeto base utiliza al incluido para su funcionamiento). Es un tipo de relacin dinmica, en donde el tiempo de vida del objeto incluido es independiente del que lo incluye. Almacn cliente
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Importancia -Composicin:
Diagrama de clases
-(el Objeto base se construye a partir del objeto incluido). Es un tipo de relacin esttica, en donde el tiempo de vida del objeto incluido esta condicionado por el tiempo de vida del que lo incluye.
automvil
carrocera
motor
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Importancia
Diagrama de clases
DEPENDENCIA O INSTANCIACIN: Representa un tipo de relacin muy particular, en la que una clase es instanciada (su instanciacin es dependiente de otro objeto/clase). El uso ms particular de este tipo de relacin es para denotar la dependencia que tiene una clase de otra, como por ejemplo una aplicacin grfica que instancia una ventana (la creacin del Objeto Ventana esta condicionado a la instanciacin proveniente desde el objeto Aplicacin):
VENTANA
APLICACIN
UML
Herramientas case que soportan UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e importancia Criticas El Rational Unified Process describe cmo modelar visualmente aplicaciones para capturar la estructura y el comportamiento de la arquitectura y de los componentes. Rational Rose es la mejor herramienta para llevar a cabo los detalles segn el nivel de abstraccin requerido y escribir la aplicacin mediante bloques de construccin grficos. Las abstracciones visuales permiten comunicar los diferentes aspectos del software, mostrar como los elementos del sistema encajan entre s; asegurar que los bloques sean consistentes con el cdigo y mantener la consistencia entre el diseo y la implementacin.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Importancia
Diagrama de clases
Rational Rose: es la herramienta CASE que comercializan los desarrolladores de UML y que soporta de forma completa la especificacin del UML. Esta herramienta propone la utilizacin de cuatro tipos de modelos par realizar un diseo del sistema utilizando una vista esttica y otra dinmica de los modelos del sistema, uno lgico y otro fsico. Permite crear y refinar estas vistas de esta forma se crea un modelo completo que representa el dominio del problema y el sistema de software - System Architect 2001: Popkin software ofrece soporte para modelar sistemas con UML en System Architect 2001. Ofrece todas las caractersticas descriptas arriba para permitir el modelado eficiente de sistemas.
UML
Esquema Introduccin Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas VENTAJAS:
Ventajas
Hoy en da, UML ("Unified Modeling Language") esta consolidado como el lenguaje estndar en el anlisis y diseo de sistemas de computo. Entre ms complejo es el sistema que se desea crear ms beneficios presenta el uso de UML, las razones de esto son evidentes:
1) Diseo y documentacin
2) Cdigo reutilizable. 3) Descubrimiento de fallas. 4) Ahorro de tiempo en el desarrollo del software. 5) Mucho ms fciles las modificaciones 6) Ms fcil comunicacin entre programadores
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas
Diagrama de clases
CRITICAS A pesar de su status de estndar ampliamente reconocido y utilizado, UML siempre ha sido muy criticado por su carencia de una semntica precisa, lo que ha dado lugar a que la interpretacin de un modelo UML no pueda ser objetiva. Otro problema de UML es que no se presta con facilidad al diseo de sistemas distribuidos. En tales sistemas cobran importancia factores como transmisin, serializacin, persistencia, etc. UML no cuenta con maneras de describir tales factores. No se puede, por ejemplo, usar UML para sealar que un objeto es persistente, o remoto, o que existe en un servidor que corre continuamente y que es compartido entre varias instancias de ejecucin del sistema analizado.
UML
Esquema Introduccion Definiciones de UML Resea Histrica Caractersticas Objetivos Modelo Relacional de datos Diagramas de Clases Herramientas case que soporta UML Ventajas e Importancia Criticas Resumen Bibliogrfico
Bibliografa
Bases de Datos y UML. Agero Jorge, Cornejo Anabella. Universidad de La Rioja. Modelado de sistemas con UML. Popkin Software and Systems. (http://es.tldp.org/Tutoriales/doc-modeladosistemas-UML/doc-modelado-sistemas-uml.pdf).