análisis y diseño estructurado - kybele.etsii.urjc.esis3-2007... · análisis y diseño...

27
1 Análisis y Diseño Estructurado TEMA II: Proceso de Análisis - Técnicas de la Dimensión Funcional Análisis y Diseño Estructurado 2 Bibliografía Análisis y Diseño Detallado de Aplicaciones Informáticas de Gestión. Piattini et al., RA-MA, 1996. Análisis Estructurado Moderno. Yourdon, Prentice-Hall, 1985.

Upload: lamque

Post on 20-Sep-2018

248 views

Category:

Documents


0 download

TRANSCRIPT

1

Análisis y Diseño Estructurado

TEMA II: Proceso de Análisis -Técnicas de la Dimensión Funcional

Análisis y Diseño Estructurado 2

Bibliografía

� Análisis y Diseño Detallado de Aplicaciones Informá ticas de Gestión. Piattini et al., RA-MA, 1996.

� Análisis Estructurado Moderno. Yourdon, Prentice-Hall, 1985.

2

Análisis y Diseño Estructurado 3

Temario

� TEMA II: Proceso de Análisis - Técnicas de la Dimensión Funcional � Diagrama de Flujo de Datos� Diccionario de Datos� Especificación de Procesos

Análisis y Diseño Estructurado 4

Diagrama de Flujos de Datos (DFD)

Es un diagrama en forma de red que representa el flujo de datos y las transformaciones que se

aplican sobre ellos al moverse desde la entrada hasta la salida del sistema.

� Es la técnica más difundida dentro del análisis estructurado.

� Se apoya en otras técnicas de descripción textual:� diccionario de datos� especificaciones de proceso.

� Se utiliza para modelar las funciones del sistema y los datos que fluyen entre ellas a distintos niveles de abstracción.

� Niveles superiores: funciones del sistema de forma general� Niveles inferiores: funciones del sistema de forma detallada

3

Análisis y Diseño Estructurado 5

Diagrama de Flujos de Datos (DFD)

Componentes de un DFD

� Procesos: componentes funcionales del sistema

� Almacenes: representan datos almacenados o en reposo

� Entidades externas: representan la fuente y/o el destino de la información del sistema

� Flujos de datos: representan los datos que fluyen entre las funciones

Análisis y Diseño Estructurado 6

Diagrama de Flujos de Datos (DFD)

Notaciones de un DFD

Yourdon, DeMarco Gane y Sarson

Flujos de datos

Procesos

Almacenes dedatos

Entidades externas

SSADMMÉTRICA

4

Análisis y Diseño Estructurado 7

Diagrama de Flujos de Datos (DFD): Procesos

Procesos (Funciones o Transformaciones)

Representa una función que transforma los flujos de datos de entrada en uno o varios flujos de datos de salida.

� No define un programa en ejecución.� El proceso debe ser capaz de generar flujos de datos de

salida a partir de flujos de datos de entrada más una información local:

� Error de conservación de datos� Pérdida de información

Análisis y Diseño Estructurado 8

Diagrama de Flujos de Datos (DFD): Procesos

Representación gráfica (Yourdon) :� Un Círculo. � Incluye un número y un nombre (únicos en el conjunto de DFD

que representan el sistema)

� Características de los nombres: � Lo más representativo posible. � Dar un nombre que englobe a toda la función� Suprimir nombres con poca significación (Ej: REALIZAR

OPERACIÓN, GESTIONAR ACCIÓN, etc.)� Verbo seguido de un sustantivo (Ej.: GENERAR PEDIDO).

� Existen DFD lógicos y físicos

5

Análisis y Diseño Estructurado 9

Diagrama de Flujos de Datos (DFD): Almacenes

Almacenes de Datos:Representa información del sistema

almacenada de forma temporal

� datos en reposo (flujos: datos en movimientos)� cualquier dato temporalmente almacenado

independientemente del dispositivo utilizado� Ejemplos: un cajón con papeles, un archivador manual, un

fichero o una base de datos, etc.

� Su contenido se define en diccionario de datos.

Análisis y Diseño Estructurado 10

