Sunteți pe pagina 1din 64

Anlisis y Diseo Estructurado Moderno

Ing. Luis Zuloaga Rotta


Anlisis y Diseo Sistemas

GERENCIA
Presupuesto y cronogramas
Restricciones

1.0 Estudio de Factibilidad


Estudio de Factibilidad

Orden de compra

Requerimientos

4.0 Estudio de Plataforma Tecnolgica


Requerimientos De configuracin Configuracin

Sistema en produccin

USUARIO

2.0 Fase de Anlisis


Especificacin funcional

Descripciones operacionales

5.0 Implementacin
Especificaciones de Diseo Plan de pruebas

Ciclo de Vida Clsico segn E. Yourdon

3.0 Diseo Estructurado

Anlisis y Diseo Sistemas

2.1 Describir el Sistema actual

Vista interna del proceso 2.0 Anlisis Estructurado


DFD fsico (opciones) Modelo fsico actual 2.4 Restringir El modelo DFD fsico (opciones) Nuevo DFD lgico Modelo lgico actual 2.3 Definir nuevo sistema Diccionario de datos 2.5 Anlisis Costo Beneficio Opciones cuantificadas

Descripcin operacional

2.2 Derivar Esquema Lgico

2.6 Seleccin de mejor opcin DFD fsico seleccionado Configuracin de equipos

Estudio de factibilidad

2.7 Preparar informe

Especificacin funcional

Mini Especificaciones

Anlisis y Diseo Sistemas

Especificacin funcional

Flujo de datos

Vista interna del proceso 3.0 Diseo Estructurado 3.2


Derivar tabla de estructura Tabla de estructura

3.1 Codificar especificaciones Descripcin de datos Polticas Elementales del usuario

Plan de pruebas 3.3 Diseo de mdulos

Requerimientos de almacenamiento de datos

Descripcin de mdulos

3.4 Empaquetado del diseo Especificaciones de diseo

Configuracin

Anlisis y Diseo Sistemas

DFDs
Muestran en forma visual slo el flujo de datos entre los distintos procesos, entidades externas y almacenes que conforman un sistema. Cuando los analistas de sistemas indagan sobre los requerimientos de informacin de los usuarios, deben ser capaces de concebir la manera en que los datos fluyen a travs del sistema u organizacin, los procesos que sufren estos datos y sus tipos de salidas.
Anlisis y Diseo Sistemas

Elementos de un Diagrama Flujo Datos (DFD)


ALUMNO

Entidad Externa

Persona, grupo de personas o unidad de negocio, u otro sistema, o mecanismo que entrega yo recibe informacin.

1 MATRICULA

Proceso

Conjunto de actividades de negocio que explican que se hace y como se llevan a cabo.

+
Flujo Datos Seala el flujo de datos de una entidad externa a un proceso y viceversa, de un proceso a otro, y de un proceso a un almacn de datos y viceversa.

Almacn ALUMNOS Datos Lugar fsico donde se almacenan los datos procesados o desde donde se recuperan para apoyar un proceso. Anlisis y Diseo Sistemas

Smbolos para los elementos de un DFD con BPWin


Entidad Externa

Proceso Almacn de Datos Flujo Datos


Anlisis y Diseo Sistemas

Entidad Externa

Entidad externa

Representa personas, organizaciones, o sistemas que no pertenecen al sistema. En el caso de que las entidades externas se comunicasen entre s, esto no se contemplara en el diagrama, por estar fuera del mbito de nuestro sistema Puede aparecer en los distintos niveles de DFD para mejorar su comprensin, aunque normalmente slo aparecer en el diagrama de contexto. Pueden aparecer varias veces en un mismo diagrama, para evitar entrecruzamientos de lneas. Suministra informacin acerca de la conexin del sistema con el mundo exterior.
Anlisis y Diseo Sistemas

Procesos

Proceso

Cuando un flujo de datos entra en un proceso sufre una transformacin. Un proceso no es origen ni final de los datos, slo lugar de transformacin de ellos. Un proceso puede trasformar un dato en varios. Es necesario un proceso entre una Entidad Externa y un Almacn de datos. Un proceso puede representarse sealando una localizacin. La localizacin expresa la unidad o rea dentro de la organizacin donde se realiza el proceso.
Anlisis y Diseo Sistemas

