¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un...

36
UNIDAD 2: ANÁLISIS ESTRUCTURADO DE SISTEMAS

Transcript of ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un...

Page 1: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

UNIDAD 2:ANÁLISIS ESTRUCTURADO DE SISTEMAS

Page 2: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

CONCEPTOS BÁSICOS

¿Qué es analizar?

Es estudiar un problema antes de tomar alguna acción.

¿Qué son datos?

Es un hecho o valor a partir del cual se puede inferir una conclusión; información.

¿Qué son estructuras de datos?

Son un conjunto de datos elementales organizados de alguna forma, con el objetivo de facilitar su manipulación.

Page 3: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

CONCEPTOS BÁSICOS

¿Qué es el análisis estructurado de sistemas?

Es el estudio de un sistema separando los componentes para su fácil comprensión.

El análisis estructurado se concentra en especificar lo que se requiere que haga el sistema o la aplicación.

Permite que las personas observen los elementos lógicos separados de los físicos.

Page 4: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

MÉTODO DE DESARROLLO POR ANÁLISIS ESTRUCTURADO

Es para grandes sistemas.

Se divide el sistema en componentes.

Se construye un modelo del sistema.

Page 5: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

MÉTODO DE DESARROLLO POR ANÁLISIS ESTRUCTURADO - ELEMENTOS

Descripción Grafica Diagramas de Flujo de Datos Diccionario de Datos

Utiliza símbolos o iconos para crear un modelo grafico del sistema. Sin introducir procesos manuales o informatizados, archivos etc.

Tienen la misión de:Mostrar las fuentes y destinos de los datos.Identificar y dar nombre a los procesos.Dar nombre a los grupos de datos que relacionan una función con otra.Señalar los almacenes de datos a los que se tiene acceso.Descripción Descendente TOP DOWN.

Se definen flujo de datos, procesos y almacenes de datos.

Verificar

Monto

Cheque

Maestro de Cuentas

Nro de Cta

Válido

Nro Cta Rechazo

Page 6: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

FUNDAMENTOS DEL ANÁLISIS Y DISEÑO

Abstracción:

Indica la generalización o detalle con que se representa el diseño. Se puede dividir en: Abstracción procedimental: Hace referencia

a una secuencia de instrucciones con una funcionalidad específica y limitada.

Ejem: Abrir. Abstracción de datos: hace referencia a

una colección de datos que describe un objeto de datos.

Ejem: Puerta. Puede verse que las procedimentales

pueden usar la información de las de datos (Abrir la puerta).

Page 7: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

Fundamentos del Análisis y Diseño

Refinamiento:

Es la base del diseño. Es un proceso de elaboración que comienza con un nivel de abstracción alto y van descendiendo sucesivamente de nivel de abstracción hasta llegar a un nivel bajo.

Modularidad:

Es la propiedad de un sistema que ha sido descompuesto en un conjunto de módulos coherentes e independientes.

Page 8: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

FUNDAMENTOS DEL ANÁLISIS Y DISEÑO

AbstracciónManejo de conceptos generales y no de instancias particulares

RefinamientoSeguir una estrategia de diseño descendente

ModularidadDivisión del software en unidades con entidad propia tales como funciones o subrutinas.

Niv

eles

de

abst

racc

ión

Código

Diseño procedimental

Requisitos familiares en el ámbito del problema

Personal Confianza

Nómina Mensual

Nómina

Nómina

Mensual Semanal

Confianza ObrerosConfianza Obreros

Page 9: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

DISEÑO ESTRUCTURADO

Es el proceso de decidir qué componentes forman parte del sistema y la interconexión entre los mismos, para solucionar un problema específico.

Page 10: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

DIAGRAMA DE ESTRUCTURA

Es una descripción de la relación entre entidades (personas, lugares, eventos y objetos) de un sistema y el conjunto de información relacionado con la entidad.

Page 11: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

DIAGRAMA DE ESTRUCTURALa diferencia que hay entre el DFD y el diagrama de estructuras, es que el primero representa secuencialidad y el segundo representa jerarquía.

Propiedades del diagrama de estructuras: Hay niveles de complejidad en el mismo nivel, son

iguales. La cantidad de niveles me define la profundidad.

Profundidad: es la cantidad de niveles que tiene el diagrama.

Grado de salida: es una característica de un modulo no de el diagrama. Es la cantidad de subordinados directamente al modulo.

Grado de entrada: también se mide sobre un modulo, es la cantidad de módulos que llaman a un modulo determinado.

Amplitud global o anchura: el nivel que tiene mas módulos me da la anchura.

Alcance de control o visibilidad: se mide por modulo, es la cantidad de módulos que el llama directa o indirectamente.

No se puede repetir el nombre de un modulo.

Page 12: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

FINALIDAD

Verificar los requerimientos de información.

Describir los datos asociados con las entidades.

Mostrar la relación entre entidades. Comunicar los requerimientos de

datos a un diseñador de archivos o administrador de la base de datos.

Page 13: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

MÓDULOSUn módulo se define como un conjunto de sentencias de programa con cuatro atributos básicos: Entradas/Salidas: Datos que recibe cuando lo

invocan y datos que devuelve al módulo que lo llamo.

Función: Qué hace con las entradas para producir las salidas.

Mecánica: La lógica mediante la cual lleva a cabo su función.

Datos internos: Zona de datos a los que únicamente puede referirse él.

Además posee otros atributos adicionales cómo:

Un nombre, por el cual puede ser referenciado como un todo.

Puede invocar o ser invocado por otros módulos.

Page 14: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

MÓDULOS

Un módulo puede ser clasificado como:

Secuencial: se ejecuta sin interrupción.

Incremental: puede ser interrumpido y posteriormente, restablecida su ejecución en el punto en que se interrumpió.

