analisis diseño sistemas

Anuncio
Apunte de Cátedra
ANALISIS
Y
DISEÑO
DE
SISTEMAS
Lic. Sa ndra Ca sa s
Analista de Sistemas
Unidad Académica Río Gallegos
Universidad Nacional de la Patagonia Austral
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
CONCEPTOS BASICOS
Sistema
♦ Es un conjunto ordenado de componentes o elementos interrelacionados, interdependientes e
interactuantes que tienen por finalidad el logro de objetivos determinados.
♦ Es un conjunto de elementos que interaccionan entre sí, orientados a la consecución de un objetivo
común. Un sistema esta situado en un entorno o ambiente con el que interactua, recibe entradas y
produce salidas. Un sistema puede formar parte de otro más general, que sería su entorno, y/o estar
formado por otros sistemas, que en este caso tendrían a él como entorno común denominándose
subsistemas.
♦ Sistema es un conjunto de entidades que se relacionan e interactúan, en un contexto dado, en post
de un objetivo final predefinido.
Análisis de la definición de sistemas
a) Entidades – Componentes
Las entidades o componentes de un sistema son aquellas unidades que, por sus características y
relaciones, determinan la estructura y la conducta del sistema.
Las componentes de un sistema tienen características asociadas a las que denominaremos atributos.
Los atributos pueden asumir estados variables. Los estados variables pueden ser discretos o continuos.
Un atributo tiene un estado variable continuo cuando el valor que puede asumir en cada observación es
uno cualquiera de los valores existentes entre una cota máxima y mínima conocida de antemano. Un
atributo tiene un estado variable discreto cuando el valor que puede asumir en cada observación es uno
cualquiera de un conjunto preestablecido.
Por ejemplo a la entidad persona se le puede asociar los atributos edad y estado civil. Edad es un
atributo variable continuo ya que puede asumir un valor entre 0 y 99, en cambio el atributo estado civil
es discreto puesto que puede asumir uno de los siguientes valores conocidos previamente: casado,
soltero, divorciado o viudo.
Las componentes de un sistema pueden ser tangibles como una maquinaria, una persona, un edificio o
unidades intangibles como los costos, la rentabilidad, etc.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
1
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
La cantidad de componentes que posea un sistema puede ser desde unas pocas a miles de ellas,
según sea el sistema que se esté estudiando.
La idea de subsistema surge de la inclusión de componentes complejas, que por su comportamiento y
estructura, son sistemas en sí mismos.
b) Relaciones
Cada entidad transforma los recursos (materiales – humanos – financieros y/o de información) para el
logro de los objetivos objeto de su existencia.
Definimos relaciones a los medios por los cuales se transportan los recursos necesarios para el
funcionamiento de cada entidad.
Desde el punto de vista de la ubicación de las entidades productoras o receptoras de las relaciones, las
mismas pueden ser internas o externas.
CONTEXTO
Compon.
3
Entidad
2
CONTEXTO
Entidad
3
retroalim.
Compon.
1
Compon.
2
Entidad
1
SISTEMA
Compon.
4
Relación Externa
Relación Interna
Una relación es interna cuando la misma se produce entre dos componentes que pertenecen al sistema.
Y es externa cuando esta se produce entre una componente perteneciente al sistema y una que
pertenece al contexto. Además, según el punto de referencia, las relaciones tienen una dirección
determinada. Dado un punto de transformación (una entidad) son relaciones de entradas aquellas que
llegan o proveen de recursos al mismo. Y para ese mismo punto de transformación son relaciones de
salida aquellas que parten con recursos hacia otro centro de transformación (otra entidad).
El conjunto de todas las entidades y sus relaciones
definen la estructura de un sistema dado.
Un componente de un sistema puede ser simple o compleja.
La cantidad de relaciones que se pueden definir entre dos entidades es un número variable.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
2
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
La cantidad de atributos posibles a definir para cada componente depende de las características del
estudio.
c) Medio ambiente y Contexto
El medio ambiente es el conjunto de entidades (sistemas) donde se encuentra inmerso el sistema objeto
de estudio y se relaciona con el mismo indirectamente. El contexto es la parte del medio ambiente que
se relaciona e interactúa directamente con el sistema en cuestión.
El contexto es un suprasistema donde el sistema que se está estudiando es una componente mas, esto
quiere decir que existen otros sistemas que influyen y son influidos por el objeto de estudio.
No siempre es claro el límite o frontera del sistema con su contexto ya que por su naturaleza dinámica
hace que crezcan (positiva o negativamente) originando variaciones constantes en ellas, por esto las
fronteras no deben ser establecidas como algo rígido sino variable en el tiempo.
Un parámetro muy utilizado para fijar el limite es la idea de control sobre las componentes, es decir,
determinar que componentes puede controlar el sistema y cuáles no. Este control se refiere a la
posibilidad de modificar tanto su estructura como su conducta, cuando por ejemplo sean necesarias
para la consecución de los objetivos del sistema dado.
Durante el estudio de un sistema dado, encontraremos que existen componentes que o se pueden
modificar (no se pueden controlar) a las que se llaman componentes externas y que existen además
otras componentes a las cuales si se pueden variar su estructura o comportamiento (si se pueden
controlar) a las cuales se denominan componentes internas. Ambas componentes tienen que ver con el
logro de los objetivos planteados por el sistema.
Ejemplo: un sistema de COMERCIALIZACION esta inserto en un contexto de MERCADO donde
interactúan otros sistemas como la COMPETENCIA y el CONSUMIDOR. Pero este MERCADO esta
inserto en la ECONOMIA NACIONAL. Para el sistema de COMERCIALIZACION la ECONOMIA
NACIONAL es el medio ambiente donde se halla inmerso el contexto llamado MERCADO.
ECONOMIA NACIONAL
MERCADO
CP: Competidores
CP
CS
CM: Comercialización
CS: Consumdores
V
C: Compras
V: Ventas
C
CM
d) Entradas y Salidas
El sistema interactúa con el contexto, de esta interacción se producen las entradas del contexto
(energía, materias primas, dinero, información, etc.) y las salidas (productos, etc.) hacia este. Este
intercambio se hace imprescindible por dos razones primordiales, la primera es para que el sistema
pueda cumplimentar con sus objetivos debe importar del contexto los recursos necesarios y la segunda
razón se debe a que la exportación hacia el contexto le brinda los recursos necesarios para
autorganizarse, automantenerse y autocontrolarse.
Existen, en los sistemas, determinados controles que se realizan sobre una porción de las salidas del
sistema, dichos controles generan una especie de entradas que producen acciones sobre el mismo
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
3
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
sistema generando determinadas actividades. A este proceso se lo denomina RETROALIMENTACION
y tienen como objetivo mantener el equilibrio del sistema.
e) Objetivos
Todo sistema para mantenerse en equilibrio debe plantearse metas u objetivos, pero estos no deben ser
vistos como algo estático ya que varían con la dinamicidad del sistema. El sistema para mantenerse en
equilibrio no solo tiene que plantearse objetivos sino además debe controlar el cumplimiento de los
mismos.
Ejemplos: son sistemas una escuela, un hospital, un banco, una industria, un club, es decir cualquier
organización. Pero también son sistemas un hombre, un auto, una computadora, una fami lia, un
bosque, un plan económico, un programa de computadoras, el universo, un país, etc.
Clasificación de sistemas
a) Por su naturaleza:
• Naturales: sistemas creados en los que el hombre no interviene en su creación.
• Artificiales: sistemas creados por el hombre.
b) Por su relación con el Medio Ambiente:
• Abierto: sistemas que interactúan con el contexto, intercambiando elementos, sin esta interacción
no podrían existir.
• Cerrado: sistemas aislados, no interaccionan con el contexto.
c) Por su dependencia del Medio Ambiente
• Adaptable(dinámico): sistemas que ante un cambio en el contexto reaccionan en forma adecuada,
teniendo en cuenta la finalidad para la que fueron creados.
• No adaptable(estático): no modifican su conducta y/o estructura a pesar de cambios en el medio
ambientes.
Características de los sistemas
Todo sistema cualquiera sea su naturaleza tiene las siguientes características básicas:
1. Todo sistema contiene otros sistemas y/o subsistemas y a la vez esta contenido en otros sistemas
de carácter superior. Esto da como resultado una auténtica categorización de suprasistemas (medio
ambiente), sistemas y subsistemas.
2. Todos los componentes de un sistema, así como sus interrelaciones, actúan y operan en función de
los objetivos del sistema. Se dice que los objetivos constituyen el factor o elemento que aglutina e
integra a todas las partes del conjunto.
La alteración o variación de una de las partes o de sus relaciones, incide en las demás y en el conjunto.
Elementos de los sistemas
♦
♦
♦
♦
♦
Entradas
Salidas
Procesos
Retroalimentación
Medio Ambiente
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
4
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Entrada/Insumo/Input: Constituye los componentes que ingresan al sistema, los cuales serán objeto de
operaciones y/o procesos hasta transformarse en salidas.
MEDIO
AMBIENTE
entrada
PROCESO
salida
MEDIO
AMBIENTE
retroalimentación
Salida/Producto/Output: Son la expresión material de los objetivos del sistema, son los fines y las metas
del sistema.
Proceso/Transformación: Es el componente que transforma el estado original de las entradas en
salidas. La transformación es una serie de operaciones, reglas, procedimientos, que responden a una
lógica y orden.
Retroalimentación: Son aquellas salidas del sistema que se convierte en entradas del mismo. En
general, la retroalimentación se asocia al concepto de control, ya sea porque la salida es errónea o
posee fallas o porque se puede mejorar el sistema.
Medio Ambiente (Contexto): En los sistemas abiertos y adaptables, el Medio Ambiente tiene un papel
preponderante, ya que el sistema esta permanentemente interactuando con él para lograr sus objetivos.
En general el medio ambiente es cambiante lo que ocasiona que el sistema deba ser dinámico,
revisarse y ajustarse a los cambios para poder lograr sus objetivos. El Medio Ambiente influye en forma
determinante en el sistema, mientras que el sistema influye débilmente en el Medio Ambiente.
Sistemas de Información
Cualquier organización o empresa es en sí un sistema. Su medio ambiente es el sistema productivoeconómico-social-educativo en que se inserta, del que recibe una serie de entradas y al que entrega
una serie de salidas. A su vez dentro de él existen varios subsistemas, como ser los distintos
departamentos o áreas de la organización.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
5
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
MEDIO AMBIENTE
Subsistema de
Ventas
subsistema de
Personal
Sistema de
Información
Subsistema de
Compras
Subsistema de
Administración
MEDIO AMBIENTE
Como vemos en un sistema de información de una organización mediana, existen muchas entradas,
salidas y por ende las transformaciones son variadas, por lo que en general son sistemas complejos o
muy complejos.
Para que los subsistemas que conforman la organización funcionen coordinadamente, es necesario otro
subsistema más, el sistema de información, que tiene como misión asegurar que la información
necesaria fluya, dentro del sistema, de unos subsistemas a otros, toda organización cuenta con un
sistema de información. Del buen funcionamiento de este subsistema depende en gran parte el éxito
global del sistema.
Los elementos de un sistema de información son muy variados; pueden agruparse en recursos físicos,
recursos humanos, documentación y una serie de normas, reglas y procedimientos que determinan los
flujos de información tanto internos como hacia y desde el exterior, así como el uso y administración de
los recursos.
Concepto de información
Una organización para lograr sus objetivos eficiente y eficazmente necesita recursos físicos
(maquinarias, instalaciones), recursos de capitales($) y recursos humanos e información. Es
indispensable el manejo de la información para el logro de los objetivos. ¿Porqué? Por que el Medio
Ambiente es muy cambiante(los sistemas legales, económicos, financieros, políticos) y dinámico y las
organizaciones (sistemas) deben adaptarse a él, puesto que el presente es dinámi co y el futuro es
incierto, lo único que disminuye el riesgo es la información. Nada es estático, nada permanece
inalterable o congelado durante mucho tiempo. TODO LO CONTRARIO.
Los atributos o propiedades que debe poseer la información generada por un sistema de información
(manual o automatizado) deben ser los siguientes: relevancia, disponibilidad, integridad, cuantificación,
objetividad, sensibilidad, calidad, confiabilidad y exactitud, entonces se dirá que la información es
efectiva (útil)
En cualquier tipo de organización la información se utiliza para planificación, control y decisión.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
6
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Normas,
Procedimientos,
Métodos, Políticas
Recursos
Humanos
Recursos
Físicos
Documentación
S.I.
ORGANIZACION
MEDIO AMBIENTE
Tipos de Sistemas de Información
Manual: Todo, absolutamente todo es realizado por las personas, cálculos, informes, archivar
documentos, completarlos, controlar datos. A lo sumo se utilizan calculadores y máquinas de escribir y
computadoras para usar programas editores de texto y planillas de cálculos.
Manual - Automatizado: El sistema de información es en parte manual(hay procedimientos realizados
por personas) y en parte es automatizado (hay procedimientos realizados por las computadoras con
programas específicos). En estos casos, generalmente las personas cargan los datos y/o transacciones
iniciales y las computadoras hacen los cálculos, emiten listados e informes, clasifica la información de
distintas formas, etc.
Automatizado: Todo, absolutamente todo es realizado por la computadora.
Ejemplos: Sistema de cajero Banco Provincia de Santa Cruz (manual),Sistema de cajero Banco Tierra
del Fuego (manual-automatizado), Sistema de cajero automático Banelco (automatizado).
Sistemas de Información Automatizado
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
7
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Un sistema de información automatizado en forma parcial o total, utiliza ordenadores para almacenar los
datos de una organización y ponerlos a disposición del personal. Supongamos el siguiente caso (muy
sencillo):
factura
nota de
pedido
archivo
facturas
Los datos de las notas de pedidos (datos o transacciones iniciales) son cargados por una persona,
luego los programas generan una serie de listados que sirven para otras tareas.
En la mayoría de los casos, los sistemas de información automatizados son más complejos. Los
distintos sistemas-subsistemas se comunican, logrando que la mayoría de las funciones de una
organización estén soportados en algún nivel por automatización. Cada una tiene distintas entradas,
distintas salidas, etc.
Componentes de Sistemas de Información Automatizados
Los recursos humanos (personas) son los que producen y utiliza la información en su actividad diaria.
Estas actividades pueden ser simples o complejas (carga datos o toma de decisiones).
Los procedimientos son una serie de pasos que establecen como se hacen las cosas. Es decir, que se
hace cuando se reciben los datos, como entran, como se calculan, registran, almacenan, como pasan a
través del sistema, hasta convertirse en salida.
Niveles de un Sistema de Información
Nivel operativo o de transacción: Es el que tiene que ver con la operatoria básica diaria. Por ejemplo, la
carga de notas de pedidos y la emisión de facturas.
Nivel de gestión administrativa: Ayudan a los usuarios de un mayor nivel jerárquico a tomar cierto tipo
de decisiones y a efectuar el control. Respecto del sistema de información automatizado no realizan
carga de datos, pero si efectúan consultas y utilizan la información (salidas) para efectuar control y
autorización.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
8
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Nivel de soporte de decisiones: El objetivo es ayudar a tomar decisiones poco frecuente, que implica
un riesgo. Respecto del sistema de información automatizado se presenta en forma de consulta,
bastante más complicados que el nivel anterior.
El Sistema de Información Automatizado debe aspirar a ser TOTAL, con características de integración
que permita cumplir con los tres niveles.
Transacción: Son entradas al sistema de información, que respeta algún procedimiento en cuanto a
su forma, generalmente soportados en un formulario y son un registro simple y claramente definido.
Ejemplo: Una venta, un permiso de examen, la solicitud de un préstamo, etc. Estas transacciones
fluyen por el sistema transformándose, procesándose, produciendo salidas.
Usuario: Es la persona/s para quien se hará el sistema, es el que utilizará el sistema. Es el cliente, el
dueño, los empleados.
Tipos de Usuarios
Nivel Operativo
Nivel de Gestión Administrativo
Nivel Soporte de Decisiones
Usuario Operativo
Usuario Supervisor
Usuario Ejecutivo
Usuario operativo: Son oficinistas, administrativos, operadores. Tendrán contacto diario y directo con el
sistema. Realizan la carga de datos iniciales. Estos usuarios se preocupan por las funciones
del sistema que se relaciona con su trabajo en forma directa, y por la interfaz con el sistema.
¿Cómo será la carga? ¿la pantalla?. Estos usuarios en general tienen una visión local del
sistema, desconocen los aspectos que van más allá de sus funciones.
Usuario supervisor: En general tienen a cargo un grupo de usuarios operativos. Son jefes, gerentes, etc.
Deben controlar a sus subordinados y asegurar que su sector o departamento cumpla con sus
funciones. Este tipo de usuario tiene un panorama más global del sistema, generalmente sabe
para qué y porque se hacen las cosas. Conocen la operativa pero le interesan detalles del
sistema que le permitan efectuar un mejor control y logro de sus objetivos. Toman decisiones
frecuentes y poco arriesgadas.
Usuario ejecutivo: Este tipo de usuario probablemente no utilice el sistema, solo la información. Esta
preocupado por decisiones de inversión, ampliación de la empresa. Tiene la visión más global
del sistema.
BIBLIOGRAFIA
I.T.H.(cap.1-2-3), R.C.(cap. 4), E.Y. (cap.2-3), (K.K. cap. 1,2).
ACTIVIDADES
1. Explicar y ejemplificar los conceptos de sistema, suprasistema y subsistema.
2. Mencionar y explicar los tipos de sistemas y dar dos ejemplos de cada uno.
3. Mencionar y explicar los componentes de un sistema abierto. Dar 3 ejemplos gráficos de sistemas e identificar
sus componentes.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
9
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
4. Definir sistema de información. Manual y automatizado.
5. ¿Quién es el usuario? Mencionar y explicar los tipos de usuario.
6. Mencionar y ejemplificar los componentes de un sistema informático, explicar las relaciones entre estos.
7. ¿Porqué las organizaciones necesitan sistemas de información?
8. Yourdon clasifica a los sistemas informáticos en:
• sistemas en línea
• sistemas de tiempo real
• sistemas de apoyo de decisiones
• sistemas basados en el conocimiento
Explique y describa las características de cada uno de estos tipos.
INGENIERIA DE SOFTWARE
Requerimientos: Este término se utiliza cuando un usuario tiene una necesidad, lo cual generalmente
surge de un problema. En general, los problemas que originan requerimientos son:
♦ El sistema de información es manual y maneja un gran volumen de transacciones diarias, lo que
dificulta su acceso, clasificación, consulta, control y proceso.
♦ El sistema de información esta parcialmente o totalmente automatizado pero debe modificarse
porque han cambiado los requerimientos.
♦ El sistema de información esta parcialmente o totalmente automatizado y es necesario agregarle
más funciones.
En cualquiera de los casos, tendremos requerimientos provenientes de los tres niveles:
♦ Requerimientos de transacción
♦ Requerimientos de supervisión
♦ Requerimientos de decisión
Lo cual se verá traducido en requerimientos de:
♦ Entrada
♦ Salida
♦ Proceso
♦ Control
Ejemplos:
Requerimientos de Entrada: En el sistema se deben cargar n NP por día.
Requerimientos de Salida: El Sistema debe emitir listados.
Requerimientos de Control: El Sistema no debe procesar NP de clientes deudores.
Requerimientos
de Proceso: El Sistema debe realizar para todos los cálculos de impuestos,
sumatorias, etc.
Los requerimientos están relacionados, es decir, un requerimiento puede ser de control y de salida a la
vez. Los requerimientos están relacionados con los procedimientos, normas y políticas de la
organización.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
10
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Para satisfacer estos requerimientos o solucionar los problemas, hemos de desarrollar un producto de
software. Cuando hablamos de software nos referimos a un conjunto de programas relacionados,
orientados a resolver un problema del mundo real, que por su complejidad y tamaño deben ser
resueltos por un equipo de especialistas de software. Veamos las siguientes situaciones:
a) Un simple programa que calcule la media de los valores almacenados en un array.
b) Una aplicación de gestión de las cuentas corrientes de las sucursales de un banco, que permite
realizar transacciones en línea como depósitos, extracciones, consultas de saldos y movimientos,
transferencias, creación y cancelación de cuentas y emisión de extractos, entre otras cosas.
El primer caso, prácticamente no reviste inconvenientes para realizar el programa en forma inmediata,
puesto que el problema es sencillo y esta perfectamente delimitado y acotado. Pero el segundo, trata un
problema más complejo, serán necesarios muchos programas, distintos tipos de estructuras de datos y
será utilizado por varios usuarios a la vez, etc., además el desarrollo estará a cargo de un equipo de
personas, en esta situación no se debe comenzar a programar en forma inmediata, debe pensarse
como un proyecto de software, cumpliendo el ciclo de vida y siguiendo alguna metodología, en estos
casos estaremos haciendo uso de la Ingeniería de Software.
El término Ingeniería de Software se utiliza para referirse a un método disciplinario de desarrollo de
programas de computadoras, a través de todas las actividades del ciclo de vida de un software.
La tendencia del software es crecer en tamaño, complejidad y cambiar, por ello el desarrollo debe
apoyarse en un método disciplinario de diseño, producción y mantenimiento de programas de
computadoras que se desarrollan bajo estimaciones de tiempo y de costo, utilizando herramientas de
ayuda a la gestión del tamaño y complejidad de los productos de software resultantes.
La Ingeniería de Software se compone de tres elementos: métodos, herramientas y procedimientos, que
facilitan controlar el proceso de desarrollo del software y suministrar a los que practiquen dicha
ingeniería las bases para construir software de alta calidad de una forma productiva.
Los métodos indican “como” construir técnicamente el software. Los métodos abarcan un amplio
espectro de tares que incluyen: planificación y estimación de proyectos, análisis de los requisitos,
diseño de datos y programas, codificación, prueba, instalación y mantenimi ento.
Las herramientas suministran un soporte automático o semiautomático para los métodos. Algunas de
las herramientas disponibles por sus características reciben el nombre de CASE (Ingeniería de Software
Asistida por Computadora).
Los procedimientos juntan los métodos con las herramientas y facilita un desarrollo racional y oportuno
del software de computadoras. Los procedimientos definen la secuencia en la que se aplican los
métodos, las entregas (documentos informes, formas, etc.) que se requieren, los controles que ayudan
a asegurar la calidad y coordinar los cambios y las directrices que ayudan a los gestores a evaluar el
progreso.
La Ingeniería de Software esta compuesta por una serie de pasos que abarcan los métodos, las
herramientas y los procedimientos antes mencionados. Estos pasos se denominan frecuentemente
paradigmas de la Ingeniería de Software. La elección de un paradigma para la Ingeniería de Software
se lleva a cabo de acuerdo a la naturaleza del proyecto y de la aplicación, los métodos y herramientas a
usar y los controles y entregas requeridos. Se puede hacer una analogía entre paradigma y
metodología, hay varios paradigmas o metodologías.
En este curso se estudiara el paradigma, metodología o ciclo de vida clásico, comúnmente denominado
estructurado.
Concepto de Proyecto
Para construir un puente o para implementar un nuevo modelo económico en un país se realiza un
proyecto, lo cual implica ordenar las actividades y/o tareas a realizar de acuerdo a una secuencia y
cronograma. Naturalmente toda actividad a emprenderse de mediana a alta complejidad se proyecta,
dividiéndose en etapas o fases. Para realizar un producto de software también se debe hacer un
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
11
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
proyecto, es decir, dados un conjunto de requerimientos, diremos que la preparación y ejecución de un
proyecto que sigue una metodología nos proveerá mayor seguridad de llegar a una solución exitosa.
Un proyecto implica que las cosas se hacen en estricto orden cumpliendo etapas.
Metodología - Ciclo De Vida - Paradigma
Los sistemas informáticos (software) desde su concepción hasta su desaparición pasan por una serie
de etapas o fases. Desde que surge la necesidad, pasando por su propia construcción, puesta en
marcha y continuas revisiones hasta su abandono, pasa por una serie de etapas que constituyen su
ciclo de vida.
Las actividades para la construcción de un sistema se realizan de acuerdo a un método. Una
metodología es una manera ordenada y sistemática de proceder para obtener algún fin. Se llevara a
cabo a través de una serie de normas o reglas precisas, cuyo cumplimiento será mas o menos estricto,
constituyendo el cuerpo formal de la metodología.
El conjunto de normas incluye además un sistema de documentación donde se irá reflejando el trabajo
realizado, siendo el aspecto más visible del método.
• Una metodología es un enfoque para organizar, dirigir y realizar las actividades del ciclo de vida de
un sistema de información.
Existen varias metodologías: clásica, prototipos, oo, merisse, etc.
Los sistemas de información se desarrollan en una serie de pasos: esta secuencia se conoce como el
ciclo de vida. Se utiliza por varias razones:
A) Para organizar el gran número de actividades necesarias en la construcción de un sistema y
especificar la secuencia en que se deben tratar esas actividades para su desarrollo.
B) El ciclo de vida ayuda a los analistas a resolver problemas que surjan durante el desarrollo del
sistema, marcando la dirección del proyecto y proporcionando una guía sobre lo que se debería
obtener como resultado del mismo.
C) El ciclo de vida ayuda también a producir informes del estado del proyecto, permitiendo un
seguimiento de las necesidades de recursos.
El ciclo de vida se define como una secuencia de fases. Cada fase se compone de actividades mas
detalladas, cada una de las cuales tienen un objetivo especifico. Cada fase se revisa cuando se
completa. Esta revisión produce un informe como resultado y define el objetivo y un plan detallado para
la siguiente fase.
Ciclo De Vida Estructurado O Metodologia Estructurada
Principales exponentes: De Marco, Yourdon, Gane & Sarson.
En el CDV clásico era muy importante partir de unos requerimientos claros, completos y bien definidos,
el analista estaba seguro de conocer perfectamente lo que el usuario quería que haga el sistema.
Cuando las necesidades del usuario simples, determinar y definir requerimientos puede ser
relativamente fácil, pero cuando las necesidades del usuario crecen, o son complejas, o difíciles de
definir, si además la aplicación debe servir a varios usuarios con necesidades e intereses diferentes y a
veces opuestos, el análisis de los requerimientos se complica y se convierte en el principal problema en
el desarrollo de un sistema de información.
En los años 70 esta situación hizo que el ciclo de vida clásico entrara en crisis. El CDV estructurado
surge así como una superación del CDVC en entornos grandes y complejos. En la actualidad se
conocen como análisis estructurado, diseño estructurado y programación estructurada, pero este
método es bastante más que esto.
El CDVE es un ciclo lineal o en cascada, que provee técnicas y herramientas adecuadas para cada fase
del proyecto. Es una metodología que ofrece mayores puntos de control para el proyecto. Es más
flexible, lo que facilita el mantenimiento (modificación y adaptación del sistema), entre otras ventajas.
Junto con esta metodología aparecen nuevos conceptos como la modularización y el diseño
descendente.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
12
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
FASES DEL CVDE
♦ Estudio de Factibilidad
Consiste en una visión general, de alto nivel, de todo el proyecto, destinado a contestar a un número
determinado de preguntas: ¿Cuál es el problema? ¿Existe una solución viable para el problema?
¿Cuánto tiempo llevará? ¿Cuál es el costo?
El estudio de factibilidad debe ser relativamente corto, pues la tarea no consiste en resolver el
problema, sino en obtener una idea de su complejidad y tamaño.
El estudio de factibilidad comienza con la aclaración de la definición del problema. Se definen el alcance
y los objetivos iniciales y se identifican las restricciones y limitaciones del sistema Se preparan varios
alternativas de solución. Para cada una de ellas se analiza:
• Factibilidad Técnica: ¿Puede el software implementarse empleando la tecnología actual y
disponible?
• Factibilidad Economía: ¿Superan los beneficios los costos?
• Factibilidad Operativa: ¿Puede el software desarrollarse y ejecutarse en esta organización?
Se descartan las alternativas que no cumplen con las tres factibilidades y se prepara un informe al
usuario - cliente (alto nivel), que tiene la siguiente forma:
1. Definición del problema.
2. Alcance.
3. Objetivos.
4. Restricciones.
5. Limitaciones.
6. Alternativas de solución. Para cada una:
6.1 Factibilidad Económica (Análisis costo/beneficios)
6.2 Factibilidad Operativa
6.3 Factibilidad Técnica
6.4 Duración estimada del proyecto
6.5 Inversión estimada del proyecto
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
13
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
El usuario decidirá que alternativa elegir.
Estudio de
Factibilidades
Análisis
Diseño
Implantación
Pruebas
Instalación
Mantenimiento
♦ Análisis
En esta fase el analista intenta determinar los requerimientos a partir del estudio del sistema de
información existente, de manera de incluir todos los detalles relevantes del sistema actual, además
pretende:
• Que sea fácil detectar y verificar la omisión de detalles relevantes
• Que distintos analistas ante el mismo sistema actual determinen los mismos requerimientos
• Que la documentación generada sobre el sistema actual sean vehículos eficientes de comunicación
En esta fase el analista se familiariza con la operación del sistema, para ello utiliza una serie de técnicas
y herramientas, por ejemplo consigne información entrevistando a los usuarios. En esta fase se obtiene
un modelo del sistema existente, que representa lo que hace y cómo lo hace. Este modelo describe las
funciones del sistema, los datos, el control, etc.
El documento resultado de esta etapa se suele llamar especificación estructurada o especificación de
requerimientos.
♦ Diseño
En esta fase se obtiene el diseño del nuevo sistema a través de varias tareas, es decir, se desarrolla un
modelo que representa la solución o la satisfacción del os requerimientos del usuario. Se diseñan entre
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
14
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
otras cosas como serán las interfaces, programas y bases de datos, siempre el objetivo será cumplir
con los requerimientos del usuario. Para ello se utilizan distintas herramientas.
♦ Implantación
Las especificaciones diseñadas en el paso anterior se pasan a un código. Se programan en el lenguaje
apropiado, en forma estructurada y siguiendo buenos criterios de programación. Evitando programación
redundante y respetando el de ocultamiento de información.
♦ Pruebas
Se generan casos de prueba de acuerdo a diversas técnicas para probar el sistema y a los
subsistemas. Se prueba cada fase del desarrollo del proyecto, se encuentran fallas y errores y se
depuran o corrigen.
♦ Instalación
La instalación implica la ejecución de una serie de actividades que permitirán al usuario interactuar con
el sistema en forma autónoma e independiente.
♦ Mantenimiento
Luego de instalado el sistema toda actividad que implique modificar el sistema se considera de
mantenimiento. Algunas veces ocurre que algunos procedimientos y/o políticas del usuario cambian,
otras veces como el sistema no ha sido correctamente analizado, diseñado y probado surgen
necesidades de modificación. Las primeras se consideran normales, las segundas no deberían ocurrir si
se trabaja siguiendo el método.
El Analista De Sistemas
Trabajara activamente en las fases de análisis y diseño. Actualmente también hace la implantación.
Algunas de sus tareas serán:
• Recopilar datos en forma adecuada.
• Identificar problemas.
• Proponer soluciones.
• Documentar el trabajo.
Para ello debe comunicarse con el usuario, lo cual no es fácil cuando son varios, con intereses
opuestos. La característica principal de cualquier persona que debe solucionar problemas son:
• sentido común
• capacidad analítica
• objetividad
Son condiciones sin equanon, también para un analista de sistemas.
Bibliografía:
I.T.H. (cap.1-2-3), R.C.(cap.4), W.D.(cap.13), E.Y.(cap. 5-3)
ACTIVIDADES
1. ¿Qué es un proyecto? ¿Qué es un proyecto de software? Identificar las causas que en general promueven un
proyecto de software.
2. ¿Qué es un requerimiento? Identificar y explicar los tipos de requerimientos. Ejemplificar.
3. ¿Qué es una metodología o ciclo de vida? ¿Porqué es necesaria una metodología para desarrollar un software?
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
15
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
4. ¿Qué es la Ingeniería de Software?
5. Nombrar y describir brevemente las etapas de la metodología estructurada.
6. ¿Cuál es la diferencia entre Análisis y Diseño?
7. ¿Cuál es la función del analista de sistemas?.
8. Leer E.Y. cap. 4 y 5 y responder:
a. ¿Qué es una herramienta?
b. ¿Qué es un modelo?
c. Citar las razones para usar modelos en el análisis y diseño de sistemas
d. ¿Porqué el autor recomienda usar modelos gráficos?
e. ¿Porqué el autor opina que un modelo gráfico es más eficiente que una descripción textual?
ANALISIS ESTRUCTURADO
En el análisis tratamos de identificar los requerimientos del usuario. Un requerimiento (necesidad) en
definitiva será lo que el usuario quiere que haga el sistema nuevo y que su sistema actual no lo hace o
lo hace erróneamente. Por eso la determinación o definición de requerimientos debe ser clara, completa
y precisa, para ello el análisis deber ser un estudio del sistema. Lo importante será conocer lo mejor
posible el sistema actual, para más tarde proponer soluciones adecuadas.
El análisis estructurado proporciona técnicas y herramientas que facilitan el reconocimiento de los
requerimientos e identificación de problemas. Se utilizan principalmente herramientas gráficas. Y lo que
se pretende es realizar un modelo que represente al sistema actual, desde los tres puntos de vista de
cualquier tipo de sistemas de información (procesos-control-datos)
En Análisis se produce un documento (especificación estructurada o especificación de requerimientos)
que servirá de base a Diseño. Análisis por intermedio de ese documento definirá: ¿Cuáles son los
requerimientos?, ¿Cuáles son los problemas?, ¿Qué hace el sistema actual?, ¿Qué se puede cambiar y
qué debe permanecer?, Es decir el QUE deberá hacer el nuevo sistema, pero será Diseño quien
definirá el COMO se solucionaran los problemas, se cumplirán los requerimientos y será el nuevo
sistema.
En Análisis Estructurado procedemos ordenadamente, realizando una serie de actividades, hasta llegar
a Diseño.
Etapa
Actividad
Relevamiento
ANALISIS
ESTRUCTURADO
Modelo Ambiental
Modelo de
Comportamiento
Técnica-Herramienta
Entrevistas
Cuestionarios
Organigramas
Tablas/Arboles de Decisión
Insp.de Documentos y Archivos
Muestreos
Declaración de Propósitos
Lista de Eventos
Diagrama de Contexto
Diagrama Flujo de Datos
Diccionario del Sistema
Diagrama Entidad-Relación
Diagrama Transición de Estados
Resultado
Especificación
Estructurada
Balanceo
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
16
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Existe un orden para realizar las actividades, pero ocurre que a medida que se avanza se debe volver
atrás, para realizar correcciones y completar. Lo cual es lógico, dado que a medida que se profundiza el
estudio, los puntos oscuros, las dudas, las falsas interpretaciones se van aclarando, corrigiendo y
completando.
Relevamiento
Balanceo
Modelo
Ambiental
Modelo de
Comportamiento
RELEVAMIENTO
Es el conjunto de actividades y tareas que tiene por objetivo la obtención y recopilación de información
del sistema de información existente. Para ello el analista recurre a distintas fuentes y aplica las
técnicas que considera adecuadas, asegurándose que la información y datos obtenidos son correctos.
¿Qué se releva? TODO. Procedimientos, políticas, normas, reglas, documentos o formularios utilizados,
archivos en que se guardan los papeles, el circuito administrativo, controles que se efectúan, funciones,
operaciones, tareas, etc.
Para el análisis se necesita la mayor cantidad de información posible, a medida que se avance aquello
que no sirve se va descartando.
¿Cómo se obtiene esta información?
Existen fuentes escritas como los manuales organizacionales, pero la fuente de información por
excelencia más importante es el USUARIO. El es quién hace las cosas, él es quién tiene los problemas,
él sabe el cómo, el para qué, el porque y el cuándo de las cosas. El usuario es un punto crítico que el
analista debe manejar con sumo cuidado.
TECNICAS DE RELEVAMIENTOS
1. Entrevista
Es la técnica principal. Convenientemente utilizada ayuda a encontrar distintos hechos, necesidades de
información, responsabilidades, objetivos, operaciones, etc. Es oral, es un encuentro cara a cara con el
usuario. Todos las demás técnicas se basan en indicios obtenidos en entrevistas previas. La entrevista
consta de tres momentos: el antes, el durante y el después.
• Antes: Preparación
La preparación de la entrevista significa fijar hora, día y lugar de la reunión. Establecer un orden
adecuado de entrevistas. EL lugar debe ser apropiado, que reduzca las interrupciones. Confeccionar
una lista de puntos, temas, items y preguntas básicas a realizar.
• Durante: Ejecución
Cuando se produce la entrevista, el analista debe tener en cuenta los siguientes aspectos:
Debe procurar crear un ambiente distendido, no debe utilizar lenguaje técnico informático, no es un
interrogatorio policial, debe ser una charla, debe escuchar y observar, el centro es el usuario, no debe
opinar y menos criticar.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
17
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Para ello debe ante todo explicar el propósito de la entrevista. Tomar nota de lo necesario (no exagerar
o perder tiempo escribiendo palabra por palabra, y provocando la desconcentración del entrevistado),
grabar si al usuario no le molesta. No es conveniente efectuar entrevistas grupales.
Al finalizar la entrevista, se debe repasar la información obtenida con el usuario y ofrecerle las notas
tomadas para lograr su aprobación.
Tipos de preguntas:
• Preguntas abiertas: permiten al usuario que se explaye al contestar. Por ejemplo: ¿Cuáles son
las tareas y actividades que Ud. desempeña?
• Preguntas cerradas: el usuario responde en forma concisa, precisa y acotada. Por ejemplo:
¿Hace cuánto que Ud. trabaja en esta empresa?
• Preguntas de reenvio: preguntas que confirman datos previamente obtenidos.
Es recomendable hacer varias entrevistas que una muy extensa.
• Después: Evaluación
Luego de efectuada la entrevista, se analizan los resultados de la misma, se determinan los puntos
claros y oscuros y se procede a confirmar y/o aclarar mediante otras entrevistas y/o otras técnicas.
En el relevamiento se entrevista por lo general a varios usuarios, generalmente el analista se basa en la
estructura organizativa de la empresa (organigrama) Es conveniente comenzar las entrevistas por el
nivel mas alto para obtener soporte y cooperación de la dirección antes de comenzar a examinar las
actividades de las unidades organizativas (departamentos y sectores) particulares o sugerir nuevas
soluciones.
Tanto en la entrevista inicial como en las posteriores, el analista siempre intentara encontrar la forma de
obtener mas información, por lo cual la preparación es esencial. Se debe tener una idea de lo que se
pretende lograr con la entrevista y formular preguntas directas para obtener esa información. Si el
entrevistado no puede contestar se le pregunta donde se puede obtener esa información.
De esta manera, el proceso de la entrevista sigue un camino bastante estructurado. Se consigue de la
Dirección (usuario de mas alto nivel) una visión general de la operación del sistema, pasando después a
las operaciones detalladas mediante entrevistas con usuarios de distintos niveles.
Tipos de entrevistas:
Estructuradas: Previamente a la entrevista se tiene conocimiento de las preguntas que se
efectuarán.
No estructuradas: Previamente a la entrevista no se tiene conocimiento del tema a tratar, ni las
preguntas a efectuar.
Semiestructuradas: Previamente a la entrevista se tiene conocimiento de los temas que se
trataran, y las preguntas van surgiendo en la entrevista.
(Profundizar en K.K. cap.5)
2. Cuestionarios
Es una técnica escrita. Consiste en una serie de preguntas o items que el usuario debe completar o
responder. El cuestionario es contestado por el usuario en ausencia del analista, luego el analista
recoge los cuestionarios, los lee y los analiza.
No es conveniente realizar preguntas abiertas, el cuestionario no es efectivo para este tipo de
preguntas. Ya que por lo general si el usuario tiene que explicar algo en forma escrita, lo hace de forma
incompleta, no muy legible, y expresa sucesos ocurridos recientemente, en lugar de sucesos
intemporales.
Los cuestionarios son útiles cuando:
• Se busca la misma información en usuarios diferentes.
• Los usuarios están ubicados geográficamente en lugares distantes.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
18
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
•
Se busca información de naturaleza cuantitativa.
El cuestionario debe consistir en preguntas o enunciados cortos, claros, fáciles, tipo múltiple
choice, o que conteste sí o no (preguntas cerradas)
Los cuestionarios son útiles como complemento de otras técnicas, para verificar información obtenida
(reenvio) y muy recomendables para recoger datos numéricos u obtener opiniones relativamente
simples de un número de personas, pero no son efectivos para búsquedas detalladas, ni para
identificar problemas del sistema. También se debe tener en cuenta que al no estar presente el analista
cuando el usuario contesta, existen factores subjetivos y psicológicos que son importantes: los gestos
del usuario, si duda, si tarda en contestar, si parece inventar o mentir, si pregunta a otros usuarios para
contestar, si natural y espontaneo.
El éxito de un cuestionario radica en la claridad de las preguntas y la honestidad de usuario.
(Profundizar en K.K. cap. 4)
3. Inspección o examen de documentación y archivos
Esta técnica implica la recopilación e investigación de: manuales, formularios y archivos que se utilizan
en la organización. En toda organización en forma manual o automatizada la información se plasma o
soporta en formularios (papeles) que sirve a distintos propósitos. Estos formularios el usuario los guarda
de alguna manera en archivos.
Las empresas medianas y grandes poseen manuales organizacionales, o de procedimientos o
administrativos los cuales poseen información sobre los procedimientos, normas, estándares,
operaciones, reglamentos internos, políticas. Es decir, como se hacen las cosas.
Los formularios son todo comprobantes que confeccionan, completan los usuarios y reflejan la
operatoria, las transacciones de la organización se representan con formularios, en forma diaria y
habitual, por ejemplo una venta se plasma en una nota de pedido, una compra a un proveedor se
plasma en una orden de compra, el pago de los sueldos a los empleados implica la confección de
recibos de sueldo.
Algunos formularios son obligatorios por ley, por ejemplo cualquier tipo de venta debe realizarse con
una factura.
Todo formulario contiene información y tiene un propósito especifico, es decir sirve para algo. Deben
obtenerse copias o reproducirse y averiguar quien los genera, para quien se hacen, donde se guardan y
como.
La información que el usuario recibe, como la que genera es almacenada en archivos, puesto que
requiere su consulta y uso, por ejemplo: si en una empresa las ventas son en cuenta corriente (crédito),
las facturas de los clientes serán debidamente guardadas, para que al momento del cobro, se puedan
obtener los importes a cobrar. Un archivo es un lugar físico donde se guarda información según algún
criterio de organización, que permitirá posteriormente accederla, por ejemplo las facturas se pueden
guardar correlativamente por número, o por fecha, o por cliente. El usuario utiliza habitualmente,
biblioratos, agendas, ficheros, carpetas, etc. Es necesario identificar donde y como guarda la
información como su volumen.
4. Observación Directa
Para definir esta técnica la pregunta sería ¿lo que nos han contado es cierto? El analista trata de
observar el comportamiento del sistema sin que el usuario lo perciba, y obtener información "informal".
Si se puede participar mejor.
(Profundizar en K.K. cap.5)
5. Muestreo
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
19
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Cuando la cantidad de documentación o comprobantes es muy voluminosa puede ser útil tomar una
muestra al azar para constatar algún hecho de manera de obtener una medida cuantitativa o porcentual
que se pueda proyectar a la totalidad y proporcionarnos información. Sirve para confirmar alguna
situación critica.
Requiere tiempo y su valor depende del tamaño y representatividad de la muestra seleccionada.
(Profundizar en K.K. cap.4)
6. Organigramas
Describe la estructura jerárquica de la organización. Puede que se halle en los manuales, sino será
conveniente hacerlo apenas comience el relevamiento. Proporciona información útil sobre la división
departamental y funcional. Suele hacerse con el usuario de mayor nivel. Es importante que se coloquen
los nombres de los usuarios.
Ejemplo: Organigrama de la empresa XX
Gerencia
General
Sr. Lopéz
Gerencia
Comercial
Sr. Gomez
Gerencia
Produccion
Sra. Mendez
Gerencia
Contable
Sr. Vazquez
7. Tablas y Arboles de decisión
Se consideran técnicas descriptivas, que se usan como soporte de otras, principalmente para corroborar
y verificar situaciones condicionales. Explican gráficamente situaciones condicionales y sus respectivas
acciones (políticas), dado que la narrativa puede ser confusa.
El árbol de decisión se confecciona en forma horizontal y en el se explicitan las condiciones por las
ramas, siendo las hojas las acciones.
Tipo
de
Pago
Contado
Importe >= $100
10% Descuento
Importe >= $50 y Importe < 100
5% Descuento
Importe < $50
2% Descuento
0% Descuento
Crédito
La tabla de decisión sirve exactamente para lo mismo que el árbol. Cambia su disposición gráfica,
adquiriendo una forma tabular. En la parte superior se colocan las condiciones y en la inferior las
acciones.
Contado
Crédito
Importe >= $100
Importe >= $50 y Importe <$100
Importe < $50
X
X
X
X
X
X
X
X
X
X
X
X
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
20
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Descuento 10%
Descuento 5%
Descuento 2%
Descuento 0%
X
X
X
X
X
X
En ambos casos, lo que cuesta identificar son los distintos grupos de condiciones. En este ejemplo
tenemos dos: respecto del tipo de pago y otra respecto del importe. La acción se da por una
combinación de condiciones, pero dentro de cada grupo son excluyentes.
EL USUARIO
Tiene un papel preponderante en el relevamiento y en todo el proyecto. Es nuestra fuente de
información primaria ¿Porqué? Nadie mejor que él sabe lo que hace y como lo hace, nadie mejor que él
conoce sus problemas, probablemente sepa la causa de los problemas, probablemente pueda aporta
ayuda para la solución. Pero no siempre es fácil que proporcione información y colabore. En todo
momento el analista debe hacer participar al usuario en el proyecto, solo así lograra que éste se sienta
comprometido y coopere. "El proyecto es de todos y para todos".
Tipos de usuario:
• Usuario cuenta historias
• Usuario dudoso
• Usuario temeroso
• Usuario agrandado
• Usuario llorón
Bibliografía:
I.T.H. (cap.4), R.C. (cap.6), W.D.(cap.3-11-16), K.K. (4-5-6-7)
ACTIVIDADES
1. ¿Porqué es necesario analizar un sistema de información?
2. ¿Qué es el relevamiento, para qué sirve y en qué consiste?
3. Mencionar, explicar y caracterizar las técnicas de relevamiento.
4. Confeccionar una cuadro de doble entrada en el que se expliciten ventajas y desventajas de la entrevista y de los
cuestionarios.
5. Confeccionar un cuadro en el que se expliciten los tipos de usuarios y la actitud del analista de sistemas
respecto de estos.
6. Dar 3 ejemplos de preguntas abiertas y 3 ejemplos de preguntas cerradas.
7. ¿Porqué decimos que el muestreo es una técnica basada en la estadística? ¿En qué caso efectuaría un muestreo?
Ejemplifique.
8. Respecto de los procedimientos administrativos (ANEXO 1), conteste:
a. ¿Qué es un procedimiento administrativo?
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
21
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
b. ¿Porqué se analizan los procedimientos administrativos? ¿Cómo se analizan?
c. ¿Cómo se diseña un procedimiento administrativo?
9. Respecto de la documentación que existe en un sistema (ANEXO 1), conteste:
a. ¿Qué es un formulario? ¿Para qué sirve? ¿Cómo esta estructurado?
b. ¿Qué es un manual? ¿Para qué sirve? Describa el manual de procedimientos administrativos
c. Vaya a una organización y obtenga copia o dibuje al menos tres documentos que se utilicen diariamente, y
explique brevemente la información que contienen y para que sirven.
10. ¿Sería diferente el relevamiento para un sistema de información existente que para uno totalmente nuevo?
Fundamente su respuesta.
MODELO AMBIENTAL
Este modelo tiene por objeto determinar en forma clara y precisa que es parte del sistema y que no.
Como ya se dijo, todo sistema es parte componente (subsistema) de otros sistemas mayores
(suprasistemas). En este modelo se definen las interfaces (relaciones) entre el sistema y su medio
ambiente, entradas y salidas de información. Se busca modelar el exterior del sistema, para ello deberá
trazarse las fronteras o limites del sistema.
Se necesita saber que información entra al sistema desde el medio ambiente y que información del
M.A.
SISTEMA
sistema sale al medio ambiente. Pero estas entradas y salidas no se producen al azar. Los sistemas de
información tienen una razón de ser y tienen objetivos. Los sistemas de información producen salidas
como respuesta a algún acontecimiento o estimulo en medio ambiente. Otro aspecto critico es identificar
los acontecimientos que ocurren en el medio ambiente al cual debe responder el sistema. (el medio
ambiente genera infinitos acontecimientos, no todos generan respuestas del sistema)
BANCOS
CLIENTES
EMPRESA X
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
22
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Puede ocurrir que la frontera sea claramente reconocida por el usuario. Pero en algunos casos, se
forma una zona gris (entre e sistema y el medio ambiente) que dificulta la determinación.
Es fácil cuando el medio ambiente esta conformado por sistemas que no pertenecen a la misma
organización.
PROVEEDORES
SISTEMA
Herramientas usadas para definir el modelo ambiental
• Declaración de propósitos (D.P.)
• Lista de eventos (L.E.)
• Diagrama de contexto (D.C)
1. Declaración de propósitos
Es una declaración textual, breve y concisa del propósito del sistema. Cuenta con pocas frases y no
debe llevar mas de un párrafo. No tiene la finalidad de describir en forma completa y detallada al
sistema, lo que hace y como lo hace, sino que se espera del sistema.
Ejemplo: el sistema contable de la empresa X, debe registrar las operaciones y producir los diarios,
mayores y balances contables.
En base a los propósitos del sistema, se pueden determinar las entradas necesarias del medio
ambiente externo.
2. Diagrama de contexto
Se compone de un único circulo (burbuja) que representa al sistema y de flechas que llegan y salen del
sistema (flujos de entrada y salida), llamadas interfaces y de rectángulos que simbolizan a las entidades
externas (otros sistemas del medio ambiente con los que interactúa)
VENTAS
ventas
SISTEMA
CONTABLE
compras
COMPRAS
balance
GERENCIA
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
23
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Una entidad se considera externa si el sistema no puede influir en sus aspectos internas, es
más, seguramente los desconoce.
Reglas para construir el D.C.:
• El nombre de las entidades externas es un sustantivo común en singular.
• Los nombres o etiquetas utilizados deben ser significativos y representativos de la realidad.
El D.C. enfatiza varios aspectos importantes:
• Entidades externas: personas, organizaciones, sistemas con los que se relaciona el sistema en
forma directa.
• Flujos de entrada: los datos que el sistema recibe y que debe procesar de alguna manera.
• Flujos de salida. Los datos que el sistema genera y que envía al medio ambiente.
• Almacenamientos: datos que el sistema comparte con las entidades externas, estos se generan
fuera o dentro del sistema.
• La frontera entre el sistema y el medio ambiente externo.
3. Lista de Eventos
Es una lista narrativa de los estímulos que ocurren en el mundo exterior a los cuales el sistema debe
responder.
Ejemplos:
1. Un cliente hace un pedido (F).
2. Un cliente cancela un pedido (F).
3. La gerencia solicita un informe de pedidos todos los días. (T.)
Un estimulo es un acontecimiento que activa al sistema, lo dispara, lo obliga a actuar.
Tipos de eventos:
• De flujo: se asocia con un paquete de datos, el sistema se da cuenta que ha ocurrido por que ha
llegado algún dato.
• Temporales: ocurren en un momento determinado en el tiempo, que el sistema conoce,
generalmente de acuerdo a una cierta frecuencia.
• De control: son un caso especial de los temporales. Es un acontecimiento externo, que el sistema
recibe mediante un flujo de control (no son muy comunes).
Correspondencia entre la lista de eventos y el diagrama de contexto
A un evento le pueden corresponder mas de un flujo en diagrama de contexto, no existe
necesariamente una correspondencia uno a uno. Es un error, por otra parte tratar de definir un evento
para cada flujo, cuando varios flujos son causados por un solo evento. (oscurece la lista de eventos).
Otro error que suele cometerse es no identificar el evento primario como distinto de los eventos
secundarios. Lo cual ocasiona una lista de eventos muy extensa.
Bibliografía
E.Y.(cap.18)
ACTIVIDADES
1. ¿Qué es el modelo ambiental?, ¿Cuál es su objetivo? y ¿Cuáles son sus componentes?
2. ¿Qué es un evento?
3. Mencionar y describir los tipos de eventos. Dar cinco ejemplos de cada tipo de evento.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
24
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
4. ¿Qué es y para qué sirve la lista de eventos?
5. ¿Qué es el diagrama de contexto?, ¿Cuáles son sus componentes?
6. ¿Qué relación existe entre el diagrama de contexto y la lista de eventos?
7. Dar dos ejemplos de D.C.
8. ¿Qué es la declaración de propósitos?, ¿Qué no debe ser?
9. Dar dos ejemplos de D.P.
MODELO DE COMPORTAMIENTO
El modelo ambiental modela el exterior del sistema. El modelo de comportamiento modela el interior del
sistema. Estos modelos no son cosas aisladas, todo lo contrario. El modelo de comportamiento describe
como y que hace el sistema actual:
• para cumplir con los propósitos (D.P.)
• cuando ocurre un evento (L.E.)
• que hace con las entradas y como produce las salidas, de y hacia el M.A. (D.C).
Herramientas
• D.F.D. : Diagrama Flujo de Datos
• D.S.: Diccionario del Sistema.
• D.E.R.: Diagrama Entidad Relación
• D.T.E.: Diagrama Transición de Estados
D.F.D.: Diagrama Flujo de Datos
Permite visualizar el sistema como una red de procesos funcionales, conectados entre sí por flujos de
datos y almacenamientos. El D.F.D. es un modelo lógico del sistema que representa transformaciones,
procesos de datos y algo de control. Es un modelo lógico porque no depende del hardware, software,
estructuras de datos, no tiene implicaciones físicas.
Componentes:
• Proceso - Transformación - Burbuja
•
Flujos de Datos
•
Almacenamientos
•
Entidad Externa - Terminador
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
25
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Procesos: burbuja, función o transformación. El proceso transforma una/s entrada/s en una/s salida/s.
Es una acción.
La etiqueta (nombre) de una burbuja debe llevar un verbo en infinitivo y debe ser lo más aproximado a
lo que hace. Deben usarse nombres significativos y evitar la ambigüedad.
Facturas_clientes
Calcular
Iva
Ventas
Iva-ventas
Flujos de datos: paquete de datos en movimiento, que fluyen y circulan por el sistema,
transformándose. Es información. Por ejemplo los formu larios.
Los flujos tienen dirección. Las etiquetas son sustantivos adjetivados y deben ser precisos.
a
El flujo a es una entrada al proceso
b
El flujo b es una salida del proceso
Almacenamiento: es una colección de paquetes de datos en reposo. Allí se guarda información que
será consultada y actualizada (modificada). Los sistemas siempre tienen almacenamientos, ya que no
pueden recordar toda la información que manejan y necesitan.
Se etiquetan con sustantivos en plural y significativos. En la realidad encontramos almacenamientos en
ficheros, biblioratos, discos magnéticos, canastas, etc. Estos pueden ser permanentes o temporales.
Facturas
facturas
cliente
Calcular
iva ventas
iva
ventas
Se consulta información
guardada
Facturas
Se actualiza, se guarda
nueva información
pedidos
Facturar
pedidos
•
facturas
cliente
La actualización de un almacén implica los siguientes sucesos:
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
26
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Se está agregando mas información, se está eliminando información, se está cambiando la información
que posee. (la flecha llega al almacén)
•
La consulta de un almacén significa que la información se accede pero luego de esta operación, el
almacén permanece exactamente igual, nada cambiado. (la flecha sale del almacén)
Entidad Externa: son las descriptas en el diagrama de contexto. Tienen las mismas características.
Ejemplo: El departamento de ingreso de una universidad al comienzo de cada semestre recibe
inscripciones de ingreso a las carreras que dicta.
Para ello los aspirantes deben entregar una serie de documentación (fotocopia dni, fotocopia del titulo
secundario, fotos carnets, etc.) y llevar la solicitud de inscripción completa.
Además los aspirantes asisten a un curso de ingreso, en el cual son evaluados. Los profesores de este
curso entregan las calificaciones de los alumnos al departamento de ingreso.
El departamento de ingreso para confeccionar las listas de cursado de 1er. Año verifica que el alumno
tenga el curso aprobado y toda la documentación completa.
Modelo Ambiental
D.P.
El propósito del sistema del departamento de ingreso es recibir la inscripción de los aspirantes y
confeccionar las planillas de cursado de 1er. Año.
L.E.
Se recibe solicitud de inscripción y documentación
Se recibe calificación del curso de ingreso
Se confeccionan planillas de cursados.
D.C.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
27
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
sol.ing.
y doc.
ALUMNO
SISTEMA
DE
IINGRESO
planillas
cursado
calificaciones
PROFESOR
Modelo de Comportamiento
D.F.D. nivel 1
sol.ing.
y doc.
1
Recibir
inscripcion
aspirante
2
Rececpcio
nar calific.
curso
ALUMNO
INSCRIPCIONES
calificaciones
CALIFICACIONES
3
Preparar
planillas
cursado
PROFESOR
planillas
cursado
Reglas para construir un D.F.D.
• No colocar más de 9 burbujas por nivel.
• Utilizar etiquetas (nombres) precisas, reales, claras y significativas.
• Numeración de burbujas: de izquierda a derecha y de arriba hacia abajo (no significa
secuenciación).
• Balanceado respecto del nivel anterior.
• No debe ocupar más de una carilla.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
28
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Errores típicos
• En un almacenamiento entran flujos y nunca se utiliza la información.
•
En un almacenamiento se consulta información que nunca se guardo.
•
Un proceso genera salidas sin entradas.
•
Un proceso que no genera salidas, solo recibe entradas.
•
Dos almacenamientos que se comunican directamente.
•
Relaciones entre entidades externas
Posibles errores (analizar especialmente)
• Una entidad externa tiene acceso a un almacenamiento del sistema. La mayoría de los autores
coinciden que esta representación es incorrecta, excepto Yourdon. Para nosotros es una situación
poco comú n pero posible.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
29
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
•
Casi siempre entre dos procesos existe al menos un almacenamiento puesto que los procesos no
son sincrónicos, es una situación poco común que se comuniquen en forma directa, principalmente
si se trata de procesos fuertes.
Los procesos se comunican a
través de un almacén.
Los procesos se comunican
directamente (poco común).
Explosión o Expansión de burbujas
Por lo general el nivel 1 del D.F.D. (primer D.F.D. que se realiza) da un panorama general de lo que
hace el sistema, muestra las funciones más importantes. Pero no da detalles precisos de cómo se hace
cada operación, es decir, no describe las subfunciones que componen a una función compleja. Por lo
que es necesario explotar, y pasar a niveles mas detallados.
Cada burbuja del nivel 1 se toma y de ella se hace otro D.F.D., lo que se denomina "explosión",
pasando a un nivel 2, que otorga una descripción más específica de la función.
•
•
•
•
Se dice que la burbuja 1 es madre de las burbujas resultantes de su explosión: 1.1, 1.2, etc.
Al explotar la numeración de las burbujas obtenidas se compone de todos los niveles precedentes y
el número correspondiente según su ubicación en el D.F.D.
En una explosión surgen almacenamientos y flujos internos.
Una explosión debe estar balanceada respecto de la burbuja madre.
¿Cuántos niveles de descomposición o hasta cuando explotar?
• Hasta que la burbuja sea una primitiva funcional, es decir una función atómica, hace una solo cosa y
no se puede descomponer.
• Se recomienda no hacer mas de seis niveles.
El proceso de descomposición se denomina TOP-DOWN o descendente, se va de arriba
hacia abajo. De lo mas general a lo más específico.
Los D.F.D. se hacen, se revisan, se corrigen y se vuelven a hacer tantas veces como sea necesario.
Seguramente ocurrirá que al obtener mas detalles específicos, se deba corregir cosas ya realizadas. Lo
cual esta bien. Este es uno de los propósitos.
Procesos y flujos de control
♦ Procesos fuertes: transforman una/s entrada/s en una/s salida/s, actualizan almacenamientos.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
30
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
♦ Procesos débiles: procesos de control, no transforman, no actualizan, solo realizan controles,
validaciones, verificaciones, chequeos necesarios para que luego se realice algún proceso fuerte.
Los procesos de control son siempre primitivas funcionales, siempre se encuentran en el último nivel
(más bajos) de explosión.
CLIENTES
pedido
4.5
Verificar
saldo
no-ok
4.6
Rechazar
pedido
pedido
ok
4.7
Facturar
pedido
RECHAZOS
FACTURAS
¿Cómo empezar?
Realizado el modelo ambiental, lo que más cuesta es hacer el D.F.D. de nivel 1, hay distintos enfoques
que permiten construir el primer D.F.D. preliminar:
♦ Enfoque Yourdon
♦ Enfoque De Marco
♦ Otros Enfoques
1. Enfoque Yourdon
♦ Para cada evento de la lista de eventos se crea una burbuja.
♦ Se da un nombre acorde al evento.
♦ Se dibujan las entradas y salidas de tal forma que la burbuja de la respuesta requerida, y se agregan
los almacenamientos en forma apropiada, para que las burbujas puedan comunicarse.
♦ Se balancea respecto del modelo ambiental.
Puede resultar que quedan mas de 9 burbujas, porque se tienen mas de 9 eventos, entonces se debe
buscar burbujas afines, para agruparlas, en una burbuja madre, lo que se denomina implosión.
2. Enfoque De Marco
Se analiza e identifican las funciones principales del sistema, es decir los subsistemas y se dibuja una
burbuja para cada uno. Se agregan las entradas y salidas y almacenamientos. Y luego se balancea y se
explota.
3. Otros Enfoques
♦ El D.F.D. es la explosión del D.C. Comenzar desde algún extremo, por los flujos de datos a partir de
las entidades externas. Puede ser desde donde se originan las entradas o desde donde se producen
las salidas.
♦ Algunos autores sugieren partir de una descripción textual del problema, de la cual se obtendrá una
lista de los componentes del D.F.D.:
a. Identificar los orígenes y destinos de los datos (entidades de externas) e incluirlos en la lista.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
31
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
b. Identificar los procesos que realiza el sistema, es decir cualquier hecho que modifique o
transforme los datos, y agregarlos a la lista.
c. Considerar los almacenes de datos y los flujos de datos, no todos se deducirán directamente de
la descripción del problema, algunos están implícitos y se agregan a la lista.
d. Una vez identificados todos o casi todos los componentes se dibuja el D.F.D.
Se utiliza cualquier enfoque o una combinación de ellos, lo importante es obtener un D.F.D. preliminar
que en posteriores revisiones con el usuario se ira ajustando de manera de representar a la realidad, de
una manera clara.
Ventajas de construir el D.F.D.
♦ Simbología simple y sencilla.
♦ Permite ver el sistema desde distintos niveles de detalle.
♦ Facilita la comunicación con los usuarios.
Sí un D.F.D. es tan complejo, que no lo entienden los usuarios o el resto de los integrantes del
equipo y quizás ni quien lo hizo, simplemente no sirve. Se hace nuevamente. Los D.F.D. se
hacen tantas veces como sea necesario, hasta que describan de la manera más exacta y clara al
sistema que se está estudiando.
Bibliografía:
E.Y. (cap.9-19), K.K.(cap.9),I.T.H.(cap.6), W.D.(cap.5), R.C.(cap. 16)
ACTIVIDADES
1. ¿Cuál es la diferencia entre un D.C. y un D.F.D.?
2. Analice y responda.
a. Indique tres sinónimos de D.F.D.
b. ¿Para qué se pueden utilizar los D.F.D. aparte de modelar un sistema de información?
c. Indique tres sinónimos de proceso
d. ¿Cómo pueden tener distinto significado un paquete de datos en un D.F.D.?
e. ¿Existe un límite para el número de entradas y salidas que puede tener un proceso en un D.F.D.?
f. Indique tres sinónimos para almacenamiento.
g. ¿Qué significa un flujo no etiquetado que entra o sale de un almacenamiento?
h. ¿Existe límite para el número de flujos que entran o salen de un almacenamiento? De ser así, señale dicho límite.
i. ¿Cuáles son las cuatro posibles interpretaciones de un flujo de datos de un almac én a un proceso?
j. ¿Son peligrosos los flujos de datos no etiquetados? ¿Porqué?
k. ¿Cuál serie la mala interpretación de numerar las burbujas del D.F.D.?
l. ¿Es posible para el analista cambiar los contenidos y funciones de las entidades externas?
ll. ¿Son peligrosos los procesos no etiquetados? ¿Porqué?
m. ¿Cuál es la diferencia entre proceso de control y proceso fuerte?
3. ¿Qué es una primitiva funcional?
4. Diferencia entre procesos físicos y procesos lógicos.
5. Diferencia entre flujos físicos y flujos lógicos .
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
32
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
D.S.: Diccionario del Sistema
Los D.F.D. son insuficientes para describir por si solos un sistema, se necesita otra herramienta que lo
complemente, o como se dice, "documente".
El D.S. es un deposito de información de los elementos del D.F.D., es decir, es la catalogación de los
flujos, procesos y almacenamientos del D.F.D.
Finalidades del D.S.:
♦ Documentar las características del sistema.
♦ Manejar detalles en grandes sistemas.
♦ Dar un significado común para todos los elementos del sistema.
♦ Localizar errores y omisiones.
♦ Validar el D.F.D. y confirmar que este completo y correcto.
Componentes del D.S.:
D.D.
(Diccionario de Datos)
Elementos de dato
Flujos de dato
Almacenamientos
Estructuras de datos
D.S.
D.P.
(Diccionario de Procesos)
Supongamos el siguiente segmento de un D.F.D. para definir en el diccionario todos sus componentes:
CLIENTES
NP
FACTURAS
3.5
Facturar
NP
PRECIOS
FC
NP
NPS
Donde el flujo de datos NP (nota de pedido) es el formulario que a continuación se dibuja:
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
33
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Nota de Pedido
Nº:
Nombre:
Apellido:
Dirección:
Cod. Artículo
Fecha:
Descripción
Cant.
Tipo de Pago:
Lugar de Entrega:
•
Diccionario de Flujos de Datos
_________________________________________________________
Flujo de datos: NP
Descripción: NOTA DE PEDIDO DEL CLIENTE
Contenido: nnp + fecha + apellido + nombre + direccion+ {codart + desc
+ cant} + tp + (le)
Origen: CLIENTE
Destino: 3.5 FACTURAR NP
Observaciones: -------------------------------_________________________________________________________
Los flujos de datos y los almacenamientos son estructuras de datos porque se componen de elementos
de datos y/o otras estructuras de datos. Los flujos de datos y estructuras se describen citando: su
nombre, descripción (si el nombre es una abreviatura o sigla), contenido (componentes de la
estructura), origen (donde se inicia la estructura, puede ser una entidad externa, proceso,
almacenamiento), destino (donde se dirige la estructura, puede ser una entidad externa, proceso,
almacenamiento) y observaciones (para citar cualquier detalle que se considere importante)
Continuando con el ejemplo, hay que definir los componentes del flujo de datos NP, lo que se ha
especificado en el contenido.
Algunos de sus componentes son estructuras de datos y otros son elementos de datos. Las estructuras
de datos son datos compuestos que pueden volver a descomponerse, como fecha.
_________________________________________________________
Estructura de datos: FECHA
Descripción: --------------------------------------Contenido: dia + mes + año
Origen: NP
Destino: NP
Observaciones: -------------------------------_________________________________________________________
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
34
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
• Diccionario de elementos de datos
Los elementos de datos son datos simples o atómicos que no pueden descomponerse. Es muy raro
encontrarlos en el D.F.D., lo mas común es que un conjunto de elementos de datos sean el contenido
de una estructura de datos, flujo de datos y/o almacenamiento. Cuando se define un elemento de dato
en el diccionario se especifica el nombre, la descripción, tipo (numérico, entero, real, cadena,
alfanumérico), longitud, rango(sí tiene), valores específicos(sí tiene) y observaciones (sí son
necesarias).
_________________________________________________________
Dato el emental: dia
Descripción: --------------Tipo: numérico
Longitud: 2
Rango: 1-31
Valores Específicos: ------------------------Observaciones: -------------------------------_________________________________________________________
_________________________________________________________
Dato elemental: nombre
Descripción: --------------Tipo: alfabético
Longitud: 30
Rango: ---------------------Valores Específicos: ------------------------Observaciones: -------------------------------_________________________________________________________
_________________________________________________________
Dato elemental: domicilio
Descripción: --------------Tipo: alfanumérico
Longitud: 30
Rango: ---------------------Valores Específicos: ------------------------Observaciones: -------------------------------_________________________________________________________
_________________________________________________________
Dato elemental: tp
Descripción: Tipo de Pago
Tipo: alfabético
Longitud: 7
Rango: ---------------------Valores Específicos: [credito/contado]
Observaciones: -------------------------------_________________________________________________________
•
Diccionario de Almacenamientos
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
35
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Los almacenamientos se especifican citando nombre, descripción, contenido, número y nombre de los
procesos que lo actualizan y consultan, volumen (cantidad estimada y promedio de paquetes datos que
guarda expresado en razón de tiempo), acceso (directo o secuencial), ordenamiento (el dato elemental
por el cual se estable el orden de almacenamiento).
_________________________________________________________
Almacenamiento: NPS
Descripción: Archivo de Notas de Pedido
Contenido = NP
Proceso que lo actualiza: 3.5 Facturar NP
Proceso que lo consulta:
Volumen: 500 mensuales
Acceso: directo
Ordenamiento: número de np
Observaciones: -------------------------------_________________________________________________________
Para describir ciertas características de las estructuras de datos se utilizan símbolos que representan
distintas relaciones:
Símbolo
=
+
{}
[]
()
Significado
Esta compuesto de
Y (Conjunción)
Iteración o repetición de componentes
O (Disyunción)
Opcional - no obligatorio
• Diccionario de Procesos
Cada burbuja del D.F.D. se define en el diccionario, pero solo las primitivas funcionales llevan mayor
nivel de detalle o resumen de la lógica o "especificación de proceso".
El propósito es claro, definir lo que se debe hacer para que una entrada se convierta en salida, explicar
de un modo claro y lo mas preciso posible que hace el proceso.
Se debe tener en cuenta que esta descripción de proceso debe ser comprensible, no solo el analista
que la escribe debe entenderla. No debe incluirse ninguna característica técnica (lenguaje de
programación, algoritmos)
•
Definición de procesos que "no" son primitivas funcionales:
pedido
FC
5
Facturar
Pedido
fc
recibo
RECIBOS
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
36
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
_________________________________________________________
Proceso: 5. FACTURAR NP
Descripción: FACTURAR NOTAS DE PEDIDO
Entradas: PEDIDO
Salidas: FC - RECIBO
Almacenamiento que actualiza: RECIBO, FC
Almacenamiento que consulta: -------Especificación de Proceso: 5.1 Generar Factura
5.2 Verificar Factura
5.3 Confeccionar Rec.
5.4 Registrar deuda
Observaciones: -------------------------------_________________________________________________________
• Definición de Primitivas funcionales:
Los procesos que son primitivas funcionales se describen de la misma manera, excepto en la
especificación de proceso se realiza un resumen de la lógica utilizando alguna de las siguientes
herramientas: Pseudocódigo, Pre y Post Condición, Tablas o Arboles de Decisión, Narrativa, Diagramas
de Flujo o Diagramas N-S (Nassi/Shneiderman)
pedido
5.1
Generar
Factura
factura
DEUDAS
5.2
Verificar
Factura
RECIBOS
5.4
Registrar
deuda
5.3
Confecci
onar rec.
fc
fc
_________________________________________________________
Proceso: 5.2 VERIFICAR FACTURA
Descripción: ---------------Entradas: FACTURA
Salidas: --------Almacenamiento que actualiza: -------Almacenamiento que consulta: DEUDAS
Especificación de Proceso:
Si tp de PEDIDO = contado
Entonces 5.3 Confeccionar recibo
Sino
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
37
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Si tp de pedido = credito ∧ cliente no esta en DEUDAS
ENTONCES 5.4 Registrar nueva DEUDA
Observaciones: -------------------------------_________________________________________________________
Esta especificación de proceso se ha escrito en pseudocódigo, pero se podría utilizar cualquiera de las
herramientas:
Tabla de Decisión
Tp = contado
Tp = credito
Tiene deuda
No tiene deuda
X
X
X
X
X
X
X
X
Confeccionar recibo
Registrar nueva deuda
Nada
Pre y Post condición
Precondición 1
Tp = contado
Postcondicion 1
Confeccionar recibo
Precondicion 2
Tp = credito ∧ cliente no tiene deuda
Postcondicion 2
Registrar nueva deuda
Herramientas de especificación de procesos
1. Pseudocódigo o lenguaje estructurado
• No incluir ningún aspecto de programación (parámetros, tipos de datos, sintaxis)
• Utilizar verbos comunes como guardar, buscar, ingresar, aceptar, calcular, sumar
• Utilizar estructuras de control secuencial, selección e iteración
• Utilizar los datos de los flujos de entrada, salida y almacenamiento
• No es un programa
FACTURAS
fc
I.B.
8.3.1
Calcular
Total
10.5
Calcular
I.Neto
TD
TD=0
Mientras hay fc en FACTURAS
TD=TD+TOTAL_FC
I.N.
IN=(IB*25/100)+IB
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
38
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
I.B.
datos_cli
10.5
Calcular
I.Neto
SI IB > 100 ENTONCES
IN=(IB*25/100)+IB
SINO
IN=(IB*13/100)+IB
I.N.
7.6
Registrar
NP
CLIENTES
LEER nombre, apellido, tel, domicilio
Guardar datos_cli en CLIENTES
Si una especificación en pseudocódigo es muy larga y hace muchas cosas, la burbuja no
es una primitiva funcional. Debe ser explotada.
2. Tablas y árboles de decisión
Su construcción y representación es la misma que se ha aplicado en el relevamiento. Solo que en las
condiciones participaran flujos de datos, elementos de datos, almacenamientos ya definidos y las
acciones se refieren por lo general a salidas (flujos de datos y almacenamientos) o activación de otros
procesos (el caso de las burbujas de control.)
3. Pre - Post Condiciones
Es una manera conveniente de describir la función que debe realizar el proceso, sin decir mucho acerca
del algoritmo o procedimiento que se utilizará. Es muy útil cuando el analista esta seguro de que existen
muchos algoritmos distintos que pueden utilizarse, lo cual debe decidirlo el diseñador o programador.
Precondición 1
I.B.
10.5
Calcular
I.Neto
I.N.
Ocurre I.B.
Postcondición 1
IN se hace igual a IB+(IB*15/100)
Se compone de dos partes: precondición y la postcondición.
Precondición: describen todas las cosas (si hay) que deben darse (ser verdaderas) antes que el proceso
se ejecute. Generalmente describen:
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
39
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
•
Entradas: que llegan a través de flujos de datos
X
Y
Precondición
Dados X, Y, Z
Z
W
•
Relación entre las entradas
Precondición
Se dan X, Y, W donde X es mayor 100 y W es distinto de Y.
•
Relación entre entradas y almacenes de datos
DATOS X
X
Y
Z
W
Precondición
Se dan X, Y, W. X esta en DATOSX
•
Relación entre distintos almacenes o en un mismo almacén.
ARTICULOS
Calcular
reposicion
solicitud
de reposición
Precondición
Existe un articulo stock_actual es menor o igual a stock_minimo
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
40
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Postcondición: describen lo que debe darse (lo que será verdad) cuando el proceso ha concluido.
Generalmente describen:
• Las salidas que producirá el proceso
Postcondición
IN se hace igual a IB + (IB*15/100)
•
La relación que exista entre las salidas y las entradas
Postcondición
IN se hace igual a IB + (IB*15/100)
•
La relación que exista entre las salidas y los almacenes
Postcondición
Solicitud de reposición se hace igual a código de artículo y descripción de articulo
•
Los cambios que se hayan dado en los almacenes (actualizaciones)
Postcondicion
Se elimina el cliente de CLIENTES.
4. Narrativa
Descripción breve y concisa en lenguaje coloquial de lo que hace lógicamente el proceso. Aun así, no
se recomienda ya que la posibilidad de caer en ambiguedad y la forma en que se expresan las
decisiones y repeticiones no resulta clara. Es importante que sea corta.
Ejemplo: el total facturado se obtiene sumando los totales individuales de todas las facturas del mes.
5. Diagrama de Flujo
Es una herramienta gráfica muy utilizada para describir procedimientos. Pero es un método del que se
ha abusado sin respetar sus limitaciones respecto de control, decisiones y bucles. La lógica de un
procedimiento se representa mediante la combinación de dos símbolos, el rectángulo y los rombos y
con las flechas se representa el control.
Los rectángulos representan enunciados (asignaciones, lecturas, escrituras) y los rombos condiciones
booleanas.
F
1er.tarea
V
2da.tarea
SECUENCIA
SELECCION
Esta herramienta es conveniente cuando el proceso es corto y sencillo y no posee demasiadas
selecciones y bucles anidados.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
41
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
F
F
V
V
ITERACION
(repetir)
ITERACION
(mientras)
Ejemplo :
T=0
F
hay fc.
V
leer fc.
T = T+totfac
6. Diagramas N-S (Diagrama de cajas)
Es una herramienta gráfica más conveniente que la anterior, dado que su forma no permite que se viole
la construcción estructurada. Características:
• Ambito funcional bien definido y claramente visible
• Transferencia de control arbitrario es imposible
• Se puede determinar fácilmente el ámbito de los datos locales y/o globales
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
42
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
• La recursividad es fácil de representar
Simbología:
condicion
tarea 1
F
condicion
mult.
V
valor
tarea 2
valor
valor
valor
tarea 3
SECUENCIA
SELECCION
SELECCION MULTIPLE
condición
condición
ITERACION
(mientras)
ITERACION
(repetir)
Ejemplo
T=0
hay nas facturas
leer factura
T = T + totfact
BIBLIOGRAFIA:
E.Y. (cap.10-11), K.K. (cap. 10-11), I.T.H. (cap. 9-10), W.D. (cap.6-7-10), R.C. (cap.16)
ACTIVIDADES
1. ¿Qué es el Diccionario del sistema?, Para qué sirve? Como esta formado
2. Describa el D.D. completo para un D.N.I.
3. ¿Puede usarse la misma estructura de datos para definir varios y distintos flujos de datos y/o almacenamientos?
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
43
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
4. ¿Puede usarse el mismo elemento de dato para definir varios flujos de datos y/o almacenamientos y/o
estructuras de datos?
5. En caso de obtener respuestas afirmativas en los puntos 3 y 4 ejemplificar, caso contrario fundamentar las
respuestas.
6. ¿Puede la especificación de procesos determinar que una burbuja no es primitiva funcional?
7. Ejemplifique cada herramienta de especificación de procesos en forma adecuada, y fundamente la elección de
la herramienta utilizada en cada caso.
D.E.R.: Diagrama Entidad Relación
El D.E.R. es la representación (gráfica) de los datos del sistema y sus relaciones, independientemente
de las funciones y procesos que operan sobre ellos. Es un modelo conceptual y semántico. Su propósito
es representar que significan los datos en la realidad.
Es decir, describe las características de los datos, en forma abstracta.
Componentes:
♦ Entidades
♦ Relaciones
•
Entidades: se representan mediante el rectángulo. Son cosas u objetos del mundo real, abstractas
o concretas, tangibles o intangibles. Estos objetos, por su cantidad y características no pueden ser
recordadas por el sistema, es decir en un sistema encontraremos un conjunto de entidades del
mismo tipo.
Por ejemplo: la entidad Juan Perez es un cliente, pero además José Gomez y Ana Martinez también
son clientes de la empresa, es decir son entidades del mismo tipo.
CLIENTES
Jose Gomez
Juan Perez
UNIDADAna
ACADEMICA
Martinez RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
44
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Este conjunto de entidades, al cual llamaremos CLIENTE, se representa:
CLIENTE
Una entidad se describe por sus atributos, un atributo es una propiedad o una cualidad, es lo que se
puede decir de la entidad. Por ejemplo los atributos de la entidad cliente son nombre, dirección y
teléfono entre muchos otros.
Juan Perez
Roca 1510
25897
Jose Gomez
Salta 328
39027
Ana Martinez
Zapiola 574
42805
Los atributos también se representan en el D.E.R.:
direccion
telefono
nombre
CLIENTE
CLIENTE
nombre
direccion
telefono
Las entidades tienen muchos atributos, solo se indican aquellos que para el sistema de análisis son
relevantes, por ejemplo de un cliente interesa su dirección porque es necesario enviarle mercaderías y
correspondencia, sin embargo la altura de un cliente es un atributo, que para nuestro sistema no tiene
ninguna relevancia, por lo tanto, se ignora.
•
Relación: Asociación o vinculación entre dos o más entidades. En un sistema existe un conjunto de
relaciones del mismo tipo. Muchas veces la relación tiene atributos propios, es decir, determinadas
propiedades que solo ocurren cuando dos entidades se relacionan.
CLIENTES
ARTICULOS
COMPRA
Jose Gomez
lapiz
Juan Perez
calculadora
Ana Martinez
reloj
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
45
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Dos entidades CLIENTES y ARTICULO se relacionan cuando un cliente realiza la COMPRA de un
artículo. Algunos clientes compras uno o varios artículos, y algunos artículos son comprados por uno o
varios clientes. Algunos clientes quizás no compren y algunos artículos no son comprados por ningún
cliente. Las "instancias" de las entidades, son las entidades individuales, o los valores reales que
pueden asumir cada uno de los elementos del conjunto, en este caso las instancias de CLIENTES son
Juan Perez, Ana Martinez y Jose Gomez. Una relación es una asociación entre instancias de entidades.
Para el ejemplo citado, el D.E.R. correspondiente sería:
direccion
detalle
telefono
nombre
compra
CLIENTE
precio
ARTICULO
D.E.R.
Si la relación (representada mediante un rombo) posee atributos propios, estos deben representarse en
el diagrama:
direccion
telefono
detalle
fecha
precio
nombre
compra
CLIENTE
ARTICULO
Cardinalidad
En una relación que asocia a dos o más entidades, la conexión entre las instancias de las mismas
puede tener distintos tipos de cardinalidad. Por ejemplo una relación entre dos entidades, A y B, puede
asociar una instancia de A con 1 y/o más instancias de B y viceversa.
•
1-1: Una instancia de A se relaciona a lo sumo con una instancia de B y viceversa.
HOMBRE
casado
MUJER
"Un hombre esta casado solo con una mujer y una mujer esta casada con un solo hombre."
•
1-n: Una instancia de A se relaciona con 0, 1 o varias instancias de B, pero cada instancia de B esta
asociada a lo sumo con una de A.
JUGADOR
integra
EQUIPO
"Un jugador de futboll juega en un solo equipo, pero en un equipo hay varios (n) jugadores"
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
46
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
•
n-1: Las instancias de A pueden asociarse a lo sumo con una de B, y cada instancia de B puede
asociarse con 0, 1 o mas instancias de A.
ESCUELA
estudia
ALUMNO
"Una escuela tiene muchos(n) alumnos, cada alumno pertenece a una única escuela"
•
n-m: Las instancias de A se asocian con cualquier cantidad de instancias de B y viceversa.
ALUMNO
cursa
MATERIA
"Un alumno cursa varias (n) materias, una materia es cursada por varios (m)alumnos."
¿Qué puede ser una entidad?
Se debe analizar si la entidad es importante para el sistema, es decir si sus propiedades deben ser
recordadas y almacenadas. Suelen aparecer entidades en:
• Papeles/transacciones/formularios: pedido, factura, recibo, etc.
• Objetos reales: artículos, maquinarias, empleados, clientes, alumno, etc.
• Entidades Externas: cliente, alumno, empleado, proveedor, etc.
• Abstracciones: materia, curso, proyecto, vuelo.
Construcción del D.E.R.
1. Identificar conjuntos de entidades del sistema.
2. Analizar su interacción y definir relaciones.
3. Identificar atributos descriptivos.
4. Determinar identificadores.
Identificador: es aquel atributo o conjunto de atributos de una entidad que permite identificar a un
miembro del conjunto de otro en forma unívoca. Debe ser subrayado.
En las relaciones el identificador se compone por los identificadores de las entidades que participan de
la relación.
ALUMNO
nombre
direccion
telefono
dni
Dos alumnos pueden tener el mismo nombre, teléfono y dirección, por lo tanto estos atributos no
identifican de manera unívoca a cada instancias del conjunto, pero el DNI, es distinto para cada alumno,
estamos seguros que no existirán dos alumnos con el mismo DNI.
Tipos de relación
•
Relación Binaria: es una relación que asocia a dos entidades.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
47
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
•
Relación n-aria: Es una relación que asocia a más de dos entidades.
Generalización: En ocasiones conviene representar las entidades como una generalización, esto es
conveniente cuando las entidades poseen un subconjunto de características iguales (atributos en
común) y un subconjunto de atributos distintivos. Esta particularidad se resalta ubicando las entidades
en distintos niveles en el diagrama.
EMPLEADO
legajo
nombre
domicilio
is a
sueldo
categoria
antiguedad
EFECTIVO
CONTRATADO
duracion
valor_hora
Entidades dependientes o débiles: En ocasiones ocurre que existen entidades que solo importan si
existen otras. Es decir por si solas no son importantes para el sistema.
EMPLEADO
HIJO
Consideraciones:
♦ El D.E.R. es un modelo que describe con alto nivel de abstracción la distribución de los datos del
sistema, su significado y sus relaciones.
♦ Es importante por que enfatiza el sentido de los datos independientemente de las funciones,
procesos y el control que operan sobre ellos y que realiza el sistema.
♦ A los usuarios de mas alto nivel le importa mas la información que los procesos.
♦ Algunos sistemas son solo de consultas, por lo cual el D.F.D. no es muy importante o complejo, pero
el D.E.R. es vital
♦ Cada entidad y relación del D.E.R. es un almacenamiento del D.F.D. Luego de construir el D.E.R.
deberá chequearse el D.F.D. y el D.D. y balancearse.
♦ El D.E.R. se hace antes, durante o después de la construcción del D.F.D.
♦ En el modelo de comportamiento deben estar ambos D.F.D. y D.E.R., no son excluyentes, son
complementarios ya que enfatizan aspectos distintos del comportamiento del sistema.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
48
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
BIBLIOGRAFIA
I.T.H. (cap.7-8), R.C. (cap.15), E.Y.(cap.12)
ACTIVIDADES
1. Escribir 3 ejemplos de entidades, indicar sus atributos e identificador.
2. Escribir 2 ejemplos de relaciones binarias.
3. Escribir un ejemplo de relación n-aria.
4. Escribir ejemplos para relaciones de cardinalidad 1-1, 1-n, n-1 y n-m.
5. ¿Una entidad con un solo atributo es una entidad?
6. ¿Qué ocurre si el valor de un atributo es igual para todo el conjunto de entidades?
7. Dar dos ejemplos de entidades débiles.
8. Dar dos ejemplos de generalización.
D.T.E.: Diagrama Transición de Estados
El D.T.E. es una herramienta que modela el comportamiento dependiente del tiempo del sistema
(modela el control).
Estado 2
Estado 1
Estado 2
Estado 3
Estado 2
Estado 4
Estado 3
Estado 5
Estado 6
Componentes
• Estados
• Cambios de estado
•
Estados del sistema: se representa con un rectángulo. Un estado es una situación en el que se
encuentra el sistema y permanece un determinado tiempo, donde el tiempo no es infinito ni cero.
Ejemplos:
Esperar a que se levante la barrera.
Pasar el cruce de tren.
Retomar el camino.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
49
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Cargar datos del cliente.
Valiad datos del cliente.
Grabar datos del cliente.
En la mayoría de los casos el sistema esta esperando que algo ocurra. Cualquier estado observable en
que el sistema se pueda encontrar, solo puede corresponder a periodos en que:
1. el sistema esta esperando que algo ocurra en el ambiento externo.
2. el sistema esta esperando que alguna actividad que se esta dando en ese momento en el ambiente
cambie a otra (finalice para hacer otra).
Un sistema en el que se observa un solo estado no es muy interesante, es estático. Los sistemas
de información describen muchos estados.
•
Cambios de Estado: son aquellas reglas ordenadas, claras, precisas (significativas y válidas) que
hacen que el sistema pase de un estado a otro, deben ser observables. Se representan con flechas
entre los estados.
Estado inicial: Generalmente se dibuja en la parte superior del diagrama aunque no es obligatorio, lo
que realmente identifica al estado inicial es la flecha desnuda que no sale de ningún estado, solo llega
al primer estado observable del sistema.
Flecha desnuda
Estado 1
Estado Inicial
Cambio de
Estado
Estado 2
Estado
Cambio de
Estado
Estado 3
Estado Final
Estado Final: Generalmente se dibuja en la parte inferior del diagrama, pero no es obligatorio, lo que
realmente identifica a un estado como final, es que de él no sale ninguna flecha (una vez que llega a
ese estado no pasa a ninguno otro).
Estado 1
Estado 2
D.T.E. incorrecto.
No tiene estado final.
Estado 3
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
50
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Un sistema (D.T.E.) puede tener solo un estado inicial y puede tener uno o varios estados finales.
Cuando tiene varios estados finales, estos son mutuamente excluyentes.
Condiciones y Acciones:
• Condición: causan cambios de estado (reglas)
• Acción: lo toma el sistema cuando cambia de estado.
Estado 1
condición
acción
Estado 2
Estado 1
Estado 2
Estado 3
Estado 4
Estado 5
Estado 6
•
Estado 7
Condición: acontecimiento en el ambiente (externo o no) que el sistema es capaz de observar o
detectar (señ al, interrupción, llegada de un paquete de datos). Como parte del cambio de estado
normalmente el sistema hará una o más acciones (producir salidas, mensajes, cálculos) Las
acciones son respuestas regresadas al ambiente (externo o no)
Ejemplo. Contestador automático.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
51
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Al contestar un llamado, el contestador automático emite el siguiente mensaje: "Ud. se comunico con el 555555,
en este momento no podemos contestarle, deje su mensaje despues de la señal, gracias", el cual dura 15
segundos. Luego emite la señal (pitido) que dura 3 segundos y luego todo lo que capta lo va grabando durante 3
segundos (mensaje del llamador) hasta que se corra la comunicación.
Esperando
llamado
Se producen 3 ring
Contestar
Emitiendo
mensaje
Tiempo > 15 segundos
Enviar señal
Emitiendo Señal
Tiempo > 3 segundos
Grabar
Tomando
Mensaje
Se corta la comunicación
Detener grabación
Finalizar
Grabación
D.T.E. particionados: cuando el sistema es mediano a grande y describe características complejas
resulta complicado colocar todos los estados en un mismo D.T.E., en estos casos se hacen D.T.E.s por
separados.
Construcción del D.T.E.
1. Identificar todos los estados observables posibles del sistema y luego las conexiones entre ellos
(cambios de estado)
2. Hallar el estado inicial, y seguir metódicamente el camino hasta los estados sucesivos.
El D.T.E. se hace tantas veces como sea necesario, seguramente el primero estará incompleto y con
errores, se refina para verificar su consistencia y validez, y para ello hacemos las siguientes preguntas:
1. ¿Se definieron todos los estados?
2. ¿Se puede alcanzar todos los estados?
3. ¿Se puede salir de todos los estados?
4. ¿En cada estado, el sistema responde adecuadamente a todos loas condiciones posibles?
(condiciones normales e inesperadas)
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
52
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Relación D.T.E. - D.F.D.: En la mayoría de los casos el D.T.E. representa una especificación de
proceso de una burbuja de control del D.F.D.
X
1
2
Estado 1
4
Y
3
X = "condición"
activar burbuja 3
X = "condición"
activar burbuja 4
Estado 2
Y = "condición"
Activar burbuja 4
Estado 3
Ejemplo: Cuando se recibe el PE (permiso de examen) de un alumno para rendir el examen final de alguna
materia, primero se determina si es alumno regular o libre y luego se tiene las correlativas aprobadas.
PLAN
PE
1
Determinar
tipo PE
ALUMNOS
2
Chequer
correlativas
libre
OK
3
Actualizar
Acta de
examen
NO-OK
regular
OK
4
Verificar
cursada
ACTAS
5
Rechazar
PE
NO-OK
RECHAZOS
CURSADAS
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
53
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Esperando
PE
PE=libre
chequear
correlativas
correlativas aprobadas
actualizar acta
Chequeando
correlativas
Actualizando
correlativas
acta de examen no aprobadas
rechazar PE
PE=regular
verificar cursada
Verificando
Cursada
cursada
regularizada
chequear
correlativas
cursada no
regularizada
rechazar PE
Rechazando
PE
El D.T.E. es una herramienta más adecuada que el D.F.D. para representar el comportamiento de un
sistema de tiempo real. De todas formas, ambos deben estar presentes en el modelo de
comportamiento.
BIBLIOGRAFIA
E.Y.(cap.13)
ACTIVIDADES
Resolver los ejercicios de E.Y. cap. 13 (pag.300)
BALANCEO
Cada herramienta enfoca un aspecto del comportamiento del sistema de análisis:
♦ D.F.D. → modela las funciones del sistema.
♦ D.E.R. → modela los datos del sistema.
♦ D.T.E. → modela el control del sistema.
Cuando se modelan tres aspectos diferentes de un sistema de información (funciones, datos y control)
es probable obtener diversas interpretaciones o inconsistentes de una misma realidad.
Razones:
• El proyecto es muy grande y/o complejo.
• El análisis es desarrollado por varias personas.
• Las personas que trabajan en el proyecto tienen distinta preparación.
Estos son algunos fundamentos para balancear, es decir verificar, chequear y conciliar los modelos y
herramientas, pero existe otro fundamento que es aun más importante:
Cualquier error de análisis que se cometa, tarde o temprano aparecerá, pero será más difícil y caro (tiempo
y dinero) de solucionar, cuanto más avanzado este el proyecto.
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
54
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
Es necesario, antes de comenzar con el "diseño", balancear, para hallar y corregir los errores, y así
evitar que se propaguen.
Tipos de errores:
1. Errores simples: alguna regla de sintáxis no se ha cump lido al construir algún diagrama. Por
ejemplo:
Un almacenamiento que solo se consulta y nunca se actualiza.
Una burbuja de control actualiza algún almacenamiento.
Se pasa de un estado a otro en un D.T.E., sin un cambio de estado.
Se escribe una postcondición sin la precondición.
Este tipo de errores es muy sencillo de verificar y corregir.
2. Errores de balanceo: algo que se define en un modelo (diagrama o herramienta) esta ausente en
otro.
Por ejemplo:
Un almacenamiento del D.F.D. no le corresponde ninguna entidad del D.E.R.
Un flujo de D.F.D. no esta en D.D.
Un estado del D.T.E. no es una burbuja de control en el D.F.D..
Este tipo de errores es un poco más difícil de detectar, pero su corrección no es muy complicada.
3. Errores de Inconsistencia: la misma realidad se describe de maneras diferentes y contradictorias en
dos modelos. La identificación de este tipo de errores solo es posible si se efectúa una tarea conjunta
en la cual todo el equipo analizará y chequeará los modelos obtenidos y la corrección surgirá de la
puesta en común y requerirá la participación del usuario.
4. Interpretaciones erróneas: el usuario dijo una cosa y el analista representa otra. Este tipo de
errores se debe corregir con la ayuda del usuario.
Los errores simples y de balanceo se detectan y corrigen revisando la documentación, pero los errores
de inconsistencia como las interpretaciones erróneas, se detectan y corrigen corroborando los
resultados obtenidos con los usuarios. Estos dos últimos tipos errores son los más peligros en un
proyecto, deben ser descubiertos y corregidos antes de comenzar con el DISEÑO.
Reglas de Balanceo (errores de balanceo)
1.Cada componente del D.F.D. (excepto las entidades externas) debe estar definido en el D.S., una
vez y con el mismo nombre.
2.Cada definición del D.S. debe corresponder a un componente del D.F.D.
3.Cada almacenamiento del D.F.D. es una entidad o relación del D.E.R. y viceversa
4.Cada atributo de las entidades y relaciones del D.E.R. debe ser un elemento de dato del D.D.
5.Cada burbuja de control del D.F.D. le corresponde al menos un D.T.E. y viceversa
6.Cada evento de la L.E. origina al menos un flujo del D.C. y viceversa.
7.Cada D.T.E. es una definición de burbuja de control del D.P. y viceversa.
8.El D.C. corresponde con los limites del D.F.D. nivel 1 (entidades externas e interfaces) en cantidad
y nombres.
9.La explosión de una burbuja hereda los limites de su madre.
10. Cada condición del D.T.E. es un flujo de entrada del D.F.D. y debe estar en el D.S.
11. Cada acción del D.T.E. es un flujo de salida de una burbuja de control del D.F.D. y debe estar
definido en D.D..
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
55
ANALISIS Y DISEÑO DE SISTEMAS
Lic. Sandra Casas
BIBLIOGRAFIA:
E.Y. (cap.14)
ACTIVIDADES
1. Realice el modelo ambiental y D.F.D.s (2 niveles) que describa el análisis de sistemas.
2. El balanceo es el mecanismo de control del análisis, represente las reglas de balanceo mediante D.T.E.
3. El siguiente D.E.R. representa las relaciones de balanceo entre las herramientas de análisis.
a. Analícelo y verifique si es correcto y completo. En caso de no ser así, mencione los errores y realice las
correcciones necesarias para que cumpla ambas condiciones.
b. Las relaciones pueden leerse de la siguiente manera:
D.C.
R1
D.F.D.
D.F.D.
R2
D.S.
D.E.R.
R5
D.D.
D.E.R.
R3
D.F.D.
D.T.E.
R4
D.F.D.
D.T.E.
R5
D.P.
Coloque un nombre adecuado a las relaciones y complete el cuadro indicando la cardinalidad de las
mismas.
c. Completar el D.E.R. agregando los atributos de las entidades.
D.C.
R1
R4
D.T.E.
D.F.D.
R2
D.S.
R3
D.E.R.
D.D.
D.P
R5
UNIDAD ACADEMICA RIO GALLEGOS
UNIVERSIDAD NACIONAL DE LA PATAGONIA AUSTRAL
56
Descargar