HERRAMIENTAS CASE UNIDAD 1 : Modelo de comportamiento II DIAGRAMA DE TRANSICION DE ESTADOS CONCEPTO El diagrama de transición de estados, enfatiza el comportamiento dependiente

del tiempo del sistema. Importan a aquellos sistemas de tiempo real, sistemas de conmutación telefónica, sistemas de captura de datos de alta velocidad y sistemas de control y mando militares. COMPONENTES Las principales componentes del diagrama son estados, y flechas que representan los cambios de estado. • Los estados : Los estados del sistema se representan con un rectángulo. Cada rectángulo representa un estado en el que se puede encontrar el sistema. Por lo tanto, los estados típicos de un sistema pueden ser : esperar a que el usuario de su contraseña, esperar la siguiente orden, etc. Muchos de estos ejemplos implican que el sistema esta esperando a que algo ocurra, y no se expresan en términos de que la computadora este haciendo algo. Esto se debe a que el DTE se usa para desarrollar un modelo de cómo se comportaría el sistema si hubiera tecnología perfecta. Así cualquier estado observable en el que el sistema se pueda encontrar solo puede corresponder a periodos en los que : • Esta esperando que algo ocurra en el ambiente externo o, • Esta esperando a que alguna actividad que se este dando en ese momento en el ambiente cambie a otra. Un estado representa algún comportamiento del sistema que es observable y que perdura durante algún periodo finito. • Los cambios de estado : un sistema que existió en un solo estado no seria un objeto de estudio muy interesante: seria estático. Los sistemas de información que modelamos pueden tener docenas de estados diferentes. Los cambios de estado se muestran en el DTE conectando pares relevantes de estados con una flecha. Cualquier estado puede llevar a un numero arbitrario de estados sucesores. La mayoría de los sistemas tienen un estado inicial reconocible y un estado final reconocible. El estado inicial típicamente suele ser el que se dibuja en la parte superior del diagrama, aunque no es obligatorio. Lo que lo identifica como inicial es la flecha desnuda que no esta conectada a ningún otro estado. El estado final suele ser el que se dibuja en la parte inferior, pero no es obligatorio. Lo que lo identifica es la ausencia de alguna flecha que salga de el. El sentido común dice que un sistema solo puede tener un estado inicial, sin embargo, puede tener múltiples estados finales. Los diversos estados finales son mutuamente excluyentes. Como consideramos que contamos con tecnología perfecta, podemos suponer que los cambios de estado ocurren instantáneamente. • Condiciones y Acciones : para completar el DTE necesitamos añadir: las condiciones que causan un 1