Paralelo: se ejecuta a la vez que otro modulo.

Page 15: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

MÓDULOS

En programación un módulo representa un programa, subprograma o rutina, Representado por:

Conexión entre módulos. Representado por:

Comunicación entre módulos. Representado por:

Flags Datos

Page 16: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

RELACIÓN ENTRE MÓDULOS

La conexión entre módulos se representa mediante una línea.

En la figura: A llama a B. B hace su función. B retorna a A,

inmediatamente después del lugar donde se produjo la llamada de A a B.

El diagrama no dice nada sobre el código de A ni sobre el de B, lo único que sabe es que en A existe una sentencia del tipo CALL B.

CONEXION

MODULO QUE LLAMA

MODULO LLAMADOB

A

Page 17: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 18: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 19: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 20: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

INTERFAZConjunto de comandos y/o métodos que permiten la intercomunicación del programa con cualquier otro programa o entre partes (módulos) del propio programa o elemento interno o externo. De hecho los periféricos son controlados por interfaces.

Page 21: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 22: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 23: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 24: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COMUNICACIÓN ENTRE MÓDULOS

Page 25: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

CRITERIOS DE VALIDACIÓN DE CALIDAD

Los diagramas de estructura son simplemente una herramienta para modelar los módulos de un sistema y sus relaciones y, junto con las especificaciones de funcionalidad de los módulos, componen un diseño inicial que deberá ser analizado y mejorado.

A continuación se describen los criterios utilizados para mejorar un diseño:

AcoplamientoCohesiónDescomposición

Page 26: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

ACOPLAMIENTO

Se refiere al grado de interconexión entre módulos, depende del número de parámetros que se intercambian para su comunicación

En la práctica puede interpretarse como la probabilidad de que en la codificación, depuración o modificación de un determinado módulo, el programador necesite tomar conocimiento acerca de partes de otro módulo

Page 27: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

ACOPLAMIENTO

De acuerdo a la fortaleza de sus interconexiones, se clasifican en:

Módulos Altamente Acoplados: unidos por fuertes interconexiones.

Módulos Débilmente Acoplados: pocas y débiles interconexiones.

Módulos Desacoplados: independientes y sin interconexiones entre ellos.

Page 28: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

FACTORES QUE AFECTAN AL ACOPLAMIENTO

Los principales son:

Conexión de información entre módulos.

Información que pasa de un módulo a otro.

Entrada y salida al módulo.

Complejidad de la información que se transmite.

Page 29: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

NIVELES DE ACOPLAMIENTOExisten varios niveles de acoplamiento, de mejor

a peor:

Acoplamiento Normal: De Datos, entre el módulo que llama y el

llamado, ha de establecerse al menos una comunicación básica.

Por estampado, si se pasan datos entre módulos con estructura de registro, no es deseable si del registro, el módulo que recibe el registro sólo necesita parte de los datos.

De control, cuando los datos de comunicación son flags de control, supone una ruptura en el principio de caja negra, ya que el módulo inferior tiene detalles de funcionamiento del superior, esto es malo si se cambia el módulo inferior  

Page 30: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

NIVELES DE ACOPLAMIENTO

Existen varios niveles de acoplamiento, de mejor a peor:

Acoplamiento Común, cuando más de dos módulos hacen referencia a un área  común de datos. Puede dar problemas si los módulos acceden sin demasiado control a ese área común

Acoplamiento de contenido, cuando un módulo cualquiera, accede a parte del código de otro rompiendo jerarquía 

Page 31: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COHESIÓN

Se refiere a que tan integrados están los componentes de un módulo.Estudiando la Relacion que existe entre los elementos del mismo.

“Cohesión es la Medida de la relación Funcional de los

elementos (cualquier pieza) de un módulo.”

Page 32: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

COHESIÓN

Tip´s:

Elementos que tengan una mayor Relación (Alta Cohesión) Mismo Módulo.

Elementos No Relacionados (Baja o Ninguna Cohesión Módulos Separados.

Idealmente un Mòdulo Coherente debe hacer una sola cosa.

Page 33: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

REGLAS PARA CLASIFICAR

1. Elegir el criterio de mejor cohesión: cuando todas las actividades se relacionan por los mismos criterios.

2. Elegir el criterios de peor cohesión: cuando algunas actividades se relacionan con unos criterios de cohesión y otras con otros.

Page 34: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

RESUMEN DE COHESIÓN

1. Funcional

6. Lógica

2. Secuencial

3. Comunicacional 4. Procedural

5. Temporal

7. Coincidencial

¿Realiza una sola función?

Por flujo de control

no

Ninguna deLas dos

¿Cómo están relacionadaslas actividades?

Por datos no

no

no

¿Actividades delmismo tipo

¿Importa laSecuencia?

¿Importa laSecuencia?

si

si

si

si

Mejor

Peor

Bueno

Medio

Malo

Page 35: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

DESCOMPOSICIÓN

La descomposición es la separación de una función contenida en un módulo, para un nuevo módulo. Puede ser hecha por cualquiera de las siguientes razones: Reducir el tamaño del módulo Hacer el sistema más claro Minimizar la duplicación de código Separar el trabajo de la ‘administración’ Crear módulos más generales

Page 36: ¿Qué es analizar? Es estudiar un problema antes de tomar alguna acción. ¿Qué son datos? Es un hecho o valor a partir del cual se puede inferir una conclusión;

UNIDAD 2:ANÁLISIS ESTRUCTURADO DE SISTEMAS

Profesor: Lcdo. Luis Peñahttps://tsuluispena.wordpress.com

Carrera: TSU En Análisis y Diseño de Sistemas.Asignatura: Procesamiento de datos

Universidad Nacional Experimental Politécnica de las Fuerzas Armadas.