Está en la página 1de 9

Repaso General

ANÁLISIS Y DISEÑO Recordamos …


DE SISTEMAS • Los modelos de datos especifican la vista
sobre los datos que van a ser almacenados en
Clase 13: Modelado Funcional – Diagrama el sistema.
de Flujo de Datos (DFD)
• Los modelos funcionales especifican:
– Por qué y dónde se usan los datos,
Mg. María Mercedes Vitturini
[mvitturi@cs.uns.edu.ar] – cómo se recopilan los datos,
Dpto. Cs. e Ingeniería de la Computación
Universidad Nacional del Sur
– cómo se transforman,
– cómo se transmiten,
Primer cuatrimestre 2012
– etc.
2 AyDS2012 - Clase 13- MMV

Metodologías y Modelos
Análisis Estructurado
Funcionales
• Modelos del paradigma Orientados a Objetos • Propone 3 modelos:
– Modelo de Casos de Uso – Modelo de funcional: modela las
• Diagrama de Casos de Uso funcionalidades de un sistema (¿Qué funciones
– Diagrama de Casos de Uso Extendido debe ofrecer el sistema?)
• Descripción de Casos de Uso  – Modelo de datos retenido: modela los datos
que maneja un sistema (¿Qué datos maneja y
• Modelos de la filosofía Estructurada como se relacionan?)
– Diagrama de Flujo de Datos (DFD) • Modelos Entidad/Relación, Relacional y
• Diagrama de Contexto. Normalización
• Diagrama de Flujo de Datos Extendido (de varios – Modelo de comportamiento en el tiempo:
niveles). modela el comportamiento del sistema (¿Cómo
evoluciona un sistema?)
3 AyDS2012 - Clase 13- MMV 4AyDS2012 - Clase 13- MMV

Modelos del Análisis


Estructurado
Tres modelos centrados en el
Diccionario de Datos
+ Diagrama de contexto
+ Diagrama de Flujo de Datos (DFD). El Diagrama de Flujo
+Descripción Estructuradas de
Proceso (DEP). de Datos (DFD)
Modelo
Funcional
+Modelo Entidad-Relación
(MER) Diccio-
nario de + Diagrama de Transición
+ Modelo Relacional
Datos
de Estados (DTE) DFD – El modelo
+Normalización
Modelo Modelo funcional para la
de Datos de
Comporta
metodología
Retenidos
miento estructurada
5 AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
1
El Diagrama de Flujo de Datos
Modelo Funcional (DFD)
Modelo de funcional – modela la vista de El diagrama de flujo de datos – es un modelo
funcionalidades ofrecidas por un sistema. donde se especifica el flujo de datos y las
transformaciones que se le aplican al mover desde
• Es el primer modelado propuesto por la
las entradas hacia la salidas.
metodología estructurada.
• Durante el análisis del problema se construyen • Pertenece a la vista funcional del sistema para la
• Diagrama de Flujo de Datos (DFD). metodología estructurada.
• Descripción estructurada de procesos (DEP’s). • El DFD es un diagrama que la particularidad de
• Transversalmente se construye el Diccionario de organizarse en niveles según el grado de detalle.
Datos

7 AyDS2012 - Clase 13- MMV 8AyDS2012 - Clase 13- MMV

Diagrama de Contexto DFD - Componentes


Novedades_inscripción_
Alumno examen Comprobante_de_inscripción • Procesos: transforman los datos. Proceso P1

Materia_código Alumno
Sistema de • Flujos de Datos: cañerías por donde fluyen los
Inscripción Consulta_Mesas_por_turno_ datos dato x
Novedades_Mesa_examen
Exámenes Finales materia
Docente
• Terminadores: objetos que producen o
Docente Reporte_alumnos_inscriptos_a_una_ consumen los datos. Terminador
mesa
Turno_Mesa
Interfaz_SisIns_SisActas • Almacenamientos: objetos que almacenan
Sistema de Actas datos pasivamente. almacenamiento
de examen
Diagrama de Contexto: DFD de Nivel 0
9 AyDS2012 - Clase 13- MMV 10
AyDS2012 - Clase 13- MMV