El DTE representa una especificación de proceso para una burbuja de control en un DFD. Diagramas particionados : en un sistema complejo puede haber docenas de estados distintos del sistema. luego del o los estados secundarios.cambio de estado y las acciones que el sistema toma cuando cambia de estado. sobre todo si el es el único que esta familiarizado con el comportamiento dependiente del tiempo del sistema VERIFICACION DE LA CONSISTENCIA Cuando se termine de construir el DTE preliminar. ser utilizado en conjunto con otras herramientas. o de llevar a cabo la actividad X a llevar a cabo la actividad Y. Esto hace que el sistema cambie de estado de esperar X a un estado de esperar Y. Sin embargo. deben seguirse las siguientes reglas para verificar la consistencia : • Se han definido todos los estados? • Se pueden alcanzar todos los estados? Se han definido estados que no tengan caminos que lleven a ellos? A todos los estados les llega al menos una flecha. típicamente es una señal. Una condición es un acontecimiento en el ambiente externo que el sistema es capaz de detectar. y luego metódicamente ir siguiendo un camino hasta el o los estados restantes. • Se puede comenzar por el estado inicial. Así que las acciones que se muestran en el DTE son respuestas regresadas al ambiente externo o bien cálculos cuyos resultados el sistema recuerda para poder responder a algún acontecimiento futuro. Las condiciones y acciones se muestran junto a la flecha que conecta dos estados relacionados. por el usuario con quien este trabajando. una interrupción o la llegada de un paquete de datos. etc. Luego. y las acciones a los flujos 2 . cualquier estado individual de un diagrama de mayor nivel puede convertirse en un estado inicial para un diagrama de nivel inferior que describe mas a fondo ese estado de mayor nivel. tratar de ponerlos todos en un mismo diagrama seria difícil. se pueden usar las particiones con los DTE. LA RELACION DEL DTE CON LOS DEMAS COMPONENTES DEL MODELO El DTE puede usarse por si solo como herramienta de modelado. pero no especifica el comportamiento del sistema ante condiciones inesperadas. Note que las condiciones en un DTE corresponden a los flujos de control entrantes en un DFD. y en general debiera. Tal como se usaron los niveles y las particiones en los DFD. En este caso. Como parte del cambio de estado. los cambios de estado) entre las cajas. normalmente el sistema hará una o mas acciones. El enfoque quedara determinado. puede. proseguir a los terciarios. se pueden explorar todas las conexiones con significado (es decir. y el o los estados finales en un diagrama de nivel inferior corresponden a las condiciones de salida en el estado asociado de nivel superior. • Se puede salir de todos los estados? Hay una flecha que sale de todos los estados. CONSTRUCCION DEL DTE Hay dos enfoques para construir un DTE: • Se puede comenzar por identificar todos los posibles estados del sistema y representar cada uno como una caja separada en una hoja de papel. sino son estados finales? • En cada estado el sistema responde adecuadamente a todas las condiciones posibles? Este es el error mas común : el analista identifica los cambios de estado cuando ocurren condiciones normales. si no imposible.

el modelo es innecesario y redundante. • Cada EP debe tener una burbuja de nivel inferior asociada en el DFD. dicho dato o almacén es un fantasma. Si no aparece. cualesquiera errores que existan tarde o temprano se detectaran. BALANCEO DEL DFD Y LA ESPECIFICACION PROCESO • Cada burbuja del DFD debe asociarse con un DFD de nivel inferior o con una EP. Para las burbujas de control en un DFD existe correspondencia entre las burbujas y los DTE. Si se representa el sistema con un diagrama de una burbuja. Estos comentarios se aplican específicamente a las burbujas de proceso. es fácil desarrollar diversas interpretaciones diferentes e inconsistentes de esa misma realidad. Los errores mas comunes son : definiciones faltantes. puede usarse el DTE para mostrar la secuencia de actividades en el sistema. Como herramienta de modelado de alto nivel. podría pensarse que es altamente improbable que existan especificaciones de proceso vagabundas. • Las entradas y salidas deben coincidir. además de modelar las características detalladas del sistema en un diccionario de datos y un conjunto de especificaciones de proceso. Si falta la definición en el DD. El DFD muestra flujos de entrada y salida para cada burbuja. Dado que la EP requiere de mucho trabajo. al igual que las conexiones con los almacenes. De una especificación estructurada en la cual todas las herramientas se han verificado entre si para asegurar su consistencia se dice que esta balanceada. • Cada dato y almacén que se define en el DD debe aparecer en alguna parte del DFD. el DER se enfoca en las relaciones entre datos y el DTE. BALANCEO DE MODELOS Cada una de las herramientas del análisis. el DTE puede servir incluso como especificación de proceso para todo el sistema. o • Es un termino local.de control de salida en el DFD. definido explícitamente en la especificación de procesos. pero no ambos. Existe otra razón para enfocarse en la consistencia entre modelos. BALANCEO DE LAS EP CON EL DFD Y EL DD Cada referencia de un dato en la especificación de proceso debe satisfacer : • Coincide con el nombre de un flujo de datos o almacén conectado a la burbuja descrita por la especificación de proceso. en las características de tiempo. Se desea que el DFD enfoque la atención del lector en las funciones del sistema. Cuando se modelan tres aspectos distintos de un sistema. pero se vuelven cada vez mas difíciles y caros cuando mas avanza el proyecto. BALANCEO DEL DFD Y EL DD • Cada flujo de datos y cada almacén de datos deben estar definidos en el DD. el flujo o almacén se considera indefinido. BALANCEO DEL DD CON EL DFD Y EP 3 . o • Aparece como componente en una entrada del DD para un flujo o almacén conectado con la burbuja. se enfoca en un aspecto critico del sistema a modelar. la misma realidad se describe de dos manera distintas y contradictorias. Esto debe ser evidente en la EP de proceso también. Si ambas existen.

BALANCEO DEL DFD Y EL DTE • Cada burbuja de control del DFD se asocia con un DTE como su especificación de proceso. las siguientes opciones han aumentado la importancia de las cuestiones de implantación : • Los usuarios finales a menudo tienen la oportunidad de usar PC como parte de una red distribuida de 4 . Un DD complejo y exhaustivo de una implantación existente de un sistema puede contener algunos datos que ya no se usan. SO. Esta información involucra cuestiones de implantación. dentro de las restricciones globales del proyecto en tiempo. c) el comportamiento esencial dependiente del tiempo que el sistema debe exhibir para manejar señales e interrupciones del ambiente exterior. • Cada condición del DTE debe corresponder con un flujo de datos de entrada del DFD asociado. El asunto de implantación mas obvio de interés para el usuario es la frontera de automatización. Cada flujo de control de salida del DFD debe asociarse con una acción apropiada del DTE asociado. Luego el formato de las entradas y salidas del sistema también son de interés para el usuario. Cada flujo de control que entra en la burbuja de control debe asociarse con una condición apropiada en el DTE. MODELO DE IMPLANTACION DEL USUARIO El modelo esencial describe: a) la política. y algún proceso del DFD usa (o lee) valores de cada dato. Esta información seria suficiente para los diseñadores y programadores. • Las entradas del DD deben aplicarse tanto al modelo de DFD como al de DER. o lógica. dinero y recursos humanos. que contenga elementos que no se ocupen hoy pero que pudieran ser útiles en un futuro. • Cada acción del DTE debe corresponder con un flujo de control de salida del DFD. También se podría argumentar que el DD se planee de forma tal que permita una expansión futura. En la actualidad. Sin embargo. se les daría el modelo esencial y se les permitiría escoger el mejor hardware. u otro DD. b) el contenido esencial de los datos que almacena el sistema. sistema de administración de BD y lenguaje de programación. un DFD. esencial de las funciones que se requiere realizar. • Alguna burbuja del DFD define valores para cada dato asignado a cada instancia de cada tipo de objeto. • Los nombres de objetos en el DER y los nombres de almacenes de datos en el DFD deben coincidir.• Cada entrada del DD debe tener referencia en una especificación de proceso. cuales partes del modelo serán manuales y cuales implementadas por la computadora. Las reglas son que el conjunto combinado de todas las especificaciones de proceso deben. Esto supone. es decir. que se esta modelando el comportamiento esencial de un sistema. De manera similar. una relación o una combinación de un tipo de objeto y una relación ( una entidad asociativa) en el DER. BALANCEO DEL DER CON EL DFD Y LAS EP • Cada almacén del DFD debe corresponder con un tipo de objeto. • Hay reglas que aseguran que el DER sea consistente con la porción de la especificación de proceso del modelo orientado a las funciones. el usuario insistirá en proporcionar alguna información adicional. cada DTE en el modelo global del sistema debe asociarse con un proceso de control en el DFD. y que se mueven a través de el. en su totalidad : • Crear y eliminar instancias de cada tipo de objeto y relación que se muestra en el DER.

