1. Unidad 2. Programación Estructurada.
2.1.- Análisis estructurado de Sistemas (AES).
Se refiere al proceso de examinar la situación de una empresa con el propósito de mejorarla con métodos y procedimientos
más adecuados. Es un método para el análisis de sistemas manuales o automatizados, que conduce al desarrollo de
especificaciones para sistemas nuevos o para efectuar modificaciones a los ya existentes. Éste análisis permite al analista conocer
un sistema o proceso en una forma lógica y manejable al mismo tiempo que proporciona la base para asegurar que no se omite
ningún detalle pertinente. Es decir, concibe el análisis y diseño de sistemas en base a la construcción de modelos con el fin de
representar las funciones que realiza el sistema, desde su concepción física hasta la deducción lógica de su información y
procesos.
El método de desarrollo del análisis estructurado tiene como finalidad superar esta dificultad por medio de:
1. La división del sistema en componentes y
2. La construcción de un modelo del sistema.
El método incorpora elementos tanto de análisis como de diseño.
2.1.1.- Herramientas para el Análisis Estructurado de Sistemas (AES).
La herramienta fundamental del Diseño Estructurado es el diagrama estructurado que es de naturaleza gráfica y evitan
cualquier referencia relacionada con el hardware o detalles físicos. Su finalidad no es mostrar la lógica de los programas (que
es la tarea de los diagramas de flujo). Los Diagramas Estructurados describen la interacción entre módulos independientes
junto con los datos que un módulo pasa a otro cuando interacciona con él. Dentro de estas herramientas están:
Diagrama de Flujo de Datos.
Diccionario de Datos.
Descripción de Procesos.
2.1.1.1.- Diagrama de Flujo de Datos.
Definición:
Es una herramienta que permite visualizar un sistema como una red de procesos funcionales, conectados
entre sí por conductos y tanques de almacenamiento de datos. Proporciona un punto de vista de un sistema, el
orientado a funciones. Herramienta que permite representar gráficamente un sistema, mostrando tanto los procesos
que en el se llevan a cabo como los datos que pasan de un proceso a otro.
Finalidad:
Verificar los requerimientos de información.
Describir los datos asociados con las entidades.
Mostrar la relación entre entidades.
Comunicar los requerimientos de datos a un diseñador de archivos o administrador de la base de datos.
Características:
También se denomina diagrama de burbujas, diagrama de flujo de trabajo o modelo funcional
Representación gráfica en forma de red.
La información que proporciona es relevante, ya que facilita la compresión de los sistemas al describir el flujo
de los datos, dando al mismo tiempo una mejor comunicación entre el usuario final y analista de sistemas.
Describe la secuencia lógicas entre datos y procesos y no se relaciona al hardware.
Va de lo general a lo particular, ya que posee niveles.
El Nivel 0 (cero) se conoce como Diagrama de Contexto o Diagrama Contextual, solo se identifican los datos
de entradas, entidades externas, políticas internas o externas a la organización, y las salida de la información.
Las funciones se comunican mediante conductos que representan la información que se mueve.
Ventajas del enfoque de flujo de datos:
Libertad para realizar en forma muy temprana la implementación técnica del sistema.
Una mayor comprensión de las interrelaciones de los sistemas y subsistemas.
Comunicación del conocimiento del sistema actual a los usuarios por medio de diagramas de flujo de datos.
Análisis de un sistema propuesto para determinar si han sido definidos los datos y procesos necesarios.
Ing. Darmara J. Silva Mendoza Página 1
2. Unidad 2. Programación Estructurada.
Simbología:
Símbolo Significado Ejemplo
ENTIDAD: Muestran origen y/o destino o final de
los flujos de datos. Representan datos, personas, E
A organización o sistema que permanece fuera del
Agente contexto del sistema. Proporciona información sobre Estudiante
la conexión del sistema con el mundo exterior.
Entidades Externas: Son las organizaciones,
instituciones o personas situadas fuera de la empresa
pero que suministran entradas o reciben salidas del
sistema. También pueden ser clientes, proveedores,
contratistas, bancos o instituciones gubernamentales.
Definen la interfaz entre el sistema y el mundo
exterior. Resultan fáciles de identificar y no pueden
ser modificados. Relaciones entre las entidades
externas no son
objeto del estudio del modelo.
Entidades Internas: Es una oficina, un
departamento, una división o persona en particular de
una empresa, quienes utilizan directamente el sistema
en fase de modelización y suministran las entradas al
sistema o son receptores de las salidas del mismo.
Otro tipo de entidad o agente interno son los sistemas
informáticos.
PROCESO: Es el símbolo principal de un DFD, se
expresa con una circunferencia o rectángulo de 2.1
Nº Nivel ángulos redondeados. Son un conjunto de tareas o Crear
Nombre del acciones realizadas a partir de un flujo de datos de Registro de
proceso entrada para producir flujos de datos de salida. Los estudiantes
procesos pueden ser realizados por personas,
Responsable departamentos, robots, máquinas u ordenadores. Se
describen con una sola Frase sencilla. Verbo objeto.
Cambian un dato en otros datos.
ALMACENAMIENTO DE DATOS: Representa M Maestro de
un archivo lógico, base de datos, en donde se agregan estudiantes
A Archivo o de donde se extraen datos como Bases de Datos o
archivos de almacenamiento, Debe tener entradas y
salidas.
FLUJO DE DATOS: Son los caminos o conductos
o la parte del DFD que representa datos en Datos del Estudiante
movimiento mediante flechas, es decir, la entrada de
datos y/o salida de datos e información para un
proceso. Se representa con una flecha y puede ser la
actualización de datos en un archivo, una base de
datos u otro medio de almacenamiento de datos.
Procesos que se conservan en el DFD:
Realicen cálculos, como por ejemplo el cálculo promedio de calificaciones.
Tomen decisiones, como por ejemplo decidir la aprobación de una beca a un estudiante según diversas reglas.
Dividan los flujos de datos según su contenido o las reglas de la empresa, como por ejemplo separar los
pedidos aprobados de los rechazados en función de las reglas de gestión de la concesión de crédito.
Combinen los flujos de gestión de datos, como por ejemplo: combinar los cursos requeridos con los cursos
disponibles para crear la planificación de cursos de un estudiante.
Ing. Darmara J. Silva Mendoza Página 2
3. Unidad 2. Programación Estructurada.
Filtren y/o resuman los flujos de datos para producir nuevos flujos de datos, como por ejemplo: filtrar los
datos de facturación para identificar solo las cuentas no pagadas o resumir los datos de inscripción a cursos
para identificar los cursos de mayor demanda (en ambos casos los datos no cambian pero si su estructura).
Errores en los DFD:
Agujero Negro: Se caracterizan porque son procesos que tienen entradas pero no tienen salidas.
El Milagro: Es aquel que tiene salidas pero que no tiene entradas.
Agujero Gris: Cuando las entradas no son suficientes para las salidas que presenta el proceso.
Procesos de canalización: Significa que los procesos que no cambian los flujos o no sirven para tomar
decisiones a partir de los datos de entrada deben ser eliminados.
Nombres duplicados de los flujos de datos.
Flujos de datos divergentes: son flujos basados en criterios de implantación y deberían evitarse en los DFD
esenciales. Sustitúyanse dichos flujos divergentes por un flujo de datos único, independiente y con nombre.
Ing. Darmara J. Silva Mendoza Página 3
4. Unidad 2. Programación Estructurada.
El concepto de paquete de flujo de datos: Cuando hay dos o más flujos de datos independientes que se
desplazan siempre juntos, se deben mostrar como un único flujo de datos.
Ing. Darmara J. Silva Mendoza Página 4
6. Unidad 2. Programación Estructurada.
Evitar errores como:
Cómo Construir un DFD:
Ignore las tareas puramente internas del recipiente; aplicando así el concepto de caja negra.
Pregunte a sus usuarios finales cuales son los sucesos o transacciones a los cuales debe responder el sistema.
Por ej: Pedidos, Reclamos, Pagos, etc.
Para cada suceso, pregunte cuáles son las respuestas que debería generar el sistema. Por ejemplo:
Pedido - Programar pedido
Reclamo - Dar respuesta
Pago - Elaborar recibo
Pregunte cuales son los informes de formato fijo que debe producir el sistema
Identifique las fuentes netas de datos para cada suceso o transacción. Estas fuentes se convertirán en los
agentes internos o externos del sistema.
Identifique los recipientes netos de cada respuesta o salida que debería generar el sistema. Estos destinos serán
también agentes internos o externos.
Identifique todos los posibles almacenes de datos externos. No los confunda con el almacén de datos
correspondiente al modelo E/R del sistema que se va a construir.
Dibuje un diagrama de contexto para toda la información anterior.
Reglas Generales de Diagramación
Los flujos no deben entrar y salir del proceso con el mismo nombre
Los flujos tienen una sola dirección
Las entidades externas y los archivos pueden aparecer varias veces en un DFD
Todo proceso debe tener entradas y salidas
Los datos que entran a un proceso deben ser utilizados en su totalidad en ese proceso
Todo lo que entra a un archivo debe ser usado. Todo lo que sale de un archivo debe haber sido utilizado
previamente.
Elegir nombres con significado para los procesos, flujos, almacenes y terminadores: saldo_cliente, Imprimir,
Nómina, ...
Numerar los procesos.
Redibujar el DFD tantas veces como sea necesario estéticamente.
Evitar los DFD demasiado complejos.
Ing. Darmara J. Silva Mendoza Página 6
7. Un
nidad 2. Pro
ogramaci
ión Estru
ucturada.
Asegurars de que el DF sea interna
se FD amente consisteente y que tammbién lo sea co cualquier DF relacionado
on FD o
con él.
Un proces en un DFD p
so puede identific una función que se está ll
car n levando a cabo o puede iden
o, ntificar como se
está llevan a cabo ide
ndo entificando a la persona o gru
a upo; en este últtimo caso idenntifique la tarea que se realiza
a
no nombre de personas.
es
Etiquete los procesos de manera que s puedan iden
e se ntificar las funciones que el sistema está llevando a cabo o.
Un buen sistema que se puede utilizar para nombrar procesos es us un verbo y un objeto. Es decir, elegir un
s sar n
verbo activo y un objeto apropiado par formar una f
o ra frase descriptiv para el proce
va eso.
Distintos tipos de datos = distintos flu
t => ujos.
Distintos niveles de abst
n tracción. nivele superiores: f
es funciones del ssistema de form general, niv
ma veles inferiores
s:
funciones del sistema de forma detallada. Máximo ha 7 niveles y almacenes relacionados.
e asta
Ejemplos de nombres de proc
E cesos:
CALCULAR TRAYECTOR DE PROYECTIL.
T RIA
PRODUCIR IN
P NFORME DE INVENTARIO O.
VALIDAR NU
V UMERO TELE EFONICO.
ASIGNAR ES
A STUDIANTE A LA CLASE.
Flujos validos
F s.
De una enntidad externa a un proceso.
De un prooceso a una enti
idad externa.
De un prooceso a otro pro
oceso
De un prooceso a un arch
hivo.
De un archhivo a un proceso.
Tipos de Diaggrama.
Diagrama Contextual: Es el primer d
a diagrama ayuda al analista de sistemas a ilu
a e ustrar el movim
miento de dato
os
básico, su naturaleza ge
u eneral limita su utilidad. El diagrama de c contexto inicia debe ser un panorama que
al
incluye enntradas básicas el sistema en general y las salidas. El dia
s, n agrama context es el nivel más alto en un
tual n
diagrama de flujo de dat y contiene s
to, solamente un p proceso que re tema completo Al proceso le
epresenta al sist o.
es dado el número cero. Todas las enti
l idades externa son mostrada en el diagra
as as ama de context así como los
to,
flujos de datos principal que entran y salen de el. E diagrama no contiene ning almacenam
d les El o gún miento de datoss.
Se realiza a partir de ent
trevistas con us
suarios y anális de documen
sis ntos.
Diagrama Expandido Es la explos
as o: sión del diagra ama de contex y puede in
xto ncluir hasta nu
uevos procesos
s,
muestran almacenes de d
datos y nuevos flujos de dato de nivel más bajo.
s os
Ing. D
Darmara J. Si
ilva Mendoza
a Página 7
7
9. Un
nidad 2. Pro
ogramaci
ión Estru
ucturada.
Ejemplo 2:
E
Diagrama Exp
D pandido de Nivel 1
Conexiones pe
ermitidas.
Fuente
ceso
Proc Alm
macén Entidades Externas
Destino
D
Proceso SI
S SI
S SI
Alma
acén SI
S NO
N NO
N
Entidades Externas SI
S NO
N NO
N
Ejercicio 1.
E
Un sistem está formad por varias actividades o procesos, cad uno de los cuales contie varios sub
ma do da ene b-
procesos con marcadas interrelaciones entre ellos. P ejemplo un proceso de c
c s Por n cuentas por pag puede esta
gar ar
integrado por tres sub-p
procesos que p
podrían llamars autorizació de la factur revisión de adeudo en la
se: ón ra, el a
cuenta y elaboración del cheque.
e
Ing. D
Darmara J. Si
ilva Mendoza
a Página 9
9
10. Unidad 2. Programación Estructurada.
A su vez cada sub-proceso se divide en sub-proceso más específicos.
Los nombres dados a los procesos especifican acciones y procedimientos de control que realizan
Cada proceso se etiqueta además con un número que identifica de donde proviene (excepto el diagrama de
contexto que solo se identifica con un nivel 0 más el nombre que se le proporcione)
En términos generales todo componente de los DFD se etiquetan con un nombre que sea representativo.
Niveles del DFD
Nivel de Partida: Diagrama de Contexto:
• No existirán almacenes o archivos.
• Se representarán las entidades externas que son fuente y destino de los datos.
• El sistema será representado como un proceso simple.
• Se dibujarán sólo los flujos de datos de comunicación exterior-sistema.
Nivel 1 y subsiguientes:
• Deberá haber igual cantidad de archivos. Aunque podrá existir mayor cantidad de almacenamientos
en el nivel 2 debido a la explosión de algún proceso.
• En el último nivel, cada proceso realizará una función específica y concreta.
En general la expansión de niveles depende de la naturaleza y complejidad del sistema que se modele; no es
posible especificar un número de niveles, en general se debe continuar con el proceso de expansión todo lo que sea
necesario para comprender los detalles del sistema y la forma en que trabaja, teniendo cuidado de verificar todos
los aspectos con usuarios que conocen el sistema, en general, se debe expandir todo aquel proceso que incluyen
varias tareas para las que es necesario, el flujo de datos entre diferentes personas o localidades. Por otra parte no
requieren expansión aquellas tareas que son realizadas por una persona o en un escritorio, donde no existe flujo de
datos.
2.1.1.2.- Diccionario de Datos.
Es un catálogo, un depósito, de los elementos de un sistema. Estos elementos se centran alrededor de los
datos y la forma en que están estructurados para satisfacer los requerimientos y las necesidades de la organización.
En él se encuentran la lista de todos los elementos que forman parte del flujo de datos en todo el sistema.
El diccionario de datos guarda y organiza los detalles del Diagrama de Flujo de Datos (DFD). Es el segundo
componente del análisis estructurado. También se conoce como "Data Repository". Incluye el contenido de los
data flow (flujos de datos), los "data store", las entidades externas y los procesos.
Elementos de datos (Data elements): Es la parte más pequeña de los datos que tiene significado en el sistema de
información. Se combinan varios elementos de datos para hacer los records o "data structures". Ejemplo: nombre,
dirección, seguro social.
Estructura de datos (Data Structure): También se conocen como record. Es la combinación de elementos de
datos relacionados que se incluye en un flujo de datos o se retiene en un almacén de datos.
Utilidad:
Describe el significado de los flujos y almacenes de los DFDs
Describe la composición de datos compuestos (por ejemplo, datos de un cliente) que se pueden descomponer
en datos más elementales (nombre, DNI, dirección,...), tanto de los que se mueven por el sistema como de los
almacenados.
Especifica los valores y unidades relevantes de datos elementales en los flujos de datos y almacenamientos.
Describe los detalles de las relaciones entre almacenes que se reflejan en un diagrama entidad-relación.
Documentación:
Elementos de datos: Las características que se describen en el diccionario de datos son:
1. Nombre: Es el nombre del elemento de datos; debe ser significativo.
2. Alias: Cualquier otro nombre que se pueda usar para referirse al elemento de datos. Por ejemplo, el nombre de
un elemento de datos puede ser Balance actual, y el alias puede ser Deuda. Solo se incluye el alias si realmente
es necesario utilizarlo.
3. Tipo y Tamaño: Tipo se refiere a si el elemento de datos contiene valor numérico, caracteres o alfabético.
Tamaño se refiere al máximo de caracteres o de dígitos que puede tener el elemento de datos.
4. Formato de Salida: Indica cómo se presenta el dato al mostrarse en pantalla o al imprimirse en un reporte. Por
ejemplo, el número de teléfono del cliente se puede guardar en el disco usando solo números 7878889999, pero
presentarse editado en la pantalla o en el reporte (787) 888-9999.
5. Valor por Defecto: Es el valor que el elemento de datos tiene si no se cambia entrando otro valor.
Ing. Darmara J. Silva Mendoza Página 10
11. Unidad 2. Programación Estructurada.
6. Nombre de campo en pantalla o reporte:- Es el nombre que se presenta en la pantalla o el título del dato en el
reporte.
7. Fuente: De dónde se origina el valor del elemento de datos. Puede ser una forma, un departamento, otro
sistema, etc.
8. Seguridad: Identifica los individuos o departamentos que pueden modificar el elemento de datos. Por ejemplo,
la línea de crédito puede ser cambiada por el gerente de crédito.
9. Usuario Responsable: Identifica el o los usuarios responsables de entrar o cambiar los valores del elemento de
datos.
10. Validación de Datos: Se especifica el dominio o valores permitidos. Pueden ser valores específicos, una lista de
valores, los valores que se encuentren en otro archivo, etc. El valor puede tener reglas de validación; por
ejemplo, el salario debe estar entre lo permitido para la posición que el empleado ocupa.
11. Derivado del Formulario: Si el valor es el resultado de un cálculo, se muestra la fórmula que se utiliza.
12. Descripción o Comentario: Para proveer información adicional, notas o descripciones.
Flujo de datos ( Data flows): Las características que se describen en el flujo de datos son:
1. Nombre: El nombre del flujo de datos tal y como aparece en el DFD.
2. Alias: Otro nombre con que se conozca el flujo de datos.
3. Abreviación o ID: Código que provee acceso rápido al flujo de datos en un diccionario de datos automatizado.
4. Descripción: Describe el flujo de datos y su propósito.
5. Origen: De donde sale (la fuente) el flujo de datos. Puede ser un proceso, un “data store o Almacén de datos
(Bases de Datos)” o una entidad.
6. Destino: El punto final del flujo de datos en el DFD. Puede ser un proceso, un “data store” o una entidad.
7. Registro o Record: Cada flujo de datos representa un grupo de elementos de datos relacionados, o un record.
Los records y los flujos de datos se definen por separado para que más de un flujo de datos o “data store” pueda
hacer referencia al mismo record.
8. Volumen y Frecuencia: Describe el número esperado de ocurrencias para el flujo de datos por unidad de
tiempo.
Almacén de Datos (Data store): Las características que se describen en el “data store” son:
1. Nombre: El nombre del “data store” según aparece en el DFD.
2. Alias: Otro nombre con el que se pueda llamar al “data store”.
3. Abreviatura o ID: Código que provee un acceso rápido al “data store” en un diccionario de datos
automatizado.
4. Descripción: Describe el “data store” y su propósito.
5. Entrada del Flujo: Los nombres de los flujos de datos que entran al “data store”.
6. Salida del Flujo: Los nombres de los flujos de datos que salen del “data store”.
7. Registro o Record: El nombre del record en el diccionario de datos para el “data store”.
8. Volumen y frecuencia: El número estimado de records guardados en el “data store”, al igual que el aumento o
cambio esperado.
Proceso: Se documenta cada función primitiva. Se incluye:
1. Nombre del Proceso: El nombre del proceso como aparece en el DFD.
2. Descripción: Un resumen del propósito general del proceso. Los detalles se documentan en el Descripción del
Proceso
3. Número del Proceso: Número de referencia que identifica el proceso y su relación con los niveles del sistema.
4. Flujos de entrada: Los nombres de los flujos de datos que entran al proceso.
5. Flujos de salida: Los nombres de los flujos de datos que salen del proceso.
6. Descripción del Proceso: Se explican los detalles del proceso.
Entidades Externas: Las características que se describen son:
1. Nombre: Nombre del agente o entidad
2. Alias: Otro nombre que se le da a la entidad, solo si es necesario
3. Descripción: Describe a la entidad y su propósito.
4. Flujo de Entrada: Los nombres de los flujos de datos que genera la entidad
5. Flujo de Salida: Los nombres de los flujos de datos que entrar a la entidad
Ing. Darmara J. Silva Mendoza Página 11
12. Un
nidad 2. Pro
ogramaci
ión Estru
ucturada.
2.1.1.3.- Descripción de Procesos.
Define lo que debe ha acerse para tran
nsformar entra
adas en salidas. Es una descri
ipción detallad de la política
da
de negocios del usuario que cada burbuja lleva a cabo. La especifica
d e a ación de proceesos describe las reglas sobre
cómo realizar el proceso par transformar las entradas en salidas. Indican el proceso a realizar, la transformación
ra n o n
de datos, no el algoritmo (qu se selecciona en la etapa de diseño).
l ue a e
Tipos de Proccesos:
Procesos estratégicos/ Gerenciales: Proporcionan directrices a todos los dem procesos y son realizado
s / más os
rección o por otras entidades. Se suelen refe a las leyes, normativas.
por la dir erir
Procesos clave/ Modul
s lares: Atañen a diferentes áreas y tienen im
mpacto en el cl
liente creando valor para éste
e.
Son las actividades ese
a enciales de la organización, su razón de se Ejemplo: G
er. Gestionar pedid despachos
dos, s,
registrar cita, inscripció Estas depen
c ón. nderán del tipo de organizacióón.
Procesos de soporte/ d apoyo: Dan apoyo a los procesos medu
s de n ulares. Ejempl Contratació y promoción
lo: ón n
del personal; Compras; Formación; M Mantenimiento.
Métodos:
M
Todos los procesos en u DFD deben ser descritos.
s un
Los métoodos usados par describir pro
ra ocesos de alto n
nivel, difieren de aquellos uti
ilizados para d
describir
procesos detallados.
Los primmeros son des scritos usualmente utilizando lenguaje na atural, y los ootros utilizand un lenguaje
do
estructura
ado.
Identificar un criterio y un indicador por cada proceso
I n r o.
Criterio: Aspecto no m
: medible del pro oceso que inter
resa evaluar. Ej jemplo Proces de enseñanza y aprendizaje
so
su criterio de aceptación es: Asimilaci del conocim
o n ión miento.
Indicado Variable me
or: edible relacion
nada directame aber más de un indicador para
ente con el criterio. Puede ha n
cada criteerio. Ejemplo: Proceso de ensseñanza y apreendizaje su indiicador es: Canttidad de alumn aprobados.
nos
Ficha de Anál
F lisis de los pro
ocesos
1. Nombre del proceso
d
2. Numero del Proceso
d
3. Tipo de proceso
p
4. Objetivo del proceso
5. Descripci del proceso
ión o
6. Tareas de Proceso
el
7. Datos de Entrada
8. Datos de salida
9. Exigencia del Reglame
as ento
10. Exigencia de la Empres
a sa
11. Responsaables del proceeso
12. Subproceesos Asociados s
13. Puntos de Mejora
e
Ing. D
Darmara J. Si
ilva Mendoza
a Página 12
2