análisis de sistemas clase 3

44
Desarrollo de Sistemas de Software

Upload: jose-nacari-huarcaya

Post on 22-Jan-2018

287 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Análisis de sistemas   clase 3

Desarrollo de Sistemas de Software

Page 2: Análisis de sistemas   clase 3

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

Page 3: Análisis de sistemas   clase 3

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.

Page 4: Análisis de sistemas   clase 3

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

Page 5: Análisis de sistemas   clase 3

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.

Page 6: Análisis de sistemas   clase 3

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

Page 7: Análisis de sistemas   clase 3

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

Page 8: Análisis de sistemas   clase 3

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.

Page 9: Análisis de sistemas   clase 3

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.

Page 10: Análisis de sistemas   clase 3

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

Page 11: Análisis de sistemas   clase 3

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.

Page 12: Análisis de sistemas   clase 3

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

Page 13: Análisis de sistemas   clase 3

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

Page 14: Análisis de sistemas   clase 3

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

Page 15: Análisis de sistemas   clase 3

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)

Page 16: Análisis de sistemas   clase 3

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

Page 17: Análisis de sistemas   clase 3

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.

Page 18: Análisis de sistemas   clase 3

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)

Page 19: Análisis de sistemas   clase 3

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

Page 20: Análisis de sistemas   clase 3

Modelo de Datos

Notación Chen

muchos

cero o uno

uno a

uno o muchosa

uno a uno

Page 21: Análisis de sistemas   clase 3
Page 22: Análisis de sistemas   clase 3

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

Page 23: Análisis de sistemas   clase 3

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

Page 24: Análisis de sistemas   clase 3

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

Page 25: Análisis de sistemas   clase 3

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.

Page 26: Análisis de sistemas   clase 3

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.

Page 27: Análisis de sistemas   clase 3

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.

Page 28: Análisis de sistemas   clase 3

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.

Page 29: Análisis de sistemas   clase 3

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.

Page 30: Análisis de sistemas   clase 3

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.

Page 31: Análisis de sistemas   clase 3

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.

Page 32: Análisis de sistemas   clase 3

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.

Page 33: Análisis de sistemas   clase 3

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

Page 34: Análisis de sistemas   clase 3

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

Page 35: Análisis de sistemas   clase 3

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

Page 36: Análisis de sistemas   clase 3

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

Page 37: Análisis de sistemas   clase 3

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

Page 38: Análisis de sistemas   clase 3

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

Page 39: Análisis de sistemas   clase 3

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

Page 40: Análisis de sistemas   clase 3

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

Page 41: Análisis de sistemas   clase 3

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

Page 42: Análisis de sistemas   clase 3

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

Page 43: Análisis de sistemas   clase 3

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

Page 44: Análisis de sistemas   clase 3

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