es la especificación de la interfaz humana. Hay que ser consistente. radiación. DETERMINACION DE LA INTERFAZ HUMANA Probablemente la actividad que consume mas tiempo. • Los usuarios finales tienen cada vez mas oportunidades de escribir sus propios programas en lenguajes de cuarta generación. impresora. podría ser necesario aumentar el modelo esencial para mostrar como se enciende y apaga el sistema. lectoras magnéticas). y que mas interese al usuario. plotter) • Formatos de entrada y salida : una vez escogidos los dispositivos E/S. • Otra opción es la selección y compra de un paquete de software. • pedido de información en secuencia lógica. scanner. Una vez escogida la frontera de automatización pudiera ser importante considerar algunas cuestiones ambientales: nivel de ruido. comodidad de la terminal de vídeo y espacio de trabajo. las pantallas deben ser iguales. sintetizador de voz. 5 . flujos de datos y almacenes que muestren las actividades de inicio y apagado del sistema.computadoras. sobre todo si el sistema que se desarrolla es reemplazo de uno actual y no se cambia la frontera de automatización. Esto usualmente requerirá de por lo menos una decisión preliminar acerca de cuales partes del modelo esencial se automatizaran y cuales serán manuales. Esto involucra cuatro asuntos : • Dispositivos de Entrada y Salida : la elección de los dispositivos de E/S puede estar determinada por los terminadores fuera del sistema. Para ello las siguientes reglas sirven de ayuda : • pedido de entradas y producción de salidas en forma consistente. salida ( monitor. • El usuario y el analista podrían hacer un prototipo de porciones del sistema utilizando un lenguaje de cuarta generación o un paquete de generación de aplicaciones. No es labor ni del analista ni del equipo de implantación escoger la frontera de automatización. etc. • El usuario podría escoger un sistema totalmente automatizado. DETERMINACION DE LA FRONTERA DE AUTOMATIZACION Que funciones y que datos se manejaran manualmente y cuales automatizados? Hay tres casos extremos: • Al usuario pudiera no importarle donde esta la frontera de automatización. Basándose en interacciones entre el analista. podría requerirse incluir procesos adicionales (burbujas de DFD). Finalmente. • El usuario podría optar por un sistema completamente manual. Crear una interfaz amigable con el usuario. sino que es responsabilidad del usuario. Así . Los dispositivos que se usan típicamente son :Entrada (teclado. una vez elegida la frontera de automatización . el siguiente paso es determinar los formatos de las E/S del sistema. Una situación mas común. reconocedor de voz. cuales partes serán manuales y cuales automatizadas. mouse. En aquellas ocasiones en que el usuario solo quiere reorganizar la forma en la que se desempeñan actualmente las actividades en la organización. Esto es la forma en que va a ser introducida o mostrada la información. Hay que definir que partes se harán en cuarta generación y cuales en tercera. el usuario y el equipo de implantación se llegara a un compromiso. lectores ópticos. iluminación. El modelo de implantación del usuario a veces se describe como la zona fantasma entre el análisis y el diseño estructurado.

estas actividades de apoyo manual adicional se representaran por medio de nuevos procesos en el DFD del modelo de comportamiento. intermedias o menores dentro del articulo que se describe. en cuyo caso podrían existir requisitos legales para asegurar la integridad de las entradas. • permiso para cancelar parte o totalidad de la transacción • proporcionar un mecanismo de ayuda conveniente • distinguir entre sistemas guiados por menús y sistemas guiados por ordenes • desplegar mensajes al usuario cuando el sistema esta realizando un proceso largo • proporcionar alternativas por omisión para las entradas standard • aprovechar el color y el sonido pero no abusar. las primeras suelen imprimirse en hojas sencillas y son adecuadas en la mayoría de las situaciones. todas deben contener la siguiente información básica : a) Titulo. manual o a maquina. • distinguir entre edición de campos y edición de pantallas. b) Instrucciones. remitos. El usuario podría decidir que ciertas porciones del sistema automatizado estén bajo su propio control operacional. c) Cuerpo. Debe ser fácil de codificar y decodificar. el analista muchas veces debe especificar códigos. 6 . Debe ser útil para quienes lo manejan. • Operable. Dependiendo de la aplicación. • Preciso. Para poder controlar estas posibilidades de tecnología defectuosa se puede utilizar alguno de los siguientes métodos: • Entradas o salidas redundantes. que usa grupos de dígitos dentro del código para identificar clasificaciones mayores. Tenemos que preocuparnos por la posibilidad de la tecnología defectuosa en cuatro áreas principales: • Ingreso de datos al sistema • Realización de los cálculos. • Códigos de entrada y salida : como parte de la labor de especificar formatos de E/S. que significa suponer que la tecnología de implantación nunca se descompondrá y nunca cometerá un error. • Almacenamiento a largo plazo de los datos • Salida de datos del sistema. Un método de codificación debe ser. • Formato de salidas : aunque hay muchos estilos diferentes para las formas que pueden tomar las salidas. Una vez ingresados los datos existe la posibilidad remota de que la computadora funcione mal. el ejemplo mas común es la impresión de facturas con numeración predefinida. contienen información adicional que puede usarse para verificar que se haya ingresado correctamente el código. • edición y revisión de errores dependiente del usuario. • Expandible. Finalmente algunos códigos se autoverifican. • Con significado. Debe proporcionar espacio para entradas adicionales que pudieran requerirse. Es común utilizar el código de clasificación. etc. En la mayor parte de los casos. Debe ser breve pero describir adecuadamente al articulo.• hacer obvio el tipo de error y su ubicación. IDENTIFICACION DE LAS ACTIVIDADES DE APOYO MANUAL ADICIONAL En el modelo esencial se supone la existencia de una tecnología perfecta. • Conveniente. las segundas son mas complejas. Debe ser compatible con los métodos presentes y anticipados de proceso de datos. De ser posible debe indicar algunas de las características del articulo. Tal vez trabaje con datos financieros. se pueden diseñar formas individuales o de especialidad. Debe identificar al articulo especifico. salidas y archivos del sistema. • Conciso.