Diagrama de Flujos de Datos (DFD): Almacenes

Características de los almacenes:

� Nombre:� Lo más representativo posible� No asociado a connotaciones físicas� En plural (Ej: “clientes”) .

� Se puede representar varias veces en un DFD� Se puede representar en distintos niveles de DFD� Si es local a un proceso, se representará en el DFD en

el que se especifique dicho proceso. � Almacén de estructura simple (es de tipo registro)

� Si tiene una estructura compleja (diagrama entidad/interrelación)

6

Análisis y Diseño Estructurado 11

Diagrama de Flujos de Datos (DFD): Entidades Externas

Entidades Externas (Terminadores):Es el componente del DFD que representa un generador o

consumidor de información del sistema y que no pertenece al mismo .

Ejemplos: subsistemas, personas, departamentos, organizaciones, otras aplicaciones o sistemas, etc.

� Son externas al sistema que se está modelando� Los flujos que parten o llegan a ellas definen la interfaz entre el

sistema y el mundo exterior.

� Relaciones entre las entidades externas no son objeto del estudio del modelo.

Análisis y Diseño Estructurado 12

Diagrama de Flujos de Datos (DFD): Entidades Externas

Representación Gráfica:� El nombre debe ser representativo. � Se pueden dibujar varias veces en un DFD (con un

asterisco).� Normalmente las entidades externas sólo van a aparecer

en el DFD de mayor nivel llamado diagrama de contexto.

DEPARTAMENTO

COMPRAS

CLIENTE

*

Representación de una entidad externa de cardinalidad simple y repetida en un DFD

Representación opcional de entidades externas de cardinalidad N

7

Análisis y Diseño Estructurado 13

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Flujos de Datos:

Representan los datos en movimiento en un momento y con una cardinalidad determinados.

� A través de ellos los datos viajan de una parte del sistema a otra. � Es el medio de conexión de los restantes componentes del DFD. � Se representan por arcos dirigidos. � Según la persistencia en el tiempo de los datos que fluyen por el flujo,

estos pueden ser discretos o continuos.

Flujo de datos discreto

Flujo de datos continuo

Análisis y Diseño Estructurado 14

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Conexiones permitidas:

NoNo*SiEntidad Externa

No*NoSiAlmacén

SiSiSiProceso

Entidad Externa

Almacén ProcesoDestinoFuente

8

Análisis y Diseño Estructurado 15

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Formas de Paso de Datos entre procesos:

ALMACEN TEMPORAL

PROCESOA

PROCESOA

PROCESO B

PROCESOB

Paso síncrono de informaciónentre procesos

Paso asíncrono de informaciónentre procesos

Análisis y Diseño Estructurado 16

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Conexiones entre procesos y Almacenes:

FLUJO DE CONSULTA

FLUJO DE ACTUALIZACION

FLUJO DEDIALOGO

9

Análisis y Diseño Estructurado 17

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Ejemplos de Flujo de Dialogo:

GESTIONAR PETICIONES DE

USUARIO

USUARIO

LIBROS

PRESTAMOS

Petición de libro

GESTIONAR PETICIONES DE

USUARIO

CLIENTE INFORMES

Petición de informe

Informe aCliente

CLIENTES

Par dialogo

Análisis y Diseño Estructurado 18

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Caso Particular de Flujo entre Almacenes y Entidade s Externas:

GESTIONAR PRESTAMOS DE

BIBLIOTECAUSUARIO

Petición de libro

SISTEMA DEMANTENIMIENTO

DE PUBLICACIONES

LIBROS

Resguardo deaceptación

10

Análisis y Diseño Estructurado 19

Características de los Flujos de Datos:

� Deben tener un nombre representativo (excepto aquellos que entren o salgan de almacenes que tengan una estructura simple).

� Si los datos que viajan por el flujo de dato tienen distintos propósitos o no viajan juntos, entonces estos datos constituyen dos o más flujos de datos.

� No indican el control de ejecución de los procesos.� El contenido de un flujo puede ser de varios tipos:

� Elemento� Grupo� Par de diálogo� Múltiple

Diagrama de Flujos de Datos (DFD): Flujos de Datos

Análisis y Diseño Estructurado 20

� Ejercicio 4:

Diagrama de Flujos de Datos (DFD)

11

Análisis y Diseño Estructurado 21

Descomposición en Niveles de un DFD

� El modelo de un sistema grande es representado “por capas”. � Se sigue una aproximación descendente (top-down)

Ventajas de la descomposición en niveles:� Ayuda a construir la especificación de arriba abajo. � Distintos niveles pueden ir dirigidos a personas diferentes

(directivos y usuarios). � Facilita el trabajo de los analistas (trabajo paralelo de modelado). � Facilita la documentación del sistema.

Diagrama de Flujos de Datos (DFD)

Análisis y Diseño Estructurado 22

Descomposición en Niveles de un DFD

� Diagrama de Contexto: En este diagrama sólo hay un proceso que representa el sistema completo

� Niveles Medios� Diagrama de Sistema: representan las

funciones principales o subsistemas� Otros diagramas cada vez más

detallados

� Funciones Primitivas: están presentes tanto en los niveles intermedios como en los últimos niveles de la jerarquía y se corresponden con procesos que no se explotan en nuevos DFD.

Diagrama de Flujos de Datos (DFD)

GESTIONSISTEMA

X

DIAGRAMA DE CONTEXTO

E1

E2

E3

AB

C

D

E

0

1 2

A1

A2

A

B

E

D

CDIAGRAMA 0: GESTION SISTEMA X

DIAGRAMA 1: DIAGRAMA 2:A2A1

A

E

BA3

1.1 1.2

1.3

A1

A2

A3

B1.2.1 1.2.2

1.2.3

DIAGRAMA 1.2:

12

Análisis y Diseño Estructurado 23

Convenciones sobre la numeración:� Cada diagrama recibe el número y el nombre del

proceso que descompone (proceso padre).� El proceso del diagrama de contexto siempre es

numerado como cero. � Los procesos del diagrama del sistema se enumeran

por un entero comenzando por 1 y de forma creciente hasta completar el número de procesos del diagrama.

� En los restantes niveles, los números de los procesos están formados por la concatenación del número de diagrama en el que están más un punto y un número entero único para identificarlo dentro del diagrama.

Diagrama de Flujos de Datos (DFD)

Análisis y Diseño Estructurado 24

Diagrama de Contexto (Diagrama de Nivel 0):

El objetivo de este diagrama es delimitar la frontera entre el sistema con el mundo exterior, y definir sus interfaces (flujos de datos de entrada y salida del sistema con el

entorno o contexto).

Está formado por:� Un proceso que representa una “caja negra” del sistema

completo. � Un conjunto de entidades externas� Un conjunto de flujos de datos

Diagrama de Flujos de Datos (DFD)

13

Análisis y Diseño Estructurado 25

Diagrama de Sistema (Diagrama 0, Diagrama de Nivel 1):

Es la descomposición del diagrama de contexto y en él se representan las funciones principales del sistema, así

como la relación entre ellas.

� Es importante que las funciones de este diagrama sean conceptualmente independientes entre sí.

� Facilita la descomposición de cada una por personas (analistas) diferentes.

Diagrama de Flujos de Datos (DFD)

Análisis y Diseño Estructurado 26

Procesos primitivos:Son aquellos procesos de un DFD que ya no se

descomponen en más diagramas de nivel inferior.

� Por cada función primitiva habrá una especificación que la describa.

� La decisión de no descomponer más es una responsabilidad del analista (decisión subjetiva).

� Algunas reglas:� Cuando un requisito funcional se puede especificar en menos de

una página.� Cuando los procesos del diagrama tienen pocos flujos de datos de

entrada y salida.� Cuando al descomponer una función de un nivel determinado, se

pierde el significado de lo que tiene que hacer esa función.

Diagrama de Flujos de Datos (DFD)

14

Análisis y Diseño Estructurado 27

Ejemplo de descomposición en Niveles: Metodología METRICA versión 2.1 recomendaba realizar sólo cuatro niveles de descomposición:

� Nivel 0: diagrama de contexto.

� Nivel 1: subsistemas.� Nivel 2: funciones de cada subsistema.� Nivel 3: subfunciones asociadas a cada uno de los

eventos del sistema.

� Nivel 4: procesos necesarios para el tratamiento de cada subfunción.

Diagrama de Flujos de Datos (DFD)

Análisis y Diseño Estructurado 28

Consistencia entre niveles (Balanceo):� Es necesario comprobar la consistencia entre los distintos niveles

de DFD. � Regla del balanceo entre niveles:

� Todos los flujos de datos que entran a un diagrama hijo deben estar representados en el padre por el mismo flujo de datos entrando al proceso asociado.

� Las salidas del diagrama hijo deben ser las mismas salidas del proceso padre asociado. Excepción: los rechazos triviales (caminos de rechazo que no requieren ninguna revisión de la información establecida) no necesitan estar balanceados entre padre e hijo.

� Puede ser que no veamos exactamente los mismos flujos de datos en el proceso padre que el diagrama hijo y que estén balanceados (flujos de datos múltiples).

Diagrama de Flujos de Datos (DFD)

15

Análisis y Diseño Estructurado 29

Recomendaciones en la creación de un DFD:

Diagrama de contexto:� Localizar las entidades externas que van a proporcionar y/o consumir información.� Localizar los flujos de datos.Diagrama de sistema: � Identificar sus funciones principales. � Por cada procesos:

� Señalar sus entradas y salidas (que son recogidas del diagrama de contexto) � Hacer una partición de los flujos de datos múltiples en los flujos en los que se descompone� Identificar las interfaces entre funciones (mediante flujo directo o a través de un almacén) � Identificar almacenes

Resto de diagramas:� No descomponer al máximo. � Identificar las principales subfunciones de la función del nivel superior. � Recoger todos las interfaces del proceso de nivel superior y se asignan a cada

subfunción (desglose de flujos múltiples)� Identificar las interfaces entre los procesos de este nivel (mediante flujo directo o a

través de un almacén)

Diagrama de Flujos de Datos (DFD)

Análisis y Diseño Estructurado 30

Problema de redes desconectadas: Un diagrama de nivel inferior con dos subconjuntos de DFD’s que no se comunican entre sí �reorganizar los diagramas:

� Construir un diagrama expandido mediante la combinación de todos los hijos.

� Intentar dividir el diagrama expandido en un número manejable de subconjuntos.

� Volver a crear el nivel superior, asignando un círculo a cada conjunto.� Volver a crear el nivel inferior, cortando la versión expandida por los

límites de los conjuntos.� Renumerar y renombrar cada componente.

Particionamiento desigual: Uno de los procesos en un nivel alto es primitivo y otro necesita ser particionado en tres o cuatro niveles más.

� En lo posible, evitarlo.

Diagrama de Flujos de Datos (DFD)

16

Análisis y Diseño Estructurado 31

Modificaciones de un DFD:� No resulta difícil si la independencia funcional

está bien conseguida.

� Ante la aparición de una nueva funcionalidad:� Estudiar el nivel de abstracción en el que se

encuentra� Incluirla en el diagrama correspondiente

� Asociar las interfaces con el resto de componentes del DFD

Diagrama de Flujos de Datos (DFD)

Análisis y Diseño Estructurado 32

Diagrama de Flujos de Datos (DFD)

� Ejercicio 5:Construir el Diagrama de Contexto para el caso del ejercicio 4.

17

Análisis y Diseño Estructurado 33

Diagrama de Flujos de Datos (DFD)

� Ejercicio 6:

Análisis y Diseño Estructurado 34

Diccionario de Datos (DD)

Un diccionario de datos (DD) es una lista organizada de los datos utilizados por el sistema que gráficamente

están representados por los flujos de datos y almacenes presentes sobre el conjunto de DFD.

� El DD se crea a la vez que los DFD� Las entradas son realizadas cada vez que se identifica

un elemento. � El DD define:

� Flujos de datos� Almacenes� Datos elementales

