La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Área de Ingeniería Telemática 1 Universidad de Sevilla UML UML (Unified Modeling Language) Lenguage Unificado de Modelado Antonio J. Sierra.

Presentaciones similares


Presentación del tema: "Área de Ingeniería Telemática 1 Universidad de Sevilla UML UML (Unified Modeling Language) Lenguage Unificado de Modelado Antonio J. Sierra."— Transcripción de la presentación:

1 Área de Ingeniería Telemática 1 Universidad de Sevilla UML UML (Unified Modeling Language) Lenguage Unificado de Modelado Antonio J. Sierra

2 Área de Ingeniería Telemática 2 Universidad de Sevilla UML Indice pHistoria pIntroducción pObjetivos del modelo pCríticas pModelo Conceptual de UML pClases pDiagrama de Clases

3 Área de Ingeniería Telemática 3 Universidad de Sevilla UML Historia pEntre mitad de los setenta y finales de los ochenta. l De 10 a 50 métodos orientados a objetos (1989- 1994) pNo cubrían las necesidades completamente. pDe la experiencia de estos: l El método Booch, l El método OOSE (Object-Oriented Software Engineering) de Jacobson l El método OMT (Object Modeling Technique) de Rumbaugh

4 Área de Ingeniería Telemática 4 Universidad de Sevilla UML Introducción pUML (Unified Modeling Language) es un lenguaje gráfico de modelado de sistemas de software; modeladosoftwaremodeladosoftware pUML incluy un conjunto de técnicas de notación gráfica para crear modelos abstractos de sistemas especificos, referidos como modelo UML. pUML es un lenguaje gráfico de modelado de sistemas de software más conocido y utilizado en la actualidad. pRespaldado por el OMG (Object Management Group). OMG p Es un lenguaje gráfico para visualizar, especificar, construir y documentar un sistema de software. pUML ofrece un estándar para describir un "plano" del sistema (modelo): l incluyendo aspectos conceptuales tales como procesos de negocios y funciones del sistema, l y aspectos concretos como expresiones de lenguajes de programación, l esquemas de bases de datos y componentes de software reutilizables.

5 Área de Ingeniería Telemática 5 Universidad de Sevilla UML Introducción pUML es un "lenguaje" para especificar y no para describir métodos o procesos. pSe utiliza para definir un sistema de software, para detallar los artefactos en el sistema y para documentar y construir. l Es el lenguaje en el que está descrito el modelo. pSe puede aplicar en una gran variedad de formas para dar soporte a una metodología de desarrollo de software (tal como el Proceso Unificado Racional o RUP), pero no especifica en sí mismo qué metodología o proceso usar. RUP

6 Área de Ingeniería Telemática 6 Universidad de Sevilla UML Introducción pUML no puede compararse con la programación estructurada, pues UML significa (Lengua de Modelación Unificada), pUML no es un programa, solo se representa en forma dediagrama la realidad de una utilización en un requerimiento. pLa programación estructurada, es una forma de programar como lo es la orientación a objetos, pLa orientación a objetos viene siendo un complemento perfecto de UML, pero no por eso se toma UML sólo para lenguajes orientados a objetos

7 Área de Ingeniería Telemática 7 Universidad de Sevilla UML Objetivos del modelo pVisualizar como es o queremos que sea un sistema. pEspecificar la estructura y el comportamiento. pProporcionar plantillas que nos guíen en la construcción de un sistema. pDocumentar las decisiones que hemos adoptado.

8 Área de Ingeniería Telemática 8 Universidad de Sevilla UML Críticas a UML pA pesar de estar ampliamente reconocido y utilizado, UML siempre ha sido muy criticado por su carencia de una semántica precisa, lo que ha dado lugar a que la interpretación de un modelo UML no pueda ser objetiva. pOtro problema de UML es que no se presta con facilidad al diseño de sistemas distribuidos. l transmisión, serialización, persistencia,...

9 Área de Ingeniería Telemática 9 Universidad de Sevilla UML Modelo Conceptual de UML pBloques básicos de construcción de UML l Elementos l Relaciones l Diagramas pReglas de UML pMecanismos comunes l Especificaciones l Adornos l Divisiones comunes l Mecanismos de extensibilidad

10 Área de Ingeniería Telemática 10 Universidad de Sevilla UML Bloques básicos de construcción de UML pElementos l Elementos estructurales l Elementos de comportamiento l Elementos de agrupación l Elementos de anotación pRelaciones l Dependencia l Asociación l Generación l Realización pDiagramas l clases l objetos l casos de uso l de secuencia l de colaboración l de estados l de actividades l de componentes l de despliegue

