Diagramacion de Sistemas V 2.0

29
Universidad de Buenos Aires Facultad de Ciencias Económicas Tecnología de la Información 2016

Transcript of Diagramacion de Sistemas V 2.0

Page 1: Diagramacion de Sistemas   V 2.0

Universidad de Buenos Aires Facultad de Ciencias Económicas

Tecnología de la Información2016

Page 2: Diagramacion de Sistemas   V 2.0
Page 3: Diagramacion de Sistemas   V 2.0

Diagramación de Sistemas: Herramientas de Modelado

(Por: Dr. La Marcelo González Bosque)

Page 4: Diagramacion de Sistemas   V 2.0

Introducción 1. Diagramación de Sistemas: Herramientas gráficas de utilidad para las tareas relacionadas con la tecnología de la información. • Existen diversas herramientas gráficas que el analista de sistemas tiene a su disposición para la realización de su trabajo.

Cada una de ellas se adapta mejor a una situación en especial. La utilización de una u otra, por ende, está relacionada con la naturaleza del fenómeno a describir, mas que con el gusto personal del analista.

• Justamente, parte de la labor del mismo consiste en tener un buen conocimiento de la mayoría de las técnicas de diagramación para poder utilizar la mas adecuada en el momento oportuno.

2. Herramientas usuales A continuación, se describirán y ejemplificarán algunas de las herramientas mas usuales: • Asociación simple• Estructura de Árbol• Modelo Jerárquico• Cuadro sinóptico• Organigrama• Tablas de Decisión.• Diagrama de lógica• Diagramación funcional de sistemas (DFD)

Page 5: Diagramacion de Sistemas   V 2.0

2.1 Asociación simple y 2.2 Estructura de Árbol:/ Modelo Jerárquico/ Modelo Relacional.

• 2.2 Estructura de Árbol:/ Modelo Jerárquico/ Modelo Relacional.

• • Existe una conocida herramienta de

diagramación llamada estructura de árbol, especialmente indicada para el caso de que se necesiten graficar relaciones de jerarquía o categorías de los componentes o nodos.

• El árbol nos permite visualizar en forma instantánea relaciones complejas entre los nodos, que de otra manera resultarían mucho mas difíciles de percibir si las quisiéramos exhibir en otro formato. Un nodo, aquí representado con un círculo, puede ser un número, un texto o una combinación de ambos. Asociacion Simple

2.1 Asociación simple: Se ponen los elementos en cualquier orden.

Page 6: Diagramacion de Sistemas   V 2.0

Estructura de árbol y Red

Estructura de árbol

RED1 Nótese que los “niveles”, son conceptos que en el árbol aparecen en forma implícita:simplemente “vemos” que el nodo 2 y 3 dependen del uno, pero nadie nos lo dijo. En cambio, en la tabla deben ser puestos en forma explicita, es decir como nombres de las columnas. Se sobreentiende que existe una categoría (1) , de la cual dependen las subcategorías (2) y (3), de las cuales dependen a su vez los nodos (4) a (7). En el ejemplo precedente, de cada nodo se desprenden a su vez dos nodos mas. Este tipo de árbol es llamado árbol binario.

Si de cada nodo se desprende el mismo numero de sub-nodos, el árbol se denomina simétrico. Si de cada nodo puede salir un número distinto de sub-

Page 7: Diagramacion de Sistemas   V 2.0

Estructura de árbol y Red /Cuadro sinoptico 2

• nodos, el árbol se denomina asimétrico. Todo árbol binario es un árbol simétrico.

• Existen estructuras que son variaciones del modelo del

árbol, aunque reciben diferentes nombres. En este trabajo se las ha unificado en una sola categoría, a los fines de dejar explícito la similitud entre dichas estructuras.

• Las mas usuales son la estructura jerárquica y el cuadro sinóptico.

• 2.3 El cuadro sinóptico reemplaza las líneas por corchetes o

paréntesis, pero consiste en el mismo tipo de gráfico. Nuestro ejemplo anterior, visto como un cuadro sinóptico nos quedaría como:

Cuadro sinoptico 2 • Nótese algo muy interesante: La estructura de árbol

parecería ser un concepto específico del área de tecnología de la información y asignaturas similares, sin embargo, la mayoría de los alumnos de nivel primario y medio utilizan cuadros sinópticos para hacer resúmenes de los libros que estudian.

• Se debe tener en cuanta entonces, que existen

determinadas herramientas que son mas o menos conocidas dependiendo del nombre que les demos y el

Page 8: Diagramacion de Sistemas   V 2.0

Estructura de árbol y Red / Organigrama• ámbito en que las enseñemos. De este modo tenemos que el

famoso “árbol” utilizado en el área de sistemas no es otra cosa que un cuadro sinóptico diagramado con líneas en vez de corchetes.

• Lo mismo ocurre con la llamada estructura jerárquica. La misma se compone de un árbol al cual se lo rota 90º, a los efectos de que el primer nodo quede arriba y los demás “caigan” hacia abajo.

• En este tipo de variante, los círculos que representan los nodos son reemplazados frecuentemente por rectángulos, y las líneas que los conectan son expuestas siempre como líneas rectas (no se admiten diagonales).

• El ejemplo precedente nos quedaría entonces como:

2.4 Organigrama

• Para mucho de nosotros esta forma inmediatamente se asocia con otra estructura conocida: El organigrama. En efecto, cuando los nodos son reemplazados por los nombres de los sectores de una organización

Page 9: Diagramacion de Sistemas   V 2.0

Estructura de árbol / Conclusiones: El modelo jerárquico se convierte instantáneamente en un organigrama. Tenemos entonces aquí otra muestra de un gráfico que a primera vista parecería ser algo técnico derivado del análisis de sistemas, pero que cuando lo examinamos detenidamente nos encontramos con que es algo familiar que hemos estado viendo y utilizando por mucho tiempo. Conclusiones: Estos ejemplo nos sirven para notar que muchas de las estructuras de graficación que debe conocer el analista de sistemas son en general conocidas y utilizadas en las mas variadas formas por gente común y corriente, de la manera mas natural. Tal vez sean las herramientas de sistemas de uso mas popularizado que existan. Los modelos de “árbol”, “cuadro sinóptico” , “jerárquico” y “organigrama” son variantes del mismo tipo de herramienta. La diferencia fundamental es que cambian su nombre dependiendo de la finalidad para que se usen. Un árbol utilizado para hacer un resumen de un texto recibirá el nombre de “cuadro sinóptico”, mientras que si se usa en el área de personal para exhibir los sectores de una empresa, recibirá el nombre de “organigrama”. Otro ejemplo de Cuadro Sinóptico:

Page 10: Diagramacion de Sistemas   V 2.0

Otro ejemplo de Cuadro Sinóptico:

Page 11: Diagramacion de Sistemas   V 2.0

2.5 Tablas de Decisión (Tables of Decition - TODs) :

• TODs Genéricas:

• Las TODs constituyen otra herramienta usual en el arsenal del hombre de sistemas.• Como su nombre lo indica, constituyen tablas en donde se exponen las características

de funcionamiento de los sistemas a tratar, de manera de poder tener una mirada rápida de la operatoria de los mismos.

• Supongamos el siguiente ejemplo:

• Las gripes producen fiebre, tos y/o estornudos. Los resfríos, producen estornudos y tos, pero no fiebre. La laringitis produce dolor de garganta, tos y fiebre pero no estornudos.

• Si la lista se hace demasiado grande, se vuelve imposible de memorizar. Sin embargo, la misma información es fácilmente comprensible si la exponemos como una TOD.

Page 12: Diagramacion de Sistemas   V 2.0

TOD• TOD1

• Existen situaciones en donde se necesita utilizar una TOD como base de cálculos matemáticos. En estos casos, es útil el utilizar la TOD numérica en vez de la TOD clásica de espacios en blanco y letras “X”.

• Veamos unos ejemplos de TODs genéricas mas relacionados con el área de sistemas:

Page 13: Diagramacion de Sistemas   V 2.0

Ejemplo 8: TOD de permisos de acceso a un sistema específico

