Análisis de Sistemas
M.Sc. Lic. Aidee Vargas C.octubre 2007
Análisis de Sistemas
M.Sc. Lic. Aidee Vargas C.octubre 2007
Metodologías de Desarrollo de Software
• Las metodologías existentes se dividen en dos grandes grupos:
• Metodologías estructuradas
• Metodologías Orientadas a objetos.
Metodologías EstructuradasMetodologías Estructuradas
• Proponen la creación de modelos del sistema que representen los procesos, los flujos y las estructuras de los datos de una manera jerárquica o “top-down”.
• Pasan de una visión general del problema hasta llegar a un nivel de abstracción menor.
• Este enfoque jerárquico se puede focalizar en las funciones o procesos del sistema, en la estructura de los datos, o en ambos aspectos, dando lugar a metodologías orientadas a procesos, a datos y mixtas.
Metodologías EstructuradasMetodologías Estructuradas
Basadas en técnicas gráficas dando lugar al concepto de especificación estructurada.Una especificación estructurada es un modelo gráfico, particionado, descendente y jerárquico de los procesos del sistema y de los datos utilizados por los procesos. Se compone de:
- Diagrama de Flujo de Datos (DFD)- Diccionario de Datos (DD)- Especificaciones o miniespecificaciones de procesos- Diagrama Entidad-Relación (ER)- Diagrama de Transición de Estados
Metodologías EstructuradasMetodologías Estructuradas
Diagramas de Flujo de Datos (DFD). Representan los procesos o funciones que debe llevar a cabo un sistema en distintos niveles de abstracción y los datos que fluyen entre las funciones. Los procesos más complejos se descomponen en nuevos diagramas hasta llegar a procesos sencillos.
Diccionario de Datos (DD). Es el conjunto de las definiciones de todos los datos que aparecen en el DFD, ya sea almacenados o indicados en los diferentes flujos de datos. El diccionario de datos se crea a la vez que los DFD´sdurante el proceso de análisis del sistema.
Metodologías EstructuradasMetodologías Estructuradas
Especificación de un Proceso o Miniespecificación. Define cómo se obtienen las salidas de un proceso sencillo o elemental en función de las entradas al mismo. Existen varias alternativas: el empleo de lenguajes estructurados, diagramas de acción, de flujo, árboles de decisión, tablas de decisión, etc..
Diagrama Entidad-Relación: Se focaliza en los datos del sistema modelado, brindando una visión unificada de los mismos. Los principales elementos de este modelo, como su nombre lo indica, son las entidades y las relaciones, a las que se suman los atributos, de ambas.
Metodologías EstructuradasMetodologías Estructuradas
Diagrama de Transición de Estados: Es un modelo gráfico que focaliza el comportamiento dependiente del tiempo de un sistema o de un recurso de un sistema.
Diagrama de Flujo de Datos (DFD)Diagrama de Flujo de Datos (DFD)
Un DFD es un diagrama en forma de red que representa el flujode datos y las transformaciones que se aplican sobre ellos al moverse desde la entrada hasta la salida del sistema.Se emplea para modelar, en distintos niveles de abstracción, lasfunciones de un sistema y los datos que flujen entre ellas.En los niveles superiores se definen las funciones del sistema en forma general y en los niveles inferiores se definen dichasfunciones de manera más detallada.
Descomposición en Nivelesde un DFD
Descomposición en Nivelesde un DFD
Componentes de un DFDComponentes de un DFD
Procesos, funciones o transformaciones: son loscomponentes funcionales del sistema.
Almacenes: representan datos almacenados o en reposo.
Entidades externas: representan la fuente y/o el destinode la información del sistema.
Flujos de Datos: representan los datos que fluyen entrelas funciones o procesos.
Procesos, funciones o transformacionesProcesos, funciones o transformaciones
•Un proceso puede interpretarse como unafunción que debe llevar a cabo el sistema.
•Debe ser capaz de generar los flujos de datos de salida a partir de los flujos de datos de entrada y de unainformación local.•Un proceso se identifica mediante un número y un nombre, que deben ser únicos en el conjunto de DFDs querepresentan el sistema.•El nombre debe ser breve y lo más representativo posiblede la función que describe. Normalmente se forma por un verbo y un sustantivo.
Almacenes de DatosAlmacenes de Datos
Un almacén de datos representa información del sistemaalmacenada en forma temporal.
Es un depósito lógico de almacenamiento que puederepresentar distintos tipos de información física (unabandeja con papeles, un archivador manual, un archivo en una computadora o una base de datos).
Almacenes de Datos (Cont.)Almacenes de Datos (Cont.)
Si en un DFD hay un almacén que sólo tiene conexión con un único proceso, se dice que es local a dicho proceso. Luego, no debe aparecer en ese nivel. Debe representarseen el diagrama donde se detalla el proceso.Cada almacén debe representarse por primera vez en el nivel más alto en el que sirve de interconexión entre dos o más procesos. Además, se representará en los nivelesinferiores.El contenido de los almacenes se define en el diccionariode datos (DD).Si el contenido de un almacén es muy complejo, se puederepresentar en un diagrama Entidad-Relación (ER).
Entidades ExternasRepresentación gráficaEntidades ExternasRepresentación gráfica
Una entidad externa representa un generador o consumidor de informacióndel sistema, pero no pertenece al mismo.
Puede representar un subsistema, persona, departamento, organización, etc., que proporcione datos al sistema o quelos reciba de él.Los flujos que parten de o llegan a las entidades externas
definen la interfaz entre el sistema y el mundo exterior.
Entidades Externas (Cont.)Entidades Externas (Cont.)
Normalmente, las entidades externas sólo deberíanaparecen en el diagrama de mayor nivel (Diagrama de Contexto).Pueden incluirse en otros niveles si mejoran la legibilidadde los diagramas..Toda entidad externa se identifica con un nombre.
Flujos de DatosFlujos de Datos
Se interpretan como un camino a través del cual viajandatos de composición conocida de una parte del sistema a otra.Son el medio de conexión de los restantes componentes del DFD.Se representan por arcos dirigidos, en donde la flechaindica la dirección de los datos. Deben tener un nombre o rótulo que los identifique.
Flujos de Datos (Cont.)Flujos de Datos (Cont.)
Los flujos de datos que conectan componentes de un DFD deben respetar las siguientes restricciones:
Destino
Fuente
PROCESO ALMACÉN ENTIDAD EXTERNA
PROCESO SI SI SI
ALMACÉN SI NO NO
ENTIDAD EXETRNA SI NO NO
Flujos de Datos (Cont.)Flujos de Datos (Cont.)
Las diferentes conexiones entre procesos y almacenes que es posible realizar son:
Proceso A Almacén temporalyyy
Flujo de Consulta
Proceso A Almacén temporalxxx
Flujo de Actualización
Proceso A Almacén temporalzzz
Flujo de Diálogo
Flujos de Datos (Cont.)Flujos de Datos (Cont.)
El flujo de consulta muestra la utilización de la información del almacén por el proceso que consulta para:
Utilizar los valores de uno o más atributos de una ocurrenciadel almacénComprobar si los valores de los atributos seleccionadoscumplen determinadas condiciones
El flujo de actualización indica que el proceso va a alterar la información contenida en el almacén para:
Crear una nueva ocurrencia de un dato (entidad o relación)Borrar una ocurrencia de un datoCambiar el valor de un atributo
El flujo de diálogo involucra un flujo de consulta y unode actualización.
Descomposición en Nivelesde un DFD
Descomposición en Nivelesde un DFD
Ejemplo: Gestión de un Video ClubEjemplo: Gestión de un Video Club
0.GESTIÓN
VIDEOCLUB
DIRECCIÓNVIDEOCLUB
PROVEEDORESCLIENTES
Pedido alquiler
Devolución
Compra Bono
Envío Publicidad
Sanción
Comprobante
Entrega
Pedido
Factura
Pago
DatosProveedores Datos
Pago
DatosPedido Informes
DIAGRAMA DE CONTEXTO
DatosBono
Gestión de un Video ClubGestión de un Video Club
1.GESTIONARCLIENTES
2.GESTIONAR
PROVEEDORES
PELÍCULAS
Pedido alquiler
Devolución
Compra Bono
Envío Publicidad
Sanción
Comprobante
Informe dedemanda
Alquilerespendientes dedevolución
Datos Proveedores
Datos Pagos
Datos Pedido
Pedido
Pago
Factura
Entrega
Facturaspendientes de
pago
FacturaciónmensualEntregas
pendientes
DIAGRAMA 0: GESTIÓN DEL VIDEO CLUB
3. GESTIONAR
BONOS
BONOS
DatosBono
Gestión de un Video ClubGestión de un Video Club
1.1GESTIONAR
ALQUILERES
PELÍCULAS
ALQUILERES
CLIENTES
1.3ACTUALIZAR
CRÉDITOCLIENTE
1.4GENERAR
ENVÍOPUBLICIDAD
1.2GESTIONAR
DEVOLUCIONES
Pedido alquiler
Comprobante
Informe dedemanda
Alquilerespendientes de
devolución
Compra Bono
Envío Publicidad
Devolución
Sanción
DIAGRAMA 1: GESTIONAR CLIENTES
BONOS
Gestión de un Video ClubGestión de un Video Club
1.1.1VALIDARALQUILER
1.1.2GENERARDEMANDA
ALQUILERES
1.1.3GENERAR
ALQUILERESPENDIENTESDEVOLUCIÓN
PELÍCULAS
ALQUILERES
CLIENTES
Pedido alquiler
Comprobante
Informe dedemanda
Alquilerespendientes de
devolución
DIAGRAMA 1.1: GESTIONAR ALQUILERES
BONOS
Gestión de un Video ClubGestión de un Video Club
1.2.1REGISTRAR
DEVOLUCIÓN
1.2.2CALCULARSANCIÓN
DEVOLUCIONES
ALQUILERES
PELÍCULAS
Devolución
DIAGRAMA 1.2: GESTIONAR DEVOLUCIONES
Sanción
Gestión de un Video ClubGestión de un Video Club
2.1GENERARPEDIDO A
PROVEEDOR
PEDIDOS
PROVEEDORES
PAGOS
2.3REALIZAR
PAGOS
2.4ACTUALIZAR
PROVEEDORES
2.2GESTIONARENTREGAS
PELÍCULAS
FACTURAS
2.5GESTIONARFACTURAS
Facturaspendientes de
pago
Facturaciónmensual
Factura
Pago
DatosProveedores
Datos Pagos
Datos Pedido
Pedido
Entrega
Entregaspendientes
DIAGRAMA 2: GESTIONAR PROVEEDORES
Gestión de un Video ClubGestión de un Video Club
2.5.1REGISTRARFACTURA
2.5.2EMITIR
FACTURASPENDIENTES
PAGO
2.5.3REALIZAR
FACTURACIÓNMENSUAL
FACTURASFactura
Facturaspendientes de
pago
Facturaciónmensual
PAGOS
DIAGRAMA 2.5: GESTIONAR FACTURAS
Gestión de un Video ClubGestión de un Video Club
2.2.1REGISTRARENTREGA
2.2.1EMITIR
ENTREGASPENDIENTES
PEDIDOS
ENTREGAS
PELÍCULAS
Entrega Entregas
pendientes
DIAGRAMA 2.2: GESTIONAR ENTREGAS
Recomendaciones en la creación de un DFDRecomendaciones en la creación de un DFD
Normalmente la construcción se realiza mediante un procedimiento de refinamiento iterativo.Es imposible crear los DFD correctamente en un primer intento.Dado que al comenzar el modelado no se conocen todas las características del sistema, puede que haya que incluir nuevos requisitos o cambiar los existentes. Esto determina la realización de cambios en los DFDs.Es importante identificar correctamente las entidades externas y las características de la información que éstas proporcionan.
Recomendaciones en la creación de un DFDRecomendaciones en la creación de un DFD
• Al pasar de un nivel a otro debe verificarse la consistencia, es decir que la información que entra y sale de un proceso de nivel N sea consistente con la información que entra y sale del DFD en que este proceso se descompone.
• Todos los flujos de datos que entran en un diagrama hijo deben estar representados en el padre por el mismo flujo de datos.