18

Análisis y Diseño Estructurado 35

Diccionario de Datos (DD)

Definición de los Flujos de Datos:Sigue una aproximación "top-down“ (hasta obtener datos elementales).

Ejemplo:Si sabemos que un flujo de datos A está compuesto por uno B y uno C y que B está compuesto de B1, B2 y B3, mientras que el C es siempre C1 y C2, podríamos escribir la definición así:

A = B1 + B2 + B3 + C1 + C2

Es mejor definirlos en función de sus componentes subordinados:

A = B + CB = B1 + B2 + B3C = C1 + C2

Análisis y Diseño Estructurado 36

Diccionario de Datos (DD)

Símbolos utilizados para las definiciones en el DD:

SIMBOLO SIGNIFICADO = Composición : está compuesto de, o es equivalente a + Inclusión: y [ ] Selección: selección una de la opciones encerradas entre corchetes, y separadas por

el símbolo “|” { } Iteración: iteraciones del componente encerrado entre llaves ( ) Opción: significa que el componente encerrado es opcional (puede estar presente o

ausente) * texto * Comentario: el texto entre asteriscos es un comentario aclarativo de una entrada del

DD @ Identificador: se utiliza para señalar un campo o conjunto de campos que

identifican cada ocurrencia de un almacén

19

Análisis y Diseño Estructurado 37

Diccionario de Datos (DD)

Composición e inclusión:� La composición o definición del flujo se introduce con

el símbolo “=”

A = B + C � (flujo de datos múltiple A, compuesto de un flujo B y uno C)

Ejemplos:

PETICIÓN LIBROS = CARNET BIBLIOTECA + FICHA LIBROS

CARNET BIBLIOTECA = NUM. CARNET + APELLIDOS + NOMBRE + TIPO CARNET

Análisis y Diseño Estructurado 38

Diccionario de Datos (DD)

Selección:� La selección de un componente (sea un elemento o un

conjunto de elementos) se representa entre corchetes, separando cada opción mediante el símbolo “ | ”.

� Indica una selección entre campos alternativos distintos.

Ejemplo:

SOCIO = NOMBRE + DOMICILIO + [NIF | CIF]

20

Análisis y Diseño Estructurado 39

Diccionario de Datos (DD)

Iteración:� La iteración representa la repetición de los elementos

incluidos entre paréntesis.

Ejemplo:

FICHA LIBROS = { LIBROS }LIBROS = SIGNATURA + TÍTULO + AUTOR

� Es posible representar los límites inferior y superior sobre las ocurrencias de una estructura repetitiva:

FICHA LIBROS = 1{LIBROS}5

Análisis y Diseño Estructurado 40

Diccionario de Datos (DD)

Opción:� El dato opcional indica que puede o no estar presente.

Ejemplo:

CARNET BIBLIOTECA = NUM. CARNET + APELLIDOS + NOMBRE + TIPO CARNET + (NÚMERO TELÉFONO)

21

Análisis y Diseño Estructurado 41

Diccionario de Datos (DD)

Definición de los almacenes:� Se definen como entidades repetitivas de datos y/o

grupos de datos (no es necesario indicar la estructura repetitiva con llaves).

� Se selecciona uno Identificador: uno o más datos para organizar la colección de entradas en un almacén.

Ejemplo:

LIBROS DISPONIBLES = @ SIGNATURA + TITULO + AUTOR + NUMERO UNIDADES * la signatura identifica cada ocurrencia del almacén *

Análisis y Diseño Estructurado 42

Diccionario de Datos (DD)

Alias:� Dato que se nombran de distinta forma y que, en realidad, representan el

mismo dato.� Es un sinónimo de una entrada del DD ya sea un flujo de datos o un

elemento de datos.� No es conveniente su utilización.� Motivos para la existencia de alias:

� Distintos usuarios que llaman al mismo elemento de dos maneras diferentes.� Distintos analistas que trabajan independientemente en el diseño del modelo del

mismo sistema, utilicen nombres distintos para el mismo concepto.� Los alias se documentan en el DD, aunque aumentemos la redundancia.

