Professional Documents
Culture Documents
Universidad de Valladolid
Campus de Segovia
______________________
TEMA 7, SECCIN 2:
MODELADO DE
FUNCIONES
MODELIZACIN DE FUNCIONES
CONCEPTOS
Tcnica grfica que emplea diagramas en forma de red
para modelar las funciones que realiza el sistema y los
datos que fluyen entre ellas.
CONCEPTOS
El modelado se realiza a distintos niveles de abstraccin
lo que implica:
una simplificacin de la complejidad del sistema
la elaboracin de un conjunto de DFDs jerarquizados.
COMPONENTES DE UN DFD
Proceso o transformacin
Almacn de Datos
Entidades Externas
Flujo de datos
PROCESOS
El proceso:
Es la componente del diagrama que representa cualquier
funcin que transforma los flujos de datos de entrada en uno
o varios flujos de datos de salida.
PROCESOS
Representacin (Yourdon):
Crculo en cuyo interior se indica un nmero y un nombre.
El nombre debe cumplir las siguientes normas.
Ser lo ms representativo posible respecto de la funcin que
representa.
Ser lo ms breve posible, i.e. formado por un verbo seguido de
un sustantivo.
El nombre y el nmero del proceso deben ser nicos dentro del
DFD.
1
GESTIONAR
PRESTAMOS DE
BIBLIOTECA
ALMACENES DE DATOS
El almacn de datos:
Representa informacin del sistema almacenada de forma
temporal.
Si el flujo de datos representa datos en movimiento, los
almacenes representan datos en reposo.
No implica mquina o dispositivo de almacenamiento alguno.
Los almacenes pueden aparecer por necesidad (procesos
asncronos) o por razones de seguridad.
Representacin (Yourdon):
se representa mediante dos lneas paralelas con un nombre
en el interior
LIBROS
CARACTERSTICAS DE LOS
ALMACENES DE DATOS
El nombre del almacn:
Debe ser lo ms representativo posible respecto de los datos
que contiene. Suele ser un sustantivo en plural.
CARACTERSTICAS DE LOS
ALMACENES DE DATOS
Si en un DFD hay un almacn que slo est
conectado a un proceso se dice que este almacn es
local a dicho proceso y por tanto no debe aparecer en
dicho nivel sino en los niveles inferiores donde se
detalla dicho proceso.
El contenido de los almacenes de estructura simple
(contenido tipo registro) debe estar definido en el
diccionario de datos.
En el caso de un almacn con una estructura ms
compleja su contenido se puede representar
mediante un diagrama de entidad/relacin.
11
ENTIDADES EXTERNAS
Una entidad externa:
Representacin (Yourdon):
Se representa mediante un cuadrado en el que se indica en
su interior un nombre representativo.
DEPARTAMENTO
COMPRAS
12
CARACTERSTICAS DE LAS
ENTIDADES EXTERNAS
Las entidades externas pueden ser representadas
varias veces en un DFD si con eso se mejora la
legibilidad.
Para indicar que es una entidad externa duplicada se seala
con un asterisco.
FLUJOS DE DATOS
Los flujos de datos:
Representan los datos en movimiento entre procesos en un
momento y con una cardinalidad determinados.
Representacin (Yourdon)
Los flujos se representan mediante arcos dirigidos donde la
flecha indica la direccin de los datos.
Flujo de datos discretos: representan datos en movimiento
en un momento dado.
Flujo de datos continuos: representan flujos de datos
persistentes en el tiempo.
14
Destino/ fuente
PROCESO
ALMACEN
ENTIDAD
EXTERNA
PROCESO
ALMACN
NO
NO*
ENTIDAD
EXTERNA
NO*
NO
15
PROCESO
2
ALMACEN
PROCESO
2
16
ALMACEN
PROCESO
1
17
ALMACEN
PROCESO
1
18
Peticin
GESTIONAR
PETICIN libro PETICIONES
USUARIOS
USUARIOS
PRESTAMOS
CLIENTE
Peticin
informe GESTIONAR
PETICIONES
USUARIOS
Informe
cliente
CLIENTES
19
Gane y
Sarson
SSADM
METRICA
Flujo de
Datos
Procesos
Almacn de
Datos
Entidades
Externas
21
DESCOMPOSICIN EN NIVELES DE
UN DFD
Los DFDs presentan una estructura en capas:
La representacin mediante DFDs sigue una aproximacin topdown en la que cada nivel proporciona una visin ms
detallada de una parte definida en el nivel anterior.
Descomposicin:
Diagrama de contexto.
Diagrama del sistema.
Funciones primitivas (procesos primitivos).
22
DESCOMPOSICIN EN NIVELES DE
UN DFD
Diagrama de contexto
A
E1
0
Gestin
Sistema
E2
C
D
E3
A
A1
1
proceso
B
A2
2
proceso
D
C
A2
2.1
proceso
2.2
proceso
A3
2.3
proceso
2.2.1
proceso
A2
D
2.2.3
proceso
A3
2.2.2
proceso
23
DIAGRAMA DE CONTEXTO
Diagrama de contexto (nivel 0):
Es el nivel ms alto.
Delimita la frontera entre el sistema y el mundo exterior (interfaz
externa).
Viene representado por:
Un nico proceso que representa una caja negra del sistema
completo.
Un conjunto de entidades que representan la procedencia y el
destino de la informacin.
El flujo de informacin que se intercambia entre el sistema y las
entidades externas.
24
25
PROCESOS PRIMITIVOS
Son aquellos procesos de un DFD que no se
descomponen en nuevos diagramas de nivel inferior.
La decisin de no descomponer ms es
responsabilidad del analista (decisin subjetiva).
Heurstica:
Cuando un requisito funcional se puede especificar en menos
de una pgina mediante pseudocdigo.
Cuando los procesos del diagrama tienen pocos flujos de
entrada y salida.
Si al descomponer se pierde el significado de la funcin.
26
NIVELES DE UN DFD
segn MTRICA v2.1
Nivel 0:
Diagrama de contexto.
Nivel 1:
Subsistemas
Nivel 2:
Funciones de cada subsistemas
Nivel 3:
Subfunciones asociadas a cada uno de los eventos del sistema.
Nivel 4:
Procesos necesarios para el tratamiento de cada subfuncin.
27
28
CONVENCIONES A LA NUMERACIN
Cada diagrama recibe el nmero y el nombre del
proceso que descompone (el proceso padre).
Los procesos del diagrama del sistema se enumeran
por un entero comenzando por 1 y de forma creciente
hasta completar el nmero de procesos del diagrama.
29
Particionamiento desigual:
Implica un muy distinto nivel de detalle para distintos procesos
dentro de la funcionalidad de un sistema.
Solucin: Intentar que esas diferencias en el nivel de detalle
sean lo menores posibles.
30
DFD 1
A
N
1
Proceso
5
Proceso
4
Proceso
2.3
Proceso
2
Proceso
3
Proceso
E
M
F
K
L
D
J
C
2.2
Proceso
2.1
Proceso
2.5
Proceso
2.4
Proceso
E
L
31
Ejemplo: solucin
DFD 0
5
Proceso
1
Proceso
H
N
2
Proceso
4
Proceso
M
K
D
3
Proceso
2
Proceso
32
CONSTRUCCIN DE UN MODELO DE
PROCESOS UTILIZANDO D.F.D.
(RESUMEN)
Nivel 0. Diagrama de contexto.
Un solo proceso. Entidades Externas. Flujos de datos E/S.
Nivel x. Diagrama y.
Se detallan las subfunciones de los niveles superiores.
Procesos Primitivos.
EJEMPLO 1
El sistema de gestin para una biblioteca debe funcionar
de la siguiente manera:
EJEMPLO 1
ENTIDADES EXTERNAS
EJEMPLO 1
DOCUMENTOS (flujos de datos y almacenes)
de acceso, nmero de
carnet y el nombre del libro entonces se borra el
registro del prstamo.
36
EJEMPLO 1
PROCESOS
1 ) Peticin de libros:
evento usuario presenta una ficha de retirada
a) genera un comprobante que se entrega al
usuario
b) se registra en el sistema el prstamo
2 ) Devolucin de libros
evento bibliotecario introduce su cdigo de
acceso, nmero de carnet y el nombre del libro
a) se borra el registro del prstamo.
37
Ejemplo: solucin
DIAGRAMA DE CONTEXTO
FICHA
USUARIO
0
GESTIONAR
BIBLIOTECA
LIBRO
DEVUELTO
BIBLIOTECARIO
COMPROBANTE
38
Ejemplo: solucin
DIAGRAMA 0: GESTIONAR BIBLIOTECA
FICHA
1
GESTIONAR
PRSTAMO
NUEVO
PRSTAMO
COMPROBANTE
PRSTAMOS
LIBRO
DEVUELTO
2
GESTIONAR
DEVOLUCIN
FIN DE
PRSTAMO
39
EJEMPLO 2 (1)
SISTEMA DE GESTIN DE UNA BIBLIOTECA
Peticin de libros
Un usuario puede realizar una peticin de uno o ms libros a la
biblioteca. Presenta el carnet de usuario de la biblioteca y una ficha
en la que se detallan los libros pedidos y el tipo de prstamo.
Tipos de prstamo
SALA
COLABORADOR
PROYECTO FIN CARRERA
DOCTORADO
El da de la peticin.
Una semana
Quince das.
Un mes.
EJEMPLO 2 (2)
Devoluciones de libros
Un usuario no puede realizar ms peticiones hasta que no haya efectuado todas
las devoluciones de la peticin anterior. El usuario, para hacer la peticin,
necesita el carnet, que no se le entrega hasta que no haya devuelto todos los
libros. S puede hacer una devolucin parcial de los libros. Cuando un usuario
realice una devolucin, el sistema actualizar el stock de libros y
comprobar la fecha de devolucin de cada ejemplar para estudiar,
en el caso de que la devolucin se haga fuera de tiempo, la imposicin de
una sancin que tiene un coste de X ud. monetarias por cada ejemplar y das
de retraso en la devolucin. En este caso, la sancin se emite cuando el
usuario entrega el ltimo ejemplar.
Altas
y bajas de libros
El
41
SOLUCIN: EJEMPLO 2
DIAGRAMA DE CONTEXTO
PEDIDO
LIBROS
SANCIN
GESTIONAR
BIBLIOTECA
USUARIO
USUARIO
DEVOLUCIN
LIBROS
ALTAS/BAJAS
LIBROS
BIBLIOTECARIO
42
SOLUCIN: EJEMPLO 2
DIAGRAMA 0: GESTIONAR BIBLIOTECA
FICHAS
PRESTAMO
PEDIDO
LIBROS
GESTIONAR
PEDIDOS
GESTIONAR
DEVOLUCIONES
DEVOLUCIN
LIBROS
SANCIN
LIBROS
DISPONIBLES
ALTAS/BAJAS
LIBROS
3
ACTUALIZAR
LIBROS
43
SOLUCIN: EJEMPLO 2
DIAGRAMA 2: GESTIONAR DEVOLUCIONES
FICHAS
PRESTAMO
DEVOLUCIN
LIBROS
2.1
2.2
ACTUALIZAR
STOCK
CALCULAR
SANCIN
SANCIN
LIBROS
DEVUELTOS
LIBROS
DISPONIBLES
44
DICCIONARIO DE DATOS.
Es una tcnica textual que proporciona una lista
organizada de los datos utilizados por el sistema.
Para cada almacn o flujo de datos el diccionario de datos
tendr una entrada que lo describa.
Cada dato debera incluir en su definicin comentarios, su
composicin y los valores que puede tomar.
45
Definicin de almacenes:
Smbolos:
1. Identificador. @
46
DICCIONARIO DE DATOS.
DATOS ELEMENTALES
Datos que dentro del contexto del usuario no tiene sentido
descomponerlos. Es importante especificar para estos datos los
valores permitidos y la unidad de medida.
Ejemplos:
peso_persona
**
**
DICCIONARIO DE DATOS.
DATOS OPCIONALES.
Datos opcionales
direc_cliente = (direc _entrega) + (direc _facturacin)
direc_cliente = direc _entrega + (direc _facturacin)
direc_cliente = [direc _entrega | direc _facturacin | direc
_entrega + direc_facturacin].
48
a = 1{b}
a = {b}10
a = 1{b}10
49
Seleccin
[Varn | Hembra]
50
{CLIENTE}
CLIENTE
51
2. Seleccin.
TIPO.CARNET= [PROFESOR|ALUMNO]
TIPO.PREST=[PROFESOR|ALUMNO]
3. Iteracin.
FICHA=NUM.CARNET+TIPO.CARNET+1{LIBRO}3
4. Opcin. ( () ).
COMPROBANTE=TIPO.PREST+(ULT.DIA.ENTRE)
Almacenes:
1. Identificador.
PRESTAMOS=@NUM.CARNET+LIBRO
52