Uml

36
Unified modeling language UML es un lenguaje para la especificación, visualización, construcción y documentación de documentos de sistemas de software. Es independiente del lenguaje de implementación y proceso de desarrollo del software. Surge como resultado de la unificación de varios lenguajes de modelado que existían a mediados de los '90. Booch, Rumbaugh y Jacobson se unieron y promovieron UML como standard de la OMG (Object

description

15

Transcript of Uml

Unified modeling languageUML es un lenguaje para la especificacin, visualizacin, construccin y documentacin de documentos de sistemas de software.Es independiente del lenguaje de implementacin y proceso de desarrollo del software.Surge como resultado de la unificacin de varios lenguajes de modelado que existan a mediados de los '90.Booch, Rumbaugh y Jacobson se unieron y promovieron UML como standard de la OMG (Object Management Group).UML

RumbaughBoochUMLFusionOperation descriptions, message numberingHarelState chartsOdeMeyerPre and post conditionsShlaer-MellorObject life ciclesGamma et. Alpatterns, frameworks, notEmblySingleton classesWirfs-BrockResposabilitiesJacobson

Diagramas de Casos de Uso (*)Diagrama de Clases (*)Diagrama de Objetos (*)Diagrama de Estados (*)Diagramas de comportamiento: Diagramas de Estado Diagrama de Actividad Diagramas de Interaccin:Diagramas de Secuencia (*)Diagramas de ColaboracinUML - clasificacin de diagramas

UML - diagrama de casos de uso

Diagramas de implementacin: Diagrama de componentes Diagrama de distribucinUML - diagramas y modeloLos diagramas son la forma de describir un mismo modelo que provee UML

Permite modelar el sistema desde el punto de vista del usuario (actor). Cada caso de uso modela la interaccin entre un usuario y el sistema. Componentes:SistemaCaso de uso: unidad funcional completaActor: entidad externa que interacta con el sistema. Modelaun tipo de rol que juega la entidad.Relaciones: entre casos de uso y entre actoresNotacin: ejemplo

UML - diagrama de casos de uso

UML - diagrama de casos de uso

UML - diagrama de casos de uso

RelacionesEntre casos de uso

Entre actores

Junto a cada caso de uso se genera documentacin que describe:Restricciones (ej: cliente sin rojo para extraer)Escenarios del caso de uso (ej: camino normal, camino si no hay dinero en el caj ero para extraer)Precondiciones y postcondicionesNo hay forma estndard de documentarEs una vista grfica del modelo esttico y estructurado del sistema. Componentes:ClasesAtributosOperaciones

UML - diagrama de clasesNombreOeClase

UML - diagrama de clases

Asociaciones entre clases Interfaces (no se ver en este curso)- at'ibutsi:La descripcin de una clase se compone de atributos y operaciones. qu se puede describir de los atributos?+ ap&raaarE|isus

TipoAlcance (clase o instancia)E-ntErm: I nte-g e r[ 1| Cc-I I&cti n J ns'nbrE: Sing = Fabls

Valor inicial MultiplicidadVisibilidad:En Smalltalk todo atributo o variable de instancia es visible desde la clase o las subclases que lo heredan (protegida).Exiten otros tipos de visibilidadPrivada (-): slo los objetos de la clase lo ven. No se hereda el atributo.Protegida (#): slo los objetos de la clase y las subclases lo ven.Pblica (+): todo objeto puede acceder al atributo.Default (~): slo acceden objetos en el paquete de la clase

Qu se puede describir de las operaciones?Tipo de retornoParmetros, en orden y separados por comaspor cada uno: tipo, nombre, entrada/salidaAlcance: clase o instanciasNDmbre[>eClEe 3 L'i z\d 1: ti p Atii blo

Los mtodos de clase se subrayanAbstracto o concretoprstscsls 1+ spEradsnCcnParamEtrs3[Tipu 1, Tips2|i + operador, AbstractafFersonat + spEradcnCDnREtsrra-!;: IrtEgEr protocolo dE dasE + nEw[

Los mtodos abstractos estn en cursivaProtocolo al que pertenece VisibilidadEn Smalltalk todo mtodo es pblicoDescripcin del comportamiento en pseudocdigo (no estndar)Relaciones entre clases:AsociacinComposicino

AgregacinGeneralizacin{>

UML - diagrama de clases

UML - diagrama de objetos

UML - diagrama de objetos

Las relaciones de asociacin tienen: Visibilidad Multiplicidad RolesPersonaPasswDrd-dave->1-propietsfio

1./

CuentaBancaria-cuEntas

Permite modelar las instancias de los elementos contenidos en los diagramas de clases.Muestra un conjunto de objetos y sus relaciones en un momento concreto.Es muy similar a un diagrama de clases. Componentes:ObjetosRelaciones entre objetos

triangulo :PsM|ciic: Pe I 3 ene

vErtices = { {-1.1). (1.1). ;3.}}>VErticES. - {1,2), {2,

cois' = Rojsce-ntro = {3^3)

centro = ; 1,2)cois - = Ve r d e

:Pcligcnc

vert ces = { : 1.2). ! 3.2). ;2.0}. {1. 4)}

Col" r =Azul

CEntro= (0.0)

Relaciones, similares a las relaciones de asociacin de un diagrama de clases.Descripcin de un objetoNombre (opcional)Clase Estado

Permite definir los diferentes estados que podra tener una entidad durante su tiempo de vida. Componentes:Estados0 0Inicial, final IntermedioInicial Final f lomare de estado\VJ

Transiciones (triggers)nombie dE triga er

UML - diagrama de objetos

UML - diagrama de estados

UML - diagrama de estados

incondicional condicional

Ejemolo: estados de un ascensorse apret botnVAscensor subiendose aprEt botn [piso supErior' apieto boton-se [rompe

'se 11 B-g 3 a dEstinobaja pasajEro >Vr*/ As'iensor parado^iAscensor fuera de servicio* arreglase aprEt botn>se ompE

Inicial

A/V

se llega a destinose ompE

se aprEt botn]/Asce-nsor bajandoXsubE pasajEfo se ciena puErta

ase aprEt botnDescriben una interaccin que consta de un conjunto de objetos y sus relaciones, incluyendo los mensajes que se pueden enviar, para realizar un comportamiento.Existen dos tipos:Diagramas de secuenciaUML - diagramas de interaccin

UML - diagrama de secuencia

UML - diagrama de secuencia

Diagramas de colaboracin (no lo veremos)Detaca la ordenacin temporal de los mensajes que ocurren entre objetosCada objeto cuenta con una lnea de vida, que muestra el tiempo de vida del mismo.La activacin de un objeto representa la ejecucin de una operacin que realiza el mismo.Notacin:objetoB CIseB

objetoA :Clas&Am&nsaje

new>

Tipos de mensajes:directosa la clase o instancia respuesta/resultado Sincrnicos y asincrnicosSintaxis:[Condicin] * [expresin de iteracin] [valor de retorno := ] mensaje (parametros)

Iteracin:[1 ..B]: "verificarLinEaAuto mensaje

Bifurcacin:Creacin:Cliente: