Академический Документы
Профессиональный Документы
Культура Документы
Al desarrollar sistemas grandes y complejos, en general, no existen medios que guen al analista de sistemas en el diseo de un DFD. El Analista se sienta en su mesa, contemplando una hoja de papel, esperando por un momento de inspiracin divina o saturndose de ideas que le son imposibles de expresar todas a la vez. Esta incertidumbre puede eliminarse intentando aplicar un mtodo de construccin sistemtico, asistido por herramientas complementarias que ayudan a desglosar el problema en partes y tratarlas una por vez en una manera organizada. A continuacin se desarrollar un ejemplo concreto de construccin sistemtica de DFDs. El mtodo que aplicaremos es descripto de manera informal, a fin de presentar algunas otras herramientas que asisten en la construccin de un modelo funcional de un sistema, expresado en una jerarqua de DFDs. Al desarrollar un sistema, cualquiera fuere su tamao, es necesario contar en primer trmino, con una narrativa textual y una declaracin concisa de los objetivos del sistema (la funcionalidad que se requiere, es decir lo que se espera que el sistema haga), por supuesto validada con el usuario del sistema (las personas a las que l esta destinado). A continuacin, se presenta una narrativa textual, y su correspondiente declaracin de objetivos, referente al caso de estudio que abordaremos: el desarrollo de un sistema de informacin para la administracin de un hotel.
A partir de esta narrativa, se debe obtener una descripcin de los hechos, que ocurren en el entorno o ambiente en el que el sistema funcionar, y a los que el sistema debe dar una respuesta preplaneada. Es decir, podemos ver al sistema como un agente que reacciona ante determinados estmulos que ocurren en su mundo exterior. Una vez conocido lo que estimula al sistema, nuestra tarea consistir en planificar sus reacciones acorde con los objetivos. Utilizaremos, para describir y enumerar los hechos o eventos que estimulan al sistema y que hacen a este reaccionar, una herramienta denominada lista de eventos.
Adems de una descripcin de los estmulos a los que el sistema responde, es necesaria tambin, una descripcin de los lmites que separan al sistema de su medio ambiente. Con esta descripcin tendremos una buena comprensin de los alcances que tiene el sistema. Utilizaremos para describir esto, el Diagrama de Contexto. Este diagrama es un caso especial del diagrama de flujo de datos, en el cual una nica burbuja representa al sistema entero. El
nombre que se le da a dicha burbuja (proceso) es normalmente, el nombre del sistema o una sigla patrn o modelo. Construccin del Diagrama de Contexto La construccin del diagrama de contexto involucra los siguientes pasos: Para cada sujeto de la lista de eventos se dibuja una entidad externa. Para cada evento, buscar un nombre para el paquete de datos que sirve de estmulo. Para cada evento dibujar un flujo de la entidad externa al sistema, colocndole el nombre y el nmero de evento que lo genera. Dibujar la respuesta del sistema a cada estmulo y colocarle el nmero de evento correspondiente. (Si la respuesta es interna, es decir no sale del sistema, no se dibuja. Las externas se dibujan todas, y pueden ser ms de una por evento). Por ltimo, se debe controlar la falta de estmulos necesarios, observando otras respuestas en la narrativa. Otra herramienta utilizada para describir los estmulos y respuestas del sistema es la tabla de estmulo-respuesta, que generalmente se construye junto con el diagrama de contexto. Esta tabla asocia cada estmulo que se produce en el ambiente con las respuestas que el sistema produce, describiendo adems las respuestas internas o actividades que el sistema realiza ante cada evento. Diagrama de Contexto y Tabla de Estmulo-Respuesta para el Caso de Estudio Hasta aqu lo que se ha logrado es comprender mejor el problema, es decir el sistema que debemos desarrollar. Conocemos los eventos que lo estimulan (Lista de Eventos) y las respuestas que se generan por cada evento, como as tambin qu agentes externos estn involucrados (Diagrama de Contexto, figura 4). Tambin tenemos una idea, aunque poco precisa, de las actividades a desarrollar ante cada evento (respuestas internas en Tabla Estmulo-Respuesta). Los modelos construidos hasta aqu se denominan comnmente, en su conjunto, Modelo Ambiental. Al final de la etapa de construccin del modelo ambiental tambin se dispone de una primera versin del Diccionario de Datos (DD) conteniendo, al menos, una descripcin de cada uno de los flujos de datos del diagrama de contexto. El DD ser omitido por simplicidad, y a los efectos de no saturar la exposicin en desarrollo. La construccin del diccionario de datos ser objeto de una seccin posterior. A partir del modelo ambiental tendremos que descubrir y modelar la manera en que el sistema trata los diferentes eventos que recibe para generar las respuestas deseadas por los agentes externos y, tambin, se deben descubrir y modelar los depsitos persistentes que contendrn la informacin esencial a ser manejada por el sistema. Esto es, tendremos que modelar todo lo que acontece en el interior del nico proceso del diagrama de Contexto, que representa al sistema.
Diagrama de Contexto del caso de estudio En este punto, podramos aplicar un enfoque clsico de anlisis estructurado para descomposicin descendente o top-down [DeMarco; Gane]. Este enfoque propone la construccin de una jerarqua de DFDs, cada una representando un nivel de abstraccin diferente. Se comienza con la construccin de un DFD de primer nivel (o nivel 1), que constituye la explosin del diagrama de contexto. Para la construccin del DFD de primer nivel, el analista (o el grupo de analistas) estudia el diagrama de contexto y crea un DFD (de nivel 1) sin una estrategia que lo asista. Utilizando su propio conocimiento del problema, o del tipo de aplicacin, y su sentido comn, divide al sistema en "Burbujas Importantes" (representando por ejemplo subsistemas). Estas burbujas importantes, o subsistemas principales, son particionadas a su vez en otras, representando un nuevo nivel de descripcin acerca del detalle de las transformaciones que el sistema produce sobre los datos que recibe. Este proceso de descomposicin se aplica a cada burbuja en cada nivel, describindola con un nuevo DFD, hasta alcanzar una burbuja que denominaremos atmica y que no requiere de mayor descomposicin, y cuyo funcionamiento pueda ser descripto por medio de una tcnica de especificacin complementaria (estas se vern en detalle ms adelante).
Tabla Estimulo-Respuesta del caso de estudio Aunque el enfoque clsico de descomposicin descendente constituye el pilar fundamental en el que se apoya el anlisis estructurado, en la prctica presenta varios problemas: parlisis e incertidumbre en el anlisis, particin fsica arbitraria del sistema, etc. Estos problemas se deben fundamentalmente a la falta de una estrategia robusta que conduzca la descomposicin.
Podramos entonces, utilizar un enfoque ms sistemtico para hacer frente a los problemas mencionados, intentando explotar la burbuja del diagrama de contexto utilizando el lgebra de descomposicin de procesos, descripta en la seccin anterior. Utilizaremos sin embargo, otro enfoque, con el objeto de presentarlo quedando su descripcin detallada para la seccin que cubre la metodologa de Anlisis Estructurado Moderno. El enfoque que utilizaremos aqu se denomina comnmente Enfoque Medio, o como fuera llamado por McMenamim y Palmer, de particin por eventos . El enfoque de derivacin del DFD por particin de eventos propone desarrollar un Diagrama de Flujo de Datos Preliminar y al nivel de detalle dado por los eventos en la lista de eventos, que describir las transformaciones que el sistema produce sobre los datos como respuesta a los eventos. Este enfoque, suele denominarse Enfoque Medio debido a que no es una actividad puramente top-down ni tampoco es puramente bottom-up. Una vez que el DFD preliminar est listo, puede ser necesario crear algunos niveles superiores (abstraccin de funciones) y/o algunos niveles inferiores (descomposicin de funciones). El DFD construido con este enfoque (DFD preliminar) presenta una burbuja por cada evento existente en la lista de eventos, y estas burbujas no se comunican directamente unas con otras, sino que la comunicacin se da a travs de depsitos de datos. Esto ltimo se debe a que las burbujas o procesos del DFD preliminar representan funciones que generan las respuestas que el sistema da ante cada uno de los eventos, y los eventos que ocurren en el medio ambiente externo son, en general, asincrnicos. Es decir, no hay forma de garantizar que dos eventos ocurrirn en el mismo instante, o con segundos de diferencia, o con algn otro intervalo especfico de tiempo. Los eventos ocurren cuando tienen que ocurrir, por lo tanto, como la respuesta a un evento puede requerir de datos producidos por otro proceso atendiendo otro evento, la nica manera de sincronizar los mltiples procesos interdependientes del DFD preliminar es mediante depsitos de datos.
Luego de desarrollar un diagrama por cada evento se deben conectar los diagramas en uno nico, agregando los repositorios necesarios entre los datos que una burbuja produce y que otra consume. Conviene tener en cuenta en este paso, que toda informacin entrante a un proceso que no proviene del medio ambiente externo, debe provenir necesariamente de un almacenamiento. Por otra parte, toda informacin generada que no se emita directamente al medio ambiente, deber almacenarse. Este paso puede apoyarse tambin en la construccin de un modelo de datos (objeto de estudio de una seccin posterior) y en los objetos candidatos a memoria esencial observados en la lista de eventos, para identificar los repositorios de datos. En el caso de estudio, los repositorios identificados son: Reservas, Habitaciones, Pasajeros, y Servicios.