36
MODULO III MODULO III Análisis y Diseño de Análisis y Diseño de Análisis y Diseño de Análisis y Diseño de Sistemas de Información Sistemas de Información INF INF-162 162 III. UML 3.1 Introducción 1 Facilitador: Miguel Facilitador: Miguel Cotaña Cotaña 02 de Abril 2009

III - cotana.informatica.edu.bocotana.informatica.edu.bo/downloads/introduccion2-09.pdf · Análisis y Diseño de ... Un lenguaje de propósito general para el modelado orientado

  • Upload
    lamminh

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

MODULO IIIMODULO III

Análisis y Diseño de Análisis y Diseño de Análisis y Diseño de Análisis y Diseño de Sistemas de InformaciónSistemas de Información

INFINF--162162

III. UML

3.1 Introducción

1Facilitador: Miguel Facilitador: Miguel CotañaCotaña 02 de Abril 2009

¿QUÉ ES UML?¿QUÉ ES UML?

UML = Unified Modeling Language

Un lenguaje de propósito general para el modelado orientado a objetos.

Impulsado por el Object Management Group (OMG, www.omg.org). Se

encarga de la definición y

2

encarga de la definición y mantenimiento de estándares para aplicaciones de la industria de la

computación

UML combina notaciones provenientesUML combina notaciones provenientesdesde:

Modelado Orientado a Objetos;Modelado de Datos;Modelado de Componentes;Modelado de Flujos de Trabajo

3

Modelado de Flujos de Trabajo(Workflows).

Entre la guerra de los métodos,aparecieron los siguientes:

Booch (Rational Software);

HISTORIAHISTORIA

Booch (Rational Software);OOSE (Objet-Oriented SoftwareEngineering) de Jacobson(Objectory: casos de uso);OMT (Object Modeling Technique)

4

OMT (Object Modeling Technique)de Rumbaugh (G&E);Fusión;Shlaer-Mellor;Coad-Yourdon.

Rumbaugh

UML “aglutina“ enfoques OOUML “aglutina“ enfoques OO

UML

Jacobson

Meyer

Harel

Gamma et. al.

Shlaer-Mellor

Odell

Booch

Pre- and Post-conditions

State Charts

Object life cycles

5

Wirfs-BrockFusion

Embly

Gamma et. al.

Responsabilities

Operation descriptions, message numbering

Singleton classes

Frameworks, patterns, notes

2000 UML 1.4

2005? UML 2.0

Revisiones menores

UML 1.52003

Nov ‘97 UML aprobadopor el OMG

1998

1999

UML 1.2

UML 1.3 Revisiones menores

6

UML, es un lenguaje de modelado, yno un método. La mayor parte delos métodos consisten, al menos alno un método. La mayor parte delos métodos consisten, al menos alprincipio, en un lenguaje y en unproceso para modelar.

El lenguaje de modelado es lanotación (principalmente gráfica) de

7

notación (principalmente gráfica) deque se valen los métodos paraexpresar los diseños. El proceso esla orientación que nos dan sobre lospasos a seguir para hacer el diseño.

UML, define una notación y unmetamodelo:metamodelo:

Notación: es el material gráfico quese ve en los modelos; es la sintaxisdel lenguaje de modelado;