Ejemplo DFD Procesos


CLIENTES
Procesos – realizan la transformación de los flujos
Registrar
Ventas
de datos de entrada en los flujos de datos de
1.1 salida. La responsabilidad de los procesos es
Empleado
Ventas
transformar entradas en salidas.
ARTICULOS • Los procesos tienen un nombre que describe la
VENTAS función que realiza: “verbo en infinitivo + objeto”.
– Ejemplos: Actualizar Clientes; Calcular descuento.
Cerrar • Los procesos se numeran. El número está en
Caja Empleado relación con el nivel del diagrama al que pertenece el
1.2 Reporte_Diario_Caja Ventas proceso.
Sinónimos: burbuja, función, transformación.
AyDS2012 - Clase 13- MMV 11 12
AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
2
Flujos de datos Flujos de Datos
Flujo de Datos – es una “tubo” por donde fluye dato • Los flujos de datos entran o salen de procesos
o información con estructura conocida. y conectan al proceso con:
– un terminador, ó.
• Se representan con un arco con dirección que
– un almacenamiento, u.
entra o sale de un proceso.
– otro proceso.
• Describen el movimiento de bloques o paquetes
de información de una parte del sistema a otra.
• Observación: los flujos de datos que conectan
• Pueden tener un nombre que debe ser procesos con almacenamientos (entrante o
representativo del flujo. saliente) no llevan nombre.
Ejemplos: factura_número, novedades_clientes, etc.

13
AyDS2012 - Clase 13- MMV 14
AyDS2012 - Clase 13- MMV

Almacenamientos Flujos de Datos y Almacenamientos


Almacenamientos – representan a un depósito de • Los almacenamientos pueden:
datos que perduran en el tiempo. – Escribirse con flujos de datos que vienen desde
los procesos al almacenamiento:
• Cada almacenamiento representa a un conjunto de • Para agregar nuevos datos. Almacen.
P1

datos en reposo con características similares. • Para borrar algunos de los datos existentes
• Elementos que se corresponden con • Para modificar el contenido de los datos existentes.
almacenamientos en un sistema manual son
carpetas, ficheros, etc. – Leerse con flujos de datos que salen desde el
• Los almacenamientos pueden responder a un almacenamiento y llevan la información hacia el
requerimiento del usuario, o por algún aspecto proceso que lo requiere.
conveniente de la implementación del sistema.
Almacen. P1
Sinónimos: archivos, bases de datos.
AyDS2012 - Clase 13- MMV 15 16
AyDS2012 - Clase 13- MMV

Almacenamientos Terminadores
• Los almacenamientos son pasivos: Terminadores – representa a personas, sistemas u
– Los datos no viajan a los largo del flujo, a menos organizaciones fuera del contexto del sistema
que el proceso lo solicite. – Ejemplos: empleado de atención al público, departamento de
ventas, sistema de contabilidad, etc.
– En el caso de escritura de un almacenamiento, es
el proceso el responsable de realizar los cambios. Características:
• Son externos al sistema.
• Los flujos conectados a un almacenamiento, sólo • Los flujos con ellos representan la interface del sistema.
pueden transportar los datos que el • No es posible que el analista o el sistema cambie el
contenido de un terminador, o la manera en que trabaja.
almacenamiento guarda. Por esta razón los flujos
• Las relaciones entre terminadores no se muestran en el
de datos desde/hacia almacenamiento no se
DFD.
etiquetan.
Sinónimos: Entidad Externa, (Actor en AOO)
17
AyDS2012 - Clase 13- MMV AyDS2012 - Clase 13- MMV 18

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
3
El diagrama de contexto Ejemplo Diagrama de Contexto
Novedades_inscripción_
Recordamos: Alumno examen Comprobante_de_inscripción
• El diagrama de contexto es un modelo gráfico Turno_y_materia Alumno
del producto y sus límites para representar el Sistema de
alcance del sistema. Inscripción Consulta_Mesas_por_turno_
Novedades_Mesa_examen
Exámenes Finales materia
• Se suele construir durante la primer etapa del Docente
ciclo de vida de un proyecto.
Docente Reporte_alumnos_inscriptos_a_una_
• Es el primer diagrama de flujo de datos y mesa
también se lo conoce como diagrama de flujo de Turno_y_materia
Interfaz_SisIns_SisActas
datos de nivel 0. Sistema de Actas
de examen
19 AyDS2012 - Clase 13- MMV 20 AyDS2012 - Clase 13- MMV

