Está en la página 1de 15

Modelo funcional

ANÁLISIS DE SISTEMAS I
Modelo funcional
• CARACTERISTICAS GENERALES.

El modelo funcional especifica lo que sucede, el modelo dinámico


cuándo sucede, y el modelo de objetos sobre qué entidades
sucede.

Define el significado de:

• Las operaciones y restricciones del Modelo de Objetos.


• Las acciones del Modelo Dinámico.
• Sólo expresa qué valores de salida se derivan de qué valores de
entrada.

• Consta de múltiples DFD´ s que muestran el flujo de valores desde


las entradas externas, pasando por las operaciones y almacenes
internos, hasta las salidas externas.
DIAGRAMAS DE FLUJOS DE DATOS (DFD'S).

Notación clásica para definir el Modelo Funcional a través de


múltiples DFDs.

Un DFD muestra la relación funcional de los valores que


calcula el sistema.

• Sus elementos fundamentales son:

• Procesos.
• Flujos de Datos (y en ocasiones, de control).
• Entidades Externas (Actores).
• Almacenes de Datos.
PROCESO.
• Un proceso es una transformación de datos.

• Los procesos de más bajo nivel son funciones puras sin efectos laterales.

• Pueden especificarse matemáticamente o en lenguaje natural.

• Un DFD entero puede verse como un proceso de más alto nivel.

• El Sistema puede verse como un proceso que se va descomponiendo por niveles.

• Los procesos definen patrones de entradas y salidas.

• Se corresponden con operaciones de clases.

• El objeto destino suele ser uno de los objetos de entrada, sobre todo si esa misma
clase es también un flujo de salida.

• Se representan mediante elipses que contienen una descripción de la


transformación, normalmente su nombre.
ACTORES.
Son objetos activos que conducen el DFD produciendo o
consumiendo sus valores (terminadores).

• Definen los límites (el contexto) del sistema.


• Pueden ser usuarios del sistema.
• O elementos hardware en Sistemas de TR.
• Representados por un cuadrado con el nombre del actor.
FLUJO DE DATOS.
• Representan valores o conjuntos de valores que se transmiten
de un cálculo a otro.
• Conectan la salida de un actor o proceso con la entrada de
otro.
• Pueden descomponerse o duplicarse para ser entrada de
diferentes procesos.
• Varios flujos de datos pueden unirse en uno para convertirse
en un dato agregado
ALMACENES DE DATOS.

• Objetos pasivos que almacenan datos.


• Sólo responden a peticiones de obtener, eliminar o actualizar
datos.
• Suelen ser conjuntos de datos heterogéneos a los que se
puede acceder en orden diferente al de inserción.
• Se representan por un par de líneas paralelas que contienen
el nombre del almacén.
FLUJOS DE CONTROL.

• Un DFD no expresa relaciones temporales, de control, ni orden de


ejecución. Sólo muestra los posibles caminos de cómputo.

• Existen funciones de decisión que no proporcionan datos pero sí son


desencadenantes de otro proceso.

• Un flujo de control es un valor lógico que expresa un evento necesario


para un cálculo.

• Sólo debemos usarlos cuando sean útiles, ya que duplican información del
Modelo Dinámico.

• Existen Métodos basados en DFD’s con notaciones extendidas para


denotar el control, como CODARTS, para diseño de sistemas de TR
distribuidos.
Niveles de descomposición de un DFD.

• El proceso de definición del Modelo Funcional es usualmente


descendente (top-down).

• Cualquier proceso puede descomponerse como un nuevo DFD que


detalla su funcionamiento.

• Cada entrada o salida del proceso debe existir en el nuevo DFD.

• El nuevo DFD puede contener Almacenes que no se mostraban en


el DFD de nivel superior.

• Podemos estudiar separadamente cada DFD en cualquier nivel del


árbol.
Restricciones de un DFD.
Muestran relaciones en un instante de tiempo:

• Entre dos objetos (Ej.: frecuencia y longitud de onda).


• Entre valores de un mismo objeto.

Estas relaciones pueden ser:

• Funciones totales: un valor se calcula a partir del otro.


• Funciones parciales: un valor impone restricciones al otro.

Una restricción sobre los valores (estado) de un objeto a lo largo


del tiempo es un invariante.

• Ejemplo: una transformación de coordenadas podría


especificar que el factor de escala para las coordenadas x e y
sea el mismo.
• Especificación de Operaciones.
Cada proceso de bajo nivel es una operación en un objeto.

• Un proceso de más alto nivel puede también ser una operación.


• Las implementaciones pueden organizarse de otras maneras por motivos de
optimización.

La especificación de una operación incluye:

• Signatura (interfaz): Parámetros y valores de retorno.


• Transformación: Efectos de la operación.

• Formas de Especificar Operaciones.


• Funciones matemáticas o lenguajes funcionales.
• Tablas de valores de E/S (si sus rangos son finitos y reducidos).
• Pre y postcondiciones de un sistema axiomático.
• Tablas de decisión.
• Pseudocódigo.
• Lenguaje natural.
Consistencias con otros Modelos.
• Muchas veces, hay una correspondencia por niveles.
• Un proceso de alto nivel se corresponde con una operación en un objeto
compuesto, y sus procesos de segundo nivel corresponden con operaciones sobre
los objetos contenidos.

Los Procesos indican relaciones funcionales entre clases.

• De entre los flujos de datos entrantes a un Proceso, suele haber uno que es el
objeto destino de la operación, y los demás son parámetros, es decir, objetos que
son utilizados por el objeto destino. Se dice entonces que el objeto destino es un
cliente de los demás, que son proveedores.

• Los almacenes de datos son clases de objetos pasivos.

• Si la entrada de un proceso viene de un almacén de datos, éste suele ser el


destinatario de la operación.

• Si la salida de un proceso es un almacén de datos, el almacén es el objeto destino.


Los actores son clases del Modelo de Objetos, y sus flujos
de datos, operaciones.

•Por su carácter activo, suelen necesitar una definición


dinámica.

Los flujos de datos son valores del M.O.

•Bien sean datos básicos: números, cadenas, etc.

•Bien objetos, que pueden ser los responsables de las


operaciones que representan los procesos o parámetros
de operaciones sobre otros objetos.

También podría gustarte