análisis de sistemas clase 3
TRANSCRIPT
Desarrollo de Sistemas de Software
El Modelo Orientado a Objetos para Desarrollar Sistemas de SW
(1) Declaración del proposito
(2) Aspectos Ambientales
(3) Aspectos de Información
(4) Aspectos de Comportamiento
(5) Especificación de requerimientos de usuario
(6) Determinación de la frontera hombre-máquina
(7) Requerimientos del Sistema de Software
(8) Los conceptos sobre orientación a objetos
(9) El Análisis orientado a objetos y la arquitectura del modelo de análisis
(10) Análisis de Casos de Uso
(11) Análisis de clases, responsabilidades y atributos
(12) Análisis de clases: Las relaciones
(13) Análisis de paquetes
ASPECTOS DE INFORMACIÓN
Los aspectos de información describen la información requerida para soportar el sistema de
software por desarrollar, permitiéndonos entender y nombrar dicha información, organizarla y
definir su significado, reducir la redundancia y asegurar su corrección, validez e integridad.
No hay duda de que estos aspectos tienen que estar basados en las políticas de la organización.
Para representar los aspectos de información, a distintos niveles de abstracción, se utilizan los
modelos de datos, que son colecciones de herramientas conceptuales para describir datos,
relaciones entre ellos y restricciones de consistencia que se deben cumplir. Posiblemente el más
conocido de los modelos de datos sea el de entidad – relación.
ASPECTOS DE INFORMACIÓN
El modelo Entidad – Relación
Especificación de entidades, relaciones y atributos
Tabla de evento entidad
Eventos Triviales
Diagrama de transición de estados
Modelo Entidad/Relación
Es una representación conceptual detallada de los datos de la organización.
Muestra entidades, sus atributos, las relaciones y las características de estas
relaciones.
El modelo entidad/relación es el modelo conceptual más utilizado para el diseño
conceptual de bases de datos. Fue introducido por Peter Chen en 1976.
Por qué Modelo Entidad-Relación
Usa la normalización
Valida y mejora el diseño lógico que satisface ciertas restricciones, el
cual evita la duplicación innecesaria de datos
Proceso de descomposición de relaciones con anomalías para producir
relaciones bien-estructuradas más pequeñas
No siempre provoca el mejor rendimiento
Por qué Modelo Entidad-Relación
Ejemplo Redundancia de Datos
VUELO
vuelo# fecha aerolinea avion#
DL242 10/23/08 Delta k-yo-33297
DL242 10/24/08 Delta t-up-73356
DL242 10/25/08 Delta o-ge-98722
AA121 10/24/08 American p-rw-84663
AA121 10/25/08 American q-yg-98237
AA411 10/28/08 American h-fe-65748
Redundancia: La aerolínea se repite para el mismo númerode vueloInconsistencia: Cuando el nombre de la aerolínea cambia para un número de vuelo, ésta debe ser cambiada envarias filas
Entidad
Tipo entidad – colección de entidades (frecuentemente corresponde a una tabla)
Ej. Empleado, Automóvil, Reservación, Curso, etc.
Instancia de una entidad - persona, lugar, objeto, evento, concepto (frecuentemente
corresponde a una fila en una tabla)
Ej. Pedro Picapiedra, Renault, reservación la función de cine de las 5:00pm, Ing. de datos, etc.
Entidad: Denominación
Se identifican con un sustantivo en singular
Ej. Cliente (no clientes).
Su identificación debe ser única, concisa y descriptiva para la organización.
Ej. Una orden de compra de la empresa hacia un proveedor no puede denominarse igual
a una orden de compra de un cliente hacia la empresa.
El nombre usado para una entidad debe ser el mismo en todos los DER en los
cuales aparece dicha entidad en la empresa.
Entidad: Clasificación
Entidad Fuerte
Es aquella que existe independientemente de la existencia de otra entidad. Ej. Factura
Entidad Débil
Es aquella cuya existencia depende de la existencia de otra entidad. Ej. Línea de Factura
Entidad Asociativa
Es una entidad que nace de la asociación de dos entidades y que contiene atributos que relacionan ambas entidades.
Entidad Recursiva (Reflexiva)
Es aquella que tiene una dependencia así misma. Ej. Empleado
Relación
Es una asociación entre una o más entidades que es de interés para la organización.
Es el vinculo funcional que existe entre dos o más entidades.
Ej. La relación entre las entidades alumno y curso es que un alumno puede llevar uno
o más cursos y un curso puede ser llevado por uno, ninguno o más alumnos.
Cardinalidad de Relaciones
1– a – 1
Cada entidad en la relación tiene extactamente una entidad relacionada
1– a – N
Una entidad en un lado de la relación se asocia con muchas entidades en el otro lado de la
relación
N – a – N
Las entidades en cada lado de la relación pueden tener muchas entidades relacionadas
Atributos: Clave Primaria Primary Key (PK)
Es un atributo o una combinación de atributos que identifica de manera
única un registro en una relación
Puede ser:
Simple : Ej. Nro Factura
Compuesta: Ej. Dirección
Atributos: Características de las Claves Primarias
No cambian de valor
No deben ser nulas
Son únicas
Sustituye llaves compuestas muy largas por una declaración
simple
Atributos: Clave Primaria Compuesta
Es una PK que esta compuesta por más de un atributo
Ejemplo:
Identificador de Línea de Factura
(Número de Factura,Código de Artículo)
Atributos: Clave Foránea o Ajena ForeignKey (FK)
Es un atributo en una entidad que es la PK o forma parte de la
PK de otra entidad.
Esta restricción implementará la asociación entre tablas en las
Bases de Datos Relacionales
Atributos: Restricciones de Integridad
El modelo de datos incluye varios tipos de restricciones o reglas de negocio:
Restricciones de Dominio
Todos los valores de un atributo de una entidad deben estar comprendidos en el
mismo dominio.
Restricciones de Integridad
Cada entidad tiene una PK y los valores de una PK tienen que ser válidos,
especialmente NO NULOS.
Cada valor de una FK debe coincidir con el valor de la PK de otra entidad.
Modelo de Datos
producto_ordenado
numero_orden (FK)
id_producto (FK)
cant idad_ordenada
producto
id_producto
nombre_linea (FK)
meta_v enta (FK)
stock
prec io
costo
linea_producto
nombre_linea
meta_v enta
orden_pedido
numero_orden
id_cliente (FK)
f echa_loc
f echa_rec
cliente
id_cliente
nombre
tipo
zip
f ac tura
numero_f actura
numero_orden (FK)
f echa
pago
f echa_pago
numero_f actura (FK)
monto
Materia_Prima
cod_materia_prima
nombre_mat_prima
cant idad
ubicacion
Empleado
cod_emp
cod_ct (FK)
nombre
especialidad
direccion
sueldo
Centro_Trabajo
cod_ct
nombre
ubicacion
Maquinaria
cod_maquina
cod_ct (FK)
nombre_maq
ubicacion_maq
tipo
orden_trabajo
numero_ot
numero_orden (FK)
linea_orden_trabajo
id_producto (FK)
numero_ot (FK)
cod_materia_prima (FK)
as ignac ion_trabajo
numero_ot (FK)
cod_ct (FK)
Modelo de DatosNotación Ingeniería de Información : Genérica
A BA asociada a Uno y Solo Un B
A B
A B
A asociada a Cero o Un B
A asociado a Un o Varios B
A BA asociado a Cero, Un o
Varios B
A BA asociado a Varios B
Modelo de Datos
Notación Chen
muchos
cero o uno
uno a
uno o muchosa
uno a uno
Diagrama Entidad/Relación para el Caso de Estudio versión 1
Professor Coordinador
Pregunta Tema Curso
es un tipo de
crea enseña
incluye contiene
coordina
requisito
ASPECTOS DE INFORMACIÓN
El modelo Entidad – Relación
Especificación de entidades, relaciones y atributos
Tabla de evento entidad
Eventos Triviales
Diagrama de transición de estados
Especificación de Entidades, Relaciones y Atributos
La especificación de entidades, relaciones y atributos constituye lo que
tradicionalmente se ha denominado diccionario de datos.
A continuación veremos las especificaciones para
Entidades Simples
Relaciones
Entidades asociativas
Atributos
Especificación de Entidades Simples
Nombre: Es un nombre único en el modelo para identificar la entidad:
normalmente es un sustantivo en singular para diferenciarlo de un almacenamiento
que generalmente es un sustantivo en plural.
Significado: Describe el papel que desempeña la entidad en el modelo.
Atributos: Establece las características o propiedades que describen la entidad.
Identificadores: Son los atributos claves o llaves que permiten identificar una
ocurrencia de la entidad.
Especificación de Entidades Simples
La entidad Profesor del caso de estudio v.1 se podría especificar así:
Nombre: Profesor
Significado: Persona que facilita el aprendizaje de los cursos a los alumnos.
Atributos: Código-Profesor, nombre, dirección, documento de identidad, fecha de
nacimiento, categoría, condición, dedicación, fecha de ingreso y departamento.
Identificadores: Código-Profesor.
Especificación de Relaciones
Nombre: Es un nombre único, para identificar la relación.
Entidades participantes: Nombran las entidades que toman parte en la relación.
Significado: Describen cuando se produce un enlace de la relación
Multiplicidad o cardinalidad por entidad: Muestra los límites de los enlaces que
pueden tener las ocurrencias de cada una de las entidades participantes en la
relación.
Especificación de Relaciones
La relación Enseña o Dicta del caso de estudio v.1 se podría especificar así:
Nombre: Dicta
Entidades participantes: Profesor y Curso
Significado: Los profesores enseñan cursos, es decir un profesor solo enseña un
conjunto definido de cursos.
Multiplicidad o cardinalidad por entidad: Para profesor la cardinalidad es de 1 a
muchos y para Curso es de uno a muchos.
Especificación de entidades asociativas
Nombre: Es un nombre único, que permite su ubicación en su rol de entidad y relación.
Entidades participantes: Es la lista de las entidades que participan en la relación.
Significado: Explica la razón de su existencia.
Atributos: Es la lista de los datos que describen la relación que representa esta entidad.
Identificadores: Son los atributos claves que permiten diferenciar una ocurrencia de otra
ocurrencia de la relación.
Multiplicidad por entidad: Son las restricciones de cardinalidad por entidad.
Especificación de entidades asociativas
La entidad asociativa Enseña del caso de estudio se podría especificar así:
Nombre: Enseña
Entidades participantes: Profesor y Curso.
Significado: Almacena información respecto a la asociación que existe entre Profesor y
Curso.
Atributos: Horario, Aula, Texto.
Identificadores: Código-profesor, Código-curso.
Multiplicidad por entidad: Para profesor la cardinalidad es de 1 a muchos y para Curso
es de uno a muchos.
Especificación de Atributos
Nombre: Es un nombre único del atributo, que permite referenciarlo.
Entidad: Es la entidad a la que pertenece.
Significado: Es la descripción de la característica o propiedad que representa.
Retención: Establece la manera en que se dispone del valor del atributo y tiene 3 alternativas:
Almacenado
Es el valor común que tiene un atributo y se registra en algún medio.
Derivado
Cuando es resultado de un cálculo o formateo de datos conocidos, por ejemplo el atributo edad de una persona cuyo valor es calculado a partir del atributo fecha de nacimiento.
Temporal
Cuando el atributo tiene significado durante un tiempo conocido, ejemplo: Dirección, celular, saldos de deuda.
Especificación de Atributos
Tipo de dato: Puede ser abstracto o lista. Es abstracto cuando no se conocen de
antemano los posibles valores que puede tener el atributo; mientras que es lista
cuando se conocen dichos valores, por ejemplo si de antemano se sabe que el
estado civil de un profesor solo puede ser soltero o casado, entonces el tipo de
dato de ese atributo corresponde a una lista.
Tipo de dato abstracto o lista de valores: Si el tipo de dato es abstracto, en ese
ítem se define qué tipo de dato abstracto es: númerico, carácter, etc; mientras que
si es de tipo lista, se muestra la lista de los posibles valores que puede asumir el
atributo que se esta definiendo: soltero y casado para el ejemplo del profesor, si el
tipo de dato fuera lista.
Especificación de Atributos
El atributo documento de identidad de la entidad Profesor del caso de estudio v.1 se
podría especificar así:
Nombre: Documento de identidad.
Entidad: Profesor
Significado: Documento personal que corresponde al documento nacional de
identidad (DNI)
Retención: Almacenado
Tipo de dato: Abstracto
Tipo de dato abstracto: Numérico
Especificación de Atributos
El atributo estado-civil de la entidad Profesor del caso de estudio v.1 se podría
especificar así:
Nombre: Estado Civil
Entidad: Profesor
Significado: Registra su relación conyugal
Retención: Almacenado
Tipo de dato: Lista
Lista de valores: Soltero, casado
ASPECTOS DE INFORMACIÓN
El modelo Entidad – Relación
Especificación de entidades, relaciones y atributos
Tabla de evento entidad
Eventos Triviales
Diagrama de transición de estados
Tabla de Evento Entidad
La tabla de evento entidad es producto de la comparación de los aspectos de información y
los eventos. Permite asegurarnos de que todas las ocurrencias o registros de las entidades y
relaciones sean:
Creadas (c), leídas (l), actualizadas (a), comparadas (m) y eliminadas (e).
en el momento adecuado, es decir cuando ocurren los eventos correspondientes.
Recordar como eventos tenemos:
1. Profesor consulta pregunta
2. Profesor ingresa pregunta
3. Coordinador revisa pregunta
4. Profesor actualiza pregunta
5. Profesor elimina pregunta
Tabla de Evento Entidad para la versión 1 del caso de estudio
1 2 3 4 5
Profesor (E) m m m m
Coodinador (E) m
Pregunta (E) l c l,a l,a l,e
Curso (E) l l l l l
Tema (E) l l l l l
Crea (R) l c l e
Dicta (R) l l l
Coordina (R) l
Contiene (R) l c l l e
Incluye (R) l
Entidad (E)-Relación (R)Evento
ASPECTOS DE INFORMACIÓN
El modelo Entidad – Relación
Especificación de entidades, relaciones y atributos
Tabla de evento entidad
Eventos Triviales
Diagrama de transición de estados
Eventos Triviales
Como establecimos en el estudio de los aspectos ambientales, los eventos que crean,
actualizan, eliminan y permiten consultar todas las entidades se denominan eventos
triviales.
Normalmente estos eventos son accionados por las entidades triviales que son
aquellas que no cumplen su función como entidad en el diagrama E-R debido a que
solo se tiene a una sola persona o una sola instancia como es en el caso del
Administrador y el Coordinador
Eventos Triviales
N° Nombre de Evento
6 Administrador crea profesor
7 Administrador consulta profesor
8 Administrador modifica profesor
9 Administrador elimina profesor
10 Administrador crea coodinador
11 Administrador consulta coodinador
12 Administrador modifica coodinador
13 Administrador elimina coodinador
14 Administrador crea curso
15 Administrador consulta curso
16 Administrador modifica curso
17 Administrador elimina curso
18 Coordinador crea tema
19 Coordinador consulta tema
20 Coordinador modifica tema
21 Coordinador elimina tema
ASPECTOS DE INFORMACIÓN
El modelo Entidad – Relación
Especificación de entidades, relaciones y atributos
Tabla de evento entidad
Eventos Triviales
Diagrama de transición de estados
Diagrama de Transición de Estados
El diagrama de transición de estados muestra los efectos del tiempo sobre las
entidades y sus relaciones, considerar las reglas de negocio.
Ejemplo de estados: Creada, aprobada, No aprobada, Eliminada.
Considerar que el estado posee un tiempo determinado como dicho estado.
Una acción es algo que pasa de inmediato
Creada
Aprobada No Aprobada
Profesor ingresa preguntacrear
Coordinador revisa preguntaactualizar
Profesor actualiza Preguntaactualizar
Profesor actualiza preguntaactualizar
Coordinador revisa preguntaactualizar
Profesor elimina Preguntaeliminar
Profesor elimina Preguntaeliminar
Profesor elimina Preguntaeliminar
Para la versión 2 del caso de estudio:
1. Dibujar el diagrama de entidad relación. (6 puntos)
2. Especificar por lo menos un entidad, una relación y un atributo relevantes. (4 puntos)
3. Preparar la tabla de evento entidad. (4 puntos)
4. Escribir la lista de eventos triviales. (3 puntos)
5. Dibujar el diagrama de transición de estados para la entidad que tenga más estados. (3 puntos)
Tarea 3