Page 14: Diagramacion de Sistemas   V 2.0

2.6 Diagrama de Lógica:

• Se utiliza a los efectos de presentar secuencias de acontecimientos, (llamadas en la jerga de sistemas “Rutinas”, “sub-rutinas”, “funciones preprogramadas”, o “Procedimientos”), en el orden que deben ser realizados. La gran ventaja de este tipo de herramienta es que incorpora simbología para denotar “controles” para las operaciones, por lo que se puede ver con claridad cuando en un sistema son necesarios los chequeos de los procesos y las rutinas.

• Así mismo, también se pueden graficar “Condicionales” y “ciclos”, lo cual brinda potentes medios de representar el pensamiento lógico de una acción.

• Los condicionales son estructuras del tipo “IF-THEN” o “SI-ENTONCES”, en donde se puede graficar sentencias como la siguiente:

• “SI pasa tal evento, ENTONCES se debe realizar esta operación; SI NO pasa ese evento, ENTONCES se debe realizar esta otra operación”.

• El ciclo alude a acciones repetitivas. La gran mayoría de las acciones operativas pueden ser pensadas como una repetición mas o menos monótona de una serie muy simple de acontecimientos. El ciclo permite describir esta serie simple de acontecimientos y simplemente recalcar que deben ser repetidas un numero determinado de veces.

Page 15: Diagramacion de Sistemas   V 2.0

Ejemplos de ciclos:

• Si usted tiene que limpiar un piso de mármol, y tiene un balde con agua y jabon y una escoba con un trapo en su punta, el proceso puede ser pensado de la siguiente manera:

Como limpiar un metro cuadrado de superficie:

• Coloque el balde al lado de la superficie a limpiar.• Sumerja la escoba en el balde con agua jabonosa• Retire y sacuda el excedente de agua• Coloque la escoba en el piso y friegue en círculos hasta abarcar una superficie similar al metro cuadrado de piso.

• Estas cinco operaciones pueden tener el nombre de “LIMPIAR 1 M2”

• El concepto de ciclo nos sirve para poder graficar las veces que esto es necesario de hacerse.

• Supongamos que queremos graficar el procedimiento para limpiar una superficie de 1000m2:

• Simplemente tendremos que:

• REALIZAR 1000 veces la acción “LIMPIAR 1 M2”• Como se puede apreciar, el hecho de limpiar un piso completo no es otra cosa que un ciclo en donde se repiten los movimientos

básicos una y otra vez, hasta que se ha acabado de limpiar toda la superficie.

Page 16: Diagramacion de Sistemas   V 2.0

SimbologiaVale la pena el destacar que no existe una normalización profunda de la simbología, así que no es de extrañar que en diferentes libros los símbolos aparezcan significando operaciones diferentes. Los diagramas de lógica datan de la segunda mitad del siglo XX, por lo que ya llevan varias décadas entre nosotros. Por ende, no es de extrañarse que muchos de sus símbolos hagan referencia a acontecimientos obsoletos y a formas de proceder que han sido abandonadas por la tecnología actual. De hecho, símbolos como “e-mail” o “mouse” que son de uso común a la fecha de realización de este trabajo no han sido incluidos en la simbología, lo cual es otra muestra de la antigüedad de esta técnica.

De hecho, el símbolo consistente en un rectángulo con el ángulo superior izquierdo cortado, significa literalmente “Tarjeta Perforada” (forma obsoleta de almacenar información, ya en desuso). En este trabajo se lo ha rebautizado como “formulario” a los fines de seguir utilizándolo.

Page 17: Diagramacion de Sistemas   V 2.0

Ejemplos:Dados dos números, sumarlos y exponer por el monitor el resultado:La lógica de la computadora generalmente necesita trabajar con ecuaciones mas que con datos puros. Por ende, para representar los numeros 3 y 4 , deberemos crear un par de ecuaciones:

x=3 ; y=4

Tanto x como y serán llamadas “Variables”. 3 y 4 son los valores que adoptan las variables x e y en un momento dado.

Para representar x=3 e y=4 en un diagrama de lógica tendremos que exponer:

