TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 76
TEMA VI
ANALISIS ESTRUCTURADO DE SISTEMAS
6.1. INTRODUCCION
Las actividades y funciones a las que debe brindar soporte un sistema de información en una organización
pueden ser bastante complejas. Con frecuencia el sistema soporta actividades como el procesamiento de
cuentas, inventarios, mantenimiento de los registros del personal y otros que usualmente se toma bastante
tiempo en comprender las características a detalle
En este sentido las especificaciones de los usuarios de las empresas se toman difíciles de representar, por
lo que los analistas de sistemas se apoyan en herramientas para el desarrollo de sistemas de información
incluyendo la adopción de una metodología (análisis y diseño estructurado u orientado a objetos) o un
lenguaje de modelado unificado UML (estándar de modelado orientado a objetos) para modelar el
funcionamiento de las actividades de una empresa u organización
6.2. METODOLOGIA ESTRUCTURADA
El análisis estructurado es un método para el análisis y diseño de sistemas manuales o automatizados, que
conduce al desarrollo de especificaciones para sistemas nuevos o para efectuar modificaciones a los ya
existentes. Cuando los analistas de sistemas tartán de comprender los requerimientos de información de los
usuarios, deben ser capaces de conceptuar la forma en la que los datos se mueven a través de la
organización, los procesos o transformaciones que sufren los datos y las salidas que se tienen.
Esta metodología propone la creación de modelos del sistema que representen los procesos, los flujos y las
estructuras de los datos de una manera jerárquica “top-down”. Pasan de una visión general del problema
hasta llegar a un nivel de abstracción menor. Este enfoque jerárquico se puede focalizar en las funciones o
procesos del sistema, en la estructura de datos o en ambos aspectos.
Mediante el análisis estructurado, el analista puede almacenar una representación gráfica de los procesos
de datos a lo largo de la organización. Los componentes básicos de la metodología estructurada son:
Diagramas de Flujo de Datos (DFDs)
Diccionario de Datos (DD)
Diagramas de Flujo de Procesos (DFPs)
Diagramas de Entidad-Relación (ER)
Diagramas de Transición de Estado (DTEs)
Especificaciones de procesos
Arboles de decisión
Tablas de decisión
Diagramas de acción
6.3. DIAGRAMA DE FLUJO DE DATOS
Un DFD es un diagrama en forma de red que representa los procesos o funciones que debe llevar a cabo un
sistema en sus distintos niveles de abstracción y los datos que fluyen entre las funciones el flujo de datos y
las trasformaciones que se aplican sobre ellos, se utiliza para modelar las funciones del sistema y los datos
que fluyen en el mismo a distintos niveles de abstracción
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 77
El patrocinador de un proyecto y los usuarios finales tendrán que ser informados y consultados en todas las
etapas de una evolución del sistema. Con un diagrama de flujo de datos, los usuarios van a poder visualizar
la forma en que el sistema funcione, lo que el sistema va a lograr, y cómo el sistema se pondrá en práctica.
El sistema se modelará mediante un conjunto de DFD nivelados en el que los niveles superiores definen las
funciones del sistema de forma general y los niveles inferiores definen estas funciones en niveles más
detallados
También se denomina diagrama de burbujas, diagrama de flujo de trabajo o modelo funcional
NIVELES
Como el modelo de un sistema es grande no se puede representar en una sola página mediante un DFD, la
idea es representarlo “por capas” cada una de las cuales es representada por un DFD. Se sigue en el diseño
una aproximación descendente (top-down) en la que cada nivel proporciona una visión más detallada.
Se comienza por el nivel más alto, en este diagrama solo hay un proceso que representa el sistema
completo. A continuación este proceso se descompone en otro DFD en el que se representan las funciones
principales o subsistemas. Después, se descompone cada uno de los procesos en nuevos diagramas que
representan funciones más simpes, se procede de la misma manera hasta que todas las funciones estén
detalladas.
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 78
Por lo tanto, un DFD según la METRICA 2.1 está definido por:
Nivel 0: diagrama de contexto
Nivel 1: subsistemas
Nivel 2: funciones de cada subsistema
Nivel 3: sub funciones asociadas a cada uno de los eventos del sistema
Nivel 4: procesos necesarios para el tratamiento de cada subfunción
A. Diagrama de Contexto (Nivel 0)
El objetivo de este diagrama es delimitar la frontera entre el sistema y el mundo exterior, y definir sus
interfaces (flujos de datos de entrada y salida del sistema con el entorno o contexto) En este diagrama
sólo hay un proceso que representa el sistema completo
Está formado por:
Un proceso que representa una “caja negra” del sistema completo
Un conjunto de entidades externas
Un conjunto de flujos de datos
B. Subsistemas (Nivel 1)
Es la descomposición del diagrama de contexto y en él se representan las funciones principales del
sistema, así como la relación entre ellas. Funciones conceptualmente independientes entre sí. En
síntesis, representa las funciones principales o subsistemas.
C. Funciones de cada subsistema (Nivel 2)
Son aquellos procesos de un DFD que ya no se descomponen en más diagramas de nivel inferior. Por
cada función primitiva habrá una especificación que la describa. La decisión de no descomponer más es
una responsabilidad del analista.
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 79
Normalmente la construcción se realiza mediante un procedimiento de refinamiento iterativo, ya que es
imposible crear los DFD correctamente en un primer intento; dado que al comenzar el modelo no se conocen
todas las características del sistema, puede que haya que incluir nuevos requisitos o cambiar los existentes.
Esto determina la realización de cambios en los DFD.
Es importante identificar correctamente las entidades externas y las características de la información que
etas proporcionan.
Al pasarse de un nivel a otro debe verificarse la consistencia, es decir que la información que entra y sale de
un proceso de nivel N sea consistente con la información que entra y sale de DFD en que este proceso se
descompone.
Todos los flujos de datos que entran en un diagrama hijo deben estar representados en el padre por el
mismo flujo de datos.
COMPONENTES
A. PROCESO
Recibe información y la transforma
Un proceso puede transformar un dato en uno o varios datos de salida
Es necesario un proceso entre una Entidad externa y un Almacén de datos
Incluye un número y un nombre (únicos en el conjunto de DFD que representan el sistema)
Suprimir nombres con poca significación tales como: REALIZAR OPERACIÓN, GESTIONAR
ACCIÓN
Ser breve, normalmente formado por un verbo seguido de un sustantivo. Por ejemplo RECIBIR
PEDIDOS
B. ALMACEN DE DATOS
Representa información en reposo
Representan una colección de datos almacenada de forma temporal
No puede estar comunicado directamente con otro almacén o entidad externa
Realiza operaciones de lectura, escritura y actualización.
Son independientes del dispositivo utilizado. Ejemplos: un cajón con papeles, un archivador
manual, un fichero o una base de datos, etc.
Su contenido se define en el Diccionario de Datos
Se puede representar varias veces (y en distintos niveles) de un DFD
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 80
Si en un DFD hay un almacén que sólo tiene conexión con un proceso, se dice que el almacén
es local a ese proceso, y el almacén se representará en el DFD que se especifique dicho
proceso
El nombre debe ser lo más representativo posible, lógico, plural. No asociado a connotaciones
físicas. En plural: “CLIENTES”
C. ENTIDAD EXTERNA
Representa un generador o consumidor de información del sistema y que no pertenece al mismo
Representa a personas, organizaciones o sistemas que están fuera del sistema que se está
diseñando
Es fuente o receptor de los flujos de información
Los flujos que conectan las entidades externas con diversos procesos o almacenes definen la
interfaz entre el sistema y el mundo exterior
Puede aparecer en los distintos niveles, pero normalmente las entidades externas sólo van a
aparecer en el DFD de mayor nivel llamado diagrama de contexto.
Resultan fáciles de identificar y no pueden ser modificados
Pueden aparecer varias veces en el mismo diagrama para evitar entrecruzamiento de líneas
Se pueden dibujar varias veces en un DFD. Duplicados identificados con un asterisco
Nombre
MINISTERIO DE EDUCACION
D. FLUJO DE DATOS
Representa información en movimiento, se asemeja a una tubería a través del cual fluye
información
Sirve para conectar el resto de los componentes de un DFD
Tiene un nombre correspondiente a un dato o conjunto de datos del diccionario
El movimiento de la información tiene una dirección
Los datos no pueden ser creados ni destruidos por un flujo de datos
Según la persistencia de los datos pueden ser: Discretos, Continuos y De Diálogo
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 81
FLUJO DISCRETO Representan datos en
movimiento en un
momento determinado
FLUJO CONTINUO Son un caso
específico de datos
discretos que
representan flujos de
datos persistentes en
el tiempo
FLUJO DE DIALOGO Es una simplificación,
de dos flujos de datos
relacionados (uno es
consecuencia del
otro).
Formas de flujos entre procesos
Conexiones entre procesos y Almacenes
Conexiones permitidas entre los componentes de un DFD
PROCESO ALMACEN ENTIDAD
DESTINO/FUENTE
EXTERNA
PROCESO SI SI SI
ALMACEN SI NO NO
ENTIDAD EXTERNA SI NO NO
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 82
Ejemplo: Realizar el estudio para la matriculación de estudiantes a una entidad educativa (OERA), además
de todo lo referente a cursos, horarios e información sobre los estudiantes y su verificación respectiva.
DIAGRAMA DE CONTEXTO (NIVEL 0)
NIVELES MEDIOS - SUBSISTEMAS (NIVEL 1)
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 83
FUNCIONES DE CADA SUBSISTEMA (NIVEL 2)
6.4. DICCIONARIO DE DATOS (DD)
Un diccionario de datos (DD) es una lista organizada de los datos relevantes para el sistema que contiene
definiciones precisas y rigurosas de los datos para facilitar la comunicación
El diccionario de datos es un registro de consulta con información acerca de los datos (es decir, metadatos),
compilada por los analistas de sistemas para guiarse en el análisis y diseño. Como un documento, el
diccionario de datos recopila y coordina términos de datos específicos, y confirma lo que cada término
significa para las diferentes personas en la organización. Asimismo, contiene una serie de definiciones
precisas y rigurosas para que tanto el analista como el usuario comprendan entradas, salidas, elementos de
los almacenamientos y cálculos intermedios.
El objetivo es dar precisión y orden sobre los datos que se manejan en el sistema evitando así malas
interpretaciones y ambigüedades. Esto significa que los datos deben ser consistentes. Si usted guarda datos
acerca del sexo de un hombre como “M” en un registro, “Masculino” en un segundo registro y como el
número “1” en un tercer registro, los datos no son consistentes.
El diccionario de datos proporciona información adicional sobre el sistema, ya que son una lista de todos los
elementos incluidos en el diagrama de flujo de datos y almacenan detalles y descripciones de estos
elementos.
En el diccionario de datos se incluyen almacenes de datos, flujos de datos, estructuras de datos, elementos
de datos
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 84
Los analistas utilizan los diccionarios de datos por cuatro razones:
1. Para manejar los detalles en sistemas grandes ya que es imposible de recordar todo lo referente
a un sistema.
2. Para comunicar un significado común para todos los elementos del sistema. Esto es muy
importante cuando trabajan varios analistas y no pueden reunirse todos los días para
comunicarse.
3. Para documentar las características del sistema.
4. Localizar errores en el sistema.
A. CONTENIDO DE UN DICCIONARIO DE DATOS
El DD contiene las siguientes:
1. Definiciones lógicas de datos:
Elemento de Dato
Estructura de Dato.
Flujos de Datos.
Almacenes de datos.
2. Definiciones lógicas de procesos.
3. Definiciones lógicas de entidad externa.
Elemento de dato: Ninguna unidad más pequeña tiene significado para los analistas o usuarios. Son los
bloques básicos para todos los demás datos del sistema, por sí solo no lleva ningún significado al usuario.
Son los atributos de las entidades.
Por ejemplo: nº factura, fecha expedición, cantidad adeudada.
Estructuras de dato: Los elementos de dato se agrupan para formar una estructura de dato, por lo tanto
son un grupo de datos elementales que en conjunto describen un componente del sistema. Por ejemplo:
Factura. Los flujos de datos, son estructuras de datos.
B. NOTACIÓN DEL DICCIONARIO DE DATOS
DESCRIPCIÓN DE LOS ELEMENTOS DE DATOS
Normalmente las estructuras de datos se describen usando una notación algebraica. Este método permite al
analista producir una vista de los elementos que constituyen la estructura de datos junto con información
referente a dichos elementos. Por ejemplo, el analista indicará si hay muchos elementos iguales en la
estructura de datos (un grupo de repetición), o si dos elementos podrían excluirse mutuamente. La notación
algebraica usa los siguientes símbolos:
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 85
Composición e inclusión: El símbolo “=” Se define como está compuesto de
PETICIÓN LIBROS = CARNET BIBLIOTECA + FICHA LIBROS
PESO = *peso del paciente cuando ingresó en el hospital*
*unidades=kg; rango=1-200*
Inclusión
Datos_del_Paciente = nombre_completo + dirección + peso + talla + fecha ingreso
Opcional: El dato opcional indica que puede o no estar presente
dirección-cliente = (direccion-envio) + (dirección-fiscal)
dirección-cliente = [direccion-envio | dirección-fiscal | direccion-envio + dirección-fiscal]
dirección-cliente = dirección-fiscal + (dirección-envió)
Iteración: La iteración representa la repetición de los elementos incluidos entre paréntesis.
ficha libros = {libros} _0 ó N ocurrencias de …
libros = signatura + título + autor
pedido = id-cliente + direccion-envio + {item}
Es posible representar los límites inferiores y/o superior sobre las ocurrencias de una estructura repetitiva
ficha libros = 1{libros}5
Selección: La selección de un componente (sea un elemento o un conjunto de elementos) se
representa entre corchetes, separando cada opción mediante el símbolo “ | ”. Indica una selección entre
campos alternativos distintos
socio = nombre + domicilio + [NIF|CIF]
sexo = [Hombre | Mujer]
tipo-cliente = [Administración | Empresa | Universidad | Otros]
Alias: Una forma alternativa de nombrar un elemento de datos. Se incluye en el DD por completitud
form-pedido = *alias para formulario2556*
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 86
Identificador: El identificador se utiliza para organizar la colección de entradas
LIBROS DISPONIBLES = @SIGNATURA + TITULO + AUTOR + NUMERO UNIDADES
Ejemplo: Realizar el diccionario de datos de los siguientes elementos dato y estructura de dato:
Dato elemental
Nombre: Estado_Civil
Descripción: Código de una letra para indicar el estado civil de cada empleado.
Valores: S Soltero D Divorciado
C Casado S Separado
V Viudo O Otros
Dato elemental
Nombre: Nombre_empleado = {carácter válido}
Descripción: Nombre y apellido completo de cada empleado.
Valores: Carácter Válido = [A-Z | a-z | 0-9 | ‘ | - | |]
Estructura de dato
Nombre: Empleado
Descripción: Datos necesarios de un empleado.
Componentes: Título de cortesía +
Nombre_empleado +
Num_empleado +
Datos_personales =
Fecha_nacimiento +
Estado_Civil +
Num_hijos [ 0 - ] +
(Num _ fono)
Dirección =
Calle + Número + (Población) + Codigo_Postal + Provincia
Título de cortesía = [Sr. | Sra. | Srta.]
DESCRIPCION DE PROCESO, ALMACEN Y ENTIDAD EXTERNA
Procesos
Referencia: Número del proceso
Nombre: Nombre del proceso, el cual es descriptivo y único.
Definición: Descripción general de la función del proceso.
Flujo de Entrada: Flujos de información entrantes al proceso, y su conexión con otros elementos
Flujo de Salida: Flujos de información salientes del proceso, y su conexión con otros elementos
Descripción: Descripción de tallada de la lógica del proceso (utilizando alternativas tales
como: narrativa, arboles de decisión, tablas de decisión y lenguaje estructurado)
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 87
Flujo de datos
Referencia: Número de identificación opcional. A veces éste se codifica usando un esquema
para identificar
Nombre: Nombre descriptivo del flujo de datos. Este nombre es el texto que debe aparecer en
el diagrama y se debe referenciar en todas las descripciones que usen el flujo de
datos.
Descripción: Descripción general del flujo de datos.
Origen: La fuente del flujo de datos. Ésta podría ser un elemento cualquiera
Destino: El destino del flujo de datos. Éste podría ser un elemento cualquiera
Estructura de datos: La estructura de datos que describe los elementos encontrados en este flujo de
datos, podrían ser uno o varios elementos.
Volumen/Tiempo: El volumen por unidad de tiempo. Los datos podrían ser registros por día o cualquier
otra unidad de tiempo.
Comentarios: Área para comentarios adicionales y anotaciones sobre el flujo de datos.
Almacén de datos
Referencia: Número o notación significativa para la identificación del almacén de datos
Nombre: Nombre descriptivo del almacén
Flujo de Entrada: Flujos de información entrantes al almacén, y su conexión con otros elementos
Flujo de Salida: Flujos de información salientes al almacén, y su conexión con otros elementos
Descripción: Una breve descripción del almacén de datos.
Tipo de archivo: El tipo de archivo, manual o computarizado.
Contenido: La estructura de datos debe usar un nombre que se encuentre en el diccionario de
datos como una estructura de datos ya definida, y proporcionar un vínculo a los
elementos de este almacén de datos. Como alternativa, los elementos de datos se
podrían describir en el formulario de descripción del almacén de datos
Entidad Externa
Referencia: Número o notación significativa para la identificación de la entidad externa
Nombre: Nombre significativo, que representen a la entidad
Definición: Indica quienes son la entidad.
Flujo de Entrada: Flujos de información entrantes, y su conexión con otros elementos
Flujo de Salida: Flujos de información salientes, y su conexión con otros elementos
Volumen: Número de componentes de la entidad.
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 88
Ejemplo: Realizar el diccionario de datos de los siguientes elementos
Proceso verificar_credito
1. Pedidos 3. Pedido de pago previo
Solicitar Verificar Cliente
_Credito _Credito
Historia de pagos
Nuevo balance de orden Pedido con crédito OK
3.
Historia_Pagos
Verificar
_Pedido
Procesos
Ref: 3
Nombre: Verificar _ Crédito
Definición: Decidir dónde van los pedidos sin pago previo, o si debe pedirle el pago al cliente.
Flujo de Entrada: 1 - 3 Pedidos
P3 - 3 Historia de pagos
Flujo de Salida: 3 - C Pedido de pago previo
3 - P3 Nuevo balance de orden
3 - 6 Pedidos con crédito ok
Descripción: Recuperar historia de pago.
Si el cliente es nuevo, enviar pedido de pago previo.
Si el cliente corriente (promedio de dos pedidos mensuales)
OK con el pedido, a menos que el balance esté vencido con más de dos meses.
Para clientes anteriores (no corrientes), OK, a menos que tengan cualquier balance
vencido.
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 89
Flujo de datos Pago_aceptado
11.1 Pago_aceptado 11.2
Aceptar_ Verificar
Pago _Pago
Flujo de datos
Ref: 11.1 - 11.2.
Nombre: Pago _ aceptado
Descripción: Pago recibido y sellado, pero no validado
Origen: 11.1 Aceptar pago
Destino: 11.2 Validar pago
Estructura de datos: Cheque +
Recibo _ Caja +
(Letra _ Pago) +
Método _ pago
Volumen/Tiempo: 5000 por día
Comentarios: La letra de pago esta omitida en el 10 % de los casos.
Almacén de datos Historia_Pedidos
9.
Realizar_
Pedido
10.
Verificar
Pedido Demanda anterior _Pedido
Historia_Pedidos
11.1
Registrar
_venta
Almacenamiento de datos
Ref: HP
Nombre: Historia _Pedidos
Flujo de Entrada: 9 - HP Pedido
Flujo de Salida: HP - 10 Detalle pedido
HP - 11 Detalle ventas
HP - 9 Demanda anterior
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 90
Descripción: Todos los pedidos aceptados en los últimos 6 meses.
Tipo de archivo: Manual
Contenido: Pedido =
@Id_pedido +
Detalle_cliente +
Detalle_libro
Entidad externa Proveedores
Pedidos materiales 7.
Proveedores Pedido_
Material
Facturas
11
Procesar
_Factura
Entidad Externa
Ref: P
Nombre: Proveedores.
Definición: Proveedores actuales de la empresa.
Flujo de Entrada: 7 - P Pedidos.
Flujo de Salida: P - 11 Facturas.
Volumen: Actualmente 25. Se espera llegar a 40.
6.5. DIAGRAMA DE FLUJO DE PROCESOS
Es una representación gráfica del "flujo" de datos a través de un sistema de información. Un diagrama de
flujo de datos también se puede utilizar para la visualización de procesamiento de datos (diseño
estructurado). Es decir, es una representación pictórica de las actividades que sigue una función, es útil para
determinar cómo funciona realmente el proceso para producir un resultado que puede ser un producto, un
servicio, información o una combinación de los tres.
¿Cuándo se utiliza un diagrama de flujo?
El diagrama de flujo se utiliza cuando un equipo necesita ver cómo funciona realmente un proceso completo,
este esfuerzo con frecuencia revela problemas potenciales tales como cuellos de botellas en el sistema,
pasos innecesarios y circuitos de duplicación de trabajo.
El diagrama de flujo final servirá como registro de cómo el proceso actual realmente opera, si se construye
de forma apropiada, refleja el proceso de la forma que realmente opera el sistema y todos los miembros del
equipo poseerán un conocimiento común y exacto del funcionamiento del proceso.
Los diagramas de flujo pueden ayudar a un equipo en su tarea de diagnóstico para lograr mejoras, además
de generar teorías sobre las posibles causas principales de un problema.
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 91
¿Qué desarrollan los diagramas de flujo de datos?
Muestran que debe hacer el sistema sin referencias.
Son diagramas explícitos y comprensibles.
Dan la posibilidad de representan el sistema a diferentes niveles de complejidad, desde lo más
global a lo más detallado solo requieren de 4 símbolos.
Son fácil de mantenimiento, pues los cambios afectan solo algunos de sus elementos y no al todo.
Aunque hay literalmente docenas de símbolos especializados utilizados para hacer diagrama de flujo, se
utiliza con más frecuencia los siguientes.
Terminal: Indica el inicio o la terminación de flujo del proceso
Actividad: Representa la ejecución de una tarea, actividad llevada a
cabo en un proceso.
Decisión: Punto de verificación o decisión.
Documento: Se refiere a un documento utilizado en el proceso, se
utilice, se genere o salga del proceso
Conector
Proceso manual.
Subproceso.
Dirección de flujo de datos.
TEXTO PARALELO – ANALISIS Y DISEÑO DE SISTEMAS I 92
Base de datos: Representa la información almacenada electrónicamente
Base de datos con respecto al proceso.
6.7. DIAGRAMA ENTIDAD RELACION
Para representar el modelo lógico se usará el modelo entidad relación. Este modelo consiste en plasmar el
análisis del problema mediantes diagramas entidad-relación (también lo podemos ver como entidad
interrelación.
Estos diagramas fueron propuestos por Peter P. Chen a mediado de los años 70, para la representación
conceptual de los datos y establecer las relaciones que existían entre ellos. La notación es muy sencilla, y
esto permite representar el mundo real de forma que el usuario pueda validar si el modelo propuesto se
ajusta a la resolución de problemas.