Ejemplo: Venta Electrónica de


El Diagrama de Flujo de Datos Material Bibliográfico (VEMB)
Descripción:
• El Diagrama de Contexto (DC) es un caso • La funcionalidad es de uso público, pero se requiere que
particular de Diagrama de Flujo de Datos (DFD). los clientes estén registrados previamente.
• Vamos a ver: • Los clientes podrán opcionalmente efectuar pedidos de
compra de uno o más libros.
– Que el DFD es un diagrama de varias “hojas”.
Cada hoja del diagrama está asociada a un “nivel • Cuando el cliente confirma el pedido deberá ingresar la
del DFD”. forma de pago y el domicilio donde enviar el pedido. El
sistema responde por mail informando el número de pedido
– La primer hoja del DFD es el DC que se conoce y el detalle de la compra.
como “DFD de nivel 0” o “contexto”. • Desde el departamento de ventas en cualquier momento
podrá emitir un informe de los pedidos de compra de un
período informado por él.
21 AyDS2012 - Clase 13- MMV 22 AyDS2012 - Clase 13- MMV

DFD de Nivel 1
Diagrama de Flujo de Datos
Novedades_registración Departame
nto Ventas
Cliente
• El modela la vista funcional de un sistema.
Web Actualizar
_Clientes
• La funcionalidad completa de un sistema puede
1 requerir de varias burbujas o procesos (por
Clientes Generar ejemplo más 20).
Reporte
Ventas • Un diagrama de más de 6 (+ - 4) burbujas no
Libros 4
resulta claro y pierde efectividad.
Registrar_
Pedidos Pedidos • La solución está en dividir el problema en sub-
2 Cliente
Web problemas permite mostrar al sistema en
Confirmar
término de las piezas que lo componen,
_Pedido Notificación_recepción organizados en niveles
3
23 AyDS2012 - Clase 13- MMV 24
AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
4
Niveles del DFD Niveles del DFD
• Que el DFD es un diagrama de varias “hojas”. Cada • El nivel top es el llamado Diagrama de Contexto o
hoja del diagrama está asociada a un nivel del DFD. Diagrama de Nivel Cero. Consta de una sola
• Cada nivel proporciona sucesivamente más burbuja, que tiene el nombre del sistema.
detalles sobre una porción del nivel anterior. • En el Diagrama de Contexto se muestran todos los
terminadores y las interfaces con ellos.
• Niveles:
• El nivel que sigue, Nivel Uno, se muestran las
– Nivel Top
principales funciones del sistema y las interfaces
– Nivel Bottom entre ellas.
– Niveles intermedios • En el Nivel Dos, si individualizan las
funcionalidades de cada función del sistema.
• …
25
AyDS2012 - Clase 13- MMV 26
AyDS2012 - Clase 13- MMV

Diagrama de Contexto Diagrama de Nivel 1


FE_1

P_1 P_2
FS_1
FE_1 C FE_3
A
FE_2
P_3
archivo
Sistema XXX FS_2 FS_1
FE_3
P_5
B FE_2
P_4 Varios procesos que se
A numeran .
FS_2 Se dibujan en una hoja.
Primer división
27 AyDS2012 - Clase 13- MMV funcional
28 del
AyDS2012 sistema
- Clase 13- MMV

Nivel 2 - Proceso 3 Tipos de Procesos