Ejemplo:

PETICIÓN LIBRO = CARNET BIBLIOTECA + FICHA LIBROS PETICIÓN LIBRO = PETICIÓN DE PRESTAMO

22

Análisis y Diseño Estructurado 43

Diccionario de Datos (DD)

� Ejercicios:

Análisis y Diseño Estructurado 44

Especificaciones de Procesos (EP)

La especificación de procesos (o también denominada miniespecificación) es una técnica que define el procedimiento que realiza un proceso primitivo.

� Describe cómo se obtienen los flujos de datos de salida a partir de los flujos de datos de entrada, más una información local al proceso.

� Alternativas para describir este procedimiento son las siguientes:� Lenguaje estructurado� Árboles de decisión� Tablas de decisión� Diagramas de acción� Precondiciones y poscondiciones

23

Análisis y Diseño Estructurado 45

Especificaciones de Procesos (EP): Lenguaje Estructurado

� Es un lenguaje formado por un subconjunto de palabras (del idioma elegido, español, inglés, etc.):

� Las utilizadas para formar las construcciones propias de la programación estructurada.

� Un conjunto de verbos que reflejan acciones simples: LEER, ESCRIBIR, BORRAR, ENCONTRAR, CALCULAR, VALIDAR, etc.

Alternativa

SI condición bloque SI NO

bloque F FIN SI

Repetitiva

MIENTRAS condición bloque FIN MIENTRAS

REPETIR bloque HASTA condición

Secuencia Está formada por un conjunto de sentencias (bloque) donde cada una puede ser o una acción sencilla o una estructura de las anteriores.

Análisis y Diseño Estructurado 46

Especificaciones de Procesos (EP): Árboles de Decisión

Es una representación en forma de árbol que representa:� Los valores de las variables� Las acciones tomadas para cada valor� El orden en que se realiza la decisión

Se suele utilizar cuando el número de condiciones no es muy grande.

Ejemplo:Supongamos la política de descuentos que realiza una empresa sobre los pedidos de sus clientes dependiendo del volumen de compras del año anterior. Si estos son clientes con más de 5 años de antigüedad se le aplica un descuento del 25% si el valor de los pedidos anuales es superior a 50.000 €. Si el montante de los pedidos está entre los valores 50.000 € y 30.000 € el descuento efectuado será del 15% y si no se alcanza la cifra de 30.000 € se aplicará el 10%. Para clientes entre 5 y 3 años de antigüedad se aplicará el 11% para compras por valor superior a 40.000 € y el 5% por valor igual o inferior. Si tienen menos años de antigüedad se aplicará el 9% si el valor de compras es superior a 40.000 €. A los clientes clasificados como especiales se le aplicará un descuento de 25% si el volumen de compras supera los 50.000 €siendo del 20% en caso contrario.

24

Análisis y Diseño Estructurado 47

Especificaciones de Procesos (EP): Árboles de Decisión

Ejemplo:CLIENTEESPECIAL

No

VOLUMENDE COMPRAS

> 50.000€

<= 50.000€

Aplicar 25% descuento

Aplicar 20% descuento

AÑOS ANTIGÜEDAD

> 5

<= 5 y >= 3

< 3

VOLUMEN DE COMPRAS

> 50.000€

<= 50.000€ y >= 30.000€

< 30.000€

> 40.000€

<= 40.000€

> 40.000€

<= 40.000€

Aplicar 25% descuento

Aplicar 15 % descuento

Aplicar 10 % descuento

Aplicar 11% descuento

Aplicar 5% descuento

Aplicar 9% descuento

Sin descuento

Análisis y Diseño Estructurado 48

Especificaciones de Procesos (EP): Tablas de Decisión

Es un modelo alternativo que muestra la función en forma tabular o matricial.

Definir:� La parte de condición (un conjunto de condiciones y

entradas de condiciones)� La parte de acción (un conjunto de acciones y

entradas de acciones)

25

Análisis y Diseño Estructurado 49

Especificaciones de Procesos (EP): Tablas de Decisión