Page 18: Diagramacion de Sistemas   V 2.0

Uso de condicionales:• Ejemplo: Uso de condicionales:

• Supongamos una rutina para chequear si un numero es par o no. Para que un numero sea par, su división por 2 debe dar un numero entero. Existe en la mayoría de los paquetes de software una función predefinida que es la función INT() o ENTERO() que devuelve la parte entera de un numero.

• Si defino que x=int(4); el valor de x=4, ya que es la parte entera de 4 es 4.

• Si defino que y=int(2,5); el valor de y=2, ya que es la parte entera de 2,5.

• Por ende, en un numero par int(x/2)=0; en un numero impar, int(x/2)≠0.

Page 19: Diagramacion de Sistemas   V 2.0

Uso de condicionales:• La rutina quedaría entonces como:

• a) El operador ingresa por teclado el numero, asimilado a la variable “X”

• b) La maquina calcula si int(x/2)=0, o sea si la división por dos deja a no un resto

• c) En caso de ser verdadero, contesta por pantalla “El numero es par”

• d) En caso de ser falso, contesta por pantalla “El numero es impar”

Page 20: Diagramacion de Sistemas   V 2.0

2.7 Diagrama funcional de sistemas: (DFD) Data-Flow Diagram

• Se utiliza a los efectos de presentar las entradas, salidas y almacenamientos de uno o varios procesos. Cuando se grafican varios procesos en el mismo gráfico, generalmente recibe el nombre de DFD o Data-Flow Diagram, cuya traducción literal sería Diagrama de flujo de datos.

• Cuando solo se grafica uno solo se suele llamar Diagrama de Procesos. Diversos autores utilizan en sus metodologías para el desarrollo de sistemas variantes mas o menos parecidas de esta herramienta. Yourdon (1) , por ejemplo utiliza el nombre de “Modelo de Comportamiento” para describir una sección de su metodología en donde se exponen los DFD’s. Otros autores como Gane y Sarson (2), por ejemplo, utilizan un DFD similar, aunque llaman a sus componentes de manera distinta.

Page 21: Diagramacion de Sistemas   V 2.0

Los Elementos de un DFD son :a) Terminadores: Es la palabra utilizada por Yourdon (1). Otros autores utilizan el vocablo “Entidad Externa”, el cual comparte el autor de este trabajo. Se refiere a aquellas entidades (generalmente personas) ajenas al sistema en si mismo, pero que interactúan con él proveyendo o solicitando información.Cuando decimos “El operador consulta en la computadora los datos de ....” queremos significar que existe un sistema de información, el cual posee un proceso de consulta de los datos solicitados. La persona que maneja el sistema, llamado en este caso “El operador” , es la entidad externa o terminador.b) Procesos: El proceso es la serie de pasos o transacciones que debe realizar la computadora para realizar la operación que el terminador le encomienda. En una típica operación de consulta, el proceso consiste en la confección del reporte o informe respectivo conteniendo los datos requeridos y en la manera de mostrar el mismo al terminador.c) Flecha de flujo: Indica la dirección del flujo de información. Es importante el distinguir entre flujo de información y su soporte. Por ejemplo, en el caso de una factura, el soporte es la factura propiamente dicha (la hoja de papel), mientras que el flujo de información es el numero de factura, la fecha, el cliente, el importe, el articulo etc. En un sistema de información computadorizado nos interesa solamente el flujo de información, no su soporte físico.d) Archivo: Los archivos o tablas contienen la información necesaria para poder realizar los procesos. Mientras Yourdon (1) utiliza la nomenclatura D1 para graficar los archivos, otros autores usan la D2. A los fines de este trabajo, se considerará indistinto el uso de uno u otro.

Page 22: Diagramacion de Sistemas   V 2.0

Tipos de Procesos: Los procesos se graficarán diferente de acuerdo al tipo de proceso a que se haga cuestion.

Los mas comunes son:

Altas / Ingreso de datos:Bajas/ Supresión de datosModificaciones de datosConsultas / Reportes / InformesListados / e-mails / ftp (transferencia de archivos por computadora. Es similar a cuando se

manda un mail con un archivo adjunto. La diferencia es que aquí no hay mail. Directamente se manda el archivo)