El usuario pudiera. Pero esto será difícil de lograr sin alguna declaración de restricciones operativas. • Problemas en el software existente: mejorar la calidad del software. • Altos costos de mantenimiento QUE SE ESPERA DE UNA CASE? Las herramientas CASE deberían cumplir las siguiente funciones: • Manejo de metodología de ingeniería de software a la medida de la organización. • Tiempo de respuesta a las diversas entradas. • Sistemas parametrizados de seguridad: sistemas ya establecidos que proponen normas de seguridad. etc. y herramientas de documentación. y las herramientas que sirven a varias fases del ciclo de vida. • Verificaciones secuenciales. SO. como herramientas de manejo de proyectos.• Tecnología de procesador redundante. por motivos racionales o irracionales. Las cuestiones típicas son: • Volumen de los datos. • Restricciones de seguridad. • Redundancia interna. y tiempo promedio necesario para la reparación para el sistema. especificar la marca de hardware que se usara. DTE. etc. es decir que sean 7 . Mayor velocidad a mayor volumen. lenguaje de programación y estrategia de diseño para implantar mejor los requerimientos. Tiempo que necesita el usuario para que se realicen las operaciones. • Restricciones de seguridad y confiabilidad. como se permite la utilización de los periféricos. El usuario puede especificar una variedad de restricciones enfocadas a minimizar el uso no autorizado del sistema. administración de la configuración. equipo de telecomunicaciones. • Restricciones políticas sobre modalidades de implantación. eso incluye notaciones gráficas y reglas de control. UNIDAD 2 : Herramientas CASE QUE ES UNA HERRAMIENTA CASE? Se consideran CASE a un conjunto de herramientas relacionadas que soportan todos los aspectos del ciclo de desarrollo del software. que el modelo esencial deliberadamente evita. como las herramientas de análisis y diseño. • Restricciones ambientales. Conjunto de herramientas que tratan de optimizar la tarea de trabajar con sistemas. generadores de código y herramientas de testing. los proveedores de telecomunicaciones que se usaran. • Manejo de gráficas para múltiples tipos de modelos (DFD. El usuario pudiera especificar un tiempo promedio entre fallas. DER. Los problemas por los que aparecieron las Herramientas CASE son: • Recursos insuficientes para desarrollar el nuevo software. el lenguaje de programación. • Virus : como se arman las redes. Tratar de mejorar la productividad.) • Módulos de revisión de errores para asegurar la precisión de esos modelos. ESPECIFICACION DE RESTRICCIONES OPERACIONALES El equipo de implantación tendrá que decidir la combinación de hardware. permisos posibles. • Controles por lote (Batch). incluyendo aquellas que soportan fases especificas del ciclo de vida.

• Comparación entre modelos diferentes. sino que es el resultado de las características especiales del SO sobre el que la herramienta trabaja. esta es la forma de integración mas baja. • Facilidades para que el administrador del proyecto efectúe el seguimiento del mismo. etc. • Creación de modelos de software para los datos y las líneas de código. Diseño. generación de programas. el control de las actividades y la comunicación. • Estadísticas de productividad y métrica de software. • Mejor coordinación entre los miembros del equipo de trabajo en grandes proyectos. Análisis. • Integración de presentación : se refiere a la definición de una interfase de usuario consistente entre las diferentes herramientas.completos e internamente consistentes. a todas las herramientas que automatizan el ciclo de vida del proyecto. CUANDO UNA HERRAMIENTA ES INTEGRADA? Identificamos cinco tipos de integración: • Integración de plataformas : se refiere a una herramienta con un conjunto común de servicios proporcionados por el ambiente operativo. • CASE de bajo nivel : son productos basados en el uso de la propia maquina a la que se destina la aplicación y están orientados a : generación de bases de datos. • Acceso bajo una red. Las organización intentan lograr desde hace tiempo una integración en los formularios para usuarios y desarrolladores. En algunos aspectos. • Simulación y pruebas automatizadas. porque la integración no es el objetivo directo de la herramienta. • Generación automática de líneas de código. documentos. el ambiente UNIX. Permiten describir los aspectos fundamentales de un sistema. comprobar la consistencia y crear referencias cruzadas de toda la información concerniente al sistema. • Generación automática de la documentación del sistema. tanto en la misma fase o entre diferentes fases del ciclo de vida para comprobar y analizar los errores. Reduce el costo y tiempo de entrenamiento. a fin de conseguir un vocabulario único y un contenido de menús similar en todas sus interfases gráficas. obteniéndose beneficios considerables en la documentación gráfica y en la integración de funciones y relaciones. datos) entre herramientas y entre etapas. • Un aumento en el control de los proyectos que se consigue mediante una mejor planificación. el control de calidad. Estandarizar las interfases de usuario aumenta la flexibilidad y simplifica la elección de las herramientas por parte de los usuarios. Al estar asociados a una plataforma definida ofrecen mejor capacidad de elección. • La reducción del trabajo requerido para actividades de soporte como la generación de documentos. • Interfaz a diccionarios y bases de datos de otras herramientas CASE. • Control sobre las actualizaciones desde los distintos puestos de trabajo. y. • CASE integrado : comprende todos los elementos de CASE superior e inferior. Por ejemplo. CUANTOS TIPOS DE CASE HAY? Existen tres tipos de productos CASE: • CASE de alto nivel : son productos que cubren las primeras fases del ciclo de vida: Planificación. soporte de pruebas. • Integración de control : se refiere a la habilidad de las herramientas para informar a otras herramientas 8 . • Re ingeniería para sistemas ya existentes. programas. por lo tanto debería cubrir todas las fases del ciclo de vida de forma totalmente compatible y coherente. Los beneficios del CASE integrado incluyen: • La transferencia fluida de información (modelos.

Un entorno integrado debe: • Suministrar un mecanismo que permita compartir la información a todas las herramientas. • Un sistema operativo multitarea. Que en el momento que se defina una acción en una herramienta de análisis y diseño. • Una arquitectura de red. fueron diseñadas para procesarse en un entorno dedicado. Las herramientas se deben diseñar con una estructura de datos y semántica compatibles para que intercambien datos sin necesidad de traducción. • Proporcionar un control de versiones y una gestión global de toda la información del sistema. Son fáciles de implementar pero no permiten una integración efectiva de las relaciones entre datos. para manejar los cambios en la información • Un control de herramientas. • Permitir el acceso directo. Las formas de transferencia son: 1) las herramientas de forma individual permitan un intercambio de interfases y formato. Las organizaciones tienen hace tiempo una forma rudimentaria de integración de control usando scripts que invocan programas según el resultado de distintas condiciones. ya que esta es la fase final de integración. 2) tener una base común. con filtros que extraen información y la almacena en bases intermedias. • Realizar mediciones técnicas y de gestión para mejorar el proceso y el producto. para proporcionar una vía consistente entre el usuario y las herramientas contenidas en el entorno. lo que permite el trabajo conjunto de varias herramientas. En resumen. para coordinar su utilización • Una interfaz de usuario avanzada. control y datos para permitir un alto nivel de integración de procesos. QUE SOFTWARE DE BASE USA UNA CASE INTEGRADA? Son necesarios : • Un repositorio. La total funcionalidad del repositorio proporciona la capacidad de mantener el contenido semántico de los objetos. como un entorno CASE es una red distribuida. los mecanismos básicos deben poder funcionar en red.de sus acciones y recibir requerimientos de otras herramientas. • Integración de procesos : se refiere a la automatización de la secuencia de actividades que la organización ha definido como componentes del ciclo de vida del desarrollo del software. que almacena información • Un sistema de manejo de objetos. • Reflejar los cambios de un elemento de información en todos los elementos relacionados. • Permitir el acceso simultaneo a herramientas. se notifique o se acceda a las otras herramientas afectadas. 3) que haya una BD centralizada donde todas las herramientas guarden su información. A esto se le debe añadir los servicios de portabilidad para que todos los bloques de la arquitectura CASE se unan adecuadamente. QUE FUNCIONES DEBE CUMPLIR UN AMBIENTE INTEGRADO? Las herramientas CASE integradas. Dependen del mantenimiento de la integración punto a punto y generan redundancia entre la base central y la auxiliar. la red de distribución 9 . a todas las herramientas del entorno. el software de base mas importante es la Base de datos o repositorio CASE. de manera de poder trabajar con varias herramientas simultáneamente. • Integración de datos : se refiere a la transferencia de información entre herramientas y al establecimiento de las relaciones entre datos utilizando diferentes herramientas. Se usan mecanismos de integración de presentación. • Presentar la misma visión consistente de la interfaz hombre−maquina en todas las herramientas. Plataformas multitarea. • Permitir la comunicación entre los integrantes del equipo a través de la información que generan. no secuencial.

calendario. • Información compartida • Seguimiento de la metodología • Almacenamiento de estructuras sofisticadas de datos. DATOS QUE SE ALMACENAN EN UN REPOSITORIO CASE : • El problema a resolver • Información sobre el ámbito del problema • Los modelos que solucionan el problema • Las reglas e instrucciones relacionadas con la metodología • La información concerniente a la gestión del proyecto (recursos. Los datos que genera pueden ser: • Definiciones de objetos ( de que tipo son. REPOSITORIO CASE: es el conjunto de mecanismos y estructuras de datos que permite el almacenamiento en forma inteligente de toda la información que concierne al sistema en desarrollo.documentos. datos sobre sus propios datos.) SERVICIOS DE UN REPOSITORIO CASE Los servicios que debe proporcionar el gestor de BD de un buen repositorio CASE. es decir.etc. los normales de cualquier sistema de gestión de base de datos y los específicos del entorno CASE. presupuesto. son de dos tipos. por ej: las distintas formas validas de dibujar y balancear un DFD. b) Datos − Datos : el modelo de datos debe permitir establecer una gran diversidad de relaciones entre los datos que los componen. • Reglas de diseño aplicadas a su propio software. en este caso modelos de sistemas de información. CAPACIDAD DE CONTROL : permite que cada herramienta pueda notificar al usuario la ocurrencia de 10 . archivos). Los servicios normales son: • Almacenamiento no redundante • Acceso de alto nivel: un único mecanismo de acceso para todas las herramientas. METAMODELO: un metamodelo es un modelo de modelos. • Soporte multiusuario Las funciones especiales son: • Integridad de datos: a)Datos − Herramientas: el modelo de datos debe ser accedido por todas las herramientas del entorno I−CASE. es un modelo que define los pasos a seguir para construir otro modelo. METADATOS: los metadatos son la información que la herramienta CASE genera automáticamente acerca de los datos con los que trabaja. Por ej: un proceso en un DFD. que representación gráfica tienen. con que otros objetos se relacionan) • Relaciones y dependencias entre objetos de distinto nivel logico. Es el patrón que rige la generación y almacenamiento de la información del proyecto.de datos asociada y el sistema operativo multitarea.(diagramas. • Independencia de los datos • Control de transacciones • Seguridad • Consulta de los datos y gestión de informes • Apertura: mecanismo sencillo para importar/exportar datos.

Tiene los siguientes cinco aspectos: 11 . pues es un cambio cultural.sucesos significativos. una necesidad. que la herramienta me permita ver como se refleja en mi sistema. • Muchos sectores de software están tan atrasados en el cumplimiento de sus trabajos que no disponen de tiempo para pensar en nuevas políticas de desarrollo. TRAYECTORIAS DE AUDITORIA : seguimiento de las tareas efectuadas. o simplemente no resultan atractivas para las empresas. no solo técnico • Es dificil pasar de un análisis realizado en solitario a la realización del análisis en colaboración con los usuarios o con un equipo. es una respuesta a las fallas del pasado. Depende de la gestión de enlaces y realiza el seguimiento entre las distintas fases del proyecto. Las razones pueden ser muchas. porque y quien realizo cada tarea. • Mejora de la calidad del producto de software • Aplicaciones mas productivas para la empresa. Que puedo autocontrolarse. • Falsas expectativas creadas por los vendedores que originan desengaños y frustraciones. SEGUIMIENTO DE LOS REQUISITOS : dado un requisito. UNIDAD III: INTRODUCCION El diseño estructurado es un acercamiento disciplinado al diseño de sistemas computarizados. cuando en realidad el resultado se ve a mediano y largo plazo. entre ellas: • Dificultades para adaptarse al cambio. Puede regenerar automáticamente el código destino. Es decir. diseño y programación • Mayor independencia del análisis y diseño con respecto a un entorno en particular. Muchas veces las herramientas CASE no cumplen los objetivos esperados. Y también saber quien realizo tal requisito. Controla que la información sea integra. QUE VENTAJAS Y DESVENTAJAS TIENEN LAS CASE? Se pueden llegar a obtener las siguientes ventajas: • Menor tiempo de mantenimiento • Mayor independencia entre análisis. GESTION DE LA CONFIGURACION : configurar lo que la herramienta CASE me brinda. Que relacione a todas las herramientas del modelo. • A veces se cree que las nuevas herramientas son soluciones mágicas. y solicitarle que solucione ese problema. GESTION DE ENLACES : es la capacidad de identificar y evaluar los efectos de un cambio. • Trabajar con tareas de mayor nivel que la codificación pura. Obtener información de cuando. • Muchas empresas no cumplen o no tienen practicas de gestión de software organizadas. Es la actividad de desarrollar soluciones computarizadas flexibles y fáciles de mantener para un conjunto de requerimientos de sistemas bien definidos. que tenga la capacidad de generar información y efectuar controles sobre si misma. sin las cuales la automatización del proceso de análisis y diseño suele resultar ineficaz o imposible.

entonces el analista le presentara al diseñador una especificación estructurada / funcional. A su vez cada unidad esta compuesta de un grupo de unidades mas pequeñas. • Busca eliminar la complejidad de grandes sistemas particionandolos en cajas negras y organizándolas en jerarquías : las características de una caja negra son: a) se conocen las entradas esperadas. El diseño estructurado utiliza las cartas de estructura.• Usa la definición del problema como guía para la definición de la solución: la razón de esta filosofía es que los diseñadores de sistemas tradicionalmente eligen una forma preconcebida de solución y tratan de forzar al problema para que se adecue a esa forma. que es la salida del análisis y la entrada para el diseño.DER. para que las cajas sean independientes entre si. La idea de jerarquía. • La partición me asegura que las conexiones entre cajas es lo mas simple posible. b) se conocen las salidas que deben darse. c) se conoce la función que cumple. Las ventajas de utilizar cajas negras son: • Las cajas negras son fáciles de construir • Estos sistemas son fáciles de testear • Los sistemas son fáciles de corregir • Los sistemas pueden entenderse fácilmente • Pueden modificarse fácilmente El primer paso para controlar la complejidad es particionar al sistema en cajas negras. 12 .etc). proviene de la idea de que todos los sistemas en el universo se encuentra organizados en jerarquías de unidades estables. Se encuentran expresadas por medio de herramientas del análisis estructurado (DFD. de esta forma se logran cuatro metas: • cada caja negra debe resolver una pieza bien definida del problema • el sistema debe particionarse de manera que cada caja negra se fácil de entender. • Ofrece un conjunto de criterios para evaluar la calidad de una solución de diseño. • Ofrece un conjunto de estrategias para desarrollar una solución de diseño de un problema bien definido. Las especificaciones funcionales nos permiten conocer las funciones que van a resolver el problema. las especificaciones de módulos y el pseudocodigo. COMPARACIONES ENTRE ANALISIS ESTRUCTURADO Y DISEÑO ESTRUCTURADO Análisis Estructurado : • Determina que debe hacer el sistema para satisfacer los requerimientos del usuario. Esto es especialmente cierto cuando el Análisis estructurado lo precede. • Utiliza herramientas.DD. especialmente gráficas para hacer los sistemas mas entendibles : si el análisis estructurado precede al diseño estructurado. El diseño estructurado se resiste a tomar decisiones en como resolver el problema hasta que el que no este determinado. d) no se necesita saber como realiza la función. • La partición debe hacerse de manera que cada conexión entre cajas existe solo porque el problema así lo requiere.

Las especificaciones de diseño es traducir las especificaciones funcionales en como resolver el problema. • Planifica las tareas lógicas para especificar las funciones de software y/o hardware. • Genera el esquema de la BD física. OBJETIVOS DEL DISEÑO En resumen los objetivos del diseño estructurado son: • Reveer los componentes de las especificaciones funcionales del Análisis estructurado • Proporcionar pasos para verificar esas especificaciones • Introducir paso a paso los procedimientos para hacer la transición del análisis al diseño • Comenzar la fase de diseño físico y las técnicas estructuradas. • Proporciona especificaciones de diseño fáciles de entender. • Estudio de factibilidad : sirve para 1) identificar el ámbito del sistema a estudiar. Generalmente. tecnología perfecta. • Proporciona un lenguaje común y claro a usuarios. QUE NO ES DISEÑO ESTRUCTURADO • El diseño estructurado no es programación estructurada. • El DE no es un medio para una mejor especificación del problema. consistente y fácil. Modelo esencial. Fase Física. • El DE no es programación modular o diseño top−down • No es un pasaje a la utopía. • Aplica restricciones al modelo logico. Frontera de Automatización. los problemas y 13 . las etapas de un clásico sistema computarizado son: • Problema o reconocimiento de la oportunidad : la idea de desarrollar un nuevo sistema ocurre cuando el usuario reconoce que tiene un problema en la forma en que esta llevando su negocio o identifica la oportunidad de mejorarlo. LOS BASICOS DEL DISEÑO El diseño es el puente entre el análisis y la implementación. • Diseño de interfase de usuario : diseñar las E/S del sistema de manera que su manejo se aclaro. Diseño Estructurado: • Determina como el sistema hará las funciones. solo para el ambiente técnico.• Define los datos que el sistema utiliza y produce. Modelo de Procesador. Fase Conceptual. • Ofrece una perspectiva lógica sin las restricciones de la implementación física.analistas y diseñadores. FASES DEL DISEÑO FISICO • Diseño de datos : construir estructuras de datos organizadas para recuperar los datos eficientemente (BD) • Diseño de procesos : describir el conjunto de programas cuyos módulos realizaran la aplicación requerida. El diseño estructurado ayuda a producir programas con una razonable relación entre que debe hacer el sistema y como lo debe hacer.

Cada hijo tiene un solo padre. función. La función es lo que hace para producir las salidas deseadas en base a las entradas recibidas. Pero lo mas importante es la especificación funcional. La salida del análisis será : los costos. se codifica. conexiones y comunicación entre módulos. 14 . Y ayuda a la documentación y el mantenimiento.oportunidades no explotadas del sistema actual. Todo lo que sucede después es mantenimiento del sistema. su nombre y la posibilidad de invocar y ser invocado por otros módulos. requerimientos de conversión. es un modulo al que no hay que escribir porque ya existe. organización y comunicación. son datos que pertenecen al área de trabajo del modulo y solo el hace referencia a ellos. objetivos mayores del sistema nuevo. 3) obtener las opiniones del usuario y administradores y las modificaciones sobre lo anterior. El nombre establece su función. El modulo también tiene como atributos. que establece los requerimientos funcionales y de datos para el nuevo sistema. • Análisis : la información del estudio anterior será el comienzo de un análisis completo. MODULO Un modulo se define como una colección de sentencias ejecutables con cuatro atributos básicos : entradas/salidas. planes de factibilidad para sistema. En el DE solo nos interesa ver la vista externa del modulo. Acompañando a cada CE debe hacer una descripción de cada modulo y cada dato que aparece en ella. Permite una visión global del sistema. Las entradas/salidas son la información que el modulo requiere y provee. Los datos internos. los módulos se relacionan por medio de flechas jerárquicas. beneficios y requerimientos de recursos. El mecanismo es el código logico o procedural con el que el modulo lleva a cabo la función. mecanismo y datos internos. • Mantenimiento : una vez que el sistema pasa las pruebas. Cada carta de estructura es un programa. da ciertas ventajas a la programación como los nombres de los módulos y de los datos que interactuan entre ellos. • Implementaron : lo que se produjo durante el diseño. 2) estimar aproximadamente costos. La carta de estructura. sirve como especificación para que los programadores desarrollen el código. Gráfica la partición del sistema en módulos mostrando su jerarquía. esta listo para operar. requerimientos de configuraciones físicas. ventajas y desventajas de cada solución posible. se representa con líneas verticales paralelas a los costados. Se representa como una caja rectangular con su nombre adentro. • Pruebas : se prueban partes del sistema. y el sistema completo. • Diseño : toma la especificación funcional / estructurada junto con la definición de configuración física y desarrolla un diseño detallado por medio de un conjunto de actividades de diseño y de criterios par aun diseño de calidad. Sus componentes son : módulos. sin los detalles de codificación y lógica. cada padre puede tener varios hijos. Utiliza el principio de cajas negras. especificación de diseño. HERRAMIENTAS DEL DISEÑO ESTRUCTURADO CARTA DE ESTRUCTURA Es la herramienta mas usada en el DE. Un modulo predefinido.