Almacn de Datos

Almacn de datos

Representa la informacin en reposo No puede crear, destruir ni transformar datos No puede estar comunicado directamente con otro almacn o Entidad externa El flujo de datos (Entrada y Salida) no lleva nombre cuando incide sobre su contenido completo No debe estar referido al entorno fsico, y por tanto, no se diferencian los ficheros convencionales de las bases de datos No se representa la clave de acceso a este almacn sino slo la operacin que se realiza (lectura, escritura, actualizacin)
Anlisis y Diseo Sistemas

Flujo de Datos
El concepto de flujo de datos es similar al concepto de tubera a travs del cual fluye informacin de estructura conocida. Los datos no pueden ser creados ni destruidos por un flujo de datos. Sirve para conectar el resto de los componentes de un DFD. No es un activador de procesos. Cuando un proceso almacena datos, la flecha de flujo de datos se indica en la direccin del almacn de datos y a la inversa si es el proceso el que lee datos en el almacn.
Anlisis y Diseo Sistemas

DFD : Descomposicin por Niveles


El sistema deber contener:
- Un Diagrama de contexto - Diagrama de nivel cero (1.0, 2.0, ) - Varios DFD en niveles intermedios (1.1,1.2,1.3,2.1,2.2,) - Varios DFD en el ltimo nivel de detalle

En cualquier momento nos puede aparecer un proceso que no necesite descomposicin y es lo que denominaremos Proceso Primitivo (PP). En ellos, se detallar la entrada y salida que tenga, adems de la descripcin asociada que explique lo que realiza.
Anlisis y Diseo Sistemas

DFD : Construccin
Representar el diagrama de contexto. Representar el DFD de primer nivel, indicando los distintos subsistemas funcionales en que se descompone nuestro sistema. Descomponer cada uno de los procesos que aparecen en el DFD de primer nivel, hasta llegar a un nivel suficiente de detalle. Se recomienda el utilizar cuatro niveles de descomposicin de diagramas.
Nivel 0: Diagrama de contexto Nivel 1: Subsistemas Nivel 2: Funciones de cada subsistema Nivel 3: Subfunciones asociadas Nivel 4: Procesos necesarios para el tratamiento de cada subfuncin
Anlisis y Diseo Sistemas

A
P1

D
P3

B
P2

Diagrama Padre

B
P 2.1

P 2.4

E C

Diagrama Hijo

B C
P 2. 2

P 2.3

Niveles de descomposicin
Anlisis y Diseo Sistemas

Consideraciones para la construccin de un correcto DFD


No pueden existir flechas de flujo o de relacin entre dos entidades externas. No pueden existir flujos o relaciones entre las entidades externas y almacenes de datos. No pueden existir flujos entre dos almacenes de datos. No pueden incluirse procesos que slo procesen los datos de entrada y no generen ningn flujo de salida. Los almacenes de datos deben mostrarse preferentemente en el ltimo nivel y de ser el caso en un nivel inmediato anterior cuando en el mismo al menos dos procesos expliquen la lectura y creacin o actualizacin de los almacenes de datos.

Anlisis y Diseo Sistemas

Entidad Externa 1

Entidad Externa 2 Entidad Externa 1 Almacn de datos

Almacn de datos

Almacn de datos Almacn de datos

Proceso

Errores en un DFD

Anlisis y Diseo Sistemas

REFINAMIENTO
A P1 J C D P3 I P2 K L H N M P4

P2.1

P F

P2.2 P2.3 C K P2.4 M P2.5 L E N

P5 E

A B C D P3

P1 J I

H P2 K N M P2 P4 P P5 E

L
Anlisis y Diseo Sistemas

DIAGRAMA DE CONTEXTO PROCESO MATRICULA


(Nivel 0)
Identificacin

Diagrama elaborado con Process Analyst de PowerDesigner 6.0

Estadsticas Matricula Requerimiento Matricula

ALUMNOS

Horarios

MATRICULA
Documentos Matricula

COMISION MATRICULA

+
Alumnos Matriculados

Constancia Matricula

OERA