11 Área de Ingeniería Telemática 11 Universidad de Sevilla UML Elementos estructurales pClases pInterfaz pColaboración pCasos de uso pClases activas pComponentes pNodos

12 Área de Ingeniería Telemática 12 Universidad de Sevilla UML Elementos Estructurales: Las clases Ventana +origen #altura : Float -esMaestra : Boolean = false abrir()cerrar()mover()dibujar()ponerAlarma(t:Temperatura) valor() : Temperatura Nombre(abstracta en cursiva) atributos operaciones java::awt::Rectangle Nombre de Camino de clases Nombres Simples de clases Cliente Responsabilidades -- descriptivo de lo que realiza responsabilidades público protegido privado

13 Área de Ingeniería Telemática 13 Universidad de Sevilla UML Atributos [visibilidad] nombre {multiplicidad}[:tipo] [=valor inicial] [{propiedades}] pPropiedades predefinidas changeable No hay restricciones para modificar el valor del atributo changeable No hay restricciones para modificar el valor del atributo addOnly Una vez creado un valor no puede ser eliminado o modificado (con multiplicidad mayor que 1) addOnly Una vez creado un valor no puede ser eliminado o modificado (con multiplicidad mayor que 1) frozen El valor del atributo no se puede modificar tras inicializar el objeto frozen El valor del atributo no se puede modificar tras inicializar el objeto

14 Área de Ingeniería Telemática 14 Universidad de Sevilla UML Operaciones [visibilidad] nombre [(lista de parámetros)][:tipo de retorno] [{propiedades}] pEn la lista por parámetros [dirección] nombre : tipo [= valor por defecto]  dirección puede ser in para parámetro de entrada (no modificable), out para salida (modificable) e inout para entrada (modificable).  propiedades puede ser leaf no puede ser polimórfica leaf no puede ser polimórfica isQuery sin efectos laterales isQuery sin efectos laterales sequential los invocadores deben coordinarse para que en el objeto sólo haya un único flujo sequential los invocadores deben coordinarse para que en el objeto sólo haya un único flujo guarded se puede invocar exatamente una operación a un mismo tiempo sobre el objeto guarded se puede invocar exatamente una operación a un mismo tiempo sobre el objeto concurrent operación concurrente concurrent operación concurrente

15 Área de Ingeniería Telemática 15 Universidad de Sevilla UML Ejemplos Cliente 3 nombredirecciónteléfonofechaNacimiento Factura Almacén Icono{root} origen:Punto Mostrar() Transacción acciones tuvoExito()deshacer() Producto idnombreprecioubicación Envio [2..*] Responsabilidades --Mantener información relativa a productos enviados Botón{leaf} Mostrar()

16 Área de Ingeniería Telemática 16 Universidad de Sevilla UML Elementos de Comportamiento pInteracción, mensajes intercambiados entre un conjunto de objetos. pMáquina de estados, secuencia de estados por los que pasa un objeto, una interacción durante su vida en respuesta a eventos. dibujar Esperando

17 Área de Ingeniería Telemática 17 Universidad de Sevilla UML Elementos de agrupación y elementos de anotación pLos elementos de agrupación, son partes organizativas pLos elementos de anotación, son partes explicativas. Paquetes Notas

18 Área de Ingeniería Telemática 18 Universidad de Sevilla UML Relación en UML pDependencia: relación semántica entre dos elementos, en la cual un cambio a un elementos puede afectar a la semáantica del otro. pAsociación: relación estructural que describe un conjunto de enlaces, los cuales son conectiones entre objetos. pGeneralización: relación de especialización/generalización en la cual los objetos del elemento especializado (hijo) puede sustituir a los objetos del elemento general (padre). pRealización: relación semántica entre clasificadores, en donde un clasificador especifica un contrato que otro clasificador garantiza que cumplirá. patrónempleado 0..1*

19 Área de Ingeniería Telemática 19 Universidad de Sevilla UML Ejemplo import java.awt.Graphics; class HolaMundo extends java.applet.Applet{ public void paint(Graphics g){ g.drawString(“¡Hola, Mundo!”,10,10); }} HolaMundo paint() g.drawString(“¡Hola,Mundo!”,10,10) HolaMundo paint() Applet Graphics Applet HolaMundo Panel Container Component Object ImageObserver


Descargar ppt "Área de Ingeniería Telemática 1 Universidad de Sevilla UML UML (Unified Modeling Language) Lenguage Unificado de Modelado Antonio J. Sierra."

Presentaciones similares


Anuncios Google