Metamodelo: Modelo que defineotros modelos (un diagrama,

8

otros modelos (un diagrama,usualmente un diagrama de clases,que defina la notación)

UML, es un lenguaje estándar paraUML, es un lenguaje estándar paraescribir planos de software;

UML, es un lenguaje expresivo;

UML es un lenguaje para:

Visualizar;

Especificar;

9

Especificar;

Construir;

Documentar.

MODULO IIIMODULO III

Análisis y Diseño de Análisis y Diseño de Análisis y Diseño de Análisis y Diseño de Sistemas de InformaciónSistemas de Información

INFINF--162162

III. UML

3.2 Modelado básico

10Facilitador: Miguel Facilitador: Miguel CotañaCotaña 02 de Abril 2009

Para comprender UML, se necesitaadquirir un modelo conceptual del

MODELO CONCEPTUAL DE UMLMODELO CONCEPTUAL DE UML

adquirir un modelo conceptual dellenguaje, que comprende:

Los bloques básicos deconstrucción;

Las reglas que dictan cómo sepueden combinar esos bloques

11

pueden combinar esos bloquesbásicos;

Algunos mecanismos comunes quese aplican a través de UML.

El vocabulario de UML incluye 3clases de bloques de construcción:

BLOQUES DE CONSTRUCCIONBLOQUES DE CONSTRUCCION

clases de bloques de construcción:1.Elementos;2.Relaciones;3.Diagramas.

Los elementos son abstracciones

12

Los elementos son abstraccionesque son ciudadanos de primeraclase en un modelo; Las relacionesligan los elementos; los diagramasagrupan elementos.

Existen 4 tipos:1. Elementos estructurales;

1. Elementos1. Elementos

1. Elementos estructurales;2. Elementos de

comportamiento;3. Elementos de agrupación;4. Elementos de anotación.

13

4. Elementos de anotación.

Estos elementos son los bloquesbásicos de construcción OO de UML.

Son los nombres de los modelosUML. En su mayoría son partes

1.1 Elementos estructurales1.1 Elementos estructurales

UML. En su mayoría son partesestáticas de un modelo yrepresentan cosas que sonconceptuales o materiales. Existen7 tipos:Clase: conjunto de objetos que

14

Clase: conjunto de objetos quecomparten atributos, operaciones,relaciones y semántica;

interfaz: colección de operacionesque especifican un servicio de unaque especifican un servicio de unaclase o componente. Una interfazdescribe el comportamiento visibleexternamente de ese elemento. Unainterfaz puede representar elcomportamiento completo de unaclase o componente o sólo una

15

comportamiento completo de unaclase o componente o sólo unaparte de ese comportamiento;

IOrtografía

colaboración: define unainteracción y es una sociedad deinteracción y es una sociedad deroles y otros elementos quecolaboran para proporcionar uncomportamiento cooperativo mayorque la suma de loscomportamientos de sus elementos;

16

comportamientos de sus elementos;

Cadena deresponsabilidad

Caso de uso: es una descripción deun conjunto de secuencias deun conjunto de secuencias deacciones que un sistema ejucuta yque produce un resultadoobservable. Se utiliza parastructurar los aspectos decomportamiento en un modelo. Uncaso de uso es realizado por una

17

comportamiento en un modelo. Uncaso de uso es realizado por unacolaboración;

Realizar pedido

Clase activa: es una clase cuyosobjetos tienen uno o más procesosobjetos tienen uno o más procesoso hilos de ejecución. Es igual queuna clase, excepto en que susobjetos representan elementos cuyocomportamiento es concurrentecon otros elementos;

18

con otros elementos;

GestorEventos

Suspender()VaciarCola()

componente: es una parte física yreemplazable de un sistema quereemplazable de un sistema queconforma con un conjunto deinterfaces y proporciona laimplementación de dicho conjunto.Representa típicamente elempaquetamiento físico dediferentes elementos lógicos;

19

diferentes elementos lógicos;

Orderform.java

nodo: elemento físico que existe entiempo de ejecución y representatiempo de ejecución y representaun recurso computacional, que porgeneral dispone de memoria ycapacidad de procesamiento.

Servidor

20

Servidor

Son las partes dinámicas de losmodelos UML. Hay 2 tipos:

1.2 Elementos de comportamiento1.2 Elementos de comportamiento

modelos UML. Hay 2 tipos:interacción: conjunto demensajes;Máquina de estados: especifica lasecuencia de estados por las quepasa un objeto

21

pasa un objeto

esperandodibujar

Son las partes organizativas. Soncajas en las que pude

1.3 Elementos de agrupación1.3 Elementos de agrupación

cajas en las que pudedescomponerse un modelo:paquete: organiza elementos engrupo. Es puramente conceptual(sólo existe en tiempo dedesarrollo).

22

desarrollo).

Reglas del negocio

Son las partes explicativas. Soncomentarios que se pueden aplicar

1.4 Elementos de anotación1.4 Elementos de anotación

comentarios que se pueden aplicarpara describir, clarificar y hacerobservaciones sobre cualquierelemento de un modelo:nota: se utilizarán para adornar losdiagramas con restricciones o

23

diagramas con restricciones ocomentarios

Devuelve una copia del objeto

receptor

Existen 4 tipos:1. Dependencia;

2. Relaciones2. Relaciones

1. Dependencia; >

2. Asociación;3. Generalización;4. Realización.

24

Estos relaciones son los bloquesbásicos de construcción pararelaciones UML.

3. Diagramas3. Diagramas

Es la representación gráfica de unconjunto de elementos.

� Diagrama de Casos de Uso

� Diagrama de Clases

� Diagrama de Objetos

Diagramas de Comportamiento

� Diagrama de Estados

� Diagrama de Actividad

Diagramas de Interacción

25

Diagramas de Interacción

� Diagrama de Secuencia

� Diagrama de Colaboración

Diagramas de implementación

� Diagrama de Componentes

� Diagrama de Despliegue

Use Case

StateDiagrams

StateDiagramas deUse Case

DiagramsUse CaseDiagrams

Diagramas de Casos de Uso

ScenarioDiagrams

ScenarioDiagrams

Diagramas deColaboración

StateDiagrams

StateDiagrams

Diagramas deComponentes

StateDiagrams

StateDiagrams

Diagramas de Objetos

Use CaseDiagrams

Use CaseDiagrams

Diagramas deSecuencia

DiagramsState

DiagramsDiagramas de

Clases

Modelos

26

ComponentDiagramsComponent

DiagramsDiagramas dedespliegue

