explicacion dfd 2012
TRANSCRIPT
Ingenieria de Software I 1
ANÁLISIS ESTRUCTURADO (DFD)
Ingenieria de Software I 2
Notación Básica
Modelización del flujo y contenido de la
información mediante un DFD.
Representacion del Funcionamiento de
todo o una parte del Sistema
Proceso
Información de E / SUn elemento de datos o una colección de datos
(flujo de datos)
Ingenieria de Software I 3
Notación Básica
Entidad Externa
Un productor o consumidor de información
que está fuera de los límites del sistema
Almacén de datos
Depósito de datos que se guardan
para ser usados por los procesos
Ingenieria de Software I 4
Modelo Esencial
Modelo de lo que el sistema debe hacer
para satisfacer los requerimientos del usuario
Ingenieria de Software I 5
Modelo Esencial
Compuesto por
Modelo ambiental:
Modelo de comportamiento:
Declaración de propósitos
Diagrama de Contexto
Lista de Acontecimientos.
Diagrama de Flujo de Datos (DFD).
Diccionario de Datos.
Especificaciones de procesos
Ingenieria de Software I 6
Modelo Ambiental
Consiste en :
Declaración de propósitos :
Declaración breve del propósito del sistema.
Diagrama de Contexto :
Es un DFD especial donde una burbuja representa
todo el sistema.
Lista de Acontecimientos.
Ingenieria de Software I 7
Modelo Ambiental
Diagrama de contexto
Define :
- Las personas y sistemas con los que se comunica (Entidad
Externa).
- Los datos que el sistema recibe del exterior y debe procesar.
- Los almacenes de datos que el sistema comparte con otros
sistemas (sólo almacenes externos).
Ingenieria de Software I 8
Modelo Ambiental
Lista de Acontecimientos:
Es una lista de los “estímulos” que ocurren en el
exterior a los cuales el sistema debe responder.
Ellos pueden ser del tipo:
Flujo.
Temporal.
Ingenieria de Software I 9
Construcción Del Modelo
Ambiental
Realizar una descripción breve del sistema. (Declaración de propósitos).
Construcción de la lista de acontecimientos.
1. Para ello debemos enumerar las Entidades Externas
(EEs) que interactuarán con el Sistema.
2. Responder a la pregunta sobre qué comportamiento de
las EEs afectan al sistema y cómo responde el sistema
a los mismos.
Ingenieria de Software I 10
Construccion del Modelo
Ambiental (Cont..)
Diagrama de Contexto.
Tener en cuenta que:
1. Las EEs se comunican directamente con el sistema a
través de flujos (información). NO entre sí.
2. Los flujos que aparecen en el diagrama de contexto
modelan datos que entran y salen del sistema.
3. Cada flujo de entrada representa uno o más
acontecimientos y uno de salida una o más
respuestas.
Construccion del Modelo
Ambiental (Cont..)
Los almacenes externos:
Se leen o
Se escriben
Pero no las dos acciones a la vez (no se pueden
modificar).
Ingenieria de Software I 11
Ingenieria de Software I 12
Ejemplo Modelo AmbientalEjercicio
Administración de cuotas en un Instituto de Enseñanza.
Las cuotas se pagan mensualmente y sus montos varían según la disciplina a
aprender (inglés, francés, portugués, etc) y el nivel en el que se incorpora (Inicial,
Medio, Avanzado).
Al ingresar un nuevo alumno al Instituto, debe abonar una matrícula que también
depende de la disciplina. Dos veces al año se debe rendir un examen, y solo lo
puede hacer quien esté al día con las cuotas.
Para ello, se debe sacar un listado con los alumnos que pueden rendir.
El empleado puede consultar los montos de las matrículas y cuotas.
Ingenieria de Software I 13
Datos…
Nombres
Cuotas
Montos
Disciplinas
Nivel
Matricula
Examen
Listado
Alumno
Empleado
Verbos
Pagan
Ingresar
Listar
Consultar
Ingenieria de Software I 14
Ejemplo Modelo Ambiental
Se debe permitir:
Consultar los montos de la matrícula y la cuota para una
disciplina.
Ingresar un nuevo alumno.
Pagar cuotas de un alumno.
Listar los alumnos que van a rendir los exámenes.
Ingenieria de Software I 15
Ejemplo Modelo Ambiental
Declaración de Propósito:
El sistema realizará la administración de las cuotas del
Instituto, así como también el ingreso / baja de alumnos del
mismo.
Ingenieria de Software I 16
Ejemplo Modelo Ambiental
Entidades Externas:
•Persona (Futuro alumno).
•Alumno.
•Empleado.
Almacenes externos:
•Disciplinas
Ingenieria de Software I 17
Ejemplo Modelo Ambiental
Lista de Acontecimientos:
•Una persona se incorpora como alumno al Instituto. (F)
•Un alumno paga una cuota. (F)
•El empleado consulta el monto de la matrícula y cuota de
una disciplina dada. (F)
•Una vez cada seis meses se listan los alumnos que van a
rendir el examen. (T)
Ingenieria de Software I 18
Ejemplo Modelo Ambiental
Sistema de un Instituto
de EnseñanzaEmpleado
Persona
Alumno
Entrada empleado Entrada alumno
Entrada persona
Diagrama de contexto
Salida persona
Salida alumnoSalida empleado
Disciplinas
Lectura disciplinas
Ingenieria de Software I 19
Modelo de Comportamiento
Consiste en:
Diagrama de Flujo de Datos (DFD).
Diccionario de Datos.
Ingenieria de Software I 20
Construcción del Modelo de
Comportamiento
1. Se dibuja una burbuja o proceso para cada
acontecimiento de la lista.
2. Esta burbuja debe contar con la respuesta al
acontecimiento asociado.
3. Los flujos de entrada y salida en todas las burbujas
deben coincidir con los que tiene el diagrama de
contexto.
4. Se compara el DFD con el diagrama de contexto y la
lista de acontecimientos.
Ingenieria de Software I 21
Construcción del Modelo de
Comportamiento
Los procesos del DFD preliminar (o nivel 1) no están
conectados entre sí en forma directa. A lo sumo se
comunican a través de almacenes de datos. Ya que de
otra forma mostraríamos secuencialidad en los
acontecimientos.
Ingenieria de Software I 22
Guía para la construcción de
DFD
Elegir nombres con significado para todos los componentes.
Para los procesos:
1. Identificar las funciones que el sistema está llevando a cabo. Usar un verbo y un objeto. Evitar verbos ambiguos tales como: hacer, manejar, procesar, etc.
2.Numerar los procesos como forma abreviada de identificar las burbujas.
Ingenieria de Software I 23
Guía para la construcción de DFD
(cont..)
No tener almacenes internos infinitos, es decir,
aquellos que se ingresa información pero nunca se
saca y aquellos que se saca información pero nunca se
ingresa.
Ingenieria de Software I 24
El Modelo De Comportamiento
1. Incorporar nuevo
alumno
Persona
Inf nuevo alumno
Acontecimiento 1: Una persona se incorpora como
alumno al Instituto.
Alumnos
Socio nuevo Mensaje incorpora
Disciplinas
MontosCuotas
Pago 1ra cuota
Ingenieria de Software I 25
El Modelo De Comportamiento
2. Pagar cuota
alumnoAlumno
Cuota
Acontecimiento 2: Un alumno paga una cuota.
Recibo
CuotasPago cuota
Cuotas pagas
Ingenieria de Software I 26
El Modelo De Comportamiento
3. Consultar monto
y matrícula
Empleado
Disciplina
Acontecimiento 3: El empleado consulta el monto de la
matrícula y cuota de una disciplina dada.
Disciplinas
Monto matrícula
Mensaje montos
Ingenieria de Software I 27
El Modelo De Comportamiento
4. Listar alumnos
Empleado
Acontecimiento 4: Una vez cada seis meses se listan los
alumnos que van a rendir el examen.
Deuda Mensaje alumnos
Cuotas
Alumnos
Nombre alumno
Ingenieria de Software I 28
El Modelo De Comportamiento
DICCIONARIO DE DATOS:
Listado organizado de todos los datos pertinentes al sistema.
Ingenieria de Software I 29
Diccionario de Datos
Se deben definir:
Estructuras.
Almacenes.
Flujos.
Y para cada uno ...
Nombre.
Composición del mismo.
Descripción (opcional).
Ingenieria de Software I 30
Diccionario de Datos
Notación
= Está compuesto de
+ Y (secuencia)
() Optativo
{ } Iteración
[ ] Selección de alternativas
** Comentario
@ Campo clave de almacén
| Separador de opciones
Ingenieria de Software I 31
Diccionario de Datos
Ejemplos
SELECCIÓN:
Género = [Femenino | Masculino]
DATOS OPCIONALES:
Domicilio de Cliente = (domicilio de envío postal) +
(domicilio de envío de cuentas).
Ingenieria de Software I 32
Diccionario de Datos Nuestro Ejemplo :
Estructuras:
•Est. Alumnos = @DNI+NomyAp+Direccion+TE+CodDisc
+ nivel
•Est. Cuotas = @DNI+NroCuota+Fecha
•Est. Disciplina = @CodDisc+MontoCta+MontoMat
Almacenes:
•Alumnos = Est. Alumnos
•Cuotas = Est. Cuotas
•Disciplinas = Est. Disciplina
Ingenieria de Software I 33
Diccionario de Datos Nuestro Ejemplo :
Flujos:
•Entrada Empleado = Disciplina
•Salida Empleado = Mensaje montos | Mensaje alumnos
•Disciplina = Código de disciplina
•Mensaje montos = CodDisc + MontoCta + MontoMat
•Mensaje alumnos = {DNI + NomyAp}
•Monto matrícula = Est. Disciplina
… ¡¡Deben estar todos los flujos!!