FE_1
• Así en un DFD se pueden distinguir
P_1 P_2
FE_3 – Procesos no primitivos: son los que van a
P_3
permitir definir próximos niveles en el DFD
archivo
FS_1 (“explotan” en próximos niveles).
P_5
FE_2
P_4 – Procesos o funciones primitivas: son aquellos
FS_2 procesos con funcionalidad atómica.
• El limite de cuando se llego a una burbuja
P_3.1 P_3.3 primitiva no esta formalmente definido. Dependerá
de la política de documentación adoptada.

P_3.2
29
AyDS2012 - Clase 13- MMV 30
AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
5
Balanceo entre niveles Balanceo entre niveles
Nivel 1 Nivel 2
• El nivel n de un DFD debe balancear con su
FE_1 P_1.1
nivel n+1:
– Todos los flujos que de entrada al proceso de FE_1
nivel n deben aparecer como flujo de entrada de
algún proceso de nivel n+1 P_1 archivo
FE_2
– Todos los flujos que de salida del proceso de
nivel n deben ser flujo de salida de algún proceso FS_1
FS_1
de nivel n+1. P_1.2
archivo
FE_2

31 AyDS2012 - Clase 13- MMV 32 AyDS2012 - Clase 13- MMV

Organización del DFD en


niveles

El DFD + el DD
Un esquema de organización del DFD (convención)
• Un nivel para el Diagrama de Contexto.
• Un nivel para la división del sistema en subsistemas
(cuando el tamaño del sistema lo justifica).
• Un nivel para los módulos principales (actualizar
entidades, registrar eventos, resolver consultas, El DFD sin su DD no es
generar informes, otros). un medio de
• Un nivel para la descomposición de los módulos en comunicación efectivo
sus funcionalidades detalladas.

33 AyDS2012 - Clase 13- MMV

El modelo funcional Entradas en el DD


• La especificación funcional completa incluye:
– Diagrama de Flujo de Datos (DFD) + • En el DD deben existir entradas que describan:
– Diccionario de Datos (DD)+ – Cada uno de los flujos de datos con nombre del
DFD (entrada y salida)
– Descripción Estructurada de Procesos (DEP´s).
– La composición de los almacenamientos.
• El DFD solo no es una especificación suficiente. – La composición de cualquier tipo estructurado de
un flujo o almacenamiento.
– ¿Qué información tienen los flujos y
almacenamientos? – Los datos elementales.
– Rta: Consultar el Diccionario de Datos.

35 AyDS2012 - Clase 13- MMV 36 AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
6
Ejemplo: Almacenamientos de
Ejemplo: Flujo de Datos Datos
• Nombre: Nodedades_clientes
• Nombre: Clientes
• Composición:
• Composición:
Novedades_clientes = [cliente_tipo-doc +
clientes = cliente_tipo-doc + cliente_nro-
cliente_nro-doc + cliente_nombre + doc + cliente_nombre + cliente_dirección
cliente_dirección | + cliente_fecha-alta
cliente_tipo-doc + cliente_nro-doc |
cliente_tipo-doc + cliente_nro-doc +
(cliente_nombre) + (cliente_dirección )]

37
AyDS2012 - Clase 13- MMV 38
AyDS2012 - Clase 13- MMV

Ejemplo: Dato Elemental


• Nombre: estado_civil
• Tipo: alfanumérico Guía para la construcción


Longitud: 1
Subconjunto válido / Significado
del DFD
– S : soltero D : divorciado
– C : casado P : separado
– V : viudo O : otro
• Fórmula de Cálculo
• Unidad: Una propuesta para
construir el diagrama

39
AyDS2012 - Clase 13- MMV