ScenarioDiagrams

ScenarioDiagrams

Diagramas deEstados Diagramas de

Actividad

En OMG UML 2.0 se definen unaserie de diagramas adicionales a los

UML 2.0UML 2.0

serie de diagramas adicionales a losestablecidos en OMG UML 1.x. Elconjunto de diagramas se encuentraorganizado en torno a doscategorías: diagramas

27

categorías: diagramasestructurales (representados enverdes) y diagramas dinámicos ode comportamiento (representadosen celeste

En UML 2.0 hay 13 tipos diferentes de diagramas. diagramas.

Use CaseDiagrams

Use CaseDiagrams

Diagramas de Estructuracompuestacompuesta

ScenarioDiagrams

ScenarioDiagrams

Diagramas de

Diagrama detiempos

Diagrama deSecuencias

Use CaseDiagrams

Use CaseDiagrams

Diagramas decomponentes

StateDiagrams

StateDiagrams

Diagramas deEstructurapaquetepaquete Diagrama gral

interacción

28

DiagramsDiagrams

Diagramas dedespliegue

Diagrama deCasosCasos de de UsoUso

Diagramas deMaquina de

estadosestados

ScenarioDiagrams

DiagramaDe De objetosobjetos

Diagramas deClases

Diagramas deActividad

UML 2.0 Diagrama decomunicación

Diagrama de EstructuraCompuesta. Se emplea paraCompuesta. Se emplea paravisualizar de manera gráfica laspartes que definen la estructurainterna de un clasificador. Cuando seutiliza en el marco de una clase, estediagrama permite elaborar un

29

diagrama permite elaborar undiagrama de clases donde semuestran los atributos y las clases,indicando asociaciones de agregacióno de composición.

Diagrama General de Interacción.Se emplea fundamentalmente paraSe emplea fundamentalmente pararepresentar las interacciones, a travésde diagramas o fragmentos dediagramas de secuencias, entre losactores y el sistema como una gran

30

actores y el sistema como una grancaja negra, y de diagramas deactividades en los que aparecendichos fragmentos.

Diagramas de Tiempos. Empleados paramostrar las interacciones donde elpropósito fundamental consiste en razonarpropósito fundamental consiste en razonarsobre la ocurrencia de eventos en el tiempoque provocan el cambio de estados de unelemento estructural.Diagrama de Comunicación . Equivalente

31

Diagrama de Comunicación . Equivalenteal diagrama de colaboración, los diagramasaparecen dentro de un frame que poseeuna etiqueta para indicar el tipo dediagrama.

Estructural :pkg Diagrama de Paquete pkg Diagrama de Paquete

cmp Diagrama Componentes

Dinámica o Comportamientouc Diagrama de Casos de Uso

act Diagrama de Actividad

32

act Diagrama de Actividad

stm Diagrama de Máquina de Estados

sd Diagrama de Secuencia

El Diagrama de Casos de Uso permiten,entre otras cosas, refinar el MCU a travésentre otras cosas, refinar el MCU a travésde las asociaciones de: <<incluye>>).Permite incorporar el flujo de eventos de uncaso de uso pequeño dentro de un caso deuso base de la aplicación. <<extend>>).Permite incorporar el flujo de eventos de un

33

Permite incorporar el flujo de eventos de uncaso de uso pequeño bajo la ocurrencia deuna determinada condición, cuando lamisma evalúa verdadero.

El Diagrama de Clases, no ha sufridocambios radicales en OMG UML 2.0.cambios radicales en OMG UML 2.0.El Diagrama de Secuencia, se le haincorporado:

opt : Indica que el fragmento de diagrama esopcional.alt : Indica que el fragmento de diagrama es una

34

alt : Indica que el fragmento de diagrama es unaalternativa.loop : Indica que el fragmento de diagrama seejecuta repetidas veces.par : Indica que el fragmento de diagrama incluyehilos de ejecución paralelos

El Diagrama de Clases de diseño.El Diagrama de Componentes, uno de losEl Diagrama de Componentes, uno de loselementos incorporados consiste en ladefinición de puertos a través de los cualescada componente software entrega unconjunto de servicios a través de interfacesproveídas .

35

proveídas .El Despliegue de la Solución sobre laInfraestructura TI, A través del diagrama dedespliegue se combina la Arquitectura de TIcon la Arquitectura de Aplicación o Software.

Diagramas de Estructura:Diagrama de clasesDiagrama de componentesDiagrama de objetosDiagrama de objetosDiagrama de estructura compuesta (UML 2.0) Diagrama de despliegueDiagrama de paquetes

Diagramas de Comportamiento:Diagrama de actividadesDiagrama de casos de uso

36

Diagrama de casos de usoDiagrama de estados

Diagramas de Interacción:Diagrama de secuenciaDiagrama de colaboraciónDiagrama de tiempos (UML 2.0) Diagrama de vista de interacción (UML 2.0)