que salidas se esperan. crear nuevas funciones • Decidir que secuencia de funciones se debe seguir • Hacer el siguiente nivel de funciones subordinadas a la función original • Nombrar cada función con un nombre que la describa claramente • Continuar el proceso hasta que el menor nivel de funciones contenga una sola función. Las señales comunican información sobre alguno de los datos tratados. COMUNICACIONES Se usan dos tipos de flecha. Se expresan cuales son las entradas que se proveerán. Es un lenguaje informal similar al lenguaje estructurado (análisis estructurado). • Especificación por pseudocodigo : el pseudocodigo es una forma mas detallada de describir el modulo. ESPECIFICACIONES DE MODULOS Hay dos métodos para realizar las especificaciones de módulos: • Especificación de la interfaz del modulo : este método permite definir la función del modulo sin entrar en excesivos detalles. Una señal es generalmente testeada. una salida.CONEXIONES Un sistema es un conjunto de módulos organizados en una jerarquía. El símbolo que une cada modulo es una flecha indicando la jerarquía. ESTRATEGIA DE DISEÑO • Crear una primera CE sobre el 1° nivel del diagrama de funciones • Subdividir esa 1° CE por sus mayores funciones • Seleccionar la técnica de análisis de transacciones o la técnica de análisis de transformaciones para producir una CE mas detallada • Refinar la CE detallada según los criterios del diseño estructurado. con la dirección de la flecha marcando que modulo llama a otro. Como se encuentra mas cercano al código. La diferencia entre los dos flujos es: • Los datos son procesados. DESCOMPOSICION • Ampliar la CE escribiendo y evaluando las especificaciones de cada función. • Separa las funciones. Las señales no. Ya que es mas detallado que el método anterior hay menos margen de error cuando el programador lo traduzca a código. hay menos trabajo para el programador. Datos Señales La dirección de la flecha muestra que modulo manda la información. la flecha muestra una llamada normal a subrutina. cooperando y comunicándose para lograr un objetivo común. y la función que se requiere que el modulo lleva a cabo. • Los datos se relacionan con el problema mismo. La función debe estar expresada en una simple sentencia que relacione las entradas y las salidas. En otras palabras. Transformación : Muchas entradas . PASOS DE ANALISIS DE TRANSFORMACIONES: 15 .

• Remueva la flecha de los flujos de datos (sacarle la punta) • Reemplace procesos por funciones. Modulo Recolector de Datos : Coordina la entrada de todos los datos que reciben las funciones básicas del sistema. Control despacho : controla las transacciones para activar las rutinas de procesos necesarios. • Unir las marcas en un circulo • Convertir el DFD en una 1° CE: • Coloque en el mas alto nivel la transf. datos Modulo transfor Modulo salidas Acción 1 Acción 2 16 . Marcar el flujo de datos que representa la entrada en su forma mas esencial ( el mismo transformado). Modulo Control ModuloRec. muchas salidas. Modulo transformaciones : coordina y ejecuta las funciones básicas del sistema sobre los datos recibidos. Marcar el flujo de datos que representa la salida en su forma mas esencial. Central y subordínele todos los otros procesos. Modelo de salida : realiza las transformaciones que requieren los datos de salida.: DO CASE PASOS PARA EL ANALISIS DE TRANSACCIONES Función control transacciones: responsable por la coordinación de todos los procesos de transacciones. Control recepción : controla los detalles de las transacciones de recepción.• Construir el DFD de un tipo transformación • Buscar las transformaciones centrales • Convertir el DFD en una 1° CE Modulo Control: Controla las funciones básicas del Sistema. • Agregar funciones de lectura y grabación. Ej. • Seguir cada flujo de entrada desde el exterior del DFD hacia el medio. • Seguir cada flujo de salida desde el exterior hacia el medio. Verifica que lo que ingrese este dentro de los parámetros establecidos. • Agregar las flechas representando las llamadas entre módulos siguiendo la dirección del flujo de datos. Transacciones : una entrada.

Acción 3 Control Despacho Control Recepción Control Transacción 17 .