Anlisis y Diseo Sistemas

1 Documentos Verificados VERIFICAR DOCUMENTOS [Documentos Matricula]

DIAGRAMA DE PRIMER NIVEL

DOCUMENTOS 2 VERIFICAR IDENTIFICACION ALUMNOS Datos Identificacin Datos Alumno

ALUMNOS

[Identificacin]

[Constancia Matricula]

[Requerimiento Matricula] Datos Matricula 3 REGISTRO CURSOS SECCION + Datos Cursos

5 EMITIR CONSTANCIA MATRICULA

Datos Matricula CURSOS MATRICULADOS Datos Matricula

CURSOS

Datos Estadstica

Datos Programacin

Datos Cursos Seccin

OERA

[Alumnos Matriculados]

6 ELABORAR ESTADISTICAS

HORARIOS

[Estadsticas Matricula] 4 [Horarios] CARGAR HORARIOS Datos Cursos Seccin

COMISION MATRICULA

Anlisis y Diseo Sistemas

[Datos Alumno]
3.1 VERIFICAR IDENTIFICACION

ALUMNOS

[Requerimiento Matricula]

REGISTRAR CURSOS SECCION

[Datos Cursos]

Datos Cursos Registrados

Datos Cursos Cruce [Datos Cursos Seccin] [Datos Estadstica]


3.2

CURSOS

VERIFICAR CRUCES

HORARIOS

[Datos Matricula]

CURSOS MATRICULADOS

[Datos Matricula]

[Datos Programacin]

Diagrama de Segundo Nivel


EMITIR CONSTANCIA MATRICULA

Anlisis y Diseo Sistemas

USED AT: AUTHOR: Luis Zuloaga Rotta . PROJECT: SISTEMA CADEMICO CURSO A&DS NOTES: 1 2 3 4 5 6 7 8 9 10

DATE: 16/06/2001 REV: 16/06/2001

WORKING DRAFT RECOMMENDED PUBLICATION

READER

DATE CONTEXT:

TOP

Identificacin Documentos Matricula

ALUMNO
Requerimiento Matricula Constancia Matricula
$0 0

MATRICULA

Alumnos Matriculados

OERA

Estadisticas Matricula
2

COMISION

Horarios

MATRICULA

Diagrama Contexto elaborado con BPWin 2.5 - Platinum


NODE: TITLE: NUMBER:

A-0 Anlisis y Diseo Sistemas

MATRICULA

USED AT: . Curso A&DS

AUTHOR: Luis Zuloaga Rotta PROJECT: SISTEMA CADEMICO NOTES: 1 2 3 4 5 6 7 8 9 10

DATE: 16/06/2001 REV: 16/06/2001

WORKING DRAFT RECOMMENDED PUBLICATION

READER

DATE CONTEXT:

A-0

ALUMNO

Documentos Matricula
1 $0 1 VERIFICAR DOCUMENTOS $0 Documentos Verificados

DOCUMENTOS
2 Datos Identificacin

ALUMNOS
Datos Matricula
6

Identificacin

CURSOS MATRICULADOS
3

VERIFICAR IDENTIFICACIN

Datos Alumno
Constancia Matricula EMITIR CONSTANCIA MATRICULA $0 4 Datos Matricula

Datos Cursos

CURSOS

OERA

Requerimiento Matricula

$0 3 REGISTRO CURSOS SECCIN

Datos Curso Seccin Alumnos Matriculados

Datos Programacin

$0

COMISION MATRICULA

Horarios

$0

Datos Estadstica 3

ELABORAR ESTADISTICAS

CARGAR HORARIOS

HORARIOS

Estadisticas Matricula

NODE:

TITLE:

NUMBER:

A0 Anlisis y Diseo Sistemas

MATRICULA

USED AT: . Curso A&DS

AUTHOR: Luis Zuloaga Rotta PROJECT: SISTEMA CADEMICO NOTES: 1 2 3 4 5 6 7 8 9 10

DATE: 16/06/2001 REV: 16/06/2001

WORKING DRAFT RECOMMENDED PUBLICATION

READER

DATE CONTEXT:

A0

ALUMNO
Requerimiento Matricula
$0 31

Datos Cursos 5 CURSOS

Datos Alumno

REGISTRAR CURSO SECCION Datos Cursos Cruce Datos Estadstica

Datos Curso Seccin 3 HORARIOS

Datos Cursos Registrados

$0

32

Datos Matricula

Datos Programacin

VERIFICAR CRUCES
Datos Matricula 6 CURSOS MATRICULADOS

NODE:

TITLE:

REGISTRO CURSOS SECCIN

NUM BER: 3

A3
Anlisis y Diseo Sistemas

USED AT: . Curso A&DS

AUTHOR: Luis Zuloaga Rotta PROJECT: SISTEMA CADEMICO NOTES: 1 2 3 4 5 6 7 8 9 10

DATE: 16/06/2001 REV: 16/06/2001

WORKING DRAFT RECOMMENDED PUBLICATION

READER

DATE CONTEXT:

A3

Datos Matricula

$0

323 PROCESAR MATRICULA

CURSOS 6 MATRICULADOS

Datos Matricula

Datos Estadstica

Datos Cursos Cruce

3
$0 MOSTRAR CRUCES 322

HORARIOS

Datos Cursos Cruce

Datos Cursos Registrados

Datos Cursos Registrados

$0

321 COMPARAR HORARIOS

Datos Programacin

NODE:

TITLE:

VERIFICAR CRUCES

NUMBER: 4

A32
Anlisis y Diseo Sistemas

Diccionario de Datos (DD)


Notacin para representar la estructura de items de datos, necesaria para expresar :
composicin (secuencia ?) cmo un item esta compuesto de unidades planas (sus atributos). Repeticin items que son repetidos en (e.g.) listas, arreglos (arrays), etc. seleccin valores para items a seleccionar desde alternativas. opcionalidad - items que no siempre estan presentes.

Anlisis y Diseo Sistemas

Smbolos usados en la notacin del DD


Asigne un nombre significativo a cada item de datos bsico o compuesto.

= + {}

significa es definido como', o esta hecho de' significa y ' significa cero o mas de cualquier cosa que este dentro de las llaves, i.e. repeticin significa entre n y m (inclusive) significa que uno de los atributos entre las barras esta presente. significa que el item entre parentesis es opcional incluye literales (valor a utilizar) incluye comentarios define el significado de datos, informalmente.

n{ }m [||] () "" * *

Anlisis y Diseo Sistemas

Ejemplo : Lista Seminarios


ListaSeminarios = Titulo + NumeroVersion + Fecha + {DetalleSeminario} DetalleSeminario = DiaSemana + Horario + Aula + {ListaEstudiantes} ListaEstudiantes = {Nombre + Apellido Paterno} o.. ListaSeminarios = Titulo + NumeroVersion + Fecha + { DiaSemana + Horario + Aula + {Nombre + ApellidoPaterno} } NumeroVersion = Digito + "." + Digito Digito = ["1" |"2" |"3" |"4" |..] Horario = HoraInicio + "-" + HoraTermino HoraInicio = ["9" |"10" |"11" |"12"..]
Anlisis y Diseo Sistemas

Un nuevo Ejemplo : PlanCurso


PlanCurso = FechaDePlan + NroVersion + Titulo + {DetalleSemanal} DetalleSemanal = NroSemana + FechaInicio + [SemanaInstruccion|SemanaNoInstruccion] SemanaNoInstruccion = [administrativa"| "introduccion"| aprendizaje centrado estudiante"| ...] SemanaInstruccion = 2{DetalleExposicion}2 + (ListaSeminarios) + (TrabajoPractico) DetalleExposicion = *Descripcion del contenido Exposicion* FechaInicio = Fecha FechaDePlan = Fecha Fecha = *fecha en formato "dd-mmm-yy"* etc, etc.
Anlisis y Diseo Sistemas

DFD
PROCEDIMIENTO PROCEDIMIENTO .. IFIF .. . . . . ELSE ELSE . . . .

DICCIONARIO DATOS DICCIONARIO DATOS DICCIONARIO DATOS Flujo datos: Flujo datos: Flujo datos: . . . . . . Almacenamiento: Almacenamiento: Almacenamiento: . . . . . .

Anlisis y Diseo Sistemas

Boleta de Pago y ficha de matricula Boleta de Inscripcin asesorada

Alumno

Boleta de Inscripcin + pago por derechos Boleta de inscripcin con cursos seleccionados Identificacin de alumno Boleta de inscripcin

Boleta de inscripcin asesorada Boleta de Inscripcin asesorada y registrada Boleta de Pago por matricula Boleta de matricula

Proceso de Matricula

Diagrama de Contexto
Anlisis y Diseo Sistemas

datos de cursos autorizados a matricularse datos de cursos inscritos 2. Asesora de matricula Boleta de inscripcin asesorada

Boleta de Inscripcin con cursos seleccionados Identificacin de alumno 1. Generar Ficha de Matricula

3. Inscripcin en cursosseccin Boleta de Inscripcin asesorada y registrada Boleta de Pago por matricula Boleta de Inscripcin + Pago por derechos

Boleta de Inscripcin asesorada

datos de cursos registrados

Alumno
Boleta de inscripcin

Boleta de Pago y ficha de matricula 5. Confirmar matricula Anlisis y Diseo Sistemas

4. Pago de matricula

Boleta de matricula

Datos de derechos de pago por matricula

Curso - seccin

datos de curso-seccin

3.1 Seleccin de cursos datos de alumno y cursos registrados


datos de alumno

Matricula

Alumno

3.2 Registro de matricula

datos de inscripcin

Anlisis y Diseo Sistemas

ESPECIFICACIN DE PROCESOS

Anlisis y Diseo Sistemas

Mtodos utilizados para Especificar Procesos


Todos los procesos en un DFD deben ser descritos. Los mtodos usados para describir procesos de alto nivel, difieren de aquellos utilizados para describir procesos detallados. Los primeros son descritos usualmente utilizando lenguaje natural, y los otros utilizando un lenguaje estructurado.
Anlisis y Diseo Sistemas

Que es lo que el proceso hace ?


Los procesos a bajo nivel deben ser descritos en forma precisa y sin ambiguedades. Se necesitan mtodos que remuevan ambiguedades desde la descripcin del sistema, y que pueda ser facilmente comprendido por usuarios y programadores.

Anlisis y Diseo Sistemas

Tcnicas del Anlisis Estructurado


Ingls Estructurado Ingls Extendido Tablas de Decisin rbol de Decisin

Anlisis y Diseo Sistemas

Ingls Estructurado y Extendido Tabla y rbol de Decisin


Las dos tcnicas del ingls permiten construir descripciones verbales dentro de una estructura lgica, removiendo ambiguedades lgicas. Las tcnicas de decisin se utilizan donde una de un nmero de acciones va a ser seleccionada, dependiendo de un nmero de condiciones.
Anlisis y Diseo Sistemas

Ingls Estructurado
IF limite crdito excedido THEN IF cliente tiene mala historia de pago THEN rechase crdito ELSE IF compra es mayor de 200 $ THEN rechase crdito ELSE pasar a administrador ELSE permitir crdito

Anlisis y Diseo Sistemas

Ingls Extendido
IF nivel de crdito excedido THEN (limite crdito excedido) IF cliente tiene mala historia de pago THEN rechazar crdito ELSE (cliente tiene buena historia de pago) IF compra es mayor a 200 $ THEN rechazar crdito ELSE (compra es menor a 200 $) pasar a administrador ELSE (nivel de crdito no excedido) permitir crdito
Anlisis y Diseo Sistemas

TABLA DE DECISIN
Acciones Condiciones
Lmite crdito excedido Cliente con buena historia de pago V V V V V F V V F F F F F F V F F F X

V V V F

Compra arriba de 200 $ V F Permitir crdito Rechazar crdito Pasar a administrador X X

X X X X X

Anlisis y Diseo Sistemas

rbol de Decisin
Buena historia pago

Compra arriba 200$ Compra abajo 200$

Rechazar crdito Pasar administrador

Limite Crdito Excedido

Mala historia pago

Rechazar crdito

Limite Crdito no Excedido


Anlisis y Diseo Sistemas

Permitir crdito

Ingls Estructurado
Sentencias imperativas: usualmente consiste de un verbo imperativo seguido por el contenido de uno o mas almacenamientos de datos sobre los cuales el verbo opera. Por ejemplo : ADD Salario_Persona to Total_Salario Pueden utilizarse operadores Booleanos y aritmticos, en las sentencias imperativas.

Anlisis y Diseo Sistemas

Operadores Aritmticos y Booleanos


Multiply Add Exponential Or

. Divide . Subtract

. Not Greater than . Less than Less than or equal to . Greater than or equal to Equals . Not equal to
Anlisis y Diseo Sistemas

Lgica del Ingls Estructurado


BEGIN . END CASE REPEAT. UNTIL WHILE DO IF . ..........THEN .ELSE DO FOR

Anlisis y Diseo Sistemas

Orden Preliminar = Nro_Orden + {Nro_Parte + Cantidad } Orden Finalizada

Precio_Parte

Finalizar Orden

= Nro_Parte + Precio_Unitario

Descripcin del Proceso : Finalizar Orden


Anlisis y Diseo Sistemas

= Nro_Orden + {Nro_Parte + Cantidad + Precio_Unitario + Valor_Parte} + Valor_Orden

Descripcin del proceso : Registro de Ventas


Reporte de Venta = + + + Cliente Nro_Parte Cantidad_Vendida Precio_Unitario

Registro de Ventas

Resmen de Ventas = Cliente + Valor_de_Venta

VENTAS = Nro_Parte + Cantidad_Total + Valor_Total

Anlisis y Diseo Sistemas

BEGIN Receive REPORTE VENTA Get VENTAS record for Nro PARTE in REPORTE VENTA CANT_TOTAL = CANT_TOTAL+ CANT_VENDIDA VALOR_VTA = CANT_VENDIDA * PRECIO_UNIT VALOR_TOT = VALOR_TOT + VALOR_VTA Write VENTAS record. Send Resumen Ventas END.

Anlisis y Diseo Sistemas

Descripcin de proceso : Sumando Descuentos


Emisin de Descuentos Autorizacin de Descuentos = CLIENTE + IMPORTE DEL DESCUENTO

Registro de Ventas = + + + Cliente Nro_Parte Cantidad_Vendida Precio_Unitario

Registro de Ventas

Resmen de Ventas = Cliente + Tipo + Valor_de_Venta

VENTAS = Nro_Parte + Cantidad_Total + Valor_Total


Anlisis y Diseo Sistemas

Emisin de descuentos

Descripcin del proceso: Sumando Facturas Notificacin de Descuento = Cliente


+ Importe_Descuento Cuentas de Correo = Cliente + Valor_de_Venta

Recepcin = Cliente + Valor_Venta Informe de Ventas = Cliente + Nro_Parte + Cantidad_Vendida + Precio_Unitario + Tipo

Envo de Cuentas

Registro de Ventas

Resmen de Ventas = Cliente + Tipo + Valor_de_Venta

Emisin de Facturas

Datos de la Factura = Cliente + Nro_Parte + Importe_de_Factura

VENTAS
= Nro_Parte + Cantidad_Total + Valor_Total

Anlisis y Diseo Sistemas

BEGIN Receive REPORTE VENTA Get VENTAS record for NRO_PARTE in REPORTE VENTA CANT_TOTAL = CANT_TOTAL + CANT_VENDIDA VALOR_VENTA = CANT_VENDIDA * PRECIO_UNIT VALOR_TOTAL = VALOR_TOTAL + VALOR_VENTA Write VENTAS record. Send RESUMEN VENTAS IF VALOR_VENTA > 500.00 THEN BEGIN CANT_DESCUENTO = SALE-VALUE * 0.02 Send DESCUENTO AUTORIZADO END END.
Anlisis y Diseo Sistemas

Estructura de Decisin
a) Seleccin de dos maneras

Condicin Grupo A sentencias Grupo B sentencias

IF condition THEN BEGIN Group A sentences END ELSE BEGIN Group B sentences END
Anlisis y Diseo Sistemas

b) Seleccin Mltiple
Valor Test

Grupo A sentencias

...

Grupo k sentencias

Grupo L sentencias

Grupo Z sentencias