Ejemplo:CONDICIONES Cliente especial Vol. compras > 50.000 € Vol. compras <= 50.000 € 50.000 € >= Vol. compras >= 30.000 € Vol. compras < 30.000 € Vol. compras > 40.000 € Vol. compras <= 40.000 € Años ant. > 5 5 >= Años ant. >= 3 Años ant. < 3

SÍ SÍ - - - - - - - -

SÍ - SÍ - - - - - - -

NO SÍ - - - - - SÍ - -

NO -

NO SÍ - - - SÍ - -

NO - - - SÍ - - SÍ - -

NO - - - - SÍ - - SÍ -

NO - - - - - SÍ - SÍ -

NO - - - - SÍ - - - SÍ

NO - - - - - SÍ - - SÍ

ACCIONES Aplicar 25 % descuento. Aplicar 20% descuento. Aplicar 15% descuento. Aplicar 11% descuento. Aplicar 10% descuento. Aplicar 9% descuento. Aplicar 5% descuento. Sin descuento.

X

X

X

X

X

X

X

X

X

Análisis y Diseño Estructurado 50

Especificaciones de Procesos (EP): Diagramas de Acción

Es una técnica de especificación que usa niveles anidados de corchetes que representan la estructura lógica utilizada para transformar los datos de entrada en los datos de salida.

SECUENCIA ALTERNATIVA REPETITIVA

--------------

--------------

--------------

--------------

--------------

--------------

--------------

--------------

Definición de Procedimiento

ENTER

EXIT

LOOP WHILE ...

ENDLOOP

LOOP

UNTIL ...ENDLOOP

FOR ...

ENDFOR

----------------------------

----------------------------

----------------------------

IF ...

ENDIF

----------------------------

IF ...

ENDIF

ELSEIF ...

ELSEIF ...

26

Análisis y Diseño Estructurado 51

Especificaciones de Procesos (EP): Diagramas de Acción

Estos diagramas es que son útiles en todo el ciclo de vida:� Fase de análisis: se preparan de una manera bastante

general

� Fase de diseño: se detallan mas éstos diagramas.

Análisis y Diseño Estructurado 52

Especificaciones de Procesos (EP): Diagramas de Acción

Ejemplo:

FOR Todos los CLIENTES

LEER CLIENTE, VOLUMEN DE COMPRAS

IF CLIENTE es especial

IF VOLUMEN DE COMPRAS > 50.000 €

GENERAR PEDIDO con 25% dto.

ELSEIF

GENERAR PEDIDO con 20% dto.

ENDIF

ELSEIF

IF Años antigüedad > 5

GENERAR PEDIDO con 25% dto.

IF VOLUMEN DE COMPRAS > 50.000 €

ELSEIF 50.000 € >= VOLUMEN DE COMPRAS >= 30.000 €

GENERAR PEDIDO con 15% dto.

ELSEIF

GENERAR PEDIDO con 10% dto.

ENDIF

ELSEIF 5>= Años antigüedad >= 3

IF VOLUMEN DE COMPRAS > 40.000 €

GENERAR PEDIDO con 11% dto.

ELSEIF

GENERAR PEDIDO con 5% dto.

ENDIF

ELSEIF

IF VOLUMEN DE COMPRAS > 40.000 €

GENERAR PEDIDO con 9% dto.

ELSEIF

GENERAR PEDIDO sin descuentoENDIF

ENDIFENDIF

ENDFOR

27

Análisis y Diseño Estructurado 53

Especificaciones de Procesos (EP): Precondiciones y poscondiciones

� Se centra en la relación entre las entradas y las salidas (no el algoritmo)

� Sólo se indican:� Precondiciones: las condiciones que se tienen que cumplir

para que el proceso pueda comenzar.� Postcondiciones: las condiciones que deben cumplirse

cuando el proceso ha concluido.

Existen, además, otras técnicas que se utilizan para especificar los procesos como, por ejemplo, el lenguaje narrativo, los diagramas de flujo, etc.

Análisis y Diseño Estructurado 54

Especificaciones de Procesos (EP)

� Ejercicios: