Title: Modelo de An
1Modelo de Análisis
2Contenido
- Análisis
- Modelo de Análisis
- Modelo Conceptual
3Análisis
- En el Workflow de Análisis se analizan, refinan y
estructuran los requerimientos capturados con el
propósito de estructurar el sistema completo. - Los modelos que se desarrollan describen qué es
lo que el sistema va a hacer.
4Análisis
- Los modelos que se desarrollan están orientados
al problema y no al ambiente en el que el sistema
va a ser desarrollado e implementado.
5Análisis
- El modelo de análisis proporciona una
configuración conceptual del sistema que consiste
de objetos de control, entidad e interfaces.
6Modelo de Casos de Uso vs. Modelo de Análisis
- Use-Case Model
- Se describe usando el lenguaje del cliente.
- Es la vista externa del sistema.
- Analysis Model
- Se describe usando el lenguaje del desarrollador.
- Es la vista interna del sistema
7Modelo de Casos de Uso vs. Modelo de Análisis
- Use-Case Model
- Se usa a manera de contrato entre clientes y
desarrolladores para definir lo que el sistema
debe y no debe hacer
- Analysis Model
- Se usa para que los desarrolladores comprendan
como el sistema debe ser diseñado e implementado.
8Modelo de Casos de Uso vs. Modelo de Análisis
- Use-Case Model
- Puede contener redundancias e inconsistencias en
el enlace con los requerimientos. - Captura la funcionalidad del sistema
- Analysis Model
- No debe contener redundancias ni inconsistencias
en la interpretación de los requerimientos. - Bosqueja como realizar la funcionalidad dentro
del sistema.
9Modelo de Análisis
- Qué es?
- Clases Interfaz o Frontera
- Clases Entidad
- Clases de Control
- Diagrama de Clases de Análisis
10Qué es?
- Es un modelo conceptual de objetos que ayuda a
refinar los requerimientos y permite a los
desarrolladores describir la estructura interna
del sistema.
11Qué es?
- Es una jerarquía de paquetes de análisis que
agregan clases de análisis y realizaciones de
casos de uso. - Se describen las clases de análisis bajo sus tres
estereotipos Interfaz, Entidad y Control
12Qué es?
Analysis Model
Analysis System
Analysis Package
1
Analysis Class
Use Case Realization-Analysis
13Clases Interfaz o Frontera
- Las Clases Boundary se usan para modelar la
interacción entre el sistema y los actores. - Esta interacción involucra recibir (y presentar)
información y peticiones desde usuarios y
sistemas externos.
14Clases Interfaz o Frontera
- Representan la abstracción de de ventanas,
formularios, paneles, interfaces de comunicación,
impresoras, sensores, terminales o dispositivos.
15Clases Interfaz o Frontera
- Ejemplo
- La interfaz de pago es usada para soportar la
interacción entre el actor cajero y el caso de
uso de Registrar Pago.
Interfaz Pago
Cajero
16Clases Entidad
- Las Clases Entidad (Entity) son usadas para
modelar la información que tiene permanencia en
el tiempo y es persistente. - Modelan la información y el comportamiento
asociado de algún concepto como una persona,
evento u objeto del mundo real.
17Clases Entidad
- Usualmente muestran la estructura de datos lógica
que contribuye a la comprensión de la información
que depende el sistema.
18Clases Entidad
- Ejemplo
- La clase entidad Pago permite mostrar la
información de un pago en la interfaz de pago.
consulta
Interfaz Pago
Cajero
Pago
19Clase Controladora
- Las clases control representan la coordinación,
secuencia, gestión de transacciones y control de
otros objetos. - Usualmente se usan para encapsular el control
relacionado con un caso de uso específico.
20Clase Controladora
- También se usan para representar cálculos y
derivaciones complejas, como la lógica del
negocio que no se puede relacionar con ninguna
entidad. - La dinámica del sistema se modela en una clase
controladora, que se encarga de delegar trabajo a
otras clases.
21Clase Controladora
- Ejemplo
- La controladora de pagos es responsable de la
coordinación entre la interfaz de pagos y la
entidad pago.
Registrar
Crear
Interfaz Pago
Controladora de Pagos
Cajero
Pago
22Diagrama de Clases
- Es un diagrama que muestra las clases de análisis
y sus relaciones.
Registrar
Crear
Interfaz Pago
Controladora de Pagos
Cajero
Pago
23Modelo Conceptual
- Qué es?
- Conceptos Relacionados
- Relaciones
- Obtención del Modelo Conceptual
- Atributos.
24Qué es?
- Es una vista que muestra los conceptos básicos
del sistema sus partes y relaciones. - Se utiliza un diagrama de clases de UML
simplificado. - Es una representación de las relaciones entre
clases entidad.
25Conceptos Relacionados
- Correspondencia Tipo - Instancia
- Diagramas de Estructura Estática
- Diagramas de Clase
- Diagramas de Objetos
- Modelo Conceptual vs. Diagrama de Clases
26Correspondencia Tipo-Instancia
- La dicotomía tipo-instancia
- clase-objeto, asociación-link, parámetro-valor,
operación-llamada, etc. - En UML la distinción tipo-instancia emplea el
mismo símbolo geométrico para cada par de
elementos y subrayando el string del nombre.
27Correspondencia Tipo-Instancia
28Diagrama de Clases
- Es una colección de elementos declarativos del
modelo (clases y sus relaciones), conectados como
un grafo.
29Diagrama de Objetos
- Es un grafo de instancias de clase
- De modo Estático es una instancia de un Diagrama
de Clases. - De modo Dinámico muestra el estado detallado de
un sistema en un periodo de tiempo.
30Modelo Conceptual vs. Diagrama de Clases
Ventana
subrayado ámbito de clase
31Relaciones
- Son vínculos que se establecen entre los
conceptos o clases. - En una primera etapa del análisis revisaremos
las - Asociaciones
- Agregaciones
32Relación de Asociación
- Representa una relación o conexión semántica
entre objetos de diferentes clases
33Relación de Asociación
- Pueden ser binarias, ternarias o de orden
superior. - Por defecto son bidireccionales
34Relación de Asociación
- Asociación binaria
- Se denota gráficamente como un arco sólido
conectando dos símbolos de clase.
35Relación de Asociación
VUELO
TRIPULANTE
viaja
36Atributos de las Relaciones
- Multiplicidad Es indicada por un rango en el
rol. Indicar el número de instancias vinculadas
entre las clases. - Rol Cada final de la asociación es un rol
(opcionalmente se documenta con un nombre).
37Atributos de las Relaciones
- Navegabilidad Indica el grado de visibilidad que
tienen las intancias de una clase respecto de
otra. - Nombre Cada asociación puede tener un nombre
38Nombre de Asociaciones
Legible y Entendible
ASIENTO
posee
AVION
39La Multiplicidad
- Define cuántas ocurrencias de un tipo A pueden
ser asociados con una instancia de un tipo B.
ASIENTO
Posee
VUELO
1
40La Multiplicidad
Muchos
Exactamente uno
1
Cero or muchos
0..
Uno o muchos
1..
Cero o uno
0..1
Rango específico
2..4
41Relación de Asociación
Empresa
Persona
empleado
empleador
Trabajador salario
jefe
0..1
trabajador
Dirección de lectura del nombre de relación
42Asociación N-aria
- Asociación entre 3 o más clases.
- La multiplicidad puede ser especificada pero es
menos obvia.
43Asociación N-aria
Año
Equipo
Jugador
Registro
44Agregaciones
- Las agregaciones se identifican con relaciones
entre tipos que impliquen que uno tiene a otro.
45Agregaciones
Avion
Vuelo
El Vuelo está compuesto de Avión y Aeropuerto
46Agregación
Contiene4
3..
Polígono
Punto
ordenado
1
Propiedad-Grafica color textura densidad
1
47Composición
- Es una forma fuerte de agregación donde el tiempo
de vida de la parte coincide con el todo. - Las partes no deben sobrevivir fuera del todo.
- Operaciones de copia o eliminación al todo deben
propagarse a las partes. - Soporta encapsulamiento.
48Agregación vs. Composición
Punto
Círculo
Polígono
49Obtención del Modelo Conceptual
- Explica los conceptos significativos en el
dominio del problema. - Procedimiento
- Los tipos o conceptos
- Las asociaciones
- La multiplicidad
- Las agregaciones
50Definir las clases o conceptos
- Hacer una lista de clases de acuerdo a categorías
51Categorías
- Objetos físicos......Avión
- Descripciones de cosas..........Especificación de
vuelo - Lugares.........Aeropuerto
- Transacciones.........Venta
- Línea de transacciones......LineaProdVenta
52Categorías
- Contenedores de cosas ...........Avión
- Cosas dentro de un contenedor.....................
....Pasajero - Otros sistemas de cómputo o Dispositivos
externos...ControlTráfico - Abstractos.........................Aerofobia
- Organizaciones...............DptoVentas
53Categorías
- Eventos.................Aterrizaje
- Procesos................ReservaciónAsiento
- Reglas...................PolíticaCancelación
- Catálogos.............CatálogodePartes
- Registros de Finanzas de trabajo, contratos
legales..................Boleto - Instrumentos y servicios financieros............Lí
nea de Crédito - Manuales, y libros...ManualPersonal
54Definición de las Asociaciones
- Deben registrarse las asociaciones en que el
conocimiento de la relación se debe preservar
durante algún tiempo - No incluir asociaciones redundantes ni derivables
55Lista de Asociaciones
- A es una parte física de B .......Ala
- A es una parte lógica de B .....................Lí
neaVenta en Venta - A está físicamente contenido en
B...................... Pasajero en Avión - A está lógicamente contenido en B..... Vuelo en
Descripción de Vuelo
56Lista de Asociaciones
- A es una descripción de B .........Descripción de
Vuelo y Vuelo - A es una línea en una transacción o
reporte........LineaProducto y Venta - A se conoce/introduce/registra/
- presenta/ captura en B ...................
- ..........Reservación en ListaPasajeros
57Lista de Asociaciones
- A es miembro de B....Piloto y Avión
- A es subunidad organizativa de B..
.........Mantenimiento y Linea Aerea - A usa o dirige B ........Piloto y Avión
- A se comunica con B ......Cliente y Vendedor
58Multiplicidad
- Los extremos de una asociación pueden tener
multiplicidad, nombre y navegación. - Se define primero la multiplicidad.
59Atributos
- Los atributos deben definirse de en
correspondencia con los necesarios para
representar los objetos del mundo real y no con
componentes de software.
60Atributos
- No utilizar atributos complejos (objetos).
Utilice asociaciones
Destino es complejo, modele como concepto sus
posibles valores
Vuelo
Destino
61Atributos
- No utilizar atributos que sean llaves foraneas.
Utilice asociaciones
NumPiloto es una llave foránea, modele una
asociación con Piloto
Vuelo
NumPiloto