Case (name) of A : BEGIN Group A sentences END Z : BEGIN Group Z sentences END
Anlisis y Diseo Sistemas

Aqui name es una variable y A...Z son valores que pueden ser tomados por name.

Anlisis y Diseo Sistemas

BEGIN Receive Reporte Ventas Get Ventas record for Nro_Parte in Reporte Ventas Cant_Total = Cant_Total + Cant_Vendida Cant_Vendida = Cant_Vendida * Precio_Unit Valor_TOTAL = Valor_TOTAL + Valor_Venta. Write Ventas record. Send Resumen Ventas CASE TYPE OF Cuenta : BEGIN Send Cuenta Correo IF Valor_Venta = 500.00 THEN BEGIN Cant_Descuento = Valor_Vta* 0.02 send Descuento Autorizado END. END

Contado.Cheque: BEGIN Send Recibir. END Credito: BEGIN Send Recibir. END Credito: BEGIN Cant_Factura = Valor_Vta + Valor_Vta* 0.01 send Datos Factura END END END.

Anlisis y Diseo Sistemas

Estructuras de Repeticin
a) Usando WHILE
Condicin

Grupo A sentencias

WHILE condition DO BEGIN GROUP A sentences END


Anlisis y Diseo Sistemas

b) Usando REPEAT

GRUPO A sentencias

Condicin REPEAT BEGIN GROUP A sentences END UNTIL condition

Anlisis y Diseo Sistemas

Get Orden Preliminar Valor_Orden = 0. WHILE there are more Lineas Orden DO BEGIN Get next Linea Orden Get Precios record for Nro_Parte in Linea Orden Valor_Parte = Cant_Req * Precio Valor_Orden= Valor_Orden + Valor_Parte Create Linea Orden in Orden Finalizada END Send Orden Finalizada

Anlisis y Diseo Sistemas

Descripcin del proceso : Completando Ordenes


Parte
= Nro PARTE + PRECIO Completar Ordenes

Orden Preliminar = Nro ORDEN + {Nro PARTE + CANTIDAD REQUERIDA}

Orden completa = Nro ORDEN + {Nro PARTE + CANTIDAD REQUERIDA + PRECIO + VALOR PARTE} + VALOR ORDEN

Anlisis y Diseo Sistemas

Get Orden Preliminar Valor_Orden = 0. FOR each Linea Orden in an Orden DO BEGIN Get next Linea Orden Get Precios record for Nro_Parte in Linea Orden Valor_Parte = Cant_Req * Precio Valor_Orden = Valor_orden + Valor_Parte Create Linea Orden in Orden Finalizda END Send Orden Finalizada
Anlisis y Diseo Sistemas

Get Orden Preliminar Valor_Orden = 0. REPEAT BEGIN Get next Linea Orden Get Precio record for Nro_Parte in Linea Orden Valor_Parte = Cant_Req * Precio Valor_Orden = Valor_Orden + Valor_Parte IF Valor_Orden < Limite_Orden THEN create Linea Orden in Orden Finalizada END UNTIL (Valor_Orden > Limite_Orden) or (there are no more Lineas Orden) Send Orden Finalizada
Anlisis y Diseo Sistemas

pedido_pago_previo id_cliente

PEDIDOS

3.5 Verificar crdito


PAGOS

crdito_ok

historia pagos pedido_rechazado

Anlisis y Diseo Sistemas

LEER pedidos con id_cliente SI cliente es nuevo EMITIR pedido_pago_previo SINO SI cliente es frecuente (*promedio de dos pedidos mensuales*) OBTENER balance desde historia_pagos SI balance esta vencido hace ms de dos meses EMITIR pedido_rechazado SINO EMITIR credito_ok SINO EMITIR pedido_pago_previo FIN_SI FINCASO

Anlisis y Diseo Sistemas

Especificacin de Proceso Diagramas de Nassi-Schneiderman


Iteracin Secuencia
Sentencia 1 Sentencia 2 ... Sentencia n

Seleccin

Condicin Sentencias

Condicin

V
Sentencias

F
Sentencias

Sentencias Condicin

Anlisis y Diseo Sistemas

Preguntas ?

Anlisis y Diseo Sistemas

S-ar putea să vă placă și