Prof. Mariano Mancuso. Sistemas de información y control diagrama de clases

Prof. Mariano Mancuso Sistemas de información y control – diagrama de clases UML ¿Qué son los modelos? ¿Para qué sirven los modelos? ¿Cuáles son lo

3 downloads 25 Views 811KB Size

Recommend Stories


CASOS DE USO y DIAGRAMA DE CLASES
CASOS DE USO y DIAGRAMA DE CLASES EJERCICIO 1. MÁQUINA DE RECICLAJE Se trata de construir un sistema que controle una máquina para reciclar latas, bot

Ejemplo UML. Terminal de Punto De Venta (TPDV) Diagrama de casos de uso Diagrama de clases
Ejemplo UML Terminal de Punto De Venta (TPDV) Diagrama de casos de uso Diagrama de clases José M. García - ESI 04/05 1 06 de marzo de 2005 Descrip

Diagrama básico de la Biblioteca de Clases Base
Tema 1- Introducción a tecnología NET con Mono y fundamentos de C# ¿Qué es C# y NET? C# es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET. Su sintaxis básica deriva de C/C++

Sistemas de control administrativo
Sistemas de control administrativo Elaborar un mapa conceptual del concepto control administrativo Competencias: Apoyar el desarrollo empresarial

Story Transcript

Prof. Mariano Mancuso

Sistemas de información y control – diagrama de clases

UML ¿Qué son los modelos? ¿Para qué sirven los modelos? ¿Cuáles son los modelos de UML? ¿Se usan todos...?

¿Qué son los modelos? Un modelo es una representación que capta los aspectos más importantes de lo que estamos modelando y simplifica u omiten el resto Un modelo de un sistema software está construido en un lenguaje de modelado. Tiene semántica y notación. Incluye gráficos y texto

¿Para qué sirven los modelos?

• Para pensar el diseño de un sistema La simplicidad de crear y de modificar modelos permite un pensamiento creativo e innovación a bajo precio

• Para explorar económicamente múltiples soluciones • Para trabajar con sistemas complejos

Tipos de modelos y perspectivas Usando la misma notación (UML) se pueden considerar tres perspectivas: • Esencial o conceptual: los diagramas describen cosas del mundo real o dominio de interés • De especificación: los diagramas describen abstracciones software independientes de la implantación • De implantación: los diagramas describen implementaciones software en un lenguaje particular

UML (lenguaje de modelado unificado) es un lenguaje para especificar, construir, visualizar y documentar los objetos de un sistema de software.

Diagrama UML

Use Case Use Case Diagramas de Diagrams Diagrams Secuencia

Use Case Use Case Diagramas de Diagrams Diagrams Casos de Uso

Scenario Scenario Diagramas de Diagrams Diagrams Colaboración Scenario Scenario Diagramas de Diagrams Diagrams Estados

State State Diagramas de Diagrams Diagrams Clases

Modelo

Diagramas de Actividad

State State Diagramas de Diagrams Diagrams Objetos State State Diagramas de Diagrams Diagrams Componentes

Component Component Diagrams Diagramas Diagrams de

Distribución

Diagrama de Casos de Uso

Reintegro Cuenta Corriente



Verificar Operación

Cliente



Reintegro Cuenta de Crédito

Muestra las distintas operaciones que se esperan de un sistema y cómo se relacionan con su entorno

Diagrama de clases

Muestra las distintas las clases atributos, métodos y relaciones entre ellas

Diagramas de Secuencia (objetos) : Encargado

:WInPréstamos

:Socio

:Video

:Préstamo

prestar(video, socio) verificar situación socio verificar situación video

registrar préstamo entregar recibo

Muestra la interacción de un conjunto de objetos en una aplicación a través del tiempo

Diagrama de Colaboración (objetos) :Socio

:Video 2: verificar situación socio

1: prestar(video, socio)

3: verificar situación video :WInPréstamos

5: entregar recibo : Encargado

4: registrar préstamo

:Préstamo

Muestra la forma de representar interacciones entre objetos,

Diagrama de Estados alta

baja

sin préstamos

prestar

número_préstamos = 0

devolver[ número_préstamos = 1 ]

número_préstamos > 0 con préstamos prestar

devolver[ número_préstamos > 1 ]

Muestra el conjunto de estados por los cuales pasa un objeto durante su vida en una aplicación, junto con los cambios que permiten pasar de un estado a otro

Diagrama de Actividad Buscar Bebida

[ no hay café ]

[ no zumo ]

[ hay café ] [ hay zumo ] Poner café en filtro

Añadir agua al depósito

Coger taza Coger zumo

Poner filtro en máquina

Encender máquina / cafetera.On Café en preparación indicador de fin Servir café

Beber

Muestran transiciones internas, sin hacer mucho énfasis en transiciones o eventos externos.

Diagrama de Componentes Interfaz de Terminal

Gestión de Cuentas

Rutinas de conexión

Control y Análisis

Acceso a BD

Muestra las dependencias lógicas entre componentes software

Diagrama de Despliegue Servidor Central

Control y Análisis Comment

Acceso a BD Comment

Rutinas de Coneccion Comment

Terminal de Consulta Rutinas de Coneccion Comment

Punto de Venta

Interfaz de Terminal Comment

Rutinas de Coneccion Comment

Gestión de Cuentas Comment

Interfaz de Terminal Comment

Muestran la organización de los componentes del sistema

Modelo y Metamodelo • Para la definición y formalización de UML, los diferentes conceptos se han modelado, a su vez, con UML. • Esta definición recursiva de denomina Metamodelo • El metamodelo describe de manera formal los elementos de modelado, la sintaxis y la semántica asociados a ellos

Extracto del Metamodelo Clase

instancia de

Objeto *

* enlaza

Relacion *

Diagrama de Clases

enlaza

instancia de

Enlace *

Diagrama de Objetos

Diagrama de clases

Diagrama de Clases

Las clases representan los bloques de construcción más importantes de cualquier sistema orientado a objetos. Una clase es una descripción de un conjunto de objetos que comparten los mismos atributos, operaciones, relaciones y semántica.

Diagramas de clases UML (-) visibilidad privada (#) visibilidad protegida (+) visibilidad pública atributo Visibilidad nombre : tipo = valor inicial ejemplo

- temperatura : numérico = 0

operación Visibilidad nombre (lista parámetros ) : tipo de expr retornada ejemplo

+BuscarValor (n:int) : int

Asociaciones Son relaciones entre clases que indica alguna conexión significativa que deseamos preservar durante algún tiempo Tipo de asociaciones: Unarias, Binarias, n-arias Clases asociación

Cada instancia de una asociación (enlace) es una tupla de referencias a objetos

Asociación y Enlace asociación empleado

empleado

empleador

empresa

trabaja para

1..*

1

(emp1, em)

enlace em : empresa

emp1 : empleado

(emp3, em)

emp2 : empleado

emp3 : empleado

(emp2, em)

Nombre de rol

Banco

Asociación binaria

0..1 0..* cliente Persona esCasado : Booleano esDesocupado : Booleano fechaDeNacimiento : Fecha edad : Entero nombre : Literal apellido : Literal sexo : enum{ masculino, femenino } ingresos(Fecha) : Entero esposo

gerente

empleado 0..* esposa 0..1

0..*

Compañía compañíasGerenciadas nombre : Literal cantidadDeEmpleados : Entero empleador

valorAcción()

0..*

Multiplicidad

0..1

Asociación unaria

Matrimonio lugar : Literal fecha : Fecha

Trabajo cargo : Literal fechaDeInicio : Fecha salario : Entero

Clase asociación

Multiplicidad Multiplicidad: define cuantas instancias de una clase A pueden asociarse con una instancia de una clase B una tienda tiene muchos artículos

tienda

1

articulo * Un artículo se vende en una tienda

El valor de la multiplicidad indica cuántas instancias se pueden asociare con otras en un momento concreto

Tipos de multiplicidad *

Cero o más

1..* Uno o más 1..40 5

De uno a 40 Exactamente 5

3,5,8 Exactamente 3, 5 u 8

Agregación y Composición agregación

composición

Agregación • Una clase forma parte de otra clase • Es un tipo de asociación más fuerte • Relación no simétrica entre clases donde uno de los extremos cumple un rol dominante

Composición

• Dependencia existencial. El elemento dependiente desaparece al destruirse el que lo contiene • Hay una pertenencia fuerte. Se puede decir que el objeto contenido es parte constitutiva y vital del que lo contiene

• Los objetos contenidos no son compartidos

Clase Asociación Una asociación puede representarse por medio de una clase para añadir, por ejemplo, atributos y operaciones

Asociación n-aria

Generalización relación “es-un-tipo-de”

Herencia es el mecanismo mediante el cual los elementos más específicos incorporan la estructura y el comportamiento de elementos mas generales

Lista de categorías de clases La identificación de clases del dominio del problema tiene “mucho de arte” • • • • • • •

Objetos tangibles o físicos (personas) Lugares (escuela) Roles de la gente (gerente) Contenedores (tienda) Cosas de un contenedor (artículos) Organizaciones (departamento de ventas) Hechos (venta, pago)

Algunos puntos a tener en cuenta.... Comenzar con el modelo del dominio

▫ Identificar las clases y sus asociaciones ▫ Incluir los atributos más importantes ▫ No preocuparse inicialmente por las operaciones ▫ No pensar en jerarquías (al principio...)

Seguimos con el caso práctico...

Diagrama de clases

Refinamiento del Diagrama de Clases

Incluimos: Relaciones de jerarquía Patrones de diseño (opcional) Agregaciones y composiciones Restricciones OCL (opcional) Algunas operaciones evidentes

Seguimos con el ejemplo...

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.