I. Identificar entidades
Pautas para Construir un DFD
externas
• Las siguientes reglas ayudan a confeccionar DFD´s
más claros: • Ligado a la definición del alcance o contexto del
1. Identificar entidades externas al sistema. sistema.
2. Identificar las entradas y salidas del sistema. • Identificar las personas o sistemas que van a
3. Elegir cuidadosamente los nombres para cada uno interactuar con sistemas y cómo (aportando y/o
de los elementos del diagrama (procesos, flujos, consumiendo los datos que éste genere).
etc.)
4. Numerar los procesos.
5. Revisar el diagrama con el usuario y volver a
dibujarlo tantas veces como sea necesario.
6. Evitar DFD complejos y hacer uso de los niveles.
7. Estar preparado para corregir el modelo.
41
AyDS2012 - Clase 13- MMV 42
AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
7
II. Identificar las entradas y III. Elegir cuidadosamente
salidas del Sistema nombres
• No poner como nombre de proceso a nombres
• Ligado a la definición del alcance o contexto del
de personas o sectores. Lo importante es la
sistema. Se determina ¿qué información
tarea que se realiza y no quién la realiza.
requiere y genera el sistema?
• Elegir verbos que indiquen la acción específica
• En caso de duda, “aclarar” con el usuario.
para los nombres de procesos. No verbos vagos,
• El primer resultado es el diagrama de contexto. como por ejemplo: procesar, manejar, hacer, ...
• No usar abreviaturas en los nombres.
• No usar términos de computación.
• Usar nombres claros, que den idea del
significado del componente.
43
AyDS2012 - Clase 13- MMV 44
AyDS2012 - Clase 13- MMV

Ejemplos de nombres IV. Numerar los procesos


• Procesos: un verbo en infinitivo más un objeto. • Designar un número por proceso.
– Ejemplos: Actualizar_Clientes, Calcular_Descuento • Usar numeración jerárquica en base a los niveles
• Flujos de datos: del DFD.
– Ejemplos: Novedades_Clientes, Cliente_Código, • La numeración no da idea de orden de proceso.
Reporte_Alfabético_Clientes
Se usa para referenciar a los procesos.
• Almacenamientos: nombres representativos de la
información que tienen. • Ejemplo:
– Ejemplos: Clientes, Vendedores, Alquileres – Si un proceso lleva el número 3.4 podemos afirmar que
• Terminadores: nombres del dominio de aplicación se trata de un proceso que pertenece al segundo nivel
del DFD y que ese nivel está asociado con la
– Ejemplos: Encargado_Compras, Clientes, Empleado_
Atención_al_Público “explotación” de la burbuja 3 del nivel anterior.
45
AyDS2012 - Clase 13- MMV 46
AyDS2012 - Clase 13- MMV

V. Evitar los DFD´s complejos VI. Volver a dibujar el DFD


• Un propósito del DFD es que debe ser leído y • Se debe dibujar tantas veces como sea
comprendido por el usuario. necesario, hasta que:
• El diagrama debe ser fácilmente entendido, – Sea técnicamente correcto.
fácilmente asimilado, y placentero a la vista: – Sea aceptado por el usuario.
– No definir demasiados procesos en un nivel. – Sea claro, como para mostrarlo a los usuarios de
– Evitar en la medida de lo posible cruzar flujos en un primer nivel.
nivel. • Pregunta Yourdon:
– Ubicar las entradas a la izquierda y las salidas a la – ¿Le gustaría a usted volar en un avión diseñado por
derecha. ingenieros que se aburrieron de sus dibujos de
– El DFD debe caber cómodamente en una hoja. ingeniería luego de la segunda iteración?
– Usar 7 + -2 como límite. La excepción es el Diagrama
de Contexto. 47
AyDS2012 - Clase 13- MMV 48
AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
8
Temas de la Clase de Hoy
• Análisis Estructurado el DFD
– Componentes,
– Niveles y balanceo entre niveles

• Relación entre el DFD y DD.

• Bibliografía:
– “Análisis Estructurado Moderno”. Edward Yourdon –
Capítulos 8 y 9.

49 AyDS2012 - Clase 13- MMV

Estas transparencias proveen sólo una referencia a los temas. Para su estudio debe remitirse a la bibliografía.
9

También podría gustarte