1) Altas / Modificaciones:

Las altas y modificaciones de datos tienen una graficación similar. En estos procesos, uno o mas terminadores le ordenan al sistema que ingrese nuevos datos en una o mas tablas o que modifique valores existentes en las mismas.

Ejemplo : “El operador ingresa los datos del cliente: código, nombre, apellido, dirección”En este tipo de procesos hay dos variantes a) Con validación previa b) sin validación. En la variante sin validación los datos son ingresados directamente sin mas tramite. En la opción con validación, primero se verifica la existencia o no del dato en la tabla respectiva antes de proceder a ingresar o modificar el dato.

Page 23: Diagramacion de Sistemas   V 2.0

Ejemplo sin validación• Ejemplo sin

validación: “El operador ingresa los datos del cliente: código, nombre, apellido, dirección”

Observamos entonces los elementos pertinentes:El terminador se llama “operador”, que es la persona que opera el sistema.El flujo que va desde el terminador hacia el circulo implica que la información es aportada por el operador y fluye hacia la maquina. Se trata de una entrada de datos. El flujo de datos debe tener una leyenda que indique a grandes rasgos la naturaleza de la información transmitida. Si lo que está fluyendo son el código, nombre y dirección de los clientes, se puede poner al flujo el nombre de “datos clientes” o “Datos personales de los clientes”El proceso, representado por un circulo, debe tener un nombre indicativo de su función.Algunos autores utilizan verbos en infinitivo como signo de que estamos hablando de procesos. A los fines de este trabajo, se respetara esa convención.Los nombres indicativos para un alta usuales pueden ser: “Ingresar ...”, “dar de alta...”, “agregar...” , “insertar...”, etc. En el ejemplo 1. A se utiliza “Ingresar los datos del cliente”El segundo flujo, que parte del proceso y va hacia la tabla de clientes, indica que se trata de un alta o modificación de datos, ya que los mismos van desde el proceso hacia la tabla.

Page 24: Diagramacion de Sistemas   V 2.0

Ejemplo con validación:

La leyenda del mismo contiene los nombres de los campos a insertar o actualizar.Finalmente, la tabla de clientes es el último elemento, la cual recibe una flecha de flujo con los campos “código, nombre, apellido, dirección”. Esto implica que ellos deben ser insertados / modificados de la tabla.

Ejemplo 1 con validación: “El operador ingresa los datos del cliente: código, nombre, apellido, dirección”El ejemplo no deja en claro cuando se trata de un alta y cuando una modificación.La idea general sería que se trata de un alta cuando los datos no existen anteriormente y se trata de una modificación cuando los mismos ya han sido cargados. Por ende, el proceso consultará previamente la existencia de los datos en la tabla, y en base a los resultados obtenidos concluirá que se trata de un alta o una modificación. DFD4: Si observamos detenidamente, podemos apreciar que la diferencia estriba en los flujos de datos entre el proceso y la tabla. Aquí primeramente el proceso consulta a la tabla para verificar si existe o no el dato previamente cargado. La flecha de la consulta es la que parte de la tabla y fluye hacia el proceso. Una vez hecho esto pueden pasar dos cosas: a) que los datos no existan con anterioridad. Esto implica un alta. b) que los datos ya existan. En este caso el sistema asume que es una modificación.

Page 25: Diagramacion de Sistemas   V 2.0

Consultas:

Las consultas se refieren principalmente a pedirle a la maquina que nos muestre datos que han sido almacenados en la base de datos , o en datos calculados , generalmente a partir de datos almacenados en las tablas.La diferencia fundamental aquí estriba en el hecho de que los datos no son alterados. Simplemente el proceso consiste en agruparlos de alguna manera.Cuando exponemos una consulta con un formato determinado, generalmente recibe el nombre de “informe” o “reporte”. Por ende, se tomarán como equivalentes los términos: “Consultar”, “Realizar un informe”, “Preparar un reporte” y similares. La diferencia entre estos términos obedece solamente a cuestiones estéticas de diseño, mas que a requisitos de fondo de las consultas.Veamos un ejemplo concreto:Ejemplo : “El empleado consulta los datos del proveedor: código, nombre, apellido, dirección”. Seria equivalente a decir “El empleado pide a la maquina que prepare un reporte con los datos del proveedor: código, nombre, apellido, dirección” o “El empleado ordena a la computadora que elabore un informe en base a los datos del proveedor: código, nombre, apellido, dirección”. DFD5Nótense dos cosas:a) La flecha que va desde el empleado hasta el proceso es doble. Esta notación se utiliza para mostrar que se trata de una consulta en vez de un alta. Se debe entender que el empleado le da a la maquina la orden de preparar el reporte, y una vez que la tarea ha sido finalizada, la misma le exhibe el informe para su lectura.b) La flecha que va desde la tabla de proveedores al proceso fluye DESDE la tabla HACIA el proceso. Esto indica que los datos se están leyendo, no actualizándose.

Page 26: Diagramacion de Sistemas   V 2.0

Listados, E-mail, ftp

En esta categoría agrupamos aquellos procesos que requieren un periférico de salida para poder ejecutarse. La palabra “Listados” hace referencia a una consulta, reporte o informe que se manda a imprimir en papel, utilizando una impresora.El e-mail y el ftp necesitan de un modem y de una conexión a Internet para poder ejecutarse.

Ejemplo 3a: “El operador pide a la maquina que imprima los datos del cliente: código, nombre, apellido, dirección para llevárselo a XX”. En este caso la diagramación es igual a la de la consulta, ya que el mismo operador recibe el listado.

Ejemplo 3b:Sin embargo, si el mismo se envía por la red interna de la oficina a una impresora remota (impresora remota = está ubicada en otro escritorio, posiblemente en otro piso). En este caso tendríamos que: “El operador pide a la maquina que le mande un listado a la impresora de XX que contenga los datos del cliente: código, nombre, apellido, dirección”Seria equivalente a decir “El operador pide a la maquina que mande un e-mail a XX que contenga los datos del cliente: código, nombre, apellido, dirección” o “El operador utiliza la máquina para enviar a XX por ftp un archivo con los datos del cliente: código, nombre, apellido, dirección”.

Page 27: Diagramacion de Sistemas   V 2.0

Diagramación Funcional:

Los ejemplos anteriores muestran la graficación de procesos individuales. Llamamos a esta metodología de exposición Diagramación de Procesos o Diagramación funcional.Yourdon (1) denomina Modelo de Comportamiento a la sección de su metodología en donde expone la diagramación funcional.El DFD se obtiene cuando graficamos la totalidad de los procesos en un único gráfico.DFD3El cuadrado de bordes redondeados es utilizado por ciertos autores (2) como medio para delimitar el sistema. Otros (1) utilizan la línea punteada para idéntico fin. Nótese que las entidades externas quedan fuera de los ámbitos del mismo.

Page 28: Diagramacion de Sistemas   V 2.0

Ventajas y desventajas del DFD contra la diagramación de procesos individuales:

• El DFD tiene la ventaja de exponer en un solo cuadro todos los procesos y ver su interacción mutua. Sin embargo, cuando el número de los mismos que tiene un sistema es mucho, el mismo se vuelve un galimatías difícil de comprender. Si bien es una cuestión de gustos el elegir una u otra metodología, el autor de este trabajo expresa su preferencia por la exposición de los procesos en forma individual, ya que si bien los ejemplos teóricos dados en la facultad funcionan muy bien cuando se los expone, es necesario decir que en la vida real del analista, la mayoría de los sistemas de importancia tendrá una cantidad tal de módulos que dificultan en la práctica la lectura de los DFDs.

• El DFD y los diagramas de procesos son una herramienta fundamental que debe ser conocida por el analista de sistemas a la hora de poder graficar Entradas, salidas y almacenamientos de los procesos de los sistemas.

Page 29: Diagramacion de Sistemas   V 2.0

BIBLIOGRAFIA

(1) Yourdon : Análisis Estructurado de Sistemas(2) Gane y Sarsons (